Download presentation
Presentation is loading. Please wait.
Published byPhillip Perkins Modified over 6 years ago
1
Chapter 16: The Design Workflow Chapter 17: Design Classes
CS 426 Senior Projects in Computer Science Chapter 16: The Design Workflow Chapter 17: Design Classes [Arlow and Neustadt, 2005] University of Nevada, Reno Department of Computer Science & Engineering
2
Outline The design workflow The design metamodel
Design workflow details UP activity: architectural design UP activity: design a class Anatomy of a design class Well-formed design classes Inheritance, templates, & nested classes
3
The Design Workflow Chapter 16 roadmap
4
The Design Workflow Design emphasized in Elaboration and Construction phases
5
The Design Metamodel
6
The Design Metamodel
7
The Design Metamodel Design models are made up of Design subsystems
Design classes Interfaces Use case realizations (design) [An early] deployment diagram
8
Artifact Trace Relationships
9
Should We Maintain Two Models?
10
Should We Maintain Two Models?
The analysis view is useful for: Introducing new people to the project Understanding the system long time after delivery Understanding how the system satisfies requirements Providing requirements traceability Planning maintenance and evolution Understanding the logical architecture of the system Outsourcing the construction of the system
11
Should We Maintain Two Models?
Guidelines: An analysis view should be preserved for large, complex, strategic, potentially long-lived systems Is the system is small, not strategic, or has a short expected life, separate analysis and design models might be overkill Caution though: many systems long outlive their projected life span
12
Design Workflow Detail
13
UP Activity: Architectural Design
14
Chapter 17 Roadmap
15
UP Activity: Designing a Class
16
What Are Design Classes?
17
Anatomy of a Design Class
18
Well-formed Design Classes
Characteristics of well-formed design classes Complete and sufficient Primitive High cohesion Low coupling
19
Inheritance Aggregation versus inheritance
Inheritance is the strongest form of coupling Encapsulation is weak within a class hierarchy (fragile base class problem) Inheritance is the most inflexible type of relationship
20
Inheritance
21
Multiple Inheritance
22
Templates
23
Templates
24
Templates
25
Templates
26
Nested Classes
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.