Lidando com Equipes de Desenvolvimento

Preview:

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

igor@4softjr.com.br | 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

contato@4softjr.com.br www.4softjr.com.br

facebook.com/4softjr

Octocats disponíveis em: https://octodex.github.com/

Agradecimentos ao professor Fernando Filho

Recommended