EVOLUTION STYLES IN PRACTICE - Refactoring Revisited as Evolution Style
Olivier Le Goaer, Mourad Oussalah, Dalila Tamzalit, Djamel Serai
2007
Abstract
The evolution of pure software systems remains a time-consuming and error-prone activity. But whatever the considered domain, recurring practices can be captured and reused to alleviate the subsequent amounts of effort. In this paper we propose to treat domain-specific problems-solutions pairs as first-class entities called “evolution styles”. As such, an evolution style is endowed with an instantiation mechanism and can be considered at different conceptual levels. Applied on arbitrary domains, an evolution style is intended to evolve a family of applications whereas its instances evolve given applications. The evolution style’s format is a component triple where each component is highly reusable. In this way, evolution styles are scalable knowledge fragments able to support large and complex evolutions, readily available to be played and replayed.
References
- Bergel, A. (2005). Classboxes - Controlling Visibility of Class Extensions. PhD thesis, University of Berne.
- Binkley, D., Ceccato, M., Harman, M., and Tonella, P. (2005). Automated pointcut extraction. In Proceedings of the workshop on Linking Aspect Technology and Evolution workshop.
- Castellani, X., Jiang, H., and Billionnet, A. (2001). Method for the analysis and design of class characteristic migrations during object system evolution. Inf. Syst., 26(4):237-257.
- Cockburn, A. (2002). Agile software development. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
- Demeyer, S., Tichelaar, S., and Steyaert, P. (1999). FAMIX 2.0 - the FAMOOS information exchange model. Technical report.
- Ducasse, S., Nierstrasz, O., Schärli, N., Wuyts, R., and Black, A. P. (2006). Traits: A mechanism for fine-grained reuse. ACM Trans. Program. Lang. Syst., 28(2):331-388.
- Erich GAMMA, Richard HELM, R. J. and VLISSIDES, J. (1995). Design Patterns : Elements of Reusable Object-Oriented Softwares . Addison Wesley.
- Fowler, M. (1999). Refactoring: improving the design of existing code. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
- Greenfield, A. (2006). Everyware : The Dawning Age of Ubiquitous Computing. New Riders Press.
- Nierstrasz, O., Denker, M., Gˆirba, T., and Lienhard, A. (2006). Analyzing, capturing and taming software change. In Proceedings of the Workshop on Revival of Dynamic Languages (co-located with ECOOP'06) .
- Oussalah, M. (2002). Component-oriented kbs. In SEKE 7802: Proceedings of the 14th international conference on Software engineering and knowledge engineering, pages 73-76, New York, NY, USA. ACM Press.
Paper Citation
in Harvard Style
Le Goaer O., Oussalah M., Tamzalit D. and Serai D. (2007). EVOLUTION STYLES IN PRACTICE - Refactoring Revisited as Evolution Style . In Proceedings of the Second International Conference on Software and Data Technologies - Volume 2: ICSOFT, ISBN 978-989-8111-06-7, pages 138-143. DOI: 10.5220/0001341401380143
in Bibtex Style
@conference{icsoft07,
author={Olivier Le Goaer and Mourad Oussalah and Dalila Tamzalit and Djamel Serai},
title={EVOLUTION STYLES IN PRACTICE - Refactoring Revisited as Evolution Style},
booktitle={Proceedings of the Second International Conference on Software and Data Technologies - Volume 2: ICSOFT,},
year={2007},
pages={138-143},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001341401380143},
isbn={978-989-8111-06-7},
}
in EndNote Style
TY - CONF
JO - Proceedings of the Second International Conference on Software and Data Technologies - Volume 2: ICSOFT,
TI - EVOLUTION STYLES IN PRACTICE - Refactoring Revisited as Evolution Style
SN - 978-989-8111-06-7
AU - Le Goaer O.
AU - Oussalah M.
AU - Tamzalit D.
AU - Serai D.
PY - 2007
SP - 138
EP - 143
DO - 10.5220/0001341401380143