Please use this identifier to cite or link to this item: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/8590
Title: CASTOR: uma técnica de verificação de conformidade para arquiteturas de software baseada em componentes.
Other Titles: CASTOR: a technique for verifying compliance for architectures of component-based software.
???metadata.dc.creator???: SILVA JÚNIOR, Rogério Dourado.
???metadata.dc.contributor.advisor1???: FIGUEIREDO, Jorge César Abrantes de.
???metadata.dc.contributor.advisor2???: GUERRERO, Dalton Dario Serey.
???metadata.dc.contributor.referee1???: GARCIA , Francilene Procópio.
???metadata.dc.contributor.referee2???: CHAVEZ, Cristina Von Flach Garcia.
Keywords: Deterioração de Software;Componentes;Arquitetura de Software;Software Deterioration;Components;Software Architecture
Issue Date: 10-Feb-2006
Publisher: Universidade Federal de Campina Grande
Citation: SILVA JÚNIOR, R. D. CASTOR: uma técnica de verificação de conformidade para arquiteturas de software baseada em componentes. 2006. 98 f. Dissertação (Mestrado em Ciência da Computação) – Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2006. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/8590
???metadata.dc.description.resumo???: Cada vez mais o software está presente em todos os aspectos do cotidiano das pessoas. Existe uma forte tendência para o crescimento da complexidade, tamanho, e domínios de aplicação dos programas desenvolvidos. Com efeito, o desenvolvimento de software não pode ser mais concebido como uma atividade individual, e sim como um processo essencialmente coletivo. Além disso, são grandes as pressões para que empresas de software sacrifiquem a qualidade de seus produtos para que estes cheguem mais rapidamente ao mercado consumidor. Neste cenário, dois problemas são recorrentes: a deterioração de software e a ausência de integridade conceitual. O primeiro decorre da natural evolução do software diante do surgimento de novos requisitos e restrições. Sem o devido cuidado, as constantes mudanças no projeto podem desfigurá-lo a tal ponto que se torne extremamente dispendioso compreendê-lo. Isso acaba por acarretar na baixa qualidade do código, na alta taxa de erros e no aumento dos custos do projeto. O segundo problema refere-se à dificuldade em se manter, entre a própria equipe de desenvolvimento, a uniformidade dos conceitos e abstrações utilizados ao longo do projeto. Nesse caso, o produto final normalmente é caracterizado por um conjunto não coeso de funcionalidades e aspectos divergentes. Este trabalho aborda tais problemas através do papel que a arquitetura de software pode exercer como um referencial para a evolução do código (desde sua concepção inicial até ser retirado de uso). Mais especificamente, ela serve como base para avaliar se o código se desviou do que fora projetado. Dessa forma é possível detectar sinais da deterioração do software, bem como qualquer tentativa, por parte de algum desenvolvedor, de violar a integridade resumida na arquitetura consensualmente estabelecida. Diante do exposto, o objetivo deste trabalho é a formulação de uma técnica capaz de automaticamente fornecer as evidências de que certa implementação não está em conformidade com seu modelo arquitetural. Dessa forma, esperamos contribuir na melhoria da qualidade do software no que tange aos problemas levantados.
Abstract: Software plays a critical role in almost every facet of our daily life. While complexity and size are increased by new features and advanced software requirements, the pressure is higher than ever to reduce the time required for designing, prototyping, testing and manufacturing. The results are low-quality products with high software failure rates. In this context, two problems are frequent: software deterioration and the lack of conceptual integrity. The former one is due to the natural evolution of the software since the initial stages of development. Changes are part of the process, but if not well managed they can disfigure the projet to a such point that it becomes very hard to understand and maintain. The latter refers to the difficulty to keep uniform the concepts and abstractions used by the team along the implementation phases. The more lack of conceptual integrity more the system tends to exhibit low cohesion of functionalities and divergent aspects. This work approaches such problems relying on software architecture as a reference model to the code evolution. More specifically, we investigate how to evaluate such model against the software in order to reveal discrepancies. So it becomes possible to identify signs of software deterioration, as well as violations of the integrity consensually established in the architecutral documents. In summary, the purpose of this work is the development of a technique capable to provide the necessary evidences that certain code does not conform to the intended design. In this way, we hope to contribute improving the software quality concerned to the presented problems.
Keywords: Deterioração de Software
Componentes
Arquitetura de Software
Software Deterioration
Components
Software Architecture
???metadata.dc.subject.cnpq???: Ciência da Computação
URI: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/8590
Appears in Collections:Mestrado em Ciência da Computação.

Files in This Item:
File Description SizeFormat 
ROGÉRIO DOURADO SILVA JÚNIOR - DISSERTAÇÃO (PPGCC) 2006.Rogério Dourado Silva Júnior - Dissertação (PPGCC) 2006.876.24 kBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.