SE201 · Chapter 5.2 · Annotated SlidesSystem Modeling with UML
Original
Overview

System Modeling with UML

Context, interaction, structural and behavioral models, then UML in detail: use-case diagrams with include/extend/generalization, sequence diagrams and messages, class diagrams with association, aggregation, composition, generalization and multiplicity, activity diagrams with swimlanes, and state machine diagrams.

How to read this page

Every original slide is shown unchanged. Yellow marks on a slide point to a numbered note: hover or tap a mark to jump to its note, and hover a note to see its marks. Questions tagged Past exam appeared on a real paper; Prediction questions are likely angles, not confirmed. Pick an answer to each question: a wrong pick tells you why it is wrong, so you can try again.

All 112 slides
  1. 1 Slide 1
  2. 2 Topics covered
  3. 3 System modeling
  4. 4 Existing and planned system models
  5. 5 Example of a model
  6. 6 Different Uses of graphical models
  7. 7 System perspectives
  8. 8 UML diagram types
  9. 9 Slide 9
  10. 10 Context models
  11. 11 The context of the Mentcare system
  12. 12 Process perspective
  13. 13 Process model of involuntary detention
  14. 14 Slide 14
  15. 15 Interaction models
  16. 16 Use case modeling
  17. 17 Use cases in the Mentcare system involving the role ‘Medical Receptionist’
  18. 18 Tabular description of the ‘Transfer data’ use- case
  19. 19 Sequence diagrams
  20. 20 Sequence diagram for View patient information
  21. 21 Slide 21
  22. 22 Slide 22
  23. 23 Structural models
  24. 24 Class diagrams
  25. 25 UML classes and association
  26. 26 Classes and associations in the MHC-PMS
  27. 27 The Consultation class
  28. 28 Slide 28
  29. 29 What is a Use case?
  30. 30 Elements of a Use Case Diagram
  31. 31 Elements of a Use Case Diagram
  32. 32 Elements of a Use Case Diagram
  33. 33 Elements of a Use Case Diagram
  34. 34 Elements of a Use Case Diagram
  35. 35 Example of a Use Case diagram of an ATM system
  36. 36 Relationships in Use Cases
  37. 37 Relationships in Use Cases
  38. 38 Example of an extend relationship
  39. 39 Relationships in Use Cases
  40. 40 Relationships in Use Cases
  41. 41 Exercise
  42. 42 Use-case diagram for a university registration system
  43. 43 ATM Example
  44. 44 Slide 44
  45. 45 Interaction Diagrams
  46. 46 Interactions- showing the dynamic aspect
  47. 47 Sequence Diagram
  48. 48 Sequence Diagram
  49. 49 Sequence Diagram
  50. 50 Sequence Diagram
  51. 51 Sequence Diagram-Messages
  52. 52 Sequence Diagram-Messages
  53. 53 Sequence Diagram-Messages
  54. 54 Elements of Sequence Message Arrows
  55. 55 Elements of Sequence Message Arrows
  56. 56 Elements of Sequence Message Arrows
  57. 57 Sequence Diagram
  58. 58 Sequence diagram of Mcdonald's Ordering System
  59. 59 Mcdonald's Ordering System
  60. 60 Alternatives
  61. 61 Alternatives
  62. 62 Alternatives
  63. 63 Slide 63
  64. 64 Slide 64
  65. 65 Class Diagram
  66. 66 Advantages of Class Diagram
  67. 67 h
  68. 68 Essential elements of A UML class diagram
  69. 69 Class Attributes
  70. 70 Attributes characteristics
  71. 71 Relationships
  72. 72 Relationship-Dependency
  73. 73 Examples of Dependency
  74. 74 3. Relationships- Generalization
  75. 75 3. Relationships-Association
  76. 76 3. Relationships-Association(Multiplicity)
  77. 77 3. Relationships- Aggregation
  78. 78 3. Relationships- Aggregation
  79. 79 Relationship- Composition
  80. 80 Example 2-Composition
  81. 81 Aggregation vs. Composition
  82. 82 Association Class
  83. 83 Association Class
  84. 84 Reflexive Association
  85. 85 h
  86. 86 Example of UML Class Diagram
  87. 87 Exercise on UML Class Diagrams
  88. 88 Best practices of Designing of the Class Diagram
  89. 89 Slide 89
  90. 90 What is an Activity diagram?
  91. 91 Activity Diagram Symbols
  92. 92 Activity Diagram Symbols
  93. 93 Activity Diagram Symbols
  94. 94 Activity Diagram Symbols
  95. 95 Slide 95
  96. 96 Activity Diagram - Process Order
  97. 97 Activity Diagram -Process Order
  98. 98 Activity Diagram for Order Handling
  99. 99 Activity diagram of : online shopping
  100. 100 Activity diagram with emphasis on Object nodes
  101. 101 Activity Diagrams with Swimlanes
  102. 102 Activity Diagram Reservation process
  103. 103 Statechart (or state Machine) Diagram
  104. 104 Uses of Statechart Diagram
  105. 105 Basic Components of a State Chart Diagram
  106. 106 Basic Components of a State Chart Diagram
  107. 107 Basic Components of a State Chart Diagram
  108. 108 Basic Components of a State Chart Diagram
  109. 109 Fork and join in state diagrams
  110. 110 Steps to Draw a State Diagram
  111. 111 This simple oven has a switch to select full or half
  112. 112 State diagram example: Petrol pump
Slide 1 / 112

Slide 1

Slide 1: Slide 1
Slide 2 / 112

Topics covered

Slide 2: Topics covered
Slide 3 / 112

System modeling

Slide 3: System modeling
Slide 4 / 112

Existing and planned system models

Slide 4: Existing and planned system models
Slide 5 / 112

Example of a model

Slide 5: Example of a model
Slide 6 / 112

Different Uses of graphical models

Slide 6: Different Uses of graphical models
Slide 7 / 112

System perspectives

Slide 7: System perspectives
Slide 8 / 112

UML diagram types

Slide 8: UML diagram types
Slide 9 / 112

Slide 9

Slide 9: Slide 9
Slide 10 / 112

Context models

Slide 10: Context models
Slide 11 / 112

The context of the Mentcare system

Slide 11: The context of the Mentcare system
Slide 12 / 112

Process perspective

Slide 12: Process perspective
Slide 13 / 112

Process model of involuntary detention

Slide 13: Process model of involuntary detention
Slide 14 / 112

Slide 14

Slide 14: Slide 14
Slide 15 / 112

Interaction models

Slide 15: Interaction models
Slide 16 / 112

Use case modeling

Slide 16: Use case modeling

Notes

  1. Use case: a task an actor performs with the system; stick-figure actors and ovals.

Slide 17 / 112

Use cases in the Mentcare system involving the role ‘Medical Receptionist’

Slide 17: Use cases in the Mentcare system involving the role ‘Medical Receptionist’
Slide 18 / 112

Tabular description of the ‘Transfer data’ use- case

Slide 18: Tabular description of the ‘Transfer data’ use- case
Slide 19 / 112

Sequence diagrams

Slide 19: Sequence diagrams

Notes

  1. Sequence diagram: objects across the top, lifelines down, messages in time order.

Slide 20 / 112

Sequence diagram for View patient information

Slide 20: Sequence diagram for View patient information
Slide 21 / 112

Slide 21

Slide 21: Slide 21
Slide 22 / 112

Slide 22

Slide 22: Slide 22
Slide 23 / 112

Structural models

Slide 23: Structural models
Slide 24 / 112

Class diagrams

Slide 24: Class diagrams

Notes

  1. Class diagram: classes (name, attributes, operations) and the relationships between them.

Slide 25 / 112

UML classes and association

Slide 25: UML classes and association
Slide 26 / 112

Classes and associations in the MHC-PMS

Slide 26: Classes and associations in the MHC-PMS
Slide 27 / 112

The Consultation class

Slide 27: The Consultation class
Slide 28 / 112

Slide 28

Slide 28: Slide 28
Slide 29 / 112

What is a Use case?

Slide 29: What is a Use case?
Slide 30 / 112

Elements of a Use Case Diagram

Slide 30: Elements of a Use Case Diagram
Slide 31 / 112

Elements of a Use Case Diagram

Slide 31: Elements of a Use Case Diagram
Slide 32 / 112

Elements of a Use Case Diagram

Slide 32: Elements of a Use Case Diagram
Slide 33 / 112

Elements of a Use Case Diagram

Slide 33: Elements of a Use Case Diagram
Slide 34 / 112

Elements of a Use Case Diagram

Slide 34: Elements of a Use Case Diagram
Slide 35 / 112

Example of a Use Case diagram of an ATM system

Slide 35: Example of a Use Case diagram of an ATM system
Slide 36 / 112

Relationships in Use Cases

Slide 36: Relationships in Use Cases

Notes

  1. <<include>>: the base use case ALWAYS uses the included one. <<extend>>: optional behaviour that extends the base under a condition.

  2. Trap Include arrow points TO the included use case; extend arrow points FROM the extension TO the base.

Exam angle

PredictionQ1

"Print receipt" happens only if the customer asks. Relative to "Withdraw cash" it is:

PredictionQ2

Every "Withdraw cash" must "Authenticate user". This is:

Slide 37 / 112

Relationships in Use Cases

Slide 37: Relationships in Use Cases
Slide 38 / 112

Example of an extend relationship

Slide 38: Example of an extend relationship
Slide 39 / 112

Relationships in Use Cases

Slide 39: Relationships in Use Cases
Slide 40 / 112

Relationships in Use Cases

Slide 40: Relationships in Use Cases
Slide 41 / 112

Exercise

Slide 41: Exercise
Slide 42 / 112

Use-case diagram for a university registration system

Slide 42: Use-case diagram for a university registration system
Slide 43 / 112

ATM Example

Slide 43: ATM Example
Slide 44 / 112

Slide 44

Slide 44: Slide 44
Slide 45 / 112

Interaction Diagrams

Slide 45: Interaction Diagrams
Slide 46 / 112

Interactions- showing the dynamic aspect

Slide 46: Interactions- showing the dynamic aspect
Slide 47 / 112

Sequence Diagram

Slide 47: Sequence Diagram
Slide 48 / 112

Sequence Diagram

Slide 48: Sequence Diagram
Slide 49 / 112

Sequence Diagram

Slide 49: Sequence Diagram
Slide 50 / 112

Sequence Diagram

Slide 50: Sequence Diagram
Slide 51 / 112

Sequence Diagram-Messages

Slide 51: Sequence Diagram-Messages

Notes

  1. Messages: synchronous (filled arrowhead, caller waits), asynchronous (open arrowhead), return (dashed), self-message.

Slide 52 / 112

Sequence Diagram-Messages

Slide 52: Sequence Diagram-Messages
Slide 53 / 112

Sequence Diagram-Messages

Slide 53: Sequence Diagram-Messages
Slide 54 / 112

Elements of Sequence Message Arrows

Slide 54: Elements of Sequence Message Arrows
Slide 55 / 112

Elements of Sequence Message Arrows

Slide 55: Elements of Sequence Message Arrows
Slide 56 / 112

Elements of Sequence Message Arrows

Slide 56: Elements of Sequence Message Arrows
Slide 57 / 112

Sequence Diagram

Slide 57: Sequence Diagram
Slide 58 / 112

Sequence diagram of Mcdonald's Ordering System

Slide 58: Sequence diagram of Mcdonald's Ordering System
Slide 59 / 112

Mcdonald's Ordering System

Slide 59: Mcdonald's Ordering System
Slide 60 / 112

Alternatives

Slide 60: Alternatives

Notes

  1. alt fragment: alternatives with guards; opt: optional; loop: repetition.

Slide 61 / 112

Alternatives

Slide 61: Alternatives
Slide 62 / 112

Alternatives

Slide 62: Alternatives
Slide 63 / 112

Slide 63

Slide 63: Slide 63
Slide 64 / 112

Slide 64

Slide 64: Slide 64
Slide 65 / 112

Class Diagram

Slide 65: Class Diagram
Slide 66 / 112

Advantages of Class Diagram

Slide 66: Advantages of Class Diagram
Slide 67 / 112

h

Slide 67: h
Slide 68 / 112

Essential elements of A UML class diagram

Slide 68: Essential elements of A UML class diagram
Slide 69 / 112

Class Attributes

Slide 69: Class Attributes
Slide 70 / 112

Attributes characteristics

Slide 70: Attributes characteristics
Slide 71 / 112

Relationships

Slide 71: Relationships

Notes

  1. Relationships: dependency (dashed arrow), association (line), generalization (hollow triangle), aggregation (hollow diamond), composition (filled diamond).

Slide 72 / 112

Relationship-Dependency

Slide 72: Relationship-Dependency
Slide 73 / 112

Examples of Dependency

Slide 73: Examples of Dependency
Slide 74 / 112

3. Relationships- Generalization

Slide 74: 3. Relationships- Generalization

Notes

  1. Generalization = inheritance ("is-a"): hollow triangle points to the parent.

Slide 75 / 112

3. Relationships-Association

Slide 75: 3. Relationships-Association

Exam angle

PredictionQ1

A multiplicity of 1..* means:

Slide 76 / 112

3. Relationships-Association(Multiplicity)

Slide 76: 3. Relationships-Association(Multiplicity)
Slide 77 / 112

3. Relationships- Aggregation

Slide 77: 3. Relationships- Aggregation
Slide 78 / 112

3. Relationships- Aggregation

Slide 78: 3. Relationships- Aggregation
Slide 79 / 112

Relationship- Composition

Slide 79: Relationship- Composition
Slide 80 / 112

Example 2-Composition

Slide 80: Example 2-Composition
Slide 81 / 112

Aggregation vs. Composition

Slide 81: Aggregation vs. Composition

Notes

  1. Aggregation: whole–part where parts can exist alone (Department–Professor). Composition: parts die with the whole (House–Room).

  2. Memory trick Filled diamond = "dies with" (composition). Hollow diamond = "can live without" (aggregation).

Exam angle

PredictionQ1

An Order and its OrderLines (deleted with the order) is best modeled as:

Slide 82 / 112

Association Class

Slide 82: Association Class

Notes

  1. Association class: attributes that belong to the link itself (Enrollment with grade between Student and Course).

Slide 83 / 112

Association Class

Slide 83: Association Class
Slide 84 / 112

Reflexive Association

Slide 84: Reflexive Association
Slide 85 / 112

h

Slide 85: h
Slide 86 / 112

Example of UML Class Diagram

Slide 86: Example of UML Class Diagram
Slide 87 / 112

Exercise on UML Class Diagrams

Slide 87: Exercise on UML Class Diagrams
Slide 88 / 112

Best practices of Designing of the Class Diagram

Slide 88: Best practices of Designing of the Class Diagram
Slide 89 / 112

Slide 89

Slide 89: Slide 89
Slide 90 / 112

What is an Activity diagram?

Slide 90: What is an Activity diagram?

Notes

  1. Activity diagram: workflow of actions; initial node, actions, decisions (diamond), fork/join bars, final node.

Slide 91 / 112

Activity Diagram Symbols

Slide 91: Activity Diagram Symbols
Slide 92 / 112

Activity Diagram Symbols

Slide 92: Activity Diagram Symbols
Slide 93 / 112

Activity Diagram Symbols

Slide 93: Activity Diagram Symbols
Slide 94 / 112

Activity Diagram Symbols

Slide 94: Activity Diagram Symbols
Slide 95 / 112

Slide 95

Slide 95: Slide 95
Slide 96 / 112

Activity Diagram - Process Order

Slide 96: Activity Diagram - Process Order
Slide 97 / 112

Activity Diagram -Process Order

Slide 97: Activity Diagram -Process Order
Slide 98 / 112

Activity Diagram for Order Handling

Slide 98: Activity Diagram for Order Handling
Slide 99 / 112

Activity diagram of : online shopping

Slide 99: Activity diagram of : online shopping
Slide 100 / 112

Activity diagram with emphasis on Object nodes

Slide 100: Activity diagram with emphasis on Object nodes
Slide 101 / 112

Activity Diagrams with Swimlanes

Slide 101: Activity Diagrams with Swimlanes
Slide 102 / 112

Activity Diagram Reservation process

Slide 102: Activity Diagram Reservation process
Slide 103 / 112

Statechart (or state Machine) Diagram

Slide 103: Statechart (or state Machine) Diagram

Notes

  1. State machine: states an object can be in and the transitions triggered by events [guard] / action.

Exam angle

PredictionQ1

Which diagram best shows how one object changes state in response to events?

Slide 104 / 112

Uses of Statechart Diagram

Slide 104: Uses of Statechart Diagram
Slide 105 / 112

Basic Components of a State Chart Diagram

Slide 105: Basic Components of a State Chart Diagram
Slide 106 / 112

Basic Components of a State Chart Diagram

Slide 106: Basic Components of a State Chart Diagram
Slide 107 / 112

Basic Components of a State Chart Diagram

Slide 107: Basic Components of a State Chart Diagram
Slide 108 / 112

Basic Components of a State Chart Diagram

Slide 108: Basic Components of a State Chart Diagram
Slide 109 / 112

Fork and join in state diagrams

Slide 109: Fork and join in state diagrams
Slide 110 / 112

Steps to Draw a State Diagram

Slide 110: Steps to Draw a State Diagram
Slide 111 / 112

This simple oven has a switch to select full or half

Slide 111: This simple oven has a switch to select full or half
Slide 112 / 112

State diagram example: Petrol pump

Slide 112: State diagram example: Petrol pump