Criteria and Approach Implications for Requirements and Design Crosscutting Concerns to Support Software Evolution
Keywords:
Crosscutting concerns, Scattering, Tangling, AORE/AOSD, Software maintenance and evolution, IM-DeCRuDAbstract
Crosscutting concerns has gained special attention for software development and maintenance in software engineering. This awareness was resulted from the discovery of crosscutting behaviour that initially evolves from the process opening at implementation stage. Conceptually, crosscutting concerns are usually described in terms of scattering and tangling which involves mapping and intersection of software components throughout stages in development activities. Due to its orientation, it is inevitable to provide viable understanding in crosscutting concerns across the software lifecycle. AORE/AOSD targets at dealing with effective evolution process for crosscutting concerns at various phases in conjunction to industrial standard. Recent works are focusing on identification, modularization, composition and conflict analysis of crosscutting concerns solely at requirements level. However, there is significant research gap to appropriately specify crosscutting properties for functional and non- functional concerns at both requirements and design phases. Due to this absence, software engineers have no appropriate guidelines to attend to crosscutting concerns across development stages. In this paper, we aim to present several criteria published in literature scoping on crosscutting concerns at the requirements and design stages. In relation, we propose our approach called IM-DeCRuD to accommodate engineering tasks for better understanding and reasoning towards crosscutting concerns at the requirements and design stages. In this perspective, IM-DeCRuD is designed to be well suited with rapid changes of requirements for various sizes of software development as well as maintenance projects.