0% found this document useful (0 votes)
3 views32 pages

SDL Experiments (1)-1

The document outlines a series of experiments focused on software development life cycle (SDLC), Unified Modeling Language (UML), Software Requirement Specification (SRS), class diagrams, object diagrams, and use case diagrams. Each experiment includes aims, problem statements, objectives, outcomes, prerequisites, hardware and software requirements, and theoretical explanations. The document emphasizes the importance of structured methodologies in software development and modeling to ensure high-quality outcomes.

Uploaded by

S.S Verma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views32 pages

SDL Experiments (1)-1

The document outlines a series of experiments focused on software development life cycle (SDLC), Unified Modeling Language (UML), Software Requirement Specification (SRS), class diagrams, object diagrams, and use case diagrams. Each experiment includes aims, problem statements, objectives, outcomes, prerequisites, hardware and software requirements, and theoretical explanations. The document emphasizes the importance of structured methodologies in software development and modeling to ensure high-quality outcomes.

Uploaded by

S.S Verma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 32

EXPERIMENT NO 1

Aim / Title: Software development life cycle

Problem Statement: Illustrate strategies and stages of software development life cycle and
compare them. identify the role of the software in today’s world across a few significant domains
related to day to day life.

Objectives: To develop methods and procedures for software development that can scale up for
large systems and that can be used consistently to produce high-quality software at low cost and
with a small cycle of time.

Outcomes: After going through this section, you should be able to develop and conduct
appropriate experimentation, analyze and interpret data, and use engineering judgment to draw
conclusions.

Pre-requisite: Basic knowledge about Software.

Hardware requirements: Intel G645 Dual Core 3.0 GHz


4 GB RAM, 500 GB Hitachi HDD
Software requirements: Any window-based
operating system (Windows 95/98/2000/XP/NT

Theory:

Software Development Life Cycle (SDLC) is a framework that defines the steps involved in
the development of software at each phase. It covers the detailed plan for building, deploying
and maintaining the software.
Software has made the world a global village today. The impact of software spans
across almost all aspect of human life. All organizations, Institutions and
companies are leveraging the potentials of software in automating the critical
functions and eliminating manual interventions. Software is also a predominant
are for trade and export especially for the countries like India. Domains like health
care, Airlines , financial Services, Insurance , retails, Education, and many more
have exploited software and still there a lot of the scope for software to create
impact and add values in multiple dimensions.

phases of sdlc :

The Software Development Life Cycle (SDLC) is a structured process


used for developing software efficiently and with high quality. It consists
of several distinct phases, each with its own goals and deliverables.
The typical phases are:

1.Planning
•Define project scope and goals.
•Identify resources, timeline, and budget.
•Feasibility study.

2.Requirements Gathering and Analysis


•Collect business requirements from stakeholders.
•Analyze and document functional and non-functional
requirements.

3.Design
•Create system architecture and design specifications.
•Develop UI/UX designs, database schemas, and technical
architecture.

4.Implementation (or Coding)


•Developers write code based on the design documents.
•Integration of components begins.

5.Testing
•Test the software for bugs, security issues, and performance.
•Includes unit testing, integration testing, system testing, and
acceptance testing.

6.Deployment
•Release the software to the production environment.
•May be done in phases (pilot, staged rollout, etc.).

7.Maintenance
•Fix bugs and issues found in the production environment.
•Handle updates, patches, and feature enhancements
Conclusion:

Sample Viva Questions and Answers:

Q1. What is The Purpose Of Sdlc?

Q2. What is Feasibility Study?

Q5. Explain TELOS ?

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty
EXPERIMENT NO. 2

Aim / Title: Understanding UML.

Problem Statement: Introduction to UML.

Objectives:
1. Explain what UML is, why it is relevant to the process of developing
software intensive systems.
2. Write complete problem statement of any real life problem.

Outcomes: Student will be able to formulate correct problem statement.


Pre-requisite: Basic Knowledge of software engineering and UML.
Hardware requirements: Pentium(R) 4 CPU 2.26 GHz, 128 MB RAM
Screen resolution of at least 800 x 600 required for proper and complete viewing of
screens. Higher resolution would not be a problem.

Software requirements: Any window-based operating system (Windows 95/98/2000/XP/NT)


WordPad or Microsoft Word

Theory: The Unified Modelling Language (UML) is a standard language for specifying,
visualizing, constructing, and documenting the artifacts of software systems, as well as
for business modelling and other non-software systems. The UML represents a collection
of best engineering practices that have proven successful in the modelling of large and
complex systems. The UML is a very important part of developing object oriented
software and the software development process. The UML uses mostly graphical
notations to express the design of software projects. Using the UML helps project teams
communicate, explore potential designs, and validate the architectural design of the
software.
A problem statement is a short explanation of a problem a business is facing and a
proposed solution to the problem. Problem statements can be effective ways to define an
issue and communicate a solution within a short span of time. Before you write your
problem statement, think about the problem and your proposed solution. Follow the Steps
to write your problem Statement:
1. Describe the "ideal" state of affairs.
2. Explain what is your problem
3. One of the most important goals of any problem statement is to define the problem
being addressed in a way that's clear and precise. Its aim is focus the process
improvement team’s activities and steer the scope of the project.
4. Ensure that the problems include the customer’s perspective.
5. Ensure that the statement focuses on existing problems.
6. Try to include the time frame over which the problem has been occurring.
7. Review your problem statement against following criteria:
● It should focus on only one problem.
● It should be one or two sentences long.
● It should not suggest a solution.
Problem Statements :-

In the midst of pandemic, one of the most negatively impacted sectors is educational
sector. Learners are facing problem in getting proper education while the trainers are
unable to impart education efficiently. Developing a platform where all the needs, be it
library, fees, and other departments in an institute, of both learners and trainer are catered,
will help in striking a balance in the education system.

Output: Types of UML

Conclusion:

Sample Viva Questions and Answers:

Q1. Explain software.


Q2. List application areas where software is used.

Q3. Define UML and its use in software engineering

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty
EXPERIMENT NO. 3

Aim / Title: Do requirement analysis and develop Software Requirement Specification Sheet
(SRS) for suggested system.

Problem Statement: Write the Software Requirement Specification document


Objectives:
1. To understand the clear vision of the customer

2.To avoid/remove ambiguity and inconsistency in

requirements Outcomes: Student will be able to make a proper SRS based on

their projects Pre-requisite: Basic Knowledge of Software Development

Life Cycle

Hardware requirements: Pentium(R) 4 CPU 2.26 GHz, 128 MB RAM


Screen resolution of at least 800 x 600 required for proper and complete viewing of screens.
Higher resolution would not be a problem.

Software requirements: Any window-based operating system (Windows 95/98/2000/XP/NT)


WordPad or Microsoft Word

Theory:

How to write a good SRS for your Project

What is SRS?
A software requirements specification (SRS) is a description of a software system to be
developed. It lays out functional and non-functional requirements, and may include a set of use
cases that describe user interactions that the software must provide.

Quality Characteristics of a good SRS

3. Correctness:
User review is used to ensure the correctness of requirements stated in the SRS. SRS is
said to be correct if it covers all the requirements that are actually expected from the
system.
2. Completeness:
Completeness of SRS indicates every sense of completion including the numbering of all
the pages, resolving the to be determined parts to as much extent as possible as well as
covering all the functional and non-functional requirements properly.
3. Consistency:
Requirements in SRS are said to be consistent if there are no conflicts between any set of
requirements.
4. Unambiguousness:
An SRS is said to be unambiguous if all the requirements stated have only 1
interpretation.

5. Modifiability:
SRS should be made as modifiable as possible and should be capable of easily accepting
changes to the system to some extent.

6. Verifiability:
An SRS is verifiable if there exists a specific technique to quantifiably measure the extent
to which every requirement is met by the system.

7. Traceability:
One should be able to trace a requirement to a design component and then to a code
segment in the program. Similarly, one should be able to trace a requirement to the
corresponding test cases.

8. Design Independence:
There should be an option to choose from multiple design alternatives for the final
system. More specifically, the SRS should not include any implementation details.

9. Testability:
An SRS should be written in such a way that it is easy to generate test cases and test
plans from the document.

10. Understandable by the customer:


An end user maybe an expert in his/her specific domain but might not be an expert in
computer science. Hence, the use of formal notations and symbols should be avoided to
as much extent as possible. The language should be kept easy and clear.

11. Right level of abstraction:


If the SRS is written for the requirements phase, the details should be explained
explicitly. Whereas, for a feasibility study, fewer details can be used. Hence, the level of
abstraction varies according to the purpose of the SRS.

Instructions: Every point should be clearly mentioned in the SRS Document

Problem Statement:

To be Explain by students of your project


PROPOSED SOLUTION

To be Explain by students of your project


CONCLUSION

Output: NA

Sample Viva Questions and Answers:

Q1. What is a Software Requirements Specification?

Q2. How the SRS is useful in Software Engineering ?

Q3. What is the need for SRS Document?

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty
EXPERIMENT NO 4

Aim / Title: Develop Class diagram for (NAME OF YOUR

PROJECT). Problem Statement: Draw Class diagram for online

academic system.

Objectives: To show diagrammatically the objects required and the relationships between
them while developing a software product.

Outcomes: The purpose of class diagram is to model the static view of an application. Class
diagrams are the only diagrams which can be directly mapped with object-oriented languages
and thus widely used at the time of construction.

Pre-requisite: Basic knowledge about Software Design.

Hardware requirements: Intel G645 Dual Core 3.0 GHz


4 GB RAM, 500 GB HDD

Software requirements: Any window-based operating system (Windows 95/98/2000/XP/NT),


Star UML or Rational Rose Software.

Theory:

The UML Class diagram is a graphical notation used to construct and visualize object oriented
systems. 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,
● operations (or methods),
● and the relationships among objects.

Class Diagram Notations:


A class represent a concept which encapsulates state (attributes) and behaviour (operations).
Each attribute has a type. Each operation has a signature. The class name is the only mandatory
information.

Class
A class represents a relevant concept from the domain, a set of persons, objects, or ideas that are
depicted in the IT system:
Attribute
An attribute of a class represents a characteristic of a class that is of interest for the user of the IT
system:
Generalization

Generalization is a relationship between two classes: a general class and a special class:

Association
An association represents a relationship between two classes:

Multiplicity
A multiplicity allows for statements about the number of objects that are involved in an
association:
Aggregation
An aggregation is a special case of an association (see above) meaning “consists of”:

Composition

Output :

Draw Your Own Class Diagram(Related to your Project)

Conclusion:

Sample Viva Questions and Answers:

Q1. What is a Class diagram?

Q2. What is static diagram in UML? .

Q3. Difference between Aggregation vs. Composition.

Q4. What are the Essential elements of A UML class diagram?

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty
Experiment -5

Aim / Title: Draw Object Diagram

Problem Statement: Draw Object diagram for real time problem(Write Name of
your project).
Objectives:

To understand the purpose and usage of Object Diagrams in software modeling.


To represent object relationships at a particular instance of time.
To visualize real-time examples of class instances and their relationships.

Outcomes: Student will be able to explain and draw Object diagrams


Pre-requisite: Basic knowledge about Software Design.

Hardware requirements: Intel G645 Dual Core 3.0 GHz


4 GB RAM, 500 GB HDD

Software requirements: Any window-based operating system (Windows


95/98/2000/XP/NT), Star UML or Rational Rose Software.

Theory:
Object Diagrams are a type of UML diagram that show a snapshot of instances (objects) and
their relationships at a specific point in time.
Characteristics of Object diagram :
Based on the class diagram but focuses on object instances.
Useful for understanding system structure at runtime.
Shows real-world examples of how classes are instantiated
and connected.

How to Draw an Object Diagram:


Identify the objects (instances of classes).
Name objects like: order1:Order, user1:User, restaurant1:Restaurant.
Show links/associations between objects using lines.
Label the links to represent relationships (like "places", "prepares", "delivers").
Represent object attributes with values if needed.

Output:
Draw your object diagram based on your project

Conclusion:
Sample Viva Questions and Answers:

1. What is the purpose of an Object Diagram?

2. What is the difference between a Class Diagram and an Object Diagram?

3. Can Object Diagrams be derived from Class Diagrams? How?

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty
EXPERIMENT NO 6

Aim / Title: Use case diagram.

Problem Statement: Draw Use case diagramof online academic system.

Objectives: To understand the user’s view online academic system.

Outcomes: After going through this section, you should understand the overview of all or part of the
usage requirements for a system or organization in the form of an essential model or a business
model.

Pre-requisite: Basic knowledge about Software Design.

Hardware requirements: Intel G645 Dual Core 3.0 GHz

4 GB RAM, 500 GB HDD

Software requirements:Any window-based operating system (Windows 95/98/2000/XP/NT), Star


UML or Rational Rose Software.

Theory:

According to the UML specification a use case diagram is ―a diagram that shows the relationships
among actors and use cases within a system. Use case diagrams are often used to:

● Provide an overview of all or part of the usage requirements for a system or


organization in the form of an essential model or a business model.

● Communicate the scope of a development project.


● Model your analysis of your usage requirements in the form of a system use case
model.

Use case Diagram Notations:

Use cases

Horizontally shaped ovals that represent the different uses that a user might have.

Actors

Stick figures that represent the people actually employing the use cases.
Associations:

A line between actors and use cases. In complex diagrams, it is important to know which actors are
associated with which use cases.

Include relationship:

In UML modeling, an include relationship is a relationship in which one use case (the base use case)
includes the functionality of another use case (the inclusion use case). The include relationship
supports the reuse of functionality in a use-case model.

Extend relationship:

Extend is a directed relationship that specifies how and when the behaviour defined in usually
supplementary (optional) extending use case can be inserted into the behaviour defined in the
extended use case.

Generalization:

In the context of use case modelling the use case generalization refers to the relationship which can
exist between two use cases and which shows that one use case (child) inherits the structure,
behaviour, and relationships of another actor (parent).
System boundary boxes

A box that sets a system scope to use cases.

Instructions: NA Program: NA

Output:

Conclusion:

Sample Viva Questions and Answers:

Q1. What is use case?

Q2.What is the difference between use case diagram and use case? Q3. What Is Generalization?

Q4. What are the roles of Include and Extend relationship?

Roll No. Name of Student Date of Date of Grade Sign of Sign of Faculty
Performance Evaluation Student
EXPERIMENT NO.7

Aim / Title: To draw ENTITY RELATIONSHIP DIAGRAM o f (Name of your project).

Problem Statement: Draw the ENTITY RELATIONSHIP diagram.

Objectives:
1. To identify entity and attributes for the system

2.To identify the relationships between entities

Outcomes: Students will be able to draw E-R diagram.

Pre-requisite: Basic Knowledge of attributes and entities.

Hardware requirements: Pentium(R) 4 CPU 2.26 GHz,


128 MB RAM
Screen resolution of at least 800 x 600 required for proper and complete viewing of screens.
Higher resolution would not be a problem.

Software requirements: Any window-based operating system (Windows 95/98/2000/XP/NT)


WordPad or Microsoft Word

Theory:

Entity Relationship Diagrams are a major data modelling tool and will help organize the data in
your project into entities and define the relationships between the entities. This process has
proved to enable the analyst to produce a good database structure so that the data can be stored
and retrieved in a most efficient manner.

Entity A data entity is anything real or abstract about which we want to store data. Entity types
fall into five classes: roles, events, locations, tangible things or concepts. E.g. employee,
payment, campus, book. Specific examples of an entity are called instances. E.g. the employee
John Jones, Mary Smith's payment, etc.

Relationship A data relationship is a natural association that exists between one or more
entities. E.g. Employees process payments. Cardinality defines the number of occurrences of one
entity for a single occurrence of the related entity. E.g. an employee may process many payments
but might not process any payments depending on the nature of her job.
Attribute A data attribute is a characteristic common to all or most instances of a particular
entity. Synonyms include property, data element, field. E.g. Name, address, Employee Number,
pay rate are all attributes of the entity employee. An attribute or combination of attributes that
uniquely identifies one and only one instance of an entity is called a primary key or identifier.
E.g. Employee Number is a primary key for Employee.

AN ENTITY RELATIONSHIP DIAGRAM METHODOLOGY

Instructions: Use Star UML or Rational Rose Tools to draw UML diagrams.
Problem Statement: Draw the ENTITY RELATIONSHIP diagram.
Output:
Draw E-R Diagram of your Project
Conclusion:

Sample Viva Questions and Answers:

● What is Entity?
● What is Attribute?
● What do you mean by E-R diagram?
● Draw E-R diagram for employee and company.
● What can be the attributes for a student?

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty
EXPERIMENT NO 8

Aim / Title: To draw Data Flow Diagrams of (Name of your project).

Problem Statement: Draw data flow diagrams at level 0 and level 1.

Objectives: To get familiarity with the scope and boundaries of a system as a whole. It may be
used as a communication tool between a system analyst and any person who plays a part in the
order that acts as a starting point for redesigning a system

Outcomes: After going through this section, you should be able to: maps out the flow of
information for any process or system.
Pre-requisite: Basic knowledge about Software Design.

Hardware requirements: Intel G645 Dual Core 3.0 GHz


4 GB RAM, 500 GB Hitachi HDD

Software requirements: Any window-based operating system (Windows 95/98/2000/XP/NT),


Star UML or Rational Rose Software.

Theory:

A data-flow diagram (DFD) is a way of representing a flow of a data of a process or a system


(usually an information system). The DFD also provides information about the outputs and
inputs of each entity and the process itself.

Data flow diagrams illustrate how data is processed by a system in terms of inputs and
Data Flow Diagram Notations:You can use two different types of notations on your data flow
diagrams

Process Notations

Process A process transforms incoming data flow into outgoing data flow.

DataStore:Datastores are repositories of data in the system

Dataflow: Dataflows are pipelines through which packets of information flow.

Data Flow:

Instructions: NA
Program: NA
Output:

Draw Data Flow Diagram of your Project

Conclusion:

Sample Viva Questions and Answers:

Q1. Write concept of data flow Diagram..


Q2. What is a Context Diagram.
Q3. what are the benefits of creating
DFD?
Q5. What are the role of DFD as a
documentation aid ?
Roll Name of Date of Date of Grade Sign of Sign of
No. Student Performance Evaluation Student Faculty
EXPERIMENT NO 9

Aim / Title: Develop sequence diagram of (Name of your project).

Problem Statement: Draw sequence diagram for online academic system.

Objectives: To understand the interactions between objects that are represented as lifelines in a
sequential order of a project using Sequence Diagram.

Outcomes: A sequence diagram simply depicts interaction between objects in a sequential


order
i.e. the order in which these interactions take place. We can also use the terms event diagrams or
event scenarios to refer to a sequence diagram.
Pre-requisite: Basic knowledge about Software Design.

Hardware requirements: Intel G645 Dual Core 3.0 GHz


4 GB RAM, 500 GB HDD

Software requirements:Any window-based operating system (Windows 95/98/2000/XP/NT),


Star UML or Rational Rose Software.

Theory:

Sequence diagrams are a popular dynamic modeling solution in UML because they specifically
focus on lifelines, or the processes and objects that live simultaneously, and the messages
exchanged between them to perform a function before the lifeline ends. Along with our UML
diagramming tool, use this guide to learn everything there is to know about sequence diagrams in
UML.
Sequence Diagram Notations:

Object symbol
Class roles describe the way an object will behave in context. Use the UML object symbol to
illustrate class roles, but don't list object attributes..

Activation or Execution Occurrence


Activation boxes represent the time an object needs to complete a task. When an object is busy
executing a process or waiting for a reply message, use a thin gray rectangle placed vertically on
its lifeline.
Messages
Messages are arrows that represent communication between objects. Use half-arrowed lines to
represent asynchronous messages. Asynchronous messages are sent from an object that will not
wait for a response from the receiver before continuing its tasks. For message types, see below

Lifelines
Lifelines are vertical dashed lines that indicate the object's presence over time
Loops
A 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 [ ].

Output :
Draw Sequence Diagram of your Project

Conclusion:

Sample Viva Questions and Answers:

Q1. What is a sequence diagram?

Q2. What is a lifeline ?

Q3. Difference between Sequence Diagram and Use case Diagram.

Q4. What does a message mean?

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty
EXPERIMENT NO 10

Aim / Title: Draw Activity diagram of (Name of your project).

Problem Statement: Draw Activity diagram for real time problem.

Objectives: To understand Activity diagram.

Outcomes: Student will be able to explain and draw Activity


diagrams
Pre-requisite: Basic knowledge about Software Design.

Hardware requirements: Intel G645 Dual Core 3.0 GHz


4 GB RAM, 500 GB HDD

Software requirements: Any window-based operating system (Windows 95/98/2000/XP/NT),


Star UML or Rational Rose Software.

Theory:

Activity diagrams are the perfect UML solution for visualizing process flows.

Activity diagrams describe the workflow behavior of a system.

It illustrate the flow of control from activity to activity.


It focus on operations rather than an objects as in sequence diagram
The diagrams describe the state of activities by showing the sequence of
activities performed.
They can show activities that are conditional or parallel

How to Draw an Activity Diagram


• Diagrams are read from top to bottom and have branches and forks to describe
conditions and parallel activities.
A fork is used when multiple activities are occurring at the same time.
A branch describes what activities will take place based on a set of conditions.
All branches at some point are followed by a merge to indicate the end of the
conditional behavior started by that branch.
After the merge all of the parallel activities must be combined by a join before
transitioning into the final activity state.

Output:

Draw Activity Diagram of your Project.


Conclusion:

Sample Viva Questions and Answers:

Q1. What is Activity diagram?

Q2.What are the components of Activity diagram ? Q3.

Why do we use activity diagram?

Roll Name of Date of Date of Grade Sign of Sign of


No. Student Performance Evaluation Student Faculty

You might also like