Information Technology Reference
In-Depth Information
6
Evaluation
6.1 Introduction
RemoteJ has been designed as an alternative method of developing distributed
applications to both the Java RMI convention, which requires developers to be
aware of the distributed nature of their applications, and the RPC convention,
which attempts to make remote procedure calls transparent to the developer.
Both of the above approaches result in applications tangled with the cross-
cutting concern distribution. Previous work, described in Section 3.8,hasshown
that an aspect-oriented approach can significantly reduce the tangling between
application functionality and the distribution concern, thereby making programs
easier to write and understand. However, this previous work has assumed a single
protocol and has not considered the recovery concern thereby attempting, once
again, to mask the difference between local and remote method calls.
We agree with Waldo et al. [118] that any attempt to paper over the dif-
ferences between local and remote systems is fundamentally wrong, because dis-
tributed systems require that the programmer be aware of issues such as latency
and partial failures to be able to support basic requirements of robustness and
reliability.
This project has extended previous work by considering multiple protocols
and the recovery concern and has introduced the concept of a Distribution Def-
inition Language used to define classes and associated methods to be made dis-
tributed, the distributed system to use to make them distributed, and the recovery
mechanism to use in the event of an error. In this topic we have made the following
claims about our approach:
• A significantly simplified approach to the development of distributed sys-
tems as it allows the same application to be used distributed or not, thereby
improving software reusability and simplifying testability of distributed ap-
plications.
• The ability to apply distribution and recovery awareness to existing applica-
tions in such a way that the application is oblivious of the distribution and
recovery mechanism.
• The Distribution Definition Language can easily be extended to support ad-
ditional protocols by the implementation of protocol plugins without changes
needing to be made to the RemoteJ parser.
Search WWH ::




Custom Search