Architecture Evaluation Team
- Architecture Evaluation Team
- the team that performs one or more technical evaluations of the
architecture work products
and the architecting
process by which they are produced
As illustrated in the preceding figure, Architecture Evaluation Team is part of the following inheritance hierarchy:
- Type: Concrete
- Superclass: Evaluation Team
- Subclasses:
The typical team-specific responsibilities of an Architecture Evaluation Team are to:
- Evaluate the deliverable architecture work products including:
- Diagrams
- Models
- Patterns and Mechanisms
- Documents
- Prototypes
- Notify the architecture team of any defects found.
- Recommend improvements to the endeavor process including (but not limited to) the:
- Architecting activity and tasks.
- Standards, templates, and evaluation checklists for
the deliverable architecture work products.
The architecture evaluation team typically inherits the
common team responsibilities from the
team method component.
An Architecture Evaluation Team typically consists of persons playing the following roles:
- Technical Leader,
who facilitates the evaluation meeting and evaluates the architectures for technical quality
and conformance to the architecturally significant requirements.
- Customer Representative,
who evaluates the architectures for acceptability.
- Domain Expert,
who evaluates the architectures for correctness.
- Requirements Engineer,
who evaluates the architecture work products for conformance to
the architecturally significant requirements.
- Security Analyst,
who evaluates for the system architecture for
conformance to the security requirements and the quality of
the security mechanisms in the software architecture.
- Security Engineer,
who evaluates for the implementability of the security
mechanisms in the software architecture.
- Software Designer,
who evaluates the architectures for technical quality
and to understand what must be designed.
- Programmer,
who evaluates for the architectures’ implementability.
- Hardware Engineer,
who evaluates for the system architecture’s
implementability and the software architecture’s deployability.
- Integration Engineer,
who evaluates the architectures for integrability.
- Test Engineer,
who evaluates the architectures for testability.
- User Representative,
who evaluates the user interface architecture for acceptability.
- Quality Engineer,
who evaluates the work products for quality and conformance to the endeavor process and relevant conventions.
- Technical Writer,
- Acts as scribe at the evaluation meeting(s).
- Summarizes the evaluation team’s findings in the
evaluation summary report.
- Delivers the evaluation summary report to the:
An Architecture Evaluation Team typically performs the following
team-specific tasks in an incremental, iterative, parallel, and time-boxed manner:
The architecture evaluation team typically inherits the
common team tasks from the
team method component.
An Architecture Evaluation Team typically produces the following work products:
- Evaluations should not devolve into walkthroughs that require the work products’ developers
to explain them to the evaluators. The work products should stand on their own.
- To the extent practical, the developers of a work product should:
- Not be the only evaluators of it.
- Also informally inspect it prior to the evaluation.
- A single person may play multiple roles on an evaluation team if
he or she has the necessary expertise to fulfill multiple roles.
This is especially true on small endeavors.
- An architecture evaluation team typically inherits the
common team guidelines from the
team method component.