publications: - title: "A Theory of Software Product Line Refinement" author: - name: "Paulo Borba" link: "https://researchr.org/alias/paulo-borba" - name: "Leopoldo Teixeira" link: "http://www.cin.ufpe.br/~lmt" - name: "Rohit Gheyi" link: "https://researchr.org/alias/rohit-gheyi" year: "2012" doi: "10.1016/j.tcs.2012.01.031" abstract: "To safely evolve a software product line, it is important to have a notion of product line refinement that assures behavior preservation of the original product line products. So in this article we present a language independent theory of product line refinement, establishing refinement properties that justify stepwise and compositional product line evolution. Moreover, we instantiate our theory with the formalization of specific languages for typical product lines artifacts, and then introduce and prove soundness of a number of associated product line refinement transformation templates. These templates can be used to reason about specific product lines and as a basis to derive comprehensive product line refinement catalogues." links: "url": "http://www.sciencedirect.com/science/article/pii/S0304397512000679" tags: - "software product lines" - "refinement" - "transformation language" - "composition" - "software evolution" - "software product line" - "safe composition" - "product line" - "transformation" - "domain-specific language" researchr: "https://researchr.org/publication/Borba2012" cites: 0 citedby: 0 journal: "TCS" number: "0" kind: "article" key: "Borba2012" - title: "Safe Composition of Configuration Knowledge-Based Software Product Lines" author: - name: "Leopoldo Teixeira" link: "http://www.cin.ufpe.br/~lmt" - name: "Borba, P." link: "https://researchr.org/alias/borba%2C-p." - name: "Gheyi, R." link: "https://researchr.org/alias/gheyi%2C-r." year: "2011" month: "sept." doi: "10.1109/SBES.2011.15" abstract: "Feature models and configuration knowledge drive product generation in a Software Product Line (SPL). Mistakes when specifying these models or in the implementation might result in ill-formed products-- the safe composition problem. This work proposes an automated approach for verifying safe composition for SPLs with explicit configuration knowledge models. We translate feature models and configuration knowledge into propositional logic and use SAT Solvers to perform the verification. We evaluate our approach using seven releases of the MobileMedia SPL, which generate up to 272 products in the 7th release. We report safe composition problems related to non-conformity with the feature model, bad specification of the configuration knowledge, and implementation not envisioning the full SPL scope, that affect over 40% of the products in the 7th release." tags: - "rule-based" - "translation" - "software product lines" - "meta-model" - "composition" - "logic" - "software product line" - "Meta-Environment" - "safe composition" - "product line" - "systematic-approach" researchr: "https://researchr.org/publication/6065124" cites: 0 citedby: 0 pages: "263-272" booktitle: "Software Engineering (SBES), 2011 25th Brazilian Symposium on" kind: "inproceedings" key: "6065124" - title: "Emergent feature modularization" author: - name: "Márcio Ribeiro" link: "https://researchr.org/alias/m%C3%A1rcio-ribeiro" - name: "Humberto Pacheco" link: "https://researchr.org/alias/humberto-pacheco" - name: "Leopoldo Teixeira" link: "http://www.cin.ufpe.br/~lmt" - name: "Paulo Borba" link: "http://www.cin.ufpe.br/~phmb/" year: "2010" doi: "http://doi.acm.org/10.1145/1869542.1869545" links: doi: "http://doi.acm.org/10.1145/1869542.1869545" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/oopsla/RibeiroPTB10" researchr: "https://researchr.org/publication/RibeiroPTB10" cites: 0 citedby: 0 pages: "11-18" booktitle: "OOPSLA" kind: "inproceedings" key: "RibeiroPTB10" - title: "A Theory of Software Product Line Refinement" author: - name: "Paulo Borba" link: "http://www.cin.ufpe.br/~phmb/" - name: "Leopoldo Teixeira" link: "http://www.cin.ufpe.br/~lmt" - name: "Rohit Gheyi" link: "https://researchr.org/alias/rohit-gheyi" year: "2010" doi: "http://dx.doi.org/10.1007/978-3-642-14808-8_2" links: doi: "http://dx.doi.org/10.1007/978-3-642-14808-8_2" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/ictac/BorbaTG10" tags: - "refinement" - "software product line" - "product line" researchr: "https://researchr.org/publication/BorbaTG10" cites: 0 citedby: 0 pages: "15-43" booktitle: "ictac" kind: "inproceedings" key: "BorbaTG10" - title: "Assessment of product derivation tools in the evolution of software product lines: an empirical study" author: - name: "Mário Henrique C. Torres" link: "https://researchr.org/alias/m%C3%A1rio-henrique-c.-torres" - name: "Uirá Kulesza" link: "https://researchr.org/alias/uir%C3%A1-kulesza" - name: "Matheus Sousa" link: "https://researchr.org/alias/matheus-sousa" - name: "Thaís Vasconcelos Batista" link: "https://researchr.org/alias/tha%C3%ADs-vasconcelos-batista" - name: "Leopoldo Teixeira" link: "http://www.cin.ufpe.br/~lmt" - name: "Paulo Borba" link: "https://researchr.org/alias/paulo-borba" - name: "Elder Cirilo" link: "https://researchr.org/alias/elder-cirilo" - name: "Carlos José Pereira de Lucena" link: "https://researchr.org/alias/carlos-jos%C3%A9-pereira-de-lucena" - name: "Rosana T. V. Braga" link: "https://researchr.org/alias/rosana-t.-v.-braga" - name: "Paulo Cesar Masiero" link: "https://researchr.org/alias/paulo-cesar-masiero" year: "2010" doi: "http://doi.acm.org/10.1145/1868688.1868691" links: doi: "http://doi.acm.org/10.1145/1868688.1868691" dblp: "http://dblp.uni-trier.de/rec/bibtex/conf/gpce/TorresKSBTBCLBM10" tags: - "empirical" - "software product lines" - "software evolution" - "C++" researchr: "https://researchr.org/publication/TorresKSBTBCLBM10" cites: 0 citedby: 0 pages: "10-17" booktitle: "GPCE" kind: "inproceedings" key: "TorresKSBTBCLBM10" - title: "Investigating the safe evolution of software product lines" author: - name: "Neves, Laís" link: "https://researchr.org/alias/neves%2C-la%C3%ADs" - name: "Leopoldo Teixeira" link: "http://www.cin.ufpe.br/~lmt" - name: "Sena, Demóstenes" link: "https://researchr.org/alias/sena%2C-dem%C3%B3stenes" - name: "Alves, Vander" link: "https://researchr.org/alias/alves%2C-vander" - name: "Kulezsa, Uirá" link: "https://researchr.org/alias/kulezsa%2C-uir%C3%A1" - name: "Borba, Paulo" link: "https://researchr.org/alias/borba%2C-paulo" year: "2011" doi: "http://doi.acm.org/10.1145/2047862.2047869" abstract: "The adoption of a product line strategy can bring significant productivity and time to market improvements. However, evolving a product line is risky because it might impact many products and their users. So when evolving a product line to introduce new features or to improve its design, it is important to make sure that the behavior of existing products is not affected. In fact, to preserve the behavior of existing products one usually has to analyze different artifacts, like feature models, configuration knowledge and the product line core assets. To better understand this process, in this paper we discover and analyze concrete product line evolution scenarios and, based on the results of this study, we describe a number of safe evolution templates that developers can use when working with product lines. For each template, we show examples of their use in existing product lines. We evaluate the templates by also analyzing the evolution history of two different product lines and demonstrating that they can express the corresponding modifications and then help to avoid the mistakes that we identified during our analysis." links: doi: "http://doi.acm.org/10.1145/2047862.2047869" "url": "http://doi.acm.org/10.1145/2047862.2047869" tags: - "rule-based" - "software product lines" - "meta-model" - "analysis" - "software evolution" - "software product line" - "history" - "Meta-Environment" - "design" - "process modeling" - "product line" researchr: "https://researchr.org/publication/Neves%3A2011%3AISE%3A2047862.2047869" cites: 0 citedby: 0 pages: "33-42" booktitle: "Proceedings of the 10th ACM international conference on Generative programming and component engineering" kind: "inproceedings" key: "Neves:2011:ISE:2047862.2047869"