Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • W Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • InclusiApp
  • Wiki
  • Wiki
  • processo

Last edited by Delmar Lucas Dorneles Quaresma Jun 21, 2024
Page history

processo

Home

Escopo e Cronograma

Processo

Design/Mockups

Configuração

Arquitetura

Código

BD

Qualidade

Utilização

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
  • Matriz de Responsabilidade
  • Plano de Comunicação
  • Plano de Riscos

Git Workflow

Branches

Nomes

Como padrão para nomes de branches, foi decidido o seguinte:

<numeroDaUS>/<nomeDoItem>-<detalheDoItem> (Caso seja uma User Story)
<tipoDeItem>-<nomeDoItem> (Caso seja um componente)

Exemplo de Componentes:

US01/TelaDeLogin-esqueciMinhaSenha
component-navBar
component-slider

Exemplo de Páginas:

page-recipes
page-creations

Criação

Para garantir que o processo de desenvolvimento esteja sempre atualizado, lembre-se de executar o seguinte comando na branch dev antes de criar uma branch nova:

git pull origin dev

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 pushpara 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

Salvando Localmente

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>

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 docuemntado 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:

  1. Selecionar a branch de origem (sua branch de desenvolvimento);
  2. Selecionar a branch de destino (branch dev);
  3. Selecione Compare branches and continue
  4. Em Title, escreva um título que descreva a funcionalidade adicionada ou bug corrigido;
  5. Em Description, escreva uma descrição com uma breve justificativa nos arquivos que foram alterados;
  6. Caso a tarefa seja visual (criação de componente/tela, correção de bug) adicione um gif exemplificando o uso (se considerar necessário);
  7. Na seção Assignee, selecione Assign 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);
  8. Em Milestone selecione a Sprint em que a tarefa foi realizada;
  9. Em Labelsselecione qual é o tipo de tarefa que foi realizada;
  10. 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 pode ser realizada por qualquer desenvolvedor, mas é preciso da aprovação de pelo menos um AGES III ou AGES IV para que a mesma seja incorporada na dev.

Na hora de revisar o Merge Request, entre na branch em sua máquina e teste a funcionalidade/bug/componente/tela de acordo com os critérios de aceitação apresentados no Airtable.

Caso haja pendências, relacionadas a documentação do código, padronização ou arquivos enviados, não exite em realizar um novo commit na branch com as mudanças necessárias antes de realizar a integração.

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

Plano de Comunicação

Evento Descrição Responsável Envolvidos Frequência Duração
Daily Momento onde cada membro atualiza o time sobre o que fez, desde a última Daily, e o que fará a seguir. AGES IV AGES I, II, III e IV Segundas e Quartas às 17:30 15 minutos
Sprint Review Apresentação das entregas realizadas e os possíveis débitos criados na Sprint. AGES IV AGES I, II, III, IV e Clientes 1 vez no fim de cada Sprint 30 minutos
Sprint Retrospective Momento dedicado à definir o que está funcionando para trabalhar e identificar problemas e melhoras a serem feitas. AGES IV AGES I, II, III e IV 1 vez no fim de cada Sprint 1 hora
Sprint Planning Reunião onde o time discute e define, a partir do Product Backlog e feedback atual do Cliente, o que será realizada na próxima Sprint. AGES IV AGES I, II, III e IV 1 vez no começo de cada Sprint 20 minutos
Tasks Breakdown O time realiza a quebra das tarefas a serem realizadas na próxima Sprint. Para isso, o time se divide nos grupos de Frontend e Backend. AGES III e IV AGES I, II, III e IV 1 vez no começo de cada Sprint 45 minutos
Management Review Encontro entre os AGES IV para revisão sobre como o projeto está progredindo e quais as próximas prioridades. AGES IV AGES IV 1 vez por semana Aproximadamente 30 minutos
Apresentação do Cliente e da Ideia Encontro onde o Cliente apresenta o projeto para o time. Cliente AGES I, II, III, IV e Cliente 1 vez no início do projeto 1 hora e 30 minutos
Final Presentation Apresentação final da AGES, na qual o time deve apresentar o projeto realizado para todos outros membros da AGES. AGES IV AGES I, II, III e IV 1 vez no fim do projeto 10 minutos
Pre-Sprint review Meeting Comunicação para revisão da apresentação que será realizada ao Cliente na Sprint Review. AGES IV AGES I, II, III e IV 1 vez a cada Sprint 30 minutos
AGES Retrospective Reunião com todos os alunos da AGES para que os organizadores da AGES recebam feedback e tenham melhor ciencia sobre o quão satisfeitos os alunos estão. Staff da AGES AGES I, II, III e IV 2 vezes (05/05 e 28/06) 1 hora e 30 minutos

Plano de Riscos

Risco

Probabilidade

Impacto

Severidade

Estratégia

Plano A

Plano B

Mudança no escopo 4 4 16 Mitigar Definir o escopo no inicio do projeto com a aprovação do cliente. Utilizar o Backlog do projeto para caso falte tarefas em uma Sprint. Deixar claro o plano de desenvolvimento da equipe para as 4 Sprints de desenvolvimento. Caso surjam novas alterações, coloca-las no Product Backlog do projeto.
Entrega não realizada 4 5 20 Mitigar Acompanhar o time durante o desenvolvimento nas Sprints, buscando encontrar possíveis problemas e/ou dificuldades para melhor auxiliar o time. Alertar o stakeholder durante a apresentação os motivos que nos levaram a uma entrega incompleta. Apresentar os próximos passos do time para adaptar o débíto técnico na próxima Sprint
Mudança na EAP do projeto 4 3 12 Mitigar Apresentar para a equipe e os Stakeholders a EAP proposta para o projeto, com marcos e entregas que devem ser feitas em cada Sprint. Analisar na Retrospectiva os próximos passos para o projeto, e verificar a viabilidade com o time do que deverá ser feito para a próxima entrega. Caso seja necessário realizar alguma alteração durante a Sprint de desenvolvimento, alertar os skateholders via canal de comunicação do Slack, explicando o motivo da necessidade.
Conflito na execuçao de atividades por squads diferentes 5 4 20 Transferir Divisão e delegação de tarefas de forma coletiva com todas as squads envolvidas no desenvolvimento. Além disso, manter dados de controle, status e responsáveis registrados e atualizados na ferramenta Trello Verificar no momento da planning quais tasks podem ser conflitantes no desenvolvimento, e manter o cuidado na hora de realizar o merge para o projeto. O merge request deverá ser aprovado e nenhum conflito deve existir para ser aprovado.
Comunicação interna nas Squads 5 5 25 Mitigar Gestores (AGES IV) procurarem integrar outros colegas de squad afim de criar um clima de comprometimento e companherismo. Registro de impeditivos levantados em dailies. Deixar claro os marcos das sprints. Gestores fazerem one-to-one (informal) com integrantes das suas squads para coletar feedbacks. Ter sempre presente um AGES 4 em cada squad para facilitar a comunicação do time como um todo, usando os AGES 4 como interface do grupo para a squad. Canais de comunicação devem sempre estar ativos.
Divisão e distribuição de tarefas 5 4 20 Explorar Divisão das tarefas feitas junto a squad responsável. Garantir que cada membro da squad tenha ao menos uma tarefa sob sua responsabilidade. Incentivar o pair-programming de tarefas mais complexas dentro das squads, caso não tenham tarefas suficientes, a fim de encaixar todos membros para desenvolvimento
Falta de conhecimento das tecnologias 4 3 12 Mitigar Realização de workshop com colegas de squads para fazer boilerplates e o kickoff de desenvolvimento de cada sprint. Pair-programming para auxíliar no desenvolvimento e aprendizado. Registro de impeditivos nas reuniões de dailies. Impulsionar trabalhos em grupo para o desenvolvimento das tarefas mais complexas, e aos poucos ir separando individualmente cada task entre os membros de cada squad.
Clone repository
  • Mockups
  • Repositórios
  • arquitetura
  • banco_dados
  • codigo
  • configuracao
  • design_mockups
  • escopo
  • Home
  • processo
  • qualidade
  • utilizacao