Lab Manual 6-10

Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

LABORATORY MANUAL

SOFTWARE ENGINEERING WITH


AGILE
&
METHODOLOGY
(AD 403)

IV Semester (AI&DS)

CHAMELI DEVI GROUP OF


INSTITUTIONS, INDORE

CHAMELI DEVI GROUP OF INSTITUTIONS


INDORE (M.P.)
DEPARTMENT OF
Artificial Intelligence & Data Science

CERTIFICATE

This is to certify that Mr./Ms……………………………………………………………… with RGTU Enrollment No.

0832 ..…………………………..has satisfactorily completed the course of experiments in Software Engineering with

Agile Methodology laboratory, as prescribed by Rajiv Gandhi Proudhyogiki Vishwavidhyalaya, Bhopal for IV

Semester of the AI&DS Department during year 2022-23

Signature of
Faculty In-charge
INDEX
Sl. Expt. Name of the Experiment Date of Signature
No. No. Conduction of Faculty-
in-Charge
Develop Software Requirement Specification for Library
1 1 Management System

Case Study Of Waterfall Model & Spiral Model-


2 2

Case Study of RAD Model


3 3

Case Study of Agile Methodology Model


4 4

Study and usage of any Design phase CASE tool


5 5
Design .USE Case & Class diagram for Library Management
6 6
System
Draw Activity Diagram for Employee Management System.
7 7 sequence diagram for Online Exam System

Draw a DFD Diagram For Online shopping System


8 8

Develop test cases for various white box and black box testing
9 9 techniques

Studies about the Software Cost Estimation Model


10 10

EXPT. No. – 6 Design .USE Case & Class diagram for Library Management System

Aim: : To understand the concept of USE Case & Class diagram

Theory:
Use case diagram
Use case diagram is the primary form of system/software requirements for a new software program underdeveloped.
Use cases specify the expected behavior (what), and not the exact method of making it happen (how). Use cases once
specified can be denoted both textual and visual representation (such as UML). A key concept of use case modeli ng is
that it helps us design a system from end user's perspective. It is an effective technique for communicating system
behavior in the user's terms by specifying all externally visible system behavior.
A use case diagram contains four components.
 The boundary, which defines the system of interest in relation to the world around it.
 The actors, usually individuals involved with the system defined according to their roles.
 The use cases, which specify roles, are played by the actors within and around the system.
 The relationships between and among the actors and the use cases.

Viva Question:
1. What is use case?
2. Explain different types of relationship.
3. What is the difference between use case diagram and use case?
4. Explain the term actor in use case diagrams.
5. Explain “include” and “exclude” in Use case diagram.

Theory:
Class diagrams are the main building block in object-oriented modeling. They are used to show the different objects in a
system, their attributes, their operations and the relationships among them.

Fig. 3.1 Class Diagram


Classes in class diagrams are represented by boxes that are partitioned into three:
 The top partition contains the name of the class.
 The middle part contains the class’s attributes.
 The bottom partition shows the possible operations that are associated with the class.
Relationships in Class Diagrams
Relationships in class diagrams include different types of logical connections. The following are such types of logical
connections that are possible in UML:
Association is a broad term that encompasses just about any logical connection or relationship between classes.
Fig. 3.2 Association
Directed Association refers to a directional relationship represented by a line with an arrowhead. The arrowhead
depicts a container-contained directional flow.

Fig. 3.3 Directed Association


Reflexive Association: - This occurs when a class may have multiple functions or responsibilities.

Fig. 3.4 Reflexive Association


Multiplicity is the active logical association when the cardinality of a class in relation to another is being depicted.

Fig. 3.5 Multiplicity


Aggregation refers to the formation of a particular class as a result of one class being aggregated or built as a collection.

Fig. 3.6 Aggregation


Composition: - The composition relationship is very similar to the aggregation relationship with the only difference
being its key purpose of emphasizing the dependence of the contained class to the lifecycle of the container class. That
is, the contained class will be obliterated when the container class is destroyed.
Fig. 3.7 Composition
Inheritance / Generalization refer to a type of relationship wherein one associated class is a child of another by virtue of
assuming the same functionalities of the parent class.

Fig. 3.8 Inheritance / Generalization


Realization denotes the implementation of the functionality defined in one class by another class.

Fig. 3.9 Realization

The following points should be remembered while drawing a class diagram −

 The name of the class diagram should be meaningful to describe the aspect of the system.
 Each element and their relationships should be identified in advance.
 Responsibility (attributes and methods) of each class should be clearly identified
 For each class, minimum number of properties should be specified, as unnecessary properties will make the
diagram complicated.

Viva Question:
1. What is class and methods?
2. Where class diagram can be used?
3. What is association relation?
4. Explain generalization and specialization.
5. What are the different components of class diagram
Exp.7 Design Activity Diagram for Employee Management System. sequence diagram for An Online
Exam System

Aim: To understand the concept of Activity & Sequence diagram

Theory:

Activity Diagrams consist of activities, states and transitions between activities and states.
Activity Diagrams describe
 How activities are coordinated to provide a service.
 The events needed to achieve some operation.
 How the events in a single use case relate to one another.
 How a collection of use cases coordinate to create a workflow for an organization.

Employee Management System:


This system includes the information system for managing the staff data within a company or organization. The system
has been developed is called Employee Management System. The following features of the systems are:
 We can keep the record of employee data such as insert, update delete employee from system.
 Calculate salary of the employee.

Viva Question:
1. What is the use of Activity diagram?
2. What do you mean by fork and join?
3. When Activity diagram must for system design?
4. What is the difference between activity diagram and sequence diagram?
5. How to identify activity of the system?

A sequence diagram is a type of interaction diagram because it describes how—and in what order—a group of objects
work together. It is also known as event diagram or event scenario.
Fig. 4.1 Sequence Diagram of an Online Exam System
Automated Teller Machine: An automated teller machine (ATM) is an electronic telecommunications device that
enables customers to perform financial transactions, such as cash withdrawals, deposits, transfer funds, or obtaining
account information, at any time and without the need for direct interaction with bank staff.
 Clients may take money from their accounts, deposit money or ask for their current balance.
 All these operations are accomplished using either automatic teller machines (ATM) or counter tellers.
 Transactions on an account may be done by cheque, standing order or using the teller machine and card.
 There are two kinds of account: savings accounts and current accounts.
 When a cheque is deposited it must be cleared before the funds can be used by the depositor.

Viva Question:
1) Explain different types of messages in sequence diagram.
2) Define lifeline.
3) Explain message branching.
4) Explain generalization and specialization.
5) Define transition with an example
EXPT. No. – 8 Draw a DFD Diagram For Online Shopping System

Aim: To Understand about the Data Flow Diagram


Theory:

 Description: Data flow diagram is graphical representation of flow of data in an information


system. It is capable of depicting incoming data flow, outgoing data flow and stored data. The
DFD does not mention anything about how data flows through the system.
 There is a prominent difference between DFD and Flowchart. The flowchart depicts flow of
control in program modules. DFDs depict flow of data in the system at various levels. DFD does
not contain any control or branch elements.

 Components:

 External Entity an outside system that sends or receives data, communicating with the system
being diagrammed. They are the sources and destinations of information entering or leaving the
system. They might be an outside organization or person, a computer system or a business
system. They are also known as terminators, sources and sinks or actors. They are typically
drawn on the edges of the diagram.
 Process any process that changes the data, producing an output. It might perform computations,
or sort data based on logic, or direct the data flow based on business rules. A short label is used
to describe the process, such as “Submit payment.”
 Data store files or repositories that hold information for later use, such as a database table or a
membership form. Each data store receives a simple label, such as “Orders.”
 Data flow the route that data takes between the external entities, processes and data stores. It
portrays the interface between the other components and is shown with arrows, typically labeled
with a short data name, like “Billing details

DFD rules

● Each process should have at least one input and an output.


● Each data store should have at least one data flow in and one data flow out.
● Data stored in a system must go through a process.
● All processes in a DFD go to another process or a data store.
SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY -1 -
DFD Levels:
A data flow diagram can dive into progressively more detail by using levels
and layers, zeroing in on a particular p

iece. DFD levels are numbered 0, 1 or 2, and occasionally go to even Level


3 or beyond.
 DFD Level 0 is also called a Context Diagram. It’s a basic overview of the whole system or process
being analyzed or modeled. It’s designed to be an at-a-glance view, showing the system as a single high-
level process, with its relationship to external entities. It should be easily understood by a wide audience,
including stakeholders, business analysts, data analysts and developers

1. DFD Level 1 provides a more detailed breakout of pieces of the Context


Level Diagram. You will highlight the main functions carried out by the
system, as you break down the high-level process of the Context Diagram
into its subprocesses.

CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS


SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY -2 -
Viva Question:
1. What is Data Flow?
2. Define elementa of DFD diagram
3. Difference Between DFD 0 & DFD 1 level.
4. Explain Advantages Of DFD ?
5. Define Entity term in DFD diagram.

EXPT. No. –9 Develop test cases for various white box and black box testing techniques.

Aim: To understand about testing techniques and test Cases

Theory:

CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS


SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY -3 -

CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS


SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY -4 -

CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS


SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY -5 -

Viva Question:
1. What is Testing
2. Difference Between White Box and Black Box
3. How we apply Test cases
4. Explain Different Testing Techniques
5. Why Testing is necessary?

CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS


SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY -6 -

EXPT. No. -10 . Studies about the Software Cost Estimation Model.

Aim: To understand the concept of Software Cost Estimation Model

Theory:

Cost estimation can be defined as the approximate judgments of the costs for project. Cost estimation will
never be an exact science because there are too many variables involved in the calculation for cost
estimation, such as human, technical, environment and political.
Cost estimation is usually measured in terms of effort. The effort is the amount of time for one person to
work for a certain period of time. It is important that the specific characteristics of the development
environment are taking into account when comparing the effort of two or more projects because no two
development environments are the same.
Cost estimation is an important tool that can affect the planning and budgeting of a project because there
are a finite number of resources for a project. A cost estimation done at the beginning of a project will
help us to determine which features can be included within the resource constraints of the project (time).
Requirements can be prioritized to ensure that the most important features are included in the product.
Software Cost Estimation Model:
COCOMO:
The Constructive Cost Model (COCOMO) is a procedural software cost estimation model. COCOMO is used
to estimate size, effort and duration based on the cost of the software.
COCOMO predicts the effort and schedule for a software product development based on inputs relating
to the size of the software and a number of cost drivers that affect productivity.
COCOMO has three different models that reflect the complexities:
 Basic Model – this model would be applied early in a projects development. It will provide a rough
estimate early on that should be refined later on with one of the other models.
 Intermediate Model – this model would be used after you have more detailed requirements for a
project.
 Advanced Model – when design of the project is complete you can apply this model to further
refine your estimate.
Within each of these models there are also three different modes. The mode you choose will depend
on your work environment, and the size and constraints of the project itself. The modes are:
 Organic – this mode is used for “relativity small software teams developing software in a highly
familiar, in-house environment”.
 Embedded – operating within tight constraints where the product is strongly tied to a “complex of
hardware, software, regulations and operational procedures”.
 Semi-detached – an intermediate stage somewhere in between organic and embedded. Projects are
usually of moderate size of up to 300,000 lines of code.

CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS


SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY -7 -
Equations Used There are two main equations that are used to calculated effort and schedule time
(measured inmonths). They are:
Equation 1 PM = a(KDSI)b * EAF
Equation 2 TDEV = c(PM)d Where:
 PM is effort in person-months
 EAF is the effort adjustment factor
 TDEV is the schedule time
 KDSI is the number of lines of code (in thousands)
 a, b, c, and d are all constants based on the mode you are using (refer to Table 1)

Model A B c D
Organic 2.4 1.05 2.5 0.38
Semi- 3.0 1.12 2.5 0.35
Detached
Embedded 3.6 1.20 2.5 0.32
Table 1. List of Constants Based on Mode

Viva Question:
1. What is COCOMO?
2. What do you mean by LOC?
3. How to calculate software cost?
4. Which basic metrics considered for cost estimation?
5. Why cost estimation is necessary in software development process?

CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS

You might also like