Research Outputs

Now showing 1 - 2 of 2
  • Publication
    Creating a family of collaborative applications for emergency management in the firefighting sub-domain
    (Springer Nature, 2016) ;
    Herskovic, Valeria
    ;
    Ormeño, Erika
    Software Product Lines allow creating a set of applications that share a set of common features. This makes software product lines appropriate for implementing a family of software products when each stakeholder has different needs and requirements evolve constantly. In the case of emergency management, firefighters have begun using their own smartphones to collaborate and access information during emergencies. However, each firefighter role requires different information and the firefighters’ requirements are constantly evolving. We propose a well-defined process to help stakeholders in this domain specify the products they require, showing that it is possible to apply this software engineering process to extract collaborative requirements common to a set of applications. To confirm whether it was useful for real software implementation, we defined and implemented two applications for this domain. This paper presents the process used to systematically define the domain model and determine the domain scope, which may be used for other domains. We found the process to be appropriate for identifying features related to the domain and its collaborative aspects. The results are promising; the process allowed us to create two working applications which were positively received by two types of stakeholders.
  • Publication
    Software product line evolution: A systematic literature review
    (Information and Software Technology, 2019)
    Marques, MaĂ­ra
    ;
    Simmonds, Jocelyn
    ;
    ;
    Bastarrica, MarĂ­a Cecilia
    Context: Software Product Lines (SPL) evolve when there are changes in the requirements, product structure or the technology being used. Different approaches have been proposed for managing SPL assets and some also address how evolution affects these assets. Existing mapping studies have focused on specific aspects of SPL evolution, but there is no cohesive body of work that gives an overview of the area as a whole. Objective: The goals of this work are to review the characteristics of the approaches reported as supporting SPL evolution, and to synthesize the evidence provided by primary studies about the nature of their processes, as well as how they are reported and validated. Method: We conducted a systematic literature review, considering six research questions formulated to evaluate evolution approaches for SPL. We considered journal, conference and workshop papers published up until March 2017 in leading digital libraries for computer science. Results: After a thorough analysis of the papers retrieved from the digital libraries, we ended up with a set of 60 primary studies. Feature models are widely used to represent SPLs, so feature evolution is frequently addressed. Other assets are less frequently addressed. The area has matured over time: papers presenting more rigorous work are becoming more common. The processes used to support SPL evolution are systematic, but with a low level of automation. Conclusions: Our research shows that there is no consensus about SPL formalization, what assets can evolve, nor how and when these evolve. Case studies are quite popular, but few industrial-sized case studies are publicly available. Also, few of the proposed techniques offer tool support. We believe that the SPL community needs to work together to improve the state of the art, creating methods and tools that support SPL evolution in a more comparable manner.