Global Software Development - O que pode ser aplicado?

Preview:

Citation preview

DBLearning

Desenvolvimento Distribuído de Software

Que lições aprendidas podem ser aplicadas na DBServer?

Rafael Audy Glanzner

rafaelg@dbserver.com.br

Agenda

• Sobre o Desenvolvimento Global de Software;

• Debate sobre práticas observadas durante o mestrado!– O que podemos levar para a nossa realidade?

– Priorização por dinâmica!

2

• De todo o software gerado, quanto é feito de forma distribuída??

• É sustentável? Será que continua crescendo?

• Quanto é isso em número no mercado mundial e brasileiro?

• Ok, e tem alguma prática empregada nesse contexto que possa serusada na DB?

3

Motivação do tema!

Desenvolvimento Global de Software

• Configurações;

• Principais Vantagens;

• Principais Dificuldades;

• Vantagem Brasileira.

4

Tipos de Desenvolvimento Global

5

Principais Vantagens

6

Principais Vantagens

7

• Podem ser divididas

nas áreas de:– Pessoas

– Projetos

– Unidade

8

Principais Dificuldades

Pessoas

Diferenças culturais

Aquisição de Confiança

Percepção (awareness) sobre as atividadesPercepção (awareness) sobre o processoPercepção (awareness) sobre a disponibilidade de pessoalGestão de conhecimento

Aprendizado

Treinamento

Projetos

Engenharia de Requisitos

Ferramentas de Comunicação

Ferramentas de Colaboração

Infra-estutura

Estrutura de gerência de projetos

Gerência de risco

Gerência de configuração

Unidade

Iniciativas de melhoria de processo de sw

Políticas e padrões

Alocação de Projetos

9

Principais Dificuldades

Vantagem Brasileira

10

Vantagem Brasileira

• Nosso principal cliente e o conceito de Near Shoring!

• Economia e política estáveis;

• Infraestrutura;

• Compatibilidade cultural e pessoas qualificadas;

• OBS: Não é o preço

11

Debate e Dinâmica

• Experiências interessantes das avaliações do mestrado e o que pode ser aplicado na DBServer?

12

Tópico de Exemplo

• Ficar no dojo até as 20:30!!;

• Ver o jogo do Gremio!!

13

Relacionadas a Cultura da Organização

• Apadrinhamento;

• Learn on the job;

• Ramping de funcionários;– Caso Infosys.

• Alocação remota de funcionários ou até de equipes;– Troca de funcionários.

– Paralelo com o Tecnopuc.

14

Relacionado a Diferenças Culturais

• Treinamentos antes das viagens;– Hábitos e Cultura.

• Feedback contínuo entre as equipes;– Outsourcing e Insourcing.

• Viagens no início e ao longo de projetos;

• Diferencial da cultura;

• News Letters.

15

Comunicação

• Simulação de ambientes colocalizados;

• One on Ones;

• Engenharia de Software;– Usar como exemplo BDD.

16

Comunicação

• Ferramentas ricas em contexto;

• Acesso livre a qualquer colega;

• Time Shifting;

17

Colaboração

• O que está sendo desenvolvido?

• Qual o backlog?

• Status do projeto de forma acessível? Qual a nossa meta?

• Envolvidos, contatos e dispobilidade em geral;

• Padronização para colaboração?

18

Gestão de Conhecimento

• E o conhecimento gerado aqui nesse encontro?– Exemplo da Lamba 3;

– Wikis, ferramentas globais, etc.

• E o conhecimento gerado no projeto?– Exemplo sobre apresentações do GMF (Acesso X Ferramenta)!

– Sharepoint.

• Pair Programming remoto em Follow the Sun.

19

Estímulo para evolução pessoal

• Treinamento é percebido como importante na empresa?

• Avaliação verifica competências deficientes;

• Mentoring;

• Metas do funcionário ou de cargo pretendido;

20

Estímulo para evolução pessoal

• Metas são condição para aumento de cargo e salário;– Será que é relevante? Avaliação orgânica x estruturada.

• Cargos com pré-requisitos,

• News Letter com eventos;

21

Comunidades de Práticas

• Globais e locais;

• Facilita o acesso à pessoas que conheçam o assunto;

• Colaboração ativa depois do dojo ou detate;

• Estimula a geração de conhecimento (necessidade x visibilidade);

• Facilita a comunicação e adesão de pessoas (interno e externo);

• DBLearning = (Engenharia de Software + Práticas Ágeis + …)?22

Melhoria Contínua

• Portal para cadastro de melhorias;

• Blog com rankeamento e priorização de melhorias;

• Indicação de necessidades por projetos;

• Questionários de avaliação recorrentes. Exernos e internos!– Kata

• Provas de conceito de melhorias;

• Time que organize e enderece essas demandas.– Comunidades de prática? 23

Padronização

• Uma figura divertida para amenizar a polêmica!

24

Padronização

• Processo único entre as equipes distribuídas;

• Auditoria;– Automatizada?

– QA importante?

• Facilidade para manter a infra;

25

Conclusão e Perguntas!

26

Rafael Audy Glanzner

rafaelg@dbserver.com.br

Além de:

Recommended