Jump to content

Applications of UML: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
Line 2: Line 2:
{{no footnotes|date=September 2011}}
{{no footnotes|date=September 2011}}
{{Wikipedia-stub}}
{{Wikipedia-stub}}
UML is very powerful modeling language<ref>{{Cite web | title=Power of UML related reference
UML is very powerful modeling language. We can develop Use Cases using [[UML]] and provide users with a ready-to-use, expressive visual modeling. UML can be applied in many areas like embedded systems, web applications, commercial applications etc. Some UML tools in telecommunications or finance generate program language code from UML and produces bug-free, deployable applications that run quickly if the code generator incorporates best-practice scalable patterns. UML can be used for modeling the whole system independent of platform language.
|url=http://www.sparxsystems.com/platforms/uml_tool.html}}</ref>. We can develop Use Cases using [[UML]] and provide users with a ready-to-use, expressive visual modeling. UML can be applied in many areas like embedded systems, web applications, commercial applications etc. Some UML tools in telecommunications or finance generate program language code from UML and produces bug-free, deployable applications that run quickly if the code generator incorporates best-practice scalable patterns. UML can be used for modeling the whole system independent of platform language.


==History==
==History==

Revision as of 14:31, 19 September 2011

UML is very powerful modeling language[1]. We can develop Use Cases using UML and provide users with a ready-to-use, expressive visual modeling. UML can be applied in many areas like embedded systems, web applications, commercial applications etc. Some UML tools in telecommunications or finance generate program language code from UML and produces bug-free, deployable applications that run quickly if the code generator incorporates best-practice scalable patterns. UML can be used for modeling the whole system independent of platform language.

History

To view history of UML Click here...

Modeling Applications of UML using various Diagrams





Below is the list of the UML diagrams and their functionalities in short for understanding their applications in real life examples.

Structure diagrams and their applications

Structuring diagrams are used to define various structure diagrams. Few structure diagrams are..

  • Class diagram
  • Component diagram
  • Composite structure diagram
  • Deployment diagram
  • Object diagram
  • 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. Few Behaviour diagrams are

  • Activity diagram:
  • UML state machine diagram:
  • Use case diagram:

Let us take the example of restaurant to understand how UML will be used to implement restaurant system. Here wait staff take order and serve food to patron. Then patron eat food, drink wine and pay bill. In this diagram patron, chef, cashier and wait staff are actors. Using this UML diagram one can understand the working of that restaurant. So use case diagrams from UML are very useful to understand real time systems.
Restaurant-UML-UC

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: Used for showing communication between objects or parts.
  • Interaction overview diagram:
  • Sequence diagram: used for communication between objects in terms of sequences.
  • Timing diagram : a specific type of interaction diagram where the focus is on timing constraints.

Web Applications

Web applications of UML can be summarized like...
  • To model user interfaces of web applications and make the purpose of the website clear.
  • Web applications are software-intensive systems[2] and UML is the choice of language for modeling them.
  • Minimize software complexity of the web applications using various UML tools.
  • Represent web applications using set of models like use case model, implementation model, deployment model, security model, site map etc.
  • To model Pages, hyper links, 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

The specification, design and implementation of embedded systems demands new approaches. softwares in embedded systems design needs to be looked carefully for software specification and analysis. Unified Modeling Language (UML), and a number of 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 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 terms 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.

Commercial Applications

UML is used in various commercial applications. There are various Unified Modeling Language tools.
  • AgileJ StructureViews.
  • Altova UModel.
  • MagicDraw UML.
  • ATL-Can transform UML models to other models.
  • CaseComplete (Commercial) Use Case and Requirements management tool including Case diagrams.
  • Borland Together (Borland) Cross-platform (Java) Commercial.
  • MagicDraw, a commercial tool; pure Java and will run on Windows / MacOS X and most Unix variants.
  • IBM Rational Rose, the best known UML tool.
  • JUDE has a free community edition that supports basic UML diagrams, reverse engineering existing Java source code to UML, and the generation of Java skeleton source code from UML.
  • Together, a commercial tool; pure Java;
  • OmniGraffle: It's a drawing tool, not a modelling tool, but it does include some UML stencils. It runs on MacOS X only.

See Also

References

  1. ^ "Power of UML related reference".
  2. ^ "Modeling Web Application Architectures with UML" (PDF).

Further Reading

Object Oriented Design and Analysis-[[1]]