Résumé
Software reuse is a way to reduce costs and improve the quality of products. In practice, software reuse is commonly done by opportunistic strategies. In these strategies, the artifacts are simply copied/cloned and modified/adapted to fulfill existing needs. Opportunistic reuse leads to a set of system variants developed independently, generating technical debts. The maintenance and evolution of these independent variants are a costly and difficult task since most of the times the practitioners do not have a global view of such variants nor a clear understanding of the actual structure of the system. In such a case, a systematic reuse approach is paramount. Software product line engineering (SPLE) is a well-established approach to deal with a set of product variants in a specific domain, including systematic reuse in the software development process. One of the main design assets generated during the SPLE is the product line architecture (PLA), which describes how commonalities and variabilities are implemented in an SPL. Designing a PLA from scratch is challenging, since it must contemplate a detailed description of a whole family of products. PLAs can be obtained from existing product variants, requiring less effort and time from practitioners. Commonly, UML class diagrams of system products are available or can be reverse engineered easily. These UML class diagrams are a rich source of information to support PLA creation. In this chapter, we describe our method of reengineering UML class diagram of variants into an initial version of a PLA. Our method relies on a search-based technique to merge a set of UML model variants and insert annotations in model elements to describe the system features they belong to. The output of our method is an annotated UML class diagram that shows the whole structure of product variants that allows practitioners to reason better about the adoption of SPLE, aiding communication among stakeholders, supporting SPLE planning, and helping estimate maintenance, evolution, and testing activities.
| langue originale | Anglais |
|---|---|
| titre | UML-Based Software Product Line Engineering with SMarty |
| Editeur | Springer International Publishing |
| Pages | 393-414 |
| Nombre de pages | 22 |
| ISBN (Electronique) | 9783031185564 |
| ISBN (imprimé) | 9783031185557 |
| Les DOIs | |
| état | Publié - 6 févr. 2023 |
Empreinte digitale
Voici les principaux termes ou expressions associés à « Reengineering UML class diagram variants into a product line architecture ». Ces libellés thématiques sont générés à partir du titre et du résumé de la publication. Ensemble, ils forment une empreinte digitale unique.Citer cette ressource
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver