4 - Modificabilidade

Todos os arquitetos de software estão cientes de que modificações em um sistema de software durante a sua vida útil são simplesmente um fato da vida. E, por este motivo, deve-se considerar a probabilidade de alteração no aplicativo uma boa prática durante definição da arquitetura. Quanto mais flexibilidade puder ser considerada no projeto inicial, menos dolorosas e caras serão as alterações.

A modificabilidade é uma medida de quão fácil pode ser para mudar uma aplicação para atender a novos requisitos funcionais e não funcionais.

Observe o uso de "pode" na frase anterior. Prever modificações requer uma estimativa de esforço e custo para fazer uma alteração e a realidade é que você só saberá ao certo quanto vai custar uma mudança depois de ter sido feita.

A medida de modificabilidade só é relevante no contexto de uma determinada solução arquitetônica. Esta solução deve ser expressa como um conjunto de componentes, as relações entre estes componentes e uma descrição de como os componentes interagem com o ambiente. Avaliar a modificabilidade requer que o arquiteto defina prováveis cenários de mudanças que capturam como os requisitos podem evoluir. Às vezes estes serão conhecidos com um grau razoável de certeza.

Na verdade, as mudanças podem até ser especificadas no plano de projeto para versões subsequentes. Na maioria das vezes, porém, as possíveis modificações terão de ser elicitadas pelos stakeholders, e definidas pela experiência do arquiteto.

Copyright © 2016 AIEC.