An Aspect Oriented Framework for Flexible Design Pattern-based Development

Mario L. Bernardi, Marta Cimitile, Giuseppe A. Di Lucca

2013

Abstract

The implementation of a Design Pattern (DP) may be affected by some problems due to typical deficiencies of Object Oriented languages that may worsen the modularity of a software system, and thus its comprehensibility, maintainability, and testability. Aspect Oriented Programming allows to implement DPs by its powerful quantification constructs that can handle better modularity and composition, helping to overcome some of the OO design trade-offs in current DP implementations. In Model Driven Development system models, defined by a Design Specification Language (DSL), are transformed between different levels of abstraction to get system implementation. In this paper we propose an Aspect Oriented DSL-based framework to specify and to apply, declaratively, Design Patterns to the system classes. The main aim driving the definition of the proposed framework is to improve the modularity, the internal code quality, and the flexibility, by allowing software designers to specify DP models with an extensive modifiability thus reducing the impact of changes related to DP adoption.

References

  1. Gamma, E., Helm, R., Johnson, R., Vlissides, J., 'Design Patterns: Elements of Reusable Object-Oriented Software', Addison-Wesley (1995).
  2. Hannemann, J., Kiczales, G., 'Design Patterns Implementation in Java and AspectJ', Proc. of Object Oriented Programming Systems Languages and Applications 2002 (OOPSLA 7802).
  3. Hachani, O. , Bardou D., 'On Aspect-Oriented Technology and Object-Oriented Design Patterns' , Proc. of European Conference on Object Oriented Programming 2003 (ECOOP 2003).
  4. Nordberg Martin E., 'Aspect Oriented Indirection - Beyond Object Oriented Design Patterns' , Proc. of Workshop. Beyond Design: Patterns (mis)used, Proc. of Object Oriented Programming Systems Languages and Applications 2002 (OOPSLA 7802).
  5. AspectJ web site - http://www.eclipse.org/aspectj Hannemann, J., Kiczales, G.,'Overcoming the Prevalent Decomposition of Legacy Code', Workshop on Advanced Separation of Concerns at the International Conference on Software Engineering 2001 (ICSE'01).
  6. Eaddy, M., Aho,A , Gail C. Murphy., 'Identifying, Assigning, and Quantifying Crosscutting Concerns', Proc. of the First International Workshop on Assessment of Contemporary Modularization Techniques (ACoM 7807), IEEE Computer Society, Washington, 2007.
  7. Arpaia, P., Bernardi, M.L., Di Lucca, G., Inglese, V., Spiezia, G.,'An Aspect-Oriented Programming-based approach to software development for fault detection in measurement systems', Comput. Stand. Interfaces 32, 2010.
  8. El Boussaidi, G., Mili, H. , 'A model-driven framework for representing and applying design patterns', Proc. of the 31st Annual International Computer Software and Applications Conference (COMPSAC 7807), Vol. 1. IEEE Computer Society, Washington, DC, USA, 2007.
  9. Alencar, P.S.C., Cowan, D.D., Dong, J., Lucena, C.J.P., 'A transformational Process-Based Formal Approach to Object-Oriented Design', Formal Methods Europe, 1997
  10. Elaasar, M., Briand, L.C., Labiche, Y., 'A metamodeling approach to pattern specification', In Proc. of the 9th international conference on Model Driven Engineering Languages and Systems (MoDELS'06), SpringerVerlag, Berlin, Heidelberg, 484-498, 2006.
  11. Baca, P. Vranic, V., 'Replacing Object-Oriented Design Patterns with Intrinsic Aspect-Oriented Design Patterns', Proc. of the 2nd Eastern European Regional Conference on theEngineering of Computer Based Systems (ECBS-EERC), pp.19,26, 5-6 Sept. 2011.
  12. Zdun, U., 'Pattern language for the design of aspect languages and aspect composition frameworks', Software, IEE Proc. , vol.151, no.2, pp.67,83, 5 April 2004.
  13. Soundarajan, N., Hallstrom, J.O., 'Responsibilities and rewards: specifying design patterns', Proc. of 26th International Conference on Software Engineering 2004 (ICSE 2004).
  14. Gosling, J., Joy, B., Steele, G.L., 'The Java Language Specification (1st ed.)78, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1996.
  15. Bernardi, M.L., Di Lucca, G.A., 'Improving Design Pattern Quality Using Aspect Orientation', Proc. of the 13th IEEE International Workshop on Software Technology and Engineering Practice, 2005.
  16. Bernardi, M.L., Cimitile, M., Maggi, F. M., 'Model Driven Development of Process-centric Web Applications', Proc. of the 7th International Conference on Software Paradigm Trends 2012 (ICSOFT 2012).
Download


Paper Citation


in Harvard Style

L. Bernardi M., Cimitile M. and A. Di Lucca G. (2013). An Aspect Oriented Framework for Flexible Design Pattern-based Development . In Proceedings of the 8th International Joint Conference on Software Technologies - Volume 1: ICSOFT-PT, (ICSOFT 2013) ISBN 978-989-8565-68-6, pages 528-535. DOI: 10.5220/0004510305280535


in Bibtex Style

@conference{icsoft-pt13,
author={Mario L. Bernardi and Marta Cimitile and Giuseppe A. Di Lucca},
title={An Aspect Oriented Framework for Flexible Design Pattern-based Development},
booktitle={Proceedings of the 8th International Joint Conference on Software Technologies - Volume 1: ICSOFT-PT, (ICSOFT 2013)},
year={2013},
pages={528-535},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0004510305280535},
isbn={978-989-8565-68-6},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 8th International Joint Conference on Software Technologies - Volume 1: ICSOFT-PT, (ICSOFT 2013)
TI - An Aspect Oriented Framework for Flexible Design Pattern-based Development
SN - 978-989-8565-68-6
AU - L. Bernardi M.
AU - Cimitile M.
AU - A. Di Lucca G.
PY - 2013
SP - 528
EP - 535
DO - 10.5220/0004510305280535