UML Building Blocks
As UML describes the real time systems it is very important to make a conceptual model and then proceed gradually. Conceptual model of UML can be mastered by learning the following three major elements:
- UML building blocks
- Rules to connect the building blocks
- Common mechanisms of UML
This chapter describes all the UML building blocks. The building blocks of UML can be defined as:
Things are the most important building blocks of UML. Things can be:
The Structural things define the static part of the model. They represent physical and conceptual elements. Following are the brief descriptions of the structural things.
Class represents set of objects having similar responsibilities.
Interface defines a set of operations which specify the responsibility of a class.
Collaboration defines interaction between elements.
Use case represents a set of actions performed by a system for a specific goal.
Component describes physical part of a system.
A node can be defined as a physical element that exists at run time.
A behavioral thing consists of the dynamic parts of UML models. Following are the behavioral things:
Interaction is defined as a behavior that consists of a group of messages exchanged among elements to accomplish a specific task.
State machine is useful when the state of an object in its life cycle is important. It defines the sequence of states an object goes through in response to events. Events are external factors responsible for state change.
Grouping things can be defined as a mechanism to group elements of a UML model together. There is only one grouping thing available:
Package is the only one grouping thing available for gathering structural and behavioral things.
Annotational things can be defined as a mechanism to capture remarks, descriptions, and comments of UML model elements. Note is the only one Annotational thing available.
A note is used to render comments, constraints etc of an UML element.
(2) Relationship :
Relationship is another most important building block of UML. It shows how elements are associated with each other and this association describes the functionality of an application.
There are four kinds of relationships available.
Dependency is a relationship between two things in which change in one element also affects the other one.
Association is basically a set of links that connects elements of an UML model. It also describes how many objects are taking part in that relationship.
Generalization can be defined as a relationship which connects a specialized element with a generalized element. It basically describes inheritance relationship in the world of objects.
Realization can be defined as a relationship in which two elements are connected. One element describes some responsibility which is not implemented and the other one implements them. This relationship exists in case of interfaces.
(3) UML Diagrams:
UML diagrams are the ultimate output of the entire discussion. All the elements, relationships are used to make a complete UML diagram and the diagram represents a system.
The visual effect of the UML diagram is the most important part of the entire process. All the other elements are used to make it a complete one.
UML includes the following nine diagrams and the details are described in the following chapters.
- Class diagram
- Object diagram
- Use case diagram
- Sequence diagram
- Collaboration diagram
- Activity diagram
- Statechart diagram
- Deployment diagram
- Component diagram
We would discuss all these diagrams in subsequent chapters of this tutorial.