1. Chapter 1 Introduction
|
| |
- Topics
- What is a requirement?
- Types of requirements
- Important requirement concepts
- Requirement levels
- Requirement Categories
- What is requirements management?
- The cost of requirement errors
- The game plan towards building quality software
- Development Process
- The Rational Unified Process
- Inception Phase
- Example of High-Level Requirements
- Example of Non-Functional Requirements
- Elaboration Phase
- Example of a Use Case Diagram
- Construction Phase
- Software Development Life Cycle with the RUP
- Requirement Gathering Roadmap
- The roadmap
- Step 1 Analyze the problem
- Step 2 Understand User Needs
- Step 3 Define the system
- Step 4 Manage the scope
- Step 5 Refine the system definition
- Step 6 Manage changing requirements
|
| |
2. Chapter 2 Problem Analysis and Understanding User Needs
|
| |
- Topics
- What we plan to accomplish
- Problem Analysis Steps
- Analysis Steps
- Stakeholders
- Definition of Actors
- Analysis Steps
- Bring out the requirements
- Interviewing
- Step A: Interview every stakeholder
- Step B: Requirements Workshop
- Requirements Workshop
- Organizing requirement workshop
- Brainstorming
- Brainstorming- Idea reduction
- Documentation Analysis & Focus Groups
- Interface analysis & Observation
- Prototyping
- Surveys/Questionnaires
- Step C: Identify Constraints
- Example - Given scenario
- Example (cont d)
- Registration system Problem statement
- Registration system Problem statement(cont d)
- List the stakeholders and users in the scenario
- List the actors
- Identify the constraints in the scenario
- Creating a constraint list
|
| |
3. Chapter 3 Vision Document & Managing scope
|
| |
- Topics
- Topics - cont d
- Vision document - Objectives
- Vision document - Scope
- Vision document - References
- Vision document - Positioning
- Vision document - Positioning (cont d)
- Vision document - User Description
- Vision document - Product Overview
- Vision document - Feature Attributes
- Vision document - Product Features
- Vision document - Constraints
- Vision document - Quality Ranges
- Vision document - Precedence and Priority
- Vision document - Other Product Requirements
- Vision document - Documentation Requirements
- Example of Vision document
- Managing Scope
- Define a baseline
- Example of itemizing list of processes or use cases
- Setting priorities
- Example - Setting priorities
- Assessing effort
- Example - Assessing effort
- Adding the risk element
- Example - risk element
- Get customer agreement on scope
- Use iterative development process
- Plan Change Request (PCR)
|
| |
4. Chapter 4 Use Case Concepts
|
| |
- Topics
- What are Use Cases?
- Benefits of Use Cases
- Use-Case Modeling
- An use case is a collection of scenarios
- To Use Case or not to
- Use Cases
- Use case modeling steps
- An Example use case
- Identifying the actors involved in this use case
- Write the use case for the above scenario
- Use case for the above scenario (contd)
- Classifying Use Cases
- A business use case
- Example of business use case (contn d)
- A system use case
- See notes
- Levels of use cases
- Examples of Summary level use cases
- Example of User goal level use cases
- Examples of Sub function use cases
- For use case modeling
- Use cases are only one part
- The Problem with Requirements Specifications
- Relationship Between Use Cases and Requirements
- Who are interested in use cases?
- General Principles
- Scenarios
- Primary Scenarios
- Example of ATM use case
- See notes
- Use Case interactions
- Finding Actors
- Finding Actors - continued
- Documenting Actors
- Where are the actors documented?
- The Actor-Profile table for the course registration system:
- Actor-profile table contd.
- Example Actor-goal list
- Goal List
|
| |
5. Chapter 5 Use Case Modeling Use cases and supporting documents
|
| |
- Topics
- Basic building blocks
- Basic Building Blocks of an Use Case
- Supporting documents
- Conceptual model
- Domain Model
- Non-functional Specification
- More use cases
- Documenting use cases
- Use Case Diagrams
- Scope
- The scenario we have been working on
- Identify the requirements that must be addressed by the system:
- Identify the use cases :
- Example - use case model
- Example - use case model for Registration system
- Lists used to manage scope In/out list for the above example
- Lists used to manage scope Actor/goal list for the above example
- Example - Use Case Specification
- Example - Use Case Specification (Contn d)
|
| |
6. Chapter 6 Writing Use Cases
|
| |
- Topics
- Actor Personalities
- Goal Levels
- Pre-conditions and Triggers
- Example of Pre-conditions
- Guidelines for writing flows
- Do's and don'ts" when writing use cases
- Extensions
- Use case linkages
- Sub Use Cases
- Example - Sub use cases with include & extend relations
- Quality Measures for Use Cases
- More Quality Measures
- See notes
- Who should write use cases?
- Fully Described Use Cases
- How much detail?
- Completeness & Complexity
|
| |
7. Chapter 7 Use Case Formats
|
| |
- Topics
- Formats to choose from
- Brief Description Format
- Bulleted Outline Format
- Conversational Format
- Narrative Format
- When to choose a format.
- Tools
- CASE tools
- Reviewing Use Cases
- Style
- Style Guides
|
| |
8. Chapter 8 Miscellaneous Topics
|
| |
- Topics
- Describing UI Wizards
- Make sure that the system is included
- Make sure that the user is included
- Wrong goal levels
- Make the use case easy to read
- Collect multiple pieces of data
- Do not forget the Exception Flows (failure scenarios)
- Stay away from internal system details
- Preconditions should be established by the system
- Proper use of UML
- CRUD Use Cases
- Contain the explosion
- Example - CRUD Use Case Specification
- Example - CRUD Use Case Specification (cont d)
|
| |
9. Chapter 9 Supplementary Requirements
|
| |
- Topics
- What are supplementary Requirements
- Example of supplementary specifications
- Example of supplementary specifications (cont d)
- Brief outline.
- Functionality
- Non-functional requirements
- Usability
- Reliability
- List Reliability requirements:
- Performance
- Supportability
- Design Constraints
- Practical Example of supplementary specifications
- Purpose
- Scope
- References
- Non-Functional - Course Registration System
- Usability - Course Registration System
- Reliability - Course Registration System
- Performance - Course Registration System
- Performance (cont d)
- Supportability
- Supportability (cont d)
- Design Constraint - Course Registration System
- Design Constraint (cont d)
|