6.2: Architectural Design
This section focuses on conceptual high-level or architecture design. The following section uses the conceptual model to develop an object model for the high-level design or architecture.
A major task of the design phase is creating the interaction diagrams for the system operations. Read this section to learn more about collaboration diagrams. As you review the examples, consider general principles in assigning responsibilities. Ask yourself, how do you determine the relationship between objects? How can you extract the classes? How do you determine whether a mentioned feature can be considered a class attribute? How would you determine class methods?
Watch this video on creating collaboration diagrams. Earlier units and sections have presented UML diagrams, and we have seen that the names of some diagrams vary with different releases of UML. Note that a collaboration diagram is an activity diagram called a "communication diagram".
One part of the software design process is to record the methods corresponding to responsibilities and group these methods in classes. These classes with methods are software classes representing the conceptual classes in the conceptual models. Read this section to walk through the steps of making a class diagram.
This video is an example of a complete project that reviews what we've discussed in this course. What is the difference between functional and non-functional requirements? Give an example of each presented in this sample software project. Which life cycle is it using? The second hour of the video uses an enterprise view to give program examples of the concepts discussed in this unit.