Professional Documents
Culture Documents
PUCIT - Lec2 PDF
PUCIT - Lec2 PDF
Lecture 02
Software Requirements - 1
Requirements are…a specification of what should be implemented.
They are descriptions of how the system should behave, or of a
system property or attribute. They may be a constraint on the
development process of the system.
●
Define a requirements development process
●
Write a vision and scope document
●
Identify user classes and their characteristics
●
Establish focus groups of typical users
●
Identify system events and responses
●
Hold facilitated elicitation workshops.
●
Examine problem reports of current systems for requirement ideas
●
Reuse requirements across projects
Best Practices in Requirements Engineering - 3
3. Requirements Analysis
●
Draw a context diagram
●
Analyze requirement feasibility
●
Prioritize the requirements
●
Model the requirements
●
Create a data dictionary – for consistent data definition across teams in
project
●
Allocate requirements to subsystems
Best Practices in Requirements Engineering - 4
4. Requirements Specification
●
SRS – adopt a scalable template (IEEE)
●
Identify sources of requirements
●
Uniquely label each requirement.
●
Record business rules
●
Specify quality attributes
Best Practices in Requirements Engineering - 5
5. Requirements Validation
●
Inspect requirements documents
●
Formal Inspection
●
Informal reviews
●
Test the requirements
●
Derive functional test cases for requirement and walk through with
customers
●
Define acceptance criteria
●
User reviews – customer based acceptance criteria
Best Practices in Requirements Engineering - 6
6. Requirements Management
●
Change control process and Change control Board (CCB)
●
Perform requirements-change impact analysis
●
Establish a baseline and control versions of requirements documents
●
Maintain a history of requirements changes
●
Track the status of each requirement.
●
Use a requirements management tool – DOORs etc
●
Create a requirements traceability matrix
Best Practices in Requirements Engineering - 7
7. Requirements Development Process
-
Best Practices in Requirements Engineering - 8
8. Project Management
●
Select an appropriate software development life cycle
●
Base project plans on requirements.
●
Renegotiate project commitments when requirements change
●
Document and manage requirements-related risks
●
Track the effort spent on requirements engineering
●
Review lessons learned regarding requirements on other projects
- Questions ?