Software Requirements | Chapter 1 | The essential software requirement Flashcards
Chapter 1 Objective
- Understand some key terms used in the software requirements domain.
- Distinguish product requirements form project requirements.
- Distinguish requirements development from requirements management.
- Be alert to several requirements-related problems that can arise.
Types of Requirements
- Business Requirements
- Business Rule
- Constraint
- External Interface Requirements
- Feature
- Functional Requirement
- NonFunctional Requirements
- Quality Attribute
- System Requirement
- User Requirement
Business Requirement
A high-level business objective of the organization that builds a product or of a customer who procures it.
Business Rule
A policy, guideline, standard, or regulation that defines or constrains some aspect of the business. Not a software requirement in itself, but the origin of several types of software requirements.
Constraint
A restriction that is imposed on the choices available to the developer for the design and construction of a product.
External Interface Requirement
A description of a connection between a software system and a user, another software system, or a hardware device.
Feature
One or more logically related system will exhibit under specific conditions,
Functional Requirement
Specify the behaviors the product will exhibit under specific conditions.
NonFunctional Requirement
A description of a property or characteristic that a system must exhibit or a constraint that it must respect.
Quality Attribute
A kind of nonfunctional requirement that describes a service or performance characteristic of a product.
System Requirement
A top-level requirement for a product that contains multiple subsystems, which could be all software or software and hardware.
User Requirement
A goal or task that specific classes of users must be able to perform with a system, or a desired product attribute.
Software Requirements has three levels
- Business Requirements
- User Requirements
- Functional Requirements
Requirements Development
- Elicitation
- Analysis
- Specification
- Validation
Elicitation
- Identifying the product’s expected user classes and other stakeholders.
- Understanding user tasks and goals and the business objectives with which those tasks align.
- Learning about the environment in which the new product will product will be used.
- Working with individuals who represent each user class to understand their functionality needs and their quality expectations,