BR Chapter 10: Functional Requirements
Functional Requirements
Functional requirements are the things your product does to support the work. They should be, as far as possible, expressed independently from any technology that will be used to implement them. The business analysts are not attempting to craft a technological solution, but rather to specify what that technological solution must do. How it achieves that outcome is a matter for the designer.
Formality Guide
Rabbit projects mostly use some form of agile method and it is not necessary for them to produce the complete requirements specification. However, the idea of the description and its rationale contribute greatly to understanding the real requirement and the conversation with the business stakeholders, and should be included in stories.
Horse projects usually have a need to write their requirements in some communicable form. Wider distribution of project participants puts greater emphasis on communicating requirements in a more precise and consistent form. It is crucial that team members have a solid understanding of what a functional requirement is, and what the functional requirements mean for the eventual product.
Elephant projects must have a complete and correct requirements specification. All of the information in this chapter is relevant to elephants, and the discussion on level of granularity is particularly pertinent.
Level of Detail or Granularity
The requirements are written as a single sentence with a single verb. When you write this single
sentence, you make the requirement much easier to test and far less susceptible to ambiguity. The form “The product shall . . .”; it makes the sentence active and focuses on communicating what the product is intended to do. It also provides a consistent form for the developers and other stakeholders
who need to have a clear understanding of what the product is intended to do.
Data Models
Data models—also called class diagrams or entity relationship models— are a rich indicator of the product’s functionality.The class model shows the classes (or entities) as rectangles. A class is a logical collection of data attributes that is needed by the product to carry out its functionality. The lines between the classes indicate an association between two classes, and the name on the line indicates the reason for the association.


Functional Requirements describes the functionalities, capabilities and activities a system must be able to perform and they specify the overall behavior of the system to be developed. At a basic level, they specify what any service/product should be able to perform. Some of the characteristics of Functional Requirements which the business analyst must bear in mind are that functional requirements that:
ReplyDelete1. Are given by the users/business stakeholders
2. Only states ‘what’ the system is expected to do/perform and not ‘how’ the system is expected to do that (that’s in Application design document)
3. Are written from the perspective of the system and not from the viewpoint of the user (remember the prefix “The system should ….”)
4. Deal exclusively with the functionalities and features and do not contain any technical requirements within them
5. Should be crisp, non-ambiguous and written in non-technical language
6. Form the basis of the ‘functional scope’ of any application or product
A typical functional requirement will contain a unique name and number, a brief summary, and a rationale. This information is used to help the reader understand why the requirement is needed, and to track the requirement through the development of the system.The crux of the requirement is the description of the required behavior, which must be clear and readable. The described behavior may come from organizational or business rules, or it may be discovered through elicitation sessions with users, stakeholders, and other experts within the organization. Many requirements may be uncovered during the use case development. When this happens, the requirements analyst may create a placeholder requirement with a name and summary, and research the details later, to be filled in when they are better known.
ReplyDeleteFunctional requirements may involve calculations, technical details, data manipulation and processing, and other specific functionality that define what a system is supposed to accomplish. Behavioral requirements describe all the cases where the system uses the functional requirements, these are captured in use cases
You have, by this stage, chose the amount of your proprietor's work is to be done by your mechanized item. Presently you need to depict the usefulness of that item. Practical prerequisites are the things your item does to help the work. They ought to be, quite far, communicated autonomously from any innovation that will be utilized to actualize them. This partition may appear to be unusual, as these necessities apply to a mechanized item. Keep as a top priority, anyway that you, as the business expert, are not endeavoring to create a mechanical arrangement, yet rather to indicate what that innovative arrangement must do. How it accomplishes that result is an issue for the planner. The utilitarian prerequisites indicate the item to be grown, so they must contain adequate detail for the designer to assemble the right item with just the base of explanation and clarification from the prerequisites expert and the partners. Note that we don't state "no explanation." If the designer has definitely no inquiries, at that point you have done an excessive amount of work and gave too nitty gritty a necessities determination. We clarify this point further as we continue.
ReplyDelete