For Students - Use Case Driven Objevt Oriented Analysis
For Students - Use Case Driven Objevt Oriented Analysis
Analysis
Chapter 3
Goals of UML
• UML is a standard language for specifying, visualizing, constructing, and
documenting the artifacts of software systems.
• UML stands for Unified Modeling Language.
• UML is different from the other common programming languages such as
C++, Java, COBOL, etc.
• UML is a pictorial language used to make software blueprints
• Goals of UML
• A picture is worth a thousand words, this idiom absolutely fits describing
UML. Object-oriented concepts were introduced much earlier than UML.
• At that point of time, there were no standard methodologies to organize
and consolidate the object-oriented development.
• It was then that UML came into picture.
• This chapter describes all the UML building blocks. The building blocks of
UML can be defined as −
– Things
– Relationships
– Diagrams
– Things
• Things are the most important building blocks of UML. Things can be −
– Structural
– Behavioral
– Grouping
– Annotational
Structural Things
• Structural things define the static part of the model. They represent the
physical and conceptual elements. Following are the brief descriptions of
the structural things.
• Class − Class represents a set of objects having similar responsibilities.
• Use case −Use case represents a set of actions performed by a system for
a specific goal.
• State machine − 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
• Package − 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 - It is the only
one Annotational thing available. A note is used to render comments,
constraints, etc. of an UML element.
•
• There are three important types of UML modeling.
• Structural Modeling
– Classes diagrams
– Objects diagrams
– Deployment diagrams
– Package diagrams
– Composite structure diagram
– Component diagram
• Structural model represents the framework for the system and this
framework is the place where all other components exist. Hence, the class
diagram, component diagram and deployment diagrams are part of
structural modeling. They all represent the elements and the mechanism
to assemble them.
• The structural model never describes the dynamic behavior of the system.
Class diagram is the most widely used structural diagram.
• Behavioral Modeling
• Behavioral model describes the interaction in the system. It represents the
interaction among the structural diagrams. Behavioral modeling shows the
dynamic nature of the system. They consist of the following −
– Activity diagrams
– Interaction diagrams
– Use case diagrams
• All the above show the dynamic sequence of flow in a system.
• Architectural Modeling
• Architectural model represents the overall framework of the system. It
contains both structural and behavioral elements of the system.
Architectural model can be defined as the blueprint of the entire system.
Package diagram comes under architectural modeling.
• Structural Things
• Graphical notations used in structural things are most widely used in UML.
These are considered as the nouns of UML models. Following are the list
of structural things.
– Classes
– Object
– Interface
– Collaboration
– Use case
– Active classes
– Components
– Nodes
• Class Notation
– The top section is used to name the class.
– The second one is used to show the attributes of the class.
– The third section is used to describe the operations performed by the
class.
– The fourth section is optional to show any additional components.
• Object Notation
• The object is represented in the same way as the class. The only difference
is the name which is underlined as shown in the following figure.
• Interface Notation
• Collaboration Notation
• Collaboration is represented by a dotted eclipse as shown in the following
figure. It has a name written inside the eclipse
• Actor Notation
• An actor can be defined as some internal or external entity that interacts
with the system
• Initial State Notation
• Initial state is defined to show the start of a process. This notation is used
in almost all diagrams.