CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

14
CHAPTER TWO

description

A thesis submitted to the Canadian Sudanese Collegein partial fulfillment of the requirements forB.Sc. in Computer Information Systems

Transcript of CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Page 1: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

CHAPTER

TWO

Page 2: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 9

REQUIREMENTS COLLECTION AND

ANALYSIS

PREFACE:

The aim of every requirements collection and analysis is to clearly understand

the exact requirements of the customer – in this case the Embassy, and

systematically organize the requirements into software specifications. In the

past, many projects have suffered because designers started implementing a

software project without determining whether they were building exactly what

the customer wanted. [3]

2.1 REQUIREMENTS GATHERING

Requirements gathering or fact finding is the formal process of using research,

interviews, questionnaires, sampling, and other techniques to collect

information about systems, requirements, and preferences.

System analysts need an organized method of collecting facts. Some common

fact finding techniques are:

1. Sampling of existing documentation, forms and databases

2. Research and site visits

3. Observation of the work environment

4. Questionnaires

5. Interviews

In this research, observation, sampling and interviews are conducted.

2.1.1 OBSERVATION

Observation is one of the most effective data collection techniques for obtaining

an understanding of a system. Observation is a fact-finding technique where the

systems analyst either participates in or watches a person perform activities to

learn about the system.

This technique is often used when the validity of data collected through other

methods is in question or when the complexity of certain aspects of the system

prevents a clear explanation by the end users.

The main disadvantage of Observation technique is usually people feel

uncomfortable when being watched, they may unwillingly perform differently

Page 3: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 10

when being observed. In fact, experiment proved that the act of observation can

alter behavior. [4]

If a citizen goes to the embassy for any non-essential service, he/she will be

asked if he’s registered.

If no, he will be given a registration form to fill and a copy of his

Nigerian Standard Passport with two passport photographs attached. Then

his very basic information will be saved in Microsoft Excel file.

If yes, he will be asked for his name or passport number to confirmed

His file will be looked up in their file cabinet to put down any notes or

comments in his record.

2.1.1.1 STAFF SKILLS LEVEL From the observation of the working environment, the staffs that have access to

the system can be ranked as intermediate computer users. And they are only

familiar with the Windows operating system.

2.1.2 SAMPLING Sampling is the process of collecting sample documents, forms, and records.

Studying existing documentation forms and files develop a good feeling for the

proposed system. A good analyst always gets facts first from existing

documentation rather than from people and avoid the pitfalls of sampling blank

forms, because they tell little about how the form is used, not used, or misused. 1

In this case, blank registration form was given because of personal privacy and

confidentiality issues.

The following sample documents have been collected for analysis:

1. A copy of the Citizens Registration Form

2. A copy of the New – Nigerian Standard Passport

3. A copy of the Old – Nigerian Standard Passport

[See Appendix A]

Note: the Federal Government of Nigeria has introduced a New – Nigerian

Standard Passport in 2007 and been brought into effect immediately. The Old –

Nigerian Standard Passport is still valid (at the time of this research), but it will

be invalid and inapplicable by the end of 2010. All citizens who have came to

Sudan before the year 2007 registered with their Old Passport in the Embassy,

which cannot be ignored.

1 Same as above

Page 4: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 11

2.1.3 INTERVIEW Interviews are a fact finding technique whereby the systems analyst collects

information from individuals face to face. The most important element of an

information system is people. More than anything else, people want to be in on

things. No other fact finding technique places as much emphasis on people as

interviews. The main goals of interview are to: find facts; verify facts; clarify

facts; generate enthusiasm; get the end user involved; identify requirements;

solicit ideas and opinions.

And like any other fact finding technique, interviewing is not the best method

for all situations. The main disadvantage is it may be impractical due to the

location of interviewees, time consuming and poor human relation skills of

interviewer.[4]

The Embassy has assigned a staff for any consultation and information

requirements of this project. An interview was carried out on 4th Jan. 2010 to

clarify some facts.

[See Appendix B]

Page 5: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 12

2.1.4 INPUT DATA:

No INPUT DATA DATA TYPE

1 First Name i String

2 Second Name ii String

3 Last Name iii

String

4 Date of Birth iv Date

5 Place of Birth v String

6 Profession String

7 Qualifications String

8 Job History String

9 Present Nationality vi

String

10 Marital Status String

11 No. of Dependents in Sudan Number

12 Date of Arrival in Sudan Date

13 Purpose String

14 Sponsor’s Name String

15 Sponsor’s Address String

16 Sponsor’s Phone No. Number

17 Job Title String

18 Residential Address String

19 Phone No Number

20 Date Date

21 Signature -

22 2 Passport size Color Photograph Image

Next of Kin in Sudan

23 Name String

24 Kinship String

25 Address String

26 Phone No Number

Permanent Address in Nigeria

27 Phone No./Fax Number

28 Address String

For Official Use Only

29 Registration No Number

30 ID Category String

31 Officer’s Comment String

Table 2.1 – Citizens Registration Form input data

Page 6: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 13

No INPUT DATA DATA TYPE

1 Passport No. vii

Number (7)*

2 Passport Type Char

3 Country Code Char (3)

4 Surname String

5 Given Names String

6 Nationality String

7 Date of Birth Date

8 Authority viii

Number

9 Sex Char

10 Place of Birth String

11 Date of Issue Date

12 Date of Expiry Date

13 Holder’s Signature - *Passport No contains 7 digits preceded by character ‘A’, the character is not considered in many

applications.

Table 2.2 – Old – Nigerian Standard Passport Input Data

No INPUT DATA DATA TYPE

1 Passport No Number (8)

2 Passport Type Char

3 Country Code Char(3)

4 Surname String

5 Given Names String

6 Nationality String

7 Date of Birth Date

8 Personal No. ix

Number

9 Sex Char

10 Place of Birth String

11 Authority String

12 Date of Issue Date

13 Date of Expiry Date

14 Holder’s Signature -

Table 2.3 – New – Nigerian Standard Passport Input Data

Page 7: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 14

2.1.5 OUTPUT DATA: Generate statistical report base on this criteria

o Total number of citizens – both active and inactive (dormant)

o List of citizens by arrival month

o Number of citizens by marital status

o Number of citizens by sex

o Number of citizens by sponsor/category

o Number of citizens by state of origin

Automatically deactivate a citizen after five years of inactivity

2.2 REQUIREMENTS ANALYSIS

From the gathered requirements, many inconsistencies, anomalies and conflicts

are found. In the current paper-work system, this could be negligible but in a

software system, this could degrade performance and efficiency.

The identified conflicts are as follows:

i. First Name, Second Name and Last Name are required separately on

the registration form while the same names are provided in the

standard passport, except that only Surname is required separately,

first name and last name are combined to Given Names.

ii. Date of Birth appears both on the registration form and the standard

passport.

iii. Place of Birth appears both on the registration form and the standard

passport.

iv. Present Nationality field conflicts with Nationality field on the

standard passport.

v. Old Passport contains 7 digits as the passport number preceded by

character ‘A’ while the New Passport contains 8 digits preceded by

character ‘A’ too.

vi. Previously, Authority contains digits, but now is replaced by string in

the New Passport.

vii. Personal No. is a new field introduced in the New Passport.

Page 8: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 15

2.2.1 UNIFIED MODELING LANGUAGE (UML) DIAGRAMS By the early 1990s, different organizations and even divisions within the same

organization were using their own unique processes and notations. At the same

time, these organizations also wanted to use software tools that would support

their particular processes. Software vendors found it difficult to provide tools

for so many processes. Clearly a standard notation and standard processes were

needed. [5]

Unified Modeling Language (UML) was developed in the mid-1990s by Object

Management Group™ (OMG) because of the increasing numbers of

organizations began using OOP to build their applications, and a need to

developed a standard OOAD process. [6]

UML is now the most widely used

graphical representation scheme for modeling Object-Oriented systems. It has

indeed unified the various popular notational schemes. [7]

An attractive feature of the UML is its flexibility. It’s extensible (i.e., capable of

being enhanced with new features) and is independent of any particular Object

Oriented Analysis and Design (OOAD) process.

The UML is a complex, feature-rich graphical language with many types of

diagrams. Only three of the diagrams will be used in this research, which are as

follows:

Use Case Diagram

Activity Diagram

Sequence Diagram

2.2.2 USE CASE DIAGRAM It models the interaction between a system and its external entities (actors) in

terms of use cases (system capabilities). Its main purpose is to keep software

developers focused on the main goals of an ongoing project. It provides an

overview of all or part of the user requirements and the scope of a

development project.

Page 9: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 16

2.2.2.1 USE CASE NOTATIONS

NOTATION NAME DESCRIPTION

Actor

An actor is a person, organization, or

external system that plays a role in one or

more interactions with your system. E.g.

human, databases, sensors, etc

Use Case It describes a sequence of actions that

represent an activity doing by an actor.

Association

Are lines connecting two modeling elements

with an optional open-headed arrowhead on

one end of the line indicating the direction

of the initial invocation of the relationship.

System

Boundary Box

It indicates the scope of your system – the

use cases inside the rectangle represent the

functionality that you intend to implement.

Table 2.4 Use Case Notations

Fig 2.1 Staff use case diagram

<<Relationship

Page 10: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 17

Fig 2.2 Admin Use Case diagram

Fig 2.3 DBMS Use Case diagram

2.2.3 ACTIVITY DIAGRAM

It models an object’s activity – the object’s workflow (sequence of events)

during program execution. Its main purpose is to models the action that an

object performs and specifies the order in which the object performs these

actions. Because an Activity diagram is a special kind of UML State Chart

diagram, it uses some of the same modeling conventions and more like Flow

Chart Diagram. It supports parallel task which a pure Flow Chart cannot handle.

Page 11: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 18

2.2.3.1 ACTIVITY DIAGRAM NOTATIONS

NOTATION NAME DESCRIPTION

Action

Action states represent the non

interruptible actions of objects.

Transition

Transition arrows illustrate the

relationships and direction among

action states.

Initial State

A filled circle followed by an

arrow represents the initial action

state.

Final State

An arrow pointing to a filled

circle nested inside another circle

represents the final action state.

Branching

(Merge/Decision )

It represents a decision, merge

with alternate paths. The outgoing

alternates should be labeled with

a condition or guard expression.

Fork

A fork may have one incoming

transitions and two or more

outgoing transitions. It shows

actions carried out in parallel

Join

A join may have two or more

incoming transitions and one

outgoing transition. It shows

parallel actions been unified.

Activity Partition

(Swimlane)

It partition the activity states on

an activity diagram into groups,

each group representing the

organization responsible for those

activities

Table 2.5 – Activity Diagram Notations

Page 12: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 19

Fig 2.4 Activity diagram

Page 13: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 20

2.2.4 SEQUENCE DIAGRAM

It models the interactions among the objects in a system. Sequence diagrams are

used to represent or model the flow of messages, events and actions between the

objects or components of a system. Time is represented in the vertical direction

showing the sequence of interactions of the header elements, which are

displayed horizontally at the top of the diagram. Its main purpose is to

emphasize when these interactions occur.

2.2.4.1 SEQUENCE DIAGRAM NOTATIONS

NOTATION NAME DESCRIPTION

Actor

Represents an external person or entity

that interacts with the system.

Object

Represents an object in the system or

one of its components.

Control

Represents a controlling entity or

manager. A control organizes and

schedules other activities and

elements.

Boundary

It models some system boundary,

typically a user interface screen; It is

used to capture users interacting with

the system at a screen level.

Simple

Message

One object sends a message to a

passive object that does not care what

happens to the message.

Useful when the recipient cannot be

controlled or is a modeless control.

Synchronous

Message

The sender sends a message, the

recipient accepts the message, and

send a feedback message result.

Return

Message Sends a feedback message to user

Table 2.6 – Sequence Diagram Notations

Page 14: CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two

Chapter Two: Requirements Collection And Analysis – Nigerian Citizens Registration Management System In

Sudan

By Suleiman Umar Abdullahi, supervises by Dr. Awad Mohamed 21

Fig 2.5 – Sequence diagram