Professional Documents
Culture Documents
• UML diagram types and what they show. Activity diagrams, state machine diagram, use
case diagrams, sequence diagrams, class diagrams, and state diagrams.
Use case diagrams: show the interactions between a system and its environment.
Sequence diagrams: show interactions between actors and the system and between
system components.
Class diagram: show the object classes in the system and the associations between these
classes.
State diagram: show how the system reacts to internal and external events
• UML diagrams used in interaction model, structural model, and behavioral model.
Interaction models:
1. Use case modeling: model interactions between a system and external agents.
2. Sequence diagrams: model interactions between system components
Structural model: Display the organization of a system in terms of the components
that make up that system and their relationships.
1. Class diagram: provide insight into the structure of the system.
Behavioral model: they show what happens or what is supposed to happen when
a system responds to a stimulus from its environment.
1. Data-driven modeling.
a. Activity model: show processing steps, represented as activities.
2. Event-driven modeling
a. State machine: show system states as nodes and events as arcs
between these nodes.
Use cases:
- Include: Shows the dependency between “base use case” and “included use case”
Data-driven: show the steps and activities, they are controlled by the data input to the system.
Event-driven: show how the system responds to external and internal events.
• Know how to draw a context diagram, use case diagram, state machine diagram, and class
diagram. (We did several exercises during in-class lectures).
- There is limited tool availability and organizations may require tool adaptation and
customization to their environment.
- Companies do not want to develop or maintain their own tools or to rely on small
software companies, who may go out of business.
- model-based development requires additional manual coding which reduces the cost-
effectiveness of this approach.