|
ABSTRACT
Object-oriented frameworks play an important role in different kinds of software, such as product-lines, middleware, GUI components, IDEs, etc. Over the past recent years, fundamentals of framework design stabilized around the adoption of design patterns. However, major difficulties concerning framework learning and usage are still evident, and constitute a burden for those who have to deal with it. This paper proposes an approach that aims to facilitate framework usage, based on the concept of specialization aspect. We show how framework hot-spots can be modularized in terms of specialization aspects, and how these can give support for specializing a framework in a step-wise way. The approach is conservative, in the sense that specialization aspects can be developed for an existing framework "as is". In order to support these claims, a case study has been carried out by applying the technique on the JHotDraw graphical framework.
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
|
M. Anastasopoulos and D. Muthig. An evaluation of aspect-oriented programming as a product line implementation technology. In ICSR, 2004.
|
 |
2
|
|
 |
3
|
Pavel Avgustinov , Aske Simon Christensen , Laurie Hendren , Sascha Kuzins , Jennifer Lhoták , Ondřej Lhoták , Oege de Moor , Damien Sereni , Ganesh Sittampalam , Julian Tibble, abc: an extensible AspectJ compiler, Proceedings of the 4th international conference on Aspect-oriented software development, p.87-98, March 14-18, 2005, Chicago, Illinois
[doi> 10.1145/1052898.1052906]
|
| |
4
|
|
 |
5
|
|
| |
6
|
|
| |
7
|
J. Bosch, P. Molin, M. Mattsson, P. Bengtsson, and M. E. Fayad. Framework problems and experiences. In Building application frameworks: object-oriented foundations of framework design, chapter 3, pages 55--82. John Wiley and Sons, 1999.
|
| |
8
|
S. Clarke and R. J. Walker. Generic aspect-oriented design with Theme/UML. In Aspect-Oriented Software Development, chapter 19, pages 425--458. Addison-Wesley, 2004.
|
 |
9
|
|
 |
10
|
|
| |
11
|
|
 |
12
|
|
| |
13
|
R. E. Filman and D. P. Friedman. Aspect-oriented programming is quantification and obliviousness. In Aspect-Oriented Software Development, chapter 2, pages 21--35. Addison-Wesley, 2004.
|
| |
14
|
|
| |
15
|
|
| |
16
|
Markku Hakala , Juha Hautamäki , Kai Koskimies , Jukka Paakki , Antti Viljamaa , Jukka Viljamaa, Architecture-oriented programming using FRED, Proceedings of the 23rd International Conference on Software Engineering, p.823-824, May 12-19, 2001, Toronto, Ontario, Canada
|
| |
17
|
S. Hanenberg, A. Schmidmeier, and R. Unland. Aspectj idioms for aspect-oriented software construction. In 8th European Conference on Pattern Languages of Programs (EuroPLoP), 2003.
|
 |
18
|
Jan Hannemann , Gregor Kiczales, Design pattern implementation in Java and aspectJ, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
| |
19
|
J. Hautamäki and K. Koskimies. Finding and documenting the specialization interface of an application framework. Software: Practice and Experience, (Electronic version):DOI 10.1002/spe.728, 2005.
|
 |
20
|
|
| |
21
|
IBM. HyperJ. http://www.research.ibm.com/hyperspace/, 2005.
|
| |
22
|
R. E. Johnson and B. Foote. Designing reusable classes. Journal of Object-Oriented Programming, 1:22--35, 1988.
|
| |
23
|
Gregor Kiczales , Erik Hilsdale , Jim Hugunin , Mik Kersten , Jeffrey Palm , William G. Griswold, An Overview of AspectJ, Proceedings of the 15th European Conference on Object-Oriented Programming, p.327-353, June 18-22, 2001
|
| |
24
|
G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-Oriented Programming. In Proceedings European Conference on Object-Oriented Programming, 1997.
|
| |
25
|
|
| |
26
|
S. E. R. Lab. AJHotDraw. http://ajhotdraw.sourceforge.net/, 2006.
|
| |
27
|
R. E. Lopez-Herrejon, D. S. Batory, and W. R. Cook. Evaluating support for features in advanced modularization technologies. In ECOOP, 2005.
|
| |
28
|
MetaCase. MetaEdit+ tool. http://www.metacase.com.
|
 |
29
|
|
 |
30
|
|
| |
31
|
M. P. Monteiro and J. M. Fernandes. Towards a catalogue of refactorings and code smells for AspectJ. In T. Aspect-Oriented Software Development 1, 2006.
|
| |
32
|
M. Mortensen and S. Ghosh. Using aspects with object-oriented frameworks. In AOSD '06: 5th International Conference on Aspect-Oriented Software Development (Industry Track), 2006.
|
| |
33
|
|
 |
34
|
|
| |
35
|
|
| |
36
|
W. Pree. Hot-spot-driven development. In Building application frameworks: object-oriented foundations of framework design, chapter 16, pages 379--394. John Wiley and Sons, 1999.
|
| |
37
|
A. L. Santos, A. Lopes, and K. Koskimies. Modularizing framework hot-spots using aspects. In Proceedings of the 11th Spanish Conference on Software Engineering and Databases, 2006.
|
| |
38
|
SourceForge. JHotDraw framework. http://www.jhotdraw.org, 2006.
|
| |
39
|
|
 |
40
|
|
|