Documentação de Código
O cerne de qualquer processo de Desenvolvimento de Software é a documentação. O desenvolvimento é tão fácil quanto mais fácil for a linguagem utilizada em sua escrita e mais rica em detalhes para que o desenvolvedor possa tirar suas dúvidas no momento de codificar.
Nosso repositórios adotam uma prática muito comum, o uso de issues como fonte de documentação. As issues poderão estar relacionadas a várias tasks menores, mas uma issue deverá ser suficientemente capaz de conter uma descrição do que será desenvolvido. Cada projeto terá um time de negócio envolvido na construção desta documentação e sua aprovação ocorre no âmbito do de uma comissão tripartite.
De forma a padronizar os esforços, cada repositório possui templates para abertura de novas issues, conforme segue:
Bugfix
Compreende o conjunto de issues abertas com o objetivo de corrigir comportamentos ou alterar a aplicação em casos de inconformidade com a documentação descrita. Por padrão, esta documentação deve conter:
- Título: Deve conter o prefixo "[BUGFIX]" seguido de uma descrição curta do problema.
- Descrição: Uma descxrição detalhada do problema a ser corrigido.
- Como Reproduzir: Um passo a passo para reproduzir o problema/inconformidade alvo da mudança.
- Comportamento esperado: Uma descrição clara de como a aplicação precisa se comportar.
- Screenshots: Prints de tela demonstrando o problema.
- Desktop: Uma descrição do ambiente usado onde o problema/inconformidade foi gerado.
- Contexto Adicional: Qualquer observação que se julgue relevante para o caso.
## Descrição
Faça uma descrição clara e concisa do que é o bug.
## Como Reproduzir
Inclua um passo a passo para que seja possível reproduzir o erro.
## Comportamento Esperado
Uma descrição clara e concisa do que você esperava que acontecesse.
## Screenshots
Se aplicável, adicione capturas de tela para ajudar a explicar seu problema.
## Desktop (por favor preencha as seguintes informações):
- Sistema Operacional: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
## Contexto Adicional (Opcional)
Adicione qualquer outro contexto sobre o problema aqui.
Feature Request
Este é o documento que trata de mudanças no código que implementam algo novo, ou seja, novos recursos ou mudanças de comportamento em recursos existentes. Por padrão, esta documentação deve conter:
- Título: Deve conter o prefixo "[FEATURE]" seguido com uma descrição negocial simples e objetiva do que se propõe a mudança a ser implementada.
- Descrição: Uma descrição detalhada da mudança e como ela deverá ser aplicada à aplicação de interesse.
- Detalhes Técnicos: Este campo é destinado a detalhes relacionados a implementação podendo conter requisitos funcionais, não funcionais, critérios de aceitação, modelos de dados, diagramas e qualquer recurso que apoie o entendimento do desenvolvedor no processo de implementação do recurso.
- Benefícios: Texto descritivo com benefícios esperados da implementação proposta.
- Informações Adicionais: Campo aberto para que o documentador posso inserir qualquer outro detalhe/recurso que julgar relevante ao entendimento da feature.
## Descrição
Insira aqui o texto
## Detalhes Técnicos:
Insira aqui o texto
## Benefícios
Insira aqui seu texto
## Informações adicionais
Documentação fora do padrão descrito
Qualquer documentação submetida a avaliação fora dos padrões descritos neste capítulo será fechada e um comentário com requisição de mudança será adicionado para orientar melhoria na issue em questão.