Difference between UML and OMT

Key Difference: UML stands for Unified Modeling Language. UML is a popular and standardized modeling language that is primarily used for object oriented softwares. OMT stands for Object-Modeling Technique. OMT was developed by Rumbaugh in 1991 as an object modeling approach that is widely used in software development. OMT is considered to be a predecessor of the Unified Modeling Language (UML). Therefore, many OMT modeling elements are similar to UML modelling elements.

UML stands for Unified Modeling Language. Jim Rambaugh, Ivar Jacobson and Grady Booch are the original authors of UML. It has been released by the Object Management Group in 1997. It is used in the analysis and design as a notation for an object model.  It comprises of various diagrams like class, use case, sequence, collaboration, statechart, etc. It consists of a family of graphical notations that assists in describing and designing software systems. It is mainly employed in the systems developed using an object-oriented style. The UML is independent of implementation language.

OMT stands for Object-Modeling Technique. OMT was developed by Rumbaugh in 1991, as an object modeling approach to software development. OMT defines three main types of models:

  • Object Model – This model describes the structure, identity and relationships of objects that are found in a system. Object diagrams are used to graphically represent this model.
  • Dynamic model - A dynamic model is related to the functionality of the system that deals with time and changes. It is represented by defining events and states. It has the components like classes, objects, object diagrams, attributes, operations, associations, etc.
  • Functional Model – It mainly focuses on the process perspective of the model. It is composed using multiple data flow diagrams. It is represented by process, data flows, actors and data stores.

Comparison between UML and OMT:

 

UML

OMT

Full form

Unified Modeling Language

Object-Modeling Technique

Development

Developed in 1997 by Object Management Group

developed in 1991 by James Rumbaugh

Definition

UML is a popular and standardized modeling language that is primarily used for object oriented softwares. 

OMT stands for Object-Modeling Technique. OMT was developed by Rumbaugh in 1991 as an object modeling approach that software development. OMT is considered to be a predecessor of the Unified Modeling Language (UML).

Advantages

  • Open Standard, Graphical notation for specifying, visualizing, constructing, and documenting software systems.
  • Language can be used from general initial design to very specific detailed design across the entire software development lifecycle.
  • Increase understanding/communication of product to customers and developers.
  • Support for diverse application areas.
  • Support for UML in many software packages today (e.g. Rational, plugins for popular IDE’s like NetBeans, Eclipse).
  • Based upon experience and needs of the user community.
  • It is a fast and intuitive approach to model the objects.
  • The designs based on OMT are very close to real world.
  • Model also exhibits details like class, attributes, method, etc.
  • A producer-consumer relationship can be easily depicted.
  • Based on reusability concept (Inheritance, library of classes).
  • Provides the features of ordering on association and data dictionary.

 

 

Conventions

  • Rectangles are classes or instances
  • Ovals are functions or use cases
  • Instances are underlined
  • Types are not underlined
  • Class with three compartments – middle compartment holds a list of attributes.
  • Bottom compartment holds a list of operations.
  • The name of an abstract class is shown in italics.
  • An interface may be shown using a rectangle symbol with the keyword «interface» preceding the name.
  • Object modeling - objects (boxes with rounded corners), association instances called links (lines).

 

  • Dynamic modeling - class instances (vertical bars), events carrying values, (horizontal arrows), states (boxes with rounded corners), transitions (arrows).

 

  • Functional modeling - processes (bubbles), data flows (arrows), control flows (arrows in dashed lines), actors (boxes), data stores (double lines).
  • Disadvantages
  • Commercial UML software tools are expensive.
  • No specification for modeling of user interfaces.
  • Lacks a formal specification for serialization and object persistence
  • The diagrams may get complicated.
  • Management and maintenance of UML diagrams require a lot of time.
  • It does not have an efficient mechanism to deal with timing constraints and real time issues.
  • Information may get fragmented.
  • Lacks well defined syntax of the models.
  • Compatibility of model components among different models is confusing.
  • Definition of a module is not clear.
  • Various design decisions can lead to a biasness.
  • The choice of data access paths and candidate keys may be too early.

Image Courtesy: wikipedia.org, cs-exhibitions.uni-klu.ac.at

Most Searched in Games and Recreation Most Searched in Arts and Humanities
Most Searched in Pregnancy and Parenting Top 10 Most Searched Differences
Freelancer vs Consultant vs Entrepreneur
Vision vs Dream
MATLAB vs Java
DDL vs DML in Tabular Form

Add new comment

Plain text

CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.