A “Arte da Guerra” e a tecnologia

É possível que para muitos o título possa parecer de uma estranheza absurda, quase atroz talvez, ou mesmo sem nexo. No entanto o título indica exactamente o que é pretendido, ao abordar a aplicação de um livro que data do século V AC, escrito por um estratega militar chinês, Sun Tzu.

O que pode ter um texto sobre guerra a ver com software? Talvez mais do que se imagina, pois muitos dos princípios descritos no livro, têm uma aplicação bastante mais vasta que a vertente bélica, havendo inclusive já estudos sobre a aplicação desses princípios a vertentes como a gestão e o negócio.

O livro, encontra-se dividido em treze capítulos, cada um dedicado a um aspecto concreto, que apesar da amplitude do texto, denota sempre a vertente bélica do mesmo. No entanto isto não invalida a sua aplicação ao software! Ora vejamos.

Avaliação detalhada e planeamento (始計,始计)

Quanto mais detalhada for uma avaliação, maior é a quantidade de informação disponível no momento de definir os planos de acção. Como em todas as tarefas o planeamento de execução depende em grande parte de uma avaliação sólida e consistente. Por exemplo, quando se vai executar um novo projecto, uma ideia “fora da caixa”, ou nos é pedida a execução de uma tarefa, quanto mais detalhada for a avaliação da mesma, melhor será o planeamento da execução. Poderemos avaliar em mais detalhes o que terá de ser feito, como o fazer, que caminhos seguir e que caminhos evitar, a interferência de factores como o tempo disponível, etc… que irão inferir no sucesso da “batalha”, no caso do desenvolvimento, não seria bem “uma batalha”, mas antes um “desafio”, ou uma tarefa.

O planeamento é uma das mais importantes fases de uma tarefa. Ainda que pareça que planeamento é “conversa de gestor de projecto”, também muitas vezes chamado de “o tipo que acha que nove mulheres conseguem gerar um filho em um mês”, na verdade planeamento é algo transversal a quem lidera, a quem coordena, a quem executa! Um líder define um plano, no entanto cada executante terá de planear pelo menos o uso do seu tempo, conjugado com o tempo disponível, considerando as variáveis que estão dentro da sua esfera de controlo, para melhor utilizar o tempo disponibilizado, para realizar a sua tarefa, num plano maior que é definido pelo “líder”.

Agora, o general que ganha uma batalha faz muitos cálculos em seu templo antes que a batalha seja travada. (Sun Tzu)

Para contextualizar a citação, convém referir que na época em que o livro foi escrito, os templos eram edificações de grande envergadura, considerados de propósito nobre e eram muitas vezes utilizados como quartéis generais, na véspera de partidas para campanhas militares. Nestes edifícios eram traçados os planos, estudadas as estratégias e finalizados os planos gerais, que seriam utilizados na batalha que se avizinharia.

De uma forma muito sucinta, poderia dizer-se que o “vencedor” planeia antecipadamente, ainda que se possa vir a alterar os planos de forma flexível, existem sempre planos iniciais, o que por si só implica uma avaliação metódica da “tarefa” e das circunstâncias que a envolvem.

Exactamente como no desenvolvimento de software, no projecto de um sistema informático complexo, no planeamento de uma rede, etc… O sucesso da execução, depende sempre de uma avaliação cuidada dos objectivos a cumprir e de um planeamento cuidado de como os cumprir!

[...]

Leia o artigo completo na edição 57 da Revista PROGRAMAR

Publicado na edição 57 (PDF) da Revista PROGRAMAR.