Establish and maintain a definition of required functionality.
The definition of functionality, also referred to as “functional analysis,” is the description of what the product is intended to do. The definition of functionality can include actions, sequence, inputs, outputs, or other
information that communicates the manner in which the product will be used.
Functional analysis is not the same as structured analysis in software development and does not presume a functionally oriented software design. In object-oriented software design, it relates to defining what are called “services”
or “methods.” The definition of functions, their logical groupings, and their association with requirements is referred to as a functional architecture. (See the definition of “functional architecture” in the glossary.)
Typical Work Products
1. Functional architecture
2. Activity diagrams and use cases
3. Object-oriented analysis with services or methods identified
Subpractices
1. Analyze and quantify functionality required by end users.
2. Analyze requirements to identify logical or functional partitions (e.g., subfunctions).
3. Partition requirements into groups, based on established criteria (e.g., similar functionality, performance, or coupling), to facilitate and focus the requirements
analysis.
4. Consider the sequencing of time-critical functions both initially and subsequently during product component development.
5. Allocate customer requirements to functional partitions, objects, people, or support elements to support the synthesis of solutions.
6. Allocate functional and performance requirements to functions and subfunctions.