Lecture 5 Flashcards
Requirements
Requirements
Needs of stakeholders that’ll be solved by software
- a condition or capability needed by a user to solve a problem/achieve an objective that must be met by a system or system component to satisfy a contract, standard, specification, or other formally imposed document
[Requirements] Engineering
Waterfall vs Agile?
The process of defining, documenting, and maintaining requirements.
- Waterfall: 1st phase of SDLC
- Agile: Continues indefinitely throughout a system’s lifetime
[Requirements] Types
- Architectural
- Business
- User(stakeholder)
- Functional
- Non-functional
[Req Type] Architectural
Necessary systems structure and systems behavior.
[Req Type] Business
High-level statements of goals, objectives, or needs of an organization.
Opportunities the organization wants to realize, or problems the they want to solve.
[Req Type] User
Mid-level statements of needs of a (group of) stakeholder(s). Describe how someone wants to interact with the intended solution.
[Req Type] Functional
Capabilities, behavior, and information the solution will need.
“What the system does”
[Req Type] Non-Functional
The conditions under which the solution must remain effective, qualities the solution will have, or constraints under which the solution must operate. “ilities”.
“How well the system does it”
[Requirements] Software Requirements Specification
Description of a software system to be developed.
- Establishes the basis for an agreement between customers and suppliers on what the software product is to do, and what it is not to do
- Permits a rigorous assessment of requirements before design can begin
- Should provide a realistic basis for estimating product costs, risks, and schedules
[Requirments] Characteristics
- Unitary
- Complete
- Consistent
- Atomic
- Traceable
- Current
- Unambiguous
- Verifiable
[Requirements] Tracability
- Forwards Traceability: Mapping requirements to test cases. VALIDATION.
- Backwards Traceability: Mapping test cases to requirements. VERIFICATION.
[Requirements] Metrics
- Coverage: % of requests that are covered by tests
- Volatility:
-a gauge of change of requests during SDLC (target
under 10%)
-[((# Reqs Added + Deleted + Modified) * 100) / (#
Original Requirements)]