
1.
Introduction to requirements engineering
Introduction to workshop, objectives, participant expectations
Define three levels of software requirements: business, user, and functional
Requirements development and requirements management process overview
2.
Identifying users
Sources of requirements
Customer involvement in the requirements process: the product champion model and user classesPractice session: clarifying users, user classes and product champions
3. Defining vision and scope
Business requirements
Vision and scope document
Using a context diagram to capture scope
Practice session: writing business requirements and capturing scope using a context diagram
4. Understanding user needs
Gathering requirements through use cases
Practice session: use cases
Software quality attributes, nonfunctional requirements and constraints
Practice session: deriving software quality attributes, nonfunctional requirements and constraints
Documenting requirements: the software requirements specification (SRS)
5. Deriving functional requirements
Deriving functional requirements, system requirements and business rules
Practice session: deriving functional requirements, system requirements and business rules
6. Analyzing and verifying requirements
Prioritizing requirements
NASA's ARM freeware tool to find requirements errors
Modeling user interfaces with dialog maps
Practice session: dialog maps
Reviewing and inspecting requirements documents
Practice session: inspecting a portion of an SRS
Generating test cases
Reducing the expectation gap through prototyping
7. Managing requirements changes
Requirements management process
Requirements management tools
Requirements traceability
8.
Optional: The Capability Maturity Model Integration (CMMI 1.2)
Requirements (REQM and RD)
*Licensed from Karl Wiegers, and based on his book, Software Requirements (Microsoft Press, Edition 2, 2003, ISBN 0-7356-1879-8).
© The Process Group