Introduction To UML
Introduction To UML
What to Discuss
• Why the UML is necessary
• How the UML came to be
• How to represent UML components in diagrams
• Why it’s important to use a number of different types of diagrams
UML
What is UML?
UML – it is a visual modeling language that enables system builders to
create blueprints that capture their visions in a standard, easy-to-
understand way, and provides a mechanism to effectively share and
communicate these visions with others.
Some Terms
• System – it is the combination of software and hardware that
provides solution to the for a business problem.
• System development – it is the creation of a system for a client.
• Client – it is the person who has the problem to be solved.
• Analyst – documents the client’s problem and relays it to developers.
• Developers – are programmers who build the software that solves the
problem and deploy the software on the computer hardware.
How UML came to be
UML is the brainchild of: dubbed (“the three amigos”)
• Grady Booch
• James Rumbaugh
• Ivar Jacobson
How to represent UML components in
diagrams
Model – it is a set of UML diagrams that we can examine, assess, and
modify in order to understand and develop a system.
UML Diagrams
• Class Diagram - is basically a graphical representation of the static
view of the system and represents different aspects of the
application.
UML Diagrams
• Object Diagram - Object diagrams represent an instance of a class
diagram. The basic concepts are similar for class diagrams and object
diagrams.
UML Diagrams
• Use Case Diagram – is a description of a system’s behavior from a
user’s standpoint.
UML Diagrams
• State/Statechart Diagram - is used to describe the states of different
objects in its life cycle.
UML Diagrams
• Sequence Diagram - The Sequence Diagram models the collaboration
of objects based on a time sequence. It shows how the objects
interact with others in a particular scenario of a use case.
Continuing with the washing machine example, the components of the
washing machine includes a timer, water pipe and drum.
So what would happen if you invoke the “wash clothes” use case?
1. At the beginning of “Soaking”, water enters the drum via the water
pump
2. The drums remain stationary for 5 minutes
3. At the end of “Soaking” water stops entering the drum
4. At the beginning of “Washing” the drum rotates back & forth, and
continues for 15 minutes
5. At the end of “Washing” the drum pumps out the soapy water
6. The drum stops rotating
7. At the beginning of “Rinsing” water entry restarts
8. The drum rotates back and forth
9. After 15 minutes water entry stops
10. After the “Rinsing” the drum pumps out the rinse water
11. The drum stops rotating
12. At the beginning of “Spinning” the drum rotates clockwise and
continues for 5 minutes
13. At the end of “Spinning” the drum rotation stops
14. The wash is done.
Now let’s get specific about the operations:
• The Timer can Stop a flow
Time the soaking • The Drum can
Time the washing Store water
Time the rinsing Rotate back and forth
Time the spinning Rotate clockwise
Stop rotating
• The Water pipe can Pump water
Start a flow
UML Diagrams
• Activity Diagram – is basically a flow chart to represent the flow form
one activity to another activity. The activity can be described as an
operation of the system.
UML Diagrams
• Communication Diagram - Similar to Sequence Diagram, the
Communication Diagram is also used to model the dynamic behavior
of the use case.
UML Diagrams
• Component Diagram - The Component Diagram helps to model the
physical aspect of an Object-Oriented software system.