SlideShare a Scribd company logo
Software Engineering-
Unit 1
REQUIREMENT ELICITATION TECHNIQUE IN SOFTWARE
ENGINEERING
8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 1
Software Requirement
The software requirements are description of features and
functionalities of the target system. Requirements convey the
expectations of users from the software product. The requirements
can be obvious or hidden, known or unknown, expected or
unexpected from client’s point of view.
Requirement Engineering
The process to gather the software requirements from client, analyze
and document them is known as requirement engineering.
The goal of requirement engineering is to develop and maintain
sophisticated and descriptive ‘System Requirements Specification’
document.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
2
Software Requirement Analysis
Requirement Engineering Process
It is a four step process, which includes
◦ Feasibility Study
◦ Requirement Gathering
◦ Software Requirement Specification
◦ Software Requirement Validation
8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 3
Software Requirement Analysis
Feasibility Study:
Feasibility study establishes the basic business requirements and
constraints associated with the application to be built and then
assesses whether the application is a viable.
It explores technical aspects of the project and product such as
◦ usability
◦ Maintainability
◦ productivity
◦ integration ability.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
4
Software Requirement Analysis
Requirement Gathering
If the feasibility report is positive towards undertaking the
project, next phase starts with gathering requirements from
the user. Analysts and engineers communicate with the
client and end-users to know their ideas on what the
software should provide and which features they want the
software to include.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
5
Software Requirement Analysis
Software Requirement Specification
SRS defines how the intended software will interact
with
◦Hardware
◦external interfaces
◦speed of operation
◦response time of system
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
6
Software Requirement Analysis
Software Requirement Specification
◦ portability of software across various platforms
◦ Maintainability
◦ speed of recovery after crashing
◦ Security
◦ Quality
◦ Limitations etc.
Note: SRS will be discussed in details in later chapters.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
7
Software Requirement Analysis
Software Requirement Validation
Requirements can be checked against following conditions
◦ If they can be practically implemented
◦ If they are valid and as per functionality and domain of software
◦ If there are any ambiguities
◦ If they are complete
◦ If they can be demonstrated
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
8
Requirement Elicitation Techniques
Requirements elicitation is perhaps the most difficult, most
error-prone and most communication intensive software
development. It can be successful only through an effective
customer-developer partnership. It is needed to know what
the users really need.
Note: The success of an elicitation technique used depends
on the maturity of the analyst, developers, users and the
customer involved.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
9
Requirement Elicitation Techniques
Requirement Elicitation methods
1. Interviews
2. Brainstorming Sessions
3. Form Analysis/ Interface Analysis etc…
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
10
Requirement Elicitation Techniques
1. Interviews:
Objective of conducting an interview is to understand the customer’s
expectations from the software.
It is impossible to interview every stakeholder hence representatives
from groups are selected based on their expertise and credibility.
◦ Interviews maybe be open ended or structured.
◦ In open ended interviews there is no pre-set agenda. Context free questions
may be asked to understand the problem.
◦ In structured interview, agenda of fairly open questions is prepared.
Sometimes a proper questionnaire is designed for the interview.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
11
Requirement Elicitation Techniques
2. Brainstorming Sessions:
◦ It is a group technique
◦ It is intended to generate lots of new ideas hence providing a
platform to share views
◦ A highly trained facilitator is required to handle group bias and
group conflicts.
◦ Every idea is documented so that everyone can see it.
◦ Finally a document is prepared which consists of the list of
requirements and their priority if possible.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
12
Requirement Elicitation Techniques
3. Form Analysis/Interface analysis
◦Interfaces for a software product can be human or machine.
Integration with external systems and devices is just another
interface.
◦User centric design approaches are very effective at making
sure that we create usable software.
◦Interface analysis – reviewing the touch points with other
external systems is important to make sure we don’t overlook
requirements that aren’t immediately visible to users.
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
13
References:
https://www.tutorialspoint.com/software_engineering/software_requirements.htm?source=po
st_page---------------------------
7th edition Software Engineering A Practitioners Approach by Roger S. Pressman
https://www.tutorialspoint.com/business_analysis/business_analysis_requirement_gathering_t
echniques
https://www.geeksforgeeks.org/software-engineering-requirements-elicitation/
8/31/2019
REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K
PALIWAL
14

More Related Content

PPTX
Sdlc process models in software engineering basics by ram k paliwal
PPTX
Software and software engineering basics by ram k paliwal
PPTX
Software process in software engineering basics by ram k paliwal part 2
PPTX
Sdlc spiral model in software engineering basics by ram k paliwal
PPTX
Software project planning in software engineering by ram k paliwal unit 2
PPTX
Need for Software Engineering
PPTX
Cocomo model
PPSX
Scope of software engineering
Sdlc process models in software engineering basics by ram k paliwal
Software and software engineering basics by ram k paliwal
Software process in software engineering basics by ram k paliwal part 2
Sdlc spiral model in software engineering basics by ram k paliwal
Software project planning in software engineering by ram k paliwal unit 2
Need for Software Engineering
Cocomo model
Scope of software engineering

What's hot (19)

PPTX
Software engineering layers
PPTX
Characteristics of Software
PPTX
Software project management Software economics
PPTX
Software Process Models
PPTX
Quality and productivity factors
PDF
SDLC RAD model
PPT
software project management
PDF
Introduction to software engineering
DOCX
Swe notes
PPT
Introduction to Software Engineering
PPTX
Software engineering tutorial
PPTX
Srs (software requirement specification) in software engineering basics by ra...
PPT
Software engineering introduction
PPT
Software Testing (Usability Testing of Website)
PPTX
Phased life cycle model
PPTX
software product and its characteristics
PPTX
Requirements engineering
PPTX
Week 8 final assesement presentation
Software engineering layers
Characteristics of Software
Software project management Software economics
Software Process Models
Quality and productivity factors
SDLC RAD model
software project management
Introduction to software engineering
Swe notes
Introduction to Software Engineering
Software engineering tutorial
Srs (software requirement specification) in software engineering basics by ra...
Software engineering introduction
Software Testing (Usability Testing of Website)
Phased life cycle model
software product and its characteristics
Requirements engineering
Week 8 final assesement presentation
Ad

Similar to Software reuirement elicitation in software engineering basics by ram k paliwal (20)

PDF
Introduction to Software Engineering
PPTX
Unit 2 Requirement Elicitation, Analysis, and Specification.pptx
PDF
Software Requirements and Specifications
PPTX
Introduction to Software Engineering Notes.pptx
PPTX
Software Requirements
PPTX
Software requirement & specification .pptx
PPTX
Software Engineering- Requirement Elicitation and Specification
PDF
Modern Elicitation Process
PPTX
Sdlc phases
PDF
Sdlc phases
PPTX
Major Project Report on Designing an Android Application for Electrical Maint...
PPTX
Model-Based Systems Requirements
PPTX
lec 3rd.pptx
PDF
Ijetcas14 545
PDF
Software/System Development Life Cycle
PPTX
Software Engineering Unit 2 AKTU Complete
PPTX
Agile methodology
PPTX
Software Requirement Engineering Documenting Requirements
PPT
Software requirements and analysis
PDF
A CASE Lab Report - Project File on "ATM - Banking System"
Introduction to Software Engineering
Unit 2 Requirement Elicitation, Analysis, and Specification.pptx
Software Requirements and Specifications
Introduction to Software Engineering Notes.pptx
Software Requirements
Software requirement & specification .pptx
Software Engineering- Requirement Elicitation and Specification
Modern Elicitation Process
Sdlc phases
Sdlc phases
Major Project Report on Designing an Android Application for Electrical Maint...
Model-Based Systems Requirements
lec 3rd.pptx
Ijetcas14 545
Software/System Development Life Cycle
Software Engineering Unit 2 AKTU Complete
Agile methodology
Software Requirement Engineering Documenting Requirements
Software requirements and analysis
A CASE Lab Report - Project File on "ATM - Banking System"
Ad

More from Ram Paliwal (15)

PPTX
Mis classification By Ram K Paliwal
PPTX
Management inofrmation system basics by ram k paliwal
PPTX
Database design (entity attribute and its types) unit 2 part 4
PPTX
Database design (entity, entity set and entity type) unit 2 part 3
PPTX
Database design (conceptual, logical and physical design) unit 2 part 2
PPTX
Database development life cycle unit 2 part 1
PPTX
Memory hierarchy unit 2 by ram k paliwal
PPTX
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwal
PPTX
System component and system calls unit 1 by ram k paliwal
PPTX
Types of operating system unit 1 by Ram K Paliwal
PPT
Database models unit 1 part 2
PPT
Database overview unit 4 part 1
PPTX
Database development life cycle unit 2 part 1
PPTX
Operating system basics function of os unit 1 by ram k paliwal part 1
PPT
Do lecommerce
Mis classification By Ram K Paliwal
Management inofrmation system basics by ram k paliwal
Database design (entity attribute and its types) unit 2 part 4
Database design (entity, entity set and entity type) unit 2 part 3
Database design (conceptual, logical and physical design) unit 2 part 2
Database development life cycle unit 2 part 1
Memory hierarchy unit 2 by ram k paliwal
Cpu register, instruction exucution and interrupts unit 1 by ram k paliwal
System component and system calls unit 1 by ram k paliwal
Types of operating system unit 1 by Ram K Paliwal
Database models unit 1 part 2
Database overview unit 4 part 1
Database development life cycle unit 2 part 1
Operating system basics function of os unit 1 by ram k paliwal part 1
Do lecommerce

Recently uploaded (20)

PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PPTX
OOP with Java - Java Introduction (Basics)
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPT
Mechanical Engineering MATERIALS Selection
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PPTX
Welding lecture in detail for understanding
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
web development for engineering and engineering
DOCX
573137875-Attendance-Management-System-original
PPTX
UNIT 4 Total Quality Management .pptx
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
R24 SURVEYING LAB MANUAL for civil enggi
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
OOP with Java - Java Introduction (Basics)
Operating System & Kernel Study Guide-1 - converted.pdf
Mechanical Engineering MATERIALS Selection
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
Welding lecture in detail for understanding
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Embodied AI: Ushering in the Next Era of Intelligent Systems
web development for engineering and engineering
573137875-Attendance-Management-System-original
UNIT 4 Total Quality Management .pptx
Foundation to blockchain - A guide to Blockchain Tech
R24 SURVEYING LAB MANUAL for civil enggi

Software reuirement elicitation in software engineering basics by ram k paliwal

  • 1. Software Engineering- Unit 1 REQUIREMENT ELICITATION TECHNIQUE IN SOFTWARE ENGINEERING 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 1
  • 2. Software Requirement The software requirements are description of features and functionalities of the target system. Requirements convey the expectations of users from the software product. The requirements can be obvious or hidden, known or unknown, expected or unexpected from client’s point of view. Requirement Engineering The process to gather the software requirements from client, analyze and document them is known as requirement engineering. The goal of requirement engineering is to develop and maintain sophisticated and descriptive ‘System Requirements Specification’ document. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 2
  • 3. Software Requirement Analysis Requirement Engineering Process It is a four step process, which includes ◦ Feasibility Study ◦ Requirement Gathering ◦ Software Requirement Specification ◦ Software Requirement Validation 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 3
  • 4. Software Requirement Analysis Feasibility Study: Feasibility study establishes the basic business requirements and constraints associated with the application to be built and then assesses whether the application is a viable. It explores technical aspects of the project and product such as ◦ usability ◦ Maintainability ◦ productivity ◦ integration ability. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 4
  • 5. Software Requirement Analysis Requirement Gathering If the feasibility report is positive towards undertaking the project, next phase starts with gathering requirements from the user. Analysts and engineers communicate with the client and end-users to know their ideas on what the software should provide and which features they want the software to include. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 5
  • 6. Software Requirement Analysis Software Requirement Specification SRS defines how the intended software will interact with ◦Hardware ◦external interfaces ◦speed of operation ◦response time of system 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 6
  • 7. Software Requirement Analysis Software Requirement Specification ◦ portability of software across various platforms ◦ Maintainability ◦ speed of recovery after crashing ◦ Security ◦ Quality ◦ Limitations etc. Note: SRS will be discussed in details in later chapters. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 7
  • 8. Software Requirement Analysis Software Requirement Validation Requirements can be checked against following conditions ◦ If they can be practically implemented ◦ If they are valid and as per functionality and domain of software ◦ If there are any ambiguities ◦ If they are complete ◦ If they can be demonstrated 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 8
  • 9. Requirement Elicitation Techniques Requirements elicitation is perhaps the most difficult, most error-prone and most communication intensive software development. It can be successful only through an effective customer-developer partnership. It is needed to know what the users really need. Note: The success of an elicitation technique used depends on the maturity of the analyst, developers, users and the customer involved. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 9
  • 10. Requirement Elicitation Techniques Requirement Elicitation methods 1. Interviews 2. Brainstorming Sessions 3. Form Analysis/ Interface Analysis etc… 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 10
  • 11. Requirement Elicitation Techniques 1. Interviews: Objective of conducting an interview is to understand the customer’s expectations from the software. It is impossible to interview every stakeholder hence representatives from groups are selected based on their expertise and credibility. ◦ Interviews maybe be open ended or structured. ◦ In open ended interviews there is no pre-set agenda. Context free questions may be asked to understand the problem. ◦ In structured interview, agenda of fairly open questions is prepared. Sometimes a proper questionnaire is designed for the interview. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 11
  • 12. Requirement Elicitation Techniques 2. Brainstorming Sessions: ◦ It is a group technique ◦ It is intended to generate lots of new ideas hence providing a platform to share views ◦ A highly trained facilitator is required to handle group bias and group conflicts. ◦ Every idea is documented so that everyone can see it. ◦ Finally a document is prepared which consists of the list of requirements and their priority if possible. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 12
  • 13. Requirement Elicitation Techniques 3. Form Analysis/Interface analysis ◦Interfaces for a software product can be human or machine. Integration with external systems and devices is just another interface. ◦User centric design approaches are very effective at making sure that we create usable software. ◦Interface analysis – reviewing the touch points with other external systems is important to make sure we don’t overlook requirements that aren’t immediately visible to users. 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 13
  • 14. References: https://www.tutorialspoint.com/software_engineering/software_requirements.htm?source=po st_page--------------------------- 7th edition Software Engineering A Practitioners Approach by Roger S. Pressman https://www.tutorialspoint.com/business_analysis/business_analysis_requirement_gathering_t echniques https://www.geeksforgeeks.org/software-engineering-requirements-elicitation/ 8/31/2019 REQUIREMENT ANALYSIS AND SPECIFICATION IN SOFTWARE ENGINEERING - UNIT 1 - BY RAM K PALIWAL 14

Editor's Notes

  • #5: When the client approaches the organization for getting the desired product developed, it comes up with rough idea about what all functions the software must perform and which all features are expected from the software. Referencing to this information, the analysts does a detailed study about whether the desired system and its functionality are feasible to develop. This feasibility study is focused towards goal of the organization. This study analyzes whether the software product can be practically materialized in terms of implementation, contribution of project to organization, cost constraints and as per values and objectives of the organization. It explores technical aspects of the project and product such as usability, maintainability, productivity and integration ability. The output of this phase should be a feasibility study report that should contain adequate comments and recommendations for management about whether or not the project should be undertaken.
  • #8: The requirements received from client are written in natural language. It is the responsibility of system analyst to document the requirements in technical language so that they can be comprehended and useful by the software development team. SRS should come up with following features: 1. User Requirements are expressed in natural language. 2. Technical requirements are expressed in structured language, which is used inside the organization. 3. Design description should be written in Pseudo code. 4. Format of Forms and GUI screen prints. 5. Conditional and mathematical notations for DFDs etc.
  • #9: After requirement specifications are developed, the requirements mentioned in this document are validated. User might ask for illegal, impractical solution or experts may interpret the requirements incorrectly. This results in huge increase in cost if not nipped in the bud.