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
Motivação do tema!

• 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 ser
  usada na DB?

                                                                3
Desenvolvimento Global de Software

• Configurações;

• Principais Vantagens;

• Principais Dificuldades;

• Vantagem Brasileira.




                                      4
Tipos de Desenvolvimento Global




                                  5
Principais Vantagens




                       6
Principais Vantagens




                       7
Principais Dificuldades

• Podem ser divididas    Projetos
                         Pessoas
                         Unidade

  nas áreas de:         Engenhariaculturais de processo
                        Diferenças de Requisitos
                        Iniciativas de melhoria
                        de sw
                        Aquisição de Confiança
   – Pessoas            Ferramentas de Comunicação
                        Políticas e padrões
   – Projetos           Ferramentas de Colaboração as
                        Percepção (awareness) sobre
                        atividades
                        Alocação de Projetos
   – Unidade            Infra-estutura
                        Percepção (awareness) sobre o
                        processo
                        Estrutura de gerência de projetos
                        Percepção (awareness) sobre a
                        Gerência de risco
                        disponibilidade de pessoal
                        Gerência de configuração
                        Gestão de conhecimento
                        Aprendizado
                        Treinamento




                                                            8
Principais Dificuldades




                          9
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!



        Além de:




Rafael Audy Glanzner
rafaelg@dbserver.com.br   26

Global Software Development - O que pode ser aplicado?

  • 1.
    DBLearning Desenvolvimento Distribuído de Software Que lições aprendidas podem ser aplicadas na DBServer? Rafael Audy Glanzner rafaelg@dbserver.com.br
  • 2.
    Agenda • Sobre oDesenvolvimento 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
  • 3.
    Motivação do tema! •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 ser usada na DB? 3
  • 4.
    Desenvolvimento Global deSoftware • Configurações; • Principais Vantagens; • Principais Dificuldades; • Vantagem Brasileira. 4
  • 5.
  • 6.
  • 7.
  • 8.
    Principais Dificuldades • Podemser divididas Projetos Pessoas Unidade nas áreas de: Engenhariaculturais de processo Diferenças de Requisitos Iniciativas de melhoria de sw Aquisição de Confiança – Pessoas Ferramentas de Comunicação Políticas e padrões – Projetos Ferramentas de Colaboração as Percepção (awareness) sobre atividades Alocação de Projetos – Unidade Infra-estutura Percepção (awareness) sobre o processo Estrutura de gerência de projetos Percepção (awareness) sobre a Gerência de risco disponibilidade de pessoal Gerência de configuração Gestão de conhecimento Aprendizado Treinamento 8
  • 9.
  • 10.
  • 11.
    Vantagem Brasileira • Nossoprincipal 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
  • 12.
    Debate e Dinâmica •Experiências interessantes das avaliações do mestrado e o que pode ser aplicado na DBServer? 12
  • 13.
    Tópico de Exemplo •Ficar no dojo até as 20:30!!; • Ver o jogo do Gremio!! 13
  • 14.
    Relacionadas a Culturada 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
  • 15.
    Relacionado a DiferençasCulturais • 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
  • 16.
    Comunicação • Simulação deambientes colocalizados; • One on Ones; • Engenharia de Software; – Usar como exemplo BDD. 16
  • 17.
    Comunicação • Ferramentas ricasem contexto; • Acesso livre a qualquer colega; • Time Shifting; 17
  • 18.
    Colaboração • O queestá 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
  • 19.
    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
  • 20.
    Estímulo para evoluçãopessoal • Treinamento é percebido como importante na empresa? • Avaliação verifica competências deficientes; • Mentoring; • Metas do funcionário ou de cargo pretendido; 20
  • 21.
    Estímulo para evoluçãopessoal • 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
  • 22.
    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
  • 23.
    Melhoria Contínua • Portalpara 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
  • 24.
    Padronização • Uma figuradivertida para amenizar a polêmica!  24
  • 25.
    Padronização • Processo únicoentre as equipes distribuídas; • Auditoria; – Automatizada? – QA importante? • Facilidade para manter a infra; 25
  • 26.
    Conclusão e Perguntas! Além de: Rafael Audy Glanzner rafaelg@dbserver.com.br 26

Notas do Editor

  • #4 Segundo dados de 2011 - 30%Cerca de 10%240 bi e cerca de 5