ACM Home Page
Please provide us with feedback. Feedback
Transparent shaping of existing software to support pervasive and autonomic computing
Full text PdfPdf (410 KB)
Source ACM SIGSOFT Software Engineering Notes archive
Volume 30 ,  Issue 4  (July 2005) table of contents
SESSION: Workshop on the Design and Evolution of Autonomic Application Software (DEAS 2005) table of contents
Pages: 1 - 7  
Year of Publication: 2005
ISSN:0163-5948
Also published in ...
Authors
S. Masoud Sadjadi  Florida International University, Miami, Florida
Philip K. McKinley  Michigan State University, East Lansing, Michigan
Betty H. C. Cheng  Michigan State University, East Lansing, Michigan
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 46,   Citation Count: 3
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1082983.1083086
What is a DOI?

ABSTRACT

The need for adaptability in software is growing, driven in part by the emergence of pervasive and autonomic computing. In many cases, it is desirable to enhance existing programs with adaptive behavior, enabling them to execute effectively in dynamic environments. In this paper, we propose a general programming model called transparent shaping to enable dynamic adaptation in existing programs. We describe an approach to implementing transparent shaping that combines four key software development techniques: aspect-oriented programming to realize separation of concerns at development time, behavioral reflection to support software reconfiguration at run time, component-based design to facilitate independent development and deployment of adaptive code, and adaptive middleware to encapsulate the adaptive functionality. After presenting the general model, we discuss two specific realizations of transparent shaping that we have developed and used to create adaptable applications from existing programs.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
 
4
David L. Parnas. On the design and development of program families. IEEE Transactions on Software Engineering, March 1976.
 
5
 
6
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Videira Lopes, J. M. Loingtier, and J. Irwin. Aspect-oriented programming. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP). Springer-Verlag LNCS 1241, June 1997.
 
7
Communications of the ACM, Special Issue on Aspect-Oriented Programming, volume 44, October 2001.
8
 
9
 
10
Pierre Charles David, Thomas Ledoux, and Noury M. N. Bouraqadi-Saadani. Two-step weaving with reflection using AspectJ. In OOPSLA 2001 Workshop on Advanced Separation of Concerns in Object-Oriented Systems, Tampa, October 2001.
 
11
 
12
David E. Bakken. Middleware. Kluwer Academic Press, 2001.
 
13
Proceedings of the Middleware'2000 Workshop on Reflective Middleware (RM2000), New York, April 2000.
14
 
15
Object Management Group, Framingham, Massachusett. The Common Object Request Broker: Architecture and Specification Version 3.0, July 2003.
 
16
Geoff A. Cohen, Jeffrey S. Chase, and David Kaminsky. Automatic program transformation with JOIE. In 1998 Usenix Technical Conference, June 1998.
 
17
S. Adve, A. Harris, C. Hughes, D. Jones, R. Kravets, K. Nahrstedt, D. Sachs, R. Sasanka, J. Srinivasan, and W. Yuan. The Illinois GRACE project: Global resource adaptation through cooperation, 2002.
 
18
Distributed extensible open systems (the DEOS project), 2004. Georgia Institute of Technology - College of Computing.
19
 
20
 
21
 
22
John A. Zinky, David E. Bakken, and Richard E. Schantz. Architectural support for quality of service for CORBA objects. Theory and Practice of Object Systems, 3(1), 1997.
 
23
S. Masoud Sadjadi, Philip K. McKinley, Betty H. C. Cheng, and R. E. Kurt Stirewalt. TRAP/J: Transparent generation of adaptable java programs. In Proceedings of the International Symposium on Distributed Objects and Applications (DOA'04), Agia Napa, Cyprus, October 2004.
 
24
25
 
26
Shigeru Chiba and Takashi Masuda. Designing an extensible distributed language with a meta-level architecture. Lecture Notes in Computer Science, 707, 1993.
27
28
 
29
 
30
Erez Hadad. Architectures for Fault-Tolerant Object-Oriented Middleware Services. PhD thesis, Computer Science Department, The Technion - Israel Institute of Technology, 2001.
 
31
Ossama Othman. The design, optimization, and performance of an adaptive middleware load balancing service. Master's thesis, University of California, Irvine, 2002.
 
32
 
33
A. Popovici, T. Gross, and G. Alonso. Dynamic homogenous AOP with PROSE. Technical report, Department of Computer Science, Federal Institute of Technology, Zurich, 2001.
 
34
Alexandre Oliva and Luiz Eduardo Buzato. The implementation of Guaraná on Java. Technical Report IC-98-32, Universidade Estadual de Campinas, September 1998.
 
35
L. Moser, P. Melliar-Smith, P. Narasimhan, L. Tewksbury, and V. Kalogeraki. The Eternal system: An architecture for enterprise applications. In Proceedings of the Third International Enterprise Distributed Object Computing Conference (EDOC'99), July 1999.
36
 
37
 
38
Ji Zhang, Zhenxiao Yang, Betty H. C. Cheng, and Philip K. McKinley. Adding safeness to dynamic adaptation techniques. In Proceedings of the ICSE 2004 Workshop on Architecting Dependable Systems, Edinburgh, Scotland, May 2004.


Collaborative Colleagues:
S. Masoud Sadjadi: colleagues
Philip K. McKinley: colleagues
Betty H. C. Cheng: colleagues