The Adobe team was divided into two groups: the creative team and the technical team. The goal of the creative team was to define the look and feel, i.e. the requirements for the user interface, design the user interface, and architect the user interface. The goal of the technical team was to develop the user interface components including the client-server interface. The roles and hierarchy of team members in a Flex application development project are shown in the figure:
Team Hierarchy for a Flex Project
The association between the SDLC process and team member role is described below:
Roles in SDLC for a Flex Application
Planning – The Project Manager presents a business case with a feasible technical solution to help the customer visualize and accept the solution and the project plan. The Project Manager has to coordinate the roles between the team members involved in different phases of the SDLC process. Creative and Technical Leads in the project provide technical guidance to the team members and assist the Project Manager in project scheduling.
Analysis – The Project Manager interacts with the customers and the team members to define the project requirements. Interactive sessions are held between customers, experts, and team members to determine the application requirements, preliminary wireframes are created. The use cases are defined in every iterative phase of analysis.
Design – Visual Designer is involved in the design of the user interface look and feel; graphic assets are created to convey the design concepts. Information Architect shall use requirements, use cases, and preliminary wireframes to invent new animations for context, usability, and transitions. The Client and Server Programmers create the facade that defines the interface between the front-end and back-end to exchange data.
Development – Client and Server Programmers are involved in writing the code according to the facade created in the design phase. Visual Designer develops the graphic assets. The client programmer writes code to handle user data, user controls, back-end input/output, and the creation of components and validation of inputs. The server programmer implements the interface with data sources: the front-end and the SQL servers. At the end of the development phase, the front-end and back-end are integrated to create a working model.
Testing -The technical team tests the working model; the creative team may participate in usability testing before the product is handed over to the customer.
Deployment – The project manager hands over the completed project to the customer and must get the customer’s acceptance for the completed project.
Maintenance – The same SDLC process is iterated for bug fixing or new requirements and hence the role of the team members is the same as defined at the start of the project.
It can be concluded that the relationship between the personnel role and the SDLC activity is vice-versa, i.e. the activity assigns the role and the role defines the activity. Personnel skills are the determining factor for role and SDLC activity assigned. The project plan i.e. SDLC phases included and the constitution of the project team are guided by the nature of business and the available skill set.