Como documentar / verificar camadas consistentes?

5

Recentemente, mudei para o lado sombrio: agora sou um CLIENTE de desenvolvimento de software - principalmente websites. Com esse novo papel, surgem novas preocupações.

Como programador, sei o quão sólida um aplicativo se torna quando está em camadas, e quero usar esse conhecimento em meu novo trabalho. Eu não quero lógica de negócios na minha camada de apresentação, e certamente não material de apresentação na minha camada de dados. Assim, eu quero ser capaz de exigir do meu fornecedor que eles documentem o nível de camadas e quão nítidas e consistentes são as camadas.

A grande questão é: como o nível de camadas é documentado para mim como um cliente, e isso é uma exigência razoável para eu ter, então eu não tenho que procurar no código (eu não deveria fazer mais isso?

    
por Morten 21.11.2011 / 10:31
fonte

2 respostas

6

Isso é razoável - como um cliente, você pode exigir o que quiser e usar boas camadas como uma indicação da qualidade do código e da separação de interesses é um requisito válido.

Existem muitas ferramentas por aí que ajudarão com essa documentação - algumas delas produzirão uma imagem do Gráfico Acíclico Dirigido , mostrando que as camadas inferiores inferiores não estão chamando os níveis mais altos. Algumas ferramentas de análise estática também o farão.

Obter uma representação do DAG é provavelmente o que lhe dará mais ideia sobre como a camada funciona na base de código.

No mundo do .NET, NDepend é uma boa ferramenta comercial que ajudará a visualizar a arquitetura de alto nível e a disposição em camadas de um aplicativo.

    
por 21.11.2011 / 10:38
fonte
2

Você trabalhou como programador, provavelmente viu projetos falharem / demorarem mais do que o esperado e você sabe que não quer isso como cliente.

Você tem todo o direito de exigir tal coisa.

O que eu sugiro é que, além de documentar as camadas do aplicativo, eles executem seus testes de unidade / integração à sua frente.

Como eles organizam seus testes, você saberá mais sobre o código do que apenas a documentação e nem precisará vê-lo.

    
por 21.11.2011 / 10:47
fonte