+ All Categories
Home > Documents > Census Management System - Documentation FINAL

Census Management System - Documentation FINAL

Date post: 23-Oct-2014
Category:
Upload: peter-rocky-ray
View: 211 times
Download: 68 times
Share this document with a friend
Popular Tags:
175
______ ABSTRACT The main aim of developing the census management system is to allow easier coordination of activities from the beginning of the census process up to the end of the process. This is by automating the whole process, allowing the Ministry of Planning to monitor the population statistics online. It is meant also to facilitate the management of population via the web for enhanced management and efficiency. 1
Transcript
Page 1: Census Management System - Documentation FINAL

______

ABSTRACT

The main aim of developing the census management system is to allow easier coordination of

activities from the beginning of the census process up to the end of the process. This is by

automating the whole process, allowing the Ministry of Planning to monitor the population

statistics online. It is meant also to facilitate the management of population via the web for

enhanced management and efficiency.

1

Page 2: Census Management System - Documentation FINAL

PREFACE

This document is useful for everyone and anyone who intends to interact with a new

automated census management system. In this document one will be able to know the

problems that existed in the old system and the challenges the organization faced while using

the system.

This booklet provides extensive information on how the new system was developed and also

provides a user manual.

2

Page 3: Census Management System - Documentation FINAL

ACKNOWLEDGEMENT

This work would not be possible without the co-operation and assistance of very many

people. To them I owe my gratitude. I want to pay particular tribute to the following people.

Mr. Samuel Kiara (Supervisor Kiambaa region census) for providing all the information that

was required in order to come up with the new automated system.

Mr. Kuria for all the guidance, advice and tolerance throughout the project, also:

My lecturer: Mr. J. Alila who took the role of project supervisor

My fellow Students: Nahshon Ngao, John Kayeri and Mutinda Mummu and all my other

classmates for their useful and constructive comments on the draft of this work

My parents, for emotionally supporting me and sponsoring me financially to pursue the

course in Computer Technology and providing the stationery and other essentials needed.

I most of all I give thanks and dedicate this project to God who has helped me right from the

beginning to the completion of this project. He has guided me through the many up’s and

down’s while I went about this project and gave me hope, Patience and confidence. May his

name be Held up High!

3

Page 4: Census Management System - Documentation FINAL

DEDICATIONS

To my family: Dad, Mum and Sisters. Special thanks to them for all their support and

encouragement and for their useful and constructive comments on the draft of this work and

for all the financial support they offered me.

To the Almighty God for enabling me complete my project.

4

Page 5: Census Management System - Documentation FINAL

DECLARATION

I hereby declare that this project is my original work and has not been presented for any

award in any other institution of high learning before. Where material has been used from

other sources it has been properly acknowledged in accordance with the institute’s

regulations.

Student Signature: ……………………………………………………..

Student Name: Kenneth K. Mwiti

Project Supervisor Signature…………………………………………

Date…………………………………………………………………

5

Page 6: Census Management System - Documentation FINAL

ContentsABSTRACT................................................................................................................................2

PREFACE...................................................................................................................................3

ACKNOWLEDGEMENT..........................................................................................................4

DEDICATIONS..........................................................................................................................5

DECLARATION........................................................................................................................6

CHAPTER 1.............................................................................................................................13

1. INTRODUCTION................................................................................................................13

1.1 PROBLEM..........................................................................................................................14

1.2 PROPOSED SOLUTIONS.............................................................................................15

1.3 OBJECTIVES.................................................................................................................16

1.3.1 Personal Objectives......................................................................................................16

1.4 JUSTIFICATION...........................................................................................................16

1.5 REQUIRED RESOURCES............................................................................................17

1.5.1 Software requirements:............................................................................................17

1.5.2 Hardware requirements:...........................................................................................17

1.6 RISKS.............................................................................................................................17

1.7 INVESTIGATION PLAN..............................................................................................17

1.8 PROJECT DEVELOPMENT PLAN..............................................................................18

CHAPTER 2.............................................................................................................................19

2. LITERATURE REVIEW.....................................................................................................19

2.1 INTRODUCTION..........................................................................................................19

2.1.1 TOP IMAGE SYSTEM...........................................................................................19

2.1.2 LOCKHEED MARTIN CENSUS SYSTEMS.......................................................20

2.1.3 AUTOMATED CENSUS MAPPING SYSTEM....................................................21

2.1.4 CENSUS INFORMATION SYSTEM....................................................................22

CHAPTER 3.............................................................................................................................23

3. INTRODUCTION................................................................................................................23

3.0.1 Purpose.........................................................................................................................23

3.0.2 Project Scope...............................................................................................................23

3.0.3 Intended Audience and reading suggestions................................................................24

3.1 DATA COLLECTION METHODOLOGY...................................................................24

3.1.1 Requirements Determination...................................................................................24

3.1.2 Interviews.................................................................................................................24

3.1.3 Secondary sources....................................................................................................25

3.2 DATA ANALYSIS.........................................................................................................25

3.3 DEVELOPMENT METHODOLOGY...........................................................................25

6

Page 7: Census Management System - Documentation FINAL

3.3.0 METHODOLOGY REVIEW..................................................................................25

3.3.1 WATERFALL MODEL..............................................................................................26

3.4 GENERAL DESCRIPTION...........................................................................................27

3.4.1 Product perspective..................................................................................................27

3.4.2 Product Functionality...............................................................................................27

3.4.3 User characteristics..................................................................................................27

3.4.4 Assumptions.............................................................................................................28

3.5 SPECIFIC REQUIREMENTS........................................................................................28

3.5.1 Functional requirements:.........................................................................................28

3.5.2 Nonfunctional requirements.....................................................................................28

3.5.3 Operational Requirements.......................................................................................29

3.5.4 Training....................................................................................................................29

3.5.5 User Interface Design..............................................................................................29

3.6 SYSTEM FEATURES....................................................................................................30

3.6.1 Security....................................................................................................................30

3.6.1.1 Description and priority........................................................................................30

3.6.1.2 Stimulus/response sequences................................................................................30

3.6.1.3 Functional requirement.........................................................................................30

3.7 External Interface Requirements.....................................................................................30

3.7.1 User interface...........................................................................................................30

3.7.2 Hardware Interfaces.................................................................................................31

3.8 Software Interfaces........................................................................................................31

3.9 Communication Interfaces.............................................................................................31

3.9.1 Other Nonfunctional Requirements........................................................................31

3.9.1.1 Performance Requirement....................................................................................31

3.9.1.2 Safety Requirements.............................................................................................32

3.9.1.3 Security Requirements..........................................................................................32

3.9.2 Software Quality Attributes.....................................................................................32

1. Maintainability..............................................................................................................32

2. Reliability......................................................................................................................33

3. Documentation..............................................................................................................33

3.9.3 CONCLUSION........................................................................................................33

CHAPTER 4.............................................................................................................................34

4. INTRODUCTION................................................................................................................34

4.1.1 PURPOSE....................................................................................................................34

4.1.2 SCOPE OF THE DOCUMENT...................................................................................34

4.1.3 INTENDED AUDIENCE............................................................................................35

7

Page 8: Census Management System - Documentation FINAL

4.2 SYSTEM ENVIRONMENT..............................................................................................35

4.3 DESIGN REQUIREMENT LIST.......................................................................................35

4.4 THE SYSTEM OVERVIEW..............................................................................................36

4.4.1 DESIGN TOOLS.........................................................................................................36

4.4.1.1 HARDWARE TOOLS..........................................................................................36

4.4.1.2 SOFTWARE TOOLS...........................................................................................37

4.5 TECHNICAL CONSTRAINTS.........................................................................................37

4.6 SYSTEM ARCHITECTURE.............................................................................................38

4.6.1 Use Case Diagram........................................................................................................38

4.7 SEQUENCE DIAGRAM....................................................................................................39

4.8 ACTIVITY DIAGRAM......................................................................................................40

4.9 CLASS DIAGRAM............................................................................................................41

4.10 DATABASE DESIGN......................................................................................................42

4.10.1 SCHEMA DESIGN...................................................................................................42

4.10.2 NORMALIZATION..................................................................................................42

4.10.2 ENTITY RELATIONSHIP DIAGRAM...................................................................43

4.10.3 TABLE SCHEMA.....................................................................................................44

4.10.4 DATA DICTIONARY...............................................................................................45

4.10.5 MODELING..............................................................................................................47

4.10.5.1 INTERFACE DESIGN.......................................................................................47

4.10.6 LOGIN FORM...........................................................................................................47

4.10.7 Login fail page form..................................................................................................47

4.10.8 ENUMERATOR PAGE FORM................................................................................48

4.10.9 SUPERVISOR PAGE FORM...................................................................................49

4.10.10 Population and Housing...........................................................................................50

4.10.11 Information of Female aged 12years and above form.............................................51

4.10.12 Information of Female aged 3years and above form...............................................51

4.10.13 Housing Condition and Amenities Form.................................................................52

4.10.14 Information about hotel, prison, hospital in-patient citizens form...........................52

4.10.15 PHYSICAL DESIGN:.................................................................................................53

4.10.15.1 Software requirements..........................................................................................53

4.10.15.2 Hardware Requirements........................................................................................53

4.10.16 CONCLUSION:..........................................................................................................53

CHAPTER 5.............................................................................................................................54

5.0: SYTEM TESTING............................................................................................................54

5.1: INTRODUCTION.........................................................................................................54

5.2 Goals and objectives.......................................................................................................54

8

Page 9: Census Management System - Documentation FINAL

5.3 Statement of scope..........................................................................................................55

5.4 Major constraints............................................................................................................55

5.5 TEST PLAN....................................................................................................................56

5.5.1 Software to be tested................................................................................................56

5.5.2 Testing strategy........................................................................................................56

5.5.3 Component/unit testing............................................................................................56

5.5.4 Integration testing....................................................................................................58

5.5.5 Validation testing.....................................................................................................58

5.6 System testing.................................................................................................................60

5.6.1 Testing resources and staffing.................................................................................60

5.6.2 Test Work Products..................................................................................................60

5.7 Test Record Keeping.......................................................................................................60

5.8 Test Metrics....................................................................................................................61

5.8.1Testing tools and environment..................................................................................61

5.9 Test procedure.................................................................................................................61

5.9.1 Software to be tested................................................................................................61

5.9.2 Testing procedure.....................................................................................................62

5.9.3 Unit test cases..........................................................................................................62

5.9.3.1 Stubs and/or drivers for component: Interface Level Editor................................62

5.9.3.2 Test cases component: Interface...........................................................................62

5.9.3.3 Purpose of tests for component.............................................................................62

5.9.3.4 Expected results for component............................................................................62

5.9.3.5 Stubs and/or drivers for component: Interface Level Editor................................62

5.9.3.6 Test cases component: Database...........................................................................62

5.9.3.7 Purpose of tests for component.............................................................................62

5.9.3.8 Expected results for component............................................................................62

5.9.4 Integration testing....................................................................................................62

5.9.5 Test procedures for integration....................................................................................63

5.9.5.1 Stubs and drivers required....................................................................................63

5.9.5.2 Test cases and their purpose.................................................................................63

5.9.5.3 Expected results....................................................................................................63

5.9.6 Validation testing.........................................................................................................63

5.9.6.1 Testing procedure for validation...........................................................................63

5.9.6.2 Expected results....................................................................................................63

5.9.6.3 Pass/fail criterion for all validation tests...............................................................63

5.9.7 High order testing (System testing).............................................................................64

5.9.7.1 Recovery testing....................................................................................................64

9

Page 10: Census Management System - Documentation FINAL

5.9.7.2 Security testing......................................................................................................64

5.9.7.3 Regression testing.................................................................................................64

5.9.7.4 Stress testing.........................................................................................................65

5.9.7.5 Path Testing..........................................................................................................65

5.9.7.6 Performance testing..............................................................................................65

5.9.7.7 Alpha/beta testing.................................................................................................65

5.9.7.8 Documentation testing..........................................................................................66

5.9.7.9 Testing resources and staffing..............................................................................66

5.9.8 Test work products.......................................................................................................66

5.9.9 Test record keeping and test log..................................................................................66

5.9.10 Conclusion.................................................................................................................66

CHAPTER 6.............................................................................................................................67

6.0 IMPLEMENTATION STRATEGY...................................................................................67

6.1 Introduction.....................................................................................................................67

6.2 Purpose............................................................................................................................67

6.3 Implementation Overview..............................................................................................67

6.3.1 Installation................................................................................................................67

6.3.2 Training....................................................................................................................67

6.3.3 Execution.................................................................................................................67

6.3.4 Conversion Plan.......................................................................................................68

6.3.5 Hardware Installation...............................................................................................68

6.3.6 Software Installation................................................................................................68

6.3.7 Front-End-Implementation......................................................................................68

6.3.8 Review.....................................................................................................................68

6.3.9 Data Conversion.......................................................................................................68

6.4 Justification for the Changeover Method........................................................................68

6.4.1 Reasons for Using Parallel Changeover..................................................................69

6.5 Actual Implementation....................................................................................................69

6.6 Implementation Schedule................................................................................................70

6.7 Conclusions.....................................................................................................................71

CHAPTER 7.............................................................................................................................72

7.1 Conclusions.....................................................................................................................72

7.2 ACHIEVEMENTS.........................................................................................................72

7.3 SHORTCOMINGS.........................................................................................................72

7.4 THE WAY FORWARD.................................................................................................72

BIBLIOGRAPHY.....................................................................................................................73

APPENDICES..........................................................................................................................74

10

Page 11: Census Management System - Documentation FINAL

APPENDIX A: INTERVIEW QUESTIONS.......................................................................74

APPENDIX B: USER MANUAL........................................................................................74

1. INTRODUCTION...............................................................................................................74

1.1 Objectives:......................................................................................................................74

2.0 HARDWARE AND SOFTWARE REQUIREMENTS.....................................................74

3.0 UPLOADING FILES..........................................................................................................75

3.1 RUNNING THE APPLICATION..................................................................................75

3.2 Security Page..................................................................................................................78

3.3 Enumerator page.............................................................................................................78

3.4 Supervisor Details...........................................................................................................79

3.5 Home page......................................................................................................................79

3.6 Livestock form................................................................................................................80

3.7 Location Form.................................................................................................................80

3.8 Disability Form...............................................................................................................81

3.9 Female Aged 12 years and above Form..........................................................................81

4.0 Deaths in the Household Form.......................................................................................82

4.1 Hotel/Lodges/Hospital/Prison ResidentsForm................................................................82

4.2 Recruitment Form...........................................................................................................83

4.3 Amenities Form..............................................................................................................83

4.4 Information Regarding All Persons................................................................................84

4.5 Search form.....................................................................................................................84

5.0 APPENDIX C: CODE........................................................................................................85

11

Page 12: Census Management System - Documentation FINAL

CHAPTER 1

1. INTRODUCTION

The Kenya National Bureau of Statistics has a mandate to deliver efficient, reliable and

accurate statistics of the Country’s population. The importance of this process is to help the

Government to analyze and disseminate social economic statistics needed for planning,

allocation of resources in various constituencies within the country and policy formulation for

the country.

The Service Charter in the public declaration of the Ministry of State for Planning National

Development and vision 2030 to achieving targeted, effective and ethical results for Kenyans

in the area mandate. Through this charter it also aims to enhance the level of awareness of the

Ministry’s role in the overall facilitation and coordination of the national development

planning process within the overall structure of the Government of Kenya.

Census is the procedure of systematically acquiring and recording information

about the members of a given population. It is a regularly occurring and official count of a

particular population. The term is used mostly in connection with national 'population and

door to door censuses' (to be taken every 10 years according to United Nations

recommendations), agriculture, and business censuses.

Since late 1980’s upto early 2000, the capacity of Kenya’s National Statistical System (NSS)

to produce timely, high quality and relevant statistical information had deteriorated. Reasons

for this included declining financial outlays to produce and disseminate statistics, inadequate

professional staff at the senior management levels, and poor management. Until very recently,

surveys were conducted but not analyzed, or when analyzed, the results were not released to

the public in time.

Several statistical products such as the Economic Survey and the Statistical Abstract were

produced without release calendars, leading to delays in making information available to the

public. Production of other statistical products such as the Statistical Digest, the Annual Trade

Statistics, and the Annual Education Statistics ceased. Household surveys and industrial

production surveys were conducted sporadically, depending on the availability of donor

funding, since Government allocations to the former Central Bureau of Statistics (CBS) were

inadequate to finance them. The country’s input/output tables and the social accounting

matrix were last produced in 1976, while the system of national accounts used in the

compilation of national accounts aggregates had not been fully revised to reflect the

guidelines of the United Nations System of National Accounts 1993 (SNA93). Results of the

12

Page 13: Census Management System - Documentation FINAL

surveys which the CBS managed to conduct were released so late that they were often

irrelevant in an ever changing environment. The production of statistics through the routine

data systems in the line ministries also declined over time. Moreover, production of statistics

by various agencies was not well coordinated, resulting in duplication of data collection

efforts. In addition, annual symposiums for data users and producers, which used to be held in

the 1980s to ensure that data users and data producers maintained an active dialogue, were not

held.

Meanwhile, demand for statistics to benchmark and track implementation progress of national

development initiatives and programs substantially increased. The opening up of democratic

space in Kenya in the recent years, coupled with increased media freedom and coverage of

economic and social issues, raised public awareness of the value of accurate and timely

statistical information. Government has alsoincreasingly come to appreciate the usefulness of

good statistics for evidence–based policymaking in guiding major Government policies and in

monitoring development programs and the Millennium Developments Goals.

1.1 PROBLEM DEFINITION

LACK OF DATA INTEGRITY: The Census process is usually a cumbersome work

as it requires the clerks to move all over the Country into people’s homestead. The

techniques used for data collection are not always reliable as some assumptions are

made about the far unreached areas hence supplying wrong information based on this

assumption.

COST: The cost incurred during the census process generally high, has to employ

many clerks in various parts of the country with the task of collecting data and later

transfer the data into the centralized database for analysis and review.

TIME FRAME: In Kenya Census is usually conducted over a decade i.e. after every

10 years which create problems to the Ministry of planning and the Ministry of

Finance during each budget of every financial year. This is as a result of high

population growth in the country of which it may not be accounted for in the budget.

Inconvenience: The current system in many parts of the country is usually

conducted during the night with the assumption that every family member is available

at their respective houses while this is not usually the case. Also with the increase rate

of crime within the country people tend to lock out clerks who conduct census hence

they are unable to gather the required data.

13

Page 14: Census Management System - Documentation FINAL

STORAGE AND RETRIEVAL OF INFORMATION: There are

difficulties in the storage of the census forms in the current operations. The forms are

bulky and occupy much space. This makes it tedious during the process of retrieval

and analyses of data collected from the field.

MIS-PLACEMENT OF RECORDS. This problem occurs in areas where

there are security lapses. Clerks often lose the data they have collected as a result of

sabotage by criminals; this problem mostly arises because this process is often

conducted during the night when all persons are expected to be in their homestead.

PAPER WORK. There is a lot of paper work which is done right from the

estimation period of an area when a rough calculation is done till when the actual

census is carried out. This also increases the cost incurred during this process.

INADEQUATE MATERIALS AND THEIR TRANSPORTATION.

The materials required to carry out census at times are inadequate for all parts of the

country and the mode of their transportation is hindered especially in area with chaos

and instability. Economic Survey and the Statistical Abstract

were produced without release shsedules, leading to delays in making information

available to the public.

1.2 PROPOSED SOLUTIONS

Based on the above challenges the organization has decided, to implement an online census

management system. The easy to use system shall allow the Ministry to conduct the census

with ease and for a shorter period.

Its features maximizes the security of the system and the ease of use.

Features of the proposed system shall include:-

Search facility – online users shall be able to search for their details to confirm

whether they have been successively been entered in the database.

Interactivity – the applications interactive nature enables online users post their

details as required by the Ministry.

Security- the systems will enhance the security measure that only the people who

have supplied all their details e.g. valid ID Numbers are eligible to use the census

system.

Convenience- the system I intend to build will be online hence it will be accessible

24hrs a day hence people can conduct their census at their own time.

14

Page 15: Census Management System - Documentation FINAL

Reduce Costs & Increase Efficiency-the system will entirely reduce the cost of

employing many clerks at various places. Only some few IT staff will be needed to

teach or record people’s details. Also paper work will be reduced and in turn cut down

the cost of purchasing papers.

1.3 OBJECTIVES

The system should be able to provide high security and anyone who wants to access it

should have proper authorization.

The system should reduce the workload of conducting the census and hence increase

efficiency.

The system should reduce the storage requirements and be able to store all the details.

The system should be able to deal with data redundancy within the database.

To investigate the current system that is in use within the organization.

Reduce the time taken by management in coming up with concrete decisions.

Help in efficient collection, storing, processing and analysis of data for ease in

manipulation.

1.3.1 Personal Objectives

Gain knowledge.

Learn more about the commonly used data gathering methods by applying them

practically in the project.

Learn how to work with large volumes of information within a set timeline, and

analyze it.

Explore further the field of programming languages.

1.4 JUSTIFICATION

Some of the justification to carrying out the project is:

The project will enable me to use both my project management and programming

skills that I have acquired during my study.

The project will also see that misplacement of people’s records when conducting

census is totally eradicated.

15

Page 16: Census Management System - Documentation FINAL

The project will produce a system that will eliminate redundancy and enhance

efficiency.

Upon completion and implementation of the project it will enable the Supervisor to

generate a report about the census in all constituencies.

Coming up with a project is an essential requirement of Bachelors in Information

Technology and thus I would like to implement an information system to the

organization.

1.5 REQUIRED RESOURCES

1.5.1 Software requirements:

Microsoft Office 2003

Operating system (Microsoft windows XP)

Kaspersky Antivirus or an equivalent

Macromedia Dreamweaver.

My SQL

1.5.2 Hardware requirements:

Standard personal computer (Pentium IV 40GB, 512MB RAM)

Printer

3 magnetic or optical disks - used to make backup of important information in case of

any damage.

1.6 RISKS

The following are risks that one may encounter while doing the project and the counter

measures that one can take in case of anything:

1) Inadequate financial support to ensure the completion of the project.

Remedy: I have already saved up money in case of any influx on my budgeted costs.

2) Inadequate information for the available papers in the library.

Remedy: I will visit various websites which are related to my project so as to get more

detailed information.

3) Power failure:

16

Page 17: Census Management System - Documentation FINAL

Remedy: with Generators and or UPS support installed data cannot be lost through power

failure

4) Virus attacks

Remedy: Making sure that up-to-date software is installed frequently to avoid any attacks.

1.7 INVESTIGATION PLAN

I plan to investigate using the following methods.

Interviewing - I will interview the Coordinator. This will enable me to know the

requirements and if any training will be required before the system is implemented.

Document Review - This will enable me to know the current state of the learning

institution. This will be done through the reports and documentation kept.

Observation - This will help me see the problems the enumerator, supervisors are

facing. This will be done by attending one census process.

1.8 PROJECT DEVELOPMENT PLAN

Any work to be done has to have a plan in order to do the work according to a time frame,

in this case 15 weeks. Thus I have apportioned the work in manageable chunks so that I

may be able to successfully complete the project on time.

A REPRESENTATION OF THE PROJECT ON A GRATT CHART

No Activities

1. Project proposal

2. Problem definition

3. Feasibility study

4. Fact finding

5. Analysis and

design

6. Implementation

17

Page 18: Census Management System - Documentation FINAL

7. Reviewing the

system

1 2 8 9 12 13 14 15 16 17 18 19 20 22 24

TIME IN WEEKS

CHAPTER 2

2. LITERATURE REVIEW

Literature review is an evaluation report of information found in the field related to the

selected area of study. It describes, summarizes, evaluates and clarifies the kind of system that

is to be developed. The main aim of literature review is to analyze previous work done and

give new insights on better ways of producing a good census management system.

Reasons as to why literature review is carried out are:

To identify information and ideas that may be relevant to my project.

To identify methods that could be relevant to my project.

To identify gaps in previous literature reviews.

To increase knowledge in ones subject area.

2.1 INTRODUCTION

2.1.1 TOP IMAGE SYSTEM

Top image Systems has developed a software solution for capturing, processing and

validating data from all types of sources such as census forms. In this project, TiS’ solution

simplified the data capture process, reduced the dependence on manual data entry and

provided the customer with data integrity and accurate content.TiS’ fast and efficient forms

processing proved its unprecedented character recognition and error detection capabilities.

The TiS solution used powerful engines with an exclusive voting algorithm to achieve the

most accurate results.

During the project TiS’ software:

Captured all types of data, including: OMR,OCR, ICR (handwritten)

Monitored and managed the workflow in real-time, indicating any bottlenecks in the

process that allowed immediate corrective actions

Allowed the operations manager to quickly define and change the workflow

18

Page 19: Census Management System - Documentation FINAL

Enabled the setup team to easily customize new stations

Provided unique routing rules to define the flow of data

Offered a unique statistics tool that summarized information for all tasks in the

system, from recognition details to additional information on the performance of the

data entry typists

Provided one easy-to-use design tool to design all applications, workflows and

processing stations

2.1.2 LOCKHEED MARTIN CENSUS SYSTEMS

The Lockheed Martin Census Business Practice team is a premier international provider of

integrated census data collection, processing and analysis solutions. More than 10 years of

unmatched experience, resources, methods, systems and commitment ensure that our census

solutions are flexible, secure, accurate and cost effective.

Our Census Business Practice successes include the U.S. 2000 Census, the United Kingdom’s

2001 Census, and Canada’s 2006 Census, which was the first census in North America that

allowed citizens nationwide the choice to submit their census via a secure Internet solution.

The team is currently supporting the U.S. Census Bureau with the Decennial Response

Integration System  for the 2010 Census.

In the United States, the Corporation supported the Census 2000 with the Data Capture

System (DCS). The U.S. Census 2000 was the largest, most sophisticated - and most accurate

- census undertaken; encompassing 120 million forms with 98 percent accuracy. It

represented the first census to use scanned optical character recognition (OCR) technology to

process the handwritten forms.

For the 2001 UK Census, Lockheed Martin’s team provided data capture and coding services,

including form printing, dress rehearsal services and census services for nearly 30 million

forms with an accuracy rate of better than 99 percent.

Lockheed Martin provided hardware and software integration for Statistics Canada’s dress

rehearsal and full 2006 census, including the first successful use of the secure Internet

channel.

In every census we support, Lockheed Martin’s team strives to:

19

Page 20: Census Management System - Documentation FINAL

• Provide the general public with multiple, easy-to-use and secure methods of response.

• Help census authorities collect and capture the data accurately and completely.

• Employ robust processes and tools to ensure complete protection of individuals’ personal

information.

Lockheed Martin’s Census Business Practice represents technology expertise that make

census taking highly accurate, more automated and efficient, and easier for citizens as well as

for governments to use.

Reference

(http://www.lockheedmartin.com/products/census-systems/index.html)

2.1.3 AUTOMATED CENSUS MAPPING SYSTEM

The Statistics Bureau and Statistics Center of the Management and Coordination Agency of

Japan developed an Automated Census Mapping System (CMS) by applying the Geographic

Information System technology. The geographic data of Basic Unit Block boundaries

introduced in the 1990 population census and the attribute data of population census are

registered in the database by this system, which made it possible to understand statistical

maps and distribution maps using Graphic user interface.

The population census adopts Basic Unit Blocks as the most basic small-data units, and

thereby allows the compilation of statistical and distribution maps (which show various

information such as population, number of households, population density, population

growth/decrease rate, percentage of employed persons by industry) for each prefecture or

municipality by processing data based on each Basic Unit Block. It is also possible to

demarcate Densely Inhabited Districts (DIDs) and process data for small areas such as

subdivisions by cho and aza, school districts, and divisions by health center jurisdiction or

local residents association. A wide range of applications include the tabulation of the

population and number of households in a commercial quarter within a radius of 500 m from

the station, and the calculation of population and number of riverside households, which are

prone to damages by failure of embankment, in disaster prevention efforts.

The purpose of introducing the notion of Densely Inhabited District (DID) was to reveal the

urban population based on the results of population census. In the traditional statistical

20

Page 21: Census Management System - Documentation FINAL

presentation, the terms "all shi (i.e. cities)" and "all gun (i.e. machi (towns) and mura

(villages)" were customarily used to represent urban and rural areas, respectively. However,

many towns and villages were merged under the Towns and Villages Consolidation

Promotion Law of 1953 and the New Towns and Villages Creation Promotion Law of 1956.

This resulted in the involvement of sparsely inhabited agricultural areas within the boundaries

of "all shi" that were originally meant to represent urban areas. The population density of the

"all shi" was consequently lowered, and the term "all shi" lost its original sense of urbanity. It

was then felt that the statistical data of DIDs were becoming increasingly inappropriate.

Under such circumstances, the Statistics Bureau introduced a new definition of boundaries

that would clearly represent urban areas in the 1960 population census. As a result, statistical

data that were the accurate representation of the actual state of urban population were

provided. These data are now widely used as a criterion for calculating local allocation taxes,

and as a valuable source for establishing such administrative policies as town planning,

regional development programs, urban redevelopment programs, industrial location planning,

transport planning, public health policies and crime and disaster prevention policies, as well

as being applied in diverse academic and private marketing fields.

At the operational level, however, the demarcation of DIDs took more than seven months by

manual operation. To overcome this problem, the procedures for demarcating DIDs were

redesigned by grouping a number of districts evaluated as contiguous on the basis of

population and population density (as well as household density) of a certain level.

To computerize the new demarcation procedures, experimental studies on system

development started in June 1992 based on Arc Info, and the development of a prototype

system started in February 1993 utilizing the CMS data collected in 1990. This was followed

by a series of verification studies that started in September 1993, which led to the

modification of the prototype system in September 1994. Furthermore, AML was

implemented to suit the new conditions in May 1995, for the purpose of demarcating DIDs in

the population census of the same year. Today, the results of all these efforts are realized in

the Automated Census System for Densely Inhabited District at the Statistics Bureau of the

Management and Coordination Agency of Japan.

Reference (http://proceedings.esri.com/library/userconf/proc98/proceed/to400/pap355/

p355.htm)

21

Page 22: Census Management System - Documentation FINAL

2.1.4 CENSUS INFORMATION SYSTEM

Harris Corporation has been applying decades of experience in systems engineering,

information and data processing, systems integration, and production operations for

mission critical systems to applications for the United States Census Bureau. Harris is

committed to assisting the U.S. Census Bureau in meeting its current and future strategic

goals of providing Census-related statistics with increased accuracy at a reduced cost.

Through the MAF/TIGER Accuracy Improvement Project (MTAIP), Harris has designed,

developed, and implemented an integrated production environment, and all necessary

systems to improve existing geocoded boundary data for street center-lines, lakes, rivers,

housing units, and other geographic entities to 7.6 meters of accuracy. MTAIP is a major

milestone in the partnership between the U.S. Census Bureau and Harris Corporation.

MTAIP will help ensure that Census takers can quickly and accurately arrive at the door

of the over 115 million residents across the nation.

The U.S. Census Bureau Field Data Collection Automation (FDCA) program will provide

advanced, automated systems that deliver data to the Census Bureau’s computing systems

in near real-time for integration with other data sources.

CHAPTER 3

3. INTRODUCTION

The goal and principle of the system requirement specification is to prepare the scope of the

document, the designer’s view of the client’s needs and requirements before the actual system

is designed. It serves like the evidence tool that implies both client and designer have

accepted to introduce the new system. The system is first evaluated to verify how it operates,

view the problems of the current system, its specifications and additional technological

options. Measures the weakness and strength that the system is bound to get.

3.0.1 Purpose

To determine and fully document how the system under development would work

better to support the institution needs.

22

Page 23: Census Management System - Documentation FINAL

To describe the new systems functionality and the change it’s intended to bring to the

institution as a whole.

Define all the functional and non functional requirements of the system.

Aid budget estimations for the system’s undertaking i.e. facilitate the estimation or

calculation of the necessities and this could be in terms of actual cost and time to be

taken to develop the system.

Guide in defining all the tools required for the development of the system i.e. Help in

identifying the system scope and the tools that are to be used for the system

development.

Clearly outline the roles and responsibilities of all the parties involved in the

development process of this system. (enumerators, supervisor)

3.0.2 Project Scope

The new system will allow the institution to manage its information effectively. This system

will provide a more reliable alternative to the existing system by ensuring efficient

information retrieval, secure and convenient mode of storing data and database management.

The system will be integrated in parallel with the existing system. As its services are to

enhance the existing one, it will not replace the existing one. This system requirement

document is the initial release and will only cover the requirements through preliminary

analysis of the proposed system’s features. These requirements have been developed through

intensive consultations with users and include a summary of all the necessary assumptions

and relations. The system provides ultimate protection against unauthorized access trying to

access the system which contains the organizations data by setting up log- ins. It will have a

large database that would provide enough space to store the people’s records gathered from

the field.

3.0.3 Intended Audience and reading suggestions.

The document is intended for the clients below:

Developers: The developers will be able to access the various features provided by the

application thus increasing the security.

Users: Users include the field clerks and the Supervisors of the system.

System Administrators: They will ensure that the system is working well and will be

responsible of managing the user’s database.

Technicians: Will have the task of troubleshooting and maintaining the system.

23

Page 24: Census Management System - Documentation FINAL

3.1 DATA COLLECTION METHODOLOGY

3.1.1 Requirements Determination

This task involves a data collection process to determine the features that must be included in

the system to satisfy business requirements. The various techniques for data collection

available include:

Interviews: A planned meeting during which the interviewer obtains information from

the interviewee.

Document review: Reviewing the existing system documentation to understand how

the system is supposed to work.

Observation: Observing the current/available system under operation to understand it

better.

The methodologies applied in this case are interviews and observation

3.1.2 Interviews

The interviews were done for the following reasons:

They allow more detailed questions to be asked

Interviews usually achieve a high response rate.

Ambiguities can be clarified and incomplete answers followed up

Precise wording can be tailored to respondent and precise meaning of questions

clarified

Interviewees are not influenced by others in the group

The persons interviewed were:

o Clerks at the field who carry out data collection.

o Supervisor at the main office who Coordinate overall supervision.

o General public so as to get their view about the process.

3.1.3 Secondary sources

1. Internet – Material provided on the Internet was used to develop a clear understanding on

the relevance of online census management over the web.

2. Books – Books, magazines and journals on Online Census Management System design

contributed to the collection of the required information.

24

Page 25: Census Management System - Documentation FINAL

3.2 DATA ANALYSIS

According to the research carried out mostly data collection tool are dealt on, which are very

useful, this was the interviewing method. With this one was able to interview almost all the

people working at the learning institution. Using the interviewee’s responses I was able to

come up with a full report, which detailed the problems, faced, non-functional requirements,

and proposed solutions to the problems etc.

Depending on the type of data in question, this might include application of statistical

methods, selecting or discarding certain subsets based on specific criteria, or other techniques.

During this process the researcher is required to involve all stakeholders who will guide him

on what is of importance and what is not, in the proposed system. The developer lists all that

is required and with this final result is what he will use to build the system.

After all data had been analyzed the users finally convinced the Coordinator that starting up

this project that would help them overcome all their problems as they had stated.

3.3 DEVELOPMENT METHODOLOGY.

3.3.0 METHODOLOGY REVIEW

A methodology is composed of one of the software development models used in conjunction

with various techniques. A methodology mainly involves both models and techniques. There

are various methodologies that can be used to develop a system. Some of the methodologies

that can be used include; prototyping, Clean room, Waterfall, Software development lifecycle,

incremental.

3.3.1 WATERFALL MODEL

The waterfall model is an approach of development that emphasizes completing a phase of the

development before proceeding to the next phase. Sometimes a need to change a particular

requirement may be identified, in order to make a change to some of the requirements a

formal change process is followed to make the change. The graphic representation of these

phase development resembles the downward flow of a waterfall. At most times it is referred

as the traditional way of developing a system.

Advantages of the waterfall model

1. It is very simple to use and implement in this project as it is suitable for small projects.

25

Page 26: Census Management System - Documentation FINAL

2. Testing is inherent to each of the phase in this model and thus eliminating mistakes in

the system developed thus reducing the cost to correct.

3. The model is rigid and each phase requires deliverables and a review immediately

helping a developer know if he or she is delivering the expected system.

Disadvantages

1. It is of high risks especially when requirements change thus leading to extreme time

consumption which may not be available in the development of this system.

2. When developing the system using this model, it is not guaranteed that one phase of

the model is perfect before one moves to the next phase and this may lead to the

system been resisted by the user.

3. It is not suitable for developing intended system as it involves review and testing after

each phase which is time consuming and may lead the project been completed late.

A diagram showing all phases in a waterfall model

3.4 GENERAL DESCRIPTION

3.4.1 Product perspective

The product is distributed but requires web server software to operate. It has two external

interfaces consisting of a configuration interface and a client interface. Both require the use of

a web-browser running on the client computer. The product is designed to run on existing

hardware software.

26

Requirement specification

Integration and maintenance

System design

Detailed design

Coding and testing

Page 27: Census Management System - Documentation FINAL

3.4.2 Product Functionality

Data Input. Data will be input directly by the system users i.e. data from both the

clients and the.

Data Processing. Data processing will be on the basis of first come first served. i.e.

the first bit of data to be entered in the system will be the first one to be processed.

Data Output. Processed data will be displayed on the screen first to view if there are

any errors that are to be removed before it may be sent to the printer incase a hard

copy is required.

Monitoring. The system will be able to monitor some destructive activities like when

deleting of any record. It will also inform the users of information such as record

updated and so on.

Control. The system will be able to provide some useful controls such as navigating

from one user to the next or previous. It will also provide the last and first options.

Any user who is to access the system will be required to log into the system using a

valid password and username.

3.4.3 User characteristics

The users of the system have different skills and some will require a lot of training to be able

to use the system comfortably. In this case, use of menus in the application system will be a

very good option so as to avoid a lot of training. In addition to menus, there will be the need

to come up with a user guide that will be able to show the instructions on what is performed in

the system.

The general characteristics of the users are:

All the users are computer literate

Users at the operational level have skills for comprehensive data capturing, data entry

and manipulation of the databases.

Users at the management level use the system to study summarized data and for

strategic decision-making.

3.4.4 Assumptions

The system assumptions that relate to the requirements here are;

27

Page 28: Census Management System - Documentation FINAL

That the sample interviewed and respondents of the questionnaires adequately

represent the entire population and that the computer systems shall fully support

the application.

That the systems are meant only for users running the windows operating systems

and the users shall keep to the domain scope and not traverse it.

The system is not supposed to exceed the stated budget since this may lead to

omission of some necessary requirements that are stated in this project.

The system will be fully integrated with the University website.

3.5 SPECIFIC REQUIREMENTS

3.5.1 Functional requirements:

The system should allow the user to view their full report.

The system should allow Clerks to update all people’s details.

The system should allow the Clerks to record people’s details.

Security should be enhanced by the system.

The system should allow the user to cancel an entry that they had previously placed.

The system should collect and store the detailed information provided by the user.

3.5.2 Nonfunctional requirements

Usability: The system should be easy to use by all.

Availability: The system should be up and running whenever needed.

Security: the system should provide controlled access to information while on

transmission. Only authorized users should access and modify data.

Extensibility: The system functionality should be easy to extend to include features

that will unfold in the future.

Evolution: The system should provide flexibility and production of new versions

suited for new environments and changing needs.

3.5.3 Operational Requirements

Computer with 533Mhz processor speed or above and at least 128MB memory

Windows 2000 operating systems or higher versions with a web browser (at least

Internet Explorer 6, Opera Browser 8.0, Netscape 2.1, or higher versions)

28

Page 29: Census Management System - Documentation FINAL

Database management staff.

Connection to the Internet directly or through a network.

Database management software preferably MySQL.

Phpdev 4.23

Internet Explorer 6.0 or later

Macromedia Dream weaver

3.5.4 Training

The staff will need to be equipped with the necessary skills that will enable them to

discharge their obligations according to the wishes of the clients.

3.5.5 User Interface Design

This involved designing the interface that will be used for input and output of systems data

i.e. an interface through which the user will interact with the system. Principles employed in

this section were:

User familiarity: The interface is user friendly in the sense that it uses terms and

concepts familiar to the user drawn from user’s experience.

Consistency: The interface was designed such that where possible, comparable

operations should be activated in the same way.

Recoverability: The interface was designed to include mechanisms to allow users to

recover from errors.

User guidance: The interface was designed to provide meaningful feedback when

errors occur and provide context-sensitive user help facilities.

User diversity: The interface was designed to provide appropriate interaction facilities

for different types of system users.

3.6 SYSTEM FEATURES

3.6.1 Security

3.6.1.1 Description and priority

Security of data is the major feature this system will provide. Administrator has highest

priority of access to the database thus increasing data integrity. The risk of losing data or

29

Page 30: Census Management System - Documentation FINAL

having data corrupted is very high and could cost the institution invaluable expense in data

recovery. Each user will have a unique username and password combination to allow

authenticity to the system.

3.6.1.2 Stimulus/response sequences

Integrity of data is enhanced thus information will be safe. User’s accounts will be managed

by the system administrator through the server by checking the current performance of each

user i.e. Each client’s entry.

3.6.1.3 Functional requirement

Each user have a login name and password and this information is required before the user is

allowed to access any information from the database thus integrity is enhanced. Request will

be stored in a database, which will be run by MySql.

The system shall receive requests from the users then process the data thus giving information

to the users. The system will also ensure that the data and information is safe from

unauthorized users by use of username and password.

3.7 External Interface Requirements

3.7.1 User interface

The user interface will provide usability to the user. This will be made possible by the fact

that the user access windows are limited and the use of menus. Moreover it will provide the

ability to search for reports by category for faster reference.

3.7.2 Hardware Interfaces.

Hardware contains the components that are used by the user to interact with the

system either in inputting or retrieving information.

The mouse will be used to navigate various windows/sections required by user

The keyboard will be used for data entry to the screen

The monitor will be used to show information inputted or retrieved by the user.

The database will serve as the information repository.

The central processing unit will enable control of writing to and retrieving information

30

Page 31: Census Management System - Documentation FINAL

from the database.

3.8 Software Interfaces.

The application will be communicated with the database through MySql. There will be many

forms to allow user interactivity with the system. It will provide links which will guide the

user to various pages.

3.9 Communication Interfaces.

Sharing protocols such as FTP (File Transfer Protocol) will be used to share instances of files

across the network. The system shall receive requests from the users then process the data and

information is safe from external users by use of passwords.

Data shall be received from the packets. The system shall then verify the input of user by

giving to the users certain messages. The data records shall then be stored into the database

then retrieved when required. The system shall also ensure that no resource information is

deleted maybe by negligence of users.

3.9.1 Other Nonfunctional Requirements.

3.9.1.1 Performance Requirement.

The web application will support simultaneous user access only if there are multiple

terminals.

The application shall be running on a hard disk with 160GB capacity, this is where the

database shall be located and it provides enough memory to store volumes of files and

records.

Only textual information will be handled by the software. Amount of information to

be handled can vary from user to user.

3.9.1.2 Safety Requirements

The server should be serviced regularly to ensure that it runs properly and the data saved at

consecutive intervals. Power is a significant feature and Uninterrupted Power Supply always

on standby incase power surges or blackouts that could cause fire breakages or loss of data.

31

Page 32: Census Management System - Documentation FINAL

Other risks or harm that can result from usage of the system are:

Back and neck pain and discomfort caused by maintaining an unnatural or unhealthy

posture while using the computer.

Eye strain resulting in visual fatigue, burning and watering eyes, headaches and

frequent changes in prescription glasses.

Precautions to be undertaken to avoid the problem:

Taking regular breaks from the working area.

Positioning mouse and keyboard at same level.

Adjusting your monitor brightness.

3.9.1.3 Security Requirements.

The application will ensure that only the authorized users will gain access to the resources by

the use of username and passwords. Reports will be kept secure allowing access to only

authorized users.

Measures to ensure security is enhanced:

A firewall to protect data.

Regular security tests and processes.

Implementing and maintaining an information security policy.

3.9.2 Software Quality Attributes

1. Maintainability

The system shall be able to provide room for future changes including addition of more

features, removal of some unwanted features, and should also be able to change with the new

operating systems and hardware. Changes can be made to the system in future through

upgrading, degrading, and adding more features to it. This enables its survival and reliability

in future.

2. Reliability

The system shall be available to the users at all time and it should provide the expected

results. In case of any failure, system down time should be very minimal. Backups shall also

be done on a daily basis so as to provide recovery means in case of any system failure. Having

put mechanisms in place will see to it that failure of the system is kept to the minimum.

32

Page 33: Census Management System - Documentation FINAL

3. Documentation

The system shall have its relative documentation on how to install, operate and trouble shoot

it in case of any problems. This will also assist in case new users are brought into the system

and also when programmers change.

3.9.3 CONCLUSION.

This project is aimed at developing an information system for the institution to help them in

the storage and retrieval of their data.

System Requirement Specification (SRS) helps to prepare the scope and purpose of the

document, the designer’s view of the client’s needs and requirements before the actual system

is designed.

With all the information about the system having been obtained the design of the system can

now begin and the data collected will help me design a system that will run and perform the

needed tasks.

CHAPTER 4

4. INTRODUCTION

It is a description of the structure of the software to be implemented, the data which is part of

the system, the interface between system component and the algorithms used. The objective

of this document is to detail the operation of the information system. The design document

will hence help in the final design of the system. Graphical representation will be used to

create a clear understanding and expected graphical user interface.

4.1.1 PURPOSE

Systems design is the process or art of defining the architecture, components, modules,

interfaces and data for a system to satisfy specified requirements. One could see it as the

application of systems theory to product theory.

Software Design Specification Document contains design level statements regarding the

system to be developed. This document a detailed description of the systems design for the

online human population census system. i.e. the modules in the system and how they integrate

33

Page 34: Census Management System - Documentation FINAL

and relate to each other. It is going to act as a guide for the system developer for it describes

how system requirements contained in the requirement specification document are carried out

or implemented in the system. The document would also show how users would visualize the

system and detailed descriptions of the inputs, processes and anticipated outputs of specific

sub-parts of the system. System Design Specification (SDS) is a description of how the

anticipated functional and non-functional system requirements specified in the Software

Requirements Specifications (SRS) are achieved in the system. This document generally

includes the design of usecase, sequence, activity diagrams.

4.1.2 SCOPE OF THE DOCUMENT

This document explains the design structures that are used in the development of the online

human population census system. It explains level by level of how data flows throughout the

entire system. Summary of the scope of design document can be given as:-

To design the online human population census system, showing the interfaces, processes and data.

To come up with a diagrammatical representation of the system that shows how data flows from the input, how data is processed and how data flows to the output.

To come up with an attractive design to address the mission and the objectives the online human population census system.

Come up with a simple and easy way of storing data and ensuring that data security and integrity is enhanced.

Enhance easy of generating reports whenever required.

4.1.3 INTENDED AUDIENCE.

The intended audiences are the users who will be using the document for reference, it will

also be used by the system designers who might be wishing to make any changes to the

system, and the system administrators will also use it to make any updates required to ensure

that they do not lose track of the of the system performance.

34

Page 35: Census Management System - Documentation FINAL

4.2 SYSTEM ENVIRONMENT.

It is concerned with the environment where the users are exposed to no their day to day

activities. the clients will also be in a safe environment in that they can send information

through the online system about their complains and feel safe that the information which is

stored in the system will be safe in that it can be used for reference and they are confident in

that no information can be gotten lid off because the security is maintained.

The user of the system will register into the system to get authority to manipulate data

in the system.

The user will use the system for data entry so that all the surrendered information is

input to be stored in the database so that it can be used for future reference and the

information is secure from an authorized access.

The users will be able to generate any report needed during the census process.

The administrator is responsible for managing the database as well as the website.

He/she ensures that all the information is updated to the database and monitors all the

users’ performance and also ensures that there is no unauthorized access.

4.3 DESIGN REQUIREMENT LIST.

Input data: this is the data that is entered by the enumerator or supervisor in charge of

supervision.

Data requirements: this includes the population details and any other information

that is stored in the database.

User Authentication: the system shall verify the claimed identity by users who use

the system, every supervisor and enumerator who has a username and password will

have access to the system.

User Authorization: depending on the type of access, the system shall give

permissions to read, modify, delete and perform other user level tasks within the

system. The users who have higher authority will have access to more information

from the database unlike the other users.

Reports: the system shall be able to produce reports such as all the information that

has been received using the online system.

Data Organization: the system is supposed to gather the data entered into files. This

will ensure that all the information is well updated in all the required tables.

35

Page 36: Census Management System - Documentation FINAL

Information Retrieval: the system will allow users to access existing information for

modifications necessary and for general view. It will ensure updates are made so that

all those who are assessed several times, their records are clearly updated. The system

will be able to store all the data/information and their retrieval will be easy to manage.

Information Storage: the system shall consist of database which will store all details

4.4 THE SYSTEM OVERVIEW

The system will replace the manual system in the organization by ensuring that all the users’

requirements are met. It will ensure that proper records are kept all back ups are performed to

prevent data loss, to develop a more customer focused service, to improve integrity

impartiality and to improve accuracy of records kept.

4.4.1 DESIGN TOOLS

4.4.1.1 HARDWARE TOOLS

Free available space on the hard drive should be at least 500Mb

40 GB hard disk drive.

UPS for preventing loss of unsaved information during power failure.

A computer running a modern operating system.

256 MB RAM.

4.4.1.2 SOFTWARE TOOLS

Windows 2000 operating systems or higher versions with a web browser (at least

Internet Explorer 6, Opera Browser 8.0, Netscape 2.1, or higher versions)

Macromedia Dream weaver version 8.

Database management software preferably MySQL.

PHP provided under the package which comes with Apache web server.

36

Page 37: Census Management System - Documentation FINAL

4.5 TECHNICAL CONSTRAINTS

The online system was difficult to implement because the system would need to use the

language which the users can easily interact with. The file transfer process will be

cumbersome as all the previous records are all in paper files.

37

Page 38: Census Management System - Documentation FINAL

4.6 SYSTEM ARCHITECTURE

4.6.1 Use Case Diagram.

38

Senior Supervisor

Issue population and housing census forms

Allocates each supervisor his supervision area

Assign tasks to deputy supervisors

DeputySupervisor

Distribute the population and housing forms

Fill in the population details

Assigns a unique code to area of visitation

Verify the details

Return the forms to senior supervisor

Generates a final report

Enumerator

Record in database

IT Clerk

Page 39: Census Management System - Documentation FINAL

4.7 SEQUENCE DIAGRAM

: Senior supervisor : Enumerator : Deputy Supervisor : IT Clerk

7: Query ()

8: Generates

112: Records ()

113: Generates ()

39

1: Issues census forms()

6: Query for population information ()

2: Fills in details()

9:Generates a population information ()

4: Reject if incorrect()

10: Assess information()

11: Record in findings()

14: Generate overall report

15:Filling takes place()

:Database

3: Assess details 5: update()

Page 40: Census Management System - Documentation FINAL

4.8 ACTIVITY DIAGRAM.

Supervisor Enumerator IT clerk

Incorrect details

Correct details

40

Conducts Training

Assigns task to Enumerator

Determine supervision area

Issues census forms

Fills in the population details

Verify population details.

Record the population details in the database

Visit the supervision area and assign code

Page 41: Census Management System - Documentation FINAL

4.9 CLASS DIAGRAM

41

SupervisorSupervisor IDSupervisor nameAddressEmailPhone NumberEnquire ()Select area ()Train ()Register ()

Enumerator

Enumerator IDEnumerator nameAddressEmail

Enter population details ()Assigns code ()

1.........* 1.........*

1.........*

IT clerkRegistration no.NameAddress

Verify ()Send feedback ()

Census formHousehold number LocationAddressAgeReligionMarital StatusBirth PlaceOrphan hood

Issued ()Filled ()

Page 42: Census Management System - Documentation FINAL

4.10 DATABASE DESIGN

4.10.1 SCHEMA DESIGN

In relational database design, this is the process of organizing data to minimize duplication.

Normalization involves dividing a database into more tables and defining relationship

between the tables. The objective is to isolate data so that additions, deletions, and

modifications of a field can be made in just one table and then propagated through the rest of

the database via the defined relationship.

7.2 NORMALIZATION

42

UNFSUPERVISOR NAME SUPERVISOR ID F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORDENUMERATOR NAME ENUMERATOR ID F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORD

Household number LocationAddressAgeReligionMarital StatusBirth PlaceOrphan hoodPrevious ResidenceDuration of residenceTribe/NationalityLivestockExotic CattleIndigenous cattleSheepGoatCamelsDonkeysPigsChickenAssetsHouseholdRadioTelevisionCarLandline

1NFSUPERVISOR ID SUPERVISOR NAME F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORDENUMERATOR NAME ENUMERATOR ID F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORDHousehold number LocationAddressAgeReligionMarital StatusBirth PlaceOrphan hoodPrevious ResidenceDuration of residenceTribe/NationalityLivestockExotic CattleIndigenous cattleSheepGoatCamelsDonkeysPigsChickenAssetsHouseholdRadioTelevisionCarLandline

3NFSUPERVISOR ID SUPERVISOR NAME NAME F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORDENUMERATOR NAME ENUMERATOR ID F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORDHousehold number LocationAddressAgeReligionMarital StatusBirth PlaceOrphan hoodPrevious ResidenceDuration of residenceTribe/NationalityLivestockExotic CattleIndigenous cattleSheepGoatCamelsDonkeysPigsChickenAssetsHouseholdRadioTelevisionCarLandline

2NF

SUPERVISOR ID SUPERVISOR NAME NAME F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORDENUMERATOR NAME ENUMERATOR ID F_NAME L_NAMEADDRESSEMAILPHONE NUMBERPASSWORDHousehold number LocationAddressAgeReligionMarital StatusBirth PlaceOrphan hoodPrevious ResidenceDuration of residenceTribe/NationalityLivestockExotic CattleIndigenous cattleSheepGoatCamelsDonkeysPigsChickenAssetsHouseholdRadioTelevisionCarLandline

Page 43: Census Management System - Documentation FINAL

4.10.2 ENTITY RELATIONSHIP DIAGRAM

Key

Entity

Data Store

Data Flow

Process

43

IT clerk

System

Enumerator

Page 44: Census Management System - Documentation FINAL

4.10.3 TABLE SCHEMA

SUPERVISORField name Data type SizeSupervisor Name Varchar 20Supervisor ID Number 20First name Text 20Last name Text 20Address Int 10Email Text 20Phone No. Int 15Password Varchar 20

ENUMERATOR Field name Data type SizeEnumerator Name Varchar 20Enumerator ID Number 20First name Text 20Last name Date time 20Address Date time 10Email Text 20Phone No. Int 15Password Varchar 20

ASSETSField Name Data type SizeCar Number 20Household Number 20Radio Number 20Landline Number 20Television Number 20

HOUSEHOLDField Name Data type SizeLocation Varchar 20Address Int 20Place of birth Varchar 20Duration of residence Varchar 20Religion Varchar 20Marital status Varchar 10

LIVESTOCKField Name Data type SizeCattle Varchar 20Goat Int 20Pigs Varchar 20

44

Page 45: Census Management System - Documentation FINAL

4.10.4 DATA DICTIONARY

This gives a brief description of the field names used in the tables and what they define as per

the databases:

Supervisor TableField name Description

Supervisor Name Holds the name of the Supervisor

Supervisor First Name Holds the First name of the Supervisor

Supervisor Last Name Holds other names of the Supervisor

Supervisor ID Field for identifier of the Supervisor

Address Holds the contact of the supervisor

Email Highlights the email of the supervisor

Phone No. Fields holds phone number of the supervisor

Password Indicates the password

Enumerator Table

Enumerator Name Holds the name of the Enumerator

Enumerator First Name Holds the First name of the Enumerator

Enumerator Last Name Holds other names of the Enumerator

Enumerator ID Field for identifier of the Enumerator

Address Holds the contact of the Enumerator

Email Highlights the email of the Enumerator

Phone No. Fields holds phone number of the Enumerator

45

Page 46: Census Management System - Documentation FINAL

Household details Table

Location Indicates the location for household

Address Indicates the Address for household

Age Indicates the age of residents

Religion Indicates the religion of residents

Marital Status Indicates the marital status of residents

Birth Place Indicates the birth place of residence

Orphan hood Indicates the orphan in the residence

Previous Residence Indicates the previous residence of residents

Duration of residence Indicates the location for household

Tribe/Nationality Indicates the tribe of residents

Livestock Table

Enumerator Name Field containing Enumerator Name

Cattle Indicate the number of cattle one posses

Goats Indicate the number of goats one posses

Pigs Indicate the number of pigs one posses

46

Page 47: Census Management System - Documentation FINAL

4.10.5 MODELING

4.10.5.1 INTERFACE DESIGN

The interface design has been divided into two main parts.I. Input design

II. Output design

4.10.6 LOGIN FORM

This page is loaded whenever the user clicks on the login link in the home page

Figure 1: Log in form

4.10.7 Login fail page form

47

LOGINIf you are a member please login below:

User Name:

Password:If you are not a member please register here;

Login

Your password is incorrect

If you are a member please login below:

User Name:

Password:If you are not a member please register here;

Login

Page 48: Census Management System - Documentation FINAL

Figure2: Login fail page form

4.10.8 ENUMERATOR PAGE FORM

This page is loaded whenever the Enumerator wants to become a member and he/she clicks

the register link on the website.

Figure3: Enumerator page form

48

ENUMERATOR

Please fill in the Enumerator form with all the details specified (*)

ENUMERATOR NAME: 

ENUMERATOR ID: 

FIRST NAME: 

LAST NAME: 

ADDRESS: 

EMAIL: 

PHONE NO: 

PASSWORD:

Register Clear details

Page 49: Census Management System - Documentation FINAL

4.10.9 SUPERVISOR PAGE FORM

This page is loaded whenever the Supervisor wants to become a member and he/she clicks the

register link on the website.

Figure3: Supervisor page form

49

Supervisor

Please fill in the Supervisor form with all the details specified (*)

SUPERVISOR NAME: 

SUPERVISOR ID: 

FIRST NAME: 

LAST NAME: 

ADDRESS: 

EMAIL: 

PHONE NO: 

PASSWORD:

Register Clear details

Page 50: Census Management System - Documentation FINAL

4.10.10 Population and Housing

This page is loaded whenever the Enumerator wants to fill in the population details and he/she

clicks Population and Housing link on the website.

Figure 4: Population and Housing

50

Population and Housing

Please fill in the Population and Housing details:

Name: 

Relationship: 

Sex:

Age

Name of Mother: 

Usual members: 

Tribe: 

Religion: 

Marital status: 

Birth Place:

Previous residence

Duration residence

Province

District

Division

Location

Sub-Location

E.A number

E.A Type

E.A Status

Household No.

Household Type

Constituency

Structure No.

Submit Clear details

Page 51: Census Management System - Documentation FINAL

4.10.11 Information of Female aged 12years and above form

This page is loaded whenever the Enumerator clicks the female aged 12 years on the website.

Figure 5: Register page form

4.10.12 Information of Female aged 3years and above form

51

Information of Female aged 12years and above form

Please enter all details:

Children ever born alive: 

Children born alive and in the household:

 Children born alive and not in the household:

Children born alive but have died:

When was your last child born? 

If date of birth is not known code

“99” and “9999”

Was this Birth notified?

Was the child (twin use 2?)

Is the child still alive?

SEND CLEAR DETAILS

Information of Female aged 3years and above form

Record the Observation made on the field

What is the school attendance status?

What is the highest std/form/level reached?

What is the highest std/form/level completed

Submit Clear text

Page 52: Census Management System - Documentation FINAL

4.10.13 Housing Condition and Amenities Form

This page is loaded whenever the Enumerator wants assess Enumerator clicks the Housing Condition and Amenities Form on the website.

4.10.14 Information about hotel, prison, hospital in-patient citizens form

This page is loaded whenever the Enumerator wants assess Enumerator clicks the Information about hotel, prison, hospital in-patient citizen’s form on the website.

52

Housing Condition and Amenities Form

Record the Observation made on the field

How many dwelling units does your house has:

How many habitable rooms does this unit have?

Tenure status of main dwelling unit:

Main source of water:

Main mode of human waste disposal:

Main type of cooking fuel:

Main type of lighting fuel

Please fill in the details of household assets

Send Clear Details

Information about hotel, prison, hospital in-patient citizens

Record the Observation made on the field

Serial Number:

Name:

Sex:

Age:

Duration of stay:

Education Level:

Home district:

Tribe:

Type of Institution:

Name of Institution:

Send Clear Text

Page 53: Census Management System - Documentation FINAL

4.10.15 PHYSICAL DESIGN:

4.10.15.1 Software requirements

Operating system(windows 2000 or a higher version)

Flash Player 8 or a higher version.

My SQL database.

Microsoft Office 2003

Macromedia Dreamweaver 8.

Kaspersky Anti-virus 7.0

4.10.15.2 Hardware Requirements

computer

Printer.

4.10.16 CONCLUSION:

This project is aimed at developing a census system for the institution to help them in the

storage and retrieval of their data of the entire country population.

System Requirement Specification (SRS) helps to prepare the scope and purpose of the

document, the designer’s view of the client’s needs and requirements before the actual system

is designed.

With all the information about the system having been obtained the design of the system can

now begin and the data collected will help me design a system that will run and perform the

needed tasks.

53

Page 54: Census Management System - Documentation FINAL

CHAPTER 5

5.0: SYTEM TESTING

5.1: INTRODUCTION

It is the exhaustive and thorough process that determines whether the system produces the

desired results under known conditions. It ensures that all the errors that might bring about

problems to the system operation are debugged. It shows the testing schedule, tested items,

testing process, requirement traceability. Testing will be done to ensure that the system meet

user requirements. Testing plays the much more comprehensive role of methodically

searching for and exposing bugs, not just fixing those that show up.

The software testing activity should be documented through the following documents:

Test Plan: the present document, under the responsibility of the software infrastructure and

testing team, should keep updated and stored in the subdirectory.

Test Case Specification: a minimal and clear description of the aim of the aim of the test

should be written following the specific template. The specification should include also the

expected results and special run conditions if they are needed.

Test Log: Each nightly or pre-release build should end with a test log connected with the

release version.

Apart from the present test plan document a test deliverable is indentified which consists of:

An executable (binary or script), a set of input data (optional), a reference output for the test

validation.

A clear description (using the proposed template) of the test’s aim together with the specific

environment needs to run it.

For each test, the test case should specify the pass/fail criteria.

The deliverable must be working within the software configuration management tool,

software testing frameworks.

5.2 Goals and objectives

Software meets requirements: To demonstrate to the developer and the customer that

the software meets its requirements.

Find defect: This is the classic objective of testing. A test is run in order to trigger

failures that expose defects.

54

Page 55: Census Management System - Documentation FINAL

Maximize bug count: The distinction between this and “find defects” is that total

number of bugs is more important than coverage.

Minimize technical support costs: Working in conjunction with a technical support

or help desk group, the test team will identifies the issues that lead to calls for support.

These are often peripherally related to the product under test for example, getting the

product to work with a specific printer or to import data successfully from a third party

database might prevent more calls than a low-frequency, data corrupting crash.

Assess conformance to specification: Any claim made in the specification is

checked. Program characteristics not addressed in the specification are not (as part of

this objective) checked.

Conform to regulations: If a regulation specifies a certain type of coverage (such as,

at least one test for every claim made about the product), the team creates the

appropriate tests. If the regulation specifies a style for the specifications or other

documentation, the test team probably checks the style. In general, the test group is

focusing on anything covered by regulation nothing that is not covered by regulation.

Minimize safety-related lawsuit risk: Any error that could lead to an accident or

injury is of primary interest. Errors that lead to loss of time or data or corrupt data are

checked.

5.3 Statement of scope

A primary purpose for testing is to detect software failures so that defects may be uncovered

and corrected. Testing cannot establish that a product functions properly under all conditions,

but can only establish that it does not function properly under specific conditions. The scope

of software testing often includes examination of code as well as execution of that code in

various environments and conditions as well as examining the aspects of code: does it do what

it is supposed to do and do what it needs to do. A test plan for a development project specifies

in detail how a test strategy will be carried out for the project. It specifies

The various level of testing

Items to be tested

Order the will be tested in

The test environment

5.4 Major constraints

Some errors were not traceable using the testing tools and took time to debug them.

55

Page 56: Census Management System - Documentation FINAL

It was very hard for the third party who was there to assist to help trace the errors.

Difficult to create a summarized report for the output of the test result file.

Took time to move from one stage to another because no error would be left out

without solving it.

During integration it was hard to identify where the error occurred.

5.5 TEST PLAN

5.5.1 Software to be tested

Login mechanism using correct and incorrect logins.

An interface component which includes the level editor, database read/write and

file exporter.

System presentation facility to check that information about document is displayed

properly.

Check that the online system will clearly show all the details that the client intends

to input to the system.

5.5.2 Testing strategy

It is a plan of the overall approach in testing for the software development organization. It

specifies the level of testing as well as the method technique and tools to be used.

56

Unit test

User acceptance test

System test

Integration test

Page 57: Census Management System - Documentation FINAL

5.5.3 Component/unit testing

The different modules/component of the system shall be tested independently. During

development each module shall be tested on completion to establish if each module conforms

to its specification. Its goal is to expose faults in these components. To undergo component

testing include.

Source code: to check for programming errors and test the code modules or

functions

Username: the system prompts the user to enter the username to login to the

system.

Password: should only accept the valid password, when incorrect password is

entered display an error message.

Forms: the user can fill the forms without any problem

Tables: a single number can be entered to perform search for the particular

information.

TEST FIELD EXPECTED

OUTPUT

ACTUAL OUTPUT

UN

IT T

ES

TIN

G

USER NAME

e.g.

admin

The field should

prompt a user to

enter the correct

username to login the

system.

It was successful

PASSWORD

e.g.

lisa

The field should only

accept a valid

password.

It was successful

TEXT FIELDS

e.g. eryt56

Should accept

alphanumeric data

without returning any

errors.

It was successful

Numeric Fieldse.g. Numbers only 234567

Should only work with numeric values and never accept alphabetic. Should return an error in any attempt to do so.

It was successful

57

Page 58: Census Management System - Documentation FINAL

Required Fields e.g. ID Number

Should not allow user to proceed without data entry

It was successful

Forms The user can easily afford to fill the forms without any problem.

It was successful

5.5.4 Integration testing

It exposes defects in the interfaces and interaction between integrated components (modules).

Progressively larger groups of tested software components corresponding to elements of the

architectural design are integrated and tested until the software works as a system. During this

stage different modules of the system will be integrated and tested for compatibility. The team

will have access to the source code of the system, the source of the problem will be identified

and the component will be debugged.

5.5.5 Validation testing

It explains how test and test results will be mapped to documented system requirements. It

describes the procedure to ensure that the requirements are validated. Here test data is

indentified, what is to be tested, the expected output, the actual results after inputting the test

data, problems or failures found and suggestion or notes.

Type of Test Requirement Purpose

Test Case Expected Results

Actual Results

P/F Notes

Username & Password

Authentication & security

Login Successful login for correct username and password combination

It was successful

It worked well

Screen Design and Layout

Ease of use the web pages in the designed layout.

Layout All the web pages are in the format that the user can easily find information they need

It was successful

It worked well

Accessibility of the

Ability to access the

Accessing The website is accessible by

It was successful

It worked

58

Page 59: Census Management System - Documentation FINAL

Website website by most browsers

most types of browsers e.g. internet explorer, Opera, Netscape navigator.

well

Navigation Testing

Links to various pages

Navigation All pages are linked and there is a simple and easy way to navigate.

It was successful

It worked well

Navigation Testing

Links to various pages

Navigation All pages are linked and there is a simple and easy way to navigate.

It was successful

It worked well

Hardware Testing

Communication of the Web browser and local server

Communication The web browser and the local server should communicate effectively without any interfering problems

It was successful

It worked well

Form validation Testing

Ease of filling the forms and the functionality of data been recorded in the database

Validation Error message appear when an error process occurs.

It was successful

It worked well

Output design Testing

Ease of producing reports in a clear format

Output The reports should be easily produced as the user wants and should convey the information the user needs.

It was successful

It worked well

Database Testing

Correct storage of information

Storage The information entered by

It was successful

It worked well

59

Page 60: Census Management System - Documentation FINAL

the user should be stored correctly in the database.

5.6 System testing

It will involve integrating two or more components that implement system functions and the

testing the integrated system. It will test an increment to be delivered to the customer. The

system will be tested as a whole to ensure that it produces the expected output and conforms

to its specification.

Parties outside software will be asked to help with the final testing phase: public beta testing.

Each beta tester will be given a copy of the software. Beta tester will be expected to submit

bug reports and any opinions they may have concerning the software (especially the interface

layout).

5.6.1 Testing resources and staffing

Resources

No special resources are required beyond those already needed for development.

Staffing

Test Team Leader.

Unit Testing Coordinator.

Integration Testing Coordinator.

System Testing Coordinator.

Beta Testing Coordinator.

5.6.2 Test Work Products

Frame Rate Counter

60

Page 61: Census Management System - Documentation FINAL

In order to monitor the number of frames the engine is capable of producing per second, an

additional piece of software was developed. The frame rate counter is valuable tool in

determining system performance.

5.7 Test Record Keeping

A test log is kept to monitor the tests that have been applied. An error, or bug log is kept to

monitor any problems that have risen during testing. A beta tester report form exists to aid

beta tester in organizing their communication with the software.

5.8 Test Metrics

Function Point: This metric will be used when calculating statistics as per the complete testing

process.

Bang Point: This metric will be used to provide an indication of the number of test case

required.

Breadth of Testing: This metric provides an indication of testing completeness.

Depth of Testing: This metric provides a measure of percentage of independent basis paths

covered by the testing versus the total number of basis paths in the program.

Faults Profile: This metric is used to prioritize and categorize uncovered errors.

Frame per second: This metric is used to gauge the performance of the engine.

5.8.1Testing tools and environment

Test data files will be constructed for unit and integration testing. A frame rate counter is used

in determining program performance. There are no other special tools or hardware.

5.9 Test procedure

It is the final stage of test design and specifies the process for conducting the test cases for

each item, the input which contained one of the victim information will be entered to test the

system, and the same information will be searched via the database to check if the required

result will be displayed. The online system will also be tested by typing some

Information to the station to check if the information will be received as expected. It should

show what the system should do and what the system should not do.

61

Page 62: Census Management System - Documentation FINAL

5.9.1 Software to be tested

Interface Components to be tested

Engine Component to be tested

Installation Components to be tested

5.9.2 Testing procedure

5.9.3 Unit test cases

It will test each program separately and the team will check the output which the systems will

execute. example the case of searching for the expected output the correct information to be

searched will be keyed in to check if the executed output will be the as required by the user.

5.9.3.1 Stubs and/or drivers for component: Interface Level Editor

None

 5.9.3.2 Test cases component: Interface

All editor function will be tested in a white box fashion.

5.9.3.3 Purpose of tests for component

Is to ensure correct operation of all controls in the interface, as well as verifying proper

placement of backgrounds and collision areas.

5.9.3.4 Expected results for component

The interface is expected to perform within design specifications.

5.9.3.5 Stubs and/or drivers for component: Interface Level Editor

None

 5.9.3.6 Test cases component: Database

The database function will be tested in a white box fashion. A sample database will be loaded

into the database.

5.9.3.7 Purpose of tests for component

Is to ensure correct read and write operations made by the database.

5.9.3.8 Expected results for component

The database is expected to perform within design specifications.

62

Page 63: Census Management System - Documentation FINAL

5.9.4 Integration testing

It will involve building a system from its components and testing the resultant system from

the components that arises from the component interactions. It will check that all the

components will work together correctly and transfer the right data across their interface.

5.9.5 Test procedures for integration

It will involve identifying cluster of components that deliver some system

functionality.

Integrating this by adding code that makes them work together.

It will involve bottom up integration where the team will first integrate infrastructure

components that provide common service e.g. networks and database access then add

functional components

5.9.5.1 Stubs and drivers required

The object handler is used to test bed.

The data loader is used to parse information from the data files into the object handler.

5.9.5.2 Test cases and their purpose

Each object will be attached to the object handler in the order specified above.

5.9.5.3 Expected results

The system is expected to integrate without major flaws.

5.9.6 Validation testing

5.9.6.1 Testing procedure for validation

The features and functionality in the final system will be cross-referenced with the software

requirements specification document to verify that the software demonstrates conformity with

the requirements.

5.9.6.2 Expected results

The software will perform within the specifications of the software requirements document.

63

Page 64: Census Management System - Documentation FINAL

5.9.6.3 Pass/fail criterion for all validation tests

Features corresponding to the design document requirements do not need to coincide verbatim

with the requirements. Instead, it is important that they retain the spirit of the requirements.

5.9.7 High order testing (System testing)

5.9.7.1 Recovery testing

It is the activity of testing how well the application is able to recover from crashes, hardware

failures and other similar problems.

Recovery testing is the forced failure of the software in a variety of ways to verify that

recovery is properly performed. Examples of recovery testing:

1. While the application running, the team will suddenly restart the computer and after

that check the validness of application's data integrity;

2. While application receives data from the network, the team will unplug and then in

some time plug-in the cable, and analyze the application ability to continue receiving

of data from that point, when network connection disappeared;

3. The browser will be tested by restarting the system while the browser will have

definite number of sessions and after rebooting check, that it is able to recover all of

them.

5.9.7.2 Security testing

The ability of the system to resist different types of attack will be tested. This will be very

significant to the system in that it will prevent frauds where convict information can be

eliminated or distortion of information which can bring problems to the station. All the files

created should have appropriate access permissions; this will be tested by entering the wrong

username and password. The system should automatically terminate user sessions after a

period of inactivity. Strong passwords will also be used which are mixed of letters, numbers,

and punctuations.

5.9.7.3 Regression testing

After the product is released, errors maybe found or enhancements suggested by the

customers in the field. As these are corrected or implemented, the rest of the system will also

64

Page 65: Census Management System - Documentation FINAL

be tested by the team to make sure that the new details modifications will not affect the other

system code.

5.9.7.4 Stress testing

This involves designing test around the limits of the system i.e. is making demands that are

outside the demand limits of the software. E.g. the transaction process system will be

designed to handle 300 transactions per second; the operating system maybe designed to

handle 1,000 separate terminals. The stress testing continuous this test beyond the maximum

design load of the system until the system fails. It will be used for two functions;

It will test the failure behavior of the system. This may arise due to unexpected

combination of events where the load placed on the system exceeds.

It will stress the system and may cause the defects to come into light that would not

have been discovered.

5.9.7.5 Path Testing

It is a structural testing strategy where the team wants to exercise every independent

execution path through a component or program. If every independent path is executed then

all statement in the component must have been executed at least once. This will reduce the

number of errors that are likely to found in the components after they are integrated.

5.9.7.6 Performance testing

It has to be designed to ensure that the system can process its intended load. It is concerned

with both demonstrating that the system meets its requirements and discovering problems and

defects in the system. An operational profile will be constructed to where a set of tests will be

recoded to reflect the actual mix of work that will be handled by the system.

5.9.7.7 Alpha/beta testing

Alpha testing: is simulated or actual operational testing by potential users/customers

or an independent test team at the developers' site. It is often employed for off-the-

shelf software as a form of internal acceptance testing, before the software goes to beta

testing.

Beta testing: comes after alpha testing. They are released to a limited audience

outside of the programming team. The software is released to groups of people so that

65

Page 66: Census Management System - Documentation FINAL

further testing can ensure the product has few faults or bugs. It will be made available

to the open public to increase the feedback field to a maximal number of future users.

5.9.7.8 Documentation testing

The team will conduct a test to test the accuracy of the documentation. This will ensure that

no features are missing, and the contents can be understood with ease.

5.9.7.9 Testing resources and staffing

Testing Resource

No special resources are required for testing beyond those already needed for development.

Test Staff

Test Team Leader

Unit Testing Coordinator

Integration Testing Coordinator

System Testing Coordinator

Beta Testing Coordinator

5.9.8 Test work products

Frame Rate Counter

In order to monitor the number of frames the engine is capable of producing per second, an

additional piece of software was developed. The frame rate counter is a valuable tool in

determining system performance.

5.9.9 Test record keeping and test log

Test record keeping

A test log is kept to monitor the tests that have been applied. An error or a bug log is kept to

monitor any problem that has arisen during testing. Also a bête tester report form exists to

help testers in organizing their communication with the software.

5.9.10 Conclusion

The document will enhance and facilitate proper testing for the new software and will assist in

recognizing where the errors are and rectify them before the final system implementation. The

66

Page 67: Census Management System - Documentation FINAL

system will demonstrate to the developer and the customer that the software meets its

requirements.

CHAPTER 6

6.0 IMPLEMENTATION STRATEGY

6.1 Introduction

This is the process of converting a system specification into an executable system. The system

has been developed to replace the old system. It is the handover of the system from development

team to the client who will make use of the system. It describes in detail the strategy to be used

during implementation and also the plan of the implementation process. The main purpose of this

document is to clearly map out how the system will be integrated into the organization to

optimize and eventually phase out its current system. It will indicate the system change over plan

as well as the actual implementation of that plan.

6.2 Purpose

The significance of implementation is to introduce the system to the organization. This will be

aimed at training the users on how to use the system. The programmers will perform their own

test at the system then the users will test the system after it passes the acceptance test then it will

be implemented.

6.3 Implementation Overview

These are the overall operations that are going to be performed during the implementation of

the system.

6.3.1 Installation

It will involve both hardware and software installation and will be carried out by the team.

6.3.2 Training

The training phase of implementation will involve introducing the staff at the organization to

the system and its functionality. The training will be delivered through workshop case study,

tutorials or practice.

67

Page 68: Census Management System - Documentation FINAL

6.3.3 Execution

It will involve the actual operation of the system in parallel with the manual system the

organization management team will perform the execution phase so that they can confirm that

the system is performing as required by the users.

6.3.4 Conversion Plan

There were various steps in the conversion plan before the commencement of the operations.

6.3.5 Hardware Installation

It will involve the purchasing of cables, computers, printers and their related accessories that

will all be set at the organization tested and certified as being operational.

6.3.6 Software Installation

It will involve the installation of operating system as stated in the requirements specification

document, the Microsoft suite and finally the newly census management system.

6.3.7 Front-End-Implementation

The front-end of this system was implemented using HTML (Hypertext Mark-up Language),

Cascading Style Sheets (CSS) and Personal Home Pages (PHP).

6.3.8 Review

During the review phase the system developer, a moderator and related stake holders who will

analyze, inspect the system, compare the manual system to the automated system and draw

conclusions on the changeover.

6.3.9 Data Conversion

This will involve changing the data from the old system to a format compatible with the new

system. Since the old system was manual this stage will thus involve copying all the data in

the manual files and keying it to the computer systems’

6.4 Justification for the Changeover Method

Parallel changeover will be used in replacing the old system with the new system. This will

involve the team groups working together during implementation to ensure that the new

system I implemented in parallel with the manual existing system. Certain modules of the new

system will be implemented over time and the old system is phased out as functions are

successfully replaced by the new system.

68

Page 69: Census Management System - Documentation FINAL

The users will be able to learn the new system step by step and still be able to carry out the

normal operations until they are comfortable with the new system. In this method the

developer will run the new automated system in parallel with the existing manual system until

there is a certainty that the new system is working correctly.

Parallel running is likely to be expensive since it involves doing the work twice for a period of

time, however it is the safest.

6.4.1 Reasons for Using Parallel Changeover

I. Continuity of organization operations: it will enable development team to curb the

errors that might arise without having to completely alter all the operations of the

organization.

II. Convenient: this is because it is not possible for the whole organization operations to

come to a halt waiting for the whole system to be implemented.

III. Time to train the users: it will be easier to train the users as the old system is running

so that some of the data is keyed in the computer during the training while other user

are using the manual system to record the data.

IV. Secure: this is because all the data that was in the old manual records will be keyed in

to the new system in the process of training the users on the operation of the new

system.

V. Capture data processing errors in the new system: it will enable the developing

team to curb errors that might arise without having to completely alter the operations

of the organization.

6.5 Actual Implementation

The following are the steps that will be performed during the actual implementation of the

system.

i. Phase 1

Acquiring and installation of required hardware.

Installation of new system to all machines

Create space for the applications and the database files on the machine.

Configuration of directories for applications

Create an administrator user account

User administrator creates list and set users access level

ii. Phase 2

69

Page 70: Census Management System - Documentation FINAL

User training and orientation

Define procedure for adding new users

Define procedures for users to get help

iii. Phase 3

Collect processing, performance and output results of the new system.

Monitor and review system performance and problems.

Compare the result of the new system with the current system.

Evaluation of both systems.

iv. Phase 4

Stopping the operation of the old system and putting the new secure

computerized information system

6.6 Implementation Schedule

Task Description Activities involved Expected start

time

Expected end

time

Task 1 Installation Installation of the required

hardware.

Installation of the required

application and system

software.

15/11/2009 15/11/2009

Task 2 Conversion File conversions Configurations of

directories for application Data entry Create an administrator

user account.

16/11/2009 16/11/2009

Task 3 Actual system

installation

The actual system

installation

18/11/2009 18/11/2009

Task 4 Training User training and

orientation

Define procedure for

adding new users

Explanation of how each

module works.

20/11/2009 20/11/2009

Task 5 Evaluation Post implementation 24/11/2009

70

Page 71: Census Management System - Documentation FINAL

evaluation.

Task 6 Maintenance System maintenance at

clients’ site.

25/11/2009

6.7 Conclusions

The users will be able to learn the new system step by step and still be able to carry out the

normal operations until they are comfortable with the new system. This will ensure that the

developer watches over the system as the users are engaging in their day to day operations to

ensure that they are comfortable with the system. The system will help the users in fast

retrieval of information and research of existence of records, security and updated records.

71

Page 72: Census Management System - Documentation FINAL

CHAPTER 7

7.1 Conclusions

The users will be able to learn the new system step by step and still be able to carry out the

normal operations until they are comfortable with the new system. This will ensure that the

developer watches over the system as the users are engaging in their day to day operations to

ensure that they are comfortable with the system. The system will help the users in fast

retrieval of information and research of existence of records, security and updated records.

7.2 ACHIEVEMENTS

By completing this project, I have been able to achieve my objectives set earlier at the

beginning. I have also learnt that census management is a very wide and important area of

concern for all learning institutions that consider their data to be of importance.

7.3 SHORTCOMINGS

Though I was able to implement the census management system to a certain acceptable level,

I still feel that more should be done to ensure both the recruitment process should be entirely

online to avoid favourism.

7.4 THE WAY FORWARD

Given more time and the proper resources (financial mostly), I wish to delve further into this

topic of census and be able to implement a top-down system that full implements census

period at levels of the organization’s processes.

72

Page 73: Census Management System - Documentation FINAL

BIBLIOGRAPHY

1) Allen, Julia H. (2001). The CERT Guide to System and Network Security Practices.

Boston, MA: Addison-Wesley. 0-201-73723-X. 

2) Krutz, Ronald L.; Russell Dean Vines (2003). The CISSP Prep Guide, Gold Edition,

Indianapolis, IN: Wiley. 0-471-26802-X. 

3) Layton, Timothy P. (2007). Information Security: Design, Implementation,

Measurement, and Compliance. Boca Raton, FL: Auerbach publications. 978-0-8493-

7087-8. 

4) McNab, Chris (2004). Network Security Assessment. Sebastopol, CA: O'Reilly. 0-

596-00611-X. 

5) Peltier, Thomas R. (2001). Information Security Risk Analysis. Boca Raton, FL:

Auerbach publications. 0-8493-0880-1. 

6) Peltier, Thomas R. (2002). Information Security Policies, Procedures, and Standards:

guidelines for effective information security management. Boca Raton, FL: Auerbach

publications. 0-8493-1137-3. 

7) White, Gregory (2003). All-in-one Security+ Certification Exam Guide. Emeryville,

CA: McGraw-Hill/Osborne. 0-07-222633-1. 

8) http://www.e-citizen.gov.uk/NP/rr/pdf/Literature_Review_survey.pdf

9) Software Engineering by Pressman, Somerville, and Van Vliet.

10) Object-Oriented Development by Booch, Rumbaugh, Berard, and Wirfs-Brock.

11) http://www.sorwar-engine.com

12) Julie C. Melon(2003)PHP essentials, 2nd edition.

13) David Power(2005) Foundation PHP for dreamweaver8.

14) McGraw Hill(1997)Software Engineering A Practitioner’s Approach,Roger

S.pressman.

73

Page 74: Census Management System - Documentation FINAL

APPENDICES

APPENDIX A: INTERVIEW QUESTIONS

The questions asked include:

What system is currently being used in carrying out the census program?

What are the shortcomings associated with the current system?

What are some of the main activities that you would like to automate?

What benefits do you expect to get from automating the activities?

What are the planned future needs in terms of embracing the new proposed

system?

Which systems use the proposed system?

The financial resources the management is willing to commit for the system

Data collection, analysis, storage and reporting techniques that is currently in use.

APPENDIX B: USER MANUAL

1. INTRODUCTION

A system user manual is a documented guide that will help the user to operate the system with

ease. The purpose of this document is to provide an interface between the system and the user.

It helps the users to understand all the procedures involved in operating the system. The

document also gives the overall details of the system

1.1 Objectives:

The documentation of how to operate the system will help the end users to learn the new

system with much ease and guide them in troubleshooting the system.

74

Page 75: Census Management System - Documentation FINAL

2.0 HARDWARE AND SOFTWARE REQUIREMENTS

The resources required for the completion of this project are: -

Hardware

Pentium IV 2.0GHZ processor

256 MB RAM

40 GB Hard Disk

Printer

Software

Phpdev 4.23

Internet Explorer 6.0 or later

Microsoft Office application package

Widows XP or Windows 200 Professional operating system

Database system preferably MySQL(XAMPP)

3.0 UPLOADING FILES

1. In the CD Open the system folder.

2. Copy the Census folder

3. Go to My Computer>Local Disk (C)xampp>htdocs

4. Paste your folder in the htdocs folder.

5. Copy database folder.

6. Go to My Computer>Local Disk (C)xampp>mysql>data

7. Paste your database in the data folder

3.1 RUNNING THE APPLICATION

1. Run the xampp-win32-1.6.3a-installer in the folder system>select the default language English.

2. Make sure your Web server is running - its status can be checked by looking at the system tray icons for Apache server and making sure that it is running. This automatically implies that you can run this system.

3. Open your browser and type in “http://localhost/xampp/”

4. Xampp for windows webpage will be displayed.

75

Page 76: Census Management System - Documentation FINAL

5. Select phpMyAdmin under the tools option to establish the connection.

6. PhpMyAdmin webpage displays

76

Page 77: Census Management System - Documentation FINAL

7. Select the database option.

8. The following window display

9. Open the system folder>home.php.>on the right hand side click on Application

tab>then database>click on the (+) sign>mySql>to connect.

The following window displays

77

Page 78: Census Management System - Documentation FINAL

3.2 Security Page

This page loads which prompt user to enter his/her username and password or register with the system.

3.3 Enumerator page

This page loads when an enumerator wants to register with the system

78

Page 79: Census Management System - Documentation FINAL

3.4 Supervisor Details

This page loads when the supervisor wants to register with the system

3.5 Home page

This page loads when the supervisor or the enumerator logs in successfully

79

Page 80: Census Management System - Documentation FINAL

3.6 Livestock form

When one clicks the livestock link this page will display

3.7 Location Form

When one clicks the location link this page will display

80

Page 81: Census Management System - Documentation FINAL

3.8 Disability Form

When one clicks the Disability link this page will display

3.9 Female Aged 12 years and above Form

When one clicks the Female Aged 12 years and above Form link this page will display

81

Page 82: Census Management System - Documentation FINAL

4.0 Deaths in the Household Form

When one clicks the Deaths in the Household Form link this page will display

4.1 Hotel/Lodges/Hospital/Prison Residents Form

When one clicks the Deaths in the Household Form link this page will display

82

Page 83: Census Management System - Documentation FINAL

4.2 Recruitment Form

When one clicks the Recruitment Form link this page will display

4.3 Amenities Form

When one click the Deaths in the Amenities Form link this page will display

83

Page 84: Census Management System - Documentation FINAL

4.4 Information Regarding All Persons

When one clicks the Information Regarding All Persons Form link this page will display

4.5 Search form

When one clicks the Search link on the home page this page will display

84

Page 85: Census Management System - Documentation FINAL

5.0 APPENDIX C: CODE

Login Page

<?php require_once('Connections/censusconnect.php'); ?>

<?php

// *** Validate request to login to this site.

session_start();

$loginFormAction = $_SERVER['PHP_SELF'];

if (isset($accesscheck)) {

$GLOBALS['PrevUrl'] = $accesscheck;

session_register('PrevUrl');

}

if (isset($_POST['textfield'])) {

$loginUsername=$_POST['textfield'];

$password=$_POST['textfield'];

$MM_fldUserAuthorization = "";

$MM_redirectLoginSuccess = "home.php";

$MM_redirectLoginFailed = "account.php";

$MM_redirecttoReferrer = false;

mysql_select_db($database_censusconnect, $censusconnect);

$LoginRS__query=sprintf("SELECT Username, password FROM account WHERE

Username='%s' AND password='%s'",

get_magic_quotes_gpc() ? $loginUsername : addslashes($loginUsername),

get_magic_quotes_gpc() ? $password : addslashes($password));

$LoginRS = mysql_query($LoginRS__query, $censusconnect) or die(mysql_error());

$loginFoundUser = mysql_num_rows($LoginRS);

if ($loginFoundUser) {

$loginStrGroup = "";

//declare two session variables and assign them

85

Page 86: Census Management System - Documentation FINAL

$GLOBALS['MM_Username'] = $loginUsername;

$GLOBALS['MM_UserGroup'] = $loginStrGroup;

//register the session variables

session_register("MM_Username");

session_register("MM_UserGroup");

if (isset($_SESSION['PrevUrl']) && false) {

$MM_redirectLoginSuccess = $_SESSION['PrevUrl'];

}

header("Location: " . $MM_redirectLoginSuccess );

}

else {

header("Location: ". $MM_redirectLoginFailed );

}

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

.style2 {font-size: 18px; }

body {

background-color: #00FF00;

}

-->

</style>

</head>

86

Page 87: Census Management System - Documentation FINAL

<body>

<p align="right">KNBS</p>

<form name="form1" method="POST" action="<?php echo $loginFormAction; ?>">

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please enter your details below:</strong></p>

<p align="center">Username:

<input type="text" name="textfield">

</p>

<p align="center">passward:

<input type="password" name="textfield">

</p>

<p align="center" class="style2">

<input type="submit" name="Submit" value="login">

<input type="reset" name="Reset" value="Reset">

</p>

<p align="center" class="style2">if you are unregistered please enter the following

information:</p>

<p align="center" class="style2">For <a href="supervisor.php">Supervisor</a></p>

<p align="center" class="style2">For <a href="enumerator.php">Enumerator</a> </p>

</form>

<p align="center" class="style1">&nbsp;</p>

</body>

</html>

Home Page Form

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

87

Page 88: Census Management System - Documentation FINAL

body {

background-color: #00FFCC;

}

.style2 {font-size: 14px}

body,td,th {

color: #660000;

}

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right" class="style1">KNBS</p>

<p align="center" class="style1"><strong><img src="MTP2008_2012cOVER.jpg"

width="100" height="120" align="left">Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census</strong></p>

<table width="200" height="414" border="1" align="left">

<tr>

<td><a href="amenities.php">AMENETIES</a></td>

</tr>

<tr>

<td><a href="assets.php">ASSETS</a></td>

</tr>

<tr>

<td><a href="education.php">EDUCATION</a></td>

</tr>

<tr>

<td><a href="females.php">FEMALES</a></td>

</tr>

<tr>

<td><a href="all%20person.php">GENERAL INFORMATION</a> </td>

</tr>

<tr>

88

Page 89: Census Management System - Documentation FINAL

<td><a href="disability.php">DISABILITY</a></td>

</tr>

<tr>

<td><a href="ict.php">ICT</a></td>

</tr>

<tr>

<td><a href="labour.php">LABOUR</a></td>

</tr>

<tr>

<td><a href="livestock.php">LIVESTOCK</a></td>

</tr>

<tr>

<td><a href="orphanhood.php">ORPHANHOOD</a></td>

</tr>

<tr>

<td><a href="outdoors.php">OUTDOORS</a></td>

</tr>

<tr>

<td><a href="location.php">KNBS</a></td>

</tr>

<tr>

<td><a href="recruitment.php">RECRUITMENT</a></td>

</tr>

</table>

<p align="center" class="style1"><span class="style2"><strong><a

href="account.php"><img src="email.gif" width="55" height="60"

align="baseline"></a></strong></span></p>

<p align="center" class="style1"><span class="style2"><strong>VISION</strong><br>

<br>

National Development Planning to Create a Better Quality of Life for all Kenyans

</span></p>

<p align="center" class="style2"><strong> MISSION</strong><br>

<br>

To provide leadership in policy formulation, provision of quality information and </p>

89

Page 90: Census Management System - Documentation FINAL

<p align="center" class="style2"> statistical data and co-ordinating sound economic policies

for sustainable development.<br>

<br>

<strong>GOAL</strong><br>

<br>

Enhanced capacity in national planning and policy management for improved living

standards of Kenyans </p>

<p align="center" class="style2"> Our Core Functions </p>

<div align="center">

<table cellpadding="0">

<tr>

<td width="742" valign="top" class="style2"><ul>

<li> The coordination of government economic policies, including regional and

international cooperation policies; </li>

<li><br>

The coordination and preparation of the planning components of the Medium Term

Expenditure Framework(MTEF); the Fiscal Strategy Paper and the requisite budget

documents; </li>

<li><br>

The provision of leadership and coordination in the preparation of the main National

Development Plan documents, including the District Development Plans; National

Development Plans, and specific socio-economic programmes and plans; </li>

<li><br>

The coordination and management of population, economic and national statistical

services within government; and </li>

<li><br>

The Coordination and provision of leadership in the national Monitoring and

Evaluation (M&amp;E) framework. </li>

</ul>

<table cellpadding="0">

<tr>

<td></td>

</tr>

</table></td>

90

Page 91: Census Management System - Documentation FINAL

</tr>

</table>

</div>

<p align="center"><a href="account.php">LOG OUT</a> </p>

</form>

</body>

</html>

Assets Page Form

<?php require_once('Connections/censusconnect.php'); ?>

<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "",

$theNotDefinedValue = "")

{

$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

91

Page 92: Census Management System - Documentation FINAL

return $theValue;

}

$editFormAction = $_SERVER['PHP_SELF'];

if (isset($_SERVER['QUERY_STRING'])) {

$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);

}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {

$insertSQL = sprintf("INSERT INTO assets (Radio, TV, Phone, Landline, Computer,

Bicycle, `Motor Cycle`, Car, Lorry, Refrigerator, Boat, Cart, Canoes, `Tuk tuk`) VALUES

(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",

GetSQLValueString($_POST['Radio'], "int"),

GetSQLValueString($_POST['TV'], "int"),

GetSQLValueString($_POST['Phone'], "int"),

GetSQLValueString($_POST['Landline'], "int"),

GetSQLValueString($_POST['Computer'], "int"),

GetSQLValueString($_POST['Bicycle'], "int"),

GetSQLValueString($_POST['Motor_Cycle'], "int"),

GetSQLValueString($_POST['Car'], "int"),

GetSQLValueString($_POST['Lorry'], "int"),

GetSQLValueString($_POST['Refrigerator'], "int"),

GetSQLValueString($_POST['Boat'], "int"),

GetSQLValueString($_POST['Cart'], "int"),

GetSQLValueString($_POST['Canoes'], "int"),

GetSQLValueString($_POST['Tuk_tuk'], "int"));

mysql_select_db($database_censusconnect, $censusconnect);

$Result1 = mysql_query($insertSQL, $censusconnect) or die(mysql_error());

$insertGoTo = "home.php";

if (isset($_SERVER['QUERY_STRING'])) {

$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";

$insertGoTo .= $_SERVER['QUERY_STRING'];

92

Page 93: Census Management System - Documentation FINAL

}

header(sprintf("Location: %s", $insertGoTo));

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

body {

background-color: #3333FF;

}

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please Fill in the Household Assets

Form:</strong></p>

</form>

<form method="post" name="form2" action="<?php echo $editFormAction; ?>">

<table align="center">

<tr valign="baseline">

<td nowrap align="right">Radio:</td>

<td><input type="text" name="Radio" value="" size="32"></td>

93

Page 94: Census Management System - Documentation FINAL

</tr>

<tr valign="baseline">

<td nowrap align="right">TV:</td>

<td><input type="text" name="TV" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Phone:</td>

<td><input type="text" name="Phone" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Landline:</td>

<td><input type="text" name="Landline" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Computer:</td>

<td><input type="text" name="Computer" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Bicycle:</td>

<td><input type="text" name="Bicycle" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Motor Cycle:</td>

<td><input type="text" name="Motor_Cycle" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Car:</td>

<td><input type="text" name="Car" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Lorry:</td>

<td><input type="text" name="Lorry" value="" size="32"></td>

</tr>

<tr valign="baseline">

94

Page 95: Census Management System - Documentation FINAL

<td nowrap align="right">Refrigerator:</td>

<td><input type="text" name="Refrigerator" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Boat:</td>

<td><input type="text" name="Boat" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Cart:</td>

<td><input type="text" name="Cart" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Canoes:</td>

<td><input type="text" name="Canoes" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Tuk tuk:</td>

<td><input type="text" name="Tuk_tuk" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">&nbsp;</td>

<td><input type="submit" value="Insert record">

<input type="reset" name="Reset" value="Reset"></td>

</tr>

</table>

<input type="hidden" name="MM_insert" value="form2">

</form>

<p>&nbsp;</p>

</body>

</html>

Search page Form

<?php require_once('Connections/censusconnect.php'); ?>

<?php

$colname_Recordset1 = "1";

95

Page 96: Census Management System - Documentation FINAL

if (isset($_POST['name'])) {

$colname_Recordset1 = (get_magic_quotes_gpc()) ? $_POST['name'] :

addslashes($_POST['name']);

}

mysql_select_db($database_censusconnect, $censusconnect);

$query_Recordset1 = sprintf("SELECT * FROM information WHERE name = '%s'",

$colname_Recordset1);

$Recordset1 = mysql_query($query_Recordset1, $censusconnect) or die(mysql_error());

$row_Recordset1 = mysql_fetch_assoc($Recordset1);

$totalRows_Recordset1 = mysql_num_rows($Recordset1);

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

body {

background-color: #CCFF33;

}

-->

</style><head>

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census Search Details

</strong></p></head>

<body>

<table width="996" height="223" border="1">

<tr>

<th scope="col">Name</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

96

Page 97: Census Management System - Documentation FINAL

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

<th scope="col">&nbsp;</th>

</tr>

<?php do { ?>

<tr>

<td><?php echo $row_Recordset1['name']; ?></td>

<td><?php echo $row_Recordset1['Relationship']; ?></td>

<td><?php echo $row_Recordset1['sex']; ?></td>

<td><?php echo $row_Recordset1['Age']; ?></td>

<td><?php echo $row_Recordset1['No. of Mother']; ?></td>

<td><?php echo $row_Recordset1['Household No']; ?></td>

<td><?php echo $row_Recordset1['Nationality']; ?></td>

<td><?php echo $row_Recordset1['Religion']; ?></td>

<td><?php echo $row_Recordset1['Marital Status']; ?></td>

<td><?php echo $row_Recordset1['Previous Residence']; ?></td>

<td><?php echo $row_Recordset1['Duration of residence']; ?></td>

<td><?php echo $row_Recordset1['is father alive']; ?></td>

<td><?php echo $row_Recordset1['is mother alive']; ?></td>

</tr>

<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>

</table>

</body>

</html>

<?php

mysql_free_result($Recordset1);

?>

97

Page 98: Census Management System - Documentation FINAL

Supervisor Form

<?php require_once('Connections/censusconnect.php'); ?>

<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "",

$theNotDefinedValue = "")

{

$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

return $theValue;

}

$editFormAction = $_SERVER['PHP_SELF'];

if (isset($_SERVER['QUERY_STRING'])) {

$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);

}

98

Page 99: Census Management System - Documentation FINAL

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {

$insertSQL = sprintf("INSERT INTO supervisor (Name, Fname, Lname, id, Address, Email,

password) VALUES (%s, %s, %s, %s, %s, %s, %s)",

GetSQLValueString($_POST['Name'], "text"),

GetSQLValueString($_POST['Fname'], "text"),

GetSQLValueString($_POST['Lname'], "text"),

GetSQLValueString($_POST['id'], "int"),

GetSQLValueString($_POST['Address'], "int"),

GetSQLValueString($_POST['Email'], "text"),

GetSQLValueString($_POST['Phone_no'], "int"));

mysql_select_db($database_censusconnect, $censusconnect);

$Result1 = mysql_query($insertSQL, $censusconnect) or die(mysql_error());

$insertGoTo = "account.php";

if (isset($_SERVER['QUERY_STRING'])) {

$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";

$insertGoTo .= $_SERVER['QUERY_STRING'];

}

header(sprintf("Location: %s", $insertGoTo));

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

body {

background-color: #009966;

}

99

Page 100: Census Management System - Documentation FINAL

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please Fill in the Supervisors

Details:</strong></p>

</form>

<form method="post" name="form2" action="<?php echo $editFormAction; ?>">

<table align="center">

<tr valign="baseline">

<td nowrap align="right">Name:</td>

<td><input type="text" name="Name" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Fname:</td>

<td><input type="text" name="Fname" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Lname:</td>

<td><input type="text" name="Lname" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Id:</td>

<td><input type="text" name="id" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Address:</td>

<td><input type="text" name="Address" value="" size="32"></td>

100

Page 101: Census Management System - Documentation FINAL

</tr>

<tr valign="baseline">

<td nowrap align="right">Email:</td>

<td><input type="text" name="Email" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Phone no.:</td>

<td><input type="text" name="Phone_no" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Password:</td>

<td><input type="text" name="password" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">&nbsp;</td>

<td><input type="submit" value="Insert record">

<input type="reset" name="Reset" value="Clear"></td>

</tr>

</table>

<input type="hidden" name="MM_insert" value="form2">

</form>

<p>&nbsp;</p>

</body>

</html>

Enumerator Form

<?php require_once('Connections/censusconnect.php'); ?>

<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "",

$theNotDefinedValue = "")

{

$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {

case "text":

101

Page 102: Census Management System - Documentation FINAL

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

return $theValue;

}

$editFormAction = $_SERVER['PHP_SELF'];

if (isset($_SERVER['QUERY_STRING'])) {

$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);

}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {

$insertSQL = sprintf("INSERT INTO enumerator (Name, Fname, Lname, id, Email,

password) VALUES (%s, %s, %s, %s, %s, %s)",

GetSQLValueString($_POST['Name'], "text"),

GetSQLValueString($_POST['Fname'], "text"),

GetSQLValueString($_POST['Lname'], "text"),

GetSQLValueString($_POST['id'], "int"),

GetSQLValueString($_POST['Email'], "text"),

GetSQLValueString($_POST['password'], "text"));

102

Page 103: Census Management System - Documentation FINAL

mysql_select_db($database_censusconnect, $censusconnect);

$Result1 = mysql_query($insertSQL, $censusconnect) or die(mysql_error());

$insertGoTo = "account.php";

if (isset($_SERVER['QUERY_STRING'])) {

$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";

$insertGoTo .= $_SERVER['QUERY_STRING'];

}

header(sprintf("Location: %s", $insertGoTo));

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

body {

background-color: #00FF99;

}

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please Fill in the Enumerators

Details:</strong></p>

103

Page 104: Census Management System - Documentation FINAL

</form>

<form method="post" name="form2" action="<?php echo $editFormAction; ?>">

<table align="center">

<tr valign="baseline">

<td nowrap align="right">Name:</td>

<td><input type="text" name="Name" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Fname:</td>

<td><input type="text" name="Fname" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Lname:</td>

<td><input type="text" name="Lname" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Id:</td>

<td><input type="text" name="id" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Email:</td>

<td><input type="text" name="Email" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Password:</td>

<td><input type="text" name="password" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Phone no.:</td>

<td><input type="text" name="Phone_no" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">&nbsp;</td>

104

Page 105: Census Management System - Documentation FINAL

<td><input type="submit" value="Insert record">

<input type="reset" name="Reset" value="Clear"></td>

</tr>

</table>

<input type="hidden" name="MM_insert" value="form2">

</form>

<p>&nbsp;</p>

</body>

</html>

Orphanhood Page

<?php require_once('Connections/censusconnect.php'); ?>

<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "",

$theNotDefinedValue = "")

{

$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

105

Page 106: Census Management System - Documentation FINAL

}

return $theValue;

}

$editFormAction = $_SERVER['PHP_SELF'];

if (isset($_SERVER['QUERY_STRING'])) {

$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);

}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {

$insertSQL = sprintf("INSERT INTO orphanhhod (`How many live birth occured in this

household during dates state`, `how many deaths occured in this household between stated

dates`, `Name of the household member who died`, `Was this death notified`, `How old was

the person`, male/female) VALUES (%s, %s, %s, %s, %s, %s)",

GetSQLValueString($_POST['How_many_live_birth_occured_in_this_household_during_da

tes_state'], "int"),

GetSQLValueString($_POST['how_many_deaths_occured_in_this_household_between_state

d_dates'], "int"),

GetSQLValueString($_POST['Name_of_the_household_member_who_died'],

"int"),

GetSQLValueString($_POST['Was_this_death_notified'], "int"),

GetSQLValueString($_POST['How_old_was_the_person'], "int"),

GetSQLValueString($_POST['malefemale'], "int"));

mysql_select_db($database_censusconnect, $censusconnect);

$Result1 = mysql_query($insertSQL, $censusconnect) or die(mysql_error());

$insertGoTo = "home.php";

if (isset($_SERVER['QUERY_STRING'])) {

$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";

$insertGoTo .= $_SERVER['QUERY_STRING'];

}

106

Page 107: Census Management System - Documentation FINAL

header(sprintf("Location: %s", $insertGoTo));

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

body {

background-color: #00FFFF;

}

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please Fill in the information About Deaths in the

Household Form:</strong></p>

</form>

<form method="post" name="form2" action="<?php echo $editFormAction; ?>">

<table align="center">

<tr valign="baseline">

<td nowrap align="right">How many live birth occured in this household during dates

state:</td>

107

Page 108: Census Management System - Documentation FINAL

<td><input type="text"

name="How_many_live_birth_occured_in_this_household_during_dates_state" value=""

size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">How many deaths occured in this household between stated

dates:</td>

<td><input type="text"

name="how_many_deaths_occured_in_this_household_between_stated_dates" value=""

size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Name of the household member who died:</td>

<td><input type="text" name="Name_of_the_household_member_who_died" value=""

size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Was this death notified:</td>

<td><input type="text" name="Was_this_death_notified" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">How old was the person:</td>

<td><input type="text" name="How_old_was_the_person" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Male/female:</td>

<td><input type="text" name="malefemale" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">&nbsp;</td>

<td><input type="submit" value="Insert record">

<input type="reset" name="Reset" value="Clear"></td>

</tr>

</table>

108

Page 109: Census Management System - Documentation FINAL

<input type="hidden" name="MM_insert" value="form2">

</form>

<p>&nbsp;</p>

</body>

</html>

Livestock page form

<?php require_once('Connections/censusconnect.php'); ?>

<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "",

$theNotDefinedValue = "")

{

$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

return $theValue;

}

109

Page 110: Census Management System - Documentation FINAL

$editFormAction = $_SERVER['PHP_SELF'];

if (isset($_SERVER['QUERY_STRING'])) {

$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);

}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {

$insertSQL = sprintf("INSERT INTO livestock (`Exotic Cattle`, `Indigenous cattle`, Sheep,

Goat, Camels, Pigs, `Indigenous chicken`, `Chicken commercial`, `Bee Hives`, Other)

VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",

GetSQLValueString($_POST['Exotic_Cattle'], "int"),

GetSQLValueString($_POST['Indigenous_cattle'], "int"),

GetSQLValueString($_POST['Sheep'], "int"),

GetSQLValueString($_POST['Goat'], "int"),

GetSQLValueString($_POST['Camels'], "int"),

GetSQLValueString($_POST['Pigs'], "int"),

GetSQLValueString($_POST['Indigenous_chicken'], "int"),

GetSQLValueString($_POST['Chicken_commercial'], "int"),

GetSQLValueString($_POST['Bee_Hives'], "int"),

GetSQLValueString($_POST['Other'], "int"));

mysql_select_db($database_censusconnect, $censusconnect);

$Result1 = mysql_query($insertSQL, $censusconnect) or die(mysql_error());

$insertGoTo = "home.php";

if (isset($_SERVER['QUERY_STRING'])) {

$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";

$insertGoTo .= $_SERVER['QUERY_STRING'];

}

header(sprintf("Location: %s", $insertGoTo));

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

110

Page 111: Census Management System - Documentation FINAL

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

body {

background-color: #0000CC;

}

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please Fill in the Livestock

Details:</strong></p>

</form>

<form method="post" name="form2" action="<?php echo $editFormAction; ?>">

<table align="center">

<tr valign="baseline">

<td nowrap align="right">Exotic Cattle:</td>

<td><input type="text" name="Exotic_Cattle" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Indigenous cattle:</td>

<td><input type="text" name="Indigenous_cattle" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Sheep:</td>

111

Page 112: Census Management System - Documentation FINAL

<td><input type="text" name="Sheep" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Goat:</td>

<td><input type="text" name="Goat" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Camels:</td>

<td><input type="text" name="Camels" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Pigs:</td>

<td><input type="text" name="Pigs" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Indigenous chicken:</td>

<td><input type="text" name="Indigenous_chicken" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Chicken commercial:</td>

<td><input type="text" name="Chicken_commercial" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Bee Hives:</td>

<td><input type="text" name="Bee_Hives" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Other:</td>

<td><input type="text" name="Other" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">&nbsp;</td>

<td><input type="submit" value="Insert record"> <input type="reset" name="Reset"

value="Clear"></td>

112

Page 113: Census Management System - Documentation FINAL

</tr>

</table>

<input type="hidden" name="MM_insert" value="form2">

</form>

<p>&nbsp;</p>

</body>

</html>

Persons with disability form

<?php require_once('Connections/censusconnect.php'); ?>

<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "",

$theNotDefinedValue = "")

{

$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

return $theValue;

113

Page 114: Census Management System - Documentation FINAL

}

$editFormAction = $_SERVER['PHP_SELF'];

if (isset($_SERVER['QUERY_STRING'])) {

$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);

}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {

$insertSQL = sprintf("INSERT INTO disability (`What is the type of disability`, `is there

any difficulties in the disability`) VALUES (%s, %s)",

GetSQLValueString($_POST['What_is_the_type_of_disability'], "int"),

GetSQLValueString($_POST['is_there_any_difficulties_in_the_disability'],

"int"));

mysql_select_db($database_censusconnect, $censusconnect);

$Result1 = mysql_query($insertSQL, $censusconnect) or die(mysql_error());

$insertGoTo = "home.php";

if (isset($_SERVER['QUERY_STRING'])) {

$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";

$insertGoTo .= $_SERVER['QUERY_STRING'];

}

header(sprintf("Location: %s", $insertGoTo));

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

114

Page 115: Census Management System - Documentation FINAL

body {

background-color: #0066FF;

}

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please Fill in the Disability Form:</strong></p>

</form>

<form method="post" name="form2" action="<?php echo $editFormAction; ?>">

<table align="center">

<tr valign="baseline">

<td nowrap align="right">What is the type of disability:</td>

<td><input type="text" name="What_is_the_type_of_disability" value=""

size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Is there any difficulties in the disability:</td>

<td><input type="text" name="is_there_any_difficulties_in_the_disability" value=""

size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">&nbsp;</td>

<td><input type="submit" value="Insert record">

<input type="reset" name="Reset" value="Clear"></td>

</tr>

</table>

<p>&nbsp; </p>

115

Page 116: Census Management System - Documentation FINAL

<table width="200" border="1">

<caption>

Type of disability

</caption>

<tr>

<th width="33" scope="col"><div align="left">1</div></th>

<th width="151" scope="col"><div align="left">Visual</div></th>

</tr>

<tr>

<td>2</td>

<td>Hearing</td>

</tr>

<tr>

<td>3</td>

<td>Speech</td>

</tr>

<tr>

<td>4</td>

<td>Physical</td>

</tr>

<tr>

<td>5</td>

<td>Mental</td>

</tr>

<tr>

<td>6</td>

<td>Selfcare</td>

</tr>

<tr>

<td>7</td>

<td>Others</td>

</tr>

<tr>

<td>8</td>

116

Page 117: Census Management System - Documentation FINAL

<td>None</td>

</tr>

</table>

<table width="200" border="1">

<caption>

difficuties if any

</caption>

<tr>

<th width="38" scope="col"><div align="left">1</div></th>

<th width="146" scope="col"><div align="left">Yes</div></th>

</tr>

<tr>

<td>2</td>

<td>No</td>

</tr>

<tr>

<td>3</td>

<td>NA</td>

</tr>

<tr>

<td>4</td>

<td>DK</td>

</tr>

</table>

<p>&nbsp;</p>

<p>

<input type="hidden" name="MM_insert" value="form2">

</p>

</form>

<p>&nbsp;</p>

</body>

</html>

General Information Page

<?php require_once('Connections/censusconnect.php'); ?>

117

Page 118: Census Management System - Documentation FINAL

<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "",

$theNotDefinedValue = "")

{

$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

return $theValue;

}

$editFormAction = $_SERVER['PHP_SELF'];

if (isset($_SERVER['QUERY_STRING'])) {

$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);

}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {

118

Page 119: Census Management System - Documentation FINAL

$insertSQL = sprintf("INSERT INTO info (name, Relationship, sex, Age, `No. of Mother`,

`Household No`, Nationality, Religion, `Marital Status`, `Previous Residence`, `Duration of

residence`, `is father alive`, `is mother alive`) VALUES (%s, %s, %s, %s, %s, %s, %s, %s,

%s, %s, %s, %s, %s)",

GetSQLValueString($_POST['name'], "text"),

GetSQLValueString($_POST['Relationship'], "int"),

GetSQLValueString($_POST['sex'], "int"),

GetSQLValueString($_POST['Age'], "int"),

GetSQLValueString($_POST['No_of_Mother'], "int"),

GetSQLValueString($_POST['Household_No'], "int"),

GetSQLValueString($_POST['Nationality'], "int"),

GetSQLValueString($_POST['Religion'], "int"),

GetSQLValueString($_POST['Marital_Status'], "int"),

GetSQLValueString($_POST['Previous_Residence'], "int"),

GetSQLValueString($_POST['Duration_of_residence'], "int"),

GetSQLValueString($_POST['is_father_alive'], "int"),

GetSQLValueString($_POST['is_mother_alive'], "int"));

mysql_select_db($database_censusconnect, $censusconnect);

$Result1 = mysql_query($insertSQL, $censusconnect) or die(mysql_error());

}

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

<style type="text/css">

<!--

.style1 {font-size: 36px}

body {

background-color: #660099;

}

119

Page 120: Census Management System - Documentation FINAL

-->

</style>

</head>

<body>

<form name="form1" method="post" action="">

<p align="right">KNBS</p>

<p align="center" class="style1"><strong>Republic of Kenya </strong></p>

<p align="center" class="style1"><strong>Population and Housing Census </strong></p>

<p align="center" class="style1"><strong>Please Fill in the information Regarding All

Persons:</strong></p>

</form>

<form method="post" name="form2" action="<?php echo $editFormAction; ?>">

<table align="center">

<tr valign="baseline">

<td nowrap align="right">Name:</td>

<td><input type="text" name="name" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Relationship:</td>

<td><input type="text" name="Relationship" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Sex:</td>

<td><input type="text" name="sex" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Age:</td>

<td><input type="text" name="Age" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">No. of Mother:</td>

<td><input type="text" name="No_of_Mother" value="" size="32"></td>

120

Page 121: Census Management System - Documentation FINAL

</tr>

<tr valign="baseline">

<td nowrap align="right">Household No:</td>

<td><input type="text" name="Household_No" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Nationality:</td>

<td><input type="text" name="Nationality" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Religion:</td>

<td><input type="text" name="Religion" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Marital Status:</td>

<td><input type="text" name="Marital_Status" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Previous Residence:</td>

<td><input type="text" name="Previous_Residence" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Duration of residence:</td>

<td><input type="text" name="Duration_of_residence" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Is father alive:</td>

<td><input type="text" name="is_father_alive" value="" size="32"></td>

</tr>

<tr valign="baseline">

<td nowrap align="right">Is mother alive:</td>

<td><input type="text" name="is_mother_alive" value="" size="32"></td>

</tr>

<tr valign="baseline">

121

Page 122: Census Management System - Documentation FINAL

<td nowrap align="right">&nbsp;</td>

<td><input type="submit" value="Insert record">

<input type="reset" name="Reset" value="Clear"></td>

</tr>

</table>

<p>&nbsp; </p>

<table width="200" border="1" align="right">

<caption>

Relationship

</caption>

<tr>

<th width="49" scope="col"><div align="left">1</div></th>

<th width="135" scope="col"><div align="left">Head</div></th>

</tr>

<tr>

<td>2</td>

<td>Spouse</td>

</tr>

<tr>

<td>3</td>

<td>Son/Daughter</td>

</tr>

<tr>

<td>4</td>

<td>Grandchild</td>

</tr>

<tr>

<td>5</td>

<td>Brother/Sister</td>

</tr>

<tr>

<td>6</td>

<td>Father/Mother</td>

122

Page 123: Census Management System - Documentation FINAL

</tr>

<tr>

<td>7</td>

<td>Nephew/Niece</td>

</tr>

<tr>

<td>8</td>

<td>In Law </td>

</tr>

<tr>

<td>9</td>

<td>Grandparent</td>

</tr>

<tr>

<td>10</td>

<td>Other relative </td>

</tr>

<tr>

<td>11</td>

<td>Non relative </td>

</tr>

</table>

<table width="200" border="1" align="left">

<caption>

Religion

</caption>

<tr>

<th width="49" scope="col"><div align="left">1</div></th>

<th width="135" scope="col"><div align="left">Catholic</div></th>

</tr>

<tr>

<td>2</td>

<td>Protestant</td>

</tr>

123

Page 124: Census Management System - Documentation FINAL

<tr>

<td>3</td>

<td>Other Christian </td>

</tr>

<tr>

<td>4</td>

<td>Muslim</td>

</tr>

<tr>

<td>5</td>

<td>Hindu</td>

</tr>

<tr>

<td>6</td>

<td>Traditionalist</td>

</tr>

<tr>

<td>7</td>

<td>Other religion </td>

</tr>

<tr>

<td>8</td>

<td>No religion </td>

</tr>

<tr>

<td>9</td>

<td>DK</td>

</tr>

</table>

<table width="200" border="1">

<caption>

Marital Status

</caption>

<tr>

124

Page 125: Census Management System - Documentation FINAL

<th width="33" scope="col"><div align="left">1</div></th>

<th width="151" scope="col"><div align="left">Never married </div></th>

</tr>

<tr>

<td>2</td>

<td>Married monogamous </td>

</tr>

<tr>

<td>3</td>

<td>Married polygamous </td>

</tr>

<tr>

<td>4</td>

<td>Widowed</td>

</tr>

<tr>

<td>5</td>

<td>Divorced</td>

</tr>

<tr>

<td>6</td>

<td>Separated</td>

</tr>

<tr>

<td>7</td>

<td>Dk</td>

</tr>

</table>

<p>

<input type="hidden" name="MM_insert" value="form2">

</p>

<p>&nbsp;</p>

<p>&nbsp; </p>

</form>

125

Page 126: Census Management System - Documentation FINAL

<form name="form3" method="post" action="results.php">

<input type="text" name="name">

<input type="submit" name="Submit" value="search">

</form>

<p>&nbsp;</p>

</body>

</html>

126


Recommended