UML, the unified modeling language, is a standard used to visually describe a program, specifically an object-oriented program. UML helps to organize, plan and visualize a program. In addition, being a standard, it is widely used and accepted as the language for outlining programs. UML is used in a variety of purposes and its readability and re-usability make it an ideal choice for programmers.
A UML diagram is a visual representation of the relationships between classes and entities in a computer program. A class is an object in programming that organizes similar variables and functions in one location. To understand a program, it is essential to understand what each class object does, the information it stores and how it relates to other classes in the program. By showing this information in a diagram, it is easy to understand and visualize a program's relationships.
Readability and Re-usability
A UML diagram is beneficial in that it is very readable. The diagram is meant to be understood by any type of programmer and helps to explain relationships in a program in a straightforward manner. Traditionally, to understand a program, a programmer would read the code directly. This could be thousands or millions of lines of code in very large programs. Having a UML diagram helps to quickly illustrate those relationships. Additionally, by using a diagram to show the code running in a program, a programmer is able to see redundant code and reuse portions of code that already exist rather than rewrite those functions.
UML is the current standard for programming in object-oriented programming languages. When creating classes and other objects with relationships between each other, UML is what is used to visually describe these relationships. Because it is used as a standard, it is widely understood and well known. This makes it easy for a new programmer to step into a project and be productive from day one.
UML helps to plan a program before the programming takes place. In some tools used to model UML, the tool will generate code based on the classes set up in the model. This can help reduce overhead during the implementation stage of any program. Additionally, a UML model diagram is easy to change, whereas reprogramming a section of code can be tedious and time-consuming.