se lab cycle
TRANSCRIPT
-
8/4/2019 Se Lab Cycle
1/20
LAB MANUAL
CS 451 SOFTWARE ENGINEERING LAB
FOR IV/ IV B.Tech
COMPUTER SCIENCE & ENGINEERING
Dept. of Computer Science & Engineering
VELAGAPUDI RAMAKRISHNA
SIDDHARTHA ENGINEERING COLLEGEKANURU, VIJAYAWADA-52 0007, A.P.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
2/20
INSTRUCTIONS TO BE FOLLOWED IN MAINTAINING THE RECORD BOOK
The record should be prepared by taking out the original print out of the UML diagrams
drawn in Visual Paradigm (Microsoft Inc) tool in Windows XP platform by the students in the
Software Engineering Lab and the observation note book contains the hand drawn diagram of all
the UML diagrams.
The List of UM L DiagramsDrawn in Software Engineering Lab is
1. Use Case Diagram (Static Diagrams)
2. Class Diagram
3. Object Diagram
4. Behavior Diagrams (Dynamic Diagrams)
4.1. Interaction Diagrams
4.1.1. Sequence Diagram
4.1.2. Collaboration Diagram
4.2. State Chart Diagram
4.3. Activity Diagram
5. Implementation Diagram
5.1. Component Diagram
5.2. Deployment Diagram
TheRecord should Contains
1. The Date
2. The Number and name of the system for which UML diagrams are drawn
3. The Aim of the Software system developed
4. List the Actors
5. List the Use Cases
6. Draw all the 8 UML ( Unified Modeling Language ) Diagrams for the Application
7. Index must be filled in regularly
8. Each application certified by the staff at the completion of each system
9. The whole record work should certified by the in charge staff at the end of the
semester.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
3/20
PREFACE
Software development is moving from traditional structured programming to the
Object Oriented paradigm. There are many object oriented models but UML is by far the
most popular and real world modeling tool. Exploring this particular methodology will
benefit Students in the Object Oriented Software Development Process.
The unified modeling Language help the students to explore the total software life
cycle by modeling diagrams at different phases of the software development and makes
both developer and the customer well understanding of the system which is been
developed.
The reusability/ Iteration are the other benefits that we having when the product
modeled before it developed in real time
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
4/20
V.R.SI DDHARTHA ENGI NEERING COLLEGE: VI JAYAWADA
DEPT.OF COMPUTER SCI ENCE AND ENGG.
LAB CYCLE
The UML (Unified Modeling Language) Diagrams for the following Applications
are drawn in Visual Paradigm (Microsoft Inc) tool in Windows XP platform.
1. STUDY OF UNIFIED MODELING LANUAGE DIAGRAMS.
2. ATM APPLICATION SYSTEM.
3. QUIZ APPLICATION.
4. RAILWAY RESERVATION SYSTEM.
5. BANKING SYSTEM.
6. LIBRARY MANAGEMENT SYSTEM.
7. RECRITMENT PROCEDURE FOR SOFTWARE INDUSTRY
8. GATE (Graduate Aptitude Test for Engineers) COUNSULING APPLICATION.
9. HOTEL MANAGEMENT SYSTEM
10. UNIVERSITY MANAGEMENT SYSTEM.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
5/20
Expt.No: 1
UNI FIED M ODELI NG LANUAGE (UM L) DIAGRAMS
I NTRODUCTION TO UM L DI AGRAM
The Unified Modeling Language (UML) is a language for specifying,
constructing, visualizing, and documenting the artifacts of a software-intensive system.
Analogous to the use of architectural blueprints in the construction industry, UML
provides a common language for describing software models, and it can be used in
conjunction with a wide range of software lifecycles and development processes.
1. USE CASE DI AGRAM
Use Case diagrams identify the functionality provided by the system (use cases),
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 n eeding human-computer interfaces.
Use Cases extend beyond pictorial diagrams. In fact, text-based use case
descriptions are often used to supplement diagrams, and explore use case functionality
in more detail.
Basic Use Case Diagram Symbolsand Notations
The basic components of Use Case diagrams are the Actor, the Use Case, and the
Association.
1. 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.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
6/20
If a system communicates with another application, and expects input or delivers output,
then that application can also be considered an actor.
2. 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.
3. 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.
4. SystemDraw your system's boundaries using a rectangle that contains use cases. Place
actors outside the system's boundaries.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
7/20
5.Relationships
The relationships between an actor and a use case with a simple line. For
relationships among use cases, use arrows labeled either "uses" or "extends." A "uses"
relationship indicates that one use case is needed by another in order to perform a task.
An "extends" relationship indicates alternative options under a certain use case.
2. CLASS DI AGRAM
Class diagram are used to describe the type of objects and their relationship by
providing a static, structural view of a system. Class diagrams show the classes of the
system, their interrelationships (including inheritance, aggregation, and association), and
the operations and attributes of the classes. Class diagrams are used for a wide variety of
purposes, including both conceptual/domain modeling and detailed design modeling.
Basic ClassDiagram Symbolsand Notations
1. Classes
The classes are represented with rectangles divided into compartments.
Place the name of the class in the first partition (centered, bolded, and capitalized), listthe attributes in the second partition, and write operations into the third.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
8/20
2. ActiveClassActive classes initiate and control the flow of activity, while
passive classes store data and serve other classes. Illustrate active classes with a thicker
border.
3. VisibilityUse of the visibility markers to signify who can access the information
contained within a class. Private visibility hides information from anything outside the
class partition. Public visibility allows all other classes to view the marked information.
Protected visibility allows child classes to access information they inherited from a parent
class.
4.Associations
Associations represent static relationships between classes. Place
association names above, on, or below the association line. Use a filled arrow to indicate
the direction of the relationship. Place roles near the end of an association. Roles
represent the way the two classes see each other.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
9/20
5. M ultiplicity (Cardinality)
Place multiplicity notations near the ends of an association. These
symbols indicate the number of instances of one class linked to one instance of the other
class. For example, one company will have one or more employees, but each employee
works for one company only.
6. ConstraintIt is a semantic relationship among model elements that specifies conditions
and proportions that must be maintained as true; otherwise the system describes model is
invalid. The constraints should be placed inside curly braces {}.
Simple Constraint
Complex Constraint
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
10/20
7. Composition and AggregationComposition is a special type of aggregation that
denotes a strong ownership between Class A, the whole, and Class B, its part. Illustrate
composition with a filled diamond.
Use a hollow diamond to represent a simple aggregation relationship, in which the
"whole" class plays a more important role than the "part" class, but the two classes are
not dependent on each other. The diamond end in both a composition and aggregation
relationship points toward the "whole" class or the aggregate.
8.Generalization
Generalization is another name for inheritance or an "is a" relationship. It
refers to a relationship between two classes where one class is a specialized version of
another. For example, Honda is a type of car. So the class Honda would have a
generalization relationship with the class car.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
11/20
3. SEQUENCE DI AGRAMSequence 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..
Basic Sequence Diagram Symbolsand Notations
In a Sequence diagram, classes and actors are listed as columns, with vertical
lifelines indicating the lifetime of the object over time.
1. ObjectObjects 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.
2. 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.
3. LifelineThe Lifeline identifies the existence of the object over time. The notation for a
Lifeline is a vertical dotted line extending from an object.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
12/20
4. ActivationActivations, modeled as rectangular boxes on the lifeline, indicate when the
object is performing an action.
5. M essageMessages, modeled as horizontal arrows between Activations, indicate the
communications between objects.
Various message types for Sequence diagrams
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
13/20
6. Destroying Objects
Objects can be terminated early using an arrow labeled
"< < destroy > >" that points to an X.
7. LoopsA repetition or loop within a sequence diagram is depicted as a rectangle. Place
the condition for exiting the loop at the bottom left corner in square brackets [ ].
4. COLLABORATION DIAGRAMA collaboration diagram is an interaction diagram that
emphasizes the structural organization of the objects that send and receive messages. It is
crossed between a symbol diagram and sequence diagram. The numbered arrows show
the movement of messages.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
14/20
Basic collaboration Diagram Symbolsand Notations
1. Classroles
Class roles describe how objects behave. Use the UML object symbol to
illustrate class roles, but don't list object attributes.
2. Association roles
Association roles describe how an association will behave given a
particular situation. You can draw association roles using simple lines labeled with
stereotypes.
3. M essagesUnlike sequence diagrams, collaboration diagrams do not have an explicit
way to denote time and instead number messages in order of execution. Sequence
numbering can become nested using the Dewey decimal system. For example, nested
messages under the first message are labeled 1.1, 1.2, 1.3, and so on. The condition for a
message is usually placed in square brackets immediately following the sequence
number. Use a * after the sequence number to indicate a loop.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
15/20
5. STATE DIAGRAM
The State chart diagram describes the behavior of a single object class, especially
if the classes illustrate significant dynamic behavior. State chart / state transition diagram
for those types of classes. It shows the a life history of a given class, the events that
causes a transition from one state to another, and the action that results from a state
change.
States are represents as rounded rectangles (rectangles with smooth
edges); each state has a unique identifying name.
A state may contains three compartment shows the name of the state, the
optional state variables and action performed.
An object is not always in the same state at all times, and an object cannot
be in an unknown or undefined state.
Elementsof State Chart Diagram
1. Object StateObject State is a state of an object at given point in time
2. Stateof Object with three compartments
3. I nitial State
4. Final state
Object State
State Variables
Activities
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
16/20
5. TransitionTransition occurs when dynamic conditions evolve or objects change
their state by following the rules specified in the state machine associated
to their classes. State chart diagrams are directed graph. State are linked
via unidirectional connections called transitions.
6. ACTI VIT Y DIAGRAM
Activity diagrams are used to document workflows in a system,
from the business level down to the operational level. When looking at an Activity
diagram, you'll notice elements from State diagrams. In fact, the 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.
Basic Activity Diagram Symbolsand Notations
1. Activity StatesActivity states mark an action by an object. The notations for these states
are rounded rectangles, the same notation as found in State chart diagrams.
2. TransitionWhen an Activity State is completed, processing moves to another
Activity State. Transitions are used to mark this movement. Transitions are modeled
using arrows.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
17/20
3. Swim laneSwim 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.
4. I nitial StateThe 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.
5. Final StateFinal States mark the end of the modeled workflow. There can be multiple
Final States on a diagram, and these states are modeled using a solid circle surrounded by
another circle.
6. Synchronization BarActivities often can be done in parallel. To split processing
("fork"), or to resume processing when multiple activities have been completed ("join"),
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
18/20
Synchronization Bars are used. These are modeled as solid rectangles, with multiple
transitions going in and/or out.
7. Branching
A diamond represents a decision with alternate paths. The outgoing alternates
should be labeled with a condition or guard expression. You can also label one of the
paths "else."
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
19/20
6. COMPONENT DIAGRAMComponent diagrams fall under the category of an
implementation diagram, a kind of diagram that models the implementation and
deployment of the system. A Component Diagram, in particular, is used to describe the
dependencies between various software components such as the dependency between
executable files and source files. This information is similar to that within make files,
which describe source code dependencies and can be used to properly compile an
application.
Basic component Diagram Symbolsand Notations
1. ComponentA component represents a software entity in a system. Examples include
source code files, programs, documents, and resource files. A component is represented
using a rectangular box, with two rectangles protruding from the left side, as seen in the
image to the right.
2. DependencyA Dependency is used to model the relationship between two components.
The notation for a dependency relationship is a dotted arrow, pointing from a component
to the component it depends on.
Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.
http://www.alientools.com/http://www.alientools.com/ -
8/4/2019 Se Lab Cycle
20/20
3. I nterfaceAn interface describes a group of operations used or created by
components.
8. DEPLOYM ENT DI AGRAM
The Deployment diagram describes the run-time architecture of
processors, devices and the software components. It describes the physical topology
of the system and its structure. It specifies which component and logical elements
(class, object and collaborations) are executed in the node (system).
Nodes are Physical objects or device such computer, printers, card readers and
communication devices and so on. A node is drawn as a three dimensional cube with
names inside it.
The Deployment diagram shows
The Physical relationship among software and hardware
components in the delivered system
A good model to show how components and objects are routed and
move around in the distributed system.
The configuration of run-time processing elements and the
software components processes and objects that live on them.
Prepared by: RAMESH KUMAR.P, Sr.Lecturer, Dept CSE, VRSEC.