Roles in a web integration project
Implementing a web integration project requires the involvement of a number of specialists in various roles. Which ones those are, on the part of the web integrator, is described in this article.
The term role involves a set of activities carried out by one or more members of staff during project implementation. They can be specialists in various fields, as required by the project in hand.
The involvement of and need for individual roles is determined primarily by the project phase and only secondarily by technological or methodological considerations. The individual web integration project phases are described in a separate article; they are:
- Preparing an introductory study and defining project goals.
- Information architecture, prototype and implementation specification.
- Creating graphic designs.
- Development and testing.
- Expansion and support.
However, a phase itself does not strictly determine the involvement of a selected role in the project. Some of the roles are with the project from its start to its completion, supervising the continuity of the entire project.
The basic roles of a web integration project
In general, each member of staff can play multiple roles (although this is not common for web integration projects due to their size) and cover multiple fields of expertise. Considering the extent of projects, it is typical for a role to be played by several staff members with varying levels of experience (seniority).
The importance of a strong internal owner on the client’s part is mentioned in tip #6 for a successful web integration project. The project owner on the part of the contractor (web integrator) is a person with overall responsibility for project success in the context of the client’s business. They do not directly participate in project implementation but supervise and co-manage the client’s expectations. An analogy on the client’s part is the role of project sponsor.
A consultant participating in the preparation of the introductory study (concept) of the web and definition of goals. Together with the client, they analyse the client’s needs and design the solution at the highest level of abstraction. They have to clearly understand the client’s needs and be able to design the implementation of the needs using web technologies, although still independent of the operating platform. They are intensively involved in the phase of designing the information architecture and prototype. They collaborate with the architect of the selected platform on the implementation specification.
In their outputs, they naturally make use of the expertise of specialists such as:
- Web analyst – provides information about user behaviour within the existing solution with respect to the selected analytical tool.
- User interface designer – prepares a wire-frame prototype at the selected level of detail.
- Information architect – proposing the overall organization of the content, content structure, navigation and interrelationship between pieces of information.
- Business analyst – provides contact between project implementers and the client. They are responsible for understanding existing and future business processes and needs and their impact on the solution as well as how the proposed solution will affect the processes.
The role that gives the project a specific look with respect to restrictions defined by the client, regulations and standards, selected target devices and other circumstances.
There are also a number of specialists involved…
- Creative designer
- Web DTP specialist
- Flash designer
- UI tester
Meaning a software analyst here. As web integration projects involve a large portion of non-trivial specific functionality, this role is crucial for successful implementation of this phase. An analyst already works with software engineering tools, still at a level independent of the operating platform.
The roles of web consultant and analyst define, together with the client, WHAT is to be implemented.
The role of architect is the one designing the solution as defined by the web consultant and analyst, with respect to the technology/operating platform chosen. The architect defines HOW the project should be implemented and contributes greatly to the implementation specification.
The role is often divided into sub-roles covering individual portions of design:
Architect of the selected operating/portal platform
Working strictly at the level of what a given platform allows without additional development. They specify how the information architecture will be mapped onto the resources of the selected platform and maximize the ability to utilize existing components. Thus, specializations can be derived primarily from knowledge of the selected operating/portal platform.
Devises the method of implementation of functionally specific parts, including their coverage by functional or non-functional tests.
Designs the operating infrastructure in terms of its expected load, required availability and security.
The role taking care of the development of functionally specific parts and/or necessary adjustments to existing functionality. The developer sticks to the provided design and functionality description. Any deviation from the devised method of implementation is undesirable and poses a risk to the result of the project itself as well as to its future expansion. A number of specialists can be involved in the project, depending on the individual tiers of the three-tier development model:
- Data tier: SQL developer
- Application tier: developer for the selected technology (JAVA, .NET, PHP, etc.) with respect to the selected operating/portal platform.
For projects that require the involvement of a development team, as is almost always the case with web integration projects, the role of delivery manager is responsible for leadership and operational management of the development team and its outputs towards the project manager and the client.
Operations specialist (ICT Support)
The role ensuring technical infrastructure will be implemented in line with the technical architect’s design. It is common for this role to provide all necessary competences by means of selected partners/specialists rather than personally.
The role of tester, or testing team member, makes sure the solution meets defined functional and non-functional requirements. For the fundamental principle of testing in a web integration project, refer to “Quality management and software testing in web integration”.
- Test manager – coordinates the testing team, specifies the responsibilities of each member and is responsible for the method of planning, implementation and reporting.
- Test analyst and test designer – creates tests and testing procedures, chooses appropriate testing tools and makes decisions on the test environment and test data.
- Tester – runs selected tests, including error reporting, and documents the results.
For information concerning the composition of a testing team, see a separate article.
The role responsible for the proper planning, management and evaluation of a project according to the project methodology chosen, including the formal aspect of management. They do not necessarily have technical know-how; however, knowledge of web solutions is an advantage for them as it makes them able to serve as a consultant to the client in the advanced phases of the project.
Client service staff are responsible for maintaining and expanding the solution under agreed response and resolution conditions.
The above roles are typical and suitable for the conventional waterfall development model, albeit with some parallelized activities. Agile methodologies, such as SCRUM, do not adhere to the division of roles as described in this article.
Naturally, there are other roles involved in addition to the roles mentioned in this article, depending on the specific PM methodology chosen – e.g. PMBOK, which will be discussed on the Web Integration website some other time.