About this book
Distributed applications are difficult to write as programmers need to adhere to specific distributed systems programming conventions and frameworks, which makes distributed systems development complex and error prone and ties the resultant application to the distributed system because the application's code is tangled with the crosscutting concern distribution. This book introduces the concept of a domain-specific aspect language called a Distribution Definition Language that generalises the distribution and distribution recovery concerns by describing the classes and methods of an existing application to be made remote, the distributed system to use to make them remote and the recovery mechanism to use in the event of an error. A software tool in the form of the RemoteJ compiler/generator that uses information contained in the Distribution Definition Language to generate the recovery and distributed system specific code and apply it to the application using bytecode manipulation and generation techniques is introduced. By allowing distribution and autonomic features, such as recovery, to be modularised and applied to existing applications this approach greatly simplifies distributed systems and autonomics development. This book is of particular interest to researchers and students of distributed systems, autonomics, domain-specific aspect languages and aspect-orientation.
boundary element method code compiler distributed systems distribution eXist evaluation form framework implementation programming software system techniques tool