What is a Requirements Specification?

According to DIN 69901-5, a requirements specification is “the set of requirements defined by the client regarding the goods and services to be provided by a contractor within the scope of a contract.” From the customer’s perspective, it precisely describes what the system is intended to do and why it is needed without prescribing a technical solution. Thus, it forms the binding basis for tenders, bids, and subsequent acceptance.

Who Is Involved in Developing the Requirements Specification?

The client takes the lead in creating the requirements specification. They must define their needs. In practice, however, this process becomes a collaborative effort involving several stakeholders:

  • Client: Bears overall responsibility
  • Stakeholders: Line departments, management, and IT security
  • Users: Provide functional requirements based on practical experience
  • Requirements Engineer/Business Analyst: Facilitates identification of requirements and structures results

A requirements specification does more than define the desired service. It also defines the conditions under which the service is considered successfully delivered.

tooltip text
1

In a software requirements specification, the customer forms the desired requirements for the system under development without getting into the technical implementation.

2

There are no regulations for the structure and content of the software requirements specification. Generally, at least three chapters are needed: An introduction, a product description and a description of the requirements.

To ensure completeness, it is recommended that the content be structured according to a common standard.

Below are some examples:

Classification According to Balzert

Balzert‘s highly practical framework is frequently used in training and medium-sized German projects. It ensures that technical and qualitative aspects are both addressed.

1. Objective Definition

Describes the business goals and intended benefits. What should the system achieve? What are the key success criteria?

2. Product Usage

Defines the system’s context, scope of application, and target groups. In which environment will the product be used? Who are the users? Which other systems must it communicate with?

3. Product Functions

From the client’s perspective, what are the functional requirements? Which tasks must the system actively support? (Often formulated as use cases.)

4. Product Data

This specifies which data the system must store and manage in the long term from a business perspective without including database design details.

5. Product Performance

Requirements regarding time and capacity. How quickly must the system respond? How many users must be able to work simultaneously?

6. Quality Requirements

Definition of characteristics such as reliability, usability, efficiency, and modifiability based on ISO/IEC 25010.

7. Additional Requirements

Special requirements that do not fit into any other category, such as training, documentation obligations, or compliance with specific standards.

Software Requirements Specification (SRS)
According to the IEEE:

For internationally oriented projects or the development of complex software systems, the structure defined by the IEEE standard (ISO/IEC/IEEE 29148) is widely recognized. The Software Requirements Specification (IEEE/SRS) is divided into three main sections:

1. Introduction

This section establishes the overall context and ensures that all project stakeholders share a common understanding.

  • Purpose: Who is this document for? What is its objective?
  • Scope: Which product is described? What is explicitly out of scope?
  • Definitions and Acronyms: A glossary is provided to avoid terminological misunderstandings.
  • References: Links to related documents, such as the business case or higher-level system specifications.

2. Overall Description

This section provides an overview without excessive detail.

  • Product Perspective: Is the software a standalone product or part of a larger system?
  • Product Functions: A summary of the main functions, often illustrated with a use-case diagram.
  • User Characteristics: Who are the users? What prior knowledge do they have?
  • Constraints: Legal requirements, hardware limitations, and mandatory protocols.
  • Assumptions and dependencies: Which external factors (e.g., third-party APIs) influence project success?

3. Specific Requirements

This section is critical for development and quality assurance. It must be precise enough to derive test cases.

  • External Interfaces: A detailed description of the user interface (UI), hardware interface, and software interface (API).
  • Functional Requirements: Detailed logic, input validation, and data processing for each function.
  • Performance Requirements: Static and dynamic requirements (e.g., number of concurrent users and response times under load).
  • Software attributes: Requirements for reliability, availability, security, and maintainability.

Logical database requirements: Which information entities must be stored persistently? (e.g., ER models or class diagrams).

Comparing Standards and Frameworks

Additional standards can be considered to create a legally sound and professionally structured requirements specification. The following overview highlights the most common standards:
Key Characteristics Typical Use
Balzert (Classic) Didactically clear structure with a focus on completeness of chapters Standard approach in software engineering projects in the D-A-CH region
IEEE 29148 Emphasis on precise language (“shall” statements) and logical hierarchy International IT projects
V-Model XT Highly formalized product templates (requirements document as “Customer Requirements”) Public sector and government projects in Germany
IREB Standard Focus on quality criteria of requirements (atomicity, verifiability) Method-driven organizations
ISO/IEC 25010 Focus on software quality characteristics (non-functional requirements) Highly critical systems (e.g., safety, usability)

Requirements Specification vs. Functional Specification

The terms “requirements specification” and “functional specification”  are often confused. However, it is essential to distinguish between them for legal and professional clarity.

comparison of requirements and functional specifications:
Requirements Specification Functional Specification
Responsibility Client (customer) Contractor (supplier)
Key Question WHAT is needed? (problem space) HOW will it be implemented? (solution space)
Legal Status Basis for tendering Basis for contract and implementation

 

In practice, these documents are frequently mixed or combined.

Effectively Documenting Requirements

A static requirements specification created in Word can quickly become outdated and disconnected from the reality of the project. Updating such documents is time-consuming, and it is easy to lose traceability. Requirement quality, such as testability, becomes difficult to verify. In the worst case, a product is delivered that meets an outdated version of the document but no longer reflects current stakeholder needs.

With objectiF RPM, however, the requirements specification evolves from a “dead document” into a dynamic data foundation. Instead of writing a lengthy document, requirements are managed as database objects, and an up-to-date specification can be generated from them at any time. Your benefits:

  • Structured at the click of a button: Use a ready-made, standards-compliant template that can be applied as is or tailored to your needs.
  • Visual modeling: Integrate diagrams (e.g., goals, system context, and use cases) directly into the specification.
  • Real-time documentation: Generate an up-to-date requirements specification as an MS Word or PDF document directly from the tool.
Lastenheft aus einer Vorlage in objectiF RPM generieren
Wissen online: objectiF RPM und objectiF RM

Try objectiF RPM

Test objectiF RPM free of charge for 30 days—with full functionality, including templates for requirements engineering and project management.

FAQ

Does a requirements specification fit into Agile development?
Yes, absolutely. Contrary to popular belief, agility does not mean a lack of documentation. In agile environments, the requirements specification often serves as a vision document or the basis for the product backlog. While it establishes the contractual basis in traditional projects, in agile contexts, it defines the scope and business goals. Rather than specifying every detail upfront, the document captures epics and high-level requirements. Detailed elaboration then takes place “just in time” during sprints. Without this initial framework, even agile projects risk losing focus on business value.
What is the biggest risk associated with a requirements specification?
The greatest risk is that it will be incomplete or vague. Without measurable criteria, terms such as “user-friendly” or “fast” cannot be verified. This inevitably leads to conflicts during acceptance testing. A second major risk is confusion regarding the requirements specification, such as providing solution specifications instead of a problem description.
Is a requirements specification legally binding?
The specifications initially serve as the basis for soliciting bids. They only acquire legally binding force for the acceptance of services when they become part of the contract, usually in conjunction with the contractor’s requirements specification based on them.
How detailed should a requirements specification be?
Provide as much detail as necessary to calculate a binding quote. The guiding principle is to provide as much detail as possible regarding the objectives/functions and as little as possible regarding the technical implementation. This gives the contractor the flexibility to find the best technical solution.

Want to Know More?

Explore more knowledge base articles online or download one of our whitepapers.