View
212
Download
0
Embed Size (px)
Citation preview
Metodologias e Técnicas
Fornece suporte não apenas à “ponte” de comunicação, mas: Alocação de trabalho
Minimizar a complexidade de coordenação e integração entre os “sites”.
Gerência do Projeto Técnicas especiais de gerenciamento de
projetos para DSD.
Metodologias e Técnicas
Infra-estrutura Internet, Intranet’s, E-mail, Faxes,
Videoconferência. Estrutura dos times de desenvolvimento
Outras variáveis aparecem em comparação ao desenvolvimento não distribuído, como: diferenças culturais, organização interna, processos administrativos, motivação, comunicação, práticas de trabalho, coesão.
Particionamento
Diz respeito a como o trabalho é alocado entre os times remotos; Conceito do “dividir para conquistar”;
Todos os projetos podem ser particionados? Depende do tipo de projeto. Ex.: Vídeo-
game (requer alta interação entre seus desenvolvedores).
Particionamento
Existem algumas formas de se particionar um projeto distribuído: Funcionalidades; Subsistemas; Fases de desenvolvimento; Experiência e habilidades dos times; Versões de produto; Pela combinação de mais de uma das técnicas
citadas acima.
Particionamento
Funcionalidades A cada site é designada uma ou mais
tarefas atômicas do projeto; Recomenda-se observar o nível de
acoplamento entre as funcionalidades; Abordagem recomendada para DSD. Semelhante ao que conhecemos no
desenvolvimento convencional.
Particionamento
Subsistemas Baseia-se na arquitetura do sistema; Apresenta similaridade com o
particionamento por funcionalidades; Já era conhecida como uma forma
natural de desenvolvimento, sobretudo em grandes sistemas.
Particionamento
Fases de desenvolvimento A cada site é designada uma fase do
projeto: análise, manutenção, ... Abordagem pouco recomendada (a
complexidade de se criar uma interface adequada entre as fases e comunicação);
Entretanto, US Departament of Defense possui diferentes contratos há anos;
Particionamento
Experiência e habilidades Abordagem pobre no particionamento.
No entanto, é muito utilizada; Desenvolvimento de elementos críticos
ocorre apenas onde os experts estão localizados;
Recomenda-se utilizar a experiência do time como uma espécie de guia no particionamento por funcionalidades;
Particionamento
Versão de produto Abordagem recomendada em projetos
distribuídos; Ex.: Versão principal do Video-game
pode ser desenvolvida em paralelo com a versão para outra plataforma;
Similaridade com particionamento por funcionalidades;
Gerenciamento do Projeto
Devido a distância, somos levados a pensar que o processo de gerenciamento reflete um caos total;
Times remotos podem adotar processos distintos;
Processos padrões e específicos bem estabelecidos e uso de ferramentas especiais são cruciais;
Gerenciamento do Projeto
Um único processo versus diferentes processos de desenvolvimento Como tratar diferentes organizações,
estruturas, planejamentos, formalismos, processos administrativos,terminologias? Não há uma receita de bolo. Recomenda-se
observar a natureza das organizações. (homogêneas e heterogêneas) Alcatel versus Motorola; Imposição gera custos, tempo e desconforto.
Gerenciamento do Projeto
Evolução das ferramentas Ferramentas que auxiliem sobretudo no
processo de tomada de decisão Planejamento do projeto
Escalonamento de atividades; Gerenciamento / supervisão do projeto
Regras-padrão no gerenciamento; Identificação de riscos;
Análise em todo o ciclo de vida do projeto;
Gerenciamento do Projeto
Exemplos de ferramentas Comunicação entre times
TeamPortal; Microsoft NetMeeting;
Planejamento DSD Microsoft Project;
Identificação de Riscos/Problemas Rational’s ClearQuest Multisite;
Gerenciamento do Projeto
Exemplos de ferramentas Gerenciamento de Projeto
DSPMTool; Controle de Mudanças
Rational’s ClearQuest Multisite; Gerenciamento de Configuração
Concurrent Versions System;
Gerenciamento do Projeto
Erran Carmel cita seis esferas de ação: Conduta colaborativa; Formação dos times; Arquitetura e alocação de tarefas; Metodologias de desenvolvimento; Infra-estrutura de comunicação;
Gerenciamento do Projeto
Passos específicos para um plano de gerenciamento em DSD: Criar um planejamento preliminar (IEEE
Std. 1058); Analisar as particularidades de cada um
dos times remotos participantes; Não é dada tanta importância no
desenvolvimento convencional;
Gerenciamento do Projeto
Identificar outros parâmetros como: comunicação, cultura, processos administrativos, regulamentos governamentais, experiência e recursos disponíveis;
Utilizar o plano como ponto de partida para endereçar os desafios (esferas de ação);
Times de Desenvolvimento
Em primeiro lugar, deve-se cultivar o “espírito” de equipe;
Lado a lado com o estabelecimento da infra-estrutura de comunicação, com o particionamento e com o gerenciamento do projeto distribuído;
Aspectos como motivação, cultura e confiança devem ser observados;
Times de Desenvolvimento
Estrutura dos Times Vimos que a estrutura do sistema pode
determinar como o mesmo deve ser particionado;
Da mesma forma, pode ser feito um mapeamento da estrutura do sistema para a estrutura das equipes de desenvolvimento;
Times de Desenvolvimento
Estrutura dos Times Outras considerações
Presença de um nível razoável de coesão no tocante ao objetivo do projeto;
Competição entre os times; Qualidade dos resultados; Cooperação; Troca de informações;
Times de Desenvolvimento
Estrutura dos Times Adicional overhead no “time-líder” em
comparação ao desenvolvimento não distribuído;
Regras e especificidades dever ser objetivas e claras a todos;
Não deve haver falhas nestes pontos;
Times de Desenvolvimento
Que fazer? Viagem; Em algumas situações, o uso de e-mail’s,
telefones, faxes ou mesmo videoconferências ainda não é o bastante;
Desvantagem Custos elevados;
Times de Desenvolvimento
Cultura Cultura organizacional
Refere-se ao uso de metodologias e práticas no desenvolvimento de projetos;
Cultura nacional Língua nativa, normas, valores...
Deve-se levar em conta a “distância cultural” entre os times no DSD;
Times de Desenvolvimento
Motivação Baixa motivação implica em perdas na
produtividade de uma equipe; Aspecto comum entre DSD e o
desenvolvimento de projetos não distribuídos;
Viagens podem reforçar os laços de dedicação e de perseverança;
Times de Desenvolvimento
Conclusão Várias empresas têm adotado DSD como
uma estratégia de melhores soluções; Mercado, Parcerias, Avanço Tecnológico;
Existem aspectos que devem ser observados em relação ao desenvolvimento não distribuído;
Times de Desenvolvimento
Relações de Confiança Contato pessoal face-a-face é um
importante catalisador para promover a confiança entre pessoas;
Veja que a distância no DSD reduz as oportunidades de contato pessoal;
Aumento do risco na tomada de decisões críticas inerentes ao projeto;