Previous Table of Contents Next


5.7.1 SoftwareDeployment Classes


   5.7.1.1 Component

   A Component represents a physical piece of implementation of a system, including software code (source, binary or executable) or equivalents such as scripts or command files. A Component is a subtype of Classifier, and so may have its own Features, such as Attributes and Operations.

   Deployment of a Component on a specific Machine is represented as a DeployedComponent.

   Superclasses

   Classifier

   References

   designPackage

Identifies the Package instance containing the Component's design.

class:

defined by:

multiplicity:

Package
ComponentDesign::designPackage
zero or more

   5.7.1.2 DataManager

   A DataManager represents a DeployedComponent that manages access to data. For example, a deployed DBMS or File Management System would be represented as a DataManager.

   The DataManager may be associated with one or more data Packages identifying the Schema, Relational Catalog, Files, or other data container that it provides access to.

   Superclasses

   DeployedComponent

   Attributes

   isCaseSensitive

Indicates whether or not the DataManager treats lower case letters within object names as being different from the corresponding upper case letters.

type:

multiplicity:

Boolean
exactly one

   References

   dataPackage

Identifies the Package(s) containing the definition of the data made available by the DataManager.

class:

defined by:

multiplicity:

Package
DataManagerDataPackage::dataPackage
zero or more

   5.7.1.3 DataProvider

   A DataProvider is a deployed software Component that acts as a client to provide access to data that is managed by another product. For instance, a DataProvider might represent a deployed ODBC or JDBC product.

   The DataProvider may have resourceConnection references to ProviderConnections identifying the DataManagers to which it provides access.

   Superclasses

   DataManager

   Contained Elements

   ProviderConnection

   References

   resourceConnection

Identifies the ProviderConnections that the DataProvider may use to access data resources.

class:

defined by:

multiplicity:

inverse:

ProviderConnection
DataProviderConnections::resourceConnection
zero or more
ProviderConnection::dataProvider

   5.7.1.4 DeployedComponent

   A DeployedComponent represents the deployment of a Component on a specific Machine.

   It may represent the deployment of any type of Component. However, if the Component is part of a SoftwareSystem, the DeployedComponent should be part of a DeployedSoftwareSystem.

   Usage dependencies may be used to document that one DeployedComponent uses another DeployedComponent.

   Superclasses

   Package

   Attributes

   pathname

A pathname for the DeployedComponent within the Machine’s file system.

type:

multiplicity:

String
exactly one

   References

   component

Identifies the Component deployed.

class:

defined by:

multiplicity:

Component
ComponentDeployments::component
exactly one

   machine

Identifies the Machine on which the DeployedComponent is deployed.

class:

defined by:

multiplicity:

inverse:

Machine
ComponentsOnMachine::machine
exactly one
Machine::deployedComponent

   usedComponents

Identifies the DeployedComponent instances that use this DeployedComponent.

class:

defined by:

multiplicity:

inverse:

DeployedComponent
DeployedComponentUsage::usedComponents
zero or more
DeployedComponent::usingComponents

   usingComponents

Identifies the DeployedComponent instances that this DeployedComponent instance uses.

class:

defined by:

multiplicity:

inverse:

DeployedComponent
DeployedComponentUsage::usingComponents
zero or more
DeployedComponent::usedComponents

   5.7.1.5 DeployedSoftwareSystem

   A DeployedSoftwareSystem represents a deployment of a SoftwareSystem.

   Its associated DeployedComponents identify the individual Component deployments that constitute the DeployedSoftwareSystem. These DeployedComponents are not necessarily all deployed on the same Machine.

   Superclasses

   Package

   Attributes

   fixLevel

Describes the fix level of the DeployedSoftwareSystem instance.

type:

multiplicity:

String
exactly one

   References

   softwareSystem

Identifies the SoftwareSystem deployed.

class:

defined by:

multiplicity:

SoftwareSystem
SoftwareSystemDeployments::softwareSystem
exactly one

   5.7.1.6 Machine

   A Machine represents a computer. The Site at which the Machine is located and the Components deployed on the Machine may be recorded.

   Superclasses

   Namespace

   Contained Elements

   DeployedComponent

   Attributes

   ipAddress

A fixed IP address for the Machine.

type:

multiplicity:

String
zero or more; ordered

   hostName

A Host Name for the Machine. This may be used to identify the Machine on the network when IP addresses are dynamically allocated.

type:

multiplicity:

String
zero or more; ordered

   machineID

An identification code for the Machine.

type:

multiplicity:

String
zero or one

   References

   site

Identifies the Site at which the Machine is located.

class:

defined by:

multiplicity:

Site
SiteMachines::site
zero or one

   deployedComponent

Identifies the DeployedComponents on the Machine.

class:

defined by:

multiplicity:

inverse:

DeployedComponent
ComponentsOnMachine::deployedComponent
zero or more
DeployedComponent::machine

   5.7.1.7 PackageUsage

   A PackageUsage represents a usage of a Package. It is particularly relevant in situations where a specific usage uses an alternative name for the Package, as this alternative name can be recorded using the packageAlias attribute.

   For example, if a DataProvider representing an ODBC or JDBC client uses a name for a relational database that is different from the dataPackage name used by the RDBMS server, a PackageUsage that has the relevant ProviderConnection as client and the server’s data Package as supplier can be added. Its packageAlias attribute can be used to record the name by which the data Package is known to the DataProvider.

   Superclasses

   Dependency

   Attributes

   packageAlias

If this attribute is present, it identifies the name by which the Package is known to the client.

type:

multiplicity:

Name
zero or one

   Constraints

   A PackageUsage must have a single Package (or subtype of Package) as its supplier. [C-8-1]

   5.7.1.8 ProviderConnection

   A ProviderConnection represents a connection that allows a DataProvider acting as a client to access data from a specific DataManager. For example a ProviderConnection could represent a connection from an ODBC or JDBC client to a DBMS.

   Superclasses

   ModelElement

   Attributes

   isReadOnly

Indicates whether the ProviderConnection only allows read access to the DataManager.

type:

multiplicity:

Boolean
exactly one

   References

   dataProvider

Identifies the DataProvider that is the client of the ProviderConnection.

class:

defined by:

multiplicity:

inverse:

DataProvider
DataProviderConnections::dataProvider
exactly one
DataProvider::resourceConnection

   dataManager

Identifies the DataManager that is accessed by the ProviderConnection.

class:

defined by:

multiplicity:

DataManager
DataManagerConnections::dataManager
exactly one

   Constraints

   A ProviderConnection must not associate a DataProvider with itself. [C-8-2]

   5.7.1.9 Site

   A Site represents a geographical location. It provides a grouping mechanism for a group of machines at the same location.

   Sites may be documented at different levels of granularity; containment links may be used to record hierarchical relationships between Sites.

   Superclasses

   Location

   References

   containingSite

Identifies a Site of which the current Site forms a part.

class:

defined by:

multiplicity:

Site
RelatedSites::containingSite
zero or more

   Constraints

   A Site must not have a containingSite reference that refers to itself. [C-8-3]

   5.7.1.10 SoftwareSystem

   A SoftwareSystem represents a specific release of a software product. It consists of a set of software Components.

   Superclasses

   Subsystem

   Contained Elements

   Component

   Attributes

   type subtype

Identifies the type of the software product. One of the following predefined values should be used if appropriate: OS, DBMS, MDDB, FileSystem, ODBC, JDBC, or Application.

type:

multiplicity:

String
zero or one

This is used in conjunction with the type attribute to provide additional information about the type of the software product. For some of the predefined types, suggested subtype values are listed below: • For an Operating System product (type OS): AIX, Linux, MVS, NT, Solaris, SunOS, VMS or Windows. • For a Database Management System product (type DBMS): DB2, DMS II, IMS, Informix, Oracle, SQLServer or Sybase. • For a Multidimensional Database product (type MDDB): Essbase or Express.

type:

multiplicity:

String
zero or one

   supplier

The supplier of the software product.

type:

multiplicity:

String
zero or one

   version

The version identification for the software product.

type:

multiplicity:

String
zero or one

   References

   typespace

Identifies the TypeSystem(s) containing the datatypes supported by the SoftwareSystem.

class:

defined by:

multiplicity:

TypeSystem
SystemTypespace::typespace
zero or more