SlideShare a Scribd company logo
2
Most read
7
Most read
Object
Oriented

Analysis &design
Requirement Analysis

References :
OOAD by timothy.
OOAD by tulsiram sule.(techmax)

Presentation by Abhilasha Lahigude
Requirements
 What
o

o

is a requirement?

Definition:
A requirement is a statement describes either
1) an aspect of what the proposed system must do,
or 2) a constraint on the system’s development. In
either case, it must contribute in some way towards
adequately solving the customer’s problem; the set
of requirements as a whole represents a negotiated
agreement among all stakeholders.

i.e. requirement is a relatively short and concise
piece of information/statement
about what the projected system will do and how
the system will be developed
and all the stakeholders have agreed on it.
Requirement
o

Let us dissect this definition in order to better understand it:
• A requirement is a statement…: this means that each requirement is a
relatively short and concise piece of information, expressed as a fact. It
can be written as a sentence or can be expressed using some kind of
diagram. We will call a collection of requirements a requirements
document.
• …an aspect of what the proposed system must do…: most
requirements say something about the tasks the system is supposed to
accomplish. They do not describe the domain.
• …a constraint on the system’s development…: requirements often
specify the quality levels required. They may also specify details such as
the programming language to be used if this is truly important to the
customer. They should, however, avoid discussing incidental aspects of
the design.
• …contribute … towards adequately solving the customer’s problem: a
requirement should only be present if it helps solve the customer’s
problem – as we discussed in Chapter 1, this is what software
engineering is all about.
• …a negotiated agreement among all stakeholders…: a statement
about the system should not be declared to be an official requirement
until all the stakeholders (users, customers, developers and their
management) have reviewed it, have negotiated any needed
changes, and have agreed that it is valid
Types of requirements

 Requirements

major types:
1.
2.

can be divided into two

Functional.
non-functional(quality, performance,
design, platform and process).
Functional Requirements
 Functional

requirements describe what the system
should do; i.e., they describe the services provided
for the users and for other systems.
 The functional requirements discuss the functionality
required by the users from the system.
 functional
1)
2)

requirements should include :

everything that a user of the system would need to
know regarding what the system does, and
everything that would concern any other system that
has to interface to this system. Details that go any
deeper into how the requirements are implemented
should be left out.
Functional Requirements


The functional requirements can be further categorized as follows:
o

What inputs the system should accept, and under what conditions. This
includes data and commands both from the users and from other systems.

o

What outputs the system should produce, and under what conditions.

Outputs can be to the screen or printed. They can also be transmitted to other systems, such
as special I/O devices, clients or servers.
o

What data the system should store that other systems might use. This is

really a special kind of output that will eventually become an input to other systems. Data

(e.g. the specifics of a file format
used to temporarily back up some data) can be ignored until the design stage.
What computations the system should perform. The computations should be
which is stored for the exclusive use of this system

o

described at a level that all the readers can understand. For example, you would describe
a sorting process by saying that the result is to be ordered in ascending sequence
according to the account number. You would not normally specify the particular algorithm
to be used.
o

The timing and synchronization of the above. Not all systems involve timing

and synchronization – this category of functional requirements is of most importance in hard

(e.g.
telecommunications systems, systems that control power plants or
factories, and systems that run automobiles and airplanes).
real-time systems that do such things as control hardware devices
Non-functional
Requirements
A

Non-functional requirement is a statement of how
a system must behave; it is a constraint upon
system’s behaviour.
 Non-functional requirements can be categorized
as:
o
o
o

o
o

Quality constraint.
Performance constraint.
Design constraint.
Environmental / platform constraint.
Process constraint.
Non-functional
Requirements
Quality Constraint:
Quality constraints reflects the quality attributes. These quality
requirements constrain the design to meet specified levels of
quality.
Following are some quality attributes:
 Maintainability and Enhancement:In order to ensure that the
system can be adapted in the future, you should describe
changes that are anticipated for subsequent releases. This
constrains design and improves quality without adding explicit
new functional requirements.
 Reusability: Reusability is the likelihood a segment of source
code that can be used again to add new functionalities with
slight or no modification. Reusability reduces implementation
time as reusable model is already tested.
 Reliability: Reliability is specified by using mean time to failure.
It is the ability of a system to perform its functions under stated
conditions for a specified period of time.
Non-functional
Requirements
Performance constraints:
Response time: Response time is time system take to
compute the result.
Low response time is desirable.
Throughput: It is number of computation or transactions
per unit time.
Some systems take long time for processing or Some
systems are continually responding to client , it is
necessary to consider throughput.
Utilization: Utilization is resources consumed by the
system.
Utilization of resources such as memory or network
bandwidth are specified.
E.g. system should not use more than 20MBPS of
bandwidth.
Non-functional
Requirements
Design constraints:
 Availability:

Availability measures the amount of
time that a server is running and available to
respond to users.
E.g. System should not down for more than 5
minutes.
 Recovery from failure: If the hardware or software
crashes, or the power fails, then the system will be
able to recover within a certain amount of time,
and with a certain minimal loss of data.
Non-functional
Requirements
Environmental/Platform constraints:
Platform:

Platform specifies the hardware and
operating system used for developing system.
E.g. Linux operating system with 2GB RAM.
Technology to be used: It signifies the programming
language (framework) used to develop a system.
Sometimes client places constraint on programming
language to be used for developing system.
E.g. System should be developed by using java
language.
Non-functional
Requirements
Process constraints:
 Development

process to be used: In order to ensure
quality, some requirements documents specify that
certain processes be followed;
E.g. particular approaches to testing.
The details of the process should not be included in the requirements; instead a reference
should be made to other documents that describe the process.

 Cost

and delivery date.
Thank you !

More Related Content

What's hot (20)

PPTX
Uml deployment diagram
Asraa Batool
 
PDF
Domain Modeling
Harsh Jegadeesan
 
PPTX
Unit 7 performing user interface design
Preeti Mishra
 
PPTX
Object oriented modeling and design
jayashri kolekar
 
PPT
Formal Specification in Software Engineering SE9
koolkampus
 
PPTX
Class Diagram
Rana_brothers
 
PPTX
SAD11 - Sequence Diagrams
Michael Heron
 
PPTX
System engineering
Lisa Elisa
 
PPT
Use Case Modeling
Venkat Srinivasan
 
PPTX
Structural modeling and analysis
JIGAR MAKHIJA
 
PPT
Oomd unit1
VivekChaudhary93
 
PPTX
System Modelling
Jennifer Polack
 
PPT
11 deployment diagrams
Baskarkncet
 
PPTX
Interface specification
maliksiddique1
 
PDF
10-Software Project Management (Object Oriented Software Engineering - BNU Sp...
Hafiz Ammar Siddiqui
 
PDF
Requirement analysis and specification
M.E. at GTU- PG School
 
PPT
Unit 1( modelling concepts & class modeling)
Manoj Reddy
 
PPTX
Software project planning
rajvir_kaur
 
PPT
State Machine Diagram
Niloy Rocker
 
PDF
Object oriented software engineering concepts
Komal Singh
 
Uml deployment diagram
Asraa Batool
 
Domain Modeling
Harsh Jegadeesan
 
Unit 7 performing user interface design
Preeti Mishra
 
Object oriented modeling and design
jayashri kolekar
 
Formal Specification in Software Engineering SE9
koolkampus
 
Class Diagram
Rana_brothers
 
SAD11 - Sequence Diagrams
Michael Heron
 
System engineering
Lisa Elisa
 
Use Case Modeling
Venkat Srinivasan
 
Structural modeling and analysis
JIGAR MAKHIJA
 
Oomd unit1
VivekChaudhary93
 
System Modelling
Jennifer Polack
 
11 deployment diagrams
Baskarkncet
 
Interface specification
maliksiddique1
 
10-Software Project Management (Object Oriented Software Engineering - BNU Sp...
Hafiz Ammar Siddiqui
 
Requirement analysis and specification
M.E. at GTU- PG School
 
Unit 1( modelling concepts & class modeling)
Manoj Reddy
 
Software project planning
rajvir_kaur
 
State Machine Diagram
Niloy Rocker
 
Object oriented software engineering concepts
Komal Singh
 

Similar to Object oriented analysis &design - requirement analysis (20)

PPT
Software Requirements
Bala Ganesh
 
PDF
Requirement Engineering
Mubashir Yasin
 
PPTX
Software Requrement
Seif Shaame
 
PPT
Software engineering lecture 1
JusperKato
 
PDF
SE UNIT 2.pdf
udhayaveenaa
 
PPT
CS8494 SOFTWARE ENGINEERING Unit-2
SIMONTHOMAS S
 
DOCX
1 Software Requirements Descriptions and specification.docx
jeremylockett77
 
PPTX
Lecture-5-Requirements Analysis and Specification.pptx
YaseenNazir3
 
PPT
best software requirements for the students
AssadLeo1
 
PPT
6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt
PedadaSaikumar
 
PPT
Software Engineering Lec 4-requirments
Taymoor Nazmy
 
PPTX
Software engineering is a branch of engineering focused on designing, develop...
ushajjad
 
PDF
Se lec 4
Huda Alameen
 
PDF
Requirements Engineering
Huda Alameen
 
PPT
Se lect9 btech
IIITA
 
PPT
week5..ppt..............................
salmannawaz6566504
 
PPT
Requirements Engineering - SRS - IEEE.ppt
devhamnah
 
PPT
Software Requirements engineering
Md. Shafiuzzaman Hira
 
PPTX
Software requirement and specification
Aman Adhikari
 
PPTX
Software requirement and specification
Aman Adhikari
 
Software Requirements
Bala Ganesh
 
Requirement Engineering
Mubashir Yasin
 
Software Requrement
Seif Shaame
 
Software engineering lecture 1
JusperKato
 
SE UNIT 2.pdf
udhayaveenaa
 
CS8494 SOFTWARE ENGINEERING Unit-2
SIMONTHOMAS S
 
1 Software Requirements Descriptions and specification.docx
jeremylockett77
 
Lecture-5-Requirements Analysis and Specification.pptx
YaseenNazir3
 
best software requirements for the students
AssadLeo1
 
6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt
PedadaSaikumar
 
Software Engineering Lec 4-requirments
Taymoor Nazmy
 
Software engineering is a branch of engineering focused on designing, develop...
ushajjad
 
Se lec 4
Huda Alameen
 
Requirements Engineering
Huda Alameen
 
Se lect9 btech
IIITA
 
week5..ppt..............................
salmannawaz6566504
 
Requirements Engineering - SRS - IEEE.ppt
devhamnah
 
Software Requirements engineering
Md. Shafiuzzaman Hira
 
Software requirement and specification
Aman Adhikari
 
Software requirement and specification
Aman Adhikari
 
Ad

More from Abhilasha Lahigude (9)

PPTX
Replication in Distributed Database
Abhilasha Lahigude
 
PPTX
Fragmentation and types of fragmentation in Distributed Database
Abhilasha Lahigude
 
DOCX
Leave Management System: Software Requirements Specification Document(SRS)
Abhilasha Lahigude
 
PPTX
Acid properties
Abhilasha Lahigude
 
PPTX
Public awareness to protect environment
Abhilasha Lahigude
 
PPTX
Hotspots of biodiversity
Abhilasha Lahigude
 
PPTX
Disaster management(EVS)
Abhilasha Lahigude
 
DOCX
Online property management system design document
Abhilasha Lahigude
 
Replication in Distributed Database
Abhilasha Lahigude
 
Fragmentation and types of fragmentation in Distributed Database
Abhilasha Lahigude
 
Leave Management System: Software Requirements Specification Document(SRS)
Abhilasha Lahigude
 
Acid properties
Abhilasha Lahigude
 
Public awareness to protect environment
Abhilasha Lahigude
 
Hotspots of biodiversity
Abhilasha Lahigude
 
Disaster management(EVS)
Abhilasha Lahigude
 
Online property management system design document
Abhilasha Lahigude
 
Ad

Recently uploaded (20)

PDF
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
PDF
Bridging CAD, IBM TRIRIGA & GIS with FME: The Portland Public Schools Case
Safe Software
 
PDF
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
PPTX
Enabling the Digital Artisan – keynote at ICOCI 2025
Alan Dix
 
PDF
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
PPTX
Practical Applications of AI in Local Government
OnBoard
 
PDF
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
WSO2
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PPTX
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
PPTX
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
PPTX
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
PDF
🚀 Let’s Build Our First Slack Workflow! 🔧.pdf
SanjeetMishra29
 
PDF
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
PDF
Simplify Your FME Flow Setup: Fault-Tolerant Deployment Made Easy with Packer...
Safe Software
 
PDF
DoS Attack vs DDoS Attack_ The Silent Wars of the Internet.pdf
CyberPro Magazine
 
PDF
“A Re-imagination of Embedded Vision System Design,” a Presentation from Imag...
Edge AI and Vision Alliance
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PDF
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
PDF
Pipeline Industry IoT - Real Time Data Monitoring
Safe Software
 
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
Bridging CAD, IBM TRIRIGA & GIS with FME: The Portland Public Schools Case
Safe Software
 
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
Enabling the Digital Artisan – keynote at ICOCI 2025
Alan Dix
 
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
Practical Applications of AI in Local Government
OnBoard
 
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
WSO2
 
Kubernetes - Architecture & Components.pdf
geethak285
 
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
🚀 Let’s Build Our First Slack Workflow! 🔧.pdf
SanjeetMishra29
 
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
Simplify Your FME Flow Setup: Fault-Tolerant Deployment Made Easy with Packer...
Safe Software
 
DoS Attack vs DDoS Attack_ The Silent Wars of the Internet.pdf
CyberPro Magazine
 
“A Re-imagination of Embedded Vision System Design,” a Presentation from Imag...
Edge AI and Vision Alliance
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
Pipeline Industry IoT - Real Time Data Monitoring
Safe Software
 

Object oriented analysis &design - requirement analysis

  • 1. Object Oriented Analysis &design Requirement Analysis References : OOAD by timothy. OOAD by tulsiram sule.(techmax) Presentation by Abhilasha Lahigude
  • 2. Requirements  What o o is a requirement? Definition: A requirement is a statement describes either 1) an aspect of what the proposed system must do, or 2) a constraint on the system’s development. In either case, it must contribute in some way towards adequately solving the customer’s problem; the set of requirements as a whole represents a negotiated agreement among all stakeholders. i.e. requirement is a relatively short and concise piece of information/statement about what the projected system will do and how the system will be developed and all the stakeholders have agreed on it.
  • 3. Requirement o Let us dissect this definition in order to better understand it: • A requirement is a statement…: this means that each requirement is a relatively short and concise piece of information, expressed as a fact. It can be written as a sentence or can be expressed using some kind of diagram. We will call a collection of requirements a requirements document. • …an aspect of what the proposed system must do…: most requirements say something about the tasks the system is supposed to accomplish. They do not describe the domain. • …a constraint on the system’s development…: requirements often specify the quality levels required. They may also specify details such as the programming language to be used if this is truly important to the customer. They should, however, avoid discussing incidental aspects of the design. • …contribute … towards adequately solving the customer’s problem: a requirement should only be present if it helps solve the customer’s problem – as we discussed in Chapter 1, this is what software engineering is all about. • …a negotiated agreement among all stakeholders…: a statement about the system should not be declared to be an official requirement until all the stakeholders (users, customers, developers and their management) have reviewed it, have negotiated any needed changes, and have agreed that it is valid
  • 4. Types of requirements  Requirements major types: 1. 2. can be divided into two Functional. non-functional(quality, performance, design, platform and process).
  • 5. Functional Requirements  Functional requirements describe what the system should do; i.e., they describe the services provided for the users and for other systems.  The functional requirements discuss the functionality required by the users from the system.  functional 1) 2) requirements should include : everything that a user of the system would need to know regarding what the system does, and everything that would concern any other system that has to interface to this system. Details that go any deeper into how the requirements are implemented should be left out.
  • 6. Functional Requirements  The functional requirements can be further categorized as follows: o What inputs the system should accept, and under what conditions. This includes data and commands both from the users and from other systems. o What outputs the system should produce, and under what conditions. Outputs can be to the screen or printed. They can also be transmitted to other systems, such as special I/O devices, clients or servers. o What data the system should store that other systems might use. This is really a special kind of output that will eventually become an input to other systems. Data (e.g. the specifics of a file format used to temporarily back up some data) can be ignored until the design stage. What computations the system should perform. The computations should be which is stored for the exclusive use of this system o described at a level that all the readers can understand. For example, you would describe a sorting process by saying that the result is to be ordered in ascending sequence according to the account number. You would not normally specify the particular algorithm to be used. o The timing and synchronization of the above. Not all systems involve timing and synchronization – this category of functional requirements is of most importance in hard (e.g. telecommunications systems, systems that control power plants or factories, and systems that run automobiles and airplanes). real-time systems that do such things as control hardware devices
  • 7. Non-functional Requirements A Non-functional requirement is a statement of how a system must behave; it is a constraint upon system’s behaviour.  Non-functional requirements can be categorized as: o o o o o Quality constraint. Performance constraint. Design constraint. Environmental / platform constraint. Process constraint.
  • 8. Non-functional Requirements Quality Constraint: Quality constraints reflects the quality attributes. These quality requirements constrain the design to meet specified levels of quality. Following are some quality attributes:  Maintainability and Enhancement:In order to ensure that the system can be adapted in the future, you should describe changes that are anticipated for subsequent releases. This constrains design and improves quality without adding explicit new functional requirements.  Reusability: Reusability is the likelihood a segment of source code that can be used again to add new functionalities with slight or no modification. Reusability reduces implementation time as reusable model is already tested.  Reliability: Reliability is specified by using mean time to failure. It is the ability of a system to perform its functions under stated conditions for a specified period of time.
  • 9. Non-functional Requirements Performance constraints: Response time: Response time is time system take to compute the result. Low response time is desirable. Throughput: It is number of computation or transactions per unit time. Some systems take long time for processing or Some systems are continually responding to client , it is necessary to consider throughput. Utilization: Utilization is resources consumed by the system. Utilization of resources such as memory or network bandwidth are specified. E.g. system should not use more than 20MBPS of bandwidth.
  • 10. Non-functional Requirements Design constraints:  Availability: Availability measures the amount of time that a server is running and available to respond to users. E.g. System should not down for more than 5 minutes.  Recovery from failure: If the hardware or software crashes, or the power fails, then the system will be able to recover within a certain amount of time, and with a certain minimal loss of data.
  • 11. Non-functional Requirements Environmental/Platform constraints: Platform: Platform specifies the hardware and operating system used for developing system. E.g. Linux operating system with 2GB RAM. Technology to be used: It signifies the programming language (framework) used to develop a system. Sometimes client places constraint on programming language to be used for developing system. E.g. System should be developed by using java language.
  • 12. Non-functional Requirements Process constraints:  Development process to be used: In order to ensure quality, some requirements documents specify that certain processes be followed; E.g. particular approaches to testing. The details of the process should not be included in the requirements; instead a reference should be made to other documents that describe the process.  Cost and delivery date.