UML (Unified Modeling Language) is a modeling language used by software developers. UML can be used to develop diagrams and provide users (programmers) with ready-to-use, expressive modeling examples. Some UML tools generate program language code from UML. UML can be used for modeling a system independent of a platform language. UML is a graphical language for visualizing, specifying, constructing, and documenting information about software-intensive systems. UML gives a standard way to write a system model, covering conceptual ideas. With an understanding of modeling, the use and application of UML can make the software development process more efficient.
History.
UML has applied to various activities since the second half of the 1990s and been used with object-oriented development methods.
Fields applying UML.
UML has been used in following areas 
 ;templatestyles src="Col-begin/styles.css"/ ;
UML can also be used to model nonsoftware systems, such as workflow in the legal systems, medical electronics and patient healthcare systems, and the design of hardware.
Modeling applications of UML using various diagrams.
The following lists of UML diagrams and functionality summaries enable understanding of UML applications in real-world examples.
Structure diagrams and their applications.
Structuring diagrams show a view of a system that shows the structure of the objects, including their classifiers, relationships, attributes and operations:
Behaviour diagrams and their applications.
Behaviour diagrams are used to illustrate the behavior of a system, they are used extensively to describe the functionality of software systems. Some Behaviour diagrams are:
Interaction diagrams and their applications.
Interaction diagrams are subset of behaviour diagrams and emphasize the flow of control and data among the things in the system being modelled:
Web applications.
Web applications of UML can be used to model user interfaces of web applications and make the purpose of the website clear.
Web applications are software-intensive systems and UML is among the efficient choice of languages for modeling them. Web software complexity of an application can be minimized using various UML tools.
UML-based web engineering aims at offering a UML profile that matches the needs of web development better. The following are examples: 
Embedded systems.
Software in embedded systems design needs to be looked carefully for software specification and analysis. Unified Modeling Language and extension proposals in the realtime domain can be used for the development of new design flows. UML can be used for specification, design and implementation of modern embedded systems. UML can also be used for modelling the system from functional requirements through executable specifications and for that purpose it is important to be able to model the context for an embedded system – both environmental and user-driven.
Some key concepts of UML related to embedded systems:
A specific UML profile, called MARTE for Modeling and Analysis of Real-Time and Embedded systems, provides some extensions dedicated to the domain.
References and notes.
"Notes"
 ;templatestyles src="Reflist/styles.css" / ;
"Citations"
 ;templatestyles src="Reflist/styles.css" / ;