Vous êtes sur la page 1sur 11

dotScrum: utilizando o dotProject para gerenciar projetos com Scrum

Jhony Alceu Pereira, Everaldo Artur Grahl Ps-Graduao em Tecnologias para o Desenvolvimento de Aplicaes Web Universidade Regional de Blumenau (FURB) Blumenau/SC Brasil
jhonystein@gmail.com, egrahl@furb.br

Resumo. Este artigo descreve a utilizao da ferramenta dotScrum, um mdulo desenvolvido sobre a plataforma dotProject para gerenciamento de projetos baseados nas prticas do Scrum. A ferramenta visa facilitar as empresas que j utilizam o dotProject e pretendem adotar as prticas do Scrum ou no utilizam uma plataforma livre a amplamente difundida como o dotProject para controle dos seus projetos e ainda com a possibilidade de adotar os artefatos do Scrum.

1. Introduo
Organizar o caos que o desenvolvimento de software no tarefa fcil, ainda mais quando falamos em um ambiente pequeno com muito o que se fazer e poucos recursos e prazos muito curtos. Para atender esta demanda surgiram as metodologias geis, focadas em resultados ao invs de documentao extensa, preocupadas com a execuo ao invs de se preocupar com as ferramentas utilizadas (PEREIRA, 2005). Desde o seu surgimento as metodologias geis tem provado o seu valor como mostra a Figura 1, traduzindo em nmeros o sucesso alcanado pelas equipes que resolveram adotar metodologias geis.

Figura 1: Sucesso das equipes no uso de metodologias geis. Fonte: adaptado de State of Agile Development, 2006 apud PEREIRA, 2008.

Desde o seu surgimento o Scrum se destacou sobre as outras metodologias geis pelas suas prticas que, quando aplicados de forma correta, trazem resultados quase que imediatos. Este resultado se d por conta de ser altamente adaptvel e absorve com naturalidade outras metodologias ou frameworks de gerenciamento de projetos

(EXAME, 2009). Outras caractersticas do Scrum colaboraram com seu sucesso: equipes pequenas, constante atualizao da equipe (Daily Scrum) e constante priorizao dos artefatos de entrega (Product/Sprint Backlog) tornando-o perfeito para o agitado mundo de desenvolvimento para web.

Figura 2: Metodologias mais utilizadas no gerenciamento de projetos geis. Fonte: adaptado de State of Agile Development, 2006 apud PEREIRA, 2008.

Apesar de sua popularizao, ainda so poucas as ferramentas que abrangem as caractersticas e artefatos gerados pelo Scrum. KUGLE (2009) realizou um estudo sobre as ferramentas para gerenciamento de projetos baseados em Scrum e identificou que as ferramentas disponveis no contemplam todas as atividades necessrias para o gerenciamento de projetos utilizando Scrum, alm de, na sua maioria, no conterem verso na lngua portuguesa, e ainda no apresentam verso na plataforma Web. As ferramentas utilizadas para a anlise foram: Mingle; Scrinch; Scrum Works e ProjectKoach Para atender esta demanda, aproveitando o trabalho realizado (PEREIRA, 2005), o dotScrum surgiu como uma alternativa livre, opensource, em plataforma Web aproveitando toda arquitetura de uma ferramenta j consagrada no mercado (dotProject) integrando suas funcionalidades com os caractersticas e artefatos que atendem a maioria dos requisitos do Scrum. O objetivo deste artigo demonstrar a ferramenta dotScrum como uma alternativa para gerenciar os projetos baseados na metodologia Scrum, quais as funcionalidades que o mdulo agrega ao dotProject, as novidades da ferramenta desde sua concepo, bem como os artefatos atendidos e possveis evolues. O restante do artigo esta organizado da seguinte maneira. A seo 2 apresenta o Scrum, quais seus conceitos, artefatos, papis e mtircas, bem como realiza a comparao com outras metodologias geis e metodologias mais tradicionais como o RUP. Na sesso 3 apresentada o dotProject, ferramenta para gerenciamento de projetos desenvolvida na plataforma Web, com uma licena de uso livre e opensource, quais os mdulos existentes na ferramenta utilizados na integrao com o dotScrum e por fim uma comparao com o MS Project como uma alternativa profissional para

gerenciamento de projetos de software. Na sesso 4 apresentada a ferramenta dotScrum sua instalao, utilizao e como esta ferramenta agrega os artefatos e mtricas adotadas pelo Scrum em sua concepo. Por fim, na sesso 5 so apresentados os resultados do uso da ferramenta dotScrum, suas possveis melhorias, bem como as concluses da utilizao de Scrum no processo de desenvolvimento de software.

2. Scrum
Utilizando prticas iterativas e incrementais para controlar o desenvolvimento de software, e usando como base as prticas do Extreme Programming e o RUP, o Scrum produz os benefcios do desenvolvimento gil com a vantagem de ser uma implementao simples (KLUGE, 2009, apud YOSHIMA, 2007). De acordo com BARRETO (2009) o Scrum no pode ser baixado da internet ou tirado de dentro de uma caixinha. Ele tampouco resolve magicamente atrasos na entrega de projetos te tecnologia. Mas pode, sim, dar vida nova ao ciclo de desenvolvimento de software das empresas e tornar as equipes mais eficientes. Baseado em ideias simples e uma reorganizao dos mtodos de trabalho ele tem como principal fator a mudana cultural dentro das equipes de desenvolvimento. Todos os artefatos do Scrum baseiam-se no seu processo de iteraes. Este comea com o Product Owner inserindo e priorizando os Products Backlogs, a seguir, juntamente com o Product Owner, as equipes montam os Sprints Backlogs que devem ser resolvidos em um ciclo que pode variar de duas quatro semanas e termina com uma provvel nova funcionalidade do produto. Durante o Sprint so realizadas diariamente as Daily Scrum Meetings, tambm conhecidas como Reunies em p, onde a equipe, se organiza, tira suas dvidas e d sugestes sobre o desenvolvimento do Produto.

Figura 3: Processo do Scrum Fonte: Improve IT (2011)

As principais pessoas envolvidas no processo do Scrum so o Product Owner (dono do Produto), o Scrum Team (equipe) e o Scrum Master (responsvel pelo

processo). So atribuies do Product Owner gerar e gerenciar o Product Backlog determinando o que deve ser feito e qual a sua prioridade em relao as demais atividades. Com isso o Product Owner gera um planejamento de verses a serem liberadas, visto que esta em seu poder definir as releases de acordo com a priorizao de cada item listado no Product Backlog. Os membros da equipe (Scrum Team) detm o poder de gerir os Sprints Backlog respeitando os itens definidos no Product Backlog e o tempo determinado para executar a Sprint (Time Boxing). Tambm so responsveis de passar para o Scrum Master as dificuldades que esto impedindo a concluso de algum de seu item atravs das Daily Scrum Meeting. O Sprint Backlog pode ser gerido atravs de um quadro Scrum, onde os membros da equipe identificam a situao e a responsabilidade de cada item do mesmo, assim como a identificao dos possveis impedimentos.

Figura 4: Exemplo fsico de Quadro Scrum Fonte: PEREIRA, 2008

O Scrum Master a pessoa responsvel por manter o processo Scrum, bem como resolver qualquer impedimento que venha a ser encontrado pela equipe. Ele tambm responsvel por gerir adaptar o processo de acordo com a cultura dos envolvidos, bem como realizar as medies necessrias para identificar sua potencialidade. O papel do Scrum Master, alm de evangelizar as metodologias do Scrum identificar pontos que devem ser customizados e adaptados a sua equipe para que esta crie a sua identidade. Por fim dentro do framework Scrum so definidas as cerimnias, eventos que ocorrem ao iniciar uma Sprint (Sprint Planning Meeting), durante sua execuo (Sprint Review) ou ainda aps o seu trmino (Sprint Retrospective) que regidas pelo Scrum Master mantm o processo ajustado a equipe e a filosofia do Scrum.

Figura 5: Exemplo de Grfico de Burn down Fonte: adaptado de ControlChaos, 2005 apud PEREIRA, 2005

3. dotProject
O dotProject um ambiente para gerenciamento de processo de software sob uma plataforma 100% Web, desenvolvido em PHP, utilizando banco de dados MySQL e uma licena opensource, apresenta uma srie de funcionalidades teis para o trabalho de gerenciamento de projetos. Contm uma arquitetura que permite uma empresa realizar as customizaes necessrias, bem como adaptar a ferramenta ao seu negcio atravs de novas funcionalidades ou integrando novos recursos a funcionalidades j existentes. De acordo com o site da Comunidade dotProject Brasil (2011), em sua ltima verso (2.1.5) a ferramenta conta com muitas correes e melhorias que foram disponibilizadas. Isto faz com que os mdulos inicialmente escritos sobre a antiga plataforma tenham de ser adaptados e alguns inclusive reescritos.

Figura 6: Tela com a lista de mdulos apresentados no dotProject

Com relao as funcionalidades do dotProject, ele continua atendendo ao mercado, porm no uma ferramenta completa. H funes que precisam ser desenvolvida, outras carecem de melhorias e isto vem ocorrendo na medida em que a comunidade trabalha. Hoje conta com mais de 20 mdulos que adicionam capacidades ao sistema, desenvolvidos por usurios do mundo todo. Isto prova o quanto a comunidade vem crescendo e se mantendo ativa com suas listas de discusses que j somam mais de 43 mil mensagens distribudas em mais de 10 mil assuntos. Funcionalidades do dotProject: Gerenciamento de mltiplos projetos Controle de tarefas Cadastro de empresas Grficos de Gantt Controle de recursos Calendrio Fruns Gerenciamento de documentos Controle de contatos Administrao de grupos de usurios e acessos Perfis de acesso NUNES (2009), em usa comparao do dotProject com o MS Project, cita como uma funcionalidade marcante da ferramenta a disponibilidade de os participantes do projeto poderem utilizar a mesma para visualizar suas atividades, reportar as realizaes dirias (time sheet), assim como cadastrar lies aprendidas em suas atividades nos fruns. Esta utilizao se realiza de forma universal, por ser uma ferramenta Web, podendo ser acessada de qualquer lugar e por qualquer pessoa autorizada, alm claro, da sua interface simples e intuitiva valorizando muito a sua usabilidade.

Figura 7: Tela inicial do dotProject (login)

4. dotScrum
Desde a concepo da ferramente dotScrum em 2005 tanto a plataforma dotProject quanto o Scrum sofreram evolues e adaptaes dos mais diversos tipos. A prpria internet sofreu diversas atualizaes de conceito e ferramentas novas no mercados, como foi o advento da Web 2.0, junto com o HTML 5 e o CSS 3.0, deixaram as pginas

mais ricas e intuitivas. O termo RIA (Rich Internet Application) passou a ser bastante difundido e como no poderia deixar de ser as novidades e funcionalidades deste novo cenrio foram utilizadas para aprimorar a usabilidade da ferramenta. Estas ferramentas trouxeram a usabilidade das ferramentas desenvolvidas sob a plataforma Desktop (tambm conhecidas como aplicaes ricas) para a web, como teclas de atalho, clicar e arrastar, redimensionar e mover. Umas das evolues da ferramenta foi quanto sua usabilidade. Tanto o Product Backlog quanto o Sprint Backlog podem ser classificados atravs do comando arrastar e soltar do mouse, sendo assumida a sua classificao a mesma classificao do item ao qual o usurio soltou o boto do mouse. Esta classificao era realizada atravs das setas de indicao no incio da linha do Backlog, sendo possvel subir ou descer apenas um nico nvel, com a nova funcionalidade, o usurio tem a possibilidade de subir ou descer um item do Backlog em mais de um item, alm de a ferramenta manter a funcionalidade anteriormente implementada.

Figura 8: Tela de registro de atividades/item do Sprint Backlog

De todas as evolues da ferramenta, a mais importante a integrao do mdulo de atividades com o Sprint Backlog, sendo que no exite mais um registro de Sprint Backlog separado das Atividades gerenciadas pelo dotProject, pois com a nova integrao o prprio registro de Atividades o item do Sprint Backlog, como apresentado na figura 8. Para atender o Scrum, os campos Sprint e item do Product Backlog foram adicionadas as atividades para realizao da classificao da mesma. Outra importante evoluo realizada na ferramenta diretamente relacionada aos avanos das tecnologias web foi na gerao dos grficos de Burn down, que no so mais gerado de forma esttica, mas utilizando conceitos de HTML 5 e uma biblioteca Javascript chamada DOJO Toolkit (2011). 4.1. Instalao e primeiros passos A instalao do dotScrum foi uma das primeiras modificaes na ferramenta que alm

de obedecer os novos conceitos da plataforma dotProject, foram unificados os mdulos Produtct Backlog e Sprint Backlog formando um nico mdulo denominado dotScrum. O mdulo Daily Scrum permaneceu separado, sendo que para sua utilizao o usurio deveria instal-lo separadamente. Os arquivos de instalao dos mdulos devem ser copiados na pasta modules do dotProject para que apaream na lista de mdulos disponveis para instalao como mostra a Figura 6. A partir desta tela o usurio decide quais mdulos pretende habilitar para uso e realiza as devidas configuraes para o bom funcionamento do mesmo. 4.2. Funcionalidades Alm das funcionalidades j acompanham o dotProject na sua verso atual, foram adicionadas funcionalidades focando na metodologia Scrum, seus artefatos, mtricas e cerimnias. Atualmente a ferramenta tem suas funcionalidades divididas em apenas dois mdulos distintos: dotScrum e Daily Scrum.

Figura 9: Tela de listagem e registro de Product Backlog

No mdulo dotScrum esto as principais funcionalidades da ferramenta, pois neste mdulo que esta contido o Product Backlog e o Sprint Backlog. Na guia Product Backlog, o Product Owner tem total liberdade de categorizar e priorizar os requisitos do sistema descritos pelas stories podendo ainda vincular a mesma a um chamado do mdulo chamados do dotProject, quando este estiver ativo. J na guia Sprint Backlog no mais existe um registro de Sprint Backlog, mas uma utilizao do registro de Atividades do dotProject, integrando aos Product Backlog gerando assim os itens do Sprint Backlog. o prprio Scrum Team quem define suas tarefas, prazos e recursos, se auto gerenciando com a ajuda do Scrum Master podendo utilizar todas as funcionalidades apresentas pelo mdulo Atividades do dotProjetct. Esta talvez seja a maior novidade em termos de evoluo da ferramenta, sendo que antes se tinha-se registros separados para Sprints Backlog e Atividades, com a juno destas duas funcionalidades o dotProject detm duas vises diferentes um mesmo artefato: uma padro do dotProject e outra adaptada ao universo Scrum.

Figura 10: Grfico de Born down

Ainda neste mdulo esto contidos os Releases Backlog e o acompanhamento das Sprints pelo grfico de Burn down. Mantendo as mesmas funcionalidades da verso inicialmente proposta, esses dois mdulos pouco sofreram em termos de funcionalidade. Em Releases Backlog o Product Owner pode visualizar das funcionalidades propostas quais delas j foram desenvolvidas e qual o tempo envolvido. Com isso o mesmo pode tomar as devidas aes caso esteja algo fora do previsto. J em Burn down o usurio tem uma viso grfica do que j foi completado dentro de um ciclo de Sprints ou dentro de uma Release. Este sofreu uma modificao quanto a tecnologia empregada para realizao dos grficos, sendo que o mesmo contm detalhes mais dinmicos e iterativos. Por fim o mdulo Daily Scrum realiza o registro e busca das Daily Scrum Meeting fornecendo ao Scrum Master uma base das dificuldades encontradas pela sua equipe, alm de servir como um repositrio de possveis solues dos problemas j presenciados pela equipe. Este mdulo no sofreu muitas alteraes desde sua concepo permitindo ao usurio registrar ou consultar um determinado registro.

Figura 11: Registro da Daily Scrum Meeting

5. Concluso
A principal lio deste artigo que o Scrum no uma ferramenta pronta para ser aplicada, deve ser personalizada, configurada conforme o ambiente, empresa, pessoas envolvidas no processo. Da mesma forma o dotProject uma ferramenta altamente personalizvel, de cdigo aberto sendo completamente vivel para uma equipe editar e personalizar a ferramenta para atender todo e qualquer propsito. Sendo assim o dotScrum no tem a pretenso de ser uma ferramenta completa para gerenciamento de projetos de software baseados na metodologia Scrum, mas ser uma implementao base para que as empresas que pretendem implementar este tipo de processo tenham a base para realizar os ajustes e modificaes tanto no Scrum quanto na ferramenta a fim de atender todas as suas necessidades. A implementao apresentada representa o bsico para adoo do Scrum. O Product Backlog, Sprint Backlog, Release Backlog e Grfico de Burn Down so a base da aplicao do Scrum. Estes artefatos, junto com a adoo do registro de Daily Scrum Meeting, permite ao Scrum Master visualizar o processo como um todo, identificar os impedimento de forma a tomar as decises mais rapidamente e em tempo hbil para no comprometer os prazos propostos. Da mesma forma ajuda ao Scrum Team e ao Product Owner manter seus artefatos e acompanhar o andamento do processo como um todo. Como sugesto de melhorias da ferramenta, ficam a implementao do quadro Scrum, uma forma de visualizar os status das Sprints de forma mais parecida com o mundo real, separando em colunas cada um dos status e incluindo dentro de cada coluna o registro do item do Sprint Backlog que esta contido no mesmo. Outra sugesto de melhoria a implementao de outras ferramentas adotadas pelas equipes que implementam o Scrum, o caso do Scrum Poker, por exemplo, usado para determinar o prazo entre os itens da Sprint Backlog. De uma forma divertida e prtica os integrantes do Scrum Team chegam rapidamente a um consenso da melhor estimativa para realizao de uma atividade. Com relao ao dotProject a concluso que a mesma, por ser uma ferramenta j bastante consagrada e disseminada no mercado, uma fonte de negcios a serem explorados. Diversos servios agregados podem ser associados a mesma como customizaes, gerao de novos mdulos ou simplesmente para facilitar a implantao de um processo de gerencia como o definido pelo Scrum e atendido facilmente com o desenvolvimento do dotScrum. Com uma plataforma de fcil aceitao, altamente customizvel com possibilidade de agregar novas ferramentas e tecnologias ela se demonstra poderosa e de uma aceitao muito grande.

6. Referncias Bibliogrficas
BARRETO, Juliano. Pronto para o Scrum? Info Exame, So Paulo, ed. 282, a. 22, p. 80-81, ago. 2009. DOJO Toolkit. Framework Javascript para aplicaes RIA. 2011. Disponvel em: <http://dojotoolkit.org/>. Acesado em: 13 jun. 2011. DOTPROJECT. Comunidade dotProject Brasil. [S.l.], 2011. Disponvel em: <http://www.dotproject.com.br/>. Acesso em: 22 jul. 2011. KLUGE, Monike Roberta. Scrum Project: Ferramenta de Apoio ao Gerenciamento de Projetos de Software Baseada nos Princpios da Metodologia gil Scrum. 2009. 81 f.

Trabalho de Concluso de Curso (Bacharelado em Cincia da Computao) Centro de Cincias Tecnolgicas da terra e do Mar, Universidade do Vale do Itaja, Itaja. KNIBERG, Henrik, SKARIN, Mattias. Kanban e Scrum: Obtendo o Melhor de Ambos. [Online] 2009. Disponvel em: <http://www.infoq.com/br/minibooks/ka nban-scrumminibook>. Acesso em 10 mai. 2011. NUNES, Afranio Carneiro, Filho. Uma Anlise Comparativa de Softwares de gesto de Desenvolvimento de Projetos: dotProject e MS Project. 2009. 60 f. Trabalho de Concluso de Curso (Bacharelado em Sistemas de Informao) Faculdade Expoente, Curitiba. PEREIRA, Jhony A. Ambiente Web para gerenciamento de Processo de Software Baseado no Scrum. 2005. 70 f. Trabalho de Concluso de Curso (Bacharelado em Cincia da Computao) Centro de Cincias Exatas e Naturais, Universidade Regional de Blumenau, Blumenau. PEREIRA, Paulo. Metodologias geis. Recife, 2011. Disponvel <http://www.cesar.edu.br/docs/paulocaju.pdf>. Acesso em 15 jun. 2011. em

Vous aimerez peut-être aussi