Apresentacao artigo final

Preview:

Citation preview

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 comatraso

Custo Inicial

Custo comestouro deorç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çãodestes 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). Paratanto, 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ê podedar a toda comunidade a chance de beneficiar de suas mudanças. Para tanto, acesso ao código-fonte é umpré-requisito.

Fonte: <http://www.gnu.org/gnu/gnu-history.html>

Objetivo

Dado o problema, e a possível solução, oobjetivo desta pesquisa foi:

Verificar como o Scrum empregado em um SoftwareLivre, 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 emtempo ou custo

Não obtiverammelhora

Melhora emOrganização erelacionamento com ocliente

Não obtiverammelhora

• 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.