A functional specification (also, functional spec, specs, functional specifications document (FSD), functional requirements specification) in systems engineering and software development is a document that specifies the functions that a system or component must perform (often part of a requirements specification) (ISO/IEC/IEEE 24765-2010).
The documentation typically describes what is needed by the system user as well as requested properties of inputs and outputs (e.g. of the software system). A functional specification is the more technical response to a matching requirements document, e.g. the Product Requirements Document "PRD". Thus it picks up the results of the requirements analysis stage. On more complex systems multiple levels of functional specifications will typically nest to each other, e.g. on the system level, on the module level and on the level of technical details.
A functional specification does not define the inner workings of the proposed system; it does not include the specification of how the system function will be implemented.
A functional requirement in a functional specification might state as follows:
When the user clicks the OK button, the dialog is closed and the focus is returned to the main window in the state it was in before this dialog was displayed.
Such a requirement describes an interaction between an external agent (the user) and the software system. When the user provides input to the system by clicking the OK button, the program responds (or should respond) by closing the dialog window containing the OK button.
There are many purposes for functional specifications. One of the primary purposes on team projects is to achieve some form of team consensus on what the program is to achieve before making the more time-consuming effort of writing source code and test cases, followed by a period of debugging. Typically, such consensus is reached after one or more reviews by the stakeholders on the project at hand after having negotiated a cost-effective way to achieve the requirements the software needs to fulfill.
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.
In software engineering, a software development process is a process of planning and managing software development. It typically involves dividing software development work into smaller, parallel, or sequential steps or sub-processes to improve design and/or product management. It is also known as a software development life cycle (SDLC). The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.
A software requirements specification (SRS) is a description of a software system to be developed. It is modeled after the business requirements specification (CONOPS). The software requirements specification lays out functional and non-functional requirements, and it may include a set of use cases that describe user interactions that the software must provide to the user for perfect interaction.
Systems engineering is an interdisciplinary field of engineering and engineering management that focuses on how to design, integrate, and manage complex systems over their life cycles. At its core, systems engineering utilizes systems thinking principles to organize this body of knowledge. The individual outcome of such efforts, an engineered system, can be defined as a combination of components that work in synergy to collectively perform a useful function.
We learn and apply software engineering principles to program projects in Python. Projects cover problems in life sciences, and will be developed over the course of the semester.
Le cours propose d'expérimenter les spécificités du design industriel en confrontant les étudiant.e.s à la création d'un objet. Il s'agit d'un enseignement pratique dont le résultat est un objet fonct
Introduction à la technologie du bâti: défis environnementaux et sociétaux, exigences techniques et fonctionnelles du bâtiment dans la durée, équilibre statique des ossatures, matériaux de constructio
Metal Forming is a basic and essential industrial process to provide materials for constructing complex products. To design an efficient metal forming process, the functional requirements and operational performance are two important aspects to be consider ...
Pergamon-Elsevier Science Ltd2024
The paper focuses on the energy management of a single-phase PV-BESS hybrid distributed system sized for residential applications, using a CHB converter topology as grid interface. The CHB is driven with a hierarchical energy management architecture, with ...
ELSEVIER SCIENCE SA2023
, , , ,
The construction industry is a significant contributor to resource consumption and waste generation. To address this issue, component reuse has been proposed as a way to prevent valuable building elements from being discarded and avoid producing new ones. ...