Information Technology Reference
In-Depth Information
placed on a particular node, and which initiates communication across the
network. All other engineering objects are secondary elements defined in a
node or channel architecture, whose goal is to provide the functions necessary
to support distribution. This includes a variety of supporting objects, like
repositories or directories, which are drawn from a set of common functions
called the ODP functions.
In the PhoneMob computational specification, we established a multi-tier
design (see figure 4.5) in which human objects were supported by presentation
objects, which in turn used application objects that accessed data manage-
ment objects. In the engineering viewpoint, we place these objects on specific
nodes (see gure 5.1). 1 Thus, the User and RepairCentreStaff objects will each
be supported by their own presentation objects, and these will be on different
nodes. This is done by placing the BEOs corresponding to the computational
presentation objects on nodes that are local to the people concerned. Al-
though this sounds complicated, in practice, it will generally happen quite
naturally because these objects are created by an initial login agent object on
the appropriate node that acts as a local factory.
The BEOs representing the application and data management objects are
then placed on suitable backend service nodes; these may be replicated to
achieve enhanced performance or reliability. They are generally placed ex-
plicitly for reasons of performance and load balancing. This distribution of
engineering objects and the way they are connected through different channels
has a strong influence on many other key concerns about any system and, in
particular, on most of the so-called non-functional aspects (such as reliability,
high availability or security).
For instance, the diagram in figure 5.1 shows a design with a dedicated
node for interfacing to each business activity at the branch repair centre.
The rest of the business objects are run on a separate node. Similarly, there
are dedicated channels via which the repair centre interface objects access
the main server and others to support backend distribution. This allows the
imposition of different requirements for each one. There is a channel (the
PhoneMobDedicatedChannel) with strict security requirements and high per-
formance to connect the repair centre interface objects with the PhoneMob
main node, in order to guarantee fast and secure communications between
them, instead of using the same kind of channel as the other presentation
objects.
The performance requirements are specified in an environment con-
tract . Environment contracts are expressed in UML4ODP using OCL or
timing constraints attached to the appropriate nodes or channels. Alterna-
tively, use can be made of a dedicated UML profile such as MARTE [35] to
specify these non-functional requirements.
The actual nature of the nodes is not determined here, but will be identified
in a technology viewpoint configuration, identifying the customer or courier
1 In UML4ODP, NV is used as an abbreviation for engineering viewpoint.
 
Search WWH ::




Custom Search