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.
requirements specifications crosscutting concerns incremental software development aspect-mining