ResumoContexto: Técnicas de verificação têm sido aplicadas para garantir que sistemas de software atinjam níveis de qualidade desejados e atenda a requisitos funcionais e nãofuncionais. Entretanto a aplicação dessas técnicas de verificação em linhas de produto de software é desafiador devido à explosão combinatorial do número de produtos que uma linha de produtos pode instanciar. As técnicas atuais de verificação de linhas de produtos utilizam model checking simbólico e informações sobre variabilidade para otimizar a análise, mas ainda apresentam limitações que as tornam onerosas ou inviáveis. Em particular, as técnicas de verificação do estado da arte para análise de confiabilidade em linhas de produto são enumerativas o que dificulta a aplicabilidade das mesmas devido à explosão combinatorial do espaço de configurações.Objetivo: Os objetivos dessa tese são os seguintes: (a) apresentar um método eficiente para calcular a confiabilidade de todas as configurações de uma linha de produtos de sotware composicional ou anotacional à partir de seus modelos comportamentais UML, (b) fornecer uma ferramenta que implemente o método proposto e, (c) relatar um estudo empírico comparando o desempenho de diferentes estratégias de análises de confiabilidade para linhas de produto de software.Método: Esse trabalho apresenta uma nova estratégia de análise feature-family-based para calcular a confiabilidade de todos os produtos de uma linha de produtos de software (composicional ou anotacional). O passo feature-based da estratégia divide os modelos comportamentais em unidades menores para que essas possam ser analisadas mais eficientemente. O passo family-based realiza o cálculo de confiabilidade para todas as configurações de uma só vez ao avaliar as expressões de confiabilidade em termos de uma estrutura de dados variacional adequada.Resultados: Os resulstados empíricos mostram que a estratégia feature-family-based para análise de confiabilidade supera, em termos de tempo e espaço, quatro outras estratéfias de análise do estado da arte (product-based, family-based, feature-product-based e family-product-based) para a mesma propriedade. No contexto da avaliação e em comparação com as outras estratégias, a estratégia feature-family-based foi a única capaz de escalar a um crescimento do espaço de configuração da ordem de 2 20 . viii Conclusões: A estratégia feature-family-based utiliza e se beneficia das estratégias feature-e family-ao domar o crescimento dos tamanhos dos modelos a serem analizados e por evitar a enumeração de produtos inerentes a alguns métodos de análise do estado da arte.
O reuso de processos de software pode ser considerado como um fator de impacto para a qualidade de software por utilizar maneiras de desenvolvimento já testadas e consagradas na organização desenvolvedora. Este trabalho apresenta uma proposta de reuso de processos inspirada no Desenvolvimento Baseado em Componentes de software e que faz uso de conhecimento para sua realização. Essa proposta considera os aspectos técnicos, organizacionais e humanos de um processo de software, mas também o conhecimento adquirido em suas execuções passadas. Reutilizar processos previamente executados (e portanto conhecidos) tende aumentar a qualidade do novo processo à medida em que este se torna mais estável. Espera-se que este método de reuso seja eficaz para definições de novos processos de software.
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.