A Hacker's Guide to Project Management, Second Edition

The architect (or lead designer) is one of the most important roles in your team. He or she is responsible for defining and maintaining the structure of the solution, and ensuring that it is able to meet the requirements. There are five main parts to this:
Understanding the requirements - identifying the various stakeholders which the architecture must satisfy, helping to analyse the requirements and extracting those of architectural significance (see page 120),
Formulating the design - creating a system structure which will meet the various requirements,
Communicating the architecture - making sure that everyone understands the architecture. Different people have different viewpoints, so the architect has to present various views of the system appropriate to different audiences,
Supporting the developers - making sure that the developers are able to realise the architecture, by a combination of mentoring and direct involvement,
Verifying the implementation - ensuring the delivered system is consistent with the documented architecture, or modifying the architecture where necessary.
The architect defines the structure and organisation of the system. This is his main responsibility. The architecture describes the system s components, their responsibilities and interactions. A complex system is more than the sum of its parts. It must have a unifying, coherent structure. Therefore the architect must also define and describe:
Metaphors, design principles and patterns on which the architecture is based,
The technology, tools and standards which will be used,
Key mechanisms,...