Muito se discute e existem várias controvérsias sobre a necessidade da documentação de sistemas. Por exemplo, em metodologias tradicionais geralmente ela é exigida. Já em metodologias ágeis essa formalidade possui pouca ênfase pois um dos valores do chamado Manifesto Ágil para Desenvolvimento de Software diz que “software funcionando vem antes de documentação abrangente”. No entanto, isso não quer dizer que documentação não seja importante mesmo em projetos ágeis.

Na verdade, acontece que muitos profissionais não veem a necessidade de desenvolver documentação tanto em alto nível (especificação de sistemas) quanto em baixo nível (relacionados ao código fonte), por exemplo. Por esse motivo, em muitas empresas a documentação dos produtos de software é comumente incompleta e desatualizada, isso quando existe.

Em situações mais críticas, ela está somente na cabeça de algumas poucas pessoas sendo elas as únicas fontes de informações. O que irá acontecer quando por ventura estes profissionais não estiverem mais na equipe?

Levando-se em consideração esse cenário, esta aversão quanto à documentação ocorre devido a alguns aspectos conhecidos, tais como:

  • Dificuldade em desenvolver e manter a documentação atualizada;
  • Grande volume de informações a serem gerenciadas;
  • Mudanças constantes nos projetos;
  • Custos operacionais e financeiros envolvidos.

Apesar dos desafios existentes, há de se convir que algum nível de registro das informações se faz necessário. Ademais, existem também bons motivos para empregar esforços nessa empreitada.

Continue lendo e conheça alguns deles a seguir.

1 – Facilitar a Comunicação

Uma documentação clara e objetiva facilita a comunicação entre todos os envolvidos no projeto. Em equipes distribuídas geograficamente, por exemplo, o uso de documentação formal ajuda a organizar o trabalho, aumenta a produtividade e melhora a colaboração entre os membros do time, cliente e demais partes interessadas.

Em contextos ágeis, as estórias de usuário podem e devem servir como documentação do produto desenvolvido, servindo como fonte de informações visto que são escritas em uma linguagem clara e de alto nível o que facilita o entendimento por parte de todos.

Concluir que documentar não faz sentido pode ter efeito oposto e limitar a comunicação ao invés de facilitá-la.

2 – Auxiliar no Controle da Qualidade

Todo tipo de documentação do sistema pode servir como guia para o planejamento e execução das atividades de Teste. O documento de requisitos pode servir de base para a criação do Plano de Teste com o objetivo de listar todas as atividades a serem executadas, criação dos Casos de Teste, entre outros.

Inclusive, um dos objetivos do Teste de Software é verificar se o produto atende e está de acordo com a sua especificação.

Um cuidado que se deve ter neste caso é averiguar a Qualidade desta documentação, ou seja, se a mesma não possui informações confusas, ambiguidades, requisitos incorretos, entre outros, para garantir que a Confiabilidade dos Testes não seja afetada.

Cabe citar que o contrário também é verdadeiro, ou seja, Procedimentos de Testes podem ser utilizados como documentação através das informações do Projeto de Teste.

3 – Prover aos usuários recursos de ajuda

Um Manual de Usuário de fácil compreensão permite que as pessoas tenham uma visão geral do produto e de suas funções obtendo o conhecimento necessário para a sua utilização. Este tipo de material descreve passos para utilizar telas do sistema, ações para executar processos de negócio e demais informações referentes as operações do software.

Temos alguns Cases na Testing Company em que elaboramos esse tipo de material e o mesmo foi utilizado para a realização de treinamento e capacitação de usuários.

4 – Auxiliar no Controle de Mudanças

Registrar as mudanças em um documento específico facilita o controle das manutenções realizadas no sistema. Neste caso, a atualização das informações pode ser feita a cada nova versão gerada e estas devem estar condizentes com o que foi implementado.

Documentos referentes a Gestão da Configuração que descrevem procedimentos a serem seguidos e ferramentas a serem utilizadas no controle de modificações são essenciais pois registram os processos utilizados durante os processos de manutenção do software.

5 – Dar suporte aos Processos

Existem diferentes tipos de documentação, tais como: especificação técnica, help online, manual do usuário, descrição dos casos de uso, documento de visão do negócio, especificação de requisitos, documentação das regras de negócio e muitas outras. Certamente algum destes materiais poderá servir de suporte para a execução de algum procedimento operacional da sua empresa.

Dica: Existem ferramentas colaborativas do tipo (WIKI) que auxiliam na colaboração em projetos e facilitam a criação e acesso a documentação em tempo real.

Como foi abordado, manter uma documentação atualizada é um grande desafio e cabe aos responsáveis entender a importância e destinar uma parcela do tempo da equipe exclusivamente para esta tarefa.

Com base no que foi exposto, cada empresa deve escolher a sua forma de documentar e o nível apropriado de detalhe para extrair os melhores resultados. O ideal é que cada organização defina o nível de documentação que atenda às suas necessidades e que esta seja útil e de fácil entendimento por aqueles que a utilizam.

Gostou do nosso texto? Deixe seu comentário e compartilhe nas suas redes sociais.

Quer receber conteúdos atualizados sobre Melhoria de Sistemas e Aplicativos? Deixe agora seu e-mail no nosso cadastro de newsletter.

Escrito por Cristiano Baumgartner