À minha família, que me apoia incondicionalmente. Faço um agradecimento especial aos meus pais, Augusto e Claudia, que me motivam sempre a não desistir dos meus sonhos, e à minha irmã (e melhor amiga) Débora, que mesmo nos dias mais tristes e cansativos consegue me fazer sorrir. Obrigada por sempre me convencer de que eu sou capaz de conquistar meus objetivos. Ao meu namorado Roberto, que é meu companheiro de todas as horas. Obrigada por aguentar meus dramas diários e por me fazer enxergar o lado bom de tudo. Ao meu orientador Paulo Borba, que passei a admirar (ainda mais) depois de me tornar sua aluna. Sempre muito paciente comigo e presente na minha vida, tem guiado meus passos da melhor forma possível. Serei eternamente grata pelos ensinamentos. Agradeço também ao meu co-orientador Lepoldo Teixeira, que é uma inspiração para mim como profissional. Sua constante presença e apoio foram essenciais. Aos meus amigos, que torcem tanto por mim e sempre me colocam pra cima, obrigada por tudo. Aos membros do SPG, pelos comentários e feedbacks a respeito do meu trabalho. Em especial, gostaria de agradecer às minhas irmãs de pesquisa Klissiomara, Paola e Thaís, que se tornaram amigas. Nossa convivência e momentos de descontração são de extrema importância pra mim. À Nicolas Dintzner, que desenvolveu uma ferramenta bastante útil no meu trabalho e estava sempre à disposição para me ajudar. Esta interação contribuiu bastante para o meu aprendizado. À Coordenação de Aperfeiçoamento Pessoal de Nível Superior (CAPES), por ter financiado esta pesquisa. "Mathematical reasoning may be regarded rather schematically as the exercise of a combination of two facilities, which we may call intuition and ingenuity.
We propose a novel, unified approach to the development of compositional symbolic execution tools, bridging the gap between classical symbolic execution and compositional program reasoning based on separation logic. Using this approach, we build JaVerT 2.0, a symbolic analysis tool for JavaScript that follows the language semantics without simplifications. JaVerT 2.0 supports whole-program symbolic testing, verification, and, for the first time, automatic compositional testing based on bi-abduction. The meta-theory underpinning JaVerT 2.0 is developed modularly, streamlining the proofs and informing the implementation. Our explicit treatment of symbolic execution errors allows us to give meaningful feedback to the developer during wholeprogram symbolic testing and guides the inference of resource of the bi-abductive execution. We evaluate the performance of JaVerT 2.0 on a number of JavaScript data-structure libraries, demonstrating: the scalability of our whole-program symbolic testing; an improvement over the state-of-the-art in JavaScript verification; and the feasibility of automatic compositional testing for JavaScript.
A product line is an approach for systematically managing configuration options of customizable systems, usually by means of features. Products are generated for configurations consisting of selected features. Product-line evolution can lead to unintended changes to product behavior. We illustrate that updating configurations after product-line evolution requires decisions of both, domain engineers responsible for product-line evolution as well as application engineers responsible for configurations. The challenge is that domain and application engineers might not be able to interact with each other. We propose a formal foundation and a methodology that enables domain engineers to guide application engineers through configuration evolution by sharing knowledge on product-line evolution and by defining automatic update operations for configurations. As an effect, we enable knowledge transfer between those engineers without the need for interactions. We evaluate our methodology on four large-scale industrial product lines. The results of the qualitative evaluation indicate that our method is flexible enough for real-world product-line evolution. The quantitative evaluation indicates that we detect product behavior changes for up to $$55.3\%$$ 55.3 % of the configurations which would not have been detected using existing methods.
À minha família, que me apoia incondicionalmente. Faço um agradecimento especial aos meus pais, Augusto e Claudia, que me motivam sempre a não desistir dos meus sonhos, e à minha irmã (e melhor amiga) Débora, que mesmo nos dias mais tristes e cansativos consegue me fazer sorrir. Obrigada por sempre me convencer de que eu sou capaz de conquistar meus objetivos.Ao meu namorado Roberto, que é meu companheiro de todas as horas. Obrigada por aguentar meus dramas diários e por me fazer enxergar o lado bom de tudo.Ao meu orientador Paulo Borba, que passei a admirar (ainda mais) depois de me tornar sua aluna. Sempre muito paciente comigo e presente na minha vida, tem guiado meus passos da melhor forma possível. Serei eternamente grata pelos ensinamentos. Agradeço também ao meu co-orientador Lepoldo Teixeira, que é uma inspiração para mim como profissional. Sua constante presença e apoio foram essenciais.Aos meus amigos, que torcem tanto por mim e sempre me colocam pra cima, obrigada por tudo.Aos membros do SPG, pelos comentários e feedbacks a respeito do meu trabalho. Em especial, gostaria de agradecer às minhas irmãs de pesquisa Klissiomara, Paola e Thaís, que se tornaram amigas. Nossa convivência e momentos de descontração são de extrema importância pra mim. À Nicolas Dintzner, que desenvolveu uma ferramenta bastante útil no meu trabalho e estava sempre à disposição para me ajudar. Esta interação contribuiu bastante para o meu aprendizado. À Coordenação de Aperfeiçoamento Pessoal de Nível Superior (CAPES), por ter financiado esta pesquisa."Mathematical reasoning may be regarded rather schematically as the exercise of a combination of two facilities, which we may call intuition and ingenuity. AbstractSoftware product lines (SPLs) are sets of related systems that are built based on reusable artifacts. They have three elements: a variability model, that has feature declarations and dependencies among them; implementation artifacts and a configuration knowledge, that maps features to their implementation. SPLs provide several advantages, like software quality and reuse improvements, productivity gains and the capacity to customize a system depending on customers needs. There are several challenges in the SPL development context. To build customizable software and meet all customer needs, SPLs tend to increase over time. The larger a SPL becomes, the higher is the complexity to evolve it. Therefore, it is not trivial to predict which products are affected by a change, specially in large SPLs. One might need to check if products had their behaviour preserved to avoid inadvertently affecting existing users in an evolution scenario. In refactoring and conservative extension scenarios, we can avoid this problem by checking for behavior preservation, either by testing the generated products or by using formal theories. Product line refinement theories support that by requiring behavior preservation for all existing products. This happens in a number of situations, such as code refinements. For instance, in function renaming tran...
Esta revista oferece acesso livre imediato ao seu conteúdo, seguindo o princípio de que disponibilizar gratuitamente o conhecimento científico ao público proporciona maior democratização mundial do conhecimento. Assume-se que, ao submeter um artigo, o(a) autor(a) se reconhece como detentor(a) do direito autoral sobre ele e autoriza seu livre uso pelos leitores, podendo ser, além de lido, baixado, distribuído e impresso, desde que citada a fonte. Os autores são responsáveis pelo conteúdo, correção ortográfica, gramatical, de pontuação e acentuação.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.