Joanne M. Atlee

SE
3papers
2citations
Novelty25%
AI Score14

3 Papers

SEJul 16, 2021
Applying Declarative Analysis to Software Product Line Models: An Industrial Study

Ramy Shahin, Robert Hackman, Rafael Toledo et al.

Software Product Lines (SPLs) are families of related software products developed from a common set of artifacts. Most existing analysis tools can be applied to a single product at a time, but not to an entire SPL. Some tools have been redesigned/re-implemented to support the kind of variability exhibited in SPLs, but this usually takes a lot of effort, and is error-prone. Declarative analyses written in languages like Datalog have been collectively lifted to SPLs in prior work, which makes the process of applying an existing declarative analysis to a product line more straightforward. In this paper, we take an existing declarative analysis (behaviour alteration) written in the Grok declarative language, port it to Datalog, and apply it to a set of automotive software product lines from General Motors. We discuss the design of the analysis pipeline used in this process, present its scalability results, and provide a means to visualize the analysis results for a subset of products filtered by feature expression. We also reflect on some of the lessons learned throughout this project.

SEApr 22, 2016
Long-Term Average Cost in Featured Transition Systems

Rafael Olaechea, Uli Fahrenberg, Joanne M. Atlee et al.

A software product line is a family of software products that share a common set of mandatory features and whose individual products are differentiated by their variable (optional or alternative) features. Family-based analysis of software product lines takes as input a single model of a complete product line and analyzes all its products at the same time. As the number of products in a software product line may be large, this is generally preferable to analyzing each product on its own. Family-based analysis, however, requires that standard algorithms be adapted to accomodate variability. In this paper we adapt the standard algorithm for computing limit average cost of a weighted transition system to software product lines. Limit average is a useful and popular measure for the long-term average behavior of a quality attribute such as performance or energy consumption, but has hitherto not been available for family-based analysis of software product lines. Our algorithm operates on weighted featured transition systems, at a symbolic level, and computes limit average cost for all products in a software product line at the same time. We have implemented the algorithm and evaluated it on several examples.

SEApr 12, 2015
Proceedings 6th Workshop on Formal Methods and Analysis in SPL Engineering

Joanne M. Atlee, Stefania Gnesi

The workshop aims at reviewing the state of the art and the state of the practice in which formal methods and analysis approaches are currently applied in SPLE. This leads to a discussion of a research agenda for the extension of existing formal approaches and the development of new formal techniques for dealing with the particular needs of SPLE. To achieve the above objectives, the workshop is intended as a highly interactive event fostering discussion and initiating collaborations between the participants from both communities.