Guidelines for the incremental identification of aspects in requirements specifications

The desired principle of separation of concerns in software development can be jeopardized by the so-called crosscutting concerns, which tend to be scattered over (and tangled with) the functionality of the modular units of a system. The correct identification of such concerns (and their encapsulation into separate artifacts) is thereby considered a way to improve software understanding and evolution. Pursuing a proper management of concerns from the requirements engineering stage can greatly benefit the entire software life-cycle. In this paper, we propose conceptual guidelines on how to perform the identification of crosscutting concerns in the process of building requirements specifications. We argue that the identification must be carried out in an incremental way, to encapsulate apart the crosscutting concerns even if they have not emerged completely yet.

[1]  Hartmut Ehrig Towards an Algebraic Semantics of the ISO Specification Language LOTOS , 1986, ADT.

[2]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[3]  Rom Langerak Decomposition of functionality: a correctness-preserving LOTOS transformation , 1990, PSTV.

[4]  Reinhard Gotzhein,et al.  Temporal Logic and Applications-A Tutorial , 1992, Comput. Networks ISDN Syst..

[5]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[6]  George Spanoudakis,et al.  Managing interference , 1996, ISAW '96.

[7]  Ray Offen,et al.  A logical framework for modeling and reasoning about the evolution of requirements , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[8]  William G. Griswold,et al.  AspectBrowser: Tool Support for Managing Dispersed Aspects , 1999 .

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

[10]  Kentaro Go,et al.  A Decomposition of a Formal Specification: An Improved Constraint Oriented Method , 1999, IEEE Trans. Software Eng..

[11]  Donald Sannella Algebraic Specification and Program Development by Stepwise Refinement , 1999, LOPSTR.

[12]  Patrice Godefroid,et al.  Model Checking Partial State Spaces with 3-Valued Temporal Logics , 1999, CAV.

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

[14]  Tommaso Bolognesi,et al.  Toward Constraint-Object-Oriented Development , 2000, IEEE Trans. Software Eng..

[15]  Axel van Lamsweerde,et al.  Handling Obstacles in Goal-Oriented Requirements Engineering , 2000, IEEE Trans. Software Eng..

[16]  Jorge García Duque,et al.  SCTL-MUS: A Formal Methodology for Software Development of Distributed Systems. A Case Study , 2001, Formal Aspects of Computing.

[17]  Radha Jagadeesan,et al.  Abstraction-Based Model Checking Using Modal Transition Systems , 2001, CONCUR.

[18]  Gregor Kiczales,et al.  Overcoming the Prevalent Decomposition in Legacy Code , 2001 .

[19]  Bashar Nuseibeh,et al.  Making inconsistency respectable in software development , 2001, J. Syst. Softw..

[20]  Jorge García Duque,et al.  An analysis-revision cycle to evolve requirements specifications by using the SCTL-MUS methodology , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[21]  Shaoying Liu,et al.  Capturing complete and accurate requirements by refinement , 2002, Eighth IEEE International Conference on Engineering of Complex Computer Systems, 2002. Proceedings..

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

[23]  Stanley M. Sutton Early-Stage Concern Modeling , 2002 .

[24]  João Araújo,et al.  Modularisation and composition of aspectual requirements , 2003, AOSD '03.

[25]  Hans-Arno Jacobsen,et al.  Refactoring Middleware with Aspects , 2003, IEEE Trans. Parallel Distributed Syst..

[26]  Victor R. Basili,et al.  Iterative and incremental developments. a brief history , 2003, Computer.

[27]  Karine Altisen Verimag Exploring Aspects in the Context of Reactive Systems , 2004 .

[28]  J. Whittle,et al.  A methodology for scenario-based requirements capture , 2004, ICSE 2004.

[29]  Mariano Ceccato,et al.  Aspect mining through the formal concept analysis of execution traces , 2004, 11th Working Conference on Reverse Engineering.

[30]  Jens Krinke,et al.  Aspect mining using event traces , 2004 .

[31]  Hyoseob Kim,et al.  Supporting the reconciliation of models of object behaviour , 2003, Software and Systems Modeling.

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

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

[34]  Lars Rosenhainer Identifying Crosscutting Concerns in Requirements Specifications , 2004 .

[35]  Jorge García Duque,et al.  Incremental specification with SCTL/MUS-T: a case study , 2004, J. Syst. Softw..

[36]  Elisa Baniassad Finding Aspects In Requirements with Theme/Doc , 2004 .

[37]  Alistair G. Sutcliffe,et al.  Scenario advisor tool for requirements engineering , 2005, Requirements Engineering.

[38]  K. G. van den Berg,et al.  A Conceptual Formalization of Crosscutting in AOSD , 2005 .

[39]  Jorge García Duque,et al.  Tracing Integration Analysis in Component-Based Formal Specifications , 2005, FMOODS.

[40]  Paul Rayson,et al.  Mining Aspects in Requirements , 2005 .

[41]  J. Pazos,et al.  Eliciting Requirements and Scenarios using the SCTL›MUS Methodology. The Shuttle System Case Study , 2005 .

[42]  Martín López Nores,et al.  Eliciting requirements and scenarios using the SCTL-MUS methodology , 2005, ACM SIGSOFT Softw. Eng. Notes.

[43]  Mariano Ceccato,et al.  A qualitative comparison of three aspect mining techniques , 2005, 13th International Workshop on Program Comprehension (IWPC'05).

[44]  José Juan Pazos-Arias,et al.  Merging requirements views with incompleteness and inconsistency , 2005, 2005 Australian Software Engineering Conference.