| Member of the Month | Click Here for more information about how you can become Member of the Month |
Requirements Gathering
The first step of analysis should be the gathering of requirements for the system. This involves examining the problem statement and trying to understand what the customer wants. The customer in this case is the person wanting the product developed. This part of the project is very important for further development. It is highly desirable that the customer and development team are working from the same sheet of paper. It is very easy early in the project to start down different paths and have surprises later in the development. The customer may feel that his needs are being addressed when in fact they are not. The team may think that they are meeting the requirements when often times those requirements were not stated accurately or fully. Depending on processes in place, it may even be a good idea to put together some form of specification that outlines exactly what the team thinks that it is building. This specification should then be reviewed by the customer and a sign-off should take place. If misunderstandings occur later, then the specification can be reviewed to see what has happened. The team can use it as somewhat of an anchor to ensure that the customer is not constantly changing requirements (and they will).
Once the requirements have been gathered and understood, we can begin to analyze the problem. This will allow us to determine the architecture of the product and produce a design for construction. The analysis of the problem proceeds by examining the behavior of the system under development. A use case model best illustrates the behavior of a system in UML that shows the systems required functions (use cases), the players (actors), and the relationships between those actors and use cases (use case diagrams). The objective here is to provide communication between the customer and the development team for describing behavior and system functionality.

