Artifacts > Implementation Artifact Set > Implementation Model > Checkpoints
- Interfaces and dependencies between components have been defined.
- The workload for the Implementation Team is balanced; potential bottlenecks have been identified and work has been redistributed, and contingency plans have been created to allow critical work to be redistributed if the initial work allocation becomes imbalanced.
- There are no instances of dependencies crossing more than one layer boundary.
- Unnecessary dependencies on lower-layer components have been eliminated.
- The impact of necessary dependencies on lower layer components have been reduced by letting components in middle layers re-export interfaces from components in lower layers.
- The number of layers is no more than seven (plus or minus two), or there is a well-understood reason why more layers exist.
- The ratio between the number of packages or subsystems and the number of components is consistent with the application size and complexity (for example, 5 packages or subsystems and 1,000 components is a sign that something is wrong).
- The amount of source code is consistent with the expectations based on the number of design classes (for example, 100,000 lines of code for 10 design classes is a sign that the either the design or the implementation, or both, may be flawed).
- The actual implementation effort is close to what was estimated, or if not, the basis for estimation has been examined and adjusted.