Chapter 4 Flashcards
The process of establishing the services that acustomer requires from a system and the constraints under which it operates and is developed.
Requirements engineering
The _______ are the descriptions of the system services and constraints that are generated during the requirements engineering process.
System requirements
It may range from a high-level abstract statement of a service or of a system constraint to a detailed mathematical functional specification.
Requirement
Requirements may serve dual-function where…
Basis for a bid for contract (open to interpretation)
Basis for contract itself (defined in detail)
“If a company wishes to let a contract for a large software development project, it must define its needs in a sufficiently abstract way that a solution is not pre-defined. The requirements must be written so that several contractors can bid for the contract, offering, perhaps, different ways of meeting the client organization’s needs. Once a contract has been awarded, the contractor must write a system definition for the client in more detail so that the client understands and can validate what the software will do. Both of these documents may be called the requirements document for the system.” This is the ____ by ____
Requirements abstraction by Davis
2 Types of requirement
User
System
Statements in natural language plus diagrams of the services the system provides and its operational constraints. Written for customers.
User requirements
A structured document setting out detailed descriptions of the system’s functions, services and operational constraints. Defines what should be implemented so may be part of a contract between client and contractor.
System requirements
Any person or organization who is affected by the system in some way and so who has a legitimate interest
System stakeholders
What are the stakeholder types
End users
System manager
System owners
External stakeholders
In agile methods, the requirements document is always out of date. True or false
True
For requirements, agile methods are practical for what systems?
Business, but problematic for those that require pre-delivery analysis or systems developed by several teams
3 Types of Requirements
Functional
Non-functional
Domain
It described functionality or system services.
Depend on the type of software, expected users and the type of system
may be high-level statements of what the system should do.
should describe the system services in detail.
Functional requirements
This is what happens when functional requirements are not precisely stated.
Requirements imprecision
In principle, requirements should be both ______ and _______.
Complete and consistent
These define system properties and constraints e.g. reliability, response time and storage requirements. Constraints are I/O device capability, system representations, etc.
Non-functional requirements
What happens when non-functional requirements are not met?
System may be useless
Non-functional requirements are less critical than functional requirements. True or false?
False
Non-functional requirements may affect the ______ architecture of a system rather than the individual components.
Overall
Non-functional requirements may also generate requirements that restrict existing requirements. True or false
True
What are the Non-functional classifications?
Product requirements (product)
Organisational requirements (policies)
External requirements
A general intention of the user such as ease of use.
Goal
A statement using some measure that can be objectively tested.
Verifiable/Testable non-functional requirement