Information Technology Reference
In-Depth Information
Table 4.1.
The eight fallacies of distributed computing.
1.
The network is reliable
2.
Latency is zero
3.
Bandwidth is infinite
4.
The network is secure
5.
Topology doesn't change
6.
There is one administrator
7.
Transport cost is zero
8.
The network is homogeneous
This notion is further supported by the infamous 'Eight Fallacies of Dis-
tributed Computing' detailed in Table 4.1, which define a set of common but
flawed assumptions made by programmers when first developing distributed ap-
plications [24].
Consequently the framework provided by RMI requires that the developer
be aware of remote objects and remote errors that may occur while interacting
with remote objects. This awareness manifests itself in the need for developers to
adhere to the RMI specific framework and conventions and to ensure that remote
methods throw the RMI specific exception java.rmi.RemoteException .
We believe that the developers of RMI are essentially correct in that the pro-
grammer needs to be aware of the distributed nature of their application. However,
we believe that the implementation of this requirement in current Java distributed
systems is fundamentally wrong as it leads to code that is polluted with the cross-
cutting concern distribution because the distribution concern crosscuts the appli-
cation making reuse of application components dicult, if not impossible.
This close coupling between frameworks and application code is not unique to
RMI or distribution frameworks, it is inherent in all object-oriented applications
that use frameworks. Frameworks may therefore be considered crosscutting in
nature because a framework's code is scattered throughout an application's code,
either by inheritance or containment, thereby making reuse outside the frame-
work's domain dicult.
4.2.2
Autonomic Computing
As described in Section 4.2.1 above, there are a number of issues with distributed
systems development, which are an impediment to the realisation of the vision
of autonomic computing. One of our motivations, therefore, is to explore an
alternative approach to the development of distributed applications to overcome
these impediments.
 
Search WWH ::




Custom Search