Você está na página 1de 13

Scrum e Organização do Git

Este material faz parte do Projeto Scrum


do Grupo Linguagem de Programação.
É distribuído sob a FDL v1.3
Escrito por Ronaldo Silveira para o Projeto.

1 Grupo
Surge de uma ideia original no grupo do Telegram Linguagens de
Programação,

2 O Projeto
Simular o desenvolvimento completo de um Software, para que todos
aprendam como isso acontece. Focamos no Processo e nas Soluções de
Arquitetura, não apenas em código por código.
- É livre, ou seja, você pode usar e modificar o programa e a documentação
do Projeto para qualquer fim.
Se achar oportuno, pode colocar o projeto em seu portifólio.
Pode participar do Projeto qualquer membro do grupo supra citado.

3 Ferramentas
Sempre que possível usaremos ferramentas livres e grátis, na ausência de
ferramentas necessárias nesta condição usaremos grátis (tipo Freeware ou
grátis para estudo) para não gerar custos aos participantes além do tempo
dispendido (e da Interentet, claro).

4 O manifesto Ágil
O Manifesto Ágil é um documento assinado pelos principais nome das
metodologias de Tecnologia hoje em dia. Queria acabar com os problemas
do Método Cascata.
https://agilemanifesto.org/iso/ptbr/manifesto.html
Estamos descobrindo maneiras melhores de desenvolver software, fazendo-
o nós mesmos e ajudando outros a fazerem o mesmo. Através deste
trabalho, passamos a valorizar:

1
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

Indivíduos e interações mais que processos e ferramentas


Software em funcionamento mais que documentação abrangente
Colaboração com o P.O. (Cliente) mais que negociação de contratos
Responder a mudanças mais que seguir um plano

Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens
à esquerda
Assinaram o Manifesto:
Kent Beck (TDD) James Grenning Robert C. Martin (Code
Clean)
Mike Beedle Jim Highsmith
Steve Mellor (OOP)
Arie van Bennekum Andrew Hunt
Ken Schwaber
Alistair Cockburn Ron Jeffries
Jeff Sutherland (Scrum)
Ward Cunningham Jon Kern
Dave Thoma
Martin Fowler Brian Marick

5 Scrum
Sempre é necessário muita atenção, para não transformar o Ágil em
“Cascágil”. O método ágil exige muita autonomia e responsabilidade de
todos. A “Chefia” vai ajudar e orientar, mas espera-se que não precise
mandar ninguém fazer nada.
A seguir um resumo esquemático do Método.

2
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

6 Git
Criado por Linus Trovalds para gerenciar o kernel do Linux. O Git tem um
projeto de organização descentralizada.
• Nativo no Linux (óbvio) não precisa instalar na maioria absoluta das
Distros.
• Instalar no Win.

6.1 GitHub e GitLab


São uma espécie de “Rede Social” de Códigos-fontes. São excelentes para
repositórios coletivos, por não precisa criação de rede ponto a ponto. Sendo
os dois citados no título, os mais populares. Medalha de “Bronze” vai para o
GitBucket.

7 Organização do Projeto no Git


A Empresa ou a Software House é, no nosso caso, Grupo Telegram
Linguagem de Programação

7.1 Projetos
Cada um dos repositórios e/ou programas, ou ainda, parte do programa. No
nosso caso:

3
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

1. Projeto-Back
2. Projeto Front

8 Branchs (Galhos)
No projeto temos:
• Master, a versão principal e estável do programa, nesta ninguém
commita.
• Homolog, versão que quer se tornar a principal, a Master. Viram master
depois da aprovação do P.O. (Cliente).
• Develop, onde o Desenvolvedor trabalha. Um dev vai comitar todas as
alterações que faz no Programa aqui, depois de aprovada e/ou testada
estas alterações vão pra homolog.

4
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

9 Issues (Tarefas)
Cada uma das coisas que precisam ser feitas no programa, a nossa ainda
está vazia.

9.1 História de usuário


Todas as Issues devem ser escritas no formato História de Usuário.
A História de Usuário deve, preferencialmente, ser escrita pelo P.O (Cliente).
No caso desta impossibilidade, o P.O. precisa de tempo disponível e a
Software House fornece um Analista ou o Scrum escreve as Histórias.
O formato de uma História de Usuário é:
Eu persona, desejo que o que o programa
vai fazer para o ganho que o negócio terá.

5
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

Explicitar o ganho que o negócio terá, ajuda a não fazer coisas que depois
não serão usadas.

9.2 Critério de aceite


Escrevemos na História o que foi combinado com o P.O. para a entrega.
Além de fazer parte do método para clareza da entrega, evita muitos
problemas jurídicos. Pois, se a funcionalidade não atender estes critérios o
custo de refazer é da Software House.
O Scrum pode fornecer uma relatório mais detalhado com um UML que
ajudará a equipe no desenvolvimento.

10 Labels (Etiquetas)
Usados para complementar de modo fácil, a issue. Podem ser criadas
quantas Labels quanto a equipe achar necessário

6
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

11 Pull Request
Após fazer todas as suas alterações você vai pedir que suas alterações vá
para o Código. Isso é o Pull Request.

7
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

8
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

12 Project (Projetos)

12.1 Painel do Projeto


Um tipo de Kanban (Ferramenta, não o método) muito usado para organizar
projetos de Scrum.
Estamos trabalhando com dois paineis, um geral no qual damos usamos com
o Cliente, e dois “particulares” específicos. no nosso projeto temos:

12.1.1 Backlog
Tudo que o P.O. (Cliente) disse que precisa ser feito no programa.

12.1.2 Backlog Sprint


Tudo está pronto e bem definido para a próxima Sprint

12.1.3 A Fazer
Tudo que precisa ficar pronto obrigatoriamente na próxima sprint.

9
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

12.1.4 Fazendo
O que cada um está fazendo.

12.1.5 Concluído pelo Dev


Você terminou de fazer e disse que está pronto.

12.1.6 Testando
O QA, ou outro Dev, testam pra saber se está tudo funcionando.

12.1.7 Feito
Todas as etapas foram terminadas.

13 Wiki
Documentação do Projeto
Não é porque o Scrum não prioriza a documentação que ela deva estar
ausente. As pessoas não lêem mente.

14 Teams (Times)
As comunicações do “serviço” do Projeto
É o Substituto do Telegram.
• No telegram teremos conversas gerais. E dicas de cursos gratuítos,
assim como bons vídeos introdutórios.

10
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

Nosso projeto hoje tem 4 times, que podem ser desdobrados em mais se for
necessário….
• Back
• Front
• Geral: Aqui vão as comunicações e discussões que vão ao mesmo
tempo para o Back e Front
• Gerencia: Conversas entre o Scrum e os líderes.
Por exemplo, criar um subgrupo de UX/UX no grupo de Front, ou um de BD
no Back. O mais importante é manter tudo organizado.

11
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

14.1.1 Proposta
Para efeito de melhor aprendizado todos terão acesso a todas as conversas,
mas vale lembra que uma empresa segmenta o acesso.
Além do MSTeams, que é uma boa ferramenta, a Rainha deste quesito é o
Slack, que é pago. A versão gratuita não guarda histórico.
Por este motivo, e para não aumentar a complexidade, usaremos o GitHub
Teams

15 O que falta fazer (Não necessariamente nesta


ordem)
• Sentar com o P.O. (Cliente) e anotar, o mais detalhado possível, o que
ele quer no Programa
• Verificar Prazos e Custos
• Definir o Read.Me e o Código de Conduta do Projeto, bem como
padrão para cada uma das linguagens.
• Criar História de Usuário
◦ validar a História
◦ Definir critérios de aceite
• Definir arquitetura do Projeto.
◦ Front- Tratar de UX/Ui, e acessibilidade
◦ Back- Definir padrão e “normalizar” o BD
• Fazer a Sprint Plannig (Planejamento da Sprint)
◦ Verificar com o P.O. (Cliente) o que é mais urgente
◦ O dev deve dizer se a História tem esclarecimento suficiente pra ser
desenvolvido, ou se o P.O. (Cliente) precisa explicar mais.
◦ O dev diz quanto tempo leva pra terminar a tarefa.
◦ Considerando o que “cabe na sprint”, o P.O. (Cliente) decide.
• Após a Definição fazer documentação técnica mínima, com UML por
exemplo.

12
Projeto Scrum – Ling. de Programação – Scrum e Organização do Git

• Desenvolver
• Fazer a Entrega/Sprint Review, ou seja, mostrar pro P.O. (Cliente) se
está tudo como esperado.
◦ Se não, o P.O. (Cliente) decide se volta para próxima Sprint ou
desiste. Sim!!! pode acontecer…
• “Sobe o Sistema”.

13

Você também pode gostar