Applications of UML
   HOME

TheInfoList



OR:

UML (
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
) is a modeling language used by software developers.
UML The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
can be used to develop diagrams and provide users (programmers) with ready-to-use, expressive modeling examples.UML can be applied in areas like
embedded system An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is ''embedded'' ...
s,
web application A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serv ...
s, commercial applications etc.
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. 412.2458Systems, Views and Models of UML. By Ruth Breu Radu Grosu Franz Huber Bernhard Rumpe Wolfgang Schwerin. arXiv arxiv.orgFor example, models of
business process A business process, business method or business function is a collection of related, structured activities or tasks by people or equipment in which a specific sequence produces a service or product (serves a particular business goal) for a parti ...
es and system functions, as well as things like
class Class or The Class may refer to: Common uses not otherwise categorized * Class (biology), a taxonomic rank * Class (knowledge representation), a collection of individuals or objects * Class (philosophy), an analytical concept used differentl ...
es written in a programming language, database schemas, and reusable
software component Component-based software engineering (CBSE), also called component-based development (CBD), is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a give ...
s.
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 * Enterprise information systems * Banking and financial services *
Telecommunications Telecommunication is the transmission of information by various types of technologies over wire, radio, optical, or other electromagnetic systems. It has its origin in the desire of humans for communication over a distance greater than that fe ...
* DefenseSuch as, software engineering in aircraft combat systems *
Transportation Transport (in British English), or transportation (in American English), is the intentional movement of humans, animals, and goods from one location to another. Modes of transport include air, land (rail and road), water, cable, pipeline, ...
*
Retail Retail is the sale of goods and services to consumers, in contrast to wholesaling, which is sale to business or institutional customers. A retailer purchases goods in large quantities from manufacturers, directly or through a wholesaler, and ...
* Science and Research * Distributed Web-based services UML can also be used to model nonsoftware systems, such as
workflow A workflow consists of an orchestrated and repeatable pattern of activity, enabled by the systematic organization of resources into processes that transform materials, provide services, or process information. It can be depicted as a sequence o ...
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: *
Class diagram In software engineering, a class diagram in the Unified Modeling Language (UML) is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, operations (or methods), and the rela ...
*
Component diagram In Unified Modeling Language (UML), a component diagram depicts how components are wired together to form larger components or software systems. They are used to illustrate the structure of arbitrarily complex systems. Overview A component diag ...
*
Composite structure diagram Composite structure diagram in the Unified Modeling Language (UML) is a type of static structure diagram, that shows the internal structure of a class and the ''collaborations'' that this structure makes possible. This diagram can include inter ...
*
Deployment diagram A deployment diagram in the Unified Modeling Language models the ''physical'' deployment of artifacts on nodes.Deployment diagrams show "the allocation of Artifacts to Nodes according to the Deployments defined between them.Unified Modeling L ...
*
Object diagram In object-oriented programming, an object diagram in the Unified Modeling Language (UML) is a diagram that shows a complete or partial view of the structure of a modeled system at a specific time. Overview In the Unified Modeling Language (U ...
* Package diagram * Profile diagram


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: *
Activity diagram Activity diagrams are graphical representations of workflows of stepwise activities and actions with support for choice, iteration and concurrency. In the Unified Modeling Language, activity diagrams are intended to model both computational and o ...
* State machine diagram *
Use case diagram A use case diagram is a graphical depiction of a user's possible interactions with a system. A use case diagram shows various use cases and different types of users the system has and will often be accompanied by other types of diagrams as well. Th ...
Use Case Diagrams from UML are useful to understand real-time systems


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: *
Communication diagram A communication diagram in the Unified Modeling Language (UML) 2.0, is a simplified version of the UML 1.x collaboration diagram. UML has four types of interaction diagrams: * Sequence diagram * Communication diagram * Interaction overview d ...
Communication diagrams are used for showing communication between objects or parts. * Interaction overview diagram *
Sequence diagram A sequence diagram or system sequence diagram (SSD) shows process interactions arranged in time sequence in the field of software engineering. It depicts the processes involved and the sequence of messages exchanged between the processes needed ...
Sequence diagram are used for communication between objects in terms of sequences. * Timing diagramTiming diagram are a specific type of interaction diagram where the focus is on timing constraints.


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 UWE (UML-based Web Engineering) is a software engineering approach for the development of Web applications. UWE provides a UML profile (UML extension), a metamodel, model-driven development process and tool support (ArgoUWE) for the systematic ...
aims at offering a UML profile that matches the needs of web development better. The following are examples: *Representation of web applications using a set of models **Web app use case model **Web app implementation model **Web app deployment model **Web app security model **Web app site map *To model pages, hyperlinks, and dynamic content on the client and server side. *For modeling server side aspects of web page with one class and client side aspect with another and distinguishing the two by using UML's extension mechanism to define stereotype's and icons for each server and client page. *Stereotypes in UML are used to define new semantics for modeling element. *Forms in HTML can also be modeled using various UML constructs. *UML can be used to express the execution of the system’s business logic in those Web-specific elements and technologies.


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: *UML is not a single language, but a set of notations, syntax and semantics to allow the creation of families of languages for particular applications. *Extension mechanisms in UML like profiles, stereotypes, tags, and constraints can be used for particular applications. *Use-case modelling to describe system environments, user scenarios, and test cases. *UML has support for object-oriented system specification, design and modelling. *Growing interest in UML from the embedded systems and realtime community. *Support for state-machine semantics which can be used for modelling and synthesis. *UML supports object-based structural decomposition and refinement. A specific UML profile, called
MARTE Marte may refer to: *Marte, Nigeria, a Local Government Area in Borno State *Marte (surname), including a list of people with the name * C.D. Marte, a Mexican football club *C.D. Atlético Marte, a Salvadoran football club * ST ''Marte'', a tug in ...
for Modeling and Analysis of Real-Time and Embedded systems, provides some extensions dedicated to the domain.


See also

*
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
*
Web application A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serv ...
*
Embedded system An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is ''embedded'' ...
*
MARTE Marte may refer to: *Marte, Nigeria, a Local Government Area in Borno State *Marte (surname), including a list of people with the name * C.D. Marte, a Mexican football club *C.D. Atlético Marte, a Salvadoran football club * ST ''Marte'', a tug in ...
*
UML tools This article compares UML tools. UML tools are software applications which support some functions of the Unified Modeling Language. General Features See also * List of requirements engineering tools Requirements engineering tools a ...


References and notes

''Notes'' ''Citations'' {{Reflist, refs= * {{Cite web , title=Power of UML related reference , url=http://www.sparxsystems.com/platforms/uml_tool.html *{{Cite web , title=Some UML tools generate program language tools , url=http://www.coderanch.com/t/98273/patterns/importance-UML *{{Cite web , title=Grady Booch, Jacobson and rumbaugh book *{{Cite web , title=Modeling Web Application Architectures with UML , url=http://dl.acm.org/ft_gateway.cfm?id=317677&type=pdf&CFID=36848136&CFTOKEN=65755783 , format=PDF *{{Cite web , title=UML for embedded systems , citeseerx = 10.1.1.67.5101


External links

* http://www.uml.org/ * https://web.archive.org/web/20110906042707/http://www.itmweb.com/essay546.htm * https://web.archive.org/web/20120331162632/http://oss.org.cn/ossdocs/development/rup/webapps.htm * http://www.sereferences.com/uml-tools.php * http://blogs.oracle.com/JavaFundamentals/entry/the_importance_of_using_unified Unified Modeling Language