The objective of the Business Analysis workflow is to capture and communicate business processes and related requirements to support the strategic vision of the client and stated value-propositions.
The objective of the Requirements workflow and subsequent creation of the Solution Requirements Specification (SRS) is to fully describe the external behavior of the application or subsystem identified. It also describes nonfunctional requirements, design constraints and other factors necessary to provide a complete and comprehensive description of the requirements for the system.
The SRS will contain all the requirements to a level of detail sufficient to enable designers to design a system to satisfy those requirements, and testers to define tests to certify that the system satisfies those requirements. The SRS workflow provides both internal and customer reviews as well as rework in order to hone and solidify the SRS information to a level that satisfies the customer, analyst, architect, lead implementer and test designer.
Examples of the areas that are addressed by the SRS are functionality, usability, design constraints and interfaces. The SRS is the instrument used to communicate to all parties from the client to the analyst, graphics designer, architect, development team and test team the blue print of what is to be built and delivered.
The SRS is used for refinement of the development estimate and setting of scope for the construction phase.
The objective of the design workflow is twofold.
The first objective of the design workflow is to design a system that fulfills the requirements as described in the SRS and to satisfy user interaction from an aesthetic and usability perspective.
The second objective is to present clear and complete specification to the development team.
The design workflow includes architecture, data base definition, object modeling, security, and look and feel as some of the aspects involved in this effort.
Implementation is the process of acting on the requirements and design artifacts through the means of code development. Implementation is the construction of the building block elements and the subsequent joining of those elements into a complete system.
Implementation involves the integration of various systems and interfaces both internal and external that have been developed and or purchased. Implementation is the development of user interface screens and back end processing and the integration of those elements.
Implementation involves the internal unit testing by the developers of the building block elements and interfaces that they are responsible for.
The objective of the test workflow is to ensure that the SRS or blue print information has been satisfied, and validates that the overall functionality and interaction of the various components work together and cohesively.
Testing drives out any anomalies or issues that may have been missed during the development process, and provides an objective set of eyes that view the system from a different level than the development team who spends a majority their time in the details and individual components of the system.
Testing is the process, mechanism and gatekeeper that ensures that the product delivered meets or exceeds the SRS.