CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two
-
Upload
suleiman-umar -
Category
Documents
-
view
340 -
download
1
description
Transcript of CITIZENS REGISTRATION MANAGEMENT SYSTEM-Chapter Two
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
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
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]
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
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
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.
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.
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
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.
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
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
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
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