Module 3: UML DIAGRAM Flashcards
UML stands for?
Unified Modeling Language.
It’s a rich language to model software solutions, application structures, system behavior and business process.
How many UML diagrams types are there?
14
List of UML Diagram types (Behavioral Diagrams):
(UASSCIT)
Use Case Diagram
Activity Diagram
State Machine Diagram
Sequence Diagram
Communication Diagram
Interaction Overview Diagram
Timing Diagram
List of UML Diagram types (Structure Diagrams):
(CCDOPPC)
Class Diagram
Component Diagram
Deployment Diagram
Object Diagram
Package Diagram
Profile Diagram
Composite Structure Diagram
_____ is a type of interaction diagram because it describes how—and in what order—a group of objects works together.
sequence diagram
Two types of sequence diagram:
UML and code-based.
Benefits of sequence diagrams:
- Represent the details of a UML use case.
- Model the logic of a sophisticated procedure, function, or operation.
- See how objects and components interact with each other to complete a process.
- Plan and understand the detailed functionality of an existing or future scenario.
A type of role played by an entity that interacts with the subject.
Actor
Represents an individual participant in the Interaction.
Lifeline
A thin rectangle on a lifeline.
Activations
_____ is a kind of message that represents an invocation of operation of target lifeline.
Call message
_____ is a kind of message that represents the pass of information back to the caller of a corresponded former message.
Return message
_____ is a kind of message that represents the invocation of message of the same lifeline. It’s target points to an activation on top of the activation where the message was invoked from.
Recursive message
_____ is a kind of message that represents the instantiation of (target) lifeline.
Create message
_____ is a kind of message that represents the request of destroying the lifecycle of target lifeline.
Destroy message
_____ shows the distance between two time instants for a message invocation.
Duration message
Alternative multiple fragments: only the one whose condition is true will execute.
alt
Optional: the fragment executes only if the supplied condition is true. Equivalent to an alt only with one trace.
opt
Parallel: each fragment is run in parallel.
par
Loop: the fragment may execute multiple times, and the guard indicates the
basis of iteration.
loop
Critical region: the fragment can have only one thread executing it at once.
region
Negative: the fragment shows an invalid interaction.
neg
Reference: refers to an interaction defined on another diagram. The frame is drawn to cover the lifelines involved in the interaction. You can define parameters and a return value.
ref
Sequence diagram: used to surround an entire sequence diagram.
sd
_____ is a static diagram. It represents the static view of an application. _____ is not only used for visualizing, describing, and documenting different aspects of a system but also for constructing executable code of the software application.
Class diagram
The class shape itself consists of a rectangle with three rows:
top row = name of the class
middle row = attributes of the class
bottom row = methods (operations) of the class
- Represents an “is-a” relationship.
- An abstract class name is shown in italics.
- SubClass1 and SubClass2 are specializations of Super Class.
- A solid line with a hollow arrowhead that point from the child to the parent class
Inheritance
- A structural link between two peer classes.
- There is an association between Class1 and Class2
- A solid line connecting two classes
Simple Association
- Class2 is part of Class1.
- Many instances (denoted by the *) of Class2 can be associated with Class1.
- Objects of Class1 and Class2 have separate lifetimes.
- A solid line with an unfilled diamond at the association end connected to the class of composite
Aggregation
- Objects of Class2 live and die with Class1.
- Class2 cannot stand by itself.
- A solid line with a filled diamond at the association connected to the class of composite
Composition
- Exists between two classes if the changes to the definition of one may cause changes to the other (but not the other way around).
- Class1 depends on Class2
- A dashed line with an open arrow
Dependency
four types of visibility:
+ public
# protected
- private
~ package