INTRODUCTION

A general-purpose, graphical modeling language used in software engineering is called UML (Unified Modeling Language). The artifacts (key components) of the software system are specified, visualized, built, and documented using UML. Grady Booch, Ivar Jacobson, and James Rumbaugh developed it at Rational Software in 1994–1995 and continued to work on it through 1996. By 1997, the Object Management Group had adopted it as a standard.

A general-purpose, graphical modeling language used in software engineering is called UML (Unified Modeling Language). The artifacts (key components) of the software system are specified, visualized, built, and documented using UML.

Grady Booch, Ivar Jacobson, and James Rumbaugh developed it at Rational Software in 1994–1995 and continued to work on it through 1996. By 1997, the Object Management Group had adopted it as a standard.

What is UML?

Unified modeling language, or UML for short, is a standardized general-purpose visual modeling language used in the software engineering industry. It is utilized for defining, visualizing, creating, and documenting the main software system artifacts. It is useful for building and characterizing software systems, particularly ones that use the idea of object orientation. It explains how the hardware and software systems operate.

Grady Booch, Ivar Jacobson, and James Rumbaugh created the UML at Rational Software in 1994–1995. Object Management Group approved it as a standard in 1997. (OMG).

The open standard UML is managed by an alliance of businesses called the Object Management Group (OMG). The OMG was founded with the goal of creating an open standard that primarily facilitates object-oriented systems' interoperability. It is not constrained by limitations and can be used to represent systems that are not software-based. The Common Object Request Broker Architecture (CORBA) standards are the ones for which the OMG is best known.

Goals of UML

  • It is a modeling language that can be used by any modeler because it is general-purpose.
  • Due to the lack of standardized methodologies at the time, UML was created after the emergence of object-oriented principles to systematize and consolidate object-oriented development.
  • The UML diagrams are designed for business users, developers, common people, or anybody else who wants to understand the system, regardless of whether the system is software-based or not.
  • Thus, it can be said that UML is a straightforward modeling methodology that is utilized to model all real-world systems.

UML characteristics

The following characteristics of the UML:

It is a language for generalized modeling.

It differs from other programming languages like Python, C++, and so forth.

It has a connection to object-oriented design and analysis.

It is employed to visualize the system's workflow.

It is a visual language that produces effective modeling artifacts.

Conceptual  Modeling

We should first comprehend the fundamentals of the conceptual model before going on to the UML notion.

Numerous concepts that are related to one another make up a conceptual model. It facilitates understanding of things and their interactions. The initial step before creating UML diagrams is this.

The following object-oriented ideas are necessary before using UML:

  • Object: An object is a thing that exists in the real world. In a single system, multiple items are present. It serves as a core component of UML.
  • Class: A class defines the variables and functions that are shared by all objects of a specific kind, acting as the software blueprint for an object.
  • Abstraction: The practice of portraying an object's key features to users while obscuring its extraneous details is known as abstraction. In essence, it's utilized to picture how something will work.
  • Inheritance: Deriving a new class from an existing one is the process of inheritance.
  • Polymorphism: Polymorphism is a method of describing objects with several forms that can be used for various tasks.
  • Encapsulation: It creates a tight link between the data and the object by uniting them as a single entity.

Analysis and Design in OO

Design is the combination of the identified items, while OO is the study of objects. So, finding the objects for system design is the primary goal of OO analysis. An existing system can also be the subject of the analysis. If we are able to recognize the objects, the analysis will be more effective. After identifying the objects, we then determine their relationships and create the design.

The following describes OO's goal:

  • to recognize a system's objects.
  • to determine their connections.
  • to create an executable design when OO principles are used.

The steps that apply and implement OO ideas are as follows:

First step: OO analysis

The identification and accurate description of the objects is the primary goal of OO analysis. It is simple to carry out the designing process once the objects have been recognized. The responsibility-bearing objects must be identified. The duties carried out by the objects are referred to as responsibility in this context. Every object has a certain purpose to fulfill. By pooling these obligations, the system's goal is achieved.

Second step: OO Design.

This stage focuses mostly on fulfilling the requirements. The objects are connected during this step in accordance with the intended associations. The designing stage is over after the association is finished.

Third step: OO Implementation.

After designing is complete, this is the final stage. It utilizes any OO language, such as C++, Java, etc., to implement the idea.

UML's function in OO design

Despite the fact that UML is a modeling language that may be used to represent both software and non-software systems, this article concentrates on modeling OO software applications. Understanding the connection between OO design and UML is crucial. When necessary, the OO design can be transformed into UML. The OO languages have an impact on programming since they model actual things.

Object-oriented notations Object-Oriented Design (OOD), Object Modeling Technique (OMT), and Object-Oriented Software Engineering are all combined into the UML (OOSE). The UML makes use of the advantages of these three strategies to express more consistency.