O manifesto ágil cita que “software funcional é mais importante do que documentação extensa”. A partir dessa declaração foi criado um mito na comunidade de TI de que projeto ágil não precisa de documentação. A abordagem tradicional gerou um volume excessivo de documentos complexos de difícil entendimento e acesso, resultando na aversão à documentação de projetos. Em contrapartida, a metodologia de desenvolvimento ágil defende a adaptação de melhores práticas no desenvolvimento de projetos através de documentos e bibliotecas eficientes e funcionais, comunicação e compartilhamento, colaboração e participação. A aplicação de práticas de documentação ágil permite alcançar artefatos claros e objetivos, acompanhando a transformação e evolução de tecnologias e plataformas tecnológicas.
A documentação é essencial para apresentação e qualidade dos projetos, facilita a criação e o desenvolvimento do software, a comunicação entre membros da equipe, a comunicação entre equipe e cliente/usuário e aumenta a percepção do cliente quanto à usabilidade/operação do software. Novas plataformas tecnológicas são apresentadas a cada minuto, dando origem a novas e modernas aplicações. Um software mal elaborado apresenta uma documentação defasada e fatalmente não terá evoluções e respostas rápidas e não irá obter uma boa aceitação. Além disso, desenvolvedores acabam gastando muito tempo para a correção dos erros e redundâncias geradas em cima de regras e requisitos mal interpretados. Todo processo bem documentado contribui significativamente para a popularização do software e da equipe de desenvolvimento.
A documentação deve possuir a devida atenção dentro do ciclo de desenvolvimento do projeto. O ideal é que a documentação seja tratada como parte integrante de todo o projeto, deve acompanhar todas as etapas e processos implementados, todas as áreas de conhecimento do ciclo de vida do software. O projeto deve possuir uma biblioteca composta dos principais documentos do projeto. Documentos atualizados, refinados conforme o software vai sendo modelado, estudados e implementados, e de conhecimento de todos os envolvidos no projeto. Desde o marco inicial até final do projeto, os artefatos devem ser criados alimentando as bibliotecas do sistema. Esse método, se bem aplicado, serve de base para o sucesso no desenvolvimento de outros projetos. Claro que não existem receitas ou roteiros a serem seguidos passo a passo, mas projetos ágeis são adaptações positivas para um bom desempenho no trabalho da equipe e projeto. A documentação adequada contribui claramente para o aumento da qualidade do software e para a qualidade e motivação da equipe, resultando na satisfação do usuário final e na conformidade com os requisitos para os quais o software foi projetado.
Neste artigo, a ênfase será nos artefatos gerados dentro de cada etapa do ciclo de desenvolvimento de um projeto de software. A proposta é que engenheiros e arquitetos fiquem atentos às bibliotecas e documentos dos projetos, alertando equipes de desenvolvimento sobre a importância dos artefatos que envolvem os sistemas.
Documentação
A documentação de um projeto de desenvolvimento de software consiste em um conjunto de manuais gerais e técnicos, podendo ser organizada em forma de textos e/ou comentários, registros de ideias (brainstorming) classificados como: dicionários, diagramas e fluxogramas, gráficos, desenhos, gerenciadores, dentre outros.
Algumas empresas de desenvolvimento de software contam com um responsável pela documentação do projeto, um profissional encarregado de documentar e/ou acompanhar os documentos para garantir que a biblioteca do projeto esteja ativa. Esse responsável conhece todas as etapas do ciclo de desenvolvimento, sendo um especialista em engenharia e arquitetura de software.
Das definições de engenharia de software, a mais adequada para a documentação de projetos é que ela é uma área da computação voltada para a especificação, desenvolvimento e manutenção de sistemas de software, com aplicação de tecnologias e práticas de gerência de projetos e outras disciplinas visando organização, produtividade e qualidade.
Quando documentar
Os criadores da UML reforçam a importância do planejamento do software e de sua documentação comparando sua construção à construção de casas e prédios. Citam que assim como o projeto arquitetônico e o de engenharia de um imóvel, o desenvolvimento de software deve ser orientado e guiado por passos documentados. O segredo de um software bem-sucedido é uma questão de arquitetura, processo e ferramentas bem planejadas.
A documentação deve ser feita ao longo de todo o desenvolvimento do software. Sua construção deve:
- Comunicar a estrutura e o comportamento do sistema;
- Visualizar e controlar a arquitetura do sistema;
- Expor oportunidades de simplificação e reaproveitamento;
- Compor o estudo de gerenciamento de riscos.
Por que documentar?
Existem duas razões básicas para documentar: auxiliar a comunicação durante o desenvolvimento do software e auxiliar o entendimento nas atividades de manutenção e atualização quando se fizerem necessárias.
Estudos afirmam que mais de 50% do trabalho de evoluç ...
Confira outros conteúdos:
Perguntas frequentes
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.