Software developers do not implement business requirements or use cases. They implement functional requirements, certain fragments of the system’s behavior, allowing customers to execute use cases and perform their tasks. The use cases describe the behavior of the system from the point of view of the actor, with many details missing. To develop and implement the system properly, the developer needs to familiarize himself with a variety of points of view.
Some practitioners believe that use cases are functional requirements. However, problems may arise due to the fact that use cases are simply passed on to developers for implementation. Use cases describe the user’s point of view, his opinion about the external, visible behavior of the system. They do not contain all the information that is necessary for development of a software product. So, a person using a banking machine does not care what unobvious actions this machine must perform, for example, interact with a bank computer. These details are invisible to the user, but the developer must know about them.
Naturally, descriptions of use cases may include these details on such unobvious processors, however, as a rule, such questions are not raised during discussions with users. Even developers who are given full use cases often have many questions. To reduce this uncertainty, it is recommended that requirement analysts clearly write down the details of the functional requirements needed to implement each use case.
Technical writing company is able to create quality content for your technical documentation to ensure success of the project under development.
Many functional requirements are not recorded as the sequence of dialogues between the person and the system. Some of them are obvious, for example: “The system will assign a unique serial number to each request” There is no point in repeating these details in the software requirements specification, if these are clearly defined in the use case. Other functional requirements are not included in the description of the use case. They are identified by the analyst on the basis of a general idea about the use and operating environment of the system. The transformation of requirements, as the user sees them, into a form useful to developers, is the task of the analyst, one of many ways that enable him to benefit the project.