Ex. No.
: 1
Identify a software system that needs to be developed.
INTRODUCTION:
CASE tools known as Computer-aided software engineering tools is a kind of component-based
development which allows its users to rapidly develop information systems. The main goal of case
technology is the automation of the entire information systems development life cycle process using a
set of integrated software tools, such as modeling, methodology and automatic code generation.
Component based manufacturing has several advantages over custom development. The main
advantages are the availability of high quality, defect free products at low cost and at a faster time. The
prefabricated components are customized as per the requirements of the customers. The components
used are pre-built, ready-tested and add value and differentiation by rapid customization to the
targeted customers.
However the products we get from case tools are only a skeleton of the final product required and a lot
of programming must be done by hand to get a fully finished, good product.
CHARACTERISTICS OF CASE:
Some of the characteristics of case tools that make it better than customized development are;
It is a graphic oriented tool.
It supports decomposition of process.
Some typical CASE tools are:
Unified Modeling Language
Data modeling tools, and
Source code generation tools
INTRODUCTION TO UML (UNIFIED MODELING LANGUAGE):
The UML is a language for specifying, constructing, visualizing, and documenting the software system
and its components. The UML is a graphical language with sets of rules and semantics. The rules and
semantics of a model are expressed in English in a form known as OCL (Object Constraint Language).
OCL uses simple logic for specifying the properties of a system. The UML is not intended to be a visual
programming language.
However it has a much closer mapping to object-oriented programming languages, that the best of both
can be obtained. The UML is much simpler than other methods receding it. UML is appropriate for
modeling systems, ranging from enterprise formation system to distributed web based application and
even to real time embedded stem. It is a very expensive language addressing all views needed to
develop and en to display system even though understand to use. Learning to apply UML fectively starts
forming a conceptual mode of languages which requires learning.
Three major language elements:
UML basic building blocks
Rules that dictate how this building blocks put together
Some common mechanism that apply throughout the language
The primary goals in the design of UML are:
1. Provides users ready to use, expressive visual modeling language as well so they can develop and
exchange meaningful models.
2. Provide extensibility and specialization mechanisms to extend the core concepts.
3. Be independent of particular programming languages and development processes.
4. Provide formal basis for understanding the modeling language.
5. Encourage the growth of the OO tools market.
6. Support higher-level development concepts.
7. Integrate best practices and methodologies.
Every complex system is best approached through a small set of nearly dependent views of a model.
Every model can be expressed at different levels of fidelity. The best models are connected to reality.
The UML defines nine graphical agrams:
1. Class diagram
2. Use-case diagram
3. Behavior diagram
3.1. Interaction diagram
3.1.1. sequence diagram
3.1.2. collaboration diagram
3.2. state chart diagram
3.3. activity diagram
4. Implementation diagram
4.1 component diagram
4.2 deployment diagram
1. UML class diagram:
The UML class diagram is also known as object modeling. It is a static analysis diagram. These diagrams
show the static structure of the model. A class diagram is a connection of static model elements, such as
classes and their relationships, connected as a graph to each other and to their contents.
2. Use-case diagram:
The functionality of a system can be described in a number of different use- cases, each of which
represents a specific flow of events in a system. It is a graph of actors, a set of use-cases enclosed in a
boundary, communication, associations between the actors and the use-cases, and generalization
among the use-cases.
3. Behavior diagram:
It is a dynamic model unlike all the others mentioned before. The objects of at object oriented system
are not static and are not easily understood by static diagrams. The behavior of the class's instance (an
object) is represented in this diagram. Every use-case of the system has an associated behavior diagram
the indicates the behavior of the object. In conjunction with the use-case diagram we may provide a
script or interaction diagram to show a time line of events. It consists of sequence and collaboration
diagrams.
4. Interaction diagram
It is the combination of sequence and collaboration diagram. It is used to depict the flow of events in the
system over a timeline. The interaction diagram is a dynamic model which shows how the system
behaves during dynamic execution.
5. State chart diagram:
It consists of state, events and activities, State diagrams are a familiar technique describes the behavior
of a system. They describe all of the possible states that a particular object can get into and how the
object's state changes as a result of events that reach the object, in most OO techniques, state diagrams
are drawn for a single class to show the lifetime behavior of a single object.
6. Activity diagram:
It shows organization and their dependence among the set of components. These diagrams are
particularly useful in connection with workflow and in describing behavior that has a lot of parallel
processing. An activity is a state of doing
Something: either a real-world process, or the execution of a software routine.
7. Implementation diagram:
It shows the implementation phase of the systems development, such as the source code structure and
the run-time implementation structure.
These are relatively simple high level diagram compared to the others seen so far. They are of two sub-
diagrams, the component diagram and the deployment diagram.
8. Component diagram:
These are organizational parts of a UML model. These are boxes to which a model can be decomposed.
They show the structure of the code itself. They model the physical components such as source code,
user interface in a design. It is similar to the concept of packages.
9. Deployment diagram:
The deployment diagram shows the structure of the runtime system. It shows the configuration of
runtime processing elements and the software components that live in them. They are usually used in
conjunction with deployment diagrams to show how physical modules of code are distributed on the
system.
NOTATION ELEMENTS:
These are explanatory parts of UML, model. They are boxes which may apply to neribe and remark
about any element in the model. They provide the information for dentanding the necessary details of
the diagrams.
Relations in the UML:
These are four kinds of relationships used in an UML diagram, they are:
Dependency
Association
Generalization
Realization
Dependency:
It is a semantic relationship between two things in which a change one thing affects the semantics of
other things. Graphically a dependency is represented by a non-continuous line.
Association:
It is a structural relationship that describes asset of links. A link is being connected among objects.
Graphically association is represented as a solid line possibly including label.
Generalization:
It is a specialized relationship in which the specialized elements are substitutahie for object of the
generalized element. Graphically it is a solid line with hollow arrow head parent.
Realization:
It is a semantic relation between classifiers. Graphically it is represented as a cross between
generalization and dependency relationship.
Where UML can be used:
UML is not limited to modeling software. In fact it is expressive to model non software such as to show
in structure and behavior of health care system and to design the hardware of the system.
Conceptual model be UML:
UML you need to form the conceptual model of UML. This requires three major elements:
UML. basic building blocks.
Rules that dictate how this building blocks are put together.
Some common mechanism that apply throughout the language
once you have grasped these ideas, you may be able to read. UML create some basic [Link] you
gain more experience in applying conceptual model using more advanced features of this language
Building blocks of the UML:
The vocabulary of UML encompasses these kinds of building blocks
CASE definition:
Description:
A use case is a set of scenarios tied together by a common user goal
A use case is a behavioral diagram that shows a set of use cane actions and their relationships.
Purpose:
The purpose of use case is login and exchange messages between sender and ver (Email client).
Main flow:
First, the sender gives his id and enters his login. Now, he enters the message to be receiver id.
Alternate flow:
If the username and id by the sender or receiver is not valid, the administrator not allow entering and
"Invalid password" message is displayed.
Pre-condition:
A person has to register himself to obtain a login ID.
Post-condition:
The user is not allowed to enter if the password or user name is not valid.
Class diagram:
Description:
A class diagram describes the type of objects in system and various kinds of relationships that
exists among them.
Class diagrams and collaboration diagrams are object models. representations of
During analysis, we use class diagram to show roles and responsibilities of entities that provide email
client system behaviors design. We use to capture the structure classes that form the email client
system architecture.
A class diagram is represented as:
<<Class name>>
<<<Attribute 1>>
<<Attribute n>>
<<Operation ()>>
Relationship used:
A change in one element affects the other
Generalization:
It is a kind of relationship
State chart:
Description:
The state chart diagram made the dynamic behavior of individual classes
State chart shows the sequences of states that an object goes through evens and state
transitions.
A state chart contains one state 'start' and multiple 'end' states.
The important objectives are:
Decision:
It represents a specific location state chart diagram where the work flow may branch based upon guard
conditions.
Synchronization:
It gives a simultaneous workflow in a state chart diagram. They visually define forks and joints
representing parallel workflow.
Forks and joins:
A fork construct is used to model a single flow of control.
Every work must be followed by a corresponding join.
Joints have two or more flow that unit into a single flow
State:
A state is a condition or situation during a life of an object in which if satisfies condition or waits for
some events.
Transition:
It is a relationship between two activities and between states and activities
Start state:
A start state shows the beginning of a workflow or beginning of a state machine a state chart diagram.
End state:
It is a final or terminal state.
Activity diagram
Description:
Activity diagram provides a way to model the workflow of a development process. We can also model
this code specific information such as class operation using activity diagram. Activity diagrams can model
different types of diagrams. There are various ads involved in the activity diagram.
Activity:
An activity represents the performance of a task on duty. It may also represent execution of a statement
in a procedure.
Decision:
A decision represents a condition on situation during the life of an object, which misfies some condition
or waits for an event.
Start state:
It represents the condition explicitly the beginning of a workflow on an activity,
Object flow:
An object on an activity diagram represents the relationship between stil and object that creates or uses
it.
Synchronization:
It enables us to see a simultaneous workflow in an activity.
End state:
An end state represents a final or terminal state on an activity diagraese chart diagram.
Sequence diagram:
Description:
A sequence diagram is a graphical view of scenario that shows object interaction in a time based
sequence what happens first what happens next.
Sequence diagrams are closely related to collaboration diagram.
The main difference between sequence and collaboration diagram is that sequence diagram
show time based interaction while collaboration diagram shows objecu associated with each other.
The sequence diagram for the e-mail client system consists of the following objectives:
Object:
An object has state, behavior and identity. An object is not based is referred to as an instance.
The various objects in e-mail client system are:
User
Website
Login
Groups
Message icon:
A objects indicating that action will follow. The message icon is the horizontal solid arrow connecting
lifelines together.
Collaboration diagram:
Description:
Collaboration diagram and sequence diagrams are alternate representations of interaction. A
collaboration diagram is an interaction diagram that shows the shows the order messages that
implement an operation or a transaction. Collaboration diagram is en action diagram that shows the
order of messages that implement an operation or a transaction. Collaboration diagram shows objects,
their links and their messages. They also contain simple class instances and class utility instances
During, analysis indicates the semantics of the primary and secondary interactions sign, shows the
semantics of mechanisms in the logical design of system.
Toggling between the sequence and collaboration diagrams.
When we work in either a sequence or collaboration diagram, it is possible to the corresponding
diagram by pressing F5 key.
CONCLUSION:
Thus the study for case tools was done.
Ex. No.:2
Document the Software Requirements Specification (SRS) for the identified system.
AIM:
To document the Software Requirements Specification for Passport Automation System
PROBLEM STATEMENTS:
Passport Automation System is used in the effective dispatch of passport to all of the applicants. This
system adopts a comprehensive approach to minimize the manual work and schedule resources, time in
a cogent manner. The core of the system is to get the online registration form (with details such as
name, address etc..) filled by the applicant whose testament is verified for its genuineness by the
Passport Automation System with respect to the already existing information in the database. This
forms the first and foremost step in the processing of passport application. After the first round of
verification done by the system, the information is in turn forwarded to the regional administrator's
(Ministry of External Affairs) office. The application is then processed manually based on the report
given by the system, and any forfeiting identified can make the applicant liable to penalty as per the law.
The system also provides the applicant the list of available dates for appointment to 'document
verification in the administrator's office, from which they can select one. The system forwards the D
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 passport is sent to the applicant
SOFTWARE REQUIREMENTS SPECIFICATION:
1.0 Introduction
Passport Automation System is an interface between the Applicant and the Authority responsible for the
Issue of Passport. It aims at improving the efficiency in the Issue of Passport and reduce the complexities
involved in it to the maximum possible extent.
1.1 Purpose
If the entire process of 'Issue of Passport' is done in a manual manner then it would take several months
for the passport to reach the applicant. Considering the fact that the number of applicants for passport
is increasing every year, an d System becomes essential to meet the demand. So this system uses
several programming and database techniques in elucidate the work involved in Automated this
process. As this is a matter of National Security, the system has been carefully verified and validated in
order to satisfy it.
1.2 Scope
The System provides an online interface to the user where they can fit in their personal details
and submit the necessary documents (may by scanning).
The authority concerned with the issue of passport can use this system to reduce his workload
and process the application in a speedy manner
Provide a communication platform between the applicant and the administrator.
Transfer of data between the Passport lashing Authority and the Local Police for verification of
applicant's information.
Users/Applicants will come to know their status of application and the date in which they must
subject themselves for manual document verification.
1.3 Definitions, Acronyms and the Abbreviations
Administrator - Refers to the super user who is the Central Authority who has been vested with
the privilege to manage the entire system. It can be any higher official in the Regional Passport
Office of Ministry of External Affairs
Applicant-One who wishes to obtain the Passport.
PAS-Refers to this Passport Automation System.
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 Protocol is the communication protocol used to
connect hosts on the Internet.
14
Object Oriented Software Engineering
1.4 References
IEEE Software Requirement Specification format.
1.5 Technologies to be used
HTML
JSP
JavaScript
Java
XML
AJAX
1.6 Tools to be used
Eclipse IDE (Integrated Development Environment)
Rational Rose tool (for developing UML Patterns)
1.7 Overview
SRS includes two sections overall description and specific requirements - Overall description will
describe major role of the system components and inter connections. Specific requirements will
describe roles & functions of the actors.
2.0 Overall Description
2.1 Product Perspective
The PAS acts as an interface between the 'applicant' and the 'administrator". This system tries to make
the interface as simple as possible and at the same time not risking the security of data stored in. This
minimizes the time duration in which the user receives the passport.
2.2 Software Interface
Front End Client. The applicant and Administrator online interface is built using JSP and HTML.
The Administrator’s local interface is built using Java.
Web Server-Glassfish application server (Oracle Corporation).
Back End - Oracle database.
2.3 Hardware Interface
The server is directly connected to the client systems. The client systems have access to the database in
the server.
System Functions
Secure Registration of information by the Applicants.
Schedule the applicants an appointment for manual verification of original documents.
Panel for Passport Application Status Display by the Administrator
SMS and Mail updates to the applicants by the administrator
Administrator can generate reports from the information and is the only authorized personnel
to add the eligible application information to the database.
User Characteristics
Applicant - They are the people who desires to obtain the passport and submit the information
to the database.
Administrator - He has the certain privileges to add the passport status and to approve the issue
of passport. He may contain a group of perions under him to verify the documents and give
suggestion whether or not to approve the dispatch of passport.
Police He is the person who upon receiving intimation from the PAS, perform a personal
verification of the applicant and see if he has any criminal case against him before or at present.
He has been vetoed with the power to decline an application by suggesting it to the
Administrator if he finds any discrepancy with the applicant. He communicates via this PAS.
Constraints
The applicants require a computer to submit their information.
Although the security is given high importance, there is always a chance of intrusion in the web
world which requires constant monitoring.
The user has to be careful while submitting the information. Mach care is required.
Use Case Model Description
Use Case diagrams identify the functionality provided by the system (use ca the users who interact with
the system (actors), and the association between the users and the functionality. Use Cases are used in
the Analysis phase of software development to articulate the high-level requirements of the system. The
primary goals of Use Case diagrams include:
Providing a high-level view of what the system does.
Identifying the users ("actors") of the system.
Determining areas needing human-computer interfaces.
2.8 Assumptions and Dependencies
The Applicants and Administrator must have basic knowledge of computers and English
Language.
The applicants may be required to scan the documents and send.
3. Specific Requirements
3.1 External Interface Requirements
3.1.1 User Interfaces
Administrator-Administrator has a special right to add and approve the passport status.
Administrator has a boatload under him to verify the persons.
Applicant-They are the people who desires to obtain the passport and submit the information to
database.
Police-He is the person receives details about the applicants. A personal verification of applicant
and see if he has any criminal case against him/her before or present. He as the power to decline the
application by suggesting it to administrator if any case the police finds any differences the application
can be cancelled. He communicates via this PAS
3.1.2 Hardware Interfaces
The server is directly connected to the client systems. The client systems have an access to the database
in the server.
3.1.3 Software Interfaces:
Front End Client-the applicant and administrator online interface is built using JSP and HTML..
The Administrators local interface is built using java.
Web Browser-It uses Tomcat server
Back End-Oracle Database
3.1.4 Communication Interfaces
Online Passport registration uses internet. Hence, it uses HTTP for transmission of the data. This
protocol allows easy interaction between client and server.
3.2 Specific Requirements
UML DIAGRAMS:
USE CASE DIAGRAM:
The UML provides the use case diagram notation to illustrate the name of the use case actors and
relationship between them.
SEQUENCE DIAGRAM:
A sequence diagram illustrates in a kind of format in which each object interact via messages. It is
generalization between two or more specification diagram.
Sequence diagram is an interaction over view diagram. It provides a big picture ever view of now a set of
interaction is related in terms of logic and process flow.
COLLABORATION DIAGRAM:
It illustrates that object interaction in a graph or network format in which object can be placed
anywhere on the diagram.
In collaboration diagram the relationship between applicant, system admin and authority. The people
must fill the application form according to detailed furnished. The system admin verifies the all details
and forward details to authority. He is enquiry the person and then issues the passport to applicant.
New Registration:
Class Diagram:
The UML include the class diagram, to illustrate and their association. They are used for static
object modeling.
STATE CHART DIAGRAM:
It illustrates the intrusting events and state of an object and behaviors of an object is reaction to an event.
Transaction shows as allows labeled with theirs event. It is included with initial pseudo state and final end
state.
The state chart diagram of passport automation system that the service of authority, who is issues the
passport received by the applicant and getting the passport.
ACTIVITY DIAGRAM:
Activity diagram shows sequential and parallel activities in a process. They are useful for modeling
business, workflows, the data flows and complex algorithm.
A UML activity diagram offers rich notation to flows a sequential of activities. It may be including parallel
activities. It may be applied to any purpose, but it is popular for visualization of business workflows and
use case.
COMPONENT DIAGRAM:
A component represent a modular part of a system, that encapsulates it contents and whose
manifestation is replaced with in its environment. A component define its behaviors in terms of provide
and required interfaces.
Here the three components are applicant, system admin and authority.
The interface between people and system admin, from people to authority.
DEPLOYMENT DIAGRAM:
A deployment shows the assignment of concrete artifacts to computational nodes. It shows the
deployment of software elements to the physical architecture, and the communication. Deployment
diagrams are useful to communicate the physical and deployment architecture.
In the deployment diagram the object reference in component diagram is also included the deployment
diagram. In this authority and system admin, interface through the people.
It is the process of installing the program.
3.3 Software System attributes
3.3.1 Reliability
The system should not be down more than two times a year.
3.3.2 Scalability
Sealing a system to a large number of users
3.3.3 Security
Firewall protection: The course management shall run inside the firewall.
Support different roles: The system shall support the different roles to the users, instructors,
administrators, the user is allowed to log with the given role with the consistent role. For example, if a
user is logged in it he should not have right to change the particulars.
3.3.4. Maintainability and requirements:
Maintenance Requirements: To ensure the functionality of the maximum period of time, the database
and the catalogue must be updated at least every 15 days. Also the system should timely integrate
modification suggested by stakeholders.
Supportability Requirements: The system should need to be entirely self-supporting since the users
would be using it only to register.
Adaptability Requirements: The interface should be compatible with standards in order to be usable via
all major web browsers in a wide variety of environments.
3.3.5 Security Requirements
Integrity Requirements: Data integrity should be assured by limiting access to the database and by
appropriate synchronization, and back-up functionalities.
Immunity Requirements: The system will develop a security system that will reduce to the minimum the
possibility of corruption from systems and/or humans.
3.4 Technical Issues:
Were you, due to the material being defective, unable to have your passport application registered
when visiting your passport administration to return because your details had been lost? Did this
probl3m cause you to suffer damages?
The existing "passport browser" will become obsolete as soon as the online registration system is
active.
Supporting information
Appendixes
Definitions, Acronyms, and Abbreviation:
SRS: Software Requirement Specification
Client/User: The entity who will be using the passport registration.
Server: A system that runs in Linux that monitors the passport registration
RAM: Random Access Memory
MYSQL: A relational database management system
HTTP: Hyper Text Transfer Protocol
PDF: Portable Document Format
User Name: Unique name given to each account of digital library
Password: Unique word given to each user as a secret code.
RESULT:
Thus the "Passport Automation System" application was successfully designed and the output was
verified using Rational Rose Software in CS1403-CASE Tools Laboratory
Ex. No.3
Identify use cases and develop the Use Case model.
Aim: To identify Use Cases and develop the Use Case model for QUIZ system
Description:
Guideline: To Find Use Cases
Use cases are defined to satisfy the goals of the primary actors. Hence, the basic procedure is:
Step 1: Choose the system boundary. Is it just a software application, the hardware and application as a
unit, that plus a person using it, or an entire organization?
Step 2: Identify the primary actors those that have goals fulfilled through using services of the system.
The following questions help identify others that may be missed:
Who starts and stops the system? Who does system administration?
Who does user and security management? Is "time" an actor because the system does
something in response to a time event?
Is there a monitoring process that restarts the Who evaluates system activity or performance?
system if it fails?
How is software updates handled? Push or pull Who evaluates logs? Are they remotely retrieved?
update?
In addition to human primary actors, are there any Who gets notified when there are
Who starts and stops the system? Who does system administration?
External software or robotic systems that call upon Errors or failures?
services of the system?
Step 3: Identify the goals for each primary actor.
For example, use this table to prepare actor goal list
Actor Goal
Participant
Play level 1
Play level 2
Submit answers
… …
Step 4: Define Use Cases
In general, define one use case for each user goal. Name the use case similar to the user goal. Start the
name of use cases with a verb.
A common exception to one use case per goal is to collapse CRUD (create, retrieve, update, delete)
separate goals into one CRUD use case, idiomatically called Manage <X>. For example, the goals "edit
user," "delete user," and so forth are all satisfied by the Manage Users use case.
UML Notation:
Actor: An Actor, as mentioned, is a user of the system, and is depicted using a stick figure. The role of
the user is written beneath the icon. Actors are not limited to humans. If a system communicates with
another application, and expects input or delivers output, then that application can also be considered
an actor.
Use Case: A Use Case is functionality provided by the system, typically described as verb + object (e.g.
Register Car, Delete User). Use Cases are depicted with an ellipse. The name of the use case is written
within the ellipse.
Association: Associations are used to link Actors with Use Cases, and indicate that an Actor participates
in the Use Case in some form. Associations are depicted by a line connecting the Actor and the Use Case.
3.1 Use cases
Display Score
The system will consist of Login screen to authenticate the participants whose information is updated in
the database. On starting the quiz, timer is started to maintain the timings. In Level 1 /Level 2 Questions
with four options are displayed sequentially User select the answer and move to the next question.
Finally he/she selects the Submit answers which updates the marks and displays the score to the
participants. If he is playing Level 1 and qualified for level 2, then next level questions are displayed
otherwise Not Qualified Message is displayed.
Functional Requirements
3.1.1. Use Case: Login
Brief Description
The use case describes how a Participant logs into the Quiz System
Use Case Section Comment
Use Case Name Login
Scope Quiz System
Level "user-goal"
Primary Actor Participant
Stakeholders and Interest list Participant: logs into the Quiz System...
Preconditions None
Success Guarantee/ Post condition If the use case was successful, the actor is now
logged into the system. If not, the system State is
unchanged.
Main Success Scenario 1. The System requests the actor to enter his/her
name and password
2. The actor enters his/her name and password
3. The System validates the entered name and
password and logs the actor into the System
Extensions [Link] the pwd is wrong, user is allowed for 3
attempts
Special Requirements Timer
Technology and Data Variations List -
Frequency of Occurrence Could Be nearly Continuous
Miscellaneous If the connection is terminated before the form is
submitted, the fields are cleared and the Server is
returned to the wait state. The Administrator can
make the system not to get updated by others.
3.1.2. Use Case: Play Level 1 /Level 2 (provide the content same as above)
3.1.3. Use Case: Display Questions (provide the content same as above)
3.1.4. Use Case: Submit Answers (provide the content same as above)
3.1.5. Use Case: Qualify to Level 2 ( provide the content same as above)
3.1.6. Use Case: Display Score (provide the content same as above)
3.2. Non-functional requirements
Non-functional requirements are often called qualities of a system. Other terms for non-functional
requirements are "constraints", "quality attributes", "quality goals", "quality of service requirements"
and "non-behavioral requirements".
Non-functional requirements, can be divided into two main categories:
1. Execution qualities, such as security and usability, which are observable at run time.
2. Evolution qualities, such as testability, maintainability, extensibility and scalability, which are
embodied in the static structure of the software system.
3.2.1. Functionality : Multiple users must be able to perform their work concurrently. If the participant
has completed 30 Minutes allotted for him/her, he or she should be notified with the message "your
time slot is over".
3.2.2. Usability: The desktop user-interface shall be Windows 95/98/2000/xp compliant.
3.2.3. Reliability: The System should function properly for allotted time slot and produces score card
with no more than 10% down time.
3.2.4. Performance
1. The System shall support up to 100 simultaneous users against the central database at any given time
and up to 100 simultaneous users against the local servers at any one time.
2. The System must be able to complete 80% of all transactions within 2 minutes.
3.2. 5. Supportability: None.
3.2. 6. Security
1. The System should secure so that only registered participants can take part in Quiz.
2. Once the participant had submitted a answer, he/she can't change the answer later.
3.2.7. Design Constraints: The system shall provide a window-based desktop interface
Ex No: 4 UML Class Diagram
Aim: To Identify the Conceptual Classes and to develop a domain model with
UML class diagram for Book Bank System.
Description
A class diagram in the Unified Modeling Language (UML) is a type of static structure diagram that
describes the structure of a system by showing the system's classes, their attributes, and the
relationships between the classes.
The class diagram is the main building block in object oriented modeling. They are being used both for
general conceptual modeling of the systematic of the application, and for detailed modeling translating
the models into programming code. The classes in a class diagram represent both the main objects and
or interactions in the application and the objects to be programmed. In the class diagram these classes
are represented with boxes which contain three parts
A class with three sections.
The upper part holds the name of the class
The middle part contains the attributes of the class
The bottom part gives the methods or operations the class can take or undertake
In the system design of a system, a number of classes are identified and grouped together in a class
diagram which helps to determine the statically relations between those objects. With detailed
modeling, the classes of the conceptual design are often split in a number of subclasses.
Ex No: 5 UML Interaction Diagram
Aim: To Identify the interaction between objects and to develop using UML Interaction diagram for
Exam registration system
Description
Sequence diagrams document the interactions between classes to achieve a result, such as a use
case. Because UML is designed for object-oriented programming, these communications between
classes are known as messages. The Sequence diagram lists objects horizontally, and time vertically, and
models these messages over time.
Notation In a Sequence diagram, classes and actors are listed as columns, with vertical lifelines
indicating the lifetime of the object over time.
Object:
Objects are instances of classes, and are arranged horizontally. The pictorial representation for an
Object is a class (a rectangle) with the name prefixed by the object name (optional) and a semi-colon.:
Object1
Actor: Actors can also communicate with objects, so they too can be listed as a column. An Actor
is modeled using the ubiquitous symbol, the stick figure.
Lifeline: The Lifeline identifies the existence of the object over time. The notation for a Lifeline is
a vertical dotted line extending from an object.
Activation: Activations, modelėd as rectangular boxes on the lifeline, indicate when the object is
performing an action.
Message
Messages, modeled as horizontal arrows between Activations, indicate the communications between
objects. 1
Message
Ex No: 6 UML State Chart Diagram and Activity Diagram
Aim: To develop using UML State Chart diagram and Activity diagrams for Airline Reservation system
State Chart Diagram Description
UML preserves the general form of the traditional state diagrams. The UML state diagrams are directed
graphs in which nodes denote states and connectors denote state transitions. For example, Figure 1
shows a UML state diagram corresponding to the computer keyboard state machine. In UML, states are
represented as rounded rectangles labeled with state names. The transitions, represented as arrows,
are labeled. with the triggering events followed optionally by the list of executed actions. The initial
transition originates from the solid circle and specifies the default state when the system first begins.
Every state diagram should have such a transition, which should not be labeled, since it is not triggered
by an event. The initial transition can have associated actions.
The main purposes of using Statechart diagrams:
To model dynamic aspect of a system.
To model life time of a reactive system.
To describe different states of an object during its life time.
Define a state machine to model states of an object
Steps to prepare state chart diagram
Identify important objects to be analyzed.
Identify the states.
Identify the events
STATE CHART DIAGRAM
The purpose of state chart diagram is to understand the algorithm involved in performing a method. It is
also called as state diagram. A state is represented as a round box, which may contain one or more
compartments.
An initial state is represented as small dot. A final state is represented as circle surrounding a small dot.
Activity Diagram Description
Activity diagrams are used to document workflows in a system, from the business level down to the
operational level. Activity diagram is a variation of the state diagram where the "states" represent
operations, and the transitions represent the activities that happen when the operation is complete. The
general purpose of Activity diagrams is to focus on flows driven by internal processing vs. external
events.
Activity States
Activity states mark an action by an object. The notations for these states are rounded rectangles, the
same notation as found in State chart diagrams.
Transition: When an Activity State is completed, processing moves to another Activity State. Transitions
are used to mark this movement. Transitions are modeled using arrows.
Transition
Swim lane: Swim lanes divide activities according to objects by arranging objects in column format and
placing activities by that object within that column. Objects are listed at the top of the column, and
vertical bars separate the columns to form the swim lanes.
Initial State: The Initial State marks the entry point and the initial Activity State.
The notation for the Initial State is the same as in State chart diagrams, a solid circle. There can only be
one Initial State on a diagram.
Final State: Final States mark the end of the modeled workflow. There can be multiple Final States, and
these are modeled using a solid circle surrounded by another circle.
Synchronization Bar: Activities often can be done in parallel. To split processing ("fork"), or to resume
processing when multiple activities have been completed ("join"), Synchronization Bars are used. These
are modeled as solid rectangles, with multiple transitions going in and/or out.
Ex No: 7 Logical Architecture with UML Package diagram
Aim: To draw the partial layered, logical architecture diagram with UML package diagram notation.
Logical Architecture and Layers
Logical architecture: the large-scale organization of software classes into packages, subsystems,
and layers.
o "Logical" because no decisions about deployment are implied.
Layer: a very coarse-grained grouping of classes, packages, or subsystems Typical layers in an OO
system:
o User Interface
o Application Logic and Domain Objects
o Technical Services
Application-independent, reusable across systems.
Relationships between layers:
Strict layered architecture: a layer only calls upon services of the layer directly below it.
Relaxed layered architecture: a higher layer calls upon several lower layers.
Layers shown with UML package diagram
Ex No: 8 Project Development & Testing: QUIZ SYSTEM
Aim: To Develop and test the Technical services layer, Domain objects layer and User interface layer.
Description:
In a quiz system we perform the following
1. Student registration
2. Quiz Participation
3. Result Processing
1. Student Registration
The inputs to the quiz system initially is the student details for the quiz which involves the following
details like
1. name
2. year
3. branch
4. college name
When a student enters these details it will be updated in a database. After that the student will be
allowed to participate.
2. Quiz Participation
When the participant begins to answer the questions, a clock is maintained to keep track of the time.
The correct answers for the questions are stored in a separate database. After answering the questions
in the preliminary round, the system verifies whether the student has answered the minimum number
of questions in each level. If not, a message is displayed to make the student answer the required
number of questions within an allotted time.
If the student qualifies the prelims, he/she can proceed to the finals in the same way.
3. Result Processing
After all the students have participated in the quiz, the system processes the marks scored by all the
students. The system sorts the marks and generates a final output, which displays the name and scores