1,690 research outputs found
Traceability for Model Driven, Software Product Line Engineering
Traceability is an important challenge for software organizations. This is true for traditional software development and even more so in new approaches that introduce more variety of artefacts such as Model Driven development or Software Product Lines. In this paper we look at some aspect of the interaction of Traceability, Model Driven development and Software Product Line
Potential Errors and Test Assessment in Software Product Line Engineering
Software product lines (SPL) are a method for the development of variant-rich
software systems. Compared to non-variable systems, testing SPLs is extensive
due to an increasingly amount of possible products. Different approaches exist
for testing SPLs, but there is less research for assessing the quality of these
tests by means of error detection capability. Such test assessment is based on
error injection into correct version of the system under test. However to our
knowledge, potential errors in SPL engineering have never been systematically
identified before. This article presents an overview over existing paradigms
for specifying software product lines and the errors that can occur during the
respective specification processes. For assessment of test quality, we leverage
mutation testing techniques to SPL engineering and implement the identified
errors as mutation operators. This allows us to run existing tests against
defective products for the purpose of test assessment. From the results, we
draw conclusions about the error-proneness of the surveyed SPL design paradigms
and how quality of SPL tests can be improved.Comment: In Proceedings MBT 2015, arXiv:1504.0192
An Organizational Maturity Model of Software Product Line Engineering
Software product line engineering is an inter-disciplinary concept. It spans the dimensions of business, architecture, process, and the organization. Some of the potential benefits of this approach include cost reduction, improvements in product quality and a decrease in product development time. The increasing popularity of software product line engineering in the software industry necessitates a process maturity evaluation methodology. Accordingly, this paper presents an organizational maturity model of software product line engineering for evaluating the maturity of organizational dimension. The model assumes that organizational theories, behavior, and management play a critical role in the institutionalization of software product line engineering within an organization. Assessment questionnaires and a rating methodology comprise the framework of this model. The objective and design of the questionnaires are to collect information about the software product line engineering process from the dual perspectives of organizational behavior and management. Furthermore, we conducted two case studies and reported the assessment results using the organizational maturity model presented in this paper
Software Product Line Engineering: Future Research Directions
The recent trend of switching from single software product development tolines of software products in the software industry has made the software product line concept viable and widely accepted methodology in the future. Some of the potential benefits of this approach include cost reduction, improvement in quality and a decrease in product development time. Many organizations that deal in wide areas of operation, from consumer electronics, telecommunications, and avionics to information technology, are using software product lines practice because it deals with effective utilization ofsoftware assets and provides numerous benefits. Software product line engineering is an inter-disciplinary concept. It spans over the dimensions of business, architecture, process and organization. The business dimension of software product lines deals with managing a strong coordination between product line engineering and the business aspects of product line. Software product line architecture is regarded as one of the crucial piece of entity in software product lines. All the resulting products share thiscommon architecture. The organizational theories, behavior and management play critical role in the process of institutionalization of software product line engineering in an organization. The objective of this chapter is to discuss the state of the art of software product line engineering from the perspectives of business, architecture, organizational management and software engineering process. This work also highlights and discusses the future research directions in this area thus providing an opportunity to researchers and practitioners to better understand the future trends and requirements
Software Product Line Engineering via Software Transplantation
For companies producing related products, a Software Product Line (SPL) is a
software reuse method that improves time-to-market and software quality,
achieving substantial cost reductions.These benefits do not come for free. It
often takes years to re-architect and re-engineer a codebase to support SPL
and, once adopted, it must be maintained. Current SPL practice relies on a
collection of tools, tailored for different reengineering phases, whose output
developers must coordinate and integrate. We present Foundry, a general
automated approach for leveraging software transplantation to speed conversion
to and maintenance of SPL. Foundry facilitates feature extraction and
migration. It can efficiently, repeatedly, transplant a sequence of features,
implemented in multiple files. We used Foundry to create two valid product
lines that integrate features from three real-world systems in an automated
way. Moreover, we conducted an experiment comparing Foundry's feature migration
with manual effort. We show that Foundry automatically migrated features across
codebases 4.8 times faster, on average, than the average time a group of SPL
experts took to accomplish the task
Software product line engineering: a practical experience
The lack of mature tool support is one of the main reasons that make the industry to be reluctant to adopt Software Product Line (SPL) approaches. A number of systematic literature reviews exist that identify the main characteristics offered by existing tools and the SPL phases in which they can be applied. However, these reviews do not really help to understand if those tools are offering what is really needed to apply SPLs to complex projects. These studies are mainly based on information extracted from the tool documentation or published papers. In this paper, we follow a different approach, in which we firstly identify those characteristics that are currently essential for the development of an SPL, and secondly analyze whether the tools provide or not support for those characteristics. We focus on those tools that satisfy certain selection criteria (e.g., they can be downloaded and are ready to be used). The paper presents a state of practice with the availability and usability of the existing tools for SPL, and defines different roadmaps that allow carrying out a complete SPL process with the existing tool support.Universidad de Málaga. Campus de Excelencia Internacional AndalucĂa Tech.
Magic P12-TIC1814, HADAS TIN2015-64841-R (cofinanciado con fondos FEDER), MEDEA RTI2018-099213-B-I00 (cofinanciado con fondos FEDER), TASOVA MCIU-AEI TIN2017-90644-RED
Modeling used for Software Product Line Engineering
Software product line is the separation of variant features of all the products which belong to same line. Modeling is the basic foundation of Software Product Line Engineering, that is used for collection of what is similar and what is different between products, but products of same line. Here Line means a set of products those are related and share some commonalities like data structures, software components, some features and architecture etc.In order to managing the variability and commonalties in product line we use modeling in Software product line.So that SPLE is the most powerful approach to which we can use for to increase the efficiency of the software engineering process and we can develop variety of software from a single software product line, that’s why if we implement low design that can ripple through many generated software systems.In this paper I represent the relationship between Orthogonal Variability model and various different qualities attributes affecting them., I will also describe some existing metrics which we use to measure these quality attributes
First turkish software product line engineering workshop summary
Cataloged from PDF version of article.Software reuse has been a goal of the software community since the early
days of software engineering. In this context software product line engineering
(SPLE) has gained a broad interest in both academic institutions
and industry. This trend can also be observed in Turkey. In the recent
years an increasing number of software companies in Turkey have
adopted a SPLE approach while others are planning to make the transition.
This paper summarizes the results of the First Turkish Software
Product Line Engineering Workshop that has been organized in Ankara
in June 2012. The primary goal of the workshop was to reflect on the
state of practice in SPLE in Turkey. For this five leading SPLE companies
in Turkey have shared their experiences in adopting SPLE, and using
interactive discussions a research agenda for SPLE in Turkey has
been defined. We report both on the experiences from the workshop and
the resulting research topics
Verification and validation in software product line engineering
Verification and Validation (V&V) is currently performed during application development for many systems, especially safety-critical and mission-critical systems. However, the V&V process has been limited to single system development. This dissertation describes the extension of V&V from an individual application system to a product line of systems that are developed within an architecture-based software engineering environment.;In traditional V&V, the system provides the context under which the software will be evaluated, and V&V activities occur during all phases of the system development lifecycle. The transition to a product line approach to development removes the individual system as the context for evaluation, and introduces activities that are not directly related to a specific system. This dissertation presents an approach to V&V of software product lines that uses the domain model and the domain architecture as the context for evaluation, and enables V&V to be performed throughout the modified lifecycle introduced by domain engineering.;This dissertation presents three advances that assist in the adaptation of V&V from single application systems to a product line of systems. The first is a framework for performing V&V that includes the activities of traditional application-level V&V, and extends these activities into domain engineering and into the transition between domain engineering and application engineering. The second is a detailed method to extend the crucial V&V activity of criticality analysis from single system development to a product line of systems. The third advance is an approach to enable formal reasoning, which is needed for high assurance systems, on systems that are based on commercial-off-the-shelf (COTS) products
- …