During the requirements analysis process we gather knowledge about our clients business model which describes what they do, how they do it, and the core value they bring to their prospects. Understanding the business model assists us in understanding how an enterprise web development assists in the furtherance of the business model.
We drill down into the functional requirements which will describe what the functional components of the enterprise solution are. Functional defines the behavior of the solution. During this process we determine how the various components of the system interact to produce a cohesive solution.
After gathering functional requirements we create a requirements document which is the published version of the functional requirements gathered prior.
We create a solutions architecture diagram from the requirements which gives a visual representation of the solutions strategy and contains the technology components that comprise the solution. In our solutions architecture, databases, web services, API's, business logic units, workflows, security and integration into in-house applications are all factored into the diagram.
We opt for UML representations of the functional requirements of the system if time/budget permits. We create varying diagrams to depict various cross sections of the solution space. For instance, an Actvity Diagram will layout the sequence of steps including decision making nodes that help to organize the flow of application processes. Class diagrams are leveraged to help to map functional components to application objects that execute functionality. Interface diagrams are leveraged to assist in illustrating how application objects interface with other application objects.