Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
A functional specification (FS) is a formal document that details all features and specifications of a certain software product. During the requirements phase of the software development process, a functional specification is one of the key documents created by a manager or lead developer. Hence, the functional specification should contain enough detail for the developers to begin the design of the project and thereafter to begin coding.
A functional specification is also known as a functional design specification.
The method of preparing specifications before the product is known as “writing the manual first” and serves as an outline of the finished program. The functional specification lists user task descriptions, product comparisons, any external interfaces and all compatible hardware, software, framework versions and operating systems.
The scope of the functional specification should be limited to the following:
There are a number of other plans and documents that reference the functional specification. Some of the key documents that are guided by functional specification are:
The functional specification will typically need to evolve as the development of the software product progresses. It may be impossible to specify some details at the time the project is initiated. For example, it may be impossible to define all of the screen formats for an interactive program during the requirements phase.