Automated Separation of Cross Cutting Concerns
Published:
Automated Separation of Cross Cutting Concerns by Abdul Razzaq (2013)
Software industry is getting enriched with the adoption of software product line engineering (SPLE). SPLE adds configure-ability, adaptability, reusability, evolve- ability, customize-ability and maintainability in software engineering architecture. It captures and manages commonalities and variabilities between the families of products. However, modeling the commonalities and variabilities is not a trivial activity instead subjected to various challenges and issues like relationships, interactions, weaving, binding, inconsistencies and implicit/explicit dependencies between the features. Additionally, there are many more concerns of software engineering and product line engineering that impact variability management in software product line engineering from the architectural level to running time. Early aspect mining captures the concerns that can propagate to other artifacts in later stages. However, current approaches and tools required a self-made input by following specific grammatical patterns to expose to the approach what the concern is. Moreover, requirements are mostly communicated between the stakeholders in forms of features. However, the early aspect mining from the feature introduced the labor intensive task of creating the Feature Model (FM) that is unable to support cross-cutting relations. There seems a tradeoff between the requirement abstraction and automaticity for aspect discovery at an early analysis phase. We present an enhanced aspect-oriented feature analysis framework, which discovers meaningful concerns and feature interaction and then associate them to feature modules without spending automaticity. It takes publicly available unstructured features as input then creates a knowledge base of the domain by natural language processing and finally models each feature dependency by utilizing this domain knowledge and variability patterns. We compare our approach against the early aspect miner tool and evaluate it statistically using one-leave-out cross validation method. We found our approach to be optimum.