Evolução do software
Arquitetura de Software.
Danielle P. Noronha Pontes1, Reginaldo Arakaki 2
1 Escola Superior de Tecnologia – Universidade Estadual do Amazonas (UEA) / MINTER(UEA/USP), Manaus – AM - Brasil
2
Engenharia da Computação e Sistemas Digitais - Universidade de São Paulo, São Paulo – SP – Brasil dani@doctortech.com.br,reginaldo.arakaki@poli.usp.br Resumo. Este trabalho discorre sobre o estudo da utilização do método de avaliação ATAM como referência para evolução arquitetural de um sistema legado. O estudo apresentado está dividido em duas partes: a elaboração de um roteiro para evolução de software e a aplicação do roteiro em um ambiente real de um sistema para automação de linhas aéreas. Um dos objetivos é aplicar a correlação entre a evolução arquitetural e os requisitos não-funcionais. As decisões arquiteturais para a evolução do software são tomadas com base nas evidências obtidas na avaliação arquitetural realizada a partir dos atributos de qualidade estabelecidos como meta.
1. Introdução
O processo de envelhecimento de um software é natural e inevitável, o que gera uma necessidade constante de evolução dos sistemas que precisam ser mantidos ativos por um período longo de tempo. Com o decorrer do tempo os sistemas corporativos instanciados no mercado podem apresentar problemas estruturais que afetam requisitos fundamentais de qualidade tais como: integração, flexibilidade, portabilidade, qualidade do serviço e segurança demandando uma evolução estrutural para atender as novas exigências e aumentar o tempo de vida do sistema. [Svahnberg, 2003]. Entretanto a alta complexidade dos sistemas dificulta as tentativas de substituição de plataforma, sistema ou fornecedor.
A evolução do software é um fato contínuo no ciclo de vida de um software, mas mudar sistemas sem técnica pode prejudicar alguns aspectos de qualidade da arquitetura. Para decidir como implementar as mudanças, é preciso usar um