Developing Component and Deployment Diagrams (Design)


UML provides two types of diagrams that provide insight into how the final software solution will be implemented. These diagrams are the Component and Deployment diagrams.

Component Diagrams

The Component diagrams are extremely useful for architects and developers as they provide a static implementation model of the software components and their respective dependencies that will eventually constitute the solution system, which from a development perspective is the light at the end of the tunnel.

The components modeled in the Component diagram are primarily derived from the UML Class diagrams and can be represented as source code, binary code components, and executable components. Components are connected by dependencies, which implies that one component uses the services of the other.

The elements of a Component diagram are illustrated in Figure 3.33:

  • A component represents a software module.

  • A subsystem is used to package components that are related to a specific business task.

  • An interface describes a group of operations used or created by components.

  • Dependencies represent communication (services rendered) between components.

Figure 3.33. The elements of a Component diagram.

graphics/03fig33.gif

Deployment Diagrams

One of the key tasks that a software architect has to perform is to decide the application and hardware infrastructure that is required to support the final solution. Deployment diagrams are the appropriate UML diagrams to capture infrastructure decisions because they graphically represent processing resources (nodes), and the runtime instances of software components that can reside on them. If your application is distributed, a Deployment diagram is essential. By visually mapping software components to their respective executable environments (Nodes), you can examine such deployment issues as fault-tolerance and single-points of failure, and identify possible performance problems.

Note

The Deployment diagram is related to the Component diagram because the components typically exist in the context of a node.


The elements of a Deployment diagram are illustrated in Figure 3.34:

  • Nodes represent a physical processing resource, for example a J2EE server that participates in the deployment effort of a system.

  • Associations represent the connection protocol between nodes, for example TCP/IP and HTTP.

  • Components represent the runtime software modules of the software solution, for example Servlets, JavaServer Pages, and Enterprise JavaBeans.

Figure 3.34. The elements of a Deployment diagram.

graphics/03fig34.gif

An example of a simple J2EE application Deployment diagram is illustrated in Figure 3.35.

Figure 3.35. An example of a J2EE application deployment diagram.

graphics/03fig35.gif



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