-
Unified Modeling Language
- A model is a simplification of reality.
- Models can represent many different things, both physical such as buildings and computer networks, and conceptual such as software
-
MODEL SOFTWARE
- We build models so that we can better understand the system we are developing.
- A Use Case diagram is used to capture the business “system.”
-
UML
- is a graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system.
-
Composed of:
-
Elements
- Things (called nodes)
- Relationships (Called links)
-
Diagrams
- Are used to construct many of the artifacts
- Structural
- show the static structure of the objects in a system
- Behavioral
- show the dynamic behavior of objects in a system
- Use case
- represents High - level behaviors.
- Class Diagram
- Represents a collection of software classes and their interrelationships.
- Object Diagram
- Represents a runtime snapshot
- Software objects
- Their interrelationships.
- Communication diagram
- represents a collection of objects that work together to support some system behavior.
- Sequence diagram
- Represents a time-oriented perspective of an object communication
- Activity diagram
- Represents a flow of activities that might be performed by either a system or an actor.
- State machine diagram
- represents the set of states that an object might experience
- Component diagram
- represents a collection of physical software components and their interrelationships
- Deployment diagram
- epresents a collection of components and shows how these are distributed
- Package diagram
- represents a collection of other modeling elements and diagrams
- Interaction Overview
- represents a form of activity diagram where nodes can represent interaction diagram fragments.
- Timing diagram
- represents changes in state (state lifeline view) or value (value lifeline view).
- Composite Structure diagram
- represents the internal structure of a classifier, usually in form of parts
- Profile diagram
- Define additional diagram types or extend existing diagrams with additional notations
- Views
-
Elements and connectors
-
Packages
- is used to group together any UML elements and diagrams
- are elements, therefore they can be nested
- is a logical view
-
Note
- allows textual notes to be added to any aspect of a diagram
- is in the form of a dog-eared rectangle with its upper-right corner bent over
-
Dependency
- shows that one UML element depends on another UML element
-
Stereotypes
- are used to declare a more specific type of element or connector type
- s to bracket them in quotation marks symbols « »
-
Class Diagrams
-
Associations
- represent relationships between classes
- are manifested at runtime in which two objects are associated with each other, usually with an object reference
-
Multiplicity
- determines how many objects might participate in the relationship
-
Navigation
- determine what direction an association can be traversed at runtime
-
Aggregation
- where the child can exist independently of the parent
-
Composition
- a relationship where the child cannot exist independent of the parent