Checklist: Component Model
Component Model checklist criteria.
Relationships
Check Items
Are collaborations between components clear?
  • Is the user or external system initiating a collaboration shown clearly?
  • Do all responsibilities or methods invoked on a given component appear in its description?
  • Are all the messages sent to a component be handled by a responsibility or interface operation?
  • Do responsibility names and operation descriptions adequately represent what actually takes place?


 

Are component descriptions complete?
  • Are the main responsibilities or operations defined for a component illustrated by one of the component interaction diagrams?
Is the mapping from logical to phyiscal components clear?
Is the project organization supported?
  • Is the component model partitioned in a way that developers can use it to divide up the development work?
Is the component model well structured?
  • Is the coupling between the logical components sufficiently low to minimize clarification needed by designers and developers of dependent components?
  • Is the cohesion of each logical components sufficiently high so that it maps to a small set of closely related requirements?  Will a change to a single requirement require changing a limited number of components?  Will a change to a component require communication with a minimal number of developers and testers?
Is the notation on diagrams clear?
  • Do diagrams contain a key explaining the notation used?
  • If a standard notation like UML is used, do the diagrams follow the standards?
  • If custom notation is used, does the key clarify the meaning of colors, shapes, and icons used?
Have all architecturally significant requirements been covered?
Does the architecture meet architectural goals?