UML Tutorial for Beginners
Blog containing resources for uml like lecture notes, lecture videos, lab manual, uml diagrams, objective bits, important questions and more.
Subscribe to Startertutorials.com's YouTube channel for different tutorial and lecture videos.

Categories: Introduction to UML. 3 Comments on Introduction to UML

Before going to learn what is UML, let’s learn about what is a model and the use of models:

 

What is a model?

 

A model is a simplified representation of a thing. The model captures the important aspects of the thing being modeled and leaves out the rest of the details. The benefit of models is that they can be represented in a medium (2D or 3D etc) we like.

 

A model of a software system can be developed using a modeling language like UML. The model will have both semantics and notation and can take various forms that include both pictures and text. The model is intended to be easy to use for certain purposes than the final system.

 

What are models for? (Need for models)

 

Models are used for the following purposes:

  1. To capture and precisely state the requirements and domain knowledge so that all the stakeholders may understand and agree on them.
  2. To think about the design of a system.
  3. To capture design decisions in a mutable form separate from the requirements.
  4. To generate usable work products.
  5. To organize, find, filter, retrieve, examine and edit information about large system.
  6. To explore multiple solutions economically.
  7. To master complex systems.

 

Unified Modeling Language (UML)

 

UML is a language for visualizing, specifying, constructing and documenting the artifacts of a software intensive system or simply you can say that UML is a language for modeling software systems.

 

UML was developed by Grady Booch, James Rumbaugh and Ivar Jacobson who belong to Rational Corporation. UML is a language, not a methodology to develop software systems.

 

software system

 

History of UML

 

  • In 1993 Booch was working in Rational Corporation along with other members.
  • In 1994, Rumbaugh joined Rational. The first attempt of unification was made to combine Booch’s concepts, Rumbaugh’s OMT and CRC.
  • In 1995, Jacobson joined Rational. Another unification attempt was made to combine Booch’s concepts, Rumbaugh’s OMT and Jacobson’s Objectory. This unification was named as Unified Modeling Language (UML).
  • In 1996, proposal was made to Object Management Group (OMG) for recognizing UML as a standard language.
  • In 1997, OMG recognized UML as a standard language.
  • In 2000, ISO recognized UML as a standard language. The version of UML was 1.0.
  • In 2004, another major upgrade was made to UML’s specification which is known as UML 2.0.
  • The latest version of UML till date is UML 2.4.1 published in Aug 2011.

 

History of UML

 

Why Unified?

 

UML is unified across several domains:

  • Across historical methods and notations (Booch’s methodology, OMT and Objectory).
  • Across the development life cycle phases.
  • Across application domains.
  • Across implementation languages and platforms.
  • Across development platforms.
  • Across internal concepts.

 

Reading(s):

Comparison of diagramming methods

How useful was this post?

Click on a star to rate it!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Suryateja Pericherla

Suryateja Pericherla, at present is a Research Scholar (full-time Ph.D.) in the Dept. of Computer Science & Systems Engineering at Andhra University, Visakhapatnam. Previously worked as an Associate Professor in the Dept. of CSE at Vishnu Institute of Technology, India.

He has 11+ years of teaching experience and is an individual researcher whose research interests are Cloud Computing, Internet of Things, Computer Security, Network Security and Blockchain.

He is a member of professional societies like IEEE, ACM, CSI and ISCA. He published several research papers which are indexed by SCIE, WoS, Scopus, Springer and others.

Note: Do you have a question on this article or have a suggestion to make this article better? You can ask or suggest us by filling in the below form. After commenting, your comment will be held for moderation and will be published in 24-48 hrs.

3 Comments

You can follow any responses to this entry through the RSS 2.0 feed.

Would you give some examples for better understanding.

Thank you for this excellent course.
I could not understand these two purposes of a model correctly. would you please explain them more?

To capture design decisions in a mutable form separate from the requirements.
To generate usable work products.

Thank you so much.

    To capture design decisions in a mutable form separate from the requirements.
    If you consider the example of UML for modeling a software system, the design (which is based on requirements) is represented as diagrams. Based on the diagrams, we can make certain design decisions like what classes will be used in the code?, Is there any need to create interfaces?, which classes will be part of MVC or MVP or any other architectural pattern? etc.

    To generate usable work products.
    Well the design diagrams are later forward engineered to produce code and hence we get a usable work product.

Leave a Reply

Your email address will not be published. Required fields are marked *