arrow
Return

Aspect-oriented development of cluster computing software

delete2011-06-04
delete3
PRE
AI
H
Hyuck Han
H
Hyungsoo Jung *
H
Heon Y. Yeom
DOI:10.1007/s10586-011-0166-7delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
In complex software systems, modularity and readability tend to be degraded owing to inseparable interactions between concerns that are distinct features in a program. Such interactions result in tangled code that is hard to develop and maintain. Aspect-Oriented Programming (AOP) is a powerful method for modularizing source code and for decoupling cross-cutting concerns. A decade of growing research on AOP has brought the paradigm into many exciting areas. However, pioneering work on AOP has not flourished enough to enrich the design of distributed systems using the refined AOP paradigm. This article investigates three case studies that cover time-honored issues such as fault-tolerant computing, network heterogeneity, and object replication in the cluster computing community using the AOP paradigm. The aspects that we define here are simple, intuitive, and reusable. Our intensive experiences show that (i) AOP can improve the modularity of cluster computing software by separating the source code into base and instrumented parts, and (ii) AOP helps developers to deploy additional features to legacy cluster computing software without harming code modularity and system performance.
Keywords:
Aspect-Oriented Programming
Fault tolerance
Heterogeneity
Object replication
Message-passing interface
Key-value storage

Journal

C
Cluster Computing-The Journal of Networks Software Tools and Applications
IF:
4.1
Papers:
5.0K
Citations:
7.5K

Organization

U
University of Sydney
Scholars:
6.5W
Papers: 6.2W
Citations: 90
S
seoul national university (snu)
Scholars:
7.2W
Papers: 6.6W
Citations: 86