Home | Escopo | Processo | Design/Mockups | Configuração | Arquitetura | Banco de Dados |
---|
Esta seção é dedicada a apresentar o processo de desenvolvimento do time, junto dela serão apresentados documentos referentes a maneira como o time se organizou e trabalha.
♾️ Git Workflow
Para mantermos os repositórios organizados, utilizaremos o Gitflow, que é um modelo alternativo de ramificação do Git que consiste no uso de ramificações de recursos (feature) ou consertos (hotfix) a partir de duas branches primárias (Main e Development).
- Main: A branch principal, tendo todo o código final, validado e testado;
- Development: A branch de desenvolvimento (dev), onde irá organizar os trabalhos realizados.
Mais sobre o Git Workflow
✅ Acceptance Criteria (Critério de Aceitação)
Para que uma tarefa seja considerada pronta, ela deve preencher todos requisitos que estão na task no board de tasks:
🛠 ️ Padrões Utilizados
Idioma padrão
Todas as branches, commits e merge requests podem ser descritos em português ou inglês.
🔱 Branches
Cada branch relacionada a features/hotfixes será criada a partir da branch development.
Nomes:
Como padrão para nomes de branches, foi decidido que usaremos o CamelCase:
<tipoDeItem>/<nomeDoItem>
Exemplo:
feature/telaDeProcessamento, hotfix/alterTableBanco
Criação:
Para garantir que o processo de desenvolvimento esteja sempre atualizado, lembre-se de executar o seguinte comando na branch development (dev) antes de criar uma branch nova:
git pull origin dev # Atualiza a branch dev para a versão mais recente
# Depois da execução desse comando é necessário oficialmente criar a Branch, para isso, execute o seguinte comando:
git checkout -b <nomeDaBranch> # Cria uma nova branch.
# Assim que criar a branch, é necessário fazer um push para garantir que a mesma estará remota:
git push --set-upstream origin <nomeDaBranch>
Pronto! Agora você já pode começar a programar na sua Branch.
💾 Commits
Para que o código desenvolvido seja salvo em sua branch de maneira remota, é necessário realizar os comandos de commit e push.
Para garantir que apenas o código necessário para funcionamento da tarefa será commitado, lembre-se de realizar o comando add apenas nos arquivos essenciais para a tarefa.
Depois de adicionar todos os arquivos que deseja salvar, execute o commando de commit com uma mensagem curta que represente o que foi trabalhado nesses arquivos adicionados.
Em seguida, não esqueça de dar um push para salvar remotamente.
git add <nomeDoArquivo> # Adiciona os arquivos alterados ou criados ao Commit
git commit -m 'descrição da tarefa em português ou inglês' # Salva localmente as alterações com uma descrição obrigatória
# Para commits onde teve participação de mais de um autor. Siga o exemplo abaixo:
git commit -m 'descrição da tarefa em português ou inglês'
Co-Authored-By: Nome Sobrenome <[email protected]>
git push # Salva as alterações remotamente
Tipos de Commit:
- "
feature
", para descrever funcionalidades adicionadas; - "
fix
", para descrever soluções de problemas; - "
docs
", para identificar trabalho na documentação do projeto; - "
build
", para identificar trabalho na configuração do projeto.
Exemplos de uso:
feature: Implementation of the input button.
fix: Correcting the submission of information to the database.
docs: Describe commit patterns.
build: Dependencies updates.
〽 ️ Merge Requests
Um merge request (MR) deve ser criado somente quando a tarefa estiver concluída, com critérios de aceitação prontos.
Criação:
A criação pode ser realizada na seção Merge Requests do repositório em que a branch foi criada. Clicando no botão New Merge Request siga os seguintes passos:
- Selecionar a branch de origem (sua branch de desenvolvimento);
- Selecionar a branch de destino (branch dev);
- Selecione
Compare branches and continue
; - Em
Title
, escreva um título que descreva a funcionalidade adicionada ou bug corrigido; - Em
Description
, escreva uma descrição com uma breve justificativa nos arquivos que foram alterados; - Caso a tarefa seja visual (criação de componente/tela, correção de bug) adicione um gif exemplificando o uso (se considerar necessário);
- Na seção
Assignee
, selecioneAssign to me
para que fique registrado quem foi o responsável pelo desenvolvimento daquela tarefa (a pessoa selecionada será chamada caso o revisor tenha dúvidas sobre a tarefa); - Em
Milestone
selecione a Sprint em que a tarefa foi realizada; - Em
Labels
selecione qual é o tipo de tarefa que foi realizada; - Por último, revise se os arquivos que estão sendo enviados estão corretos e clique em
Submit Merge Request
.
⛄ Code Freezing
É estabelecido um tempo onde se encerram os trabalhos de desenvolvimento antes de uma entrega, para garantir a qualidade da entrega, evitando possíveis bugs e problemas que possam surgir.
Foi determinado às 4h da manhã da quinta-feira, antes da entrega.