It is critical to understand how these roles relate to the overall project flow and life cycle. Each of the team members participates in the different phases of the development effort. However, during certain phases, some roles aren’t leveraged, making them available for other tasks. For instance, on the WHITTMANHART project, one of our client developers possessed very strong design and information architecture skills, so we were able to leverage his skills on many phases of the project.
Take a look the life cycle of a typical Flex application, broken down into six distinct phases,
Figure 2. The roles within the life cycle of a Flex application.
It is important to understand that each phase of the project life cycle depends on the previous phase. For instance, it wouldn't make sense to define the user interface without first understanding the problem, nor would a team start building components without understanding the architecture of the application. This well thought out process will make any Flex project pay off, as it did with the WHITTMANHART project.
Within each phase, our experience in developing Flex applications indicates that a high degree of interactivity between design and development is required. Throughout the design phase, we went through several iterations to validate design feasibility and performance characteristics. These are indicated by the blue arrows in the diagram above.