UML Basics
Reading (suggested): Overview of the UML Diagram | This article describes what UML is and provides examples.
Communicating your ideas is crucial to your career in software development. This ambiguity of our language can lead to different interpretations by others and a product that is not as expected.
As communicating ideas has been a longstanding and costly problem in the software community the _Unified Modeling Language _has become widely accepted for design documentation.
UML History The Object Management Group (OMG) adopted unified Modeling Language (UML) in 1997. OMG is a non-profit technology standards consortium and its members define and maintain the UML specifications that are used by software providers and developers. UML provides a more cohesive and standardized method of software modeling:
- The information is open standard which means it is available to the public so it can be widely used.
- UML was developed, and is controlled by a group of active contributors with backgrounds in government, business, and education.
- UML consists of many diagrams all for the purpose of showing how a system is going to work.
UML Today Today, UML is Object Management Group’s most-used specification and in 2000, the International Organization of Standardization (ISO) accepted UML as a standard for modeling software-intensive systems.
Though UML is the standard language for visualizing and documenting the flow of software systems, it is not limited to simply software and can also be utilized for non-software systems such as a process flow.
The goal of UML is to have a standard methodology that all developers can use, which is still simple and easy to understand and use on a multitude of levels.
A UML Activity Diagram (which we will cover a bit more in depth in a separate activity), is not only for use by developers but for business users and any lay person who is trying to understand the system or process flow displayed.
UML is not a development method; it is merely a part of the many processes that go into creating a successful program, system or outcome.
UML is generally used heavily in the beginning stages of a project to elaborate upon the design. However, it can – and should - be used throughout a process to utilize existing source code as well.