Roles
The Project Architect
Checklist for the project architect role who has the responsibility to:
- Understand what the customer wants and needs from the project.
- Encode this understanding in a Requirement Gathering document, as a set of well-defined requirements. – The customer may provide a non-functional requirement, which the architect keeps as a top-level requirement, and splits into mechanically verifiable requirements.
- Write up verification criteria for all requirements, explaining how to determine if the requirement has been met.
- Design a way to achieve that, and encode that in Requirement Gathering as well: high-level architecture, major components, their interactions, and the internal architectures of the major components, and downwards through the abstraction stack down to components that can be implemented without further design.
- Do any research and experimentation needed to make sure the design is a good one.
- Plan a series of implementation steps for implementing the design.
- Understand the current state of the implementation, and all of its known problems, and any change requests from users, customers, and adjust the design and work items accordingly.
- Monitor and measure project progress, together with the project manager, and guide the project to meet milestone deadlines.
- Choose components that have acceptable licenses to fulfil the license requirements set by the customer, without violating any of the relevant licenses. The project architect need not do everything alone: delegation is allowed and encouraged. It is the project architect’s responsibility to ensure the delegated parts are done and done well.