SCRUM EMPREGADO EM UM SOFTWARE LIVRE
COMO FERRAMENTA DE GERENCIAMENTO DO
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE
THIAGO BARROS
GitHub: https://github.com/Barrostsb
thiagosbarros02@gmail.com
ADS - 640
Motivação
• Fracassos em projetos de TI
– Atraso no cronograma
– Estouro de orçamento
prazo inicial
prazo com
atraso
Custo Inicial
Custo com
estouro de
orçamento
Fonte: <http://exame.abril.com.br/tecnologia/noticias/ti-eficiente-
e-sem-atrasos- m0116236>
Como resolver ???
• Metodologias Ágeis de desenvolvimento como alternativa para resolução
destes problemas (Flexibilidade para reagir aos feedback de clientes).
SCRUM
Fonte: <http://www.banksystem.com.br/empresa>
Como resolver ???
• Software Livre da GNU
• Um programa é software livre se os usuários possuem as quatro liberdades essenciais:
– A liberdade de executar o programa, para qualquer propósito (liberdade 0).
– A liberdade de estudar como o programa funciona, e adaptá-lo às suas necessidades (liberdade 1). Para
tanto, acesso ao código-fonte é um pré-requisito.
– A liberdade de redistribuir cópias de modo que você possa ajudar ao próximo (liberdade 2).
– A liberdade de distribuir cópias de suas versões modificadas a outros (liberdade 3). Desta forma, você pode
dar a toda comunidade a chance de beneficiar de suas mudanças. Para tanto, acesso ao código-fonte é um
pré-requisito.
Fonte: <http://www.gnu.org/gnu/gnu-history.html>
Objetivo
Dado o problema, e a possível solução, o
objetivo desta pesquisa foi:
Verificar como o Scrum empregado em um Software
Livre, pode auxiliar no gerenciamento de projetos na
área de Tecnologia da Informação.
O projeto
• Criação de um framework, para gerenciamento de projetos
que seguem Scrum como metodologia de desenvolvimento
O projeto
• Criação de um framework, para gerenciamento de projetos
que seguem Scrum como metodologia de desenvolvimento
Levantamento de requisitos para o sistema
• Questionário (Profissionais de TI, Administradores,
outros)
• Maioria usa algum gerenciamento
• Poucos usam um sistema informatizado
• Possuem problemas com atraso e/ou custo
– Vários requisitos para um “software Scrum”
• Scrum TaskBoard
• Burn Down Chart
Tecnologias utilizadas para construção do sistema
Metodologias utilizadas para construção do sistema
• Scrum
• Controle de versão
– E-GIT
– Github
– Google Code
O projeto
O projeto
O projeto
O projeto
• Colocar pagina inicial criar proj stb bdc....
O projeto
• Colocar pagina inicial criar proj stb bdc....
O projeto
• Colocar pagina inicial criar proj stb bdc....
O projeto
• Colocar pagina inicial criar proj stb bdc....
O projeto
• Colocar pagina inicial criar proj stb bdc....
O projeto
O projeto
O projeto
O projeto
O projeto
O projeto
O projeto
O projeto
O projeto
O projeto
• Testes com usuários
– Observação direta(Verificar facilidades e
dificuldades no uso do framework)
– Entrevista
Resultados
• Melhoras significantes no processo de gerenciamento
– "a divisão do projeto em pequenas tarefas nos dá certa noção do total
que temos que fazer, [...], utilizando o velho ditado: é dividir para
conquistar”. (Entrevistado 1)
– "percebi uma melhora na gerencia do tempo, [...], meu feedback é claro
quanto ao uso do Scrum informatizado: tempo é dinheiro“. (Entrevistado
1)
Resultados
• Melhoras no relacionamento com o cliente
– "O sistema me permitiu uma conversa um pouco
mais técnica e mais confiante com meu cliente" .
(Entrevistado 2)
Resultados
Melhoras significantes no processo de gerenciamento
Resultados
Melhora em
tempo ou custo
Não obtiveram
melhora
Melhora em
Organização e
relacionamento com o
cliente
Não obtiveram
melhora
• Sistema necessita ser adaptável
– "O gerenciamento de minha equipe virtual ficou mais fácil, [...], mas
eu preciso de uma versão com vídeo conferência" . (Entrevistado 3)
– Em 90% dos testes, os usuários afirmaram que adicionariam algum
novo requisito ou mudariam algo no sistema
Resultados
• Tecnologias que não conhecia
– SCRUM
– JSF (PRIMEFACES)
– JPA (Hibernate)
• Vários softwares parecidos
• Tempo
Desafios
• Papel de gerência
– Sucessos e falhas de gerentes
– Sucessos e falhas nos processos de desenvolvimento
de software
– Aprofundamento no gerenciamento com Scrum
• Conhecimentos a mais
– Controle de versão
– Frameworks Java
– Banco de dados ORM
Formação
• Scrum trouxe melhora no processo de
desenvolvimento:
– Tempo
– Planejamento
– Comunicação com o cliente
– O sistema de gerenciamento necessita ser
adaptável
Conclusão
• Outras áreas, além de TI, possuem problemas
com gerenciamento de projetos
– Adaptação no framework de forma a adaptá-lo ao
uso de profissionais de outras áreas
Conclusão – Projetos Futuros
Perguntas ? ? ?
Agradecimentos
• Projeto e Documentação:
– Prof Ms. Danilo Augusto Moschetto
– Prof Dr. Rodrigo Elias Bianchi
• Pesquisa e Artigo:
– Profª Ms. Aline Raquel Franceschini
• Desenvolvimento Web e Java:
– Profª Ms. Tiago Henrique Trojahn
• Engenharia de Software e Scrum:
– Profª Ms. Elis Cristina Montoro Hernandes
Veja o projeto no GitHub
https://github.com/Barrostsb/Prj_Prime_Scrum
Referências
• AUGUSTO, M. V. Desenvolvimento de software com apoio de práticas Scrum. Monografia apresentada ao curso de Processamento de Dados (Tecnólogo em Processamento de Dados.).
Faculdade de Tecnologia de São Paulo, 2007. Disponível em: < http://www.fatecsp.br/dti/tcc/tcc0011.pdf>. Acesso em: mar. 2014.
• CHIAVENATO, I. Novos paradigmas: como as mudanças estão mexendo com as empresas. 5. ed. São Paulo: Manole, 2008.
• DRUCKER, Peter F. Administrando em Tempos de Grandes Mudanças. São Paulo: Editora Pioneira, 1998.
• GILLIARD C. Aplicações Java para a web com JSF e JPA. São Paulo: Casa do Código, 2012.
• GIT. FAST Version Control: Primeiros passos. 2014, Disponível em: <http://git-scm.com/book/pt-br/Primeiros-passos-Uma-Breve-Hist%C3%B3ria-do-Git> Acesso em: maio 2014.
• GNU. OPERATING System. Overview of the GNU System. 2013. Disponível em: < http://www.gnu.org/gnu/gnu-history.html>. Acesso em: fev. 2014.
• GRANDO, N. Metodologias Ágeis no Desenvolvimento de Projetos de Software, 2010, Disponível em: <http://neigrando.wordpress.com/2010/09/06/metodologias-ageis-no-
desenvolvimento-de-projetos-de-software/> Acesso em: abr. 2014.
• HIBERNATE. Hibernate ORM: Idiomatic persistence for Java and relational databases. 2014. Disponível em: <http://hibernate.org/orm/>. Acesso em: maio 2014.
• JAVA. O que é a Tecnologia Java e porque preciso dela?.2014. Disponível em: <http://www.java.com/pt_BR/download/faq/whatis_java.xml>. Acesso em: maio 2014.
• KNIBERG, H. Scrum and XP from the Trenches: How we do Scrum. InfoQ, 2007. Disponível em: <http://www.infoq.com/br/minibooks/scrum-xp-from-the-trenches>. Acesso em: mar.
2014.
• LAKATOS, E. M. e MARCONI, M. A. Fundamentos de Metodologia científica. 4.ed. São Paulo: Atlas, 2001.
• LIMA, M. C. Monografia: A Engenharia Da Produção Acadêmica. São Paulo: Saraiva, 2004.
• MYSQL. Why MySQL?.2014. Disponível em: <http://www.mysql.com/why-mysql/>. Acesso em: maio 2014.
• FÉ, A. L. M. Revista Exame: TI eficiente e sem atrasos. São Paulo: Editora Abril, 2006. Disponível em:< http://exame.abril.com.br/tecnologia/noticias/ti-eficiente-e-sem-atrasos-
m0116236>. Acesso em: mar. 2014.
• STEFFEN, J. B. IBM®: O que são essas tais de metodologias Ágeis? . Disponível em:<
https://www.ibm.com/developerworks/community/blogs/rationalbrasil/entry/mas_o_que_s_c3_a3o_essas_tais_de_metodologias__c3_a1geis?lang=en>. Acesso em: maio 2014.
• POLETE A.C.A et al. Trabalho em Equipes Virtuais: Efeitos da Maturidade da Equipe sobre a Eficácia do Trabalho em Projetos Virtuais. XXXVI Encontro da ANPAD, XXXVIEnPAD 2012. Rio
de Janeiro. Disponível em:< http://www.anpad.org.br/diversos/trabalhos/EnANPAD/enanpad_2012/GPR/Tema%2004/2012_GPR2452.pdf >. Acesso em: abr. 2014.
• PRIMEFACES. Why PrimeFaces. 2014. Disponível em: < http://www.primefaces.org/why
• primefaces>. Acesso em: maio 2014.
• PROJECT Management Institute Inc. PMI: O que é Gerenciamento de Projetos?. 2014. Disponível em: <http://brasil.pmi.org/brazil/AboutUS/WhatIsProjectManagement.aspx>. Acesso
em: fev. 2014.
• ROSSETO, F. Gestão Empresarial: Usabilidade de Software, 2012, Disponível em:<http://www.diagnosticoweb.com.br/blogs/fabio-rossetto/gestao-empresarial-usabilidade-de-
software.html>. Acesso em: abr. 2014.
• TZU, Sun. A Arte da Guerra, tradução de Cândida de Sampaio Bastos, São Paulo: Golden books, 2007.
• VARASCHIN J. D. Monografia: Implantando o SCRUM em um Ambiente de Desenvolvimento de Produtos para Internet, Pontifícia Universidade Católica do Rio de Janeiro. PUC, 2009,
Disponível em:<ftp://ftp.inf.puc-rio.br/pub/docs/techreports/09_07_varaschim.pdf>. Acesso em: mar. 2014.

Apresentacao artigo final

  • 1.
    SCRUM EMPREGADO EMUM SOFTWARE LIVRE COMO FERRAMENTA DE GERENCIAMENTO DO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE THIAGO BARROS GitHub: https://github.com/Barrostsb thiagosbarros02@gmail.com ADS - 640
  • 2.
    Motivação • Fracassos emprojetos de TI – Atraso no cronograma – Estouro de orçamento prazo inicial prazo com atraso Custo Inicial Custo com estouro de orçamento Fonte: <http://exame.abril.com.br/tecnologia/noticias/ti-eficiente- e-sem-atrasos- m0116236>
  • 3.
    Como resolver ??? •Metodologias Ágeis de desenvolvimento como alternativa para resolução destes problemas (Flexibilidade para reagir aos feedback de clientes). SCRUM Fonte: <http://www.banksystem.com.br/empresa>
  • 4.
    Como resolver ??? •Software Livre da GNU • Um programa é software livre se os usuários possuem as quatro liberdades essenciais: – A liberdade de executar o programa, para qualquer propósito (liberdade 0). – A liberdade de estudar como o programa funciona, e adaptá-lo às suas necessidades (liberdade 1). Para tanto, acesso ao código-fonte é um pré-requisito. – A liberdade de redistribuir cópias de modo que você possa ajudar ao próximo (liberdade 2). – A liberdade de distribuir cópias de suas versões modificadas a outros (liberdade 3). Desta forma, você pode dar a toda comunidade a chance de beneficiar de suas mudanças. Para tanto, acesso ao código-fonte é um pré-requisito. Fonte: <http://www.gnu.org/gnu/gnu-history.html>
  • 5.
    Objetivo Dado o problema,e a possível solução, o objetivo desta pesquisa foi: Verificar como o Scrum empregado em um Software Livre, pode auxiliar no gerenciamento de projetos na área de Tecnologia da Informação.
  • 6.
    O projeto • Criaçãode um framework, para gerenciamento de projetos que seguem Scrum como metodologia de desenvolvimento
  • 7.
    O projeto • Criaçãode um framework, para gerenciamento de projetos que seguem Scrum como metodologia de desenvolvimento
  • 8.
    Levantamento de requisitospara o sistema • Questionário (Profissionais de TI, Administradores, outros) • Maioria usa algum gerenciamento • Poucos usam um sistema informatizado • Possuem problemas com atraso e/ou custo – Vários requisitos para um “software Scrum” • Scrum TaskBoard • Burn Down Chart
  • 9.
    Tecnologias utilizadas paraconstrução do sistema
  • 10.
    Metodologias utilizadas paraconstrução do sistema • Scrum • Controle de versão – E-GIT – Github – Google Code
  • 11.
  • 12.
  • 13.
  • 14.
    O projeto • Colocarpagina inicial criar proj stb bdc....
  • 15.
    O projeto • Colocarpagina inicial criar proj stb bdc....
  • 16.
    O projeto • Colocarpagina inicial criar proj stb bdc....
  • 17.
    O projeto • Colocarpagina inicial criar proj stb bdc....
  • 18.
    O projeto • Colocarpagina inicial criar proj stb bdc....
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
    • Testes comusuários – Observação direta(Verificar facilidades e dificuldades no uso do framework) – Entrevista Resultados
  • 30.
    • Melhoras significantesno processo de gerenciamento – "a divisão do projeto em pequenas tarefas nos dá certa noção do total que temos que fazer, [...], utilizando o velho ditado: é dividir para conquistar”. (Entrevistado 1) – "percebi uma melhora na gerencia do tempo, [...], meu feedback é claro quanto ao uso do Scrum informatizado: tempo é dinheiro“. (Entrevistado 1) Resultados
  • 31.
    • Melhoras norelacionamento com o cliente – "O sistema me permitiu uma conversa um pouco mais técnica e mais confiante com meu cliente" . (Entrevistado 2) Resultados
  • 32.
    Melhoras significantes noprocesso de gerenciamento Resultados Melhora em tempo ou custo Não obtiveram melhora Melhora em Organização e relacionamento com o cliente Não obtiveram melhora
  • 33.
    • Sistema necessitaser adaptável – "O gerenciamento de minha equipe virtual ficou mais fácil, [...], mas eu preciso de uma versão com vídeo conferência" . (Entrevistado 3) – Em 90% dos testes, os usuários afirmaram que adicionariam algum novo requisito ou mudariam algo no sistema Resultados
  • 34.
    • Tecnologias quenão conhecia – SCRUM – JSF (PRIMEFACES) – JPA (Hibernate) • Vários softwares parecidos • Tempo Desafios
  • 35.
    • Papel degerência – Sucessos e falhas de gerentes – Sucessos e falhas nos processos de desenvolvimento de software – Aprofundamento no gerenciamento com Scrum • Conhecimentos a mais – Controle de versão – Frameworks Java – Banco de dados ORM Formação
  • 36.
    • Scrum trouxemelhora no processo de desenvolvimento: – Tempo – Planejamento – Comunicação com o cliente – O sistema de gerenciamento necessita ser adaptável Conclusão
  • 37.
    • Outras áreas,além de TI, possuem problemas com gerenciamento de projetos – Adaptação no framework de forma a adaptá-lo ao uso de profissionais de outras áreas Conclusão – Projetos Futuros
  • 38.
  • 39.
    Agradecimentos • Projeto eDocumentação: – Prof Ms. Danilo Augusto Moschetto – Prof Dr. Rodrigo Elias Bianchi • Pesquisa e Artigo: – Profª Ms. Aline Raquel Franceschini • Desenvolvimento Web e Java: – Profª Ms. Tiago Henrique Trojahn • Engenharia de Software e Scrum: – Profª Ms. Elis Cristina Montoro Hernandes
  • 40.
    Veja o projetono GitHub https://github.com/Barrostsb/Prj_Prime_Scrum
  • 41.
    Referências • AUGUSTO, M.V. Desenvolvimento de software com apoio de práticas Scrum. Monografia apresentada ao curso de Processamento de Dados (Tecnólogo em Processamento de Dados.). Faculdade de Tecnologia de São Paulo, 2007. Disponível em: < http://www.fatecsp.br/dti/tcc/tcc0011.pdf>. Acesso em: mar. 2014. • CHIAVENATO, I. Novos paradigmas: como as mudanças estão mexendo com as empresas. 5. ed. São Paulo: Manole, 2008. • DRUCKER, Peter F. Administrando em Tempos de Grandes Mudanças. São Paulo: Editora Pioneira, 1998. • GILLIARD C. Aplicações Java para a web com JSF e JPA. São Paulo: Casa do Código, 2012. • GIT. FAST Version Control: Primeiros passos. 2014, Disponível em: <http://git-scm.com/book/pt-br/Primeiros-passos-Uma-Breve-Hist%C3%B3ria-do-Git> Acesso em: maio 2014. • GNU. OPERATING System. Overview of the GNU System. 2013. Disponível em: < http://www.gnu.org/gnu/gnu-history.html>. Acesso em: fev. 2014. • GRANDO, N. Metodologias Ágeis no Desenvolvimento de Projetos de Software, 2010, Disponível em: <http://neigrando.wordpress.com/2010/09/06/metodologias-ageis-no- desenvolvimento-de-projetos-de-software/> Acesso em: abr. 2014. • HIBERNATE. Hibernate ORM: Idiomatic persistence for Java and relational databases. 2014. Disponível em: <http://hibernate.org/orm/>. Acesso em: maio 2014. • JAVA. O que é a Tecnologia Java e porque preciso dela?.2014. Disponível em: <http://www.java.com/pt_BR/download/faq/whatis_java.xml>. Acesso em: maio 2014. • KNIBERG, H. Scrum and XP from the Trenches: How we do Scrum. InfoQ, 2007. Disponível em: <http://www.infoq.com/br/minibooks/scrum-xp-from-the-trenches>. Acesso em: mar. 2014. • LAKATOS, E. M. e MARCONI, M. A. Fundamentos de Metodologia científica. 4.ed. São Paulo: Atlas, 2001. • LIMA, M. C. Monografia: A Engenharia Da Produção Acadêmica. São Paulo: Saraiva, 2004. • MYSQL. Why MySQL?.2014. Disponível em: <http://www.mysql.com/why-mysql/>. Acesso em: maio 2014. • FÉ, A. L. M. Revista Exame: TI eficiente e sem atrasos. São Paulo: Editora Abril, 2006. Disponível em:< http://exame.abril.com.br/tecnologia/noticias/ti-eficiente-e-sem-atrasos- m0116236>. Acesso em: mar. 2014. • STEFFEN, J. B. IBM®: O que são essas tais de metodologias Ágeis? . Disponível em:< https://www.ibm.com/developerworks/community/blogs/rationalbrasil/entry/mas_o_que_s_c3_a3o_essas_tais_de_metodologias__c3_a1geis?lang=en>. Acesso em: maio 2014. • POLETE A.C.A et al. Trabalho em Equipes Virtuais: Efeitos da Maturidade da Equipe sobre a Eficácia do Trabalho em Projetos Virtuais. XXXVI Encontro da ANPAD, XXXVIEnPAD 2012. Rio de Janeiro. Disponível em:< http://www.anpad.org.br/diversos/trabalhos/EnANPAD/enanpad_2012/GPR/Tema%2004/2012_GPR2452.pdf >. Acesso em: abr. 2014. • PRIMEFACES. Why PrimeFaces. 2014. Disponível em: < http://www.primefaces.org/why • primefaces>. Acesso em: maio 2014. • PROJECT Management Institute Inc. PMI: O que é Gerenciamento de Projetos?. 2014. Disponível em: <http://brasil.pmi.org/brazil/AboutUS/WhatIsProjectManagement.aspx>. Acesso em: fev. 2014. • ROSSETO, F. Gestão Empresarial: Usabilidade de Software, 2012, Disponível em:<http://www.diagnosticoweb.com.br/blogs/fabio-rossetto/gestao-empresarial-usabilidade-de- software.html>. Acesso em: abr. 2014. • TZU, Sun. A Arte da Guerra, tradução de Cândida de Sampaio Bastos, São Paulo: Golden books, 2007. • VARASCHIN J. D. Monografia: Implantando o SCRUM em um Ambiente de Desenvolvimento de Produtos para Internet, Pontifícia Universidade Católica do Rio de Janeiro. PUC, 2009, Disponível em:<ftp://ftp.inf.puc-rio.br/pub/docs/techreports/09_07_varaschim.pdf>. Acesso em: mar. 2014.