Requirements and Specifications

Requirements Specification


Learning Objectives

  • You know what requirements specification is and know how large language models can be used to help in generating requirements specifications.

In the previous part, we briefly discussed describing expected system functionality. We looked into use cases and user stories, which are two of the most common ways to describe expected system functionality. In requirements specification, we further document the requirements in a way that they are understandable to the customer and other stakeholders, they can be used for estimating product costs and schedules, and that they can be subsequently validated. This documentation of the requirements is created by the development team, possible with the help of technical writers.

Here, we briefly look into software requirements specification, which is a document that describes the requirements for a software system. When forming a software requirements specification, it is meaningful to start from a template, such as the prototype outline in IEEE standard 830-1998, which is as follows.

Table of Contents
1. Introduction
1.1 Purpose
1.2 Scope
1.3 Definitions, acronyms, and abbreviations
1.4 References
1.5 Overview
2. Overall description
2.1 Product perspective
2.2 Product functions
2.3 User characteristics
2.4 Constraints
2.5 Assumptions and dependencies
3. Specific requirements
Appendixes
Index

Perhaps unsurprisingly, as large language models can be used to generate text, they can be also used to generate requirements specifications.

Try it out!

Try asking the LLM to generate a software requirements specification for a simple application of your choice, such as a calculator. First, try to have the model produce the generic structure with the key points, and then try to fill in the details for a part of the specification.


Loading Exercise...