Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
11 views

Software Engineering Labnotes

Uploaded by

pramilarecd
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Software Engineering Labnotes

Uploaded by

pramilarecd
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 63

CONTENTS

S.No Date Title of the Experiment Page No. Remarks

1
Write a Problem Statement to define a
title of the project with bounded scope of
project
2
Select relevant process model to define
activities and related task set for assigned
project
3
Prepare broad SRS (Software
Requirement Specification) for the above
selected projects
4
Prepare USE Cases and Draw Use Case
Diagram using modelling Tool
5
Develop the activity diagram to represent
flow from one activity to another for
software development
6
Develop data Designs using DFD
Decision Table & ER Diagram
7
Draw class diagram, sequence diagram,
Collaboration Diagram, State Transition
Diagram for the assigned project
8
Write Test Cases to Validate
requirements of assigned project from
SRS Document
9
Evaluate Size of the project using
function point metric for the assigned
project
10
Estimate cost of the project using
COCOMO and COCOCMOII for the
assigned project
11
Use CPM/PERT for scheduling the
assigned project

2
Ex. No : 1
Date :

Aim: Write a Problem Statement to define a title of the project with bounded scope of project

Description:
A software requirements specification (SRS) is a document that captures complete
description about how the system is expected to perform. It is usually signed off at the end of
requirements engineering phase. Software requirements specification establishes the basis for
an agreement between customers and contractors or suppliers (in market-driven projects,
these roles may be played by the marketing and development divisions) on what the software
product is to do as well as what it is not expected to do.
Pre-experiment Questions:
1. What is SRS?
2. Differentiate b/w Software Specification and System Specifications?
Procedure:
Step 1:
1. Introduction Identify the product whose software requirements are specified in this
document, including the revision or release number. Describe the scope of the product
that is covered by this SRS, particularly if this SRS describes only part of the system or
a single subsystem.
2. Intended Audience and Reading Suggestions
Describe the different types of reader that the document is intended for, such as
developers, project managers, marketing staff, users, testers, and documentation
writers. Describe what the rest of this SRS contains and how it is organized. Project
Scope

Provide a short description of the software being specified and its purpose, including
relevant benefits, objectives, and goals. Relate the software to corporate goals or business
strategies. If a separate vision and scope document is available. Refer to it rather than
duplicating its contents here.

3
Step2:
1. Product Perspective
Describe the content and origin of the product being specified in this SRS. For
example, state whether this product is a follow-on member of a product family, a
replacement for certain existing systems, or a new, self-contained product.
Features
Summarize the major features the product contains or the significant functions that it
performs or lets the user perform. Only a high level summary is needed here.
Organize the functions to make them understandable to any reader of the SRS.
User Classes and Characteristics
Identify the various user classes that you anticipate will use this product. User classes
may be differentiated based on frequency of use, subset of product functions used,
technical expertise, security or privilege levels, educational level, or experience.
Describe the pertinent characteristics of each user class.
Operating Environment
Describe the environment in which the software will operate, including the hardware
platform, operating system and versions, and any other software components or
applications with which it must peacefully coexist.

2. Design and Implementation Constraints


Describe any items or issues that will limit the options available to the developers.
These might include: corporate or regulatory poloies; hardware limitations(timing
requirements, memory requirements); interfaces to other applications; specific
technologies, tools, and databases to be used; parallel operations; language
requirements; communications protocols; security considerations; design conventions
or programming standards).

Step 3:
1. System Features
This template illustrates organizing the functional requirements for the product by
system features, the major services provided by the product. You may prefer to

4
organize this section by use case, mode of operation, user class, object class,
functional hierarchy, or combinations of these, whether makes the most logical sense
for your product.

1.1. System Feature 1


Don’t really say “System Feature 1.”State the feature name in just a few words.

1.1.1. Description and Priority


Provide a short description of the feature and indicate whether it is of High,
Medium, or Low priority. You could also include specific priority component
ratings, such as benefit, penalty, cost.
Stimulus/Response Sequences
List the sequences of user actions and system responses that stimulate the
behavior defined for this feature. These will correspond to the dialog elements
associated with use cases.

1.1.2. Functional Requirements


Itemize the detailed functional requirements associated with this feature. These are the
software capabilities that must be present in order for the user to carry out the services
provided by the feature, or to execute the use case, include how the product should
respond to anticipated error condition or invalid inputs. Requirements should be
concise, compete, unambiguous, verifiable, and necessary.
1.2 System Feature 2 (and so on)

Step 4:
1. External Interface Requirements

1.1. User Interfaces

Describe the logical characteristics of each interface between the software


product and the users. This may include sample screen images, any GUI

5
standards or product family style guides that are to be followed, screen layout
constraints, standard buttons and function (e.g. ,help)that will appear on every
screen, keyboard shortcuts, error message display standards, and so on.
1.2. Hardware Interfaces
Describe the logical and physical characteristics of each interface between
the software product and the hardware components of the system. This may
include the supported device types, the nature of the data and control
interactions between the software and the hardware, and communication
protocols to be used.

1.3. Software Interfaces

Describe the connections between this product and other specific software
components (name and version), including databases , operating systems, tools,
libraries, and integrated commercial components. Identify the data items or
messages coming into the system and going out and describe the purpose of
each. Describe the services needed and the nature of communications.
Communications Interfaces

Describe the requirements associated with any communications functions


required by this product, including e-mail, web browser, and network saver
communications protocols. Electronic forms, and so on.

2. Nonfunctional Requirements

2.1 Performance Requirements

There are performance requirements for the product under various


circumstances, state them here and explain their rationale, to help the
developers understand the intent and make suitable design choices.

Specify the timing relationships for real time systems. Make such
requirements as specific as possible.

6
2.2 Safety Requirements

Specify thaw requirements that are concerned with possible loss, damage, or
harm that could result from the use of the product. Define any safeguards or
actions that must be taken, as well as actions that must be prevented.

2.3 Security Requirements

Any requirements regarding security or privacy issues surrounding use of the


product or protection of the data used or created by the product. Define any
user identity authentication requirements.

Software Quality Attributes


Specify any additional quality characteristics for the product that will be important to either
the customers or the developers. Some to consider are adaptability, availability, correctness,
flexibility, interoperability, maintainability, portability, reliability, reusability, robustness,
testability, and usability.

Post-experiment Questions:
1. What are the characteristics of good SRS?
2. What should the SRS addres

7
Ex.No: 2
Date :

Aim: Select relevant process model to define activities and related task set for assigned project
Description:

Enter and leave the system? Data analysis attempts to answer four specific questions:

What processes make up a system?

What data are used in each process?

What data are?

What data?

Data drive business activities and can trigger events (e.g. new sales order data) or be
processed to provide information about the activity. Data flow analysis. as the name suggests,
follows the flow of data through business processes and determines how organization
objectives are accomplished. In the course of handling transactions and completing tasks, data
are input, processed. Stored, retrieved, met changed and stored output. Data flow analysis
studies the use of data in each activity and documents the findings in data flow diagrams,
graphically showing the relation between processes and data.

Pre-experiment Questions:
1. What is DFD?
2. What are the types of DFD’s?

Procedure:

Physical and Logical DFDs

There are two types of data flow diagrams, namely physical data flow diagrams and
logical data flow diagrams and it is important to distinguish clearly between the two:
Physical Data Flow Diagrams
An implementation-dependent view of the current system, showing what tasks are carried out
and how they are performed. Physical characteristics can include: Names of people,

8
Form and document names or numbers Names of departments, Master and transaction files,
Equipment and devices used as shown in Fig. 2.1

Logical Data Flow Diagrams

An implementation-independent view of the system, focusing on the flow of data between


processes without regard for the specific devices, storage locations or people in the system.
The physical characteristics listed above for physical data flow diagrams will not be
specified.

Fig. 2.1 DFD

Data Flow Diagram (DFD)

The DFD (also known as a bubble chart) is a hierarchical graphical model of a system that
shows the different processing activities or functions that the system performs and the data
interchange among these functions. Each function is considered as a processing station (or
process) that consumes some input data and produces some output data. The system is
represented in terms of the input data to the system. Various processing carried out on these
data, and the output data generated by the system. A DFD model uses a very limited number
of primitive symbols (as shown in figure below) to represent the functions performed by a
system and the data flow among these functions.

9
Fig. 2.2 DFD

Balancing a DFD
The data that flow into or out of a bubble must match the data flow at the next level of DFD.
This is known as balancing a DFD. The concept of balancing a DFD has been illustrated in
figure below. In the level 1 of the DFD as shown in Fig. 2.3, data 0: the contents inside the
bracket represent optional data which may or may not appear. E.g. a+ (b) represents either a
occurs or a+b occurs.{}: represents iterative data definition, e.g.
{ name}5 represents five name data. {name}* represents zero or more instances of name data.
Items dl and d3 flow out of the bubble 0.1 and the data item d2 flows P1O. I. In the next level,

bubble 0.1 is decomposed. The d23 flow out of the level 2 diagram and d2 flows as shown in
Fig. 2.4

Fig. 2.3 Level 1 DFD

10
Fig. 2.4 Level 2 DFD

DFD model of a system


A DFD model of a system graphically depicts the transformation of the data input to the
system to the final result through a hierarchy of levels. A DFD starts with the most abstract
definition of the system (lowest level) and at each higher level. DFD, more details are
successively introduced. To develop a higher-level DFD model, processes are decomposed

input data to these functions and the data output by these functions and represent them
appropriately in the diagram.

If a system has more than 7 high- level functional requirements then some of the related
requirements have to be combined and represented in the form of a bubble in the level I DFD.
Such a bubble can be split in the lower DFD levels. If a system has less than three high-level
functional requirements then some of them need to be split into their sub- functions so that
we have roughly about 5 to 7 bubbles on the diagram.

Decomposition:-
Each bubble in the DFD represents a function performed by the system. The bubbles are
decomposed into sub-functions at the successive levels of the DFD.
Decomposition of a bubble is also known as factoring or exploding a bubble. Each bubble at any
level of DFD is usually decomposed to anything between 3 to 7 bubbles. Too few bubbles at any
level make that level superfluous. For example, if a bubble is decomposed to just one bubble or
two bubbles, then this decomposition becomes redundant. Also, too many bubbles, i.e. more than
7 bubbles at any level of a DFD makes the DFD model hard to understand. Decomposition of a
bubble should be carried on until a level is reached at which the function

11
of the bubble can be described using a simple algorithm.

Numbering of Bubbles:-
It is necessary to number the different bubbles occurring in the DFD. These numbers help in
uniquely identifying any bubble in the DFD by its bubble number. The bubble at the context
level is usually assigned the number 0 to indicate that it is the 0 level DFD. Bubbles at level 1
are numbered, 0.1, 0.2, 0.3, etc, etc. When a bubble numbered x is decomposed, its children
bubble are numbered x.1, xi, x.3, etc. In this numbering scheme, by looking at the number of
a bubble we can unambiguously determine its level, its ancestors, and its successors.

Example:-
Supermarket needs to develop the following software to encourage regular customers.
For this, the customer needs to supply his/her residence address, telephone number, and the
driving license number. Each customer who registers for this scheme is assigned a unique
customer number (CN) by the computer. A customer can present his CN to the check out
staff when he makes any purchase. In this case, the value of his purchase is credited against
his CN. At the end of each year, the supermarket intends to award surprise gifts to 10
customers who make the highest total purchase over the year. Also, it intends to award a 22
carat gold coin to every customer whose purchase exceeded Rs.10,000. The entries against
the CN are the reset on the day of every year after the prize winners' lists are generated as
shown in Fig. 2.5, Fig. 2.6 and Fig. 2.7.

12
Fig. 2.5 Context diagram for supermarket problem

Fig. 2.6 Level-1 Diagram of supermarket problem

Fig. 2.7 Level-2 Diagram of supermarket problem

Post-Experiment Questions:
1. What are DFD components?
2. Differentiate level-0, level-1 and level-2 DFDs.

13
Ex.No: 3
Date :

Aim: Prepare broad SRS (Software Requirement Specification) for the above selected projects

Description:

To model a system the most important aspect is to capture the dynamic behavior. To clarify
a bit in details, dynamic behavior means the behavior of the system when it is running
/operating.

So 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 dynamic
nature and use case diagram is one of them. Now as we have to discuss that the use case
diagram is dynamic in nature there should be some internal or external factors for making the
interaction.

These internal and external agents are known as actors. So use case diagrams are consists of
actors, use cases and their relationships. The diagram is used to model the system/subsystem
of an application. A single use case diagram captures a particular functionality of a system.

So to model the entire system numbers of use case diagrams are used.

Pre Experiment Questions:

1. What are functional requirements?


2. What is USE CASE Diagram?

Procedure:
The steps are as follows:
Step1. Right Use Case Diagram on Diagram Nevigator and select New Use Case Diagram
from the pop-up menu as shown in Fig. 3.1.

14
Fig. 3.1 Step1 of Use Case Model
Step2.

Enter name for the newly created use case diagram in the text field of pop-up box on the top
left corner as shown in Fig. 3.2.

Fig. 3.2 Step2 of Use Case Model

Step 3:

Drawing a system

To create a system, select System on the diagram toolbar and then click it on the
diagram pane. Finally. name the newly created system when it is created as shown in
Fig. 3.3.

15
Fig. 3.3 Step3 of Use Case Model
Step 4:
Drawing an actor

To draw an actor, select Actor on the diagram toolbar and then click it on the diagram
pane. Finally. name the newly created actor when it is created

Step 5:

Drawing a use case

Besides creating a use case through diagram toolbar, you can also create it through resource
icon.
Mow the mouse over a shape and press a resource icon that can create use case. Drag it and
then release the mouse button until it reaches to your preferred place. The source shape and
the newly created use case are connected. Finally, name the newly created use case.

Step 6:
Create a use case through resource icon
Besides creating a use case through diagram toolbar, you can also create it through resource
icon. Mow the mouse over a shape and press a resource icon that can create use case. Drag it
and then release the mouse button until it reaches to your preferred place. The source shape
and the newly created use case are connected. Finally, name the newly created use case.

Step 7:

Resize a use case


16
To create an extend relationship, move the mouse over a use case and press its resource icon
Extend-> Use Case. Drag it to your preferred place and then release the mouse button. The
use case with extension points and a newly created use case are connected. After you name
the newly created use Pop up dialog box will ask whether you want the extension point to
follow the name of the use case. Click Yes if you want it to do so: click NO if you want to
enter another name for extension point

Step 8:
Create an extend relationship

Drawing <<Include>> relationship. To create an include relationship. mouse over a use case
and press its resource icon Include -> Use Case. Drag it to your preferred place and then
release the mouse button. A new use case together with an include relationship is created.
Finally, name the newly created use case as shown in Fig. 3.8.

Fig. 3.4 Step8 of Use Case Model

Step 9:
Include relationship is created

Structuring use cases with package. You can organize use cases with package when there are
many of them on the diagram. Select Package on the diagram toolbar (under Common
category) as shown in Fig. 3.9.

Fig. 3.5 Step9 of Use Case Model


Step 10:
Create a package

17
Drag the mouse to create a package surrounding those use cases .
Surround use cases with package
Finally, name the package .
Step 12:

Name the package


Assigning IDs to actors/Use cases
You may assign IDs to actors and use cases. By default. IDs are assigned with the order of
object creation, starting from one onwards.
Defining the format of ID
To define the format of ID. select Tools > Options from the main menu to unfold the Options
dialog box. Select Diagramming from the list on the left hand side and select the Use Case
Diagram tab on the right hand side.The format of ID consists of prefix. number of digits and
suffix .
Step 13:
Use Case Diagram tab
The description of options for ID generator format is shown below. Option Description
Prefix The prefix you enter in Prefix text field will be inserted before the number.

Num of The number of digits for the number. For example. when digit is 3. ID "1"
will become

Digits.

Suffix The suffix you enter in Suffix text field will be inserted behind the number. Options for
formatting ID
Showing ID on diagram

By default, ID is just a text property. It usually doesn't appear on diagram. However, you can
make it shown within a use case.
Right click on the diagram background, select Presentation Options and the specific model
element display option from the pop-up menu as shown in Fig. 3.13.

18
Fig. 3.6 Step13 of Use Case Model
Step 14:

Show ID on diagram
As a result, the use case is displayed with ID as shown in Fig. 3.14a.

Fig. 3.7 Step14 A use case with ID displayed

NOTE: The feature of showing ID does only support for use case, but not for actor.
ID assignment
There are several ways that you can assign an ID to a model element, including:
Through the specification dialog box (Right click on the selected model element and select
Open Specification.. from the pop-up menu)
Through the Properly Pane
Drawing business use case
Right click on a use case and select Model Element Properties > Business Model from the
pop-up menu
19
Step 15:
1. Click Business model
2. After selected , an extra slash will be shown on the left edge of the use case as shown
in Fig. 3.15.

Fig. 3.8 Step15 Business Model


And Finally the Use Case Diagram is ready.
Post Experiment Questions:

1. How to capture functional requirements through USE CASE Diagram?


2. Where to use the extends relationship in the USE CASE Diagram?

20
Ex.No: 4
Date :

Aim: Prepare USE Cases and Draw Use Case Diagram using modelling Tool
Description:

From the name Interaction it is clear that the diagram is used to describe some type of
interactions among the different elements in the model. So this interaction is a part of
dynamic behaviour of the system.
This interactive behaviour is represented in UML by two diagrams known as Sequence
diagram and Collaboration diagram. The basic purposes of both the diagrams are similar.
Sequence diagram emphasizes on time sequence of messages and collaboration diagram
emphasizes on the structural organization of the objects that send and receive messages.

Pre Experiment Questions:

1. What is dynamic view of an application?


2. Describe the features of sequance Diagram?

Procedure:
A sequence diagram is used primarily to show the interactions between objects that are
represented as lifelines in a sequential order.

Step 1:

Right click Sequence diagram on Diagram Navigator and select New Sequence
Diagram from the pop-up menu to create a sequence diagram as shown in Fig. 4.1.

21
Fig. 4.1 Step1 of Sequence Diagram

Step 2:

Enter name for the newly created sequence diagram in the text field of pop-up box
on the top left corner. Creating actor
To create actor, click Actor on the diagram toolbar and then click on the diagram as shown
in Fig. 4.2a.

Fig. 4.2a Step2 of Sequence Diagram for creating Actor

Creating lifeline
To create lifeline, you can click LifeLine on the diagram toolbar and then click on the diagram.
Alternatively, a much quicker and more efficient way is to use the resource-centric interface.
Click on the Message -> LifeLine resource beside an actor/lifeline and drag as shown in Fig.
4.2b.
22
Fig. 4.2b Step2 of Sequence Diagram for creating Lifeline

Step 3:
Move the mouse to empty space of the diagram and then release the mouse button. A new lifeline
will be created and connected to the actor/lifeline with a message as shown in Fig. 4.3a.

Fig. 4.3a Step3 of Sequence Diagram for connecting actor/lifeline


Auto extending activation
When create message between lifelines/actors. activation will be automatically extended as
shown in Fig. 4.3b.

23
Fig. 4.3b Step3 of Sequence Diagram for extending activation

Step 4:

Using sweeper and magnet to manage sequence diagram. Sweeper helps you to move shapes
aside to make room for new shapes or connectors. To use sweeper, click Sweeper on the
diagram toolbar (Under the tool category) as shown in Fig. 4.4a.

Fig. 4.4 Step4 of Sequence Diagram using sweeper and magnet

Step 5:
You can also use magnet to pull shapes together. To use magnet, click Magnet on the diagram
toolbar ( under the Tools category) as shown in Fig. 4.5.
The picture below shows when drag the magnet upwards, shapes below dragged position are
pulled upwards.

24
Fig. 4.5 Step5 of Sequence Diagram

Step 6:
Creating combined fragment for messages

To create combined fragment to cover messages, select the messages. right-click on the

selection and select Create Combined Fragment. and then select a combined fragment type
(e.g. loop) from the popup menu as shown in Fig. 4.6.
Fig. 4.6 Step6 of Sequence Diagram
25
Step 7:

A combined fragment of selected type will be created to cover the messages as shown in Fig.
4.7.

Fig. 4.7 Step7 of Sequence Diagram

Step 8:
Adding/removing covered lifelines
After you've created a combined fragment on the messages. you can add or remove the
covered lifelines. Move the mouse over the combined fragment and select Add/Remove
Covered Lifeline... from the pop-up menu as shown in Fig. 4.8

Fig. 4.8(a) Step7 of Sequence Diagram

26
In the Add/Remove Covered Lifelines dialog box, check the lifeline you want to cover or
uncheck the lifeline you don’t want to cover. Click OK button.
As a result, the area of covered lifelines is extended or narrowed down according to your
selection as shown in Fig. 4.8b.

Fig. 4.8b Step8 of Sequence Diagram for extending add/remove lifelines

Managing Operands
After you've created a combined fragment on the messages, you can also add or remove
operand(s).Move the mouse over the combined fragment and select Operand > Manage
Operands... from the pop-up menu as shown in Fig. 4.8c.

Fig. 4.8c Step8 of Sequence Diagram for managing Operands

27
Step 9:

To remove an operand , select the target operand from Operands and click Remove button,
1. Click Ok button.

Fig. 4.9 Step9 of Sequence Diagram for removing Operand


2. Otherwise, click Add button to add a new operand and then name it. Click OK button.
In sequence diagram, an editor appears at the bottom of diagram by default, which
enables you to construct sequence diagram with the buttons there .
There are two panes, Lifelines and Messages. The Lifelines pane enables you to create
different kinds of actors and lifelines.

Step 10:
Buttons in Lifeline Panes

Editing Messages

The Message pane enables you to connect with various kind of messages

Buttons in Messages pane

Expanding and collapsing the editor


To hide the editor.click on the down arrow button that appears at the bar on top of the quick
editor. To expand, click on the up arrow button as shown in Fig. 4.10c.

28
Fig. 4.10 Step10 Hide editor

Collapse the quick editor

Setting different ways of numbering sequence messages


You are able to set the way of numbering sequence messages either on diagram base or frame
base.

Diagram-based sequence message


Right click on the diagram's background, select Sequence Number and then either
Single Levelor Nested Level from the pop-up menu as shown in Fig. 4.10

Fig. 4.10 Step10 for Diagram based Sequence Message

Step 11:

If you choose Single Level. all sequence messages will be ordered with integers on diagram
base. On the other hand, if you choose Nested Level. all sequence messages will be ordered
with decimal place on diagram base.

29
Fig. 4.11a Step11 of Sequence Diagram
Right click on the diagram's background. select Sequence Number and then either Fnune-
based Single Level or Frame-based Nested Level from the pop-up menu as shown in Fig.
4.11a and Fig. 4.11b.

Fig. 4.11b Step11 of Sequence Diagram

30
When you set the way of numbering sequence messages on frame base, the sequence
messages in frame will restart numbering sequence message since they are independent and
ignore the way of numbering sequence message outside the frame as shown in Fig. 4.11c.

Fig. 4.11c Step11 of Sequence Diagram

Post Experiment Questions:

1. How to capture dynamic view of an application using SEQUENCE Diagram?


2. Where to draw the lifelines between actors in the diagram?

31
Ex.No: 5
Date :

Aim: Develop the activity diagram to represent flow from one activity to another for software
development

Description:

The class diagram is a static diagram. It represents the static view of an application. Class
diagram is not only used for visualizing, describing and documenting different aspects of a
system but also for constructing executable code of the software application.

The class diagram describes the attributes and operations of a class and also the constraints
imposed on the system. The class diagrams are widely used in the modelling of object
oriented systems because they are the only UML diagrams which can be mapped directly
with object oriented languages.

The class diagram shows a collection of classes, interfaces, associations, collaborations and
constraints. It is also known as a structural diagram.

Pre Experiment Questions:

1. What is static view of an application?


2. What is CLASS Diagram?

Procedure:

Step 1:
Right click Class Diagram on Diagram Navigator and select New Class Diagram
from the pop-up menu to create a clam diagram as shown in Fig 5.1.

32
Fig. 5.1 Step1 of Class Diagram

Step 2:
Creating class

To create class, click Class on the diagram toolbar and then click on the diagram. Class
will be created as shown in Fig 5.2.

Fig.5.2 of step2 creating class

To create association from class, click the Association •> Class resource beside it and
drag. Drag to empty space of the diagram to create a new class, or drag to an existing class
to connect to it. Release the mouse button to create the association.

33
To create aggregation, use the Aggregation -> Class resource instead.

Step 3:

To align multiplicity of an association end, right-click near the association end, select
Multiplicityfrom the popup menu and then select a multiplicity as shown in Fig 5.3a.

Fig. 5.3a Step3 of Class Diagram

To show the direction of an association, right click on it and select Presentation


Options >Show Direction from the pop-up menu as shown in Fig 5.3b.

34
Step 4:
The direction arrow is beside the association

Creating generalization
To create generalization from class, click the Generalization -> Class resource beside it and
drag as shown in Fig 5.4a.

Fig. 5.4a Step4 of Class Diagram for Generalization


Drag to empty space of the diagram to create a new class, or drag to an existing class to
connect to it. Release the mouse button to create the generalization.

Creating operation:

Similar to creating attribute, you can press the Enter key to create multiple operations
continuously. Drag-and-Drop reordering, copying and moving of class members
To reorder a class member, select it and drag within the compartment, you will see a thick
black line appears indicating where the class member will be placed.

Release the mouse button. the class member will he reordered

35
To copy a class member, select it and drag to the target class while keep pressing the Ctrl key,
you will see a thick black line appears indicating where the class member will be placed. A
plus sign is shown beside the mouse cursor indicating this is a copy action

Release the mouse button. the class member will he copied

To move a class member, select it and drag to the target class, you will see a thick black line
appears indicating where the class member will be placed. Unlike copy, do not press the Ctrl
key when drag, the mouse cursor without the plus sign indicates this is a move action.

36
Release the mouse button the class member will be moved.

Model name completion for class

The model name completion feature enables quick creation of multiple views for the
same class model. When create or rename class, the list of classes is shown.

Type text to filter classes in the list

Press up or down key to select class in the list, press Enter to confirm. Upon selecting an
existing class, all class members and relationships are shown immediately.

37
Step 5:
Continue to complete the diagram as shown in Fig 5.5.

Fig. 5.5 Step5 of Class Diagram

Generalization set

A generalization set defines a particular set of generalization relationships that describe the
way in which a general classifier (or superclass) may be divided using specific subtypes.
To define a generalization set, select the generalizations to include, right click and select
Generalization set > Create Generalization Set...from the popup menu.
38
Step 6:
Name the set in the Manage Generalization Sets dialog box, and confirm by pressing OK as
shown in Fig 5.6.

Fig. 5.6 Step6 of Class Diagram


The selected generalizations are grouped. Adjust the connector to make the diagram tidy.

39
Repeat the steps for other generalizations

Post Experiment Questions:

1. How to capture static view of an application using CLASS Diagram?


2. Where to define packages in the CLASS diagram?

40
Ex.No: 6
Date :

Aim: Develop data Designs using DFD Decision Table & ER Diagram

Description: A collaboration diagram, also called a communication diagram or interaction


diagram, is an illustration of the relationships and interactions among software objects in the
Unified Modeling Language (UML). Collaboration diagrams are best suited to the portrayal
of simple interactions among relatively small numbers of objects. As the number of objects
and messages grow, a collaboration diagram can become difficult .A collaboration diagram
resembles a flowchart that portrays the roles, functionality and behavior of individual objects
as well as the overall operation of the system in real time. Objects are shown as rectangles
with naming labels inside. These labels are preceded by colons and may be underlined. The
relationships between the objects are shown as lines connecting the rectangles. The messages
between objects are shown as arrows connecting the relevant rectangles along with labels that
define the message sequencing.

Pre Experiment Questions:

1. Explain collaboration diagram?


2. How method call is to be done in collaboration Diagram?

Procedure:

Drawing collaboration diagram

collaboration diagram is a kind of UML Diagram that is designed for illustrating the dynamic
view of the system. It emphasizes the structural organization of the objects' send and receive
messages.

Creating collaboration diagram

Perform the steps below to create a UML communication diagram in Visual Paradigm.
Select Diagram > New from the application toolbar.

1. In the New Diagram window, select Communication Diagram.

41
2. Click Next.

Enter the diagram name and description. The Location field enables you to select a model to
store the diagram.

3. Click OK.

Step 1: Creating ACTOR

To create an actor, click Actor on the diagram toolbar and then click on the diagram as
shown in Fig. 6.1

Fig. 6.1 Create actor

Step 2: Creating lifeline

To create lifeline, you can click LifeLine on the diagram toolbar and then click on the
diagram.

Alternatively, a much quicker and more efficient way is to use Resource Catalog as shown in
Fig. 6.2.

1. Move your mouse pointer over the source lifeline.


2. Press on the Resource Catalog button and drag it out

Fig. 6.2 Using Resource Catalog


3. Release the mouse button at the place where you want the lifeline to be created.

42
4. Select Message -> LifeLine from Resource Catalog as shown in Fig. 6.3.
Fig. 6.3 To create a lifeline

5. A new lifeline will be created and connected to the actor/lifeline with a


message. Enter its name and press Enter to confirm editing.

Step 3: Creating message on link

To create message on link, click its Create Message resource as shown in Fig. 6.4.

Fig. 6.4 Create message on link

Step 4: Editing sequence number of messages

To edit sequence number of messages, for example, to show certain messages are in nested
level of interaction, right-click the diagram and select Reorder Messages... from the pop-up
menu as shown in Fig. 6.5.

Fig. 6.5 Reorder messages

When the collaboration diagram Specification window appears, the Message tab is opened by
default. Double click on the Sequence # cell of a message to edit it. Click OK button to apply

43
the changes.

Post Experiment Questions:


1. Can you generate a collaboration diagram using sequence diagram in UML?
2. How to represent setting a variable's and attribute's value to a specified value?

44
Ex.No: 7
Date :

Aim: Draw class diagram, sequence diagram, Collaboration Diagram, State Transition Diagram for the
assigned project

Description:
A state diagram, also called a state machine diagram or state chart diagram, is an illustration
of the states an object can attain as well as the transitions between those states in the Unified
Modeling Language (UML). In this context, a state defines a stage in the evolution or
behavior of an object, which is a specific entity in a program or the unit of code representing
that entity. State diagrams are useful in all forms of object-oriented programming (OOP)..

State-chart diagram model elements


The common model elements that statechart diagrams contain are:
States
Start and end states
Transitions
Entry, do, and exit actions

A state represents a condition during the life of an object during which it satisfies some
condition or waits for some event. Start and end states represent the beginning or ending of a
process. A state transition is a relationship between two states that indicates when an object
can move the focus of control on to another state once certain conditions are met.
Pre Experiment Questions:
1. What is difference between actions and states?
2. What do you mean by transition in state chart diagram?

Procedure:

Step 1: Creating state machine diagram

Perform the steps below to create a UML state machine diagram in Visual Paradigm.

45
1. Select Diagram > New from the application toolbar.
2. In the New Diagram window, select State Machine Diagram.
3. Click Next.
4. Enter the diagram name and description. The Location field enables you to select
a model to store the diagram.
5. Click OK.

Step 2: Creating states and transitions

After creating a state machine diagram, an initial pseudo state appears by default. You can
create other states by using Resource Catalog.

1. Move your mouse pointer over the source state.


2. Press on the Resource Catalog button and drag it out as shown in Fig. 7.1.

Fig. 7.1 Using Resource Catalog


3. Release the mouse button at the place where you want the state to be created.
4. Select the state to be created from Resource Catalog.
5. A new state will be created and is transited from the source state. Enter its name
and press Enter to confirm editing.

Step 3:Adding region to state

To model substates of a composite state, you need to add one or more regions to it. To add a
region, right-click the state and select Add Horizontal Region from the popup menu as
shown in Fig. 7.2.

46
Fig 7.2 Add region to state

Next, you can draw the substates inside the region.

Step 4: Modeling properties of transition

To model properties of transition such as effect and guard, right-click the transition and select
Open Specification... from the pop-up menu. When the Transition Specification pops out,
you can edit its name, effect and guard. Next, select Create Activity... from the Effect
property as shown in Fig. 7.3.

Fig 7.3 Create Activity from transition

In Activity Specification (Effect) window, change its name and then click OK button to
apply the change.

Click OK in the Transition Specification to close it. The name and effect are shown on the
transition caption. as shown in Fig. 7.4

47
Fig 7.4 Activity diagram
Post Experiment Questions:
1. What is the main usage of state chart diagram?
2. How state chart is different from collaboration Diagram?

48
Ex.No: 8
Date :

Aim: Write Test Cases to Validate requirements of assigned project from SRS Document

Description:
Component diagrams are different in terms of nature and behavior. Component diagrams are
used to model physical aspects of a system. Physical aspects are the elements like
executables, libraries, files, documents etc which resides in a node.
So component diagrams are used to visualize the organization and relationships among
components in a system. These diagrams are also used to make executable systems.
Component diagram is a special kind of diagram in UML. It describes the components used
to make that functionalities. These components are libraries, packages, files etc. So the
purpose of the component diagram can be summarized as:
Visualize the components of a system.
Construct executables by using forward and reverse engineering.
Describe the organization and relationships of the components.

Pre Experiment Questions:

1. Where to use component Diagram?


2. What is its importance in software engineering?
Procedure:

Step 1: Component diagram is a kind of UML diagram. shows the physical aspect of an
object-oriented software system.

Creating component diagram

Perform the steps below to create a UML component diagram in Visual Paradigm.

1. Select Diagram > New from the application toolbar.


2. In the New Diagram window, select Component Diagram.

3. Click Next.
4. Enter the diagram name and description. The Location field enables you to select
a model to store the diagram.
5. Click OK
49
Step 2:

Creating component

To create component in component diagram, click Component on the diagram toolbar and
then click on the diagram as shown in Fig. 8.1.

Fig. 8.1 Create component

A component will be created as shown in Fig. 8.2.

Fig. 8.2 Component created

Step 3: Assigning stereotypes

Right click on the package and select Stereotypes > Edit Stereotypes... from the pop-up
menu as shown in Fig. 8.3.

Fig. 8.3 Assign stereotypes


50
When the Component Specification window is opened, with the Stereotypes tab selected. The list
on the left shows the selectable stereotypes. If the stereotype you want to use is not on the list,
click Edit Stereotypes... button. Click Add... button in the Configure Stereotypes window.
Name the stereotype (e.g. application) in the Stereotype Specification window and then click
OK button to close it. Click OK button in the Configure Stereotypes window. The added
stereotype will then be shown on the list in the Component Specification window. Select it and
click Add Selected button. Finally, click OK button to confirm as shown in Fig.

8.4.

Fig. 8.4 Stereotype Specification


Step 4:Add selected stereotypes

Close the specification window. Stereotypes will be applied to the package.

Creating provided interface

To create provided interface for a component:

1. Move your mouse pointer over the source component.


2. Press on the Resource Catalog button and drag it out.
3. Release the mouse button at the place where you want the interface to be created.
4. Select Realization -> Interface from Resource Catalog. A new interface will be
created and is connected to the source component. Enter its name and press Enter to

51
confirm editing.

Step 5: Creating required interface

To create required interface for a component, just follow the steps described above for
creating provided interface, but change to select Usage-> Interface in Resource Catalog.

Step 6: Creating dependency

To create dependency, click Dependency on the diagram toolbar.

drag from the source shape, move the mouse over the target shape and then release the mouse
button to create the dependency. Continue to complete the diagram as shown in Fig. 8.5.

Fig. 8.5 Completed diagram

Step 7: Showing/hiding attributes in component Per diagram

You can add attributes to a component. To show/hide the attributes for all components in a
diagram:Right click on the background of the component diagram.

1. Select Presentation Options > Component Display Options from the popup menu.
2. Select/De-select Show Attributes to cause attributes to be shown or hidden.

Per component

You can add attributes to a component. To show/hide the attributes for a specific component:

1. Right click on the desired component.


2. Select Presentation Options > Show Attributes Mode from the popup menu.
3. Select Follow Diagram/Show All/Hide All/Customized... from the popup menu. If
you have selected the Customized option, you can select the specific attribute(s) to be
shown or hidden.

52
Step 8: Showing/hiding operations in component Per diagram

You can add operations to a component. To show/hide the operations for all components in a
diagram:

1. Right click on the background of the component diagram.


2. Select Presentation Options > Component Display Options from the popup menu.
3. Select/De-select Show Operations to cause attributes to be shown or hidden.

Per component

You can add operations to a component. To show/hide the operations for a specific
component:Right click on the desired component.

1. Select Presentation Options > Show Operations Mode from the popup menu.
2. Select Follow Diagram/Show All/Hide All/Customized... from the popup menu. If
you have selected the Customized option, you can select the specific operation(s) to
be shown or hidden.

Post Experiment Questions:


1 Difference between class and component diagram?

2. Why to make a component diagram? What is its advantage in Software engineering?

53
Ex.No: 9
Date :

Aim: Evaluate Size of the project using function point metric for the assigned project

Description: Deployment diagram is a structure diagram which shows architecture of the


system as deployment (distribution) of software artifacts to deployment targets. Artifacts
represent concrete elements in the physical world that are the result of a development
process. Deployment target is usually represented by a node which is either hardware device
or some software execution environment. Nodes could be connected through communication
paths to create networked systems of arbitrary complexity.
Deployment diagrams could describe architecture at specification level (also called type
level) or at instance level (similar to class diagrams and object diagrams). Some common
types of deployment diagrams are:
Implementation (manifestation) of components by artifacts,
Specification level deployment diagram,
Instance level deployment diagram,
Network architecture of the system.

Pre- Experiment Questions:


Q:1 What is deployment diagram in software engineering?
Q:2 Explain the term deployment chart?

Procedure:

Deployment is a kind of UML diagram that shows the physical aspects of an object-oriented
system. It also shows the configuration of run time processing nodes and artifacts.

Step 1: Creating deployment diagram

Perform the steps below to create a UML deployment diagram in Visual Paradigm.

1. Select Diagram > New from the application toolbar.

54
2. In the New Diagram window, select Deployment Diagram.
3. Click Next.
4. Enter the diagram name and description. The Location field enables you to select
a model to store the diagram.
5. Click OK.

Step 2: Creating node

To create node in deployment diagram, click Node on the diagram toolbar and then click on
the diagram as shown in Fig. 9.1.

Fig. 9.1 Node selected

Step 3: Creating instance of node

To create instance of node, click Instance Specification on the diagram toolbar and then
click on the diagram as shown in Fig. 9.2.

Fig. 9.2 Create instance specification

Step 4: Selecting classifiers

To specify classifiers for an instance specification, right-click it and select Select Classifier >
Select Classifier.. from the pop-up menu as shown in Fig. 9.3.

Fig. 9.3 Select classifier

When the Instance Specification Specification window pops out, the Classifiers tab is
opened by default. Click Add.. Then, select the classifier(s) in the popup window and click
55
OK. Click OK button to close the specification window. The selected classifiers are assigned
Step 5:Creating link

To create link from instance specification:

1. Move your mouse pointer over the source shape.


2. Press on the Resource Catalog button and drag it out.
3. Release the mouse button at the place where you want the instance specification to
be created.
4. Select Link -> Instance Specification from Resource Catalog.
5. A new instance specification will be created and is connected to the source
shape. Enter its name and press Enter to confirm editing.

Step 6: Creating instance of component

Similar to creating instance of node, you first create a component model element and then
create an instance specification. However, this time assigns a component to the instance
specification as classifier.

Step 7: Creating dependency

To create dependency, click Dependency on the diagram toolbar as shown in Fig. 9.4.

Fig. 9.4 Create dependency

Drag from the source shape, move the mouse over the target shape and then release the
mouse button to create the dependency. Continue to complete the diagram.

Post Experiment Questions


Q: 1 Explain the use of deployment diagram in software & hardware components?
Q: 2 How it is beneficial in software engineering?

56
Ex.No : 10
Date :

Aim: Estimate cost of the project using COCOMO and COCOCMOII for the assigned project

Description: Activity diagrams are mainly used as a flow chart consists of activities
performed by the system. But activity diagram are not exactly a flow chart as they have some
additional capabilities. These additional capabilities include branching, parallel flow, swim
lane etc.

Pre-experimental questions:
Q: 1 What is the basic requirement of activity diagram?
Q: 2 How conditions and constraints define in activity diagram.

Step 1: Creating activity diagram

Perform the steps below to create a UML activity diagram in Visual Paradigm.

1. Select Diagram > New from the application toolbar.


2. In the New Diagram window, select Activity Diagram.
3. Click Next.
4. Enter the diagram name and description.
5. The Location field enables you to select a model to store the diagram.
6. Click OK.

Step 2: Creating swimlane


You can click either Horizontal Swimlane or Vertical Swimlane on the diagram toolbar as
shown in fig.10.1.

Fig.10.1 Create swimlane

57
Double-click the partition name to rename it as shown in fig.10.2

Fig.10.2 Rename partition

Step 3:Inserting partition to swimlane


To insert partition to swimlane, right-click on a partition and select either Insert Partition
Before or Insert Partition After from the pop-up menu as shown in fig.10.3

Fig.10.3 Insert partition to swimlane

A partition is inserted as shown in fig.10.4

Fig.10.4 Partition inserted

Step 4: Creating initial node


Click Initial Node on the diagram toolbar as shown in fig.10.5

Fig.10.5 Create initial node

Click inside the partition to create the initial node there as shown in fig.10.6

Fig.10.6 Initial node created

Step 5: Creating action


1. Move your mouse pointer over the source shape.
58
2. Press on the Resource Catalog button and drag it out as shown in fig.10.7

Fig.10.7 Using Resource Catalog

3. Release the mouse button at the place where you want the action to be created.
Select Control Flow -> Action from Resource Catalog .

5.A new action will be created and is connected to the source shape with a control flow. Enter
its name and press Enter to confirm editing.
Working with scenario
A scenario is a diagram formed by the internal interaction of a sequence of action, modeled
by their sub-diagrams. With scenario, you can produce a diagram which presents an overview
of an execution path in activity diagram, so as to know how user and system communicate
with each other in order to complete the flow.

Step 6:Producing scenario from activity diagram


1. Right click on the activity diagram that contains the flows that you want to produce
a scenario and select Scenarios > Edit Scenarios... from the popup menu as shown
in fig.10.8

Fig.10.8 Edit scenarios

59
2. In the Edit Scenarios window, click Add... button at the bottom left corner.
3. Select a path for generating scenario. Click OK to confirm.
4. Name the scenario. Add description if necessary as shown in fig.10.9

Fig.10.9 Name and describe scenario

Step 7:The actions being involved in the flow are listed in the Path table. For actions that
have sub-diagram(s), pick up the sub-diagram in Diagram column or just create a new one.
Step 8: Click on the arrow beside the Generate button and select the type of diagram of the
scenario.

Post Experimental questions:


Q: 1 Explain the function of fork and join methods in activity diagram.
Q: 2 How conditions and constraints are defined in activity diagram?

60
Ex.No : 11
Date :

Aim: Use CPM/PERT for scheduling the assigned project

Description: UML communication diagrams, like the sequence diagrams - a kind of


interaction diagram, shows how objects interact. A communication diagram is an extension of
object diagram that shows the objects along with the messages that travel from one to
another. In addition to the associations among objects, communication diagram shows the
messages the objects send each other.

Pre-Experimental questions:
Q: 1 What is the basic requirement of drawing a communication diagram?
Q: 2 Illustrate conditions and constraints define in it..

Steps to Draw Communication Diagram?

Communication diagram is a kind of UML diagram that is designed for illustrating the
dynamic view of the system. It emphasizes the structural organization of the objects' send and
receive messages.

Creating communication diagram

Perform the steps below to create a UML communication diagram in Visual Paradigm.

1. Select Diagram > New from the application toolbar.


2. In the New Diagram window, select Communication Diagram.
3. Click Next.
4. Enter the diagram name and description. The Location field enables you to select
a model to store the diagram.
5. Click OK.

61
Creating ACTOR

To create an actor, click Actor on the diagram toolbar and then click on the diagram as
shown in fig.11.1

Fig. 11.1 Create actor

Creating lifeline

To create lifeline, you can click LifeLine on the diagram toolbar and then click on the
diagram.

Alternatively, a much quicker and more efficient way is to use Resource Catalog:

1. Move your mouse pointer over the source lifeline.


2. Press on the Resource Catalog button and drag it out as shown in fig. 11.2

Fig. 11.2 Resource Catalog

3. Release the mouse button at the place where you want the lifeline to be created.
4. Select Message -> LifeLine from Resource Catalog as shown in fig.11.3

Fig. 11.3 To create a lifeline


5. A new lifeline will be created and connected to the actor/lifeline with a message.

62
Enter its name and press Enter to confirm editing as shown in fig.11.4

Fig. 11.4 Lifeline created

Creating message on link

To create message on link, click its Create Message resource as shown in fig.11.5

Fig. 11.5 Create message on link

A message will be created on the link as shown in fig 11.6

Fig. 11.6 Message created on link


Editing sequence number of messages

To edit sequence number of messages, for example, to show certain messages are in nested
level of interaction, right-click the diagram and select Reorder Messages... from the pop-up
menu as shown in fig.11.6

Fig. 11.6 Reorder messages

When the Communication Diagram Specification window appears, the Message tab is
opened by default. Double click on the Sequence # cell of a message to edit it. Click OK
button to apply the changes as shown in fig.11.7

63
Fig. 11.7 Edit sequence number of messages

Post Experimental questions:


Q: 1 Explain the different kind of objects used in collaboration diagram.
Q: 2 How message passing is done in collaboration diagram?

64

You might also like