Basic Ideas On UML
Basic Ideas On UML
7
Object Modeling using
UML
Version 2 CSE IIT, Kharagpur
Lesson
14
Basic Ideas on UML
Model
A model captures aspects important for some application while omitting (or
abstracting) the rest. A model in the context of software development can be
graphical, textual, mathematical, or program code-based. Models are very useful
in documenting the design and analysis results. Models also facilitate the
analysis and design procedures themselves. Graphical models are very popular
because they are easy to understand and construct. UML is primarily a graphical
modeling tool. However, it often requires text explanations to accompany the
graphical models.
• Analysis
• Specification
• Code generation
• Design
• Visualize and understand the problem and the working of a system
• Testing, etc.
In all these applications, the UML models can not only be used to document the
results but also to arrive at the results themselves. Since a model can be used
for a variety of purposes, it is reasonable to expect that the model would vary
depending on the purpose for which it is being constructed. For example, a
model developed for initial analysis and specification should be very different
from the one used for design. A model that is being used for analysis and
specification would not show any of the design decisions that would be made
later on during the design stage. On the other hand, a model used for design
purposes should capture all the design decisions. Therefore, it is a good idea to
explicitly mention the purpose for which a model has been developed, along with
the model.
Origin of UML
In the late 1980s and early 1990s, there was a proliferation of object-oriented
design techniques and notations. Different software development houses were
using different notations to document their object-oriented designs. These
diverse notations used to give rise to a lot of confusion.
It is needless to say that UML has borrowed many concepts from these
modeling techniques. Especially, concepts from the first three methodologies
have been heavily drawn upon. UML was adopted by Object Management
Group (OMG) as a de facto standard in 1997. OMG is an association of
industries which tries to facilitate early formation of standards.
The UML diagrams can capture the following five views of a system:
• User’s view
• Structural view
• Behavioral view
• Implementation view
• Environmental view
Fig. 7.1 shows the UML diagrams responsible for providing the different views.
User’s view: This view defines the functionalities (facilities) made available
by the system to its users. The users’ view captures the external users’ view
of the system in terms of the functionalities offered by the system. The users’
view is a black-box view of the system where the internal structure, the
dynamic behavior of different system components, the implementation etc.
are not visible. The users’ view is very different from all other views in the
sense that it is a functional model compared to the object model of all other
views. The users’ view can be considered as the central view and all other
Structural view: The structural view defines the kinds of objects (classes)
important to the understanding of the working of a system and to its
implementation. It also captures the relationships among the classes
(objects). The structural model is also called the static model, since the
structure of a system does not change with time.
Behavioral view: The behavioral view captures how objects interact with
each other to realize the system behavior. The system behavior captures the
time-dependent (dynamic) behavior of the system.
Environmental view: This view models how the different components are
implemented on different pieces of hardware.