A system-requirements document describes what a product will be like when it is completed. The document provides information about the need met by the product, its capabilities, its operating environment, user experience, properties, and the national or international standards it is required to meet. According to a report published by the Carnegie Mellon Software Engineering Institute, creating and reporting system requirements continues to be challenging for developers. The primary problems noted in this report were a failure to address adequately user or operational needs and tracking requirements throughout the product development life cycle.
Things You'll Need
- Product description
- User requirements
- Environmental requirements
- Constraint information
- Word processing software (optional but highly recommended)
Gather requirements. The stakeholders, those who are paying for the product development and those who will be using the product, have requirements that should be identified in the system-requirements report. A formal process to collect requirements is highly recommended. Several successful techniques to gather requirements are use cases, scenarios, prototypes and a detailed review of contractual requirements.
Identify any military standard (Mil-Std), international standards organization (ISO) and other governmental or legal requirements that apply to the product, and list those in the system-requirements report.
Describe the environment in which the system will operate, such as interfaces with power sources, other equipment, software, databases and users. Safety requirements may be included in the operating environment for the purposes of the system-requirements report.
Analyze constraints. Constraints on the product requirements may come from users, processing capabilities, power requirements, cost, and hardware and software integration. Constraints may also include expectations that cannot be met by current state-of-the-art technologies or within the project budget.
Create a list of functional requirements, such as speed of operations, resources used, performance in extreme environments, testing requirements, quality, safety, reliability and maintenance requirements.
Make a development schedule showing the expected achievement of major milestones along a timeline.
Write the system-requirements report introductory material. The title page contains the title, the name of the organization, the date and the author. Formal system-requirements documents may also have signatures from the responsible parties on the cover page. Create a table of contents and a list of figures and tables. Write an introduction, and list applicable reference documents.
Break the remainder of the document into sections, and write content that covers a general description, functional requirements and specialized requirements.