Code as Design

Li a semana passada o artigo de 1992 Code as Design de Jack W. Reeves.
Na altura em que foi publicado este artigo ainda nem sequer tinha entrado na faculdade, mas 3/4 anos mais tarde, nas disciplinas de sistemas de informação, ainda nos tentavam impingir a ideia de que seguindo metodologias de desenvolvimento rigidas (no meu caso o SSADM) que nos obrigava a produzir (quase) obrigatoriamente documentos, diagramas e outras tralhas no fim poderiamos entregar isso a uns programadores (tipo escravos) e, como que por magia, pouco tempo depois teriamos um produto (neste caso um software) de acordo com o pretendido. se isso não acontecesse a resposta era fácil… a análise tinha sido mal feita. nunca me explicaram que um cliente muda de ideias durante o desenvolvimento, que normalmente não consegue explicar aquilo que pretende que um software faça, ou pior não sabe o que o software pode fazer por ele.
Este artigo, velho de 13 anos, vinha questionar essa ideia da análise/levantamento de requisitos como fase estanque do desenvolvimento ou pelo menos como algo que pode ser feito por alguém que depois não tem um acompanhamento próximo do projecto na fase de codificação do mesmo.
a ideia geral, pareceu-me, parte do seguinte principio, o produto que queremos desenvolver é um sistema de informação que (pelo menos por enquanto) tem que ser desenvolvido numa linguagem de programação. ou seja programar é algo a que não vamos poder fugir. não diz para deitar fora todas as ferramentas de análise que foram desenvolvidas ao longo dos tempos ou que 5 minutos depois da reunião com o cliente nos sentemos em frente ao computador e comecemos a programar. simplesmente constata que qualquer que seja o percurso, no fim terá que se programar.
mais do que isso, assume a programação como uma parte “criativa” do processo de desenvolvimento. criativa no sentido de que involve pensar num problema, encontrar uma solução razoável e implementá-la. não é um simples olhar para especificações definidas pelo consultor xpto e mecânicamente convertê-lo num pedaço de código.

por Vitor Silva



Comments are closed.