HomeAbout UsCareersFrequently Asked QuestionsClient ListPublicationsContact Us
Simulation Engineering:UML
DVTEECMMARVEDSMMDNIREUSPRASIAPUMLVIRTE
Simulation Technologies
Simulation Engineering
Training Systems
Strategic Studies
Unified Modeling Language (UML) Overview

Unified Modeling Language (UML): An object oriented analysis and design language for visualizing, specifying and documenting software systems. The Unified Modeling Language, or UML, is a combination of three older languages; its grammar is managed by the industry-based Object Management Group as a community-wide standard for specifying software systems. The UML is a part of the U.S. Department of Defense’s Joint Technical Architecture.

UML Model View: A partial description of a software system that emphasizes a particular aspect of the total system development. One view might describe the functions and behaviors of a system; another might describe the system configuration; a third might describe the system’s delivery and installation. Model views divide descriptions of complex software projects into more easily understood chunks. The UML uses five views to describe a system development:
- Use case view
- Design view
- Process view
- Implementation view
- Deployment view

UML Diagram: UML diagrams are the graphical building blocks of UML. (UML model views are made up of one or more UML diagram types). Together, the diagram types can completely describe the software as it moves from an idea to executing code. Each diagram type uses specific shapes and connectors, with parameter fields. Each model view uses different diagram types to describe a part of the system development.

Use Case Diagram: The UML specifies a several types of graphical diagrams to describe different aspects of a software system. The use case diagram shows the people and activities included in the real world scenario to be developed in software.

Interaction Diagram: The interaction diagram shows the timing and sequence of information of information exchanged between different pieces of software.

Class Diagram: The class diagram shows the information and calculations performed by a piece of software, and also shows relationships between different pieces of software. In object oriented software, different pieces of software often share information or calculations, and the class diagram shows this sharing. [top]

Interface Diagram: The interface diagram shows what types of information are exchanged between different pieces of software. (Interface diagrams are often used in conjunction with Interaction diagrams to convey a complete story about the what/when/how of information exchange between software pieces.

Package Diagram: The package diagram shows what pieces of software are assembled into larger packages. Packages are often assembled for ease of management, or to be installed on multiple pieces of hardware.

Objects: A general term used for a discrete thing in the real world that will be represented by a distinct piece of software. The accompanying description includes parameter values that describe the object’s characteristics, and calculations that describe the object’s actions.

Class: A software term used to describe the software description of a group of objects that share the same characteristics.

Superclass: A software term used to describe the generalization of a group of objects. Superclasses include the characteristics and calculations that are common to all the generalized objects.

Subclass: A software term used to describe specialized objects that have additional characteristics and/or calculations different from their “parent” objects. [top]

Attributes: A software term describing the parameter values used in a class.

Operations: A software terms describing the calculations used in a class.

Message: A software term that specifies the communication among classes.

Stereotype: A UML term that means an addition to the UML language grammar, based on elements of the existing UML grammar. Stereotypes are used to help designers describe and specify software in ways not accommodated by the existing UML grammar.

Package: A UML term for a grouping of software classes. Classes may be grouped into packages when they should be managed in the same way, or installed on the same hardware platform, or released as a particular version.

Component: In software, a physically replaceable part of a software system that can be distinguished by a set of specific interfaces.

Expose: In object oriented software development, to make the characteristics of a piece of software available for use by other pieces of software. For instance, attributes of software classes can be designated to be private to (only accessed and used by) one class, or public (accessible) by other software classes. Public attributes are said to be exposed, or made available, for general use. [top]