Aspects across Software Life Cycle: A Goal-Driven Approach

Goal modeling fits model-driven engineering (MDE) in that it captures stakeholder concerns and the interdependencies using concepts that are much less bound to the underlying implementation technology and are much closer to the problem languages. Aspect-oriented software development (AOSD) provides language constructs to facilitate the representation of multiple perceptions and to alleviate tangling and scattering concerns. Synthesis of AOSD and MDE not only manages software complexity but also improves productivity, as well as model quality and longevity. In this paper, we propose a model-driven framework for tracing aspects from requirements to implementation and testing, where goal models become engineering assets and straightforward model-to-code transformation bridges the gap between domain concepts and implementation technologies. We test our hypotheses and evaluate the framework's applicability and usefulness with a case study of an open-source e-commerce platform written in PHP.

[1]  Satoshi Matsuoka,et al.  ECOOP'97 — Object-Oriented Programming , 1997, Lecture Notes in Computer Science.

[2]  Nan Niu,et al.  Discovering aspects in requirements with repertory grid , 2006, EA '06.

[3]  John C. Grundy,et al.  Aspect-oriented requirements engineering for component-based software systems , 1999, Proceedings IEEE International Symposium on Requirements Engineering (Cat. No.PR00188).

[4]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[5]  Yijun Yu,et al.  Quality-Based Software Reuse , 2005, CAiSE.

[6]  Mehmet Aksit,et al.  Transactions on Aspect-Oriented Software Development III , 2007, Trans. Aspect-Oriented Software Development III.

[7]  Michael E. Bratman,et al.  Intention, Plans, and Practical Reason , 1991 .

[8]  John Grundy,et al.  Early Aspects: Current Challenges and Future Directions - 10th International Workshop, Vancouver, Canada, March 13, 2007, Revised Selected Papers , 2007, EA@AOSD.

[9]  T.N. Nguyen,et al.  An infrastructure for development of object-oriented, multi-level configuration management services , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[10]  Yijun Yu,et al.  Tracing and Validating Goal Aspects , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[11]  Yijun Yu,et al.  From goals to aspects: discovering aspects from requirements goal models , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[12]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[13]  John Mylopoulos,et al.  Non-Functional Requirements in Software Engineering , 2000, International Series in Software Engineering.

[14]  Shane Sendall,et al.  Model Transformation: The Heart and Soul of Model-Driven Software Development , 2003, IEEE Softw..

[15]  Steffen Zschaler,et al.  Tool Support for Refinement of Non-functional Specifications , 2007, Software & Systems Modeling.

[16]  Michael Jackson,et al.  Four dark corners of requirements engineering , 1997, TSEM.

[17]  João Araújo,et al.  Early aspects: a model for aspect-oriented requirements engineering , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[18]  John Mylopoulos,et al.  Towards requirements-driven information systems engineering: the Tropos project , 2002, Inf. Syst..

[19]  Jane Cleland-Huang,et al.  The Detection and Classification of Non-Functional Requirements with Application to Early Aspects , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[20]  Jeffrey G. Gray,et al.  Automating change evolution in model-driven engineering , 2006, Computer.

[21]  Stefano Spaccapietra,et al.  Conceptual Modeling — ER 2002 , 2002, Lecture Notes in Computer Science.

[22]  Richard Bell,et al.  A manual for repertory grid technique , 1977 .

[23]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[24]  강문설 [서평]「The Unified Modeling Language User Guide」 , 1999 .

[25]  Eric S. K. Yu,et al.  Towards modelling and reasoning support for early-phase requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[26]  Douglas C. Schmidt,et al.  Guest Editor's Introduction: Model-Driven Engineering , 2006, Computer.

[27]  Bran Selic,et al.  The Pragmatics of Model-Driven Development , 2003, IEEE Softw..

[28]  Yoav Shoham,et al.  Agent-Oriented Programming , 1992, Artif. Intell..

[29]  Yijun Yu,et al.  A Taxonomy of Asymmetric Requirements Aspects , 2007, EA@AOSD.

[30]  Jochen Ludewig,et al.  Models in software engineering - an introduction , 2004, Informatik Forschung und Entwicklung.

[31]  Douglas C. Schmidt,et al.  Model-Driven Engineering , 2006 .

[32]  Stuart Kent,et al.  Model Driven Engineering , 2002, IFM.

[33]  John Mylopoulos,et al.  Reasoning with Goal Models , 2002, ER.

[34]  Bashar Nuseibeh Crosscutting requirements , 2004, AOSD '04.

[35]  John Mylopoulos,et al.  Requirements Engineering and Aspects , 2009 .

[36]  Bernhard Ganter,et al.  Formal Concept Analysis, 6th International Conference, ICFCA 2008, Montreal, Canada, February 25-28, 2008, Proceedings , 2008, International Conference on Formal Concept Analysis.

[37]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[38]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[39]  John Mylopoulos,et al.  Representing and Using Nonfunctional Requirements: A Process-Oriented Approach , 1992, IEEE Trans. Software Eng..

[40]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[41]  Nan Niu,et al.  Analysis of Early Aspects in Requirements Goal Models: A Concept-Driven Approach , 2007, LNCS Trans. Aspect Oriented Softw. Dev..

[42]  João Araújo,et al.  aspect- oriented pr ogramming , 2006 .

[43]  Shmuel Katz,et al.  From aspectual requirements to proof obligations for aspect-oriented systems , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[44]  Ivar Jacobson,et al.  Use Cases and Aspects-Working Seamlessly Together , 2003, J. Object Technol..

[45]  Nan Niu,et al.  So, You Think You Know Others' Goals? A Repertory Grid Study , 2007, IEEE Software.

[46]  Fausto Giunchiglia,et al.  Towards an Agent Oriented Approach to Software Engineering , 2001, WOA.