É impossível representar todas as informações relevantes sobre a arquitetura de um sistema em um único modelo de arquitetura, pois cada modelo mostra apenas uma visão ou perspectiva do sistema -- Somerville
A frase acima é mostrada no livro de Sommervile para discutir a necessidade de múltiplas visões da arquitetura de software. O autor discute o modelo de visão 4+1, que relaciona-se usando casos de usos ou cenários.
- Visão lógica
- Visão de processo
- Visão de desenvolvimento
- Visão física
Descreva as visões mencionadas anteriormente.
Sommerville discute sobre os desafios de elaborar uma documentação detalhada de projeto, principalmente no desenvolvimento ágil. Entretanto, o autor reforça a importância desta análise em alguns cenários:
Os usuários de métodos ágeis alegam que, na maior parte do tempo, a documentação detalhada de projeto não é usada. E, portanto, desenvolvê-la seria um desperdício de tempo e dinheiro. Pessoalmente, eu concordo com essa opinião e penso que, na maioria dos sistemas, não vale a pena desenvolver uma descrição de arqui- tetura detalhada a partir dessas quatro visões. Você deve desenvolver visões úteis para a comunicação, e não se preocupar se sua documentação de arquitetura está completa ou não. No entanto, a exceção é quando você está desenvolvendo sistemas críticos, quando você precisa fazer uma análise detalhada da confiança do sistema. Pode ser necessário convencer os reguladores externos de que o sistema está de acordo com suas regras, e, então, a documentação completa da arquitetura pode ser necessária.
Você concorda com a observação do autor? Pense em um cenário em que a arquitetura detalhada do projeto pode ser útil.
Software Engineering. Ian Sommerville. 9ed.:
- Capítulo 6.2 - Visões da arquitetura
P. B. Kruchten, The 4+1 View Model of architecture, IEEE Software, vol. 12, no. 6, pp. 42-50, Nov. 1995.
Sistemas Distribuídos: Princípios e Paradgmas. Tanenbaum e Steen, 2.ed.
- Capítulo 1.1 - Definição de Sistemas Distribuídos