Pontifícia Universidade Católica do Rio Grande do Sul                 Faculdade de Informática  Programa de Pós-Graduação ...
Agenda•   Introdução•   Objetivos•   Metodologia•   Base Teórica•   FTSProc: Processo Proposto•   Experimento    – Princip...
Introdução• Processo de globalização;• Durante a implementação do DDS, surgem diversos desafios   – Diferença de fuso horá...
Questão de Pesquisa    Como transferir trabalho durante a fase dedesenvolvimento do ciclo de vida de software em um    amb...
Objetivos• Objetivo Geral   – Propor um processo de transferência de trabalho (hand-off) para a fase de     desenvolviment...
Metodologia• Exploratório• Experimento  – Método de pesquisa [WOH00]                                 6
Desenho de Pesquisa                      7
Base Teórica - DDS• DDS surgiu nos anos 90, onde as empresas começaram a desenvolver  software com times distribuídos [LAN...
Base Teórica - FTS• FTS surge para atenuar os desafios relacionados a diferença de fuso  horário• Utilizar o fuso horário ...
Trabalhos Relacionados• Fadel et al. – 2000   – Conceito chamado de 24hr Design and Development   – Reduzir o tempo necess...
Trabalhos Relacionados• Denny et al. – 2008   –   Conceito de Composite Personae   –   Equipes distribuídas equivalentes –...
Processo Proposto - FTSProc• Este processo visa atenuar os desafios de coordenação,  sincronização e comunicação durante a...
Processo Proposto - FTSProc                              13
Processo Proposto - Requisitos• Requisitos definidos daforma mais clara possível.Utilização do conceito de UserStory, deix...
Processo Proposto - Análise• Artefatos mostrando comoos requisitos serãoimplementados• Utilização de TDD baseadonos critér...
Processo Proposto• Requisitos definidos deforma clara• Testes unitários criados, parautilizar a técnica de TDD• Fase de de...
Processo Proposto – Inicio do Dia• Inicio de um dia de trabalho• Carrega-se a versão maisrecente do código fonte doprojeto...
Processo Proposto – Planejamento• Planejamento diário [FAD00]• Distribuição das tarefas• Distribuição utilizando comobase ...
Processo Proposto – Codificação• Esta etapa marca aimplementação dos requisitos,seguindo a ordem deprioridades definidas n...
Processo Proposto – Check-In• Cada membro da equipedeve reservar um tempo pararealizar o Check-In do trabalhorealizado dur...
Processo Proposto – Formulário de Hand-Off• Cada membro da equipedeve reservar um tempo parapreencher o formulário dehand-...
Processo Proposto – Formulário de Hand-Off• Cada membro da equipedeve reservar um tempo parapreencher o formulário dehand-...
Processo Proposto – Funcionalidade Implementada• Este processo é iterativo eestes cinco estados serãorepetidos a cada dia ...
Ferramenta de Apoio– Realiza todo o controle necessário para a  execução do FTSProc– Definição dos seguintes papéis:   – A...
Experimento• Principal objetivo:   – Comparar a eficiência de um projeto que utiliza o processo proposto     (FTSProc) com...
Experimento• Atividade para avaliar o FTSProc:   – Desenvolvimento de um software simples   – Operações matemáticas• Aluno...
Experimento • Distribuição dos participantes:                                                             FTS Tempo       ...
Experimento• Distribuição dos participantes  do experimentoS• 8 participantes• Divididos em 2 grupos   • FTSProc X Ad hoc•...
Experimento – Resultados      Quantidade de requisitos implementados em cada                   uma das abordagens:  Requis...
Experimento – Resultados                                 Duração dos Shifts               FTSProc                         ...
Experimento – Resultados       A transferência de trabalho de um centro ao outro ocorreu da forma adequada?               ...
Considerações Finais• Objetivos Propostos   – Complementar os estudos da base     teórica   – Propor um processo prelimina...
Contribuições• Teoria   – Criação do Processo para transferência de trabalho – FTSProc   – Experimento utilizando o FTSPro...
Limitações do Trabalho• Tempo disposto para a pesquisa   – Iniciou com SOA em Ambientes de DDS     • Apesar de atingir os ...
Estudos Futuros• Replicar o experimento com uma amostra maior de participantes   – Possibilitar a utilização de métodos es...
Publicações• Researching into Follow-the-Sun Software Development: Challenges and  Opportunities   – Local de publicação: ...
Submissões• FTSProc: a Process to Alleviate the Challenges of Projects that Use  the Follow-the-Sun Strategy   –   Interna...
Pontifícia Universidade Católica do Rio Grande do Sul                 Faculdade de Informática  Programa de Pós-Graduação ...
Upcoming SlideShare
Loading in …5
×

Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Projetos que Adotam a Estratégia Follow-the-Sun

349 views
287 views

Published on

Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Projetos que Adotam a Estratégia Follow-the-Sun

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
349
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Projetos que Adotam a Estratégia Follow-the-Sun

  1. 1. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação em Ciência da ComputaçãoFTSProc - Um Processo para Minimizar as Dificuldades de Projetos que Adotam a Estratégia Follow-the-Sun Aluno Estevão Ricardo Hess Defesa da Orientador Dissertação de Mestrado Prof. Dr. Jorge Luis Nicolas Audy Apoio Março de 2012 Dell Computadores do Brasil
  2. 2. Agenda• Introdução• Objetivos• Metodologia• Base Teórica• FTSProc: Processo Proposto• Experimento – Principais resultados• Considerações Finais• Publicações 2
  3. 3. Introdução• Processo de globalização;• Durante a implementação do DDS, surgem diversos desafios – Diferença de fuso horário [HOL06, HER01, TRE06] – Surge a estratégia follow-the-sun para utilizar esta diferença como uma vantagem [CAR09, HOL06, LIN07, SET07, SOL10, KNO07, TRE06]• Uso da estratégia FTS apresenta alguns desafios – Transferências de trabalho (hand-off) [SET07, SOL10, CAR09]• Dificuldades de coordenação e comunicação, principalmente durante a transferência de trabalho [SET07, SOL10, CAR09]• Neste sentido, esta pesquisa estará focada nesta transferência de trabalho em projetos que utilizam a estratégia FTS em ambiente de DDS 3
  4. 4. Questão de Pesquisa Como transferir trabalho durante a fase dedesenvolvimento do ciclo de vida de software em um ambiente de DDS utilizando estratégia FTS? 4
  5. 5. Objetivos• Objetivo Geral – Propor um processo de transferência de trabalho (hand-off) para a fase de desenvolvimento do ciclo de vida, para projetos que utilizam a estratégia FTS.• Objetivos Específicos – Complementar os estudos da base teórica – Propor um processo preliminar de transferência de trabalho durante a fase de desenvolvimento do ciclo de vida – Desenvolver uma ferramenta de apoio ao processo de transferência de trabalho – Escrever artigos científicos decorrentes da pesquisa 5
  6. 6. Metodologia• Exploratório• Experimento – Método de pesquisa [WOH00] 6
  7. 7. Desenho de Pesquisa 7
  8. 8. Base Teórica - DDS• DDS surgiu nos anos 90, onde as empresas começaram a desenvolver software com times distribuídos [LAN08]• O DDS é caracterizado sempre que um ou mais recursos humanos envolvidos no projeto estiver fisicamente distante dos demais [AUD07] Vantagens Desafios  Redução de custos [LAN08, DAM06, PRI08, AUD07, × Legislação [KAR98]; MAR09, KNO07]; × Arquitetura de Software [BOS10, AUD07, PRI09, HER99];  Ganho de proximidade com o cliente [LAN08, × Processos de desenvolvimento [AUD07, PRI09]; KNO07]; × Telecomunicações [AUD07];  Redução do tempo de projeto / time-to-market × Gerência de configuração [MAR09]; [LAN08, DAM06, PRI08, CAR09]; × Gerenciamento de projetos [PRI09];  Recursos especializados e globais [LAN08, DAM06, × Confiança [AUD07, PRI09, OSH07]; PRI08, AUD07, MAR09]. × Conflitos [AUD07, PRI09]; × Diferenças culturais [AUD07, HOL06, LAN08, LIN07]; × Diferentes fusos horários [AUD07, HOL06, PRI09, LIN07]. 8
  9. 9. Base Teórica - FTS• FTS surge para atenuar os desafios relacionados a diferença de fuso horário• Utilizar o fuso horário como uma vantagem para o projeto através da estratégia FTS [CAR09, HOL06, LIN07, SET07, SOL10, KNO07, TRE06] – O follow-the-sun é uma estratégia de desenvolvimento global de software; – O objetivo é a diminuição do time-to-market, acelerando a construção do produto final; – Este ambiente opera com equipes distribuídas em fusos horários e países distintos; – Cada equipe detém o trabalho por determinado período; – A transferência pode ser para qualquer tipo de tarefa; – Esta transferência deve acontecer diariamente e de forma padronizada. 9
  10. 10. Trabalhos Relacionados• Fadel et al. – 2000 – Conceito chamado de 24hr Design and Development – Reduzir o tempo necessário para o desenvolvimento de um projeto – Experimento – distribuindo equipes através de diferentes fusos horários – Criou-se um processo de transferência de trabalho – Reserva 30 minutos de cada centro para preparar informações do hand-off – trabalho simultâneo – Equipe iniciando o trabalho realiza uma reunião de planejamento para definir o trabalho diário – Este ciclo encerra-se quando todas as funcionalidades estão implementadas 10
  11. 11. Trabalhos Relacionados• Denny et al. – 2008 – Conceito de Composite Personae – Equipes distribuídas equivalentes – capacidade – Transição baseia-se nas reuniões de Stand-up – Ao final do dia • desenvolvedores devem adicionar os seus resultados no repositório de código • preencher um formulário automatizado – i. Quais tarefas foram realizadas desde a última reunião? – ii. O que está planejando realizar até a próxima reunião? – iii. Existe algum problema impedindo você de realizar seu objetivo? – Próxima equipe continua o trabalho baseado nas informações fornecidas pelo site anterior 11
  12. 12. Processo Proposto - FTSProc• Este processo visa atenuar os desafios de coordenação, sincronização e comunicação durante a transferência de trabalho durante a fase de desenvolvimento do ciclo de vida• Os principais objetivos deste processo são i. Ao iniciar um dia de trabalho, uma equipe deve, de forma simples, ter a percepção do trabalho que deve ser desenvolvido e o trabalho já realizado; ii. Evitar a necessidade de comunicação síncrona entre equipes distribuídas; iii. Garantir que a transferência de trabalho de um centro de desenvolvimento para o outro ocorra sem problemas. 12
  13. 13. Processo Proposto - FTSProc 13
  14. 14. Processo Proposto - Requisitos• Requisitos definidos daforma mais clara possível.Utilização do conceito de UserStory, deixando claro oscritérios de aceitação [GUP09,HAU06] 14
  15. 15. Processo Proposto - Análise• Artefatos mostrando comoos requisitos serãoimplementados• Utilização de TDD baseadonos critérios de aceitação 15
  16. 16. Processo Proposto• Requisitos definidos deforma clara• Testes unitários criados, parautilizar a técnica de TDD• Fase de desenvolvimentoinicia neste ponto 16
  17. 17. Processo Proposto – Inicio do Dia• Inicio de um dia de trabalho• Carrega-se a versão maisrecente do código fonte doprojeto• Relatório com os testes jácobertos• Análise do formulário deHand-Off disponibilizado pelosite anterior• [DEN08, GUP09] 17
  18. 18. Processo Proposto – Planejamento• Planejamento diário [FAD00]• Distribuição das tarefas• Distribuição utilizando comobase as informaçõesdisponibilizadas pelos siteanterior, juntamente com orelatório de testesUnitários [FAD00, DEN08,DEN09] 18
  19. 19. Processo Proposto – Codificação• Esta etapa marca aimplementação dos requisitos,seguindo a ordem deprioridades definidas no passo2• Nesta etapa, a equipe focano desenvolvimento dasfuncionalidades 19
  20. 20. Processo Proposto – Check-In• Cada membro da equipedeve reservar um tempo pararealizar o Check-In do trabalhorealizado durante o dia 20
  21. 21. Processo Proposto – Formulário de Hand-Off• Cada membro da equipedeve reservar um tempo parapreencher o formulário dehand-off• Formulário baseado nasStand-up Meetings• Marca o fim do dia detrabalho 21
  22. 22. Processo Proposto – Formulário de Hand-Off• Cada membro da equipedeve reservar um tempo parapreencher o formulário dehand-off• Formulário baseado nasStand-up Meetings• Marca o fim do dia de1. Quais tarefas foram realizadas durante este período de trabalho?trabalho2. Qual a melhor forma de continuar o trabalho no próximo período?3. Existe algum problema impedindo de continuar o trabalho? 22
  23. 23. Processo Proposto – Funcionalidade Implementada• Este processo é iterativo eestes cinco estados serãorepetidos a cada dia detrabalho, para cada time dedesenvolvimento distribuído[FAD00, GUP09] 23
  24. 24. Ferramenta de Apoio– Realiza todo o controle necessário para a execução do FTSProc– Definição dos seguintes papéis: – Administrador – Gerente Global – Gerente de Projeto – Desenvolvedor– Papéis mínimos para um projeto: – Administrador – Gerente de Projeto 24
  25. 25. Experimento• Principal objetivo: – Comparar a eficiência de um projeto que utiliza o processo proposto (FTSProc) com um projeto que não utilizam tal processo (Ad hoc). – Quantidade de requisitos corretamente implementados• Hipóteses definidas – Hipótese Nula (H0): • H0: reqImplFTSProc = reqImplAdHoc – Hipótese Alternativa (H1): • H1: reqImplFTSProc > reqImplAdHoc – Hipótese Alternativa (H2): • H2: reqImplFTSProc < reqImplAdHoc 25
  26. 26. Experimento• Atividade para avaliar o FTSProc: – Desenvolvimento de um software simples – Operações matemáticas• Alunos do PPGCC/PUC• Profissionais oriundos de empresas do Parque Tecnológico da PUCRS (TECNOPUC)• Atendiam requisitos mínimos – Java – Test-driven Development (TDD) – JUnit – FTS – DDS 26
  27. 27. Experimento • Distribuição dos participantes: FTS Tempo Exp. Java Tempo (anos) JUnit TDD DDS DDS FTS IDFTSProc S1 Avançado 6 Intermediário 0 >5 Avançado Intermediário S2 Básico 2 Nenhum 0 3-5 Básico Intermediário S3 Avançado 5 Básico 0 3-5 Intermediário Básico S4 Intermediário 5 Nenhum 0 >5 Intermediário Intermediário S5 Avançado 8 Básico 2 >5 Avançado IntermediárioAd Hoc S6 Intermediário 4 Nenhum 0 3-5 Intermediário Intermediário S7 Intermediário 4 Nenhum 0 3-5 Intermediário Básico S8 Intermediário 4 Básico 0 3-5 Avançado Básico 27
  28. 28. Experimento• Distribuição dos participantes do experimentoS• 8 participantes• Divididos em 2 grupos • FTSProc X Ad hoc• Utilizando dois sites• Fuso horário simulado  Um dia = 20 minutos• Realizado em laboratório  Controle 28
  29. 29. Experimento – Resultados Quantidade de requisitos implementados em cada uma das abordagens: Requisitos implementados FTSProc Ad hoc Corretamente 12 4 Parcialmente 0 8 Não Implementado 0 0 Total do Projeto 12 12 29
  30. 30. Experimento – Resultados Duração dos Shifts FTSProc Ad hoc Hora Hora Hora Hora Atividade Tempo Total Atividade Tempo Total Inicial Final Inicial Final Análise dos Análise dos 18:05 18:10 5 Minutos 17:52 17:57 5 Minutos requisitos requisitos Shift 1 18:12 18:32 20 Minutos Shift 1 18:02 18:22 20 Minutos Shift 2 18:40 19:00 20 Minutos Shift 2 18:22 18:42 20 Minutos Shift 3 19:06 19:26 20 Minutos Shift 3 18:45 19:05 20 Minutos Shift 4 19:27 19:34 7 Minutos Shift 4 19:06 19:26 20 Minutos 30
  31. 31. Experimento – Resultados A transferência de trabalho de um centro ao outro ocorreu da forma adequada? FTSProc Ad hoc Sim 4 3 Não 0 1 Total 4 4No inicio de cada shift, você percebia de forma direta como o trabalho deveria ser continuado? FTSProc Ad hoc Sim 4 0 Não 0 4 Total 4 4 Você acredita que a transferência de trabalho de um centro de desenvolvimento para o outro acarretou um overhead significativo no trabalho? FTSProc Ad hoc Sim 0 1 Não 4 3 Total 4 4 31
  32. 32. Considerações Finais• Objetivos Propostos – Complementar os estudos da base teórica – Propor um processo preliminar de transferência de trabalho durante a fase de desenvolvimento do ciclo de vida – Desenvolver uma ferramenta de apoio ao processo de transferência de trabalho – Escrever artigos científicos decorrentes da pesquisa 32
  33. 33. Contribuições• Teoria – Criação do Processo para transferência de trabalho – FTSProc – Experimento utilizando o FTSProc – Lições aprendidas sobre o experimento e todas as informações disponibilizadas para a replicação – Definição do conceito Follow-the-Sun a partir de diversos autores• Mercado – Time-to-market / Ganho de produtividade – Ferramenta de apoio ao FTSProc• Pesquisador – Realizar pesquisa em uma área desconhecida: FTS – Aprofundar os conhecimentos em DDS – Com o conhecimento adquirido será possível continuar os estudos na área acadêmica ou, ainda, aplicar os resultados obtidos no aspecto profissional 33
  34. 34. Limitações do Trabalho• Tempo disposto para a pesquisa – Iniciou com SOA em Ambientes de DDS • Apesar de atingir os objetivos inicialmente propostos, seria possível avançar ainda mais• Utilização de Experimento como método de pesquisa – Baixo número de participantes, impossibilitou uma análise estatística dos resultados – Generalização específica – escopo fictício criado pelo pesquisador – Influência subjetiva do pesquisador e dos participantes sobre os resultados• Ferramenta de Apoio – Todos os requisitos planejados foram implementados – Necessário rever aspectos de usabilidade e confiabilidade – ambiente real 34
  35. 35. Estudos Futuros• Replicar o experimento com uma amostra maior de participantes – Possibilitar a utilização de métodos estatísticos para a validação das hipóteses• Estudo de Caso – Avaliar a utilização do FTSProc em um ambiente real, utilizando um projeto e uma equipe real – Comprovar se os resultados oriundos do experimento são equivalentes em um ambiente real• Desenvolvimento de trabalhos com o objetivo de expandir este processo para outras fases SDLC – Outras fases podem ser contempladas com a criação de um processo para uso da estratégia FTS – Criar um processo composto por diversos sub-processos – Todo o projeto de software poderia ser realizado utilizando a estratégia FTS – Redução do tempo de construção em todas as fases de um projeto – Objetivo de trabalho do Grupo MuNDDoS 35
  36. 36. Publicações• Researching into Follow-the-Sun Software Development: Challenges and Opportunities – Local de publicação: International Conference on Global Software Engineering (ICGSE 11). IEEE Computer Society, Finlândia; – Nesse artigo é descrito a necessidade da criação de um processo de transferência de trabalho para projetos que utilizam a estratégia FTS; – Definição do conceito de FTS, com base na literatura.• Follow-the-Sun: Um Processo para Minimizar as Dificuldades de Projetos que Adotam esta Estratégia – Local de publicação: V Workshop de Desenvolvimento Distribuído de Software CBSoft – WDDS 2011, São Paulo; – Nesse artigo é apresentado o processo preliminar proposto para a transferência de trabalho para projetos que utilizam a estratégia FTS.• Challenges in the Follow-the-Sun strategy: How to alleviate them. – Artigo aceito como pôster – Local de Publicação: AMCIS 2011 Proceedings - All Submissions, Detroit, EUA. – Neste artigo está descrito algumas dificuldades que a estratégia FTS apresenta, e formas para amenizar estas dificuldades, incluindo a ideia principal do processo proposto. 36
  37. 37. Submissões• FTSProc: a Process to Alleviate the Challenges of Projects that Use the Follow-the-Sun Strategy – International Conference on Global Software Engineering (ICGSE 12). – Descrição do FTSProc – Processo experimental realizado – Resultados do experimento 37
  38. 38. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação em Ciência da ComputaçãoFTSProc - Um Processo para Minimizar as Dificuldades de Projetos que Adotam a Estratégia Follow-the-Sun Aluno Estevão Ricardo Hess Defesa da Orientador Dissertação de Mestrado Prof. Dr. Jorge Luis Nicolas Audy Apoio Março de 2012 Dell Computadores do Brasil

×