Ch 4. Requirements Engineering Flashcards
What is a requirement?
May range from a high level abstract statement of a service or of a system constraint to a detailed mathematical functional specification
What are the types of requirements?
- User requirements
- System requirements
What are user requirements?
Statements in natural language plus diagrams of services the system provides and its operation constraints
Written for customers
What are system 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
Agile methods usually use __ requirements engineering and may express requirements as __
- Incremental
- User stories
What are functional requirements?
Statements of services the system should provide
What are nonfunction requirements?
Constraints on the services or functions offered by the system
What are domain requirements?
Constraints on the system from the domain of operation
In principle requirements should be both __ and __
- Complete
- Consistent
In practice, because of system and environmental complexity, it’s impossible to produce a ___
complete and consistent requirements document
___ requirements may be more critical then __ reequipments
- Non-functional
- Functional
What are the nonfunctional classifications?
- Product requirements
- Organizational requirements
- External requirements
What are product requirements?
Specify the delivered product must behave in a particular way
What are organizational requirements?
A consequence of organizationla policies and procedures
What are external requirements?
Arise from factors external to the system and it’s development process
What is a goal?
A general intention of the user such as ease of use
The process used for requirements engineering processes vary widely depending on?
- The application domain
- The people involved
- The organization developing the requirements
What are the generic activites common to all requirements engineering process?
- Requirements elicitation
- Requirements analysis
- Requirements validation
- Requirements managementq
Requirements engineering is an __ activity
iterative
What are the stages of requirements elicitation?
- Requirements discovery
- Requirements classification and organization
- Requirements prioritization and negotiation
- Requirements specification
What is requirements discovery?
The process of gathering info about the required and existing systems and distilling the user and system requirements from this info
What is ethnography?
A social scientist spends a considerable time observing and analyzing how people actually work
What are scenarios and user stories?
Real life examples of how a system can be used
What is a scenario?
A structured form of a user story
What is requirements specification?
The process of writing down the user and system requirements in a requirements document
What are structure specifications?
An approach to writing requirements where the freedom of the requirements writer is limited and requirements are written in a standard way
What is tabular specification?
Used to supplement natural language
When is using tabular specification useful?
When you have to define a number of possible alternative courses of action
What is the software requirements document?
The official statement of what is required of the system developers
What are requirements validation?
Concerned with demonstrating that the requirements define the system that the customer really wants
What do you need to check for in requirements checking?
- Validity
- Consistency
- Completeness
- Realism
- Verifiability
What are the requirements validation techniques?
- Requirements reviews
- Prototyping
- Test case generation
What are the requirement management decisions?
- Requirements identification
- A change management process
- Traceability policies
- Tool support
What are the stages of deciding if a requirements change should be accepted?
- Problem analysis and change specification
- Change analysis and costing
- Change implementation