0210500 04 cap 03
3755 palavras
16 páginas
3 - Evolução de SoftwareUm projeto de software livre dificilmente chega a um final definitivo, já que mesmo quando o software atinge um estágio de desenvolvimento considerado satisfatório para os autores, este estágio pode não ser satisfatório para todos os demais usuários do projeto. Mesmo que o grupo de desenvolvedores originais abandone o projeto em algum momento, nada impede que outros desenvolvedores continuem o desenvolvimento do projeto em uma versão paralela ou mesmo assumam a administração da original (com a permissão dos autores).
Esse fato nos permite dizer que um projeto de software livre está em um contínuo processo evolutivo. Neste capítulo será mostrado uma introdução a
PUC-Rio - Certificação Digital Nº 0210500/CB
evolução de software, a sua importância e como ela se aplica ao software livre.
3.1 - Introdução sobre evolução de software
Um software nada mais é do que uma seqüência lógica de algoritmos, o que nos leva a crer que uma vez que um software realize corretamente os requisitos estabelecidos para os quais ele foi construído, ele nunca mais precisará ser modificado, assumir isto é um erro, pois sistemas sofrem de um processo semelhante ao envelhecimento humano.
3.1.1 O processo de envelhecimento de software
O mundo real está em constante mudança, e sistemas são feitos para refletir comportamentos do mundo real [Gall97], logo é necessário que o software acompanhe as mudanças de requisitos impostas pelo ambiente na qual ele está inserido. Uma falha em acompanhar essas mudanças pode implicar em perda de qualidade por parte do software ou até mesmo no fim da sua vida útil.
O envelhecimento de um software é um processo inevitável, mas podemos tentar entender suas causas, tomar medidas para limitar seus efeitos,
36
temporariamente reverter os danos causados por ele e se preparar para o dia em que este software não seja mais viável [Lorge94].
Ainda segundo [Lorge94], existem dois tipos de envelhecimento de software: o primeiro ocorre