Modeling Product Line Software Assets Using Domain-Specific Kits

2012-11-01
ALTINTAS, N. Ilker
CETIN, Semih
Doğru, Ali Hikmet
Oğuztüzün, Mehmet Halit S.
Software Product Line Engineering (SPLE) is a prominent paradigm for the assembly of a family of products using product line core assets. The modeling of software assets that together form the actual products is critical for achieving the strategic benefits of Software Product Lines (SPLs). We propose a feature-based approach to software asset modeling based on abstractions provided by Domain-Specific Kits (DSKs). This approach involves a software Asset Metamodel (AMM) used to derive Asset Modeling Languages (AMLs) that define reusable software assets in domain-specific terms. The approach also prescribes a roadmap for modeling these software assets in conjunction with the product line reference architecture. Asset capabilities can be modeled using feature diagrams as the external views of the software assets. Internal views can be expressed in terms of Domain-Specific Artifacts (DSAs) with Variability Points (VPs), where the domain-specific artifacts are created using Domain-Specific Kits. This approach produces loosely coupled and highly cohesive software assets that are reusable for multiple product lines. The approach is validated by assessing software asset reuse in two different product lines in the finance domain. We also evaluated the productivity gains in large-scale complex projects, and found that the approach yielded a significant reduction in the total project effort.
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING

Suggestions

Representing component variability in configuration management
Bayraktar, Gamze; Oğuztüzün, Mehmet Halit S.; Doğru, Ali Hikmet; Department of Computer Engineering (2012)
Reusability of assets within a family of products is the major goal of Software Product Line Engineering (SPLE), therefore managing variability is an important task in SPLs. Configuration management in the context of software product line engineering is more complicated than that in single systems engineering due to ”variability in space” in addition to ”variability in time” of core assets. In this study, a method for documenting variability in executable configuration items, namely components, is proposed ...
Feature modeling and automated analysis for an embedded software product family
Fedakar Gönül, Gülseren; Oğuztüzün, Mehmet Halit S.; Department of Computer Engineering (2013)
In the context of software product line engineering, feature models are used for modeling variability and commonality in product families. This thesis presents a basic feature model for a commercial television set product family. This work consists of three stages. First, a feature model is constructed, based on the analysis of the product family requirements. The constructed model is supplemented with a feature glossary. FeatureIDE is used as the model editor. Feature attributes, not supported by FeatureID...
Kutulu: A Domain-specific Language for Feature-driven Product Derivation
Dayibas, Orcun; Oğuztüzün, Mehmet Halit S. (2012-07-20)
Software Product Line Engineering (SPLE) defines processes to facilitate the development of a family of products in a pre-defined market more effectively. Its success depends on implementation of these processes utilizing best practices with proper tool support. This paper describes how to enhance domain design and variation management processes of SPLE with a domain-specific language (DSL), namely "Kutulu". It also introduces novel modeling tools and dependency injection-based realization approach that are...
Variable connectors in component oriented development
Çetinkaya, Anıl; Doğru, Ali Hikmet; Department of Computer Engineering (2017)
Variability is incorporated in component oriented software development especially in the connectors besides components, for efficient configuration of software products in this thesis. Components have been regarded as the main building blocks in the development of software, especially in component based approaches. Connectors, however, were also part of the solution but with not much of a responsibility when compared to components. When considered in a holistic approach to yield executable code starting wit...
Merging multi-view feature models
Atılgan Aydın, Elçin; Oğuztüzün, Mehmet Halit S.; Doğru, Ali Hikmet; Department of Computer Engineering (2011)
Feature models are used for variability management in software product lines. Instead of developing a single feature model, merging small models can be an effective solution to obtain a unified view. Since each stakeholder views the product family from a different perspective, conflicts may occur during merging. In this research, merging of feature models arising from different viewpoints is considered. A normative procedure is proposed to merge feature models by applying local rules. This procedure can mer...
Citation Formats
N. I. ALTINTAS, S. CETIN, A. H. Doğru, and M. H. S. Oğuztüzün, “Modeling Product Line Software Assets Using Domain-Specific Kits,” IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, pp. 1376–1402, 2012, Accessed: 00, 2020. [Online]. Available: https://hdl.handle.net/11511/36718.