[quote=victorwss][quote=sergiotaborda]Acho que vc quiz dizer que o arquiteto deve estar envolvido com o codigo.
Sim e não. Se ele fizer isso as decisões não serão imparciais no sentido que não serão apenas baseadas nos requisitos. Ele vai escolher o que é mais facil. Ou seja, irá corromper o sistema.[/quote]
O que você disse é em geral uma visão bem interessante, mas isto daí que você citou é uma falácia. Se o cara escolher o mais fácil é porque ele é simplesmente preguiçoso e não está fazendo o trabalho dele corretamente. Dizer que se ele estiver envolvido no código vai corromper o sistema é um absurdo. Tentação para ir do jeito mais fácil e preguiçoso e enfiar gambiarra todo mundo tem, mas não é só porque ele vê o código que ele vai ceder a isso. Muito pelo contrário, o fato dele estar uma espécie de QA no código do desenvolvedor evita que ocorram gambiarras ou que o desenvolvedor tome decisões erradas na codificação.[/quote]
Veja, se o cara não mexe no código que ele definiu ele não tem como cair em tentação. O ponto está em poder ou não cair e não se cai realmente. Por outro lado, na hora que ele é programador ele não é arquiteto. Se ele é QA não é programador.
Como arquiteto é provavelmente um não-programador é possivel que ele faça mais gambiarras que o verdadeiro programador porque ele não está habituado. Ou seja, ele vai trabalhar contra o que ele mesmo especificou. Tlv vc parta do principio que o arquiteto sabe programar na linguagem usada. Eu não parto desse principio porque a linguagem não é um fator na hora de escolher a arquitetura ( a plataforma sim, a linguagem não)
Eu entendo a sua idéia de “policiamento” que o arquiteto deveria manter do código, mas não concordo. Isso é o papel do desenvolvedor. Se o desenvovedor for ruim, o sistema não passa no teste definido pelo arquiteto , é tão simples assim. Se passa no teste não importa como ele passa. Ou seja, não importa funciona, desde que funcione.
O papel de verificar se por exemplo o checkstyle ou PMD está sendo respeitado , se os padrões estão bem implementados , etc… é do desenvolvedor ( na realidade é de todos os programadores, mas quem puxa a orelha é o desenvovledor)