Early aspects: a model for aspect-oriented requirements engineering

Effective RE must reconcile the need to achieve separation of concerns with the need to satisfy broadly scoped requirements and constraints. Techniques such as use cases and viewpoints help achieve separation of stakeholders' concerns but ensuring their consistency with global requirements and constraints is largely unsupported. We build on recent work that has emerged from the aspect-oriented programming (AOP) community to propose a general model for aspect oriented requirements engineering (AORE). The model supports separation of crosscutting functional and non-functional properties at the requirements level. We argue that early separation of such crosscutting properties supports effective determination of their mapping and influence on artefacts at later development stages. A realisation of the model based on a case study of a toll collection system is presented.

[1]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[2]  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).

[3]  Awais Rashid,et al.  A Hybrid Approach to Separation of Concerns: The Story of SADES , 2001, Reflection.

[4]  Helen M. Edwards,et al.  Problem frames: analyzing and structuring software development problems , 2002, Softw. Test. Verification Reliab..

[5]  Elke Pulvermüller,et al.  Aspect Composition Applying the Design by Contract Principle , 2000, GCSE.

[6]  Siobhán Clarke,et al.  Composition patterns: an approach to designing reusable , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[7]  Ian Sommerville,et al.  The viewpoints FAQ , 1996 .

[8]  Tzilla Elrad,et al.  Aspect-oriented programming: Introduction , 2001, CACM.

[9]  Michael A. Jackson,et al.  Problem Frames - Analysing and Structuring Software Development Problems , 2000 .

[10]  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).

[11]  Siobhán Clarke,et al.  Composition patterns: an approach to designing reusable aspects , 2001, ICSE 2001.

[12]  R. G. Clark,et al.  Constructing formal specifications from informal requirements , 1997, Proceedings Eighth IEEE International Workshop on Software Technology and Engineering Practice incorporating Computer Aided Software Engineering.