Desenvolvimento Distribuído de Software

Propaganda
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
“terceirizar”
Controle
e relação
Insourcing
entre as
pessoas “departamento
ou subsidiária”
Onshore
Outsourcing
Offshore
Outsourcing
Onshore
Insourcing
Offshore
Insourcing
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.
Download