Professional Documents
Culture Documents
Name ID
1. Merga Kumela…………,………………… PGR/47307/13
May, 2021
Ambo Ethiopia
0|Page
Contents
1. UML Diagram Analysis and Survey of UML Tools ................................................................................. 1
1.1. Introduction Of UML ..................................................................................................................... 1
2. Behavioral Diagram ............................................................................................................................... 1
2.1 Use case diagram ................................................................................................................................ 2
2.2 Activity Diagram .................................................................................................................................. 2
2.3 State Machine Diagram....................................................................................................................... 3
2.4 Sequence Diagram .............................................................................................................................. 4
2.5 Communication Diagram .................................................................................................................... 4
2.5.1 Communication Diagram vs Sequence Diagram .............................................................................. 5
2.6 Interaction Overview Diagram ............................................................................................................ 5
2.7 Timing diagrams .................................................................................................................................. 6
3. Structural Diagrams .............................................................................................................................. 6
3.1 Class diagram ...................................................................................................................................... 6
3.2 What is Component Diagram? ............................................................................................................ 7
3.3 Component Modeling ......................................................................................................................... 7
3.4 Deployment Modeling ........................................................................................................................ 8
3.5 Composite Structure Diagram............................................................................................................. 9
3.6 Object Diagram ................................................................................................................................... 9
3.7 Package Diagram ............................................................................................................................... 10
3.8 Profile Diagram ................................................................................................................................. 11
4 Survey of UML Tools ................................................................................................................................ 11
4.1 What is a Visio diagram Tool? ............................................................................................................... 12
4.1.1 Pros of Microsoft Visio tools .............................................................................................................. 12
4.1.2 Cons of Microsoft Visio tools ............................................................................................................. 13
4.2 Edraw Max ............................................................................................................................................ 13
4.3 Gliffy ..................................................................................................................................................... 14
Which tools I prefer to use?........................................................................................................................ 15
CONCLUSION............................................................................................................................................... 15
References .................................................................................................................................................. 16
I
List of Figures
II | P a g e
1. UML Diagram Analysis and Survey of UML Tools
1.1. Introduction Of UML
UML, short for Unified Modeling Language, is a standardized modeling language consisting of
an integrated set of diagrams, developed to help system and software developers for specifying,
visualizing, constructing, and documenting the artifacts of software systems, as well as for
business modeling and other non-software systems. The UML represents a collection of best
engineering practices that have proven successful in the modeling of large and complex systems.
The UML is very important parts of developing object-oriented software and the software
development process. The UML uses mostly graphical notations to express the design of
software projects. Using the UML helps project teams communicate, explore potential designs,
and validate the architectural design of the software. In this article, we will give you detailed
ideas about what is UML, the history of UML and a description of each UML diagram type,
along with UML examples.
2. Behavioral Diagram
It shows how the system behaves and interacts with itself and other entities (users, other
systems). These show how data moves through the system, how objects communicate with
each other, how the passage of time affects the system, or what events cause the system to
change internal states.
1|Page
2.1 Use case diagram
Use case diagrams are fundamental features of the UML notation for describing for object-
oriented system model. In other simplest form use case identifies the type of interaction and the
actor involves. Use cases are scenario-based techniques for equipment selection which were first
introduced in the object model. A use case describes a sequence of actions that provide a
measurable value to an actor and is drawn as stick figures.
Use Case diagram of online Ambo town Water billing
system
Checks_cust_balance Generate reporrt
Bank
create account Reg_meter_value
De-activate/
Login
activate view cust_info
Bill officer
search account
bill payment
update account
Admin
Customer
Activity diagrams represent the dynamics of the system. They are flow charts that are used to
show the workflow of a system. These shows
2|Page
Customers
incorrect
correct
incorrect
pls recharge your account!!
Insufficient balance
Sufficient balance
payed successfully
3|Page
2.4 Sequence Diagram
Sequence e diagram is used to show the sequence of actions, interaction of an object with the
Actor’s and time frames of the system. A sequence diagram shows an interaction arranged in
time sequence. In particular, it shows the instances participating in the interaction by their
“lifelines” and the stimuli that they arranged in time sequence. It does not show the associations
among the objects. Shows the participating objects by the lifelines and the instructions among
this objects arranged in time sequence by the message they exchange with one another.
▪ Sequence Diagrams - emphasize time ordering
▪ Generally show the sequence of events that occur.
wants to login
4|Page
2.5.1 Communication Diagram vs Sequence Diagram
The communication diagram and the sequence diagram are similar. They're semantically
equivalent, that is, the present the same information, and we can turn a communication to a
sequence diagram and vice versa. The main distinction between is that the communication
diagram arranged elements according to space, the sequence diagram is according to time. Of the
two types of interaction diagrams, sequence diagrams seem to be used for more than
communication diagrams. So, they are very useful for visualizing the relationship between
objects collaborating to perform a particular task. This is difficult to determine from a sequence
diagram. In addition, communication diagrams can also help us determine the accuracy of our
static model (i.e., class diagrams).
5|Page
2.7 Timing diagrams
Timing diagrams are UML interaction diagrams used to show interactions when a primary
purpose of the diagram is to reason about time. Timing diagrams focus on conditions changing
within and among lifelines along a linear time axis. Timing Diagrams describe behavior of
both individual classifiers and interactions of classifiers, focusing attention on time of
occurrence of events causing changes in the modeled conditions of the Lifelines.
3. Structural Diagrams
Structure diagrams depict the static structure of the elements in your system. i.e., how one object
relates to another. It shows the things in the system – classes, objects, packages or modules,
physical nodes, components, and interfaces. For example, the component diagram describes
how a software system is split up into components and shows the dependencies among these
components
6|Page
How to Draw a Class Diagram
1. Identify the class names. The first step is to identify the primary objects of the
system.
2. Distinguish relationships. Next step is to determine how each of the classes or
objects are related to one another. ...
3. Create the Structure.
7|Page
customers persistence
Administrator
Central database
WAP
Central Data
Base
:MYSQL
8|Page
3.5 Composite Structure Diagram
A composite structure diagram is a UML structural diagram that contains classes, interfaces,
packages, and their relationships, and that provides a logical view of all, or part of a software
system. It shows the internal structure (including parts and connectors) of a structured classifier
or collaboration.
1. First, analyze the system and decide which instances have important data and association.
2. Second, consider only those instances, which will cover the functionality.
3. Third, make some optimization as the number of instances are unlimited.
9|Page
Figure 14: Object Diagram
1. There is a "track order" service, it has to talk with other module to know about the
order details, let us call it "Order Processing".
2. Next after fetching Order Details, it has to know about shipping details, let us call that
as "Shipping".
3. Finally, if knows the status of the order it has to update the information to the user, let
us call this module as "UI Framework".
1. "Track order" package should get order details from "Order Processing" and on
the other hand, "Order Processing" also requires the tracking information from the
"Track Order" package, thus, the two modules are accessing each other which suffices
<<access>> dual dependency.
Step 3 - Finally, Track Order dependency to UI Framework is also mapped in to the diagram
which completes the Package Diagram for Track Order subsystem.
10 | P a g e
3.8 Profile Diagram
A Profile diagram is any diagram created in a «profile» Package. Profiles provide a means of
extending the UML. They are based on additional stereotypes and Tagged Values that are
applied to UML elements, connectors and their components.
11 | P a g e
The ten best software tools used to draw UML diagram and the most accessible tools and popular
business process modeling approach that helps to provide a better way to document a software.
12 | P a g e
➢ Customizable
➢ Visio is built just like any other Microsoft Office program, so anyone familiar with
Office will find it relatively easy to use.
➢ The automatic spacing of items on a page makes a Visio project look sleek and
professional with little effort.
➢ The pre-loaded shapes and symbols in Visio are consistent with what is being taught in
business tools for appropriately flowing processes, so it takes the guesswork out of
representing processes correctly.
➢ The main screen is very busy, even though it probably needs to be as Visio has so, so
many functions.
➢ It would be good to have some stock "title blocks" for tech drawings and wiring diagrams
that are easily available
➢ Microsoft Visio should be included in the suite of Microsoft Office products
➢ Autorotation feature sometimes creates issues--it should be more flexible
➢ Default shapes included can be more colorful, keeping business users in mind
➢ Microsoft Visio is not very easy to use for non-technical business user
➢ sometimes it crashes
➢ more sketching features
➢ rotating shapes is cumbersome
➢ Spacing things on our own can be difficult
➢ Knowing tips like these upfront would be helpful.
➢ Creating master shapes would be helpful; when a shape is too big for a diagram, resizing
it and then making sure all of the other instances are the same shape can be a pain.
➢ A wider selection of templates would be nice.
13 | P a g e
Cons:
➢ “It is necessary to draw several diagrams. But only money and time are wasted."
➢ "Trying to scale the drawing is sometimes confusing. Would prefer the option of rescaling
as you draw."
➢ "Some of the icons are not scaled well compared to other icons. Sometimes the lines have
trouble snapping to the right locations or randomly disconnect."
➢ "The inability to deploy this on multiple computers that I own and the price."
4.3 Gliffy
Gliffy is a free online drawing tool which provides support for drawing UML diagrams. It is one
of the most widely used online diagramming application.
Features:
➢ Allows you to draw a diagram with ease
➢ This free UML tool offers the power of visual communication and collaboration.
➢ Fast and effective integration with Jira and Confluence
➢ Strong supports for BPMP process models
Pros:
➢ Gliffy is a great alternative if you need to create easy to understand process flows,
diagrams, wireframes, and organizational charts.
➢ The free version works for easy and simple diagrams, but you need to understand that your
documents will be public, which is not ideal.
➢ The paid version is still much less expensive than Visio at $7.99 a month. That will also
give you additional abilities not available in the free version.
➢ Callouts for comments are really nice. I can make a comment on a diagram and it's called
out with a big orange dot. There isn't any guessing on what piece of the diagram the
comments relate to.
Cons:
➢ The only reason I use Gliffy is because I can use the free version, and it's always in a pinch,
honestly, if someone needs a professional-looking process flow. I've gotten away with
sketching process flows in a notebook, taking a picture, and sending that too. It just
depends on client expectations.
➢ The Visio import doesn't work great. Everything is brought over usually without issue, but
you'll spend time reformatting.
➢ The import images feature isn't as user-friendly as I'd like. It's not hard to figure out but
takes a minute to understand how my image was imported, and then how to drag it onto the
canvas. If I click the image upload button and select my image, I want to just import the
image once I select the image, not put it in a staging area and then drag it over.
14 | P a g e
Which tools I prefer to use?
In my previous educational training, I have used Microsoft Visio in my industrial project.
In material teaching course purpose, I have taught Object Oriented System Analysis and Design
using EdrawMax and I prefer this also since it is easy to use.
In my educational hobby to take course online I am studying Smart Draw software tool
NB. For this due I like to use Microsoft Visio and I like to recommend these three tools to design
project and have conceptual on these.
CONCLUSION
The UML is a major step toward the standardization of software development. The standard has received
widespread support from tool vendors and customers alike. The UML includes specifications for nine
different diagrams used to document different views of a software solution from project inception to
installation and maintenance. The specifications define the elements of each model, how the models are
assembled, and how they can be extended.
15 | P a g e
References
1. Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide.
Pearson Education India, (1999)Google Scholar
2. UML Vendor Directory Listing. http://uml-directory.omg.org/vendor/list.htm
3. Information technology—Object Management Group Unified Modeling Language (OMG
UML—Part 1: Infrastructure (2012). https://www.iso.org/obp/ui/#iso:std:iso-iec:19505:-
1:ed-1:v1:en
4. Documents Associated with Unified Modeling Language (UML), V2.4.1
(2011). http://www.omg.org/spec/UML/2.4.1/
5. Ameedeen, M.A.: A model driven approach to analysis and synthesis of sequence diagrams.
Ph.D. diss., University of Birmingham (2012)Google Scholar
6. ArgoUML. http://argouml.tigris.org/ (2011)
7. Modelio the Open Source Modeling Environment (2011). http://www.modelio.org/
8. Altova UModel 2015, UModel—UML Tool for Software Modeling and Application
Development. http://www.altova.com/umodel.html.
9. Visual Paradigm, Visual Paradigm for UML. http://www.visual-paradigm.com/features/
10. Rational Software Architect. http://www-03.ibm.com/software/products/en/ratisoftarch
11. Software Ideas Modeler (2009). http://www.softwareideas.net/
12. UMLet. http://www.umlet.com/
16 | P a g e