UMLs and its software

Ebube .E
5 min readDec 11, 2022

--

https://images.app.goo.gl/KnQAW5noarJv7u6J6

Since code cannot be understood by just anyone, UMLs are used to display concepts in some sort of flowchart format that most people can comprehend in order to make systems intelligible.

Let’s quickly review Object-Oriented Analysis and Design(OOAD) in order to get what the UML is and what it does.

The practice of applying an object-oriented methodology to create a computing system or application is known as object-oriented design, or OOD. By using this method, a software solution built on the idea of objects can be implemented.

OOD is a step in the lifecycle of object-oriented programming (OOP).

Following the conclusion of an object-oriented analysis, OOD assists in developing the system architecture or layout in object-oriented system design and development (OOA).

Later, an object-oriented programming language or technique is used to develop or program the designed system (OOPL).

Object-Oriented Programming(OOP)

Procedural programming, which predated OOP, separated a program into a collection of functions, with data stored in variables and functions that operate on data.

This, however, is ineffective because a small modification to a function could render the entire program useless. But in OOP, a collection of connected variables is gathered into a unit called an object.

The functions herein are referred to as methods, whereas the variables are referred to as properties.

The fundamental ideas of abstraction, encapsulation, inheritance, and polymorphism which are principles of OOP can all be represented using UML.

What then is UML?

Unified Modelling Language is known as UML. It is a graphical language used to design, visualise, build, and document software system artefacts.

The object-oriented analysis and design of software projects are expressed primarily using graphical notations in the UML.

Additionally, it clarified software design concepts such that anyone not a programmer could grasp them.

This is a clear language. It is a programmer’s version of a blueprint.

TIMELINE OF UML

While working at Rational software in 1995, Grady Booch, Ivar Jacobson, and James Rumbaugh developed the Unified Modeling Language. The Object Management Group, which is made up of companies including Hewlett-Packard, IBM, and Apple Computer, approved UML as a standard in 1997.

This guaranteed that UML will continue to be a common visual language for a long time to come with interoperability in mind.

The International Organization for Standardization (ISO) released the language in 2005; since then, it has undergone revisions and reviews to stay current.

UML VERSIONS

UML is available in a variety of versions, such versions 1.1, 1.3, 1.4 … But the most recent version is UML 2.5.1. Minor bug fixes are what set this version apart from its predecessor. That is not the focus of this piece, therefore I won’t get into it.

But since you’re smart, you should go on these links to learn more about the UML versions.

UML DIAGRAMS

Although there are 13 different types of UML diagrams, they can be divided into two categories: structural UML diagrams and behavioural UML diagrams.

However, for the purposes of this article, we’ll focus on the class diagram and use case diagram, which are classified as structural and behavioural UML diagrams, respectively.

Let’s get started.

CLASS DIAGRAMS.

In the Unified Modeling Language, a class diagram shows the relationships and source code dependencies between classes (UML).

An object in this sense is a particular entity in a program or the unit of code that represents that entity, and a class describes the methods and variables in that object.

All types of object-oriented programming can benefit from class diagrams (OOP).

The classes are grouped in groups that have similar traits in a class diagram.

A class diagram looks like a flowchart where classes are represented by boxes with three rectangles inside each box.

The class name is located in the top rectangle, its attributes are located in the middle rectangle, and its methods, which are also known as operations, are located in the lower rectangle.

Boxes are connected by lines, some of which may have arrows at either or both ends. These lines outline the associations, or relationships, between the classes.

Instances are provided below —

Image from https://www.lucidchart.com/pages/uml-class-diagram

USE CASE DIAGRAMS

The interactions between the system and its actors are also depicted in these diagrams.

Use-case diagrams show what the system does and how the actors use it, but they do not show how the system works within.

The context and requirements of either the complete system or the key components of the system are illustrated and defined through use-case diagrams.

Here is a use case diagram for a learning management system, for example-

UML Tools/Software.

Since you’ve got a good grasp of what UMLs are and as wellUML diagrams, let’s talk about UML software.

There are a ton of UML tools available, including EdrawMax, Adobe Express, Moqups, Lucidchart, Creately, and Visio, but I will be focusing on Draw.io.

I started with this piece of software. Since I never had complaints to watch out for one, I didn’t even realise there were others until a while back.

Brief intro to how to use Draw.io

So, why should you use Draw.io? To begin with, it’s free! Who doesn’t enjoy free things? A beginner may easily use it. Look, my friend, you won’t be lost if you’ve never used a UML tool and use this one. It is very similar to utilising a social media application. You simply know where things belong. What a cool thing!

There is no restriction on the number of sizes, and templates are included into the software’s architecture.

This free UML diagram tool includes pre-built templates for diagrams and lets you save the model in the location of your choice.

It also seamlessly connects with JupyterLab, Lark, LumApps, Nextcloud, Nuclino, Redmine, and Sandstorm in addition to Aha, Atom, Bioiocons, BookStack, Docstell, FOSWiki, Grafana, Growi, and so forth.

It offers a variety of graphical possibilities and online storage. The file types PNG, JPEG, SVG, XML, and PDF are also supported.

Additionally, it has import/export options for PDF, PNG, JPEG, SVG, XML, and other file types. This offers a lot of advantages. I don’t know about you but this seems like a good deal😄.

Anyways, if you use this tool and dislike it, certainly check out others. I won’t be mad.

That’s all for now🥴

If you enjoyed this, give this 50 claps as a way of appreciation. Also leave a comment, share this post with your homies and follow me. Happy learning!

--

--

Ebube .E

Bringing you insights about programming, minimal living, psychology and mental health and everything in between