Chapter 4
Requirement Engineering
1. Introduction
Requirement engineering
The most critical step of the entire SDLC
Changes can be made easily in this stage
Most (>50%) system failures are due to problems with
requirements
Iterative processes are effective because:
Small batches of requirements can be identified and implemented
incrementally
The system will evolve over time
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
2. Requirement Engineering
Purpose: to convert high level business requirements (from
the system request) into detailed software requirements that
can be used as inputs for creating models
What is a requirement?
A statement of what the system must do or a characteristic it must
have
Will later evolve into a design (a technical description of how the
system will be implemented)
Types:
Functional: relates to a process or data
Non-functional: e.g. performance or usability
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Sample Requirements
Functional requirements
User shall be able to register
Admin shall be able to delete accounts
Parent shall be able to print Student progress report
Non-functional requirements
System shall run on Linux
System shall interoperate with Edugate
System shall be able to handle up to 100 Ktps
User shall be able to complete operations within no more than 5
mouse clicks
System shall be available 99.9% of the time
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
3. Nonfunctional Requirements
Operational Cultural influence
Technical environment Language differences (keyboard
System integration requirements)
Portability Legal implications
Maintainability Laws & government regulations
Performance Global presence requires
scrutiny of local laws
Speed
Capacity
Availability & reliability
Security
Access control
Encryption & authentication
PowerPoint
VirusPresentation
controlfor Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Operational Requirements
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Performance Requirements
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Security Requirements
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Cultural Requirements
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Requirement Engineering Process
Requirement elicitation (gathering, determining)
Requirement analysis
Requirement specification (definition)
This process is concurrent, iterative, and incremental
Business & IT personnel need to collaborate
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
4. Requirement Elicitation
Process is used to:
Uncover all requirements (those uncovered late in the process
are more difficult to incorporate)
Which technique(s) to use?
Interviews
Joint Application Development (JAD)
Questionnaires
Document analysis
Observation
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Interviews
Most popular technique—if you need to know something,
just ask
Process:
Select people to interview & create a schedule
Design interview questions (Open-ended, closed-ended,
probing types of questions)
Prepare for the interview (Unstructured vs. structured
interview organized in a logical order)
Conduct the interview (Top-down vs. bottom-up)
Follow-up after the interview
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Question Types
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Interviewing Strategies
Top-down
How
High-level: can order
Very general processing be
improved?
Medium-level: How can we reduce the
Moderately specific number of times that customers
return ordered items?
Low-level: How can we reduce the number of
Very specific errors in order processing (e.g., shipping
the wrong products)? Bottom-up
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Post-Interview
Prepare notes and send to the interviewee for verification
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Joint Application Development (JAD)
Joint user-analyst meeting
Meetings can be held electronically and anonymously
Reduces problems in group settings
Can be held remotely
Sessions require careful planning to be successful
Users may need to bring documents or user manuals
Ground rules should be established
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Questionnaires
A set of written questions used to obtain information
from individuals
May be paper based or electronic (e.g., web based)
Common uses:
Large numbers of people
Need both information and opinions
Can use outside the organization (customers, vendors, etc.)
Typical response rates: < 50% (paper); < 30% (Web)
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Questionnaire Steps
Select the participants
Identify the population
Use representative samples for large populations
Designing the questionnaire
Careful question selection
Remove ambiguities
Administering the questionnaire
Working to get good response rate
Offer an incentive (e.g., a free pen)
Questionnaire follow-up
May send results to participants
May send a thank-you
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Good Questionnaire Design
Begin with non-threatening and interesting questions
Group items into logically coherent sections
No important items at the very end
Do not crowd a page with too many items
Avoid abbreviations
Avoid biased or suggestive items or terms
Number questions to avoid confusion
Pretest to identify confusing questions
Provide anonymity to respondents
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Document Analysis
Provides information about the “as-is” system
Review technical documents when available
Review typical user documents:
Forms
Reports
Policy manuals
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Observation
Users/managers often don’t remember everything they do
Checks validity of information gathered in other ways
Try not to interrupt or influence workers
Be careful not to ignore periodic activities (weekly, monthly,
annually)
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Requirement Elicitation Techniques
Compared
A combination of techniques may be used
Document analysis & observation require little training;
JAD sessions can be very challenging
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Alternative Techniques
Concept Maps
Represent meaningful relationships between concepts
Focus individuals on a small number of key ideas
User Stories, Story Cards & Task Lists
Associated with agile development methods
Very low tech, high touch, easily updatable, and very portable
Captured using story cards (index cards)
Capture both functional and nonfunctional requirements.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Story Cards & Task Lists
Capture requirement using story cards (index cards)
File card with single requirement
Each requirement (card) is discussed
How much effort is required to implement it
A task list is created for each requirement (story)
Large requirements can be split into smaller sections
The story can be prioritized by risk level and importance
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
5. Requirement Analysis
Problems in requirement elicitation:
Analyst may not have access to the correct users
Requirement content:
ambiguity,
contradiction,
incompleteness,
incompatibility
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
6. The System Proposal
Combines all material created in planning & analysis
Included sections:
Executive summary
Provides all critical information is summary form
Helps busy executives determine which sections they need to read
in more detail
The system request
The workplan
The feasibility analysis
The requirement definition
Current models of the system (expected to evolve)
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
System Proposal Template
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Discussion
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.
Write some FRs and NFRs for the following software
projects:
Edugate
Website of Saudi Airlines
Microsoft Excel
Autonomous car embedded software
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition
Copyright © 2015 John Wiley & Sons, Inc. All rights reserved.