Home | Escopo e Cronograma | Processo | Design/Mockups | Configuração | Arquitetura | Infra | Código | BD |
---|
Processo de Desenvolvimento
Descrição
Esta seção é dedicada a apresentar o processo de desenvolvimento do time, junto dela serão apresentados documentos referentes a maneira que o time se organizou e trabalha.
Sumário
Git Workflow
Gitflow
O Gitflow é um modelo alternativo de ramificação do Git que consiste no uso de ramificações de recursos (features) e várias ramificações primárias (Master e Development). Todas as novas branchs de desenvolvimento devem ser criadas abaixo da development.
Branches
Cada branch relacionada a features será criada a partir da branch development.
Nomes
Como padrão para nomes de branches, foi decidido o seguinte:
<Tipo-desenvolvimento>/<Tarefa>
Onde os tipos de desenvolvimento podem ser:
feature/feat – são branches para o desenvolvimento de uma funcionalidade específica. Elas devem ter o nome iniciado por feature, por exemplo, “feature / task name”. É importante saber que essas features branches são criadas sempre a partir da branch Develop. Portanto, quando finalizada, ela é removida após realizar o merge com a Branch Develop.
bugfix – Uma branch criada a partir da Develop para realizar correções encontradas no sistema ainda no momento desenvolvimento, Quando concluída ela é excluída após realizar o merge com a Branch Develop.
hotfix – Uma branch criada a partir da Main para realizar correções encontradas no sistema em produção. Quando concluída ela é excluída após realizar o merge com a Branch Main e Develop.
Exemplo de Componentes:
feature/T2
hotfix/T1
bugfix/T3
Criação
Para garantir que o processo de desenvolvimento esteja sempre atualizado, lembre-se de executar o seguinte comando na branch development antes de criar uma branch nova:
git pull origin develop
Depois da execução desse comando é necessário oficialmente criar a Branch, para isso, execute o seguinte comando:
git checkout -b <nomeDaBranch>
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.
Subindo alterações na branch
Para garantir que apenas o código necessário para funcionamento da tarefa lembre-se de realizar o comando add
apenas nos arquivos essenciais para a tarefa:
git add <nomeDoArquivo>
Para adicionar todas arquivos onde ocorreram alterações (não recomendado), realize o comando:
git add . (Adiciona todas alterações)
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:
git commit -m 'descrição da tarefa em português'
Não hesite em realizar vários commits, assim podemos ter documentado e salvo vários estados do desenvolvimento
Salvando Remotamente
Depois de finalizar o desenvolvimento, envie todos os commits da sua máquina para o servidor remoto. Para isso depois de realizar as etapas de salvamento local, salve remotamente com o comando push
:
git push
Merge Requests
Depois de uma task ter sido desenvolvida e estiver pronta de acordo com os critérios de aceitação, é necessário que a mesma seja enviada para a branch de desenvolvimento. Para isso é necessário abrir um Merge Request pela platafora GitLab:
Criando o Merge Request
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
, siga o template previamente inserido na descrição; - 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); - Por último, revise se os arquivos que estão sendo enviados estão corretos e clique em
Submit Merge Request
.
Revisando o Merge Request
A revisão de merge request é realizada pelos AGES III ou AGES IV.
Matriz de Responsabilidade
Essa matriz foi desenvolvida para ajudar os membros do time a saberem seus papéis na dentro do processo de desenvolvimento.
Atividades | AGES I | AGES II | AGES III | AGES IV |
---|---|---|---|---|
Alimentar a wiki | R | R | R | R |
Definir squads | I | I | I | R |
Definir marcos da sprint | I | I | I | R |
Quebra de tasks | I/A | I/A | I/A | R |
Desenvolvimento | R | R | R | I |
Code review | R | R | R | I |
Executar testes funcionais | R | R | C | I |
Deploy da aplicação | I | I | R | I |
- I: Deve ser informado
- C: Deve ser consultado
- R: Responsável
- A: Aprova