Lance McElhaney [email protected]
Dec 15, 2014
Lance McElhaney [email protected]
I’ll go up and find out what they want and the rest of you start coding!
TIME
PR
OB
AB
ILIT
Y
The Design Dilemma
Successful
Challenged
Failed
Standish Group 2013
Software Project Results
43 %
18 %
39 %
1. Executive Support 2. User Involvement 3. Clear Business Objectives 4. Emotional Maturity 5. Optimizing Scope 6. Agile Process 7. Project Management Expertise 8. Skilled Resources 9. Execution 10. Tools & Infrastructure
Top 10 Keys to Project Success
Standish Group 2013
Often or Always Used
20% Rarely or Never 50%
Sometimes 30%
Feature & Function Use
Standish Group 2013
“The most important function that the software builder performs is the extraction and refinement of the product requirements. No other part of the work so cripples the resulting system if done wrong.”
-Fred Brooks, The Mythical Man-Month
ALREADY
DOING THIS!
YOU ARE
Project Initiation
Project Execution
The PMBOK Process
Project Planning
Project Monitoring
Project Closing
Collect Requirements
Create WBS
Plan Scope Management
PMBOK Project Scope Management
Control Scope
Validate Scope
Define Scope
Collect Requirements
• Requirements Documentation
• Requirements Traceability Matrix
Business
User
System
Project Goals
What Users Need To KNOW and DO
What Developers Build
•Functional •Non-Functional
Requirement Levels
The user selects the Create Invoice menu item.
Use Cases
The system displays the Create Invoice screen.
The user selects a Customer, and enters a Begin Date and an End Date.
The user selects the Create Invoice button.
The system displays all invoice entries for the selected Customer with dates within the selected date range.
The user selects the Approve button.
The system displays an electronic invoice with a .pdf file type.
Verify
Verify
Validate
Business Requirements
User Requirements
System and Subsystem
Requirements
Component Design
Coding
Unit Tests
Integration & System Tests
User Acceptance
Tests
Business Results
The “V” Model
Requirement Definition Methods
Group
Individual
Direct Indirect
Interviews
Observation
More Filtering
Mo
re A
vera
gin
g
Focus Groups Surveys
SOP
User Manuals
Benchmarking
SMART Specific, Measurable, Attainable, Real, Traceable
HOW DO WE WRITE
REQUIREMENTS?
Examples
• The system shall maintain the tank TK1234 temperature at 5° C. during the HOLD phase.
• The system shall automatically close the tank TK1234 bottom valve when the tank level is below the low alarm limit.
• The system shall automatically close the tank TK1234 bottom valve.
• The system shall produce a daily production report.
• The system shall have a maximum response time of 1 second.
• The system shall automatically close the tank TK1234 bottom valve when the tank level reaches a certain limit.
• The system shall be available at all times.
Traceability