This document summarizes a software engineering presentation on software requirement analysis. The presentation was assigned by Dr. Muhammad Idrees to group number 5, consisting of 4 members. It introduced software requirement analysis, the major areas of effort including requirement gathering and analysis techniques like meetings, interviews, FAST and QFD. It described the principles of requirement analysis and how requirements are modeled. It explained prototyping and the contents of a software requirements specification document.
Software Engineering Analysis and Requirements Presentation
1. Software Engineering Presentation
• Topic Assigned
– Analysis concepts
– Principles of analysis
• Assigned by
– Dr Muhammad Idrees
• Assigned to
– Group number 5
2. Group Members
• Usama Naeem
– Roll no 101
– usamanaeem1111@gmail.com
• Mubeen Omer
– Roll no 108
– mubeenomer@gmail.com
• Ghulam Abbas
– Roll no 079
– ghulamabbas2005@gmail.com
• Zohaib-ul-Hassan
– Roll no 112
– Zohaibulhassan@gmai.com
3. Introduction
• What is software requirement analysis & how it is
conducted?
• Major areas of effort
• Requirement gathering analysis
Meeting and Interviewing
Facilitated application specification techniques
Quality function deployment
• Software Requirement analysis principles
• Prototyping
• SRS document
4. Requirement Analysis
• The process of collecting, understanding,
modeling and documenting software
requirements.
• A software engineer is responsible for
requirement analysis
• In complex projects task is performed by a
specialist (system analyst)
5. How requirement engineering task is
performed?
• It is performed by identifying externally
observable data, functional & behavioral
requirements
Data
Function
Behavior
• Create data, functional & behavioral model
6. Software analysis areas of effort
• Problem recognization
• Evaluation & synthesis
• Modeling
• Specification
• Review
8. Meeting & Interviewing
• No specific requirements
• This type of meetings are conducting like any other
meeting
• Take the requirement from all the stakeholder
• Requirements is an iterative process
• It is used to understand what is the user’s problem.
It’s nature and extent.
9. Facilitated Application Specification
Techniques (FAST)
• FAST technique encourages team work
• FAST is moderated by a facilitator
• In FAST meeting both customers and developer
participate
• The meeting is held at a neutral site
• The rules for preparation & participation are
established an agenda is suggested to cover all
important points
10. Quality Function Deployment
• QFD is a quality management technique in which
customer priorities are incorporated in software
development process.
• In QFD it is important to know what’s
important to the customer
• QFD uses interviews, observation and
historical data for requirement gathering
11. Requirement analysis principles
• The domain must be well represented and understood
• The functionality of the desired software must be
defined
• The behavioral aspect of the software must be clearly
represented
• The modules must be partitioned in a manner that
they show the hierarchy of the desired system
• The analysis process should begin with essential
information and gradually move toward
implementation details
12. Application of 1st principle
• First three principles require that data
functional and behavioral models should be
developed
• Models are developed to get better
understanding of the system to be developed
13. Application of the 2nd principle
• This principle require that functional model
should be created
• Functional Models
– In functional models focus of software engineer is
on the problem specific functions and sub-
function
– Prototyping used to create functional models
14. Prototyping
• Prototyping is a collection of computer programs
which will simulate the functions that the user
wants
• Prototyping model is developed to understand
the system
• After modeling, prototyping model is thrown
away
15. Software Requirements
Specifications(SRS)
• A software requirements specification (SRS) is
a comprehensive description of the purpose
and environment for software under
development.
• The SRS fully describes what the software will
do and how it will be expected to perform.
A software engineer is responsible for requirement analysis
In complex projects task is performed by a specialist (system analyst)
System analyst gathers, models and specifies the requirements