What Is the Unified Modeling Language?


The Unified Modeling Language (UML) is a graphical object-oriented modeling language that provides a visual syntax for capturing the important elements from a business problem domain and documenting it as a series of visually self-describing models, known as artifacts . A collection of artifacts pertaining to a specific business problem is known as the model domain .

UML does not describe or dictate how software should be developed. Instead, it promotes a process of abstraction where the essential elements and their respective attributes within the context of a business problem are separated from the whole business problem. This provides an extremely visually oriented and focused platform for deriving a software solution.

UML supports many types of artifacts, because there are many perspectives from which to observe a software system depending upon who you are in relation to the project. For example, a software developer will be interested in converting the design of the software into programming code, while a business analyst will be interested in the behavior of the software solution in relation to the initial problem domain. The UML artifacts are categorized by eight primary diagrams, as described in Table 3.1. Textual artifacts do exist in the context of these eight diagrams and will be discussed later in this chapter with their respective diagrams when applicable .

Table 3.1. A Description of the Eight Primary UML Diagrams

UML Diagram

Purpose

Use Case

Analysis Phase: Models the context and boundaries of a system or subsystem.

Class

Analysis Phase: In conjunction with Use Cases, can provide a Conceptual model of a system.

Design Phase: Models static structural aspects.

Sequence

Design Phase: Models a series of messages exchanged by a selected set of objects with an emphasis on the chronological course of events.

Collaboration

Design Phase: Models a set of interactions between selected objects in a specific situation, focusing on the relations between the objects and their topography .

Statechart

Design Phase: Models a sequence of states the objects of a class can assume during its lifetime, together with the events that cause changes of state.

Activity

Analysis and Design Phase: Models the procedural possibilities of a system with the aid of activities.

Component

Design Phase: Models the interrelations between software components .

Deployment

Design Phase: Models the application infrastructure.

Each UML diagram in Table 3.1 models a specific aspect of a software system, and hence contributes to the overall abstraction process of a problem domain. For example:

  • The static aspects of a system can be modeled using Use Case and Class diagrams.

  • The behavior of a system can be modeled using Interaction (Sequence and Collaboration), Activity, and Statechart diagrams.

  • The implementation details of a system can be modeled using Component and Deployment diagrams.

The artifacts also exist as living documents that provide an ideal reference for software maintenance by providing all the traceable details of what the software was intended to do and how it intended to do it.

Note

The types of artifacts you decide to use are completely dependent on the complexity and type of your problem domain.




BEA WebLogic Platform 7
BEA WebLogic Platform 7
ISBN: 0789727129
EAN: 2147483647
Year: 2003
Pages: 360

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net