-
The dependencies that exist between subsystem components are clearly identified.
-
Each person on the team is working on a subsystem that he or she finds personally interesting.
-
Each person on the team is working in a way believed by all to improve productivity.
-
Our architecture is profitable.
-
We know if our current release is focusing on issues of evolution or issues of maturation .
-
We understand the degree of technical debt we've incurred in our system. We can identify such debt (e.g., we have placed special comments in our source code identifying areas to fix).
-
We are in proper compliance with all in-licensed components (see also Chapter 5).
-
The architect has articulated the principles that are driving architectural choices.
-
Our team is about the right size to accomplish our objectivesneither too large nor too small.