Step 1. Identify all design classes that correspond to the problem domain.
Step 2. Identify all design classes that correspond to the infrastructure domain.
Step 3. Elaborate all design classes that are not acquired as reusable components.
Elaboration requires that all interfaces, attributes, and operations necessary to implement the class be described in detail. Design heuristics (e.g., component cohesion and coupling) must be considered as this task is conducted.
Step 3a. Specify message details when classes or components collaborate.
Step 3b. Identify appropriate interfaces for each component.
Step 3c. Elaborate attributes and define data types and data structures required to implement them.
Step 3d. Describe processing flow within each operation in detail.
Step 4. Describe persistent data sources (databases and files) and identify the classes required to manage them.
Step 5. Develop and elaborate behavioral representations for a class or component.
Step 6. Elaborate deployment diagrams to provide additional implementation detail.
Step 7. Refactor every component-level design representation and always consider alternatives.
Conducting Component-Level Design was originally found on Access 2 Learn