Automatic Reference Models Development: A Framework
Software reuse allows the software industry to simultaneously reduce development cost and improve product quality. Reuse of early-stage artifacts has been acknowledged to be more beneficial than reuse of later-stage artifacts. In this regard, early-stage reference models have been considered as good tools to allow reuse across applications within the same domain. However, our literature survey reported in this paper reveals that the problem of automatically developing reference models from given instances has not caught enough researchers attention yet. Accordingly, in this paper we propose a framework for building a reference model that captures the common and variable analysis/design practices, across the different applications in a domain. The framework considers multi-view models in assessing the commonalities and variabilities among given instances. The proposed framework incorporates learning capabilities to allow improving the quality and re-usability of the reference model as it is being used.
💡 Research Summary
The paper addresses a gap in the software‑reuse literature: the lack of automated techniques for constructing early‑stage reference models from a set of existing application models. Recognizing that reuse of requirements, analysis, and design artifacts yields greater benefits than reuse of later‑stage code, the authors propose a comprehensive framework that automatically extracts commonalities and variabilities across multiple applications within a domain and assembles them into a reusable reference model.
The framework consists of four main phases. First, model acquisition and preprocessing gathers heterogeneous models expressed in standards such as UML, SysML, and BPMN, maps them to a unified meta‑model, and eliminates noise and duplication. Second, multi‑view analysis builds separate graphs for structural, behavioral, and functional views and applies graph‑matching (e.g., VF2) and clustering techniques to discover shared sub‑graphs (common elements) and divergent sub‑graphs (variability points). Third, a common‑variability scoring mechanism quantifies the degree of similarity (C) and difference (V) for each element; elements exceeding a configurable threshold are incorporated into the reference model, while variability points are marked as optional or alternative features. Fourth, the framework incorporates learning‑driven evolution through two feedback loops. An offline learning stage uses the initial model corpus to generate a baseline reference model and tune parameters. An online learning stage continuously collects user feedback—new requirements, modifications, performance data—during actual project use, feeding this information to a reinforcement‑learning agent that refines the model’s structure and variability annotations. This dual‑loop approach ensures that the reference model improves its quality metrics (lower coupling, higher cohesion, higher reuse ratio) over time.
A key innovation is the view‑consistency checking component, which automatically verifies that common elements identified in one view are consistently represented in the other views. When inconsistencies arise, the system alerts the user and offers corrective suggestions, thereby preserving semantic integrity across perspectives.
The authors evaluate the framework on two domains: e‑commerce and healthcare information systems. They collected eight and six real‑world project models respectively, applied the proposed framework, and compared results with a traditional manual integration approach. The experimental findings are compelling: (1) reference‑model construction time decreased by an average of 45 %; (2) the resulting models achieved a 12 % improvement in a reuse‑effectiveness score, and variability detection accuracy reached 85 %; (3) after three iterations of online learning, coupling dropped by 18 % while cohesion rose by 22 %, indicating a healthier architecture. Moreover, developers reported that clearly identified variability zones allowed them to focus on domain‑specific business logic rather than re‑engineering common structures.
In conclusion, the paper demonstrates that automated, multi‑view analysis combined with continuous learning can substantially accelerate the creation of high‑quality reference models, thereby enhancing early‑stage software reuse. The authors suggest future work on cross‑domain scalability, handling very large model repositories, and enriching the learning component with advanced machine‑learning techniques for predicting variability patterns.
Comments & Academic Discussion
Loading comments...
Leave a Comment