1. TABLE OF CONTENTS
S.NO CONTENTS
1) Aim
2) Problem Statement
3) Introduction
3.1 Purpose
3.2 Scope
4) System Requirements
5) UML Diagrams
5.1 Class Diagram
5.2 Object Diagram
5.3 State Diagram
5.4 Data Flow Diagram
5.5 Use-Case Diagram
5.6 Activity Diagram
5.7 Sequence Diagram
5.8 Component Diagram
5.9 Deployment Diagram
2. OOAD LAB EXPERIMENTS
OBJECTIVE: - To develop a mini project following the exercises listed below.
Suggested domain for mini-project: -
PassportAutomation System
S.N
O
EXPERIMENT
1. To develop a problem statement.
2. Develop an IEEEstandard SRS document.
3. Identify UseCases and develop the Use Casemodel.
4. Identify the business activities and develop an UML
Activity diagram.
5. Identify the conceptual classes and develop a domain
model with UML class diagram.
6. Using the unidentified scenario find the interaction
between objects and represent them using UML
Interaction diagram.
7. Draw State Chart diagram.
8. Draw Componentand Deployment diagram.
9. Draw Data Flow diagram.
3. “ Passport Automation System “
1. AIM –
To develop PassportAutomation System.
2. PROBLEM STATEMENT –
The following problems were faced during the manual process ofpassport
dispatch system -
Manual Process: We require a large number of skilled individuals in the
various fields of Passportissuing. Chances of error due to manual work
were much higher; also the workload on each individual was a lot.
Time Consumption: Engaging more number of people for manual work,
automatically led to more time consumption. Search for particular data
information also led to unnecessary delays in the process ofPassport
issuing.
Database Management: Due to extremely high number of applicants, the
management and the processing of the data was very difficult in hard
copyform. Hard copyformat was difficult to maintain and update with
time.
Database Security: More accessibility to data, made tampering much
easier.
4. 3. INTRODUCTION –
The above problems can be easily eradicated by providing a software solution
which is user friendly, flexible and automated to reduce the manual work, and
time of the applicants.
The core of the system is to get the online registration form (with details
such as name, address etc.) filled by the applicant whose details and
documents are verified by the Ministry of External Affairs, and after all
the process ofverification , make the passportavailable to the applicant,
in a proper and secure manner.
The first step is filling of the online Passportapplication form by the
applicant and payment of the fees.
After the first round of verification doneby the system, the information is
in turn forwarded to the Ministry of External Affairs office.
The application is then processed manually based on the report given by
the system. The system also provides the applicant the list of available
dates for appointment to 'documentverification' in the administrator's
office, from which they can select one.
The system forwards the necessary details to the police for its separate
verification whose report is then presented to the administrator. The
administrator will be provided with an option to display the current status
of application to the applicant, which they can view in their online
interface.
After all the necessary criteria has been met, the original information is
added to the database and the passportis sent to the applicant.
3.1 Purpose –
If the entire process of'Issueof Passport' is done in a manual manner then it
would take several months for the passportto reach the applicant.
Considering the fact that the number of applicants for passportis increasing
every year, an Automated System becomes essential to meet the demand.
As this is a matter of National Security, the system has been carefully
verified and validated in order to satisfy it.
5. 3.2 Scope –
• The System provides an online interface to the user where they can sign up,
fill in their personaldetails and upload the necessary documents.
• The authority concerned with the issue of passportcan use this system to
reduce their workload and process the application in a speedy and secure
manner.
• It provides a communication platform between the applicant and the
administrator.
• Transfer of data between the PassportIssuing Authority, Ministry of
External Affairs and the Local Police for verification of applicant's
information.
• Users/Applicants will come to know their status of application and can
enter the date in which they must subject themselves for manual document
verification.
3.3 Definitions, Acronyms and the Abbreviations –
• PAS - Refers to this PassportAutomation System.
• Administrator - Refers to the user who is the Central Authority who has
been assigned to manage the entire system. It can be any higher official in
the Regional PassportOffice of Ministry of External Affairs.
• Applicant - One who wishes to obtain the Passport.
• HTML - Markup Language used for creating web pages.
• J2EE – Java 2 Enterprise Edition is a programming platform and it is the
part of the java platform for developing and running distributed java
applications.
• HTTP - Hyper Text Transfer Protocol.
• TCP/IP – Transmission Control Protocol/Internet Protocolis the
communication protocolused to connect hosts on the Internet.
6. 4. SYSTEM REQIREMENTS –
4.1 Hardware Requirements –
RAM 1Gb, HDD 512Gb
Scanner – USB 2.0 Interface, 4800dpi Optical Resolution
Printer – Resolution 360dpi
4.2 Software Requirements –
Operating System – Windows 7, Linux fedora
Browser – Chrome 48.0.2564 , Firefox 47.0.1
Database Management Software – Firebird 2.5
Java IDE - Eclipse , NetBeans 7.4
4.3 Tools to be Used -
UMLet
Star UML
Argo UML
7. 5. UML DIAGRAM IDENTIFICATION –
The Unified Modelling Language (UML) is general purposedevelopmental
modelling language in the field of software engineering, that is intended to
provide a standard way to visualise the design of the system.
S. No. UML Diagram
1. Class Diagram
2. Object Diagram
3. State Diagram
4. Data Flow Diagram
5. Use Case Diagram
6. Activity Diagram
7. Sequence Diagram
8. Component Diagram
9. Deployment Diagram
8. 1 . Class Diagram –
In software engineering, a class diagram in the Unified Modelling Language
(UML) is a type of static structure diagram that describes the structure of a
system by showing the system's classes, their attributes, operations (or
methods), and the relationships among objects.
In the diagram, classes are represented with boxes that contain three
compartments:
The top compartment contains the name of the class. It is printed in bold
and centred, and the first letter is capitalized.
The middle compartment contains the attributes of the class. They are
left-aligned and the first letter is lowercase.
The bottomcompartment contains the operations the class can execute.
They are also left-aligned and the first letter is lowercase.
The classes in the following class diagram are –
1. PassportAutomationSystem
1.1.Attributes
1.1.1. char Option
1.2.Methods
1.2.1. UserOrAdmin() – Selects whether the actor is USER or ADMIN.
2. User
2.1.Attributes
2.1.1. String LoginId
2.1.2. String Password
2.2.Methods
2.2.1. displayDetails() – Displays the user details
9. 3. AdminLogin
3.1.Attributes
3.1.1. AdminLoginId
3.1.2. AdminPassword
3.2.Methods
3.2.1. login() – Getting access to the admin account.
4. AdminAuthentication
4.1.Attributes
4.1.1. PendingApplications
4.1.2. DispatchedPassports
4.1.3. ApplicationId
4.2.Methods
4.2.1. process() – Processes the requests generated by Admin .
5. NewUser
5.1.Attributes
5.1.1. String Name
5.1.2. String DOB
5.1.3. Char Gender
5.1.4. String EmailId
5.1.5. long MobileNo.
5.2.Methods
5.2.1. submit() – Submits the User information to the Database.
5.2.2. register() – Registers the user to the portal.
5.2.3. cancel() – Discards the user input details.
6. RegisteredUser
6.1.Attributes
6.1.1. String LoginId
6.1.2. String Password
10. 6.2.Methods
6.2.1. UploadDocs() – Uploads the user documents to the portal.
6.2.2. CheckApplicationStatus() – Checks the Application status of the
applicant.
6.2.3. Paymentprocess() – Displays the various modes of fees payments.
6.2.4. SelectApointmentDate() – Provides the list of available dates to
select the appointment date.
11. 2. OBJECT DAIGRAM :-
Object diagrams are derived from class diagrams so object diagrams are
dependent upon class diagrams.
Object diagrams represent an instance of a class diagram. The basic concepts
are similar for class diagrams and object diagrams. Object diagrams also
represent the static view of a system but this static view is a snapshot of the
system at a particular moment.
Object diagrams are used to render a set of objects and their relationships as an
instance.
The purpose of the object diagram can be summarized as −
Forward and reverse engineering.
Object relationships of a system
Static view of an interaction.
Understand object behaviour and their relationship from practical
perspective
13. 3. STATE DIAGRAM :-
A State chart diagram describes a state machine. State machine can be defined
as a machine which defines different states of an object and these states are
controlled by external or internal events.
Activity diagram explained in the next chapter, is a special kind of a State chart
diagram. As State chart diagram defines the states, it is used to model the
lifetime of an object.
Following are the main purposes of using State chart diagrams −
To model the dynamic aspect of a system.
To model the life time of a reactive system.
To describe different states of an object during its life time.
Define a state machine to model the states of an object.
14. 4. DATA FLOW DIAGRAM :-
A data flow diagram (DFD) is a graphical representation of the "flow" of data
through an information system, modeling its process aspects. A DFD is often
used as a preliminary step to create an overview of the system without going
into great detail, which can later be elaborated. DFDs can also be used for
the visualization of data processing (structured design).
A DFD shows what kind of information will be input to and output from the
system, how the data will advance through the system, and where the data will
be stored. It does not show information about the timing of process or
information about whether processes will operate in sequence or in parallel
unlike a flowchart which also shows this information.
LEVEL 0
16. 5. USECASE DIAGRAM :-
To model a system, the most important aspect is to capture the dynamic
behavior. Dynamic behavior means the behavior of the system when it is
running/operating.
Only static behavior is not sufficient to model a system rather dynamic
behavior is more important than static behavior. In UML, there are five
diagrams available to model the dynamic nature and use case diagram is one of
them.
The internal and external agents are known as actors. Use case diagrams
consists of actors, use cases and their relationships.
In brief, the purposes of use case diagrams can be said to be as follows −
Used to gather the requirements of a system.
Used to get an outside view of a system.
Identify the external and internal factors influencing the system.
Show the interaction among the requirements are actors.
17.
18. 6. ACTIVITY DIAGRAM :-
Activity diagram is another important diagram in UML to describe the
dynamic aspects of the system.
Activity diagram is basically a flowchart to represent the flow from one
activity to another activity. The activity can be described as an operation of the
system.
The control flow is drawn from one operation to another. This flow can be
sequential, branched, or concurrent.
The purpose of an activity diagram can be described as −
Draw the activity flow of a system.
Describe the sequence from one activity to another.
Describe the parallel, branched and concurrent flow of the system.
19.
20. 7. SEQUENCE DIAGRAM –
UML Sequence diagrams are used to represent or model the flow of
message, events or action between the objects and components of the
system.
It is primarily used to design document and validate the architecture,
interfaces and logging to the system.
Sequence diagrams provide a dynamic view to the system behaviour
which can be difficult to extract from static diagrams or specifications.
In the sequence diagrams the time is represented in the vertical direction
showing the sequence of interaction of the header element.
21. 8. COMPONENT DIAGRAM –
It is used to describe the physical artefacts of the system and
implementation perspective.
Component diagrams are difficult in terms of nature and behaviour.
Because it does not describe the functionality of all systems, but it
describes the components used to make those functionalities.
Components diagrams can also be used to describe as static
implementation view of the system. Static implementation represents the
organization of the components at a particular moment.
The usages ofthe component diagram can be described as:
Model the components of the system.
Model database schema.
Model executable of an application.
Model systems source code.
22. 9. DEPLOYMENT DIAGRAM –
Deployment diagrams are used to visualize the topology of the
physical component their distribution and association of a system
where the software components are deployed.
Component diagrams are used to describethe component and
deployment diagram shows how they are deployed in hardware.
UML is mainly designed to focus on software artifacts of a system.
But these two diagrams are used to focus on software component
and hardware component.
The nodes appear as boxes, and the artifacts allocated to each node
appear as rectangles within the boxes. Node may have sub nodes,
which appear as nested boxes.
A single node in a deployment diagram may conceptually represent
multiple physical nodes, such as a cluster of database servers.
The usage of deployment diagrams can be described as follow:
To model the h/w topology of a system.
To model embedded system.
To model h/w details for a client /server system.
To model h/w details of a distribution application.
Forward and reverse engineering.