Software Requirements: Descriptions and Specifications of A System
Software Requirements: Descriptions and Specifications of A System
Descriptions and specifications of
a system
Requirements engineering
The process of establishing the services that the
customer requires from a system and the constraints
under which it operates and is developed
The requirements themselves are the descriptions of
the system services and constraints that are generated
during the requirements engineering process
What is a requirement?
It may range from a high-level abstract statement of a
service or of a system constraint to a detailed
mathematical functional specification
This is inevitable as requirements may serve a dual
function
• May be the basis for a bid for a contract - therefore must be open to
interpretation
• May be the basis for the contract itself - therefore must be defined in
detail
• Both these statements may be called requirements
Enduring and volatile requirements
Enduring requirements. Stable requirements derived
from the core activity of the customer organisation.
E.g. a hospital will always have doctors, nurses, etc.
May be derived from domain models
Volatile requirements. Requirements which change
during development or when the system is in use. In a
hospital, requirements derived from health-care policy
Types of requirement
User requirements
• Statements in natural language plus diagrams of the services the
system provides and its operational constraints. Written for customers
System requirements
• A structured document setting out detailed descriptions of the system
services. Written as a contract between client and contractor
Software specification
• A detailed software description which can serve as a basis for a design
or implementation. Written for developers
Definitions and specifications
Requirements definition
Requirements specification
1.1 The user should be provided with facilities to define the type of
1.2 external files.
1.2 Each external file type may have an associated tool which may be
1.2 applied to the file.
1.3 Each external file type may be represented as a specific icon on
1.2 the user’s display.
1.4 Facilities should be provided for the icon repr esenting an
1.2 external file type to be defined by the user.
1.5 When a user selects an icon repr esenting an external file, the
1.2 effect of that selection is to apply the tool associated with the type of
1.2 the external file to the file represented by the selected icon.
Requirements readers
Client managers
System end-users
User requirements Client engineers
Contractor managers
System architects
System end-users
Client engineers
System requirements
System architects
Software developers
Users of a
System Use the requirements to help
understand the system and
requirements
maintenance
engineers the relationships between its document
parts
The requirements engineering process
Feasibility Requirements
study elicitation and
analysis
Requir ements
specification
Feasibility Requirements
report validation
System
models
User and system
requirements
Requirements
document
IEEE requirements standard
Introduction
General description
Specific requirements
Appendices
Index
This is a generic structure that must be instantiated for
specific systems
Requirements document structure
Introduction
Glossary
User requirements definition
System architecture
System requirements specification
System models
System evolution
Appendices
Index