Upload
4soft
View
320
Download
7
Embed Size (px)
DESCRIPTION
Sldes para a apresentação de Engenharia Elétrica introduzindo algumas técnicas e ferramentas para lidar com equipes de software.
Citation preview
LIDANDO COM EQUIPES DE DESENVOLVIMENTO
Igor Marques
Diretor Presidente / Desenvolvedor
4Softer desde 2012
[email protected] | GitHub: IgorMarques
O QUE É A 4SOFT?
QUEM SOMOS?
● Empresa Júnior de Engenharia de Software e
Tecnologia da Informação da UFRN
● Desenvolvemos software web
● Achamos Ruby on Rails show de bola
● E usamos "desenvolvimento guiado a bom senso" ;)
O QUE NÃO SOMOS?
X Empresa incubada
X Mini empresa
X Sobrinhos
SOBRE PROJETOS E EQUIPES
Processo
Conjunto de atividades e práticas com o
objetivo de se chegar ao produto desejado
Definindo o processo da sua equipe
Cascata
REQUISITOS
ANÁLISE
PROJETO
CODIFICAÇÃO
TESTE
IMPLANTAÇÃO
Iterativo e Incremental
REQUISITOS
ANÁLISE
PROJETO
CODIFICAÇÃO
TESTE
IMPLANTAÇÃO
x n
Transformando requisitos em tarefas
Deve-se transformar O QUE fazer em COMO fazer.
A
A1
A2
A3
Registrando Tarefas no GitHub
Alternativas ao GitHub
● KanbanFlow
● Trello
● Pivotal Tracker
● Asana
MAIS SIMPLES
MAIS ROBUSTO
Backlog
Sprint
IMPORTANTE:
● Saiba delegar tarefas de acordo com as aptidões de
cada um
● Tentar delegar tarefas que NÃO dependam uma da
outra para pessoas diferentes
A
B
C
D
X
Y
Z
A
B
C
D
X
Y
Z
E a documentação?
DOCUMENTE O NECESSÁRIO!
O que a 4Soft documenta?
● Requisitos na forma de tarefas
● Descrições gerais de cada projeto
● O próprio código já é uma documentação!
Documentamos o histórico do desenvolvimento do
projeto de maneira instantânea.
COMUNICAÇÃO EM UM TIME
FALTA DE COMUNICAÇÃO
OS RESULTADOS SÃO CATASTRÓFICOS...
COMO MANTER UMA BOA COMUNICAÇÃO EM UM
PROJETO?
Vamos assumir que sua equipe não tem
acesso a comunicação face-a-face 100%
do tempo...
Em que situações essa hipótese é verdadeira?
● Quando se trabalha remotamente
● Numa bolsa
● Num possível freela com algum amigo
● No dia-a-dia de um monte de empresas
É um cenário mais comum do que se imagina!
O que é uma boa comunicação?
Garantir que todos:
● Saibam a situação do projeto
● Saibam que todos também sabem da situação do
projeto
● Saibam de suas responsabilidades no projeto
● Saibam das reponsabilidades dos outros membros
do projeto
Garantir que todos:
● Saibam de todos os prazos e metas a serem
atingidos
● Saibam das razões por trás das principais decisões
de design tomadas
Como garantir tudo isso?(AINDA MAIS EM UM CONTEXTO SEM COMUNICAÇÃO FACE-A-FACE
100% DO TEMPO)
Na 4Soft, conseguimos isso usando 3 coisas...
BOM SENSOBOM
SENSO
TM
SLACKGITHUB
GitHub
● Repositório online de
código
● Rede social de
desenvolvedores
● Ferramentas de
gerenciamento de projetos
Versionando seu código
Versionando com Git
GitHub vs Git
● Ferramenta de controle
de versão
● Funciona local e
remotamente
● Não tem um polvo-gato
como mascote :P
● SERVIDOR REMOTO de
git
● Também funciona com
outras ferramentas de
controle de versão
● Acrescenta mais visões ao
seu repositório
Gerenciamento de Projetos
● Issues
● Milestones
● Rastreamento de tarefas
CÓDIGO E ATIVIDADES ACESSÍVEIS A TODOS!
Alternativas ao Git
Fonte: http://git-scm.com/about/small-and-fast
Alternativas ao GitHub
Slack
● Lugar centralizado para
discutir assuntos da
empresa
● Separação de assunto por
canais
● Disponível para celulares
Alternativas ao Slack
CAMPFIRE
+ = S2
TM
SENSOBOM TMBOMSENSO
Mas e o ?
RESUMO:
● Procure o que é melhor PRO SEU TIME
● Siga um processo, por mais simples que seja
● Lembre-se sempre que existem outras pessoas na
sua equipe!
○ Compartilhe código, informações e etc!
○ Facilite o trabalho delas ; )
Centro Integrado de Vocação Tecnológica, sala B407 UFRN - Natal - RN - Brasil
[email protected] www.4softjr.com.br
facebook.com/4softjr
Octocats disponíveis em: https://octodex.github.com/
Agradecimentos ao professor Fernando Filho