Você está na página 1de 31

ESTUDO DE FERRAMENTAS EM SOFTWARE LIVRE PARA GESTO GIL DE PROJETOS DE DESENVOLVIMENTO DE SOFTWARE

Trabalho de concluso do curso Lato Sensu em Desenvolvimento de Sistemas em Software Livre da Universidade Catlica de Braslia.

Aluna: Keila Rosegela Parreira de Freitas Orientador: Jos Adalberto Facanha Gualeve
23/08/2011

INTRODUO

Atualmente nota-se uma busca incessante das organizaes no uso de mtodos geis e melhores prticas de gerenciamento de projetos. cada vez mais comum a presena de metodologias geis no mercado de desenvolvimento de software.
2

23/08/2011

INTRODUO
23/08/2011

Porm o controle de vrios projetos utilizando-se apenas quadro de tarefas, planilhas de texto e post-its acaba por tornar complicado uma tarefa que requer maior clareza e fluncia possvel. O gerente de projetos, alm de possuir habilidades e conhecimentos, deve tambm utilizar ferramentas que do apoio s suas atividades.

OBJETIVOS

Com o intuito de apresentar solues disponveis para contornar este problema, pretende-se neste trabalho comparar algumas ferramentas open source para gerenciamento gil de projetos, facilitando a adoo de software livre para suporte a gesto gil de projetos de desenvolvimento de software.
4

23/08/2011

SOFTWARE LIVRE
23/08/2011

Fonte: http://wiki.sintectus.com/bin/view/GrupoLinux/PDFInstantaneoLinuxEssencial

ENGENHARIA DE SOFTWARE E GESTO DE PROJETOS


ENGENHARIA
Arte de aplicar os conhecimentos cientficos inveno, aperfeioamento ou utilizao da tcnica industrial em todas as suas determinaes. (Michaellis)
23/08/2011

ENGENHARIA DE SOFTWARE
uma disciplina de engenharia relacionada com todos os aspectos da produo de software, desde os estgios iniciais de especificao dos sistema at sua manuteno.

GESTO DE PROJETOS
uma parte essencial da engenharia de software, que aumenta a probabilidade de 6 sucesso do projeto, ou seja, software entregue com qualidade, na data acordada e com recursos planejados.

METODOLOGIAS GEIS PARA GESTO DE PROJETOS DE SOFTWARE


23/08/2011

Os mtodos geis surgiram no incio da dcada de 90, em decorrncia da insatisfao dos profissionais de desenvolvimento de software, com a rigidez e resultados limitados obtidos atravs do uso de prticas tradicionais de gesto de projetos.

Uma metodologia pode ser dita gil quando efetua o desenvolvimento de software de forma incremental, colaborativa, direta e adaptativa (ABRAHAMSSON, 2002).

METODOLOGIAS GEIS PARA GESTO DE PROJETOS DE SOFTWARE


Manifesto gil
Indivduos e interaes
Software funcionando Colaborao com o cliente
23/08/2011

Ao invs de
Ao invs de Ao invs de

Processos e ferramentas
Documentao abrangente Negociao de contratos

Responder a mudanas

Ao invs de

Seguir um plano

METODOLOGIAS GEIS PARA GESTO DE PROJETOS DE SOFTWARE


23/08/2011

METODOLOGIAS GEIS PARA GESTO DE PROJETOS DE SOFTWARE


23/08/2011

Mtodos geis so s vezes chamados de mtodos leves, especificamente porque eles so menos prescritivos que os mtodos tradicionais, ou seja, possuem menos regras a serem seguidas. Vale ressaltar que o primeiro princpio do manifesto gil Indivduos e Interaes ao invs de Processos e Ferramentas (KNIBERG; SKARIN, 2009). Os processos geis buscam evitar desperdcio de energia e focar o trabalho na entrega de valor ao cliente. O processo XP e o estilo de gerenciamento Scrum so algumas das principais metodologias geis em uso na comunidade de TI.

10

EXTREME PROGRAMMING - XP
XP um mtodo leve para que equipes pequenas ou mdias desenvolvam software em face a requisitos vagos ou que mudem constantemente. Seu principal objetivo o desenvolvimento de software com qualidade, por meio de um estilo de desenvolvimento focado nas melhores prticas de programao, comunicao clara e trabalho em equipe (TELES, 2005).
11
23/08/2011

EXTREME PROGRAMMING - XP
O XP baseado em cinco valores, alguns princpios e vrias prticas.
23/08/2011

Valores

Princpios

Prticas

Feedback Comunicao Coragem Simplicidade Respeito

Pequenos passos Qualidade Melhoria Responsabilidade aceita Reflexo Fluxo ...

Cliente Presente Programao em par Cdigo coletivo Integrao contnua Releases curtos Refatorao Teste ...

12

EXTREME PROGRAMMING - XP
23/08/2011

13

SCRUM
Scrum um framework dentro do qual podemos empregar diversos processos e tcnicas. O papel do Scrum fazer transparecer a eficcia relativa das prticas de desenvolvimento para que possamos melhor-las, enquanto prov um framework dentro do qual produtos complexos podem ser desenvolvidos (SCHWABER, 2009).
23/08/2011

Scrum, que fundamentado na teoria de controle de processos empricos, emprega uma abordagem iterativa e incremental para otimizar a previsibilidade e controlar riscos. Trs pilares sustentam qualquer implementao de controle de processos empricos: transparncia, inspeo e adaptao 14 (SCHWABER, 2009).

SCRUM
23/08/2011

Fonte: Scrum O tutorial definito.

15

FERRAMENTAS EM SOFTWARE LIVRE PARA GERENCIAMENTO GIL DE PROJETOS DE SOFTWARE


23/08/2011

Atualmente existe uma ampla variedade de softwares livres e comerciais para gerenciamento gil de projetos. Este artigo compara somente ferramentas open source e priorizou pela escolha de projetos em desenvolvimento ativo, que demonstraram o uso significativo, considerando uma combinao de volume de download, atividades de discusso e quantidade de referncias para a ferramenta na internet. As ferramentas escolhidas foram: XPlanner-Plus, Agilefant e Scrumdo.

16

XPLANNER-PLUS
O XPlanner-Plus uma ferramenta open source baseada na web de planejamento e acompanhamento de projetos para equipes de desenvolvimento gil, disponvel sob licena LGPLv3. Baseado no software Xplanner, uma das primeiras ferramentas web para gesto gil de projetos. implementado usando Java, JSP, Struts, Hibernate, MySQL ou PostgreSQL, JasperReports, dentre outros (XPLANNER, 2011).
23/08/2011

17

XPLANNER-PLUS

Modelo simples de planejamento; Suporte para armazenamento e monitoramento de projetos, iteraes, histrias de usurio e tarefas; Controle de histrias no concludas; Envio de notificaes a respeito de alocao de histrias e tarefas; Monitoramento online e gerao de folha de registro de horas individual e da equipe; Gerao de medidas (velocidade da equipe, tempo individual, entre outras); Gerao de grficos de velocidade da iterao, de progresso (burndown), distribuio das tarefas, entre outras; Disponibilidade para acrescentar notas para as histrias e tarefas (inclusive anexos); Viso precisa das estimativas da iterao; Exibio da situao das histrias para desenvolvedores e clientes; Exportao dos dados do projeto e da iterao para os formatos XML, MPX (Microsoft Project) e PDF.

18

23/08/2011

XPLANNER-PLUS
Qualquer ferramenta de acompanhamento das atividades de desenvolvimento de software pode auxiliar na organizao e planejamento das tarefas, proporcionando maior visibilidade s pessoas que esto envolvidas. O XPlanner-Plus se mostra muito eficiente para este fim, e por isso deve ser considerado no momento de escolher ferramentas de gerenciamento com este propsito.
23/08/2011

19

AGILEFANT
Agilefant uma soluo simples para gerir as atividades de desenvolvimento gil de software. Ela rene as perspectivas de planejamento a longo prazo, gerenciamento de portflio de projetos e trabalho dirio.
uma ferramenta baseada na web escrita em Java. bastante rica em recursos e permite a criao de produtos, projetos, iteraes, temas e estrias de usurios, tem controle de tempo, grfico, dentre outros.
23/08/2011

20

AGILEFANT
23/08/2011

21

AGILEFANT

Produtos so a construo de mais alto nvel; Cada produto pode ter um ou mais projetos (releases); Cada projeto pode ter uma ou mais iteraes. Gesto do Product backlog; Gerenciamento de produtos; Planejamento e controle de iteraes; Iteraes so compostas de estrias, que podem consistir de zero ou mais tarefas; Daily Work viso geral do trabalho de um membro da equipe; Viso geral da carga de trabalho por membro da equipe; Controle de tempo e tarefas; Portflio de projetos; Relatrios, grficos burndown e mtricas; Suporte a vrias equipes; 22 Suporte a vrios projetos; dentre outros.

23/08/2011

AGILEFANT
O AgileFant rica em recursos, razoavelmente intuitivos e fceis de usar. adequada para grandes organizaes e projetos, possuindo inclusive recurso de planejamento de portflio de produtos. Os pontos fracos identificados na ferramenta so: no possui o quadro de tarefas, que d uma viso do andamento das tarefas na sprint atual; as estrias podem ser estimadas apenas em horas, no em pontos; no h diferenciao entre os papis do usurio.
23/08/2011

23

SCRUMDO
ScrumDo uma aplicao web open source para gerenciar projetos geis baseados em Scrum. Escrita em Python com framework Django. Oferece ferramentas para criar e acompanhar histrias de usurio em projetos. Algumas caractersticas incluem gerao automtica de grficos Burndown, facilidades do tipo arraste e solte no planejamento da iterao, capacidade de exportao e importao para Excel, suporte a vrias equipes Scrum, previso para planejamento futuro, dentre outras. (SCRUMDO, 2011).
23/08/2011

24

SCRUMDO
Gesto do backlog; Criao e gesto de iteraes; Dimensionar estrias; Grfico BurnUp chart; Previses para planejamentos futuros; Apoio s organizaes; Muitas equipes por organizao; Muitas equipes por projeto; Muitos projetos por organizao; Mltiplas equipes trabalhando em um backlog; Controle de estrias, tarefas e mtricas; Anexos e comentrios em tarefas; Quadro de tarefas Scrum; Planning Poker, dentre outros.

23/08/2011

25

SCRUMDO
Scrumdo uma ferramenta criada recentemente e realmente impressionante a forma como detalha as estrias, iteraes e grficos Burndowns. Simplesmente tem o que uma boa equipe Scrum precisa de uma ferramenta.
23/08/2011

26

QUADRO COMPARATIVO
Recursos Verso revisada Licena Plataforma Product Backlog Sprint Backlog Release Burndown Sprint Burndown Dashboard da Sprint Dashboard do Produto/Release Planejamento da Sprint Reunio diria Reviso da Sprint Retrospectiva da Sprint Planning Poker Controle de tempo Quadro de tarefas Taskboard Relatrios Notificao por e-mail XPlanner-Plus v1.0b3 LGPLv3 Java, JSP X X X X X X Agilefant Scrumdo 2.0.4 2.1 MIT GNU LGPL Java Pyhton X X X X X X X X X X X X X X X X X X X
27
23/08/2011

X X

QUADRO COMPARATIVO
Recursos Exportao de dados do projeto para outros formatos de arquivo Controle de estrias e tarefas Armazenamento de estrias e tarefas Anexar arquivos s estrias ou tarefas Suporte a vrios projetos Suporte a equipes distribudas Suporte a vrias equipes Integrao com outras ferramentas Portflio de projetos Trabalho dirio Workload carga de trabalho dos membros da equipe por iterao. Gerao de medidas Releases do produto XPlanner-Plus X Agilefant X Scrumdo X
23/08/2011

X X X

X X -

X X X

X X
-

X X
X X X X

X X
X X X 28

X -

X X

X X

CONCLUSO
As ferramentas selecionadas apresentam caractersticas bastante semelhantes em relao s suas funcionalidades, porm, apresentam particularidades, como por exemplo: - Agilefant tem a possibilidade de gerenciar o portflio de produtos, disponibiliza diferentes vises do produto para diferentes stakeholders, disponibiliza viso geral da carga de trabalho por membro da equipe e permite o trabalho com vrias releases do produto; - ScrumDo totalmente voltado para equipes scrum oferecendo gesto de todos os artefatos Scrum, possui o quadro scrum de tarefas e excelentes dashboards do projeto e de suas sprints; - Xplanner-Plus possui um modelo extremamente simples de planejamento de atividades e suporte a diferentes metodologias geis.
23/08/2011

29

REFERNCIAS BIBLIOGRFICAS
ABRAHAMSSON, Pekka et al. Agile software development methods: Review and analysis. VTT Publications 478. Oulu, Finland: VTT Publications, 2002. BANKI, Luiz Andr; TANAKA, Srgio. Metodologias geis - Uma Viso Prtica. Engenharia de Software Magazine. Ano 1, edio 4, 2008.
23/08/2011

BECK, K.; ANDRES, C. Extreme Programming Explained: Embrace Change, Second Edition Addison-Wesley, 2a ed., 224p. 2004. CISCON, Leonardo Aparecido. Um estudo e uma ferramenta de gerencia de projetos com desenvolvimento gil de software. Dissertao de mestrado em cincias da computao da UFMG. Belo Horizonte, MG. 2009. FALCO, J; JNIOR, T. S. F.; LEMOS, R.; MARANHO, J.; SOUSA, C. A. P.; SENNA, E. Estudo sobre o Software Livre. ITI. 2005. KNIBERG, Henrik; SKARIN, Mattias. Kanban e Scrum - obtendo o melhor de ambos . 2009. C4Media, Editora do InfoQ.com. Verso online e gratuita disponvel em <http://www.infoq.com>.
30

REFERNCIAS BIBLIOGRFICAS
RASCOVSKY, Igor. Engenharia de Software Clssica Vs. Programao Xp. 2006. Disponvel
em: <http://www.linux.ime.usp.br/~cef/mac499-06/monografias/rec/igor/pageParte1.html>. SANTOS, Rildo. Scrum Experience O tutorial Scrum. V.16. 2008. Disponvel em: <http://www.slideshare.net/Ridlo/scrum-experience-o-tutorial-scrum>. SANTOS, Rildo. Scrum O tutorial definitivo. V.2. 2011. Disponvel em: <http://www.slideshare.net/Ridlo/scrum-o-tutorial>. SANTOS, Rodrigo Pereira et al. Analisando o desenvolvimento de software orientado a aspectos no contexto de Extreme Programming. Artigo pulicado na revista Devmedia Engenharia de software magazine. Ano I - Edio 05, 2008. SCHWABER, Ken. Guia do Scrum. Scrum Alliance. 2009. SOMMERVILLE, I. Engenharia de Software. 8. ed. So Paulo: Pearson Addison Wesley, 2007. TELES, Vincius Manhes. Um Estudo de Caso da Adoo das Prticas e Valores do Extreme Programming. Dissertao de mestrado - UFRJ, IM / DCC, 2005.
31
23/08/2011