Desenvolvimento
Distribuído de Software
                      Rafael Leonardo Vivian
            Departamento de Informática – DIN
        Universidade Estadual de Maringá – 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
                   Fatores geradores de DDS
●
    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
                   Fatores geradores de DDS


●
    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
                   Fatores geradores de DDS


●
    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
Empresas que usam DDS
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           Rapidez de
         e custos          resposta ao
                            mercado

                                    Mercado e
Escala               DDS            presença
                                     global


          Sinergia           Rigor e
          cultural         experiência
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
              Localização geográfica
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
            “terceirizar”    Outsourcing    Outsourcing
Controle e
 relação
 entre as    Insourcing
 pessoas “departamento         Onshore       Offshore
                              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/horus-dds.pdf

                              Rafael Leonardo Vivian
                    Departamento de Informática – DIN
                Universidade Estadual de Maringá – UEM
                        rlvivian.uem [at] gmail [dot] com
                                   Twitter: @rafaelvivian
Obrigado!

              Rafael Leonardo Vivian
    Departamento de Informática – DIN
Universidade Estadual de Maringá – 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.

Desenvolvimento Distribuído de Software

  • 1.
    Desenvolvimento Distribuído de Software Rafael Leonardo Vivian Departamento de Informática – DIN Universidade Estadual de Maringá – 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 deSoftware Fatores geradores de DDS... Globalização Processos de terceirização Crescimento da importância dos SI
  • 4.
    Globalização Fatores geradores de DDS ● 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 Fatores geradores de DDS ● 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 dosSistemas de Informação Fatores geradores de DDS ● 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.
  • 14.
    Fatores Geradores deDDS Recursos globais a qualquer hora ● Maiores vantagens competitivas com soluções globais, em outros países
  • 15.
    Fatores Geradores deDDS Proximidade com o mercado local ● Conhecimento dos clientes e condições locais para oportunidades de mercado
  • 16.
    Fatores Geradores deDDS Desenvolvimento time-to-market ● Vantagens do fuso horário: – folow-the-sun (24 horas contínuas)
  • 17.
    Desenvolvimento Distribuídode Software Obter vantagens competitivas associadas a custo, qualidade e flexibilidade no desenvolvimento, aumentado a produtividade e diminuindo os riscos
  • 18.
    Dificuldades em DDS Dispersão geográfica Dispersão temporal Diferenças socioculturais
  • 19.
    Dificuldades em DDS Dispersão geográfica ● Distância física
  • 20.
    Dificuldades em DDS Dispersão temporal ● Diferenças de fuso horário
  • 21.
    Dificuldades em DDS Diferenças socioculturais ● Idioma ● Tradições ● Costumes ● Normas ● Comportamentos
  • 22.
    Dificuldades em DDS A sensação de distância se multiplica em diversas dificuldades na coordenação do trabalho para desenvolver software
  • 23.
    Dificuldades em DDS Outros fatores ● Questões estratégicas ● Questões técnicas ● Questões de gestão do conhecimento
  • 24.
    Fatores que motivam o uso DDS Demanda Rapidez de e custos resposta ao mercado Mercado e Escala DDS presença global Sinergia Rigor e cultural experiência
  • 25.
    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
  • 26.
    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
  • 27.
    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
  • 28.
    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
  • 29.
    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
  • 30.
    Fatores que motivam o uso DDS Escala ● Centros de desenvolvimento de software aumentam e ficam difíceis de gerenciar
  • 31.
    Níveis de Dispersãoem DDS Mesma localização física Distância nacional Distância continental Distância global
  • 32.
    Níveis de Dispersãoem DDS Mesma localização física
  • 33.
    Níveis de Dispersãoem DDS Distância nacional
  • 34.
    Níveis de Dispersãoem DDS Distância continental
  • 35.
    Níveis de Dispersãoem DDS Distância global
  • 36.
    Modelos de Negócioem DDS Controle e relação entre as pessoas Localização geográfica
  • 37.
    Modelos de Negócioem DDS Controle e relação entre as pessoas Outsourcing terceirizar Insourcing departamento ou subsidiária
  • 38.
    Modelos de Negócioem DDS Localização geográfica Onshore mesmo país Offshore país diferente Nearshore país diferente próximo
  • 39.
    Modelos de Negócioem DDS Outsourcing Onshore Offshore “terceirizar” Outsourcing Outsourcing Controle e relação entre as Insourcing pessoas “departamento Onshore Offshore Insourcing Insourcing ou subsidiária” Onshore Offshore “mesmo país” “outro país” Localização geográfica
  • 40.
    Alguns Desafios doDDS Impacto na forma como os produtos são concebidos, testados e entregues aos clientes
  • 41.
    Alguns Desafios doDDS Pessoas Processo Tecnologia Gestão Comunicação
  • 42.
    Alguns Desafios doDDS Pessoas Confiança Diferenças culturais Espírito de equipe
  • 43.
    Alguns Desafios doDDS Processo Arquitetura do software Engenharia de requisitos Gerência de configuração Processo de desenvolvimento
  • 44.
    Alguns Desafios doDDS Tecnologia Tecnologia de colaboração Telecomunicações
  • 45.
    Alguns Desafios doDDS Gestão Coordenação e controle Gerenciamento de projetos Legislação
  • 46.
    Alguns Desafios doDDS Comunicação Awareness Formas de comunicação Fusos horários
  • 47.
  • 48.
    Conclusões Equipesdistribuídas apresentam diversas dificuldades e desafios
  • 49.
    Conclusões Equipes distribuídas precisam... Confiança e espírito de equipe Controlar processo Colaboração Coordenação Comunicação
  • 50.
    Perguntas? Apresentação disponível em: www.din.uem.br/~pg45189/horus-dds.pdf Rafael Leonardo Vivian Departamento de Informática – DIN Universidade Estadual de Maringá – UEM rlvivian.uem [at] gmail [dot] com Twitter: @rafaelvivian
  • 51.
    Obrigado! Rafael Leonardo Vivian Departamento de Informática – DIN Universidade Estadual de Maringá – UEM rlvivian.uem [at] gmail [dot] com Twitter: @rafaelvivian
  • 52.
    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.