SlideShare une entreprise Scribd logo
1  sur  50
Télécharger pour lire hors ligne
Desenvolvimento
Distribuído de Software

       Rafael Leonardo Vivian (DIN-UEM)
            rlvivian.uem [at] gmail [dot] com
                       Twitter: @rafaelvivian
Evolução do
                         Desenvolvimento
                             de Software
●
    Anos 50 e 60: não havia processo definido
●
    Anos 80: modelagem de dados
●
    Anos 90: orientação a objetos
●
    Anos 2000: distribuição do processo de
    desenvolvimento
       –   Desenvolvimento Distribuído de Software (DDS)
       –   Global Software Development (GSD)
Desenvolvimento
 Distribuído de Software
      Fatores geradores de DDS

                    Globalização
       Processos de terceirização
Crescimento da importância dos SI
Globalização
             Desenvolvimento de software
●
    Mercado local para mercado global
●
    Novas formas de cooperação e competição
●
    Avanço da economia, sofisticação dos meios de
    comunicação e pressão por custos
●
    Redes de cooperação e internacionalização
●
    Vantagens: custos, recursos humanos, benefícios
    fiscais, qualidade, agilidade e customização
Outsourcing
             Desenvolvimento de software


●
    Políticas de terceirização adotadas pelas empresas
●
    Desenvolvimento de software é uma área-meio
●
    Terceirização completa ou parcial das áreas de
    sistemas e computação
Outsourcing




     Fonte: Gartner/Brasscom
Outsourcing




     Fonte: Gartner/Brasscom
Crescimento da Importância
dos Sistemas de Informação
             Desenvolvimento de software


●
    Papel estratégico nas empresas
●
    Evolução do uso das tecnologias
●
    Preocupação com novas abordagens
●
    Apoio às novas demandas da área de negócios
Equipes Distribuídas
            Desenvolvimento de software


●
    Melhorias nas ferramentas e métodos têm permitido
    que grupos distribuídos possam trabalhar em equipe
    em um mesmo projeto
Desenvolvimento
Distribuído de Software

             Uma revolução
         da maneira como se
        desenvolve software
Desenvolvimento
    Distribuído de Software

          Colaboração e cooperação
entre departamentos de organizações
    e grupos de desenvolvedores que
              trabalham em conjunto
Soluções Globais
                                              Benefícios


●
    Economia em termos de custo para grandes projetos
●
    Profissionais habilitados em idioma diferente
●
    Baixas taxas de rotatividade de pessoal
●
    Incentivo de governos locais
Fatores Geradores de DDS
        Recursos globais a qualquer hora


●
    Maiores vantagens competitivas com soluções
    globais, em outros países
Fatores Geradores de DDS
       Proximidade com o mercado local


●
    Conhecimento dos clientes e condições locais para
    oportunidades de mercado
Fatores Geradores de DDS
           Desenvolvimento time-to-market


●
    Vantagens do fuso horário:
       –   folow-the-sun (24 horas contínuas)
Desenvolvimento
  Distribuído de Software

     Obter vantagens competitivas
       associadas a custo, qualidade
e flexibilidade no desenvolvimento,
         aumentado a produtividade
              e diminuindo os riscos
Dificuldades em DDS

     Dispersão geográfica
       Dispersão temporal
  Diferenças socioculturais
Dificuldades em DDS
                       Dispersão geográfica


●
    Distância física
Dificuldades em DDS
                             Dispersão temporal


●
    Diferenças de fuso horário
Dificuldades em DDS
                 Diferenças socioculturais

●
    Idioma
●
    Tradições
●
    Costumes
●
    Normas
●
    Comportamentos
Dificuldades em DDS

              A sensação de distância
se multiplica em diversas dificuldades
          na coordenação do trabalho
            para desenvolver software
Dificuldades em DDS
                                 Outros fatores


●
    Questões estratégicas
●
    Questões técnicas
●
    Questões de gestão do conhecimento
Fatores que motivam
             o uso DDS

             Demanda e custos
Rapidez de resposta ao mercado
     Mercado e presença global
             Rigor e experiência
                Sinergia cultural
                          Escala
Fatores que motivam
                          o uso DDS
                                   Demanda e custos

●
    Demanda por serviços de software supera
    disponibilidade de pessoas
●
    Alto custo dos profissionais
●
    Disponibilidade de recursos equivalentes em outras
    localidades a um custo mais baixo
Fatores que motivam
                          o uso DDS
         Rapidez de resposta ao mercado


●
    Redução do tempo para colocar um produto no
    mercado (time-to-market)
●
    Follow-the-sun: desenvolvimento 24 horas por dia
Fatores que motivam
                          o uso DDS
                  Mercado e presença global

●
    Para satisfazer o mercado consumidor é necessária a
    presença das corporações
●
    Atingir o mercado global e ficar próxima de seus
    consumidores
●
    Empresa global é um atrativo de marketing
Fatores que motivam
                          o uso DDS
                             Rigor e experiência

●
    Para melhorar a comunicação as equipes tendem a
    melhorar a documentação e as ferramentas de
    colaboração
●
    Determinados locais desenvolvem experiência e
    habilidade em áreas pouco difundidas em outros
    pontos da organização
Fatores que motivam
                          o uso DDS
                                   Sinergia cultural


●
    A diversidade amplia a criatividade e a inspiração
●
    Encontrar novas formas de resolver problemas
●
    Ampliar a capacidade de aprendizado
Fatores que motivam
                         o uso DDS
                                              Escala


●
    Centros de desenvolvimento de software aumentam
    e ficam difíceis de gerenciar
Níveis de Dispersão em DDS

         Mesma localização física
               Distância nacional
            Distância continental
                 Distância global
Níveis de Dispersão em DDS
         Mesma localização física
Níveis de Dispersão em DDS
             Distância nacional
Níveis de Dispersão em DDS
           Distância continental
Níveis de Dispersão em DDS
              Distância global
Modelos de Negócio em DDS
 Controle e relação entre as pessoas

                     Outsourcing
                       terceirizar
                      Insourcing
       departamento ou subsidiária
Modelos de Negócio em DDS
          Localização geográfica

                        Onshore
                     mesmo país
                        Offshore
                   país diferente
                      Nearshore
          país diferente próximo
Modelos de Negócio em DDS

            Outsourcing        Onshore       Offshore
 Controle   “terceirizar”     Outsourcing   Outsourcing
 e relação
  entre as   Insourcing
                               Onshore       Offshore
  pessoas “departamento       Insourcing    Insourcing
           ou subsidiária”

                               Onshore     Offshore
                             “mesmo país” “outro país”
                               Localização geográfica
Alguns Desafios do DDS

         Impacto na forma como
     os produtos são concebidos,
testados e entregues aos clientes
Alguns Desafios do DDS

                  Pessoas
                 Processo
               Tecnologia
                   Gestão
             Comunicação
Alguns Desafios do DDS
                   Pessoas

                  Confiança
        Diferenças culturais
         Espírito de equipe
Alguns Desafios do DDS
                     Processo

       Arquitetura do software
      Engenharia de requisitos
      Gerência de configuração
  Processo de desenvolvimento
Alguns Desafios do DDS
                  Tecnologia

    Tecnologia de colaboração
           Telecomunicações
Alguns Desafios do DDS
                     Gestão

      Coordenação e controle
   Gerenciamento de projetos
                  Legislação
Alguns Desafios do DDS
               Comunicação

                  Awareness
      Formas de comunicação
              Fusos horários
Conclusões

Desenvolvimento Distribuído
 de Software é uma realidade
Conclusões

  Equipes distribuídas
  apresentam diversas
dificuldades e desafios
Conclusões
Equipes distribuídas precisam

Confiança e espírito de equipe
           Controlar processo
                  Colaboração
                 Coordenação
                 Comunicação
Perguntas?

       Apresentação disponível em:
www.din.uem.br/~pg45189/sifa-dds.pdf


               Rafael Leonardo Vivian (DIN-UEM)
                    rlvivian.uem [at] gmail [dot] com
                               Twitter: @rafaelvivian
Obrigado!

Rafael Leonardo Vivian (DIN-UEM)
     rlvivian.uem [at] gmail [dot] com
                Twitter: @rafaelvivian
Extraído do livro “Desenvolvimento Distribuído de
      Software: desenvolvimento de software com
equipes distribuídas”, Audy, J. e Prikladnicki, R., Rio
                        de Janeiro : Elsevier, 2008.

Contenu connexe

Similaire à Desenvolvimento Distribuído de Software

Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...
Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...
Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...Rafael Caceres
 
O impacto da qualidade de software no cotidiano do desenvolvedor
O impacto da qualidade de software no cotidiano do desenvolvedorO impacto da qualidade de software no cotidiano do desenvolvedor
O impacto da qualidade de software no cotidiano do desenvolvedorJanderson Silva
 
Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...
Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...
Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...GrupoMENTHOR
 
Uma introdução ao Domain Driven Design
Uma introdução ao Domain Driven DesignUma introdução ao Domain Driven Design
Uma introdução ao Domain Driven DesignLambda3
 
A evolução do Business Intelligence
A evolução do Business IntelligenceA evolução do Business Intelligence
A evolução do Business IntelligenceGustavo Santade
 
Global Software Development - O que pode ser aplicado?
Global Software Development - O que pode ser aplicado?Global Software Development - O que pode ser aplicado?
Global Software Development - O que pode ser aplicado?Rafael Glanzner
 
Google DSC Uninter - Info Session 23
Google DSC Uninter - Info Session 23Google DSC Uninter - Info Session 23
Google DSC Uninter - Info Session 23AndrFelipeLopes1
 
Previsibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de softwarePrevisibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de softwareDenis Ferrari
 
Desenvolvendo o design na organização - Service Design Network Chapter Brazil
Desenvolvendo o design na organização - Service Design Network Chapter BrazilDesenvolvendo o design na organização - Service Design Network Chapter Brazil
Desenvolvendo o design na organização - Service Design Network Chapter BrazilNatali Garcia
 
Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez! Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez! Adriano Tavares
 
TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...
TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...
TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...tdc-globalcode
 
Imatia: apresentação corporativa
Imatia: apresentação corporativaImatia: apresentação corporativa
Imatia: apresentação corporativaimatia
 
Escritório de governança de dados
Escritório de governança de dadosEscritório de governança de dados
Escritório de governança de dadosBLRDATA
 
A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)Diogo Cosentino
 
A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)Coletivo Mola
 
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoPalestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoDextra
 

Similaire à Desenvolvimento Distribuído de Software (20)

Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...
Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...
Estudo da Aplicação de Extreme programming no Desenvolvimento Distribuído de ...
 
Scrum com Equipes Distribuidas
Scrum com Equipes DistribuidasScrum com Equipes Distribuidas
Scrum com Equipes Distribuidas
 
Iniciando com DDD
Iniciando com DDDIniciando com DDD
Iniciando com DDD
 
O impacto da qualidade de software no cotidiano do desenvolvedor
O impacto da qualidade de software no cotidiano do desenvolvedorO impacto da qualidade de software no cotidiano do desenvolvedor
O impacto da qualidade de software no cotidiano do desenvolvedor
 
Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...
Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...
Palestra sobre a Metodologia para Apoio à Decisão, Gerência e Implantação de ...
 
Uma introdução ao Domain Driven Design
Uma introdução ao Domain Driven DesignUma introdução ao Domain Driven Design
Uma introdução ao Domain Driven Design
 
A evolução do Business Intelligence
A evolução do Business IntelligenceA evolução do Business Intelligence
A evolução do Business Intelligence
 
Global Software Development - O que pode ser aplicado?
Global Software Development - O que pode ser aplicado?Global Software Development - O que pode ser aplicado?
Global Software Development - O que pode ser aplicado?
 
Google DSC Uninter - Info Session 23
Google DSC Uninter - Info Session 23Google DSC Uninter - Info Session 23
Google DSC Uninter - Info Session 23
 
Previsibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de softwarePrevisibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de software
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
 
Desenvolvendo o design na organização - Service Design Network Chapter Brazil
Desenvolvendo o design na organização - Service Design Network Chapter BrazilDesenvolvendo o design na organização - Service Design Network Chapter Brazil
Desenvolvendo o design na organização - Service Design Network Chapter Brazil
 
Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez! Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez!
 
TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...
TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...
TDC2018SP | Trilha UX Design - Design Operations (DesOps) - mapear o trabalho...
 
Imatia: apresentação corporativa
Imatia: apresentação corporativaImatia: apresentação corporativa
Imatia: apresentação corporativa
 
Escritório de governança de dados
Escritório de governança de dadosEscritório de governança de dados
Escritório de governança de dados
 
A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)
 
A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)
 
Apresentação freeck
Apresentação freeckApresentação freeck
Apresentação freeck
 
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoPalestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
 

Desenvolvimento Distribuído de Software

  • 1. Desenvolvimento Distribuído de Software Rafael Leonardo Vivian (DIN-UEM) rlvivian.uem [at] gmail [dot] com Twitter: @rafaelvivian
  • 2. Evolução do Desenvolvimento de Software ● Anos 50 e 60: não havia processo definido ● Anos 80: modelagem de dados ● Anos 90: orientação a objetos ● Anos 2000: distribuição do processo de desenvolvimento – Desenvolvimento Distribuído de Software (DDS) – Global Software Development (GSD)
  • 3. Desenvolvimento Distribuído de Software Fatores geradores de DDS Globalização Processos de terceirização Crescimento da importância dos SI
  • 4. Globalização Desenvolvimento de software ● Mercado local para mercado global ● Novas formas de cooperação e competição ● Avanço da economia, sofisticação dos meios de comunicação e pressão por custos ● Redes de cooperação e internacionalização ● Vantagens: custos, recursos humanos, benefícios fiscais, qualidade, agilidade e customização
  • 5. Outsourcing Desenvolvimento de software ● Políticas de terceirização adotadas pelas empresas ● Desenvolvimento de software é uma área-meio ● Terceirização completa ou parcial das áreas de sistemas e computação
  • 6. Outsourcing Fonte: Gartner/Brasscom
  • 7. Outsourcing Fonte: Gartner/Brasscom
  • 8. Crescimento da Importância dos Sistemas de Informação Desenvolvimento de software ● Papel estratégico nas empresas ● Evolução do uso das tecnologias ● Preocupação com novas abordagens ● Apoio às novas demandas da área de negócios
  • 9. Equipes Distribuídas Desenvolvimento de software ● Melhorias nas ferramentas e métodos têm permitido que grupos distribuídos possam trabalhar em equipe em um mesmo projeto
  • 10. Desenvolvimento Distribuído de Software Uma revolução da maneira como se desenvolve software
  • 11. Desenvolvimento Distribuído de Software Colaboração e cooperação entre departamentos de organizações e grupos de desenvolvedores que trabalham em conjunto
  • 12. Soluções Globais Benefícios ● Economia em termos de custo para grandes projetos ● Profissionais habilitados em idioma diferente ● Baixas taxas de rotatividade de pessoal ● Incentivo de governos locais
  • 13. Fatores Geradores de DDS Recursos globais a qualquer hora ● Maiores vantagens competitivas com soluções globais, em outros países
  • 14. Fatores Geradores de DDS Proximidade com o mercado local ● Conhecimento dos clientes e condições locais para oportunidades de mercado
  • 15. Fatores Geradores de DDS Desenvolvimento time-to-market ● Vantagens do fuso horário: – folow-the-sun (24 horas contínuas)
  • 16. Desenvolvimento Distribuído de Software Obter vantagens competitivas associadas a custo, qualidade e flexibilidade no desenvolvimento, aumentado a produtividade e diminuindo os riscos
  • 17. Dificuldades em DDS Dispersão geográfica Dispersão temporal Diferenças socioculturais
  • 18. Dificuldades em DDS Dispersão geográfica ● Distância física
  • 19. Dificuldades em DDS Dispersão temporal ● Diferenças de fuso horário
  • 20. Dificuldades em DDS Diferenças socioculturais ● Idioma ● Tradições ● Costumes ● Normas ● Comportamentos
  • 21. Dificuldades em DDS A sensação de distância se multiplica em diversas dificuldades na coordenação do trabalho para desenvolver software
  • 22. Dificuldades em DDS Outros fatores ● Questões estratégicas ● Questões técnicas ● Questões de gestão do conhecimento
  • 23. Fatores que motivam o uso DDS Demanda e custos Rapidez de resposta ao mercado Mercado e presença global Rigor e experiência Sinergia cultural Escala
  • 24. Fatores que motivam o uso DDS Demanda e custos ● Demanda por serviços de software supera disponibilidade de pessoas ● Alto custo dos profissionais ● Disponibilidade de recursos equivalentes em outras localidades a um custo mais baixo
  • 25. Fatores que motivam o uso DDS Rapidez de resposta ao mercado ● Redução do tempo para colocar um produto no mercado (time-to-market) ● Follow-the-sun: desenvolvimento 24 horas por dia
  • 26. Fatores que motivam o uso DDS Mercado e presença global ● Para satisfazer o mercado consumidor é necessária a presença das corporações ● Atingir o mercado global e ficar próxima de seus consumidores ● Empresa global é um atrativo de marketing
  • 27. Fatores que motivam o uso DDS Rigor e experiência ● Para melhorar a comunicação as equipes tendem a melhorar a documentação e as ferramentas de colaboração ● Determinados locais desenvolvem experiência e habilidade em áreas pouco difundidas em outros pontos da organização
  • 28. Fatores que motivam o uso DDS Sinergia cultural ● A diversidade amplia a criatividade e a inspiração ● Encontrar novas formas de resolver problemas ● Ampliar a capacidade de aprendizado
  • 29. Fatores que motivam o uso DDS Escala ● Centros de desenvolvimento de software aumentam e ficam difíceis de gerenciar
  • 30. Níveis de Dispersão em DDS Mesma localização física Distância nacional Distância continental Distância global
  • 31. Níveis de Dispersão em DDS Mesma localização física
  • 32. Níveis de Dispersão em DDS Distância nacional
  • 33. Níveis de Dispersão em DDS Distância continental
  • 34. Níveis de Dispersão em DDS Distância global
  • 35. Modelos de Negócio em DDS Controle e relação entre as pessoas Outsourcing terceirizar Insourcing departamento ou subsidiária
  • 36. Modelos de Negócio em DDS Localização geográfica Onshore mesmo país Offshore país diferente Nearshore país diferente próximo
  • 37. Modelos de Negócio em DDS Outsourcing Onshore Offshore Controle “terceirizar” Outsourcing Outsourcing e relação entre as Insourcing Onshore Offshore pessoas “departamento Insourcing Insourcing ou subsidiária” Onshore Offshore “mesmo país” “outro país” Localização geográfica
  • 38. Alguns Desafios do DDS Impacto na forma como os produtos são concebidos, testados e entregues aos clientes
  • 39. Alguns Desafios do DDS Pessoas Processo Tecnologia Gestão Comunicação
  • 40. Alguns Desafios do DDS Pessoas Confiança Diferenças culturais Espírito de equipe
  • 41. Alguns Desafios do DDS Processo Arquitetura do software Engenharia de requisitos Gerência de configuração Processo de desenvolvimento
  • 42. Alguns Desafios do DDS Tecnologia Tecnologia de colaboração Telecomunicações
  • 43. Alguns Desafios do DDS Gestão Coordenação e controle Gerenciamento de projetos Legislação
  • 44. Alguns Desafios do DDS Comunicação Awareness Formas de comunicação Fusos horários
  • 45. Conclusões Desenvolvimento Distribuído de Software é uma realidade
  • 46. Conclusões Equipes distribuídas apresentam diversas dificuldades e desafios
  • 47. Conclusões Equipes distribuídas precisam Confiança e espírito de equipe Controlar processo Colaboração Coordenação Comunicação
  • 48. Perguntas? Apresentação disponível em: www.din.uem.br/~pg45189/sifa-dds.pdf Rafael Leonardo Vivian (DIN-UEM) rlvivian.uem [at] gmail [dot] com Twitter: @rafaelvivian
  • 49. Obrigado! Rafael Leonardo Vivian (DIN-UEM) rlvivian.uem [at] gmail [dot] com Twitter: @rafaelvivian
  • 50. Extraído do livro “Desenvolvimento Distribuído de Software: desenvolvimento de software com equipes distribuídas”, Audy, J. e Prikladnicki, R., Rio de Janeiro : Elsevier, 2008.