UML Summary
Unified Modeling Language (UML)
Learning Goals:
Understand UML class and package notation.
Represent class relationships: inheritance, aggregation, dependency.
Sequence and activity diagrams.
Class Design:
Example attributes:
$numCanisters: int$
$numWafers: int$
$size: float$
Class Responsibilities:
Operations:
display(),getNumOpenSlots(),setStatus().
Packages:
UML representation of classes within packages.
Class Relationships:
Association: E.g.,
EmployerandEmployeeclasses.Multiplicity: $1..3$ and $1..*$.
Aggregation: One class contains another; e.g.,
CompanyandEmployeeDirectory.Composition: Stronger inclusion, destroyed with the containing object.
Dependency: Use of one class within another, e.g., a parameter reference.
Sequence Diagrams:
Illustrate interactions through user actions; e.g., checkout process.
Activity Diagrams:
Depicts state transitions and actions; useful for showing workflow.
Class Models:
Sequence of method calls; object states based on events across classes.
Data Flow in UML:
Model processes and data exchanges between components.