Você está na página 1de 83

Gesto de Projectos com Processos geis

Miguel Alexandre Pimpim Pinto






Dissertao para obteno do Grau de Mestre em
Engenharia Informtica e de Computadores

Jri



Presidente: Professor Doutor Antnio Manuel Ferreira Rito da Silva

Orientador: Professor Doutor Alberto Manuel Rodrigues da Silva
Vogais: Professor Ademar Manuel Teixeira de Aguiar
Professora Doutora Paula Cristina Negro Ventura Martins






Outubro de 2010






Agradecimentos
Expresso os meus sinceros agradecimentos ao Professor Alberto Silva pelas suas
sugestes, orientao e disponibilidade ao longo deste projecto. Gostaria tambm de
agradecer ao Joo Saraiva e ao David Ferreira que se disponibilizaram sempre a ajudar
em aspectos de concepo e implementao.
Finalmente, gostaria de agradecer minha famlia por todo o seu apoio ao longo da minha
formao acadmica.






Resumo
A comunidade dos processos de desenvolvimento de software tem evoludo ao longo dos
tempos. A par deste crescimento, tm sido introduzidos vrios processos de
desenvolvimento de software. Mais recentemente, os processos geis tm ganho maior
popularidade. Os seus princpios e prticas ajustam-se mais s necessidades do Cliente e
das equipas de desenvolvimento. A crescente adopo destes processos motivou a
indstria de software a desenvolver ferramentas que auxiliem na gesto de projectos com
processos geis. Este projecto analisa e compara algumas destas ferramentas, segundo
um modelo de referncia definido, e apresenta a implementao do sistema ProjectIT-
Enterprise. Este sistema, uma plataforma colaborativa de gesto de projectos, pretende
garantir a gesto de projectos segundo processos tradicionais ou geis e o correcto
alinhamento entre um processo e um projecto, assim como fomentar a comunicao e
colaborao dos elementos de uma equipa de desenvolvimento.

Palavras-Chave
Alinhamento Processo-Projecto
Gesto de Processos
Gesto de Projectos
Gesto Organizacional
Processos geis
ProjectIT-Enterprise






Abstract
The software process development community has known a steady evolution over the past
years. Alongside this growth, several software processes have been created. More
recently, agile processes have increased their popularity. Its principles and practices fit
with the needs of Client and software development teams. This increasing adoption has
led software industry to develop tools that assist in project management with agile
processes. This project analyzes and compares some of these tools, according to a
defined reference model, and presents the implementation of ProjectIT-Enterprise system.
This system, a collaborative tool for project management, seeks to ensure the project
management according traditional or agile processes and the proper alignment between a
process and a project, as well as to improve the communication and collaboration between
all members of a software development team.

Keywords
Agile Processes
Organizational Management
Process Management
Process-Project Alignment
ProjectIT-Enterprise
Project Management


















i

ndice
1 Introduo ................................................................................................................... 1
1.1 Contexto ............................................................................................................... 1
1.2 Enquadramento .................................................................................................... 2
1.2.1 ProjectIT-Enterprise....................................................................................... 3
1.3 Objectivos do Trabalho ......................................................................................... 4
1.4 Estrutura do Documento ....................................................................................... 5
2 Estado da Arte ............................................................................................................. 7
2.1 Processos geis ................................................................................................... 7
2.1.1 Extreme Programming (XP)........................................................................... 7
2.1.2 Scrum ............................................................................................................ 8
2.2 Ferramentas de Suporte de Processos geis ..................................................... 10
2.2.1 VersionOne ................................................................................................. 10
2.2.2 Pivotal Tracker ............................................................................................ 11
2.2.3 RallyDev ...................................................................................................... 12
2.2.4 TargetProcess ............................................................................................. 12
2.2.5 PIT-Enterprise/2007 .................................................................................... 12
2.3 Modelo de Referncia ........................................................................................ 13
2.4 Anlise Comparativa .......................................................................................... 14
3 ProjectIT-Enterprise - Concepo .............................................................................. 19
3.1 Requisitos .......................................................................................................... 19
3.2 Modelos de Domnio ........................................................................................... 21
3.2.1 Dimenso Organizacional ........................................................................... 22
3.2.2 Dimenso de Processos .............................................................................. 23
3.2.3 Dimenso de Projectos ............................................................................... 25
3.3 Actores ............................................................................................................... 27
3.4 Casos de Uso ..................................................................................................... 29
3.4.1 Dimenso Organizacional ........................................................................... 29
ii

3.4.2 Dimenso de Processos .............................................................................. 30
3.4.3 Dimenso de Projectos ............................................................................... 31
4 ProjectIT-Enterprise - Arquitectura e Desenho .......................................................... 33
4.1 Plataforma WebComfort ..................................................................................... 33
4.2 Modelo de Dados ............................................................................................... 34
4.3 Arquitectura do Sistema ..................................................................................... 35
4.3.1 Seco Dashboard.................................................................................... 37
4.3.2 Seco Organizacional ............................................................................. 38
4.3.3 Seco Processos .................................................................................... 40
4.3.4 Seco Projectos ...................................................................................... 41
4.3.5 Seco Pgina de um Processo ............................................................... 43
4.3.6 Seco Pgina de um Projecto ................................................................. 45
4.4 Aspectos de Desenho ........................................................................................ 47
5 Validao .................................................................................................................. 51
5.1 Definio do Processo Dissertao MEIC/IST ................................................. 51
5.2 Definio do Projecto Gesto de Projectos com Processos geis ................... 52
5.2.1 Definio dos Pacotes de Trabalho ............................................................. 53
5.2.2 Monitorizao do Projecto ........................................................................... 56
5.2.3 Dashboard ................................................................................................... 57
5.2.4 Exportao de informao para o MS-Project ............................................. 58
5.3 Discusso ........................................................................................................... 59
6 Concluso ................................................................................................................. 61
6.1 Sntese ............................................................................................................... 61
6.2 Trabalho Futuro .................................................................................................. 62
7 Referncias ............................................................................................................... 63
8 Anexo ........................................................................................................................ 65


iii

Lista de Figuras
Figura 1.1: Viso Geral do ProjectIT-Enterprise (adaptado de [4]) ...................................... 3

Figura 2.1: Principais Artefactos do XP (adaptado de [4]) ................................................... 8
Figura 2.2: Processo Scrum (adaptado de [14]).................................................................. 9
Figura 2.3: Viso Geral do Pivotal Tracker ....................................................................... 11
Figura 2.4: Actividades que devem ser suportadas pelas Ferramentas de Suporte de
Processos geis ............................................................................................................... 13

Figura 3.1: Dimenses do ProjectIT-Enterprise (adaptado de [4])..................................... 21
Figura 3.2: Modelo de Domnio da Dimenso Organizacional .......................................... 22
Figura 3.3: Modelo de Domnio da Dimenso de Processos............................................. 23
Figura 3.4: Modelo de Domnio da Dimenso de Projectos .............................................. 25
Figura 3.5: Actores do sistema ProjectIT-Enterprise ......................................................... 27
Figura 3.6: Casos de Uso da Dimenso Organizacional ................................................... 29
Figura 3.7: Casos de Uso da Dimenso de Processos ..................................................... 30
Figura 3.8: Casos de Uso da Dimenso de Projectos ....................................................... 31

Figura 4.1: Principais Conceitos do WebComfort (extrado de [9]) .................................... 34
Figura 4.2: Pgina Inicial do ProjectIT-Enterprise ............................................................. 35
Figura 4.3: Estrutura genrica de um Mdulo WebComfort .............................................. 36
Figura 4.4: Mdulos desenvolvidos para a seco "Dashboard" ....................................... 37
Figura 4.5: Seco "Dashboard" ....................................................................................... 38
Figura 4.6: Mdulos desenvolvidos para a seco "Organizacional" ................................ 38
Figura 4.7: Seco "Organizacional" ................................................................................ 39
Figura 4.8: Mdulos desenvolvidos para a seco "Processos"........................................ 40
Figura 4.9: Seco "Processos" ....................................................................................... 40
Figura 4.10: Mdulos desenvolvidos para a seco "Projectos" ....................................... 41
Figura 4.11: Processo de Criao de um Projecto ............................................................ 42
Figura 4.12: Mdulos desenvolvidos para a seco "Pgina de um Processo"................. 43
Figura 4.13: Seco "Pgina de um Processo"................................................................. 44
Figura 4.14: Mdulos desenvolvidos para a seco "Pgina de um Projecto" .................. 45
Figura 4.15: Seco "Pgina de um Projecto" .................................................................. 46
iv

Figura 4.16: Alocao do esforo a um elemento ............................................................. 48
Figura 4.17: Monitorizao das Actividades ...................................................................... 49
Figura 4.18: Burndown Chart de um Pacote de Trabalho ................................................. 49

Figura 5.1: Associao do Processo definido ao Projecto Gesto de Projectos com
Processos geis.............................................................................................................. 52
Figura 5.2: Perodos de Trabalho do Projecto definido ..................................................... 53
Figura 5.3: Pacotes de Trabalho do Projecto definido ...................................................... 54
Figura 5.4: Actividades do Pacote de Trabalho "Projecto de Mestrado"............................ 55
Figura 5.5: Actividades do Pacote de Trabalho "Dissertao de Mestrado" ...................... 56
Figura 5.6: Burndown Chart do Pacote de Trabalho "Projecto de Mestrado" .................... 57
Figura 5.7: Burndown Chart do Pacote de Trabalho "Dissertao de Mestrado" .............. 57
Figura 5.8: Dashboard do elemento responsvel.............................................................. 58
Figura 5.9: Projecto Gesto de Projectos com Processos geis no MS Project ............. 58

Figura 8.1: Modelo de Dados da Dimenso Organizacional ............................................. 67
Figura 8.2: Modelo de Dados da Dimenso de Processos ............................................... 68
Figura 8.3: Modelo de Dados da Dimenso de Projectos ................................................. 69


v

Lista de Tabelas
Tabela 2.1: Anlise das caractersticas gerais das ferramentas ....................................... 14
Tabela 2.2: Anlise das ferramentas ao nvel da gesto de requisitos .............................. 14
Tabela 2.3: Anlise das ferramentas ao nvel da gesto da qualidade ............................. 15
Tabela 2.4: Anlise das ferramentas ao nvel da gesto do tempo ................................... 16
Tabela 2.5: Anlise das ferramentas ao nvel da gesto de pessoas e competncias ...... 17
Tabela 2.6: Anlise das ferramentas ao nvel de funcionalidades adicionais .................... 18

Tabela 4.1: Tabelas da BD associadas a cada uma das dimenses ................................ 35
Tabela 4.2: Tabelas da BD acedidas pelos Mdulos da seco "Dashboard"................... 37
Tabela 4.3: Tabelas da BD acedidas pelos Mdulos da seco "Organizacional" ............ 39
Tabela 4.4: Tabelas da BD acedidas pelos Mdulos da seco "Processos" ................... 40
Tabela 4.5: Tabelas da BD acedidas pelos Mdulos da seco "Projectos" ..................... 41
Tabela 4.6:Tabelas da BD acedidas pelos Mdulos da seco "Pgina de um Processo"44
Tabela 4.7: Tabelas da BD acedidas pelos Mdulos da seco "Pgina de um Projecto" 46

Tabela 5.1: Disciplinas, Actividades e Produtos de Trabalho do processo "Dissertao
MEIC/IST" ........................................................................................................................ 51
Tabela 5.2: Actividades e Produtos de Trabalho de "Projecto de Mestrado" ..................... 54
Tabela 5.3: Actividades e Produtos de Trabalho de "Dissertao de Mestrado" ............... 55

Tabela 8.1: Anlise das Ferramentas de Suporte de Processos geis e do sistema PIT-
Enterprise/2007 ................................................................................................................ 65

vi


1

1 Introduo
Este captulo encontra-se dividido em 4 seces e descreve o tema deste trabalho e os
seus objectivos. A primeira seco apresenta o contexto do trabalho. A segunda seco
descreve o enquadramento onde est inserido, a iniciativa ProjectIT. A terceira seco
apresenta os desafios e os objectivos propostos e a ltima seco descreve a estrutura do
documento.
1.1 Contexto
Desde o seu incio, a rea da Engenharia de Software tem sido alvo de uma constante
evoluo. Ao longo deste crescimento, tm sido introduzidos vrios processos que
definem um conjunto de actividades e resultados associados que auxiliam no
desenvolvimento de software [1]. Os processos introduzidos at meados da dcada de 90,
fortemente assentes em desenvolvimentos em cascata e suportados por contratos
formais, no conseguiam lidar com o ritmo de mudana e grau de incerteza num mercado
cada vez mais dinmico, originando dificuldades em muitos projectos no cumprimento de
oramentos e dos planos previstos inicialmente [3]. A extensa documentao produzida e
a dificuldade na alterao dos requisitos em fases mais adiantadas do projecto eram
outras das condicionantes destes processos [1, 2]. Foi desta necessidade de adaptao
mudana que surgiram os processos geis. Estes tinham como objectivo fornecer um
novo conjunto de prticas que auxiliassem as equipas de projecto a melhorar a resposta
mudana e a desenvolver software de qualidade mais rapidamente [1].
Em 2001, um conjunto de pessoas especializadas na rea dos Sistemas de Informao
reuniu-se com o objectivo de partilhar opinies sobre temas relacionados com os
processos de desenvolvimento de software e redigiram o Manifesto para o
Desenvolvimento de Software gil [4, 5]. Este manifesto contm os valores e princpios
adjacentes aos processos geis. Em contraponto com os j referidos processos
tradicionais, os processos geis atribuem mais nfase aos indivduos, s suas
interaces, ao software funcional, colaborao com o cliente, e resposta mudana,
relegando para um plano secundrio os processos, as ferramentas, a documentao, a
negociao de contratos e os planos [5].

2

Com a introduo dos processos geis emergiram um novo conjunto de princpios e
prticas de desenvolvimento de software [1, 4, 5]:
O software funcional a principal medida de progresso, devendo ser desenvolvido
em estreita colaborao com o cliente.
Devem ser criadas verses entregveis de forma iterativa e incremental, com a
adio de novas funcionalidades. Estas verses so posteriormente testadas pelo
cliente, podendo este dar o seu feedback e sugerir novas modificaes.
A alterao dos requisitos bem-vinda em qualquer fase do projecto, respondendo
s necessidades reais do cliente no actual mercado competitivo.
Os aspectos no tcnicos (relacionados com gesto, comunicao, motivao de
pessoas e equipas) devem ser equacionados em paralelo com aspectos tcnicos
(concepo, desenvolvimento, testes).
As equipas de desenvolvimento assumem uma maior responsabilidade na
organizao do trabalho, devendo reunir-se periodicamente de forma a partilhar
detalhes do projecto.
Tanto os processos tradicionais como os processos geis pretendem garantir a qualidade
no software produzido. Desta forma, a seleco do processo correcto para um
determinado projecto essencial. Assim sendo, e devido s suas caractersticas, os
processos geis devem ser adoptados em projectos com ambientes volteis e onde os
requisitos esto indefinidos partida [1]. Os processos tradicionais so mais
aconselhados em projectos com requisitos estveis e em que os requisitos futuros so
previsveis [1]. No entanto, a complementaridade entre ambos os processos pode ser
possvel, atravs da agilizao do RUP [6].
A crescente adopo das prticas e princpios geis motivou a indstria de software a
desenvolver ferramentas que auxiliem as equipas a gerir projectos com processos geis.
Neste relatrio so discutidas e avaliadas algumas destas ferramentas.
1.2 Enquadramento
Esta tese insere-se na iniciativa de investigao ProjectIT [7]. Esta iniciativa surgiu no
contexto do Grupo de Sistemas de Informao do INESC-ID e tem como objectivo a
anlise, integrao e suporte das melhores prticas de gesto e implementao de
projectos de Sistemas de Informao. A definio desta iniciativa considerou um conjunto
de princpios orientadores, tais como [7]: alinhamento do projecto com o negcio,
3

envolvimento constante do cliente e dos utilizadores, planeamento e controlo adequado
do projecto, facilitao da comunicao com base em modelos visuais, promoo da
reutilizao e simplicidade. Esta iniciativa tem servido de contexto para vrios projectos de
engenharia, teses de mestrado e de doutoramento (consultar [22]), sendo que os seus
resultados tm sido validados por duas ferramentas complementares [4]: o ProjectIT-
Enterprise e o ProjectIT-Studio. A presente dissertao insere-se no contexto do
ProjectIT-Enterprise.
1.2.1 ProjectIT-Enterprise
O sistema ProjectIT-Enterprise uma plataforma Web que providencia capacidades de
gesto de projectos de forma colaborativa CSCW (Computer Supported Cooperative
Work) para equipas de mdia e grande dimenso [4, 7]. O ProjectIT-Enterprise privilegia
actividades ligadas definio organizacional, definio de processos e gesto de
projectos e apresenta como principais objectivos o alinhamento da definio
organizacional e de processos com a definio de projectos, a melhoria nos processos e a
comunicao e colaborao entre os vrios intervenientes [4, 7].
Actualmente encontra-se focado nos componentes clssicos da gesto de projectos,
nomeadamente: gesto de pacotes de trabalho (work packages), gesto de pessoas e
competncias e gesto financeira. Cada um destes componentes faculta vistas adaptadas
s necessidades de cada interveniente no processo, suportando assim as suas
actividades individuais e, simultaneamente, assegurando uma gesto coordenada de
todos os agentes e recursos da organizao. As principais componentes do sistema
ProjectIT-Enterprise so apresentadas de seguida.

Figura 1.1: Viso Geral do ProjectIT-Enterprise (adaptado de [4])
4

Adicionalmente, o ProjectIT-Enterprise possui outros mecanismos relevantes ao nvel do
alinhamento entre processos e projectos. Nesta ferramenta, os projectos podem ser
criados com base em processos bem definidos, existindo mtricas definidas que permitem
identificar, para cada projecto, o grau de alinhamento correspondente. Se se verificar a
existncia de um desalinhamento significativo entre projectos e processos, a definio de
novas verses do respectivo processo deve ser equacionada [4].
1.3 Objectivos do Trabalho
O ponto de partida para este trabalho foi a identificao de duas comunidades adjacentes
prtica de desenvolvimento de software: a comunidade de gesto de projectos e a
comunidade dos processos de desenvolvimento de software. Aparentemente, estas duas
comunidades reflectem sobre as mesmas questes. No entanto, cada uma delas possui
perspectivas diferentes. A comunidade de gesto de projectos tem o foco essencial na
gesto, considerando mais relevantes as actividades de gesto de mbito, do tempo, do
custo, da qualidade, da comunicao, da organizao e do risco [4]. A comunidade dos
processos de desenvolvimento de software, pesados ou geis, representada por alguns
exemplos como o RUP, ou outras comunidades como o XP, Scrum ou OpenUP, reflecte
em aspectos como a definio dos processos, isto , definio de tarefas, papis
especficos, artefactos e templates, e boas-prticas [4]. Outra dimenso relevante
existente no desenvolvimento de software a dimenso organizacional, que reflecte em
aspectos como a definio de competncias, gesto de pessoas e das suas actividades.
A distino entre as duas primeiras comunidades tambm se reflecte ao nvel das
ferramentas. No primeiro grupo, encontram-se ferramentas de gesto de projectos, tais
como Microsoft Project e Microsoft Enterprise Project Management. Muitas destas
ferramentas so generalistas em relao aos processos ou esto dependentes de um
determinado processo. Em relao ao segundo grupo, as ferramentas so em geral para
definio genrica de processos, como o caso do Rational Method Composer ou do
Eclipse Process Framework, que no entanto no oferecem qualquer suporte concreto ou
alinhamento entre processo e projectos.
Assim sendo, um dos objectivos desta dissertao a definio de um modelo e de um
conjunto de mecanismos que possibilitem o alinhamento das dimenses organizacionais e
de processos com a dimenso de projectos, considerando abordagens de gesto
integrada de projectos segundo processos geis, em particular segundo o Scrum e o XP.
Como actualmente o sistema ProjectIT-Enterprise permite este alinhamento para os
5

processos designados tradicionais, um dos desafios existentes a flexibilizao do
modelo referido de forma a suportar a gesto de projectos segundo as duas definies de
processos, tradicionais e geis.
Adicionalmente, pretende-se que o sistema a desenvolver tire partido de tecnologias
emergentes para gesto colaborativa de processos, como por exemplo CMS (Content
Management Systems) e Wikis.
Desta forma, os objectivos gerais desta tese cobrem os seguintes aspectos:
Definir e aplicar um modelo de referncia para a anlise de ferramentas de suporte
de processos geis.
Analisar a verso anterior da plataforma ProjectIT-Enterprise (ProjectIT-
Enterprise/2007) segundo o modelo de referncia definido e identificar as suas
limitaes.
Desenvolvimento e implementao de uma nova verso do ProjectIT-Enterprise
(ProjectIT-Enterprise/2010) que cubra as limitaes identificadas.
Avaliar os resultados obtidos atravs de um caso de estudo a definir.
A validao deste trabalho tambm pretende aferir os potenciais benefcios do
alinhamento entre as dimenses referidas e de que forma as plataformas colaborativas
podem auxiliar na gesto de projectos.
1.4 Estrutura do Documento
Este documento constitudo por 6 captulos. O primeiro captulo (Introduo)
contextualiza os principais aspectos desta dissertao e apresenta os objectivos do
trabalho. O segundo captulo (Estado da Arte) apresenta os dois processos geis mais
conhecidos, XP e Scrum, e a anlise efectuada s ferramentas de suporte de processos
geis segundo o modelo de referncia definido. O terceiro captulo (ProjectIT-Enterprise
Concepo) apresenta os requisitos identificados, os modelos de domnio os actores e
os casos de uso do novo sistema ProjectIT-Enterprise. O quarto captulo (ProjectIT-
Enterprise Arquitectura e Desenho) descreve o sistema desenvolvido, bem como a
sua plataforma de suporte, o WebComfort. O quinto captulo (Validao) descreve a
validao do sistema atravs de um caso de estudo e os resultados obtidos. O ltimo
captulo (Concluso) apresenta as concluses do trabalho e um conjunto de sugestes
para o trabalho futuro.
6


7

2 Estado da Arte
O objectivo deste captulo a anlise do estado da arte relativo s ferramentas de gesto
de projectos baseadas em processos geis. O captulo encontra-se dividido em 4
seces. A primeira seco dedicada a uma breve descrio dos principais processos
geis. A segunda seco enumera e ilustra as principais caractersticas das ferramentas
analisadas. A terceira seco centra-se na definio do modelo de referncia para a
anlise das ferramentas. A quarta seco contempla a anlise do conjunto de ferramentas
enumerado na seco 2.2, segundo o modelo de referncia definido.
2.1 Processos geis
A crescente adopo dos princpios geis originou a introduo de vrios processos de
desenvolvimento de software. Deste novo conjunto de processos geis destacam-se os
seguintes: Extreme Programming (XP) [4, 11, 12], Scrum [4, 13, 15, 23], Adaptive
Software Process [24], Crystal [25] e OpenUP [26]. No contexto desta tese, os processos
alvo de anlise so o XP e o Scrum. A anlise breve e centra-se nas prticas, artefactos
e papis de cada processo.
2.1.1 Extreme Programming (XP)
O XP um dos processos com mais proeminncia na rea do desenvolvimento gil de
Software, tendo sido criado por Kent Beck durante a dcada de 90. No seu livro publicado
em 1999 (consultar [11]), o autor descreve concretamente as linhas gerais e os objectivos
desta metodologia. Assim sendo, o XP apresenta-se como um processo iterativo e
incremental, onde so realizados ajustes sucessivos e controlados durante o
desenvolvimento do sistema. Estes ciclos de desenvolvimento curtos proporcionam um
feedback constante por parte do Cliente e do prprio sistema. O XP tambm recomenda
que as alteraes e modificaes indicadas pelo Cliente sejam bem-vindas pela equipa de
projecto, mesmo numa fase adiantada do ciclo de desenvolvimento [4, 11, 12].
Prticas, Artefactos e Papis do XP
Esta metodologia introduziu um novo conjunto de boas prticas e valores que podem ser
consultados em [1, 4, 11, 12].
8

A figura 2.1 apresenta os principais artefactos do processo XP. As histrias de utilizao
so descries simples da utilizao do sistema e podem ser constitudas por uma ou
mais tarefas.
Uma release uma verso do sistema que apresenta um novo conjunto de
funcionalidades. Uma iterao um conjunto restrito de histrias e tarefas que a equipa
de desenvolvimento se compromete a implementar. O planeamento da iterao visa
produzir o plano das tarefas que sero executadas e a sua distribuio entre os vrios
elementos da equipa. Se a equipa no conseguir concluir todas as tarefas previstas para
uma iterao, a data final da iterao dever manter-se. As tarefas no-concludas sero
executadas em iteraes futuras.

Figura 2.1: Principais Artefactos do XP (adaptado de [4])
O processo XP apresenta os seguintes papis: Programador, Cliente, Testador,
Monitorizador, Treinador, Consultor, Gestor. Uma descrio destes papis pode ser
consultada em [4].
2.1.2 Scrum
O Scrum um processo gil proposto por Ken Schwaber baseado numa abordagem
iterativa e incremental de desenvolvimento de software, suportado por equipas de projecto
compostas por poucos elementos [4, 13, 14, 15, 23].

9

Prticas, Artefactos e Papis do Scrum
A figura 2.2 apresenta os principais conceitos do Scrum. O Product Backlog contm uma
lista de todos os requisitos do produto, priorizada pelo Product Owner. Os Sprints so
iteraes que tm a durao de 2 a 4 semanas e o seu planeamento feito atravs do
Sprint Planning Meeting, onde participam todos os interessados. Nesta reunio definido
o Sprint Backlog, que uma lista de todas as tarefas que a equipa se compromete a
realizar durante o prximo Sprint, de forma a implementar um determinado nmero de
requisitos seleccionados a partir do Product Backlog.
Ao longo do Sprint, a equipa encontra-se diariamente durante 15 minutos numa reunio
designada de Daily Scrum, de forma a controlar o progresso do projecto e identificar
possveis dificuldades sentidas por alguns elementos da equipa. No final de cada Sprint,
uma verso do produto com novas funcionalidades deve estar concluda. As tarefas que
ficaram por concluir retornam ao Product Backlog. Antes do incio de um novo Sprint
realizada uma reunio, a Sprint Review Meeting, na qual a equipa apresenta ao Product
Owner as funcionalidades implementadas no ltimo Sprint. O Product Owner convidado
a pronunciar-se sobre possveis alteraes, que sero consideradas em futuros Sprints.
Por fim, existe uma reunio entre a Equipa e o Scrum Master, designada de Sprint
Retrospective. Esta reunio serve para a anlise da aplicao do processo Scrum,
promovendo a discusso de melhores prticas e formas de tornar o processo mais
eficiente.

Figura 2.2: Processo Scrum (adaptado de [14])
10

O Scrum define 3 papis principais: o Product Owner, a Equipa e o Scrum Master. Uma
descrio destes papis pode ser consultada em [4, 14, 15].
O processo Scrum classificado como um processo de gesto de projectos informticos.
Deste modo, a sua aplicao faz mais sentido em complementaridade com outros
processos mais ligados s prticas de engenharia, como o caso do XP [4].
2.2 Ferramentas de Suporte de Processos geis
Actualmente, existe um vasto nmero de ferramentas de suporte de processos geis. Este
conjunto composto por ferramentas ainda algo limitadas e por ferramentas j bastante
desenvolvidas, com um conjunto de funcionalidades bastante rico. Foram testadas e
analisadas vrias ferramentas, sendo que foram escolhidas as seguintes quatro:
VersionOne [16], Pivotal Tracker [17], RallyDev [18] e TargetProcess [19]. Esta seleco
deveu-se ao facto de estas ferramentas apresentarem um melhor desempenho na gesto
das actividades principais dos processos geis. O PIT-Enterprise/2007 [20] tambm alvo
de anlise. Esta seco apresenta uma introduo geral onde so destacadas as
principais caractersticas de cada ferramenta.
2.2.1 VersionOne
O VersionOne uma ferramenta comercial e especificamente desenvolvida para auxiliar
na gesto de projectos com processos geis. Suporta quatro dos processos geis mais
populares: XP, Scrum, DSDM e AgileUP. Auxilia as equipas a simplificar o processo de
planeamento e de monitorizao de um projecto e incorpora todos os conceitos relevantes
dos princpios geis: planeamento de releases e iteraes, histrias de utilizao, tarefas
e burndown charts [16].
Apresenta-se como a ferramenta ideal para grandes organizaes, pois muito completa
e possui algumas caractersticas diferenciadores, nomeadamente: associao de itens do
Backlog a objectivos estratgicos de negcio e a grupos de funcionalidades; e gerao
automtica de histrias ou defects a partir de sugestes submetidas pelo Cliente. As
caractersticas mencionadas, a vasta quantidade de relatrios existentes e o facto de
suportar 4 processos geis so as suas principais vantagens. Uma das principais
desvantagens reside no facto de uma Release e uma Iterao serem 2 entidades
independentes, o que origina alguma confuso no planeamento das mesmas. O seu vasto
conjunto de funcionalidades tambm pode dificultar a familiarizao com a ferramenta.
11

2.2.2 Pivotal Tracker
O Pivotal Tracker uma ferramenta simples de gesto colaborativa de projectos,
orientada em torno de histrias de utilizao. Esta ferramenta suporta o processo Scrum,
mas pode ser adoptada em diferentes tipos de projectos [17]. A interface do Pivotal
Tracker consiste num ecr que pode ser configurado por cada utilizador, podendo este
adicionar e remover novos contentores de informao de acordo com as suas
preferncias. A figura seguinte ilustra o ecr inicial do Pivotal Tracker.

Figura 2.3: Viso Geral do Pivotal Tracker
O Pivotal Tracker apresenta alguns aspectos diferenciadores maioria das ferramentas
de suporte de processos geis, nomeadamente na forma como gere o seu Backlog. Esta
ferramenta centra a sua gesto de requisitos nos quatro contentores ilustrados na figura
anterior: Done, Current, Backlog e IceBox. O contentor IceBox contm os itens que sero
realizados futuramente e que ainda no esto priorizados. No conjunto Backlog esto
visveis as futuras iteraes e respectivos itens, j priorizados. O conjunto Current contm
as histrias da iterao corrente, enquanto o conjunto Done constitudo pelas iteraes
concludas e respectivos itens. Quando um item criado, este automaticamente
colocado no IceBox, conforme possvel observar na figura 2.3.
Esta ferramenta possui uma interface bastante simples e fcil de usar, no existindo
qualquer complexidade desnecessria, e possui os elementos essenciais para a gesto
de projectos com processos geis. No entanto, a ferramenta no permite definir os papis
dos elementos de um projecto, no possui storyboard nem taskboard e s suporta o
processo Scrum.
12

2.2.3 RallyDev
O RallyDev uma ferramenta comercial que suporta a gesto de projectos de
desenvolvimento de software. Providencia gesto ao nvel dos requisitos, dos testes, dos
defects e do planeamento/monitorizao, auxiliando as equipas de projecto a reduzirem
os seus ciclos de desenvolvimento, a aumentarem a qualidade e a colaborarem
eficientemente [18]. O RallyDev suporta o RUP, XP e Scrum. Tal como o VersionOne, o
RallyDev apresenta um vasto conjunto de funcionalidades, entre as quais se destacam:
pgina com informao completa sobre uma histria, onde possvel associar esta com
os casos de teste e defects respectivos; e definio da severidade e prioridade de um
defect, tal como a fase do desenvolvimento onde foi detectado.
O RallyDev possui uma boa interface e contm um bom conjunto de relatrios e grficos.
O facto de suportar 3 dos processos geis mais utilizados funciona como uma grande
vantagem desta ferramenta. No entanto, no possui storyboard, de forma a monitorizar
mais eficientemente as histrias de utilizao.
2.2.4 TargetProcess
O TargetProcess uma ferramenta comercial que suporta a gesto de projectos com
processos geis, nomeadamente o XP e o Scrum. Trata-se de uma ferramenta altamente
configurvel, podendo ser adaptada de forma a corresponder s necessidades do
processo de desenvolvimento escolhido [19]. Tal como o VersionOne e o RallyDev, o
TargetProcess permite a integrao com um vasto conjunto de ferramentas de gesto de
testes e defects. Apresenta tambm um conjunto interessante de caractersticas,
nomeadamente: permite aos elementos de uma equipa a submisso de informaes
adicionais para toda a equipa; e permite que o trabalho de cada um dos elementos seja
visualizado por todos. A ferramenta muito completa, contendo vrias funcionalidades.
No entanto, possui demasiados menus, nem sempre estruturados da melhor forma.
2.2.5 PIT-Enterprise/2007
O sistema ProjectIT-Enterprise uma ferramenta desenvolvida no mbito acadmico que
permite a gesto de projectos de desenvolvimento de software. Este sistema abordado
na seco 1.2. A verso do sistema que alvo de anlise nesta tese foi desenvolvida no
mbito de um Projecto Final de Curso realizado pelos alunos Gonalo Marcos e Miguel
Silva (consultar [20]). Esta anlise visa identificar as limitaes existentes nesta verso do
sistema na gesto de projectos baseados em processos geis.
13

2.3 Modelo de Referncia
Um processo de desenvolvimento de software engloba um conjunto de actividades, entre
as quais se destacam as seguintes:
Gesto de Requisitos.
Gesto da Qualidade.
Gesto do Tempo.
Gesto de Pessoas e Competncias.
O suporte destas actividades numa ferramenta de gesto de projectos essencial.
Adicionalmente, a anlise efectuada aos processos geis na seco 2.1 permitiu
identificar um conjunto de actividades prprias que devem ser suportadas por uma
ferramenta de suporte de processos geis:

Figura 2.4: Actividades que devem ser suportadas pelas Ferramentas de Suporte de Processos geis
Deste modo, o modelo de referncia pode ser definido agrupando as actividades
identificadas na figura 2.4 no conjunto tpico de actividades de um processo de
desenvolvimento:
Gesto de Requisitos
o Gesto do Backlog.
Gesto da Qualidade
o Gesto de Testes.
o Gesto de Defects.
Gesto do Tempo
o Planeamento/Monitorizao de Releases/Iteraes.
o Gerao de Grficos e Relatrios.
14

Gesto de Pessoas e Competncias
o Gesto de Equipas Colaborativas.
2.4 Anlise Comparativa
Esta seco compara e analisa as funcionalidades das ferramentas enumeradas na
seco 2.2, segundo o modelo de referncia definido. Adicionalmente, so referidas
outras funcionalidades e caractersticas teis relacionadas com este tipo de ferramentas.
Caractersticas Gerais
Tabela 2.1: Anlise das caractersticas gerais das ferramentas
Caractersticas VersionOne Pivotal Tracker RallyDev TargetProcess
PIT-
Enterprise/2007
Opes de Instalao
On-Site e
On-Demand
On-Demand
On-Site e
On-Demand
On-Site e
On-Demand
On-Site e
On-Demand
Mltiplos Projectos Sim Sim Sim Sim Sim
Web-Based Sim Sim Sim Sim Sim
Processos Suportados
XP, Scrum,
DSDM
e AgileUP
Scrum RUP, XP e Scrum XP e Scrum RUP

Todas as ferramentas so web-based, de forma a suportar o trabalho cooperativo entre
vrios elementos de uma equipa, e permitem a gesto de vrios projectos.
Gesto de Requisitos
Tabela 2.2: Anlise das ferramentas ao nvel da gesto de requisitos
Caractersticas VersionOne Pivotal Tracker RallyDev TargetProcess
PIT-
Enterprise/2007
Priorizao dos
Backlogs (drag-and-
drop)
Sim Sim Sim Sim No
Tipos de Itens do
Backlog
Feature,
Enhancement e
Defect
Feature, Bug,
Chore e
Release
User Story,
Defect e
Defect Suite
Feature, User
Story e Bug
Activities

Estimao dos itens

Story Points Story Points Story Points Horas Dias
Dividir Histrias
em Sub-Histrias
Sim No Sim Sim No

A priorizao dos itens do Backlog revela-se essencial para uma melhor percepo dos
requisitos mais importantes. Assim sendo, as 4 ferramentas de suporte de processos
15

geis possuem a funcionalidade de drag-and-drop, que permite priorizar o Backlog. O tipo
de itens que pode ser definido no Backlog difere entre estas ferramentas. No entanto, os
conceitos de histria de utilizao (feature no VersionOne e Pivotal Tracker) e defect (bug
no Pivotal Tracker e TargetProcess) esto sempre presentes. Adicionalmente, o chore e o
defect suite so introduzidos pelo Pivotal Tracker e pelo RallyDev, respectivamente. O
chore uma histria que necessria mas que no providencia valor de negcio ao
Cliente, enquanto o defect suite um agrupamento de defects.
A estimao dos itens do Backlog feita maioritariamente utilizando Story Points, uma
forma de estimao relativa.
O Pivotal Tracker s permite a estimao dos itens de tipo feature (histria), sendo que
esta feita segundo Story Points, num intervalo entre 0 e 3, sendo 0 uma histria com
pouca complexidade e 3 uma histria com complexidade elevada.
Outra funcionalidade interessante das ferramentas de suporte de processos geis
analisadas a possibilidade de estas puderem dividir histrias em sub-histrias. Esta
diviso deve ser efectuada quando a estimao da histria inicial apresenta um valor
elevado.
Gesto da Qualidade
Tabela 2.3: Anlise das ferramentas ao nvel da gesto da qualidade
Caractersticas VersionOne
Pivotal
Tracker
RallyDev TargetProcess
PIT-
Enterprise/2007
Gesto de Testes
Integrao com
Fitnesse e
HP Quicktest Pro
No
Integrao
com
Fitnesse
Integrao com
Selenium,
Nunit e JUnit
Sim
Gesto de Defects
Integrao com
Bugzilla e JIRA
Sim
Integrao
com
Bugzilla e
JIRA
Integrao com
Bugzilla,
JIRA e TestTrack
Pro
No

Os sistemas VersionOne, RallyDev e TargetProcess permitem a integrao com
ferramentas de execuo de testes/defects. Esta integrao possibilita que o resultado da
execuo dos testes/defects seja visvel em tempo-real nas ferramentas de suporte de
processos geis. No Pivotal Tracker, a gesto de um defect efectuada alterando o
estado respectivo.

16

Gesto do Tempo
Tabela 2.4: Anlise das ferramentas ao nvel da gesto do tempo
Caractersticas VersionOne Pivotal Tracker RallyDev TargetProcess
PIT-
Enterprise/2007
Releases Sim Sim Sim Sim Sim
Sprints (ou
Iteraes)
Sim Sim Sim Sim Sim
Estimao das
Releases
Story Points e Dias Dias
Story Points e
Dias
Dias Dias
Estimao das
Iteraes
Story Points e Dias Story Points
Story Points e
Dias
Dias e Horas Dias
Estimao das
tarefas
Horas No Horas Horas Dias
Monitorizao
de Histrias
Sim - Storyboard Sim Sim
Sim -
Storyboard
No
Monitorizao
de Tarefas
Sim - Taskboard No Sim - Taskboard
Sim -
Taskboard
Sim
Grficos
Iteration/Release
Burndown/
Cumulative flow e
Velocity Chart
Iteration
Burn-Up,
Release
Burndown,
Velocity Chart
Iteration/Release
Burndown/
Cumulative flow e
Velocity Chart
Sprint/Release
Burndown/
Cumulative flow
e Velocity Chart
No
Relatrios Sim Sim Sim Sim No
Relatrios
Configurveis
Sim No No Sim No
Formato dos
Relatrios
PDF No PNG, PDF e JPG No No

As ferramentas analisadas permitem a definio de releases e iteraes. A estimao
destes conceitos no VersionOne e no RallyDev efectuada de forma idntica, definindo
um intervalo de dias e uma quantidade de Story Points que uma release/iterao deve
perfazer. O TargetProcess estima as iteraes de forma semelhante. No entanto, antes de
mencionar um valor em Story Points, define um valor em horas que indica o esforo
estimado para essa iterao.
O Planeamento de Iteraes no Pivotal Tracker realizado manipulando o campo
Velocity, observvel na figura 2.3, em cima do contentor IceBox. Este campo define a
quantidade de Story Points que uma iterao deve perfazer. O valor automaticamente
reconfigurado tendo em conta a mdia dos Story Points das vrias iteraes que forem
sendo concludas. Quando este valor actualizado, o Pivotal Tracker reorganiza todas as
iteraes e os itens respectivos de forma automtica.
17

De forma a auxiliar na monitorizao de histrias e tarefas, algumas das ferramentas
analisadas possuem uma storyboard e uma taskboard, respectivamente. Ainda assim,
possvel monitorizar as histrias e tarefas alterando os estados respectivos. De referir que
todas as ferramentas permitem a associao de pelo menos um responsvel a uma
histria/tarefa.
O VersionOne, RallyDev e TargetProcess possuem um vasto conjunto de relatrios e
grficos, para alm dos indicados. O Pivotal Tracker s possui os grficos indicados na
tabela. Dos grficos mencionados destacam-se os seguintes: Velocity Chart, que ilustra a
velocidade da equipa em anteriores iteraes; Iteration Burn-Up, que demonstra o
progresso efectuado na iterao corrente; e o Iteration/Release Burndown Chart, que
ilustra o progresso segundo uma determinada iterao/release escolhida pelo utilizador.
Adicionalmente, o VersionOne e o TargetProcess permitem a configurao dos relatrios
de acordo com a informao que o utilizador deseja visualizar. O VersionOne e o
RallyDev permitem tambm a visualizao dos relatrios noutro tipo de formatos.
Gesto de Pessoas e Competncias
Tabela 2.5: Anlise das ferramentas ao nvel da gesto de pessoas e competncias
Caractersticas VersionOne Pivotal Tracker RallyDev TargetProcess
PIT-
Enterprise/2007
Definio de Equipas Sim Sim Sim Sim Sim
Definio de Papis de
um Processo
Sim No Sim Sim No
Indicao do trabalho
alocado a cada elemento
Sim Sim Sim Sim Sim

excepo do Pivotal Tracker, as outras ferramentas permitem a definio de papis
relativos aos processos geis. Todas as ferramentas permitem que cada elemento possa
visualizar o trabalho que tem alocado.





18

Outras Funcionalidades
Tabela 2.6: Anlise das ferramentas ao nvel de funcionalidades adicionais
Caractersticas VersionOne
Pivotal
Tracker
RallyDev TargetProcess
PIT-
Enterprise/2007
Histrico Sim Sim Sim Sim No
Pesquisa Sim Sim Sim Sim No
Categorizao por tags Sim Sim Sim Sim No
Configurabilidade Sim Sim Sim Sim No
Dashboard Sim Sim Sim Sim No
Importao/Exportao
Via Excel
(CSV), XML e
MS Project
Via Excel
(CSV)
Via Excel
(CSV), XML e
MS Project
Via Excel
(CSV)
Via MS Project
Integrao com
ferramentas externas
Eclipse,
SubVersion,
Microsoft
VSTS e Wikis
No
Salesforce,
Eclipse e Wikis
Visual Studio,
SubVersion,
Perforce e
SourceSafe
No
Notificaes
Via Email e
RSS
Via Email e
RSS
Via Email e
RSS
Via Email Via Email
Anexao de ficheiros Sim Sim Sim Sim Sim

As ferramentas de suporte de processos geis permitem: visualizar o histrico associado
aos itens; pesquisar itens; associar tags a itens, podendo desta forma procurar, agrupar e
monitorizar estes itens de forma mais rpida; configurar a informao dos menus que um
utilizador deseja visualizar; anexar ficheiros aos itens; importar e exportar itens via Excel e
XML; e exportar informao sobre um projecto para o Microsoft Project. Adicionalmente,
permitem a integrao com outro tipo de ferramentas e possuem uma Dashboard (pgina
inicial com informao personalizada).
Uma tabela completa com todos os mdulos referidos nesta seco encontra-se em
Anexo, tal como uma anlise ao novo sistema implementado, o PIT-Enterprise/2010.

19

3 ProjectIT-Enterprise - Concepo
Este captulo apresenta a concepo do novo sistema ProjectIT-Enterprise e encontra-se
dividido em 4 seces. A primeira seco enumera os requisitos identificados. A segunda
seco apresenta os modelos de domnio, enquanto a terceira e quarta seco ilustram os
actores e os casos de uso, respectivamente. De referir que a apresentao dos modelos
de domnio e dos casos de uso dividida segundo as trs dimenses identificadas na
seco 1.3, nomeadamente, as dimenses Organizacional, de Processos e de Projectos.
3.1 Requisitos
A anlise efectuada no estado da arte (ver Captulo 2) permitiu identificar que a verso
anterior do sistema ProjectIT-Enterprise (ProjectIT-Enterprise/2007) no suporta maior
parte das funcionalidades necessrias de uma ferramenta de gesto de projectos
baseada em processos geis. Desta forma, foi detectado um conjunto de requisitos
relevantes para a implementao do novo sistema. Adicionalmente, os aspectos e
objectivos referidos na seco 1.3 tambm foram considerados durante a identificao
dos requisitos. De seguida apresentado o conjunto de requisitos relevantes para o
sistema ProjectIT-Enterprise/2010, adiante designado somente de ProjectIT-Enterpise,
segundo o modelo de referncia definido na seco 2.3:
Caractersticas Gerais
Req.001. Deve ser web-based.
Req.002. Deve permitir a definio e gesto de processos de desenvolvimento de
software geis e tradicionais.
Req.003. Deve permitir a definio e gesto de projectos baseados em processos geis e
tradicionais.
Req.004. Deve permitir o alinhamento entre as dimenses organizacional e de processos
com a dimenso de projectos.
Req.005. Deve fornecer mecanismos para verificar o alinhamento referido ao nvel das
actividades, dos produtos de trabalho e dos perodos de trabalho de um projecto.

20

Gesto de Requisitos
Req.006. O tipo de itens de um Backlog deve ser actividades.
Req.007. Deve permitir a organizao das actividades por nvel de prioridade (Priorizao
do Backlog).
Req.008. A estimao dos itens do Backlog (actividades) deve ser em dias e Homens-Dia.
Esta ltima forma de estimao relevante para satisfazer o requisito 022.
Gesto do Tempo
Req.009. Deve permitir a definio de perodos de trabalho.
Req.010. Deve permitir que a estimao de perodos de trabalho e actividades seja
efectuada em dias.
Req.011. A monitorizao de tarefas e a gesto do seu progresso deve ser feita atravs
de uma Taskboard.
Req.012. Deve permitir visualizar o progresso das vrias iteraes atravs de um Iteration
Burndown-Chart.
Gesto de Pessoas e Competncias
Req.013. Deve permitir a definio de equipas de projecto.
Req.014. Deve permitir a definio dos papis especficos de um processo.
Req.015. Deve permitir a definio e associao de competncias aos elementos de uma
equipa de projecto. As competncias tm de ter um custo associado, de forma a satisfazer
o requisito 022.
Req.016. Deve indicar as actividades alocadas a um determinado elemento. Este requisito
relaciona-se com o requisito 018.
Req.017. A gesto das permisses do ProjectIT-Enterprise tem de ter em conta as suas
trs dimenses.
Outras Funcionalidades
Req.018. Cada elemento deve possuir uma Dashboard, de forma a poder actualizar o seu
perfil e consultar as suas actividades em execuo.
21

Req.019. Deve permitir a exportao de um projecto para a ferramenta Microsoft Project.
Req.020. Deve permitir a integrao com um Wiki, de forma a suportar o trabalho
colaborativo dos elementos de um equipa.
Req.021. Deve permitir a anexao de ficheiros, nomeadamente, dos produtos de
trabalho produzidos ao longo de um projecto.
Req.022. Cada projecto deve apresentar um custo, o estado de execuo em que se
encontra e o esforo necessrio para o completar.
3.2 Modelos de Domnio
Esta seco apresenta os modelos de domnio do ProjectIT-Enterprise. Como referido
na seco 1.3, o ProjectIT-Enterprise define uma barreira conceptual entre a dimenso de
Processos, que especifica o que deve ser feito e como, e a dimenso de Projectos, que
verdadeiramente executa. De seguida, so destacados os aspectos principais de cada
dimenso, incluindo a dimenso Organizacional.

Figura 3.1: Dimenses do ProjectIT-Enterprise (adaptado de [4])
22

As sub-seces seguintes apresentam a definio de cada uma destas dimenses e os
modelos de domnio respectivos. Alguns dos conceitos so seguidos da palavra Process
ou Project, de forma a identificar correctamente a dimenso a que pertencem.
3.2.1 Dimenso Organizacional
A dimenso organizacional permite uma gesto mais simples das pessoas que so
intervenientes num projecto, em termos da sua informao pessoal, definio das suas
competncias e visualizao das suas actividades associadas. De seguida, ilustrado o
modelo de domnio relativo a esta dimenso.

Figura 3.2: Modelo de Domnio da Dimenso Organizacional
Cada utilizador/pessoa autenticada (Person) no sistema ProjectIT-Enterprise gere a sua
informao pessoal, podendo editar um conjunto de aspectos, nomeadamente o nome,
contactos, nacionalidade, naturalidade e fotografia. Adicionalmente, possui um conjunto
de papis (System Role), que so independentes do processo ou projecto especfico e
so atribudos pelo administrador do sistema. O conjunto destes papis apresentado na
seco 3.3.
O Gestor de Recursos Humanos responsvel por definir e atribuir as competncias
(Skill) aos utilizadores. Estas competncias tm um custo associado e correspondem
definio de um conjunto de competncias tcnicas e organizacionais, de forma a gerir o
conjunto de pessoas de um projecto. Programador e Arquitecto do Sistema so alguns
exemplos de competncias tcnicas. A partir do momento que um utilizador tem as suas
class Dimenso Organizacional
Person
Skill
Proj ect Work Package
Proj ect
Activity Proj ect
System Role
*
*
* 1
* *
* 1
*
*
*
*
*
*
* *
23

competncias atribudas pode ser um elemento de uma equipa de projecto (Project), de
um pacote de trabalho (Work Package Project) ou de uma actividade (Activity Project). A
relao entre um utilizador e actividades relevante para identificar quais as actividades
presentes no Dashboard.
3.2.2 Dimenso de Processos
A dimenso de Processos tem como objectivo a definio de processos que possam
suportar diferentes projectos de uma organizao de forma metdica, disciplinada e
eficiente [4]. Esta definio de um processo envolve um conjunto de aspectos,
nomeadamente, definio de tarefas, papis, templates de artefactos, disciplinas e boas-
prticas a seguir (consultar [22]). De seguida, ilustrado o modelo de domnio relativo
dimenso de Processos.

Figura 3.3: Modelo de Domnio da Dimenso de Processos
O elemento central deste modelo o Processo (Process), que possui um nome, uma
descrio e um conjunto de disciplinas. Uma disciplina (Discipline Process) uma
composio lgica de um conjunto de actividades (Activity Process), agrupando-as
class Dimenso de Processos
Process
Work Period
Process
Discipline
Process
Work Product
Process
Document
Process
Activity
Process
Skill
Role
Process
{subset}
*
1
* 1
*
1
1
1
1
*
* 1
1
*
*
*
*
1
*
1
*
1
24

segundo reas de interesse (por exemplo, requisitos, implementao, etc). Uma
actividade possui um nome, uma descrio geral e contm um conjunto de informao
que indica qual o conjunto de competncias (Skill Process) mais adequadas para a sua
realizao. As actividades realizadas podem utilizar/produzir um conjunto de produtos de
trabalho (Work Product Process). Ao nvel do Processo, os produtos de trabalho
correspondem na realidade definio de um template de produto de trabalho (por
exemplo, template Word para a escrita de um Documento de Requisitos), mas tambm a
normas e guias de estilo. Em geral, as disciplinas agregam os produtos de trabalho
produzidos ou usados pelas respectivas actividades. Deste modo, o conjunto das
associaes entre actividades e produtos de trabalho um subconjunto das associaes
entre os produtos de trabalho e as disciplinas, representado na figura 3.3 por subset.
Um Processo tambm composto por um conjunto de papis. Um papel (Role Process)
corresponde a um conjunto de competncias e responsabilidades bem definidas na
realizao das actividades. Por exemplo, no XP ter-se-iam os papis de Programador,
Cliente, Gestor de Projecto, Testador e Treinador.
Adicionalmente, um Processo composto por perodos de trabalho (Work Period
Process). Um perodo de trabalho corresponde a uma janela temporal que permite planear
e monitorizar a execuo dos projectos. Ao nvel do Processo, a sua definio apenas
taxonmica, permitindo atribuir nomes a diferentes perodos de trabalho. Por exemplo, no
XP ter-se-iam os seguintes perodos de trabalho: Releases e Iteraes. De salientar, que
cada perodo de trabalho tem um nvel, sendo possvel definir uma hierarquia (por
exemplo, no XP, os perodos de trabalho Release, Iterao e Tarefa so de nvel 1, 2 e 3
respectivamente). Para um determinado processo, tambm necessrio escolher a qual
dos nveis possvel associar pacotes de trabalho na dimenso de Projectos.
Esta soluo apresentada no modelo de domnio permite a separao entre o tempo e as
actividades, adaptando-se bem a processos iterativos e incrementais, como o caso dos
processos geis. Tambm de referir que a quase totalidade dos conceitos definidos
nesta dimenso correspondem a conceitos genricos, isto , um produto de trabalho na
realidade um template de produto de trabalho e uma actividade uma descrio genrica
de actividade. Somente na dimenso de Projectos que estes conceitos so instanciados
em produtos de trabalho e actividades concretas. Deste modo, esta instanciao de
conceitos na dimenso de Projectos permite importar logo partida um conjunto de boas-
prticas e informao til para tornar a gesto de um projecto mais eficiente.
25

3.2.3 Dimenso de Projectos
A dimenso de Projectos do ProjectIT-Enterprise tem como principal objectivo o suporte
colaborativo da gesto de projectos [4]. Esta gesto envolve outros aspectos,
nomeadamente, a definio do mbito do trabalho e dos respectivos requisitos,
actividades de gesto do tempo, do custo, da qualidade, da organizao e do risco
(consultar [22]). De seguida, ilustrado o modelo de domnio relativo dimenso de
Projectos.

Figura 3.4: Modelo de Domnio da Dimenso de Projectos
De forma a cumprir o alinhamento pretendido entre as dimenses Organizacional e de
Processos com a dimenso de Projectos, alguns dos conceitos apresentados nas duas
primeiras dimenses esto incorporados no modelo de domnio apresentado na figura
anterior, relacionando-se com os demais conceitos especficos da dimenso de Projectos.
Assim sendo, a especificao de um Projecto (Project) baseada na definio de um
class Dimenso de Proj ect...
Project
Work Period
Project
Work Package
Project
Activity
Project
Feature Scope
Element
Process
Discipline
Process
Work Period
Process
Role Process Person Skill
Activity
Process
Work Product
Process
Work Product
Project
Document
Project
Document
Process
{subset}
{subset}
*
1
*
1
1 1
*
*
* 1
*
1
1 1
0..1
1
*
1
* 1
1
0..1
*
1
*
1
*
1
*
*
*
1
* 1
*
1
* 1
* 1
* *
*
1
*
*
*
*
*
*
1
0..1
* 1
* *
26

Processo, isto , um Projecto pode ser associado a um Processo especfico e, se este
alinhamento se concretizar, o Gestor de Projecto pode seleccionar as disciplinas e os
templates de actividades/produtos de trabalho que pretender. Ao optar pelo alinhamento
de um Projecto com um Processo, os perodos de trabalho (Work Period Project) definidos
para esse projecto tero como base a terminologia do processo escolhido. Cada perodo
de trabalho pode ser composto por pacotes de trabalho (Work Package Project). Estes
pacotes de trabalho representam um subconjunto de execuo do projecto. Num processo
mais tradicional este conceito de pacote de trabalho funcionaria como uma work package
normal numa estrutura ao nvel da WBS (Work Breakdown Structure), enquanto num
processo Scrum apresentaria as mesmas caractersticas de um Sprint Backlog, com uma
lista de actividades ou tarefas definidas para cada Sprint. Adicionalmente, os pacotes de
trabalho so associados aos perodos de trabalho relativos ao nvel especificado na
dimenso de Processos. Isto , se considerarmos o processo Scrum, na dimenso de
Processos o nvel especificado para esta associao seria o nvel 2 (Sprint), para que na
dimenso de Projectos seja possvel associar os pacotes de trabalho respectivos (Sprint
Backlog).
Para cada pacote de trabalho necessrio descrever e planear o conjunto de actividades
(Activity Project) respectivo. Cada actividade tem um esforo, sendo medido em Esforo-
Dia (Man-Days), e tem elementos (Person) responsveis pela sua execuo. Cada
elemento tem um conjunto de competncias que possuem um custo associado. Atravs
deste custo e da durao da actividade, calculado o seu custo total, sendo actualizado
os custos relativos ao pacote de trabalho e ao projecto. As actividades podem ser
instanciadas a partir das actividades descritas na dimenso de Processos e podem
utilizar/produzir um conjunto de produtos de trabalho (Work Product Project). Estes
produtos de trabalho tambm podem ser instanciados a partir dos templates de produtos
de trabalho descritos na dimenso de Processos.
Os pacotes de trabalho agregam os produtos de trabalho produzidos ou usados pelas
respectivas actividades. Deste modo, o conjunto das associaes entre actividades e
produtos de trabalho um subconjunto das associaes entre os produtos de trabalho e
os pacotes de trabalho, representado na figura 3.4 por subset.
Um Projecto tambm pode ser composto por um conjunto de elementos do mbito (Scope
Element). A definio do mbito est intimamente ligada definio dos requisitos,
permitindo identificar e descrever qual o trabalho necessrio a realizar. Por exemplo, num
processo Scrum, definio dos requisitos a implementar num determinado Sprint deve
estar associada uma definio do mbito, que descreve o que se pretende realizar nesse
27

Sprint. A definio do mbito deve ter um nvel de detalhe razovel e de fcil
compreenso, para que os elementos de uma equipa percebam o que esperado durante
a execuo de um pacote de trabalho. Devido ao facto das actividades estarem situadas
num maior nvel de detalhe (nvel de implementao/cdigo), no faz sentido associar
uma actividade com a definio do mbito correspondente. Deste modo, as actividades
esto associadas ao conjunto de funcionalidades (feature) que implementam.
Esta soluo apresentada no modelo de domnio tambm permite que um projecto seja
criado e gerido sem estar alinhado com um Processo especfico. No entanto, a gesto do
projecto torna-se mais ineficiente, pois no possui um conjunto de boas-prticas definido.
3.3 Actores
O sistema ProjectIT-Enterprise pode ser acedido por diferentes utilizadores atravs de um
username e de uma password. Na figura seguinte so apresentados os papis (actores)
existentes, sendo que cada utilizador pode acumular diferentes papis.

Figura 3.5: Actores do sistema ProjectIT-Enterprise
uc Actores
Annimo
Autenticado
Gestor de Processos
Gestor de Proj ectos
Gestor de Recursos
Humanos
Administrador
Membro
28

Um dos aspectos a destacar as relaes de generalizao existentes entre os actores
Annimo e Autenticado e entre este ltimo e os restantes. Esta relao significa que o
actor Autenticado encarado como uma especializao do actor Annimo pelo facto
de herdar as funcionalidades especificadas atravs do respectivo conjunto de casos de
uso. De seguida, efectuada uma breve descrio dos papis do ProjecIT-Enterprise.
Annimo Conjunto de utilizadores no registados no sistema (pblico em geral). Estes
utilizadores apenas podem consultar os processos definidos no sistema e os projectos
pblicos.
Autenticado Este actor representa qualquer utilizador registado no sistema. Cada
utilizador autenticado possui um perfil prprio, onde pode gerir a sua informao pessoal.
Membro Actor que representa um elemento da equipa de um Projecto. Este actor
possui um conjunto de competncias definidas pelo utilizador Gestor de Recursos
Humanos e pode realizar as actividades de um projecto.
Gestor de Processos Utilizadores responsveis pela gesto (assume-se as operaes
usuais de introduo, remoo e alterao) de qualquer template de um processo definido
no sistema. Para definir completamente um processo necessrio definir um conjunto de
caractersticas tpicas, nomeadamente, disciplinas, actividades, produtos de trabalho,
perodos de trabalho e papis especficos.
Gestor de Projectos Estes utilizadores tm a responsabilidade de gerir os projectos
criados por si, nomeadamente, os perodos de trabalho, os pacotes de trabalho e os
elementos que constituem a equipa.
Gestor de Recursos Humanos Utilizadores responsveis pela gesto das
competncias existentes no sistema. Tambm tm a responsabilidade de associar estas
competncias aos utilizadores com perfil definido, de acordo com o conjunto de
caractersticas que cada um comprovou.
Administrador Este actor tem a responsabilidade de gerir toda a estrutura do ProjectIT-
Enterprise, nomeadamente, os mdulos existentes, os papis de sistema, os utilizadores
registados e as suas permisses.
29

3.4 Casos de Uso
A apresentao dos casos de uso consiste na identificao da funcionalidade do sistema
na ptica dos seus utilizadores, o que passa pela identificao dos actores envolvidos,
efectuada na seco anterior, e pela estruturao dos casos de uso em agrupamentos
lgicos. De seguida, so apresentados os vrios casos de uso divididos por 3 dimenses:
Organizacional, de Processos e Projectos. Adicionalmente, so descritos os casos de uso
mais relevantes.
3.4.1 Dimenso Organizacional
O diagrama de casos de uso relativo a esta dimenso envolve os actores Annimo,
Autenticado, Gestor de Recursos Humanos e Administrador. O diagrama respectivo
ilustrado de seguida.

Figura 3.6: Casos de Uso da Dimenso Organizacional
Gerir Perfil Cada utilizador autenticado pode gerir a informao relativa ao seu perfil,
nomeadamente, editando o nome, contactos e email respectivo. Adicionalmente, tambm
pode consultar as suas competncias.
Atribuir Papis de Sistema O Administrador responsvel pela atribuio dos papis
de sistema (ver seco 3.3) existentes aos utilizadores.
Di menso Organi zaci onal
Gestor de Recursos
Humanos
Gerir Competncias
Associar
Competncias a
Pessoas
Autenticado
Consultar
Competncias
Consultar
Competncias
associadas s
Pessoas
Annimo
Administrador
Gerir Perfil
Gerir Utilizadores
Atribuir Papis de
Sistema
Consultar Pessoas
extend
i ncl ude
30

Gerir Competncias O Gestor de Recursos Humanos responsvel por gerir as
competncias existentes no ProjectIT-Enterprise, introduzindo um nome e um custo
associado.
Associar Competncias a Pessoas O Gestor de Recursos Humanos tem a
responsabilidade de associar as competncias existentes s pessoas.
3.4.2 Dimenso de Processos
O diagrama de casos de uso relativo a esta dimenso envolve os actores Annimo e
Gestor de Processos. O diagrama respectivo ilustrado de seguida.

Figura 3.7: Casos de Uso da Dimenso de Processos
Gerir Processo O Gestor de Processos pode gerir um determinado processo, editando
o seu nome, logtipo e descrio.
Di menso de Processos
Gestor de Processos
Gerir Processo
Gerir Disciplinas
Gerir Actividades
Gerir Produtos de
Trabalho
Gerir Perodos de
Trabalho
Consultar Processo
Consultar
Disciplinas
Consultar Perodos
de Trabalho
Consultar
Actividades
Consultar Produtos
de Trabalho Annimo
Gerir Papis do
Processo
Consultar Papis do
Processo
extend
extend
extend
extend
extend
extend
extend
extend
extend
extend
31

Gerir Perodos de Trabalho O Gestor de Processos pode gerir os perodos de trabalho
de um processo. Isto implica editar informao sobre o nome, descrio, intervalo de
tempo do perodo de trabalho e o seu nvel hierrquico.
Gerir Produtos de Trabalho O Gestor de Processos pode adicionar templates de
produtos de trabalho, indicando um nome, descrio e submetendo um ficheiro.
3.4.3 Dimenso de Projectos
O diagrama de casos de uso relativo a esta dimenso envolve os actores Annimo,
Autenticado, Membro e Gestor de Projectos e ilustrado de seguida.

Figura 3.8: Casos de Uso da Dimenso de Projectos
Di menso de Proj ectos
Gestor de Proj ectos
Gerir Proj ecto
Gerir Perodos de
Trabalho
Gerir Equipa de
Proj ecto
Annimo/Autenticado
Consultar Proj ecto
Consultar Perodos
de Trabalho
Consultar Equipa de
Proj ecto
Consultar Pacotes de
Trabalho
Consultar
Actividades
Consultar Produtos
de Trabalho
Membro
Gerir Pacotes de
Trabalho
Gerir Actividades
Gerir Produtos de
Trabalho
Consultar Elementos do
Pacote de Trabalho
Gerir Elementos do
Pacote de Trabalho
Se o nvel de pri vaci dade do proj ecto for "Pbl i co",
ambos os actores podem consul t-l o. Se for
"Uti l i zadores Regi stados", somente o actor
"Autenti cado" pode aceder ao proj ecto.
O actor "Membro" s pode geri r o pacote de
trabal ho se esta funo for del egada pel o
actor "Gestor de Proj ectos".
extend
extend
extend
extend
extend
extend
extend
extend
extend
extend
extend
32

Gerir Projecto O Gestor de Projectos responsvel por gerir os projectos criados por
si, nomeadamente, um conjunto de informao associada como o nome, descrio, data
inicial e final, nvel de privacidade, estado de execuo, processo associado e o logtipo
respectivo.
Gerir Perodos de Trabalho O Gestor de Projectos deve adicionar um conjunto de
perodos de trabalho, introduzindo um nome, uma data inicial e final, respeitando os
intervalos de tempo dos perodos de trabalho do Processo associado. Adicionalmente,
tem a possibilidade de verificar o alinhamento com os Perodos de Trabalho definidos na
dimenso de Processos.
Gerir Equipa de Projecto O Gestor de Projectos tem a responsabilidade de escolher os
elementos que faro parte do projecto, dependendo das competncias de cada um.
Gerir Pacotes de Trabalho O Gestor de Projectos tem a responsabilidade de adicionar
novos pacotes de trabalho. No processo de criao pode escolher um dos elementos da
equipa para ser o gestor do pacote de trabalho. Ambos podem gerir o pacote de trabalho,
editando um conjunto de informao associada como o nome, descrio, o perodo de
trabalho associado, uma data inicial e final, nvel de privacidade e o estado de execuo.
Gerir Actividades Os responsveis pelo pacote de trabalho devem gerir a informao
relativa s suas actividades, nomeadamente, o nome, prioridade, descrio, datas
previstas, actividade associada, esforo (em Homens-Dia) e a escolha dos elementos que
realizaro essas actividades, dependendo das competncias que cada um possui.
Adicionalmente, ao longo da evoluo das actividades tambm tm a responsabilidade de
actualizar o esforo restante para o trmino das mesmas.



33

4 ProjectIT-Enterprise - Arquitectura e
Desenho
Este captulo apresenta os aspectos de arquitectura e desenho do ProjectIT-Enterprise. O
captulo est dividido em 4 seces. A primeira seco descreve as principais
caractersticas do WebComfort, a plataforma de suporte do ProjectIT-Enterprise. A
segunda seco apresenta o modelo de dados. A terceira seco apresenta a estrutura
do sistema, nomeadamente, as seces e os mdulos desenvolvidos. A ltima seco
descreve alguns aspectos de desenho.
4.1 Plataforma WebComfort
O ProjectIT-Enterprise tem sido desenvolvido sobre a plataforma WebComfort - Gestor
de Contedos e Aplicaes Web. O WebComfort um CMS (Content Management
System) Framework desenvolvido e suportado pelas tecnologias Microsoft ASP.NET 2.0
(C#) e SQL Server 2005 [8, 9, 10, 21]. Permite fazer a operao e gesto integrada de
aplicaes Web, disponibilizando ferramentas e mecanismos para gesto de contedos,
estruturados ou no estruturados, atravs de clientes Web genricos (Internet Explorer,
Mozilla Firefox, Opera) [9, 10]. Tal como a maioria dos CMS, a plataforma WebComfort
apresenta uma independncia entre o contedo e a sua apresentao e possui como
grandes vantagens a extensibilidade, reusabilidade e modularidade [9, 10, 21].
Uma aplicao WebComfort constituda por pginas dinmicas e pginas estticas.
Cada pgina dinmica (ou seco) pode ser configurada e editada, sendo que os
contedos so definidos atravs de tipos de mdulos pr-definidos, tais como, lista de
links, lista de anncios, documentos ou uma imagem. Os mdulos so um dos
componentes mais importantes desta plataforma, pois contm a definio do contedo e
conferem extensibilidade plataforma atravs da definio e adio de novos tipos de
mdulos. A disposio espacial destes mdulos efectuada numa estrutura flexvel de
contentores dinmicos consoante as necessidades especficas da organizao ou dos
designers. Tambm possvel definir e gerir temas visuais que estabelecem os aspectos
da apresentao grfica de toda a aplicao, de uma pgina ou somente de um
mdulo/contedo [9, 10, 21].
Entre outros aspectos, o WebComfort apresenta as seguintes funcionalidades [9, 10, 21]:
administrao e configurao geral da aplicao Web; gesto integrada de utilizadores;
34

permisses e controlo de acessos; gesto integrada de pginas dinmicas com mltiplos
contedos; gesto integrada de contedos; suporte e gesto de temas visuais; suporte e
gesto de toolkits de mdulos; suporte na extensibilidade da plataforma; e suporte multi-
lngua. De seguida, apresentada uma figura com os principais conceitos do
WebComfort.

Figura 4.1: Principais Conceitos do WebComfort (extrado de [9])
4.2 Modelo de Dados
O esquema relativo base de dados do ProjectIT-Enterprise encontra-se em anexo,
dividido pelas 3 dimenses identificadas na seco 1.3. A tabela seguinte ilustra as
tabelas da base de dados relativas a cada uma das dimenses.



35

Tabela 4.1: Tabelas da BD associadas a cada uma das dimenses
Organizacional Processos Projectos
UserProfile Process Project
Skill ProcessDefinition DisciplineProjectTemplate
UserSkills DisciplineProcess ActivityProjectTemplate
ProjectMembers ActivityProcess ActivityProjectTemplateSkills
Project ActivityProcessSkills WorkProductProjectTemplate
WorkPackageMembers WorkProductProcess DocumentProjectTemplate
WorkPackage DocumentProcess WorkPeriodProjectTemplate
ActivityMembers WorkPeriodProcess WorkPeriodProject
ActivityProject RoleProcess ProjectMembers
RoleActivities WorkPackage
RoleSkills WorkPackageMembers
ActivityProject
ActivityEffort

ActivityMembers
WorkProductProject
DocumentProject
4.3 Arquitectura do Sistema
O sistema desenvolvido deriva da estrutura especfica do WebComfort (ver figura 4.1). De
seguida ilustrada a pgina inicial de um administrador do sistema ProjectIT-Enterprise.

Figura 4.2: Pgina Inicial do ProjectIT-Enterprise
36

A navegao no sistema feita principalmente atravs do top banner, representado na
figura pela Zona-1. Aqui possvel aceder s seces principais do sistema e
Administrao do Portal. Adicionalmente, o sistema ProjectIT-Enterprise tira ainda partido
de alguns mdulos WebComfort localizados na Zona-2, e que tm sido desenvolvidos ao
longo do tempo, com propsitos mais ou menos genricos, tais como: mdulos gerais de
gesto e visualizao de imagens, rvore do portal, links, HitCounter e multi-lngua.
O ProjectIT-Enterprise constitudo por 4 seces (ou pginas dinmicas) principais
nomeadamente, Dashboard, Organizacional, Processos e Projectos, conforme ilustrado
na Zona-1 da Figura 4.2. Adicionalmente, cada Processo/Projecto possui uma seco
prpria. Cada uma das seces do sistema possui um conjunto de mdulos especficos e
que foram desenvolvidos ao longo deste trabalho de forma a satisfazer os requisitos
identificados na seco 3.1. A figura seguinte apresenta a estrutura genrica de um
mdulo WebComfort.

Figura 4.3: Estrutura genrica de um Mdulo WebComfort
A apresentao do contedo de um mdulo (Module Layout) implementada atravs de
ASP.NET User Controls (ficheiros .ascx). De forma a editar o contedo de um mdulo,
so utilizadas pginas estticas (Module Support Page, ficheiros .aspx).
As prximas sub-seces apresentam os mdulos WebComfort desenvolvidos para cada
uma das seces (ou pginas dinmicas) do ProjectIT-Enterprise, com a especificao
dos User Controls e das pginas estticas respectivas. Adicionalmente, so enumeradas
as tabelas da bases de dados acedidas por cada mdulo WebComfort desenvolvido.

Module
Module Layout
Module Support
Page
*
*
37

4.3.1 Seco Dashboard
A figura seguinte ilustra os mdulos desenvolvidos para a seco Dashboard.

Figura 4.4: Mdulos desenvolvidos para a seco "Dashboard"
A prxima tabela enumera as tabelas da base de dados acedidas por cada um dos
mdulos identificados na figura anterior.
Tabela 4.2: Tabelas da BD acedidas pelos Mdulos da seco "Dashboard"
Mdulos Tabelas Base de Dados
Profile
UserProfile
UserSkills
Skill
MyProjects
ProjectMembers
Project
MyWorkPackages
WorkPackageMembers
WorkPackage
MyActivities
ActivityMembers
ActivityProject

A estrutura da seco Dashboard ilustrada na figura 4.5. A Zona-1 corresponde ao
mdulo Profile e apresenta um conjunto de informao pessoal relativa ao utilizador, que
pode ser editada pelo prprio, acedendo pgina EditProfile. Os restantes mdulos
presentes nesta seco encontram-se na Zona-2 e permitem ao utilizador visualizar as
actividades, os pacotes de trabalho e os projectos em execuo aos quais se encontra
alocado. Cada um destes mdulos apresenta um filtro, com um conjunto de parmetros
variveis de pesquisa.
Dashboard
WebC-Modul e
Profile
ascx
Profile
aspx
EditProfile
WebC-Modul e
MyProj ects
ascx
MyProj ects
WebC-Modul e
MyWorkPackages
ascx
MyWorkPackages
WebC-Modul e
MyActivities
ascx
MyActivities
38


Figura 4.5: Seco "Dashboard"
4.3.2 Seco Organizacional
A figura seguinte ilustra os mdulos desenvolvidos para a seco Organizacional.

Figura 4.6: Mdulos desenvolvidos para a seco "Organizacional"
A tabela seguinte enumera as tabelas da base de dados acedidas por cada um dos
mdulos identificados na figura anterior.

Organizacional
WebC-Modul e
Skills
ascx
Skills
aspx
EditSkill
WebC-Modul e
UserSkills
ascx
UserSkills
aspx
EditUserSkills
39

Tabela 4.3: Tabelas da BD acedidas pelos Mdulos da seco "Organizacional"
Mdulos Tabelas Base de Dados
Skills Skill
UserSkills
UserProfile
UserSkills
Skill

A estrutura da seco Organizacional ilustrada na figura 4.7. O mdulo Skills,
localizado na Zona-1, apresenta as competncias definidas no sistema e o seu custo
associado e pode ser visualizado por qualquer utilizador. O mdulo UserSkills, localizado
na Zona-2, apresenta as competncias associadas a cada um dos utilizadores registados
no sistema. Este mdulo s pode ser visualizado pelos utilizadores registados. O
contedo presente em ambos os mdulos editado pelo Gestor de Recursos Humanos.

Figura 4.7: Seco "Organizacional"

40

4.3.3 Seco Processos
A figura seguinte ilustra os mdulos desenvolvidos para a seco Processos.

Figura 4.8: Mdulos desenvolvidos para a seco "Processos"
A tabela seguinte enumera as tabelas da base de dados acedidas pelo mdulo
identificado na figura anterior.
Tabela 4.4: Tabelas da BD acedidas pelos Mdulos da seco "Processos"
Mdulos Tabelas Base de Dados
Processes Process

A figura 4.9 ilustra a seco Processos com o mdulo Processes, que apresenta a lista
de processos definidos no ProjectIT-Enterprise. A partir deste mdulo possvel criar
novos processos, atravs da pgina EditProcess, ou aceder aos processos definidos,
clicando no logtipo respectivo.

Figura 4.9: Seco "Processos"

Processos
WebC-Modul e
Processes
ascx
Processes
aspx
EditProcess
41

4.3.4 Seco Projectos
A figura seguinte ilustra os mdulos desenvolvidos para a seco Projectos.

Figura 4.10: Mdulos desenvolvidos para a seco "Projectos"
A tabela seguinte enumera as tabelas da base de dados acedidas pelo mdulo
identificado na figura anterior.
Tabela 4.5: Tabelas da BD acedidas pelos Mdulos da seco "Projectos"
Mdulos Tabelas Base de Dados
Projects
Project
Process
DisciplineProcess
ActivityProcess
ActivityProcessSkills
WorkProductProcess
DocumentProcess
WorkPeriodProcess
DisciplineProjectTemplate
ActivityProjectTemplate
ActivityProjectTemplateSkills
WorkProductProjectTemplate
DocumentProjectTemplate
WorkPeriodProjectTemplate

O mdulo Projects apresenta a lista de projectos existentes na plataforma. A partir deste
mdulo, possvel criar novos projectos, atravs da pgina CreateProject. Nesta pgina
de criao do projecto, um Gestor de Projecto pode optar por associar um template de um
processo. Caso opte por faz-lo, poder escolher as entidades do processo que pretende
instanciar para o seu projecto atravs de um wizard, existente na pgina
AssociateProcessToProject. Ou seja, poder optar por um conjunto de disciplinas,
Proj ectos
WebC-Module
Proj ects
ascx
Proj ects
aspx
CreateProj ect
aspx
AssociateProcessToProj ect
42

actividades, produtos de trabalho e perodos de trabalho. A figura seguinte ilustra o
processo de criao de um projecto com um processo associado.

Figura 4.11: Processo de Criao de um Projecto
Se o Gestor de Projectos no optar por associar um template de um processo, ento
poder definir um conjunto de disciplinas, actividades e produtos de trabalho na pgina
relativa ao projecto criado (ver seco 4.3.6).
43

4.3.5 Seco Pgina de um Processo
A figura seguinte ilustra os mdulos desenvolvidos para a seco relativa a um
determinado processo.

Figura 4.12: Mdulos desenvolvidos para a seco "Pgina de um Processo"
A tabela seguinte enumera as tabelas da base de dados acedidas pelos mdulos
identificados na figura anterior.

Pgina Processo
WebC-Modul e
Process
ascx
Process
aspx
EditProcess
WebC-Modul e
GeneralInformation
ascx
GeneralInformation
aspx
EditGeneralInformation
WebC-Modul e
Disciplines
ascx
Disciplines
aspx
EditDiscipline
aspx
EditActivity
aspx
EditWorkProduct
WebC-Modul e
WorkPeriods
ascx
WorkPeriods
aspx
EditWorkPeriod
WebC-Modul e
Roles
ascx
Roles
aspx
EditRole
44

Tabela 4.6: Tabelas da BD acedidas pelos Mdulos da seco "Pgina de um Processo"
Mdulos Tabelas Base de Dados
Process Process
GeneralInformation ProcessDefinition
Disciplines
DisciplineProcess
ActivityProcess
ActivityProcessSkills
WorkProductProcess
DocumentProcess
WorkPeriods WorkPeriodProcess
Roles
RoleProcess
RoleActivities
ActivityProcess
RoleSkills
Skill

A figura seguinte apresenta a estrutura da pgina de um processo.

Figura 4.13: Seco "Pgina de um Processo"
A Zona-1 corresponde ao mdulo Process, que contm o nome, logtipo e um conjunto de
links relativos aos conceitos do modelo de domnio da Dimenso de Processos (ver
seco 3.2.2). Ao clicar em cada um dos links carregado o mdulo correspondente na
Zona-4. O mdulo GeneralInformation apresenta a descrio do processo. O mdulo
Disciplines apresenta as disciplinas, actividades e produtos de trabalho. Os mdulos
WorkPeriods e Roles mostram os perodos de trabalho e papis especficos do processo,
respectivamente. Adicionalmente, os utilizadores podem colocar sugestes sobre a
definio do processo, atravs do mdulo Guestbook do WebComfort. As zonas 2 e 3
contm alguns mdulos genricos do WebComfort, tais como: HitCounter, Links,
45

UserLanguage e BreadCrumb. Um processo pode ser definido em multi-lngua, de acordo
com as linguagens existentes na Zona-3, e s pode ser editado por um Gestor de
Processos.
4.3.6 Seco Pgina de um Projecto
A figura seguinte ilustra os mdulos desenvolvidos para a seco relativa a um
determinado projecto.

Figura 4.14: Mdulos desenvolvidos para a seco "Pgina de um Projecto"
Pgina Proj ecto
WebC-Module
Proj ect
ascx
Proj ect
aspx
EditProj ect
WebC-Module
GeneralInformation
ascx
GeneralInformation
aspx
EditGeneralInformation
WebC-Module
Disciplines
ascx
Disciplines
aspx
EditDiscipline
aspx
EditActivityTemplate
aspx
EditWorkProductTemplate
WebC-Modul e
WorkPeriods
ascx
WorkPeriods
WebC-Module
WorkPackages
ascx
WorkPackages
aspx
EditWorkPackage
aspx
EditActivity
aspx
EditWorkProduct
WebC-Modul e
Members
ascx
Members
aspx
EditMembers
46

A tabela seguinte enumera as tabelas da base de dados acedidas pelos mdulos
identificados na figura anterior.
Tabela 4.7: Tabelas da BD acedidas pelos Mdulos da seco "Pgina de um Projecto"
Mdulos Tabelas Base de Dados
Project
Project
GeneralInformation
Disciplines
DisciplineProjectTemplate
ActivityProjectTemplate
ActivityProjectTemplateSkills
WorkProductProjectTemplate
DocumentProjectTemplate
WorkPeriods
WorkPeriodProjectTemplate
WorkPeriodProject
WorkPackages
WorkPackage
WorkPackageMembers
ActivityProject
ActivityProjectTemplate
ActivityMembers
ActivityEffort
WorkProductProject
WorkProductProjectTemplate
DocumentProject
DocumentProjectTemplate
UserProfile
UserSkills
Skill
Members
ProjectMembers
UserProfile
UserSkills
Skill


Figura 4.15: Seco "Pgina de um Projecto"
47

A figura anterior apresenta a estrutura de uma pgina de um projecto. A Zona-1
corresponde ao mdulo Project, que contm o nome, logtipo e um conjunto de links
relativos aos conceitos do modelo de domnio da Dimenso de Projectos (ver seco
3.2.3). Ao clicar em cada um dos links carregado o mdulo correspondente na Zona-4.
O mdulo GeneralInformation contm um conjunto de informao sobre o projecto: a
descrio; a datas inicial e final; o nvel de privacidade; o gestor do projecto; o processo
associado, no caso de existir; o estado; o progresso e o custo. Adicionalmente, este
mdulo fornece uma funcionalidade importante: a exportao de um projecto para a
ferramenta Microsoft Project. O mdulo WorkPeriods contm os perodos de trabalho do
projecto. Este mdulo oferece um mecanismo de alinhamento, que avalia se o intervalo de
datas especificado para um determinado perodo de trabalho se encontra dentro da
durao prevista na dimenso de Processos. O mdulo WorkPackages apresenta os
pacotes de trabalho de um determinado projecto, os elementos, as actividades e os
produtos de trabalho respectivos. O mdulo Members apresenta os elementos da equipa
de projecto. Todos os mdulos desta pgina s podem ser editados pelo Gestor de
Projectos. Adicionalmente, os elementos do projecto podem partilhar ideias atravs de um
mdulo Wiki do WebComfort.
As zonas 2 e 3 contm alguns mdulos genricos do WebComfort, tais como: HitCounter,
Links, UserLanguage e BreadCrumb.
4.4 Aspectos de Desenho
Esta seco descreve alguns aspectos de desenho do ProjectIT-Enterprise.
Nvel de Privacidade
Um projecto pode ter trs nveis de privacidade distintos: Pblico, Utilizadores
Registados e Privado. O nvel de privacidade Pblico indica que qualquer utilizador
pode aceder a um projecto e consultar toda a sua informao. O nvel de privacidade
Utilizadores Registados restringe o acesso a um projecto somente a utilizadores
autenticados no sistema. O nvel de privacidade Privado indica que o acesso a um
projecto s est reservado aos seus elementos.


48

Estado
Um projecto pode ter trs estados: Em Planeamento, Em Execuo e Concludo.
Quando um projecto criado, pode ser colocado num dos dois primeiros estados
referidos. Se o estado do projecto for Em Planeamento, a criao dos pacotes de
trabalho e actividades limitada a este estado. Somente aps o Gestor de Projecto
colocar o estado do projecto Em Execuo que os pacotes de trabalho e actividades
podero ter este estado. Por fim, um pacote de trabalho s pode passar para o estado
Concludo se as suas actividades j estiverem todas concludas. O mesmo se passa no
caso de um projecto. S poder ter o estado Concludo quando todos os seus pacotes
de trabalho estiverem finalizados.
Clculo do Custo
Na criao de uma actividade, o Gestor de um Pacote de Trabalho deve indicar os
elementos responsveis e uma unidade de esforo, em Homens-Dia, que visa estimar o
esforo de concluso da actividade. Aps a escolha de um dos elementos, tendo em
conta a sua competncia, o Gestor do Pacote de Trabalho deve indicar o esforo da
actividade que vai ficar alocado a esse elemento, como ilustra a figura seguinte.

Figura 4.16: Alocao do esforo a um elemento
Aps este processo, o custo da actividade calculado, multiplicando o esforo do
elemento pelo custo da sua competncia associada. Por exemplo, no caso da figura
anterior, o custo desta actividade seria 400 ((Esforo) 4 x (Custo) 100). Assim sendo, o
custo do pacote de trabalho/projecto calculado atravs da soma do custo das
actividades correspondentes, seguindo uma perspectiva bottom-up.
Monitorizao das actividades
De forma a monitorizar as actividades de um pacote de trabalho, a pgina
EditWorkPackage permite ao Gestor do Pacote de Trabalho actualizar diariamente o
49

esforo restante para o trmino das actividades. As figuras seguintes ilustram esta
funcionalidade e um grfico (Burndown Chart) que permite verificar o progresso do pacote
de trabalho.

Figura 4.17: Monitorizao das Actividades

Figura 4.18: Burndown Chart de um Pacote de Trabalho
A visualizao de um Burndown Chart til para verificar o progresso de um Projecto,
pois permite identificar se a execuo das actividades est a ser realizada de forma
adequada. A linha diagonal vermelha ilustra a linha de execuo desejvel das
actividades e a outra linha representa a execuo real das actividades. Se esta ltima se
50

encontrar abaixo da linha vermelha, isso significa que a execuo das actividades est a
decorrer de forma mais rpida que o previsto. Se se situar por cima da linha vermelha, a
execuo das actividades est a decorrer de forma mais lenta que o previsto.
Adicionalmente, uma actividade possui dois tipos de datas, planeadas e reais. As datas
planeadas so inseridas na criao de uma actividade. As datas reais correspondem ao
intervalo de datas que o gestor do pacote de trabalho insere na tabela existente na figura
4.17. A incluso destes dois tipos de datas permite ao gestor responsvel identificar
atrasos no projecto, e caso seja necessrio, proceder a melhorias no seu planeamento.

51

5 Validao
Neste captulo, a soluo proposta para o sistema ProjectIT-Enterprise validada
aplicando um caso de estudo, que se baseia no prprio trabalho deste projecto. Assim
sendo, foi definido um projecto com o nome do actual trabalho, Gesto de Projectos com
Processos geis, associado com um processo designado de Dissertao MEIC/IST.
Este caso de estudo pode ser consultado na instncia do prottipo, disponvel no URL:
http://isg.inesc-id.pt/pit-enterprise. As prximas seces ilustram a aplicao deste caso
de estudo.
5.1 Definio do Processo Dissertao MEIC/IST
Inicialmente, foi definido um conjunto de disciplinas e actividades, reproduzindo as vrias
etapas seguidas durante o desenvolvimento de uma dissertao de mestrado no mbito
do MEIC/IST. Foram definidas seis disciplinas (agrupamento lgico de actividades
segundo reas de interesse), cujas actividades e produtos de trabalho associados esto
presentes na tabela seguinte.
Tabela 5.1: Disciplinas, Actividades e Produtos de Trabalho do processo "Dissertao MEIC/IST"


Disciplinas Actividades Produtos de Trabalho
Anlise e Investigao
Anlise do Problema
Introduo Investigao
Pesquisa Bibliogrfica
Anlise do Estado da Arte
Pesquisa de Artigos
Requisitos
Identificar Requisitos
Template Modelo de
Requisitos
Desenhar Casos de Uso Template Casos de Uso
Desenvolvimento da
soluo
Desenhar Modelo de Domnio
Template Modelo de
Domnio
Template Modelo de Dados
Implementar Modelo de Dados
Implementar Soluo
Implementar Testes de Desenvolvimento
Correr Testes de Desenvolvimento
Testes
Implementar Conjunto de Testes
Template Script Teste
Correr Conjunto de Testes
Validao
Definir Caso de Estudo

Implementao e Avaliao do Caso de
Estudo
Elaborao de Relatrios
Elaborao do Relatrio Intercalar Guia Relatrio Intercalar
Elaborao da Dissertao Guia Dissertao
52

Em relao aos perodos de trabalho, foram definidos dois:
Ano lectivo Possui o nvel 1 e a durao prevista entre 6 e 12 meses.
Semestre Possui o nvel 2 e a durao prevista entre 1 e 6 meses.
Existem trs papis especficos neste processo, o Aluno, o Orientador e o Acompanhante.
O Aluno o principal responsvel pela realizao de todas as actividades presentes na
tabela 5.1. O Orientador apoia e aconselha o Aluno em actividades mais ligadas
reflexo e concepo, possuindo tambm um papel de avaliao do seu desempenho ao
longo do desenvolvimento da dissertao de mestrado. O Acompanhante auxilia o Aluno
em aspectos de concepo e de implementao do sistema.
5.2 Definio do Projecto Gesto de Projectos com
Processos geis
Na criao deste projecto, foi associado o processo descrito na seco anterior
(Dissertao MEIC/IST) e foram importadas todas as disciplinas, actividades e produtos
de trabalho, conforme ilustra a figura seguinte.

Figura 5.1: Associao do Processo definido ao Projecto Gesto de Projectos com Processos geis

53

Adicionalmente, o projecto criado possui a seguinte informao:
Data Inicial 01/09/2009
Data Final 16/10/2010
Nvel de Privacidade Pblico
Gestor de Projecto Miguel Pinto
Elementos da Equipa Alberto Silva (Orientador), David Ferreira e Joo Saraiva
(Acompanhantes) e Miguel Pinto (Aluno)
De acordo com a terminologia descrita no processo, foram criados os perodos de
trabalho Ano Lectivo 2009/2010, de nvel 1, 1Semestre e 2Semestre, ambos de nvel de
2. A figura seguinte ilustra os perodos de trabalho deste projecto.

Figura 5.2: Perodos de Trabalho do Projecto definido
5.2.1 Definio dos Pacotes de Trabalho
Aps a criao dos perodos de trabalho do projecto, foram definidos 2 pacotes de
trabalho:
Projecto de Mestrado, associado ao 1 Semestre, com datas compreendidas entre
01-09-2009 e 28-02-2010.
Dissertao de Mestrado, associado ao 2 Semestre, com datas compreendidas
entre 01-03-2010 e 16-10-2010.
Ambos os pacotes de trabalho tm o mesmo responsvel (Miguel Pinto), os mesmos
elementos do projecto e o mesmo nvel de privacidade (Pblico). A figura seguinte
apresenta uma viso geral dos 2 pacotes de trabalho existentes.

54



Figura 5.3: Pacotes de Trabalho do Projecto definido
De referir que nos processos geis, e se considerarmos o processo Scrum, um pacote de
trabalho funciona na realidade como um Sprint Backlog, que se encontra associado a um
perodo de trabalho (ou Sprint).
Durante a execuo do pacote de trabalho Projecto de Mestrado foram executadas as
seguintes actividades e realizados os seguintes produtos de trabalho:
Tabela 5.2: Actividades e Produtos de Trabalho de "Projecto de Mestrado"
Actividades Produtos de Trabalho
Adaptao ao WebComfort
Exerccio WebComfort
Anlise do Problema
Pesquisa de Artigos
Referncias de Artigos
Anlise de Ferramentas de
Suporte de Processos geis
Estado da Arte
Identificao de Requisitos
Conjunto de Requisitos
Desenhar Modelos de Domnio
Modelos de Domnio das 3 dimenses
Elaborao do Relatrio Intercalar Relatrio Intercalar
Implementar Modelo de Dados
Modelo de Dados
Desenvolvimento do 1Prottipo Funcional
relativo Dimenso de Processos


A figura seguinte ilustra as actividades deste pacote de trabalho e a sua informao
correspondente, nomeadamente, o nome, datas reais, esforo, a actividade da dimenso
de Processos associada, o estado, o custo e os membros.
55


Alinhamento Processo-Projecto

Figura 5.4: Actividades do Pacote de Trabalho "Projecto de Mestrado"
Durante a execuo do pacote de trabalho Dissertao de Mestrado foram executadas
as seguintes actividades e realizados os seguintes produtos de trabalho:
Tabela 5.3: Actividades e Produtos de Trabalho de "Dissertao de Mestrado"
Actividades Produtos de Trabalho
Desenhar Casos de Uso Casos de Uso
Desenvolvimento do 2Prottipo Funcional
relativo Dimenso Organizacional

Desenvolvimento do 3Prottipo Funcional
relativo Dimenso de Projectos

Implementar e Correr Testes
Criao de uma instncia ProjectIT-Enterprise
Url da Instncia Criada
Definio de Processos
Definio do Caso de Estudo Caso de Estudo
Implementao do Caso de Estudo Url da Instncia Criada
Elaborao do Relatrio da Dissertao Relatrio da Dissertao

56

A figura seguinte ilustra as actividades deste pacote de trabalho e a sua informao
correspondente, nomeadamente, o nome, datas reais, esforo, a actividade da dimenso
de Processos associada, o estado, o custo e os membros.

Figura 5.5: Actividades do Pacote de Trabalho "Dissertao de Mestrado"
5.2.2 Monitorizao do Projecto
A monitorizao do projecto est intimamente ligada monitorizao da execuo das
actividades. Estas so monitorizadas conforme o apresentado na seco 4.4. Desta
forma, o esforo das actividades dos dois pacotes de trabalho apresentados actualizado
diariamente, conforme o apresentado na figura 4.17. As figuras seguintes ilustram o
progresso de cada um dos pacotes de trabalho, atravs dos Burndown Charts
respectivos.
57


Figura 5.6: Burndown Chart do Pacote de Trabalho "Projecto de Mestrado"

Figura 5.7: Burndown Chart do Pacote de Trabalho "Dissertao de Mestrado"
A visualizao dos Burndown Charts permite identificar que as actividades de cada um
dos pacotes de trabalho decorreram sempre de forma adequada.
5.2.3 Dashboard
Um elemento da equipa pode visualizar as actividades em execuo que possui atravs
da seco Dashboard, como ilustra a figura seguinte.
58


Figura 5.8: Dashboard do elemento responsvel
De acordo com a figura anterior, este elemento possui uma actividade em execuo e
pode, atravs do filtro disponvel, consultar as actividades que concluiu at agora.
Adicionalmente, tambm possui informao acerca dos projectos e pacotes de trabalho
em que j esteve envolvido.
5.2.4 Exportao de informao para o MS-Project
O Projecto definido foi exportado para o MS Project. A figura seguinte ilustra os pacotes
de trabalho e actividades do Projecto Gesto de Projectos com Processos geis.

Figura 5.9: Projecto Gesto de Projectos com Processos geis no MS Project
59

5.3 Discusso
O caso de estudo apresentado permitiu identificar um conjunto de consideraes acerca
do sistema desenvolvido, nomeadamente:
Os conceitos Perodo de Trabalho e Pacote de Trabalho adaptam-se bem tanto
na gesto de projectos baseados em processos tradicionais como em processos
geis.
O conjunto de mecanismos de alinhamento ao nvel das disciplinas, actividades,
produtos de trabalho e perodos de trabalho apresentados nas figuras deste
captulo (ver figuras 5.1, 5.2, 5.4 e 5.5) possibilitam a gesto de um projecto com
mais eficincia, rigor e compreenso.
O facto de o sistema ter sido desenvolvido sobre uma plataforma de gesto de
contedos (WebComfort) introduz inmeras vantagens ao nvel da modularidade,
extensibilidade e da forma de como os utilizadores interagem com o sistema.
Adicionalmente, o ProjectIT-Enterprise tambm tira partido de outras capacidades
do WebComfort, tais como: criao dinmica de pginas, associadas a Processos
e Projectos; e mecanismos de comunicao entre mdulos.
A visualizao do progresso de um Pacote de Trabalho atravs de um Burndown
Chart fornece um conjunto de informao til sobre a execuo das actividades.
A exportao do Projecto para o Microsoft Project permite a uma equipa tirar
partido das funcionalidades de comunicao e colaborao da ferramenta,
enquanto o Gestor de Projecto pode usar o Microsoft Project para produzir os seus
inmeros relatrios e grficos especficos.
O sistema ProjectIT-Enterprise apresenta um foco evidente em actividades ligadas
comunicao e colaborao (ex: Wiki) que no foi possvel validar neste caso de
estudo, devido especificidade de um projecto de dissertao de mestrado, que
consiste num trabalho pouco colaborativo (s um elemento).




60


61

6 Concluso
Este captulo sintetiza os objectivos deste trabalho, as vrias fases por que passou e
enumera alguns aspectos relevantes para o trabalho futuro.
6.1 Sntese
A comunidade dos processos de desenvolvimento de software tem evoludo ao longo dos
tempos. Mais recentemente, um novo paradigma de desenvolvimento de software tem
ganho maior popularidade, os processos geis. Os seus princpios e prticas ajustam-se
mais s necessidades do Cliente e das equipas de desenvolvimento. Devido crescente
adopo deste novo paradigma, a indstria de software tem desenvolvido um conjunto de
ferramentas que auxiliam na gesto de projectos com processos geis. No entanto, a
comunidade dos processos de desenvolvimento de software engloba outro tipo de
processos, considerados mais tradicionais. Actualmente, j existem vrias ferramentas
que permitem a gesto de projectos com este tipo de processos. Ao nvel empresarial, a
adopo de um determinado tipo de processo (tradicional ou gil) para um projecto
depende das suas caractersticas e da prpria cultura da organizao. Daqui surge um
novo desafio: o desenvolvimento de ferramentas de gesto de projectos transversais,
oferecendo a possibilidade a um Gestor de Projecto de escolher para um determinado
projecto um processo tradicional ou gil. Este trabalho props este desafio, pretendendo
garantir o correcto alinhamento entre um processo e um projecto.
O ponto de partida deste trabalho foi a anlise dos principais processos geis, o Extreme
Programming (XP) e o Scrum. Esta anlise permitiu a elaborao de um modelo de
referncia para a anlise de ferramentas de suporte de processos geis. Quatro
ferramentas foram analisadas: VersionOne, PivotalTracker, RallyDev e TargetProcess.
Adicionalmente, foi analisada mais uma ferramenta, o PIT-Enterprise/2007, que permite
essencialmente a gesto de projectos com processos mais tradicionais. Aps a anlise
efectuada a estas cinco ferramentas e identificadas as principais lacunas do PIT-
Enterprise/2007, um conjunto de requisitos foi elaborado para o novo sistema a
implementar. De forma a sustentar o alinhamento das dimenses Organizacional e de
Processos com a dimenso de Projectos, foram concebidos os modelos de domnio
relativos a cada uma das dimenses. Aps esta fase de concepo, o novo sistema
ProjectIT-Enterprise foi desenvolvido de raiz sobre a plataforma WebComfort, um Content
62

Management System. Por fim, um caso de estudo foi definido e foram avaliados um
conjunto de aspectos relativos ao sistema implementado.
6.2 Trabalho Futuro
O sistema ProjectIT-Enterprise possui uma boa margem de progresso, nomeadamente
ao nvel do desenvolvimento de novas funcionalidades e identificao de novos requisitos.
Primeiramente, seria interessante definir um caso de estudo com um conjunto alargado de
elementos, de forma a validar o ProjectIT-Enterprise em aspectos mais ligados
comunicao e colaborao entre os elementos de uma equipa de Projecto.
Adicionalmente, e de forma a complementar estes aspectos, seria interessante tirar
partido de algumas tecnologias emergentes de computao social.
De forma a aumentar a eficincia na gesto de projectos com processos geis, os
perodos de trabalho e os pacotes de trabalho deveriam ser estimados com um valor em
Story Points, uma forma de estimao do esforo relativa. Este valor deveria ser
recalculado de forma automtica tendo em conta a mdia de Story Points dos vrios
perodos de trabalho e pacotes de trabalho que forem sendo concludos. O valor
resultante deveria ser apresentado ao utilizador, para que este possua uma melhor
informao da velocidade de execuo da equipa de projecto. Adicionalmente, muitas
equipas de projecto utilizam o Microsoft Excel quando, inicialmente, pretendem adaptar-se
gesto de projectos segundo processos geis. Assim sendo, o ProjectIT-Enterprise
poderia fornecer a possibilidade de importar/exportar ficheiros a partir do Excel.
Ainda relativamente dimenso de Projectos, existem outras funcionalidades que
poderiam ser mais-valias, tais como: histrico associado a alguns itens (ex: Pacotes de
Trabalho e Actividades); mecanismo de procura sobre um projecto, pacotes de trabalho,
actividades e produtos de trabalho; e a existncia de um repositrio de documentos para
cada projecto, mais facilmente acessvel.
Actualmente, o sistema ProjectIT-Enterprise s permite que a actualizao do esforo
dirio relativo s actividades seja efectuada pelo gestor do pacote de trabalho. Este
processo podia ser melhorado se o gestor do pacote de trabalho pudesse delegar esta
responsabilidade aos elementos alocados s actividades.

63

7 Referncias
1. Michel dos Santos Soares: Comparao entre Metodologias geis e Tradicionais para o
Desenvolvimento de Software (2004)
2. Thelma Hataria: The Confounding World of Process Methodologies. In: Proceedings of
the Fourth Annual College of Computing, Engineering and Construction Symposium,
University of North Florida, USA (2006)
3. Everette R. Keith, Agile Software Development Processes: A Different Approach to
Software Design (2002)
4. Alberto Silva, Carlos Videira: UML, Metodologias e Ferramentas CASE, 2 Edio,
Volume 2, Maro 2008, Centro Atlntico Editora, ISBN: 978-989-615-061-7. Captulo 3
Metodologias geis & Captulo 7 Iniciativa ProjectIT
5. Manifesto for Agile Software Deveploment: http://agilemanifesto.org/
6. Michael Hirsch: Making RUP Agile. In: Proceedings of the 2002 ACM SIGPLAN
Conference on Object-Oriented Programming Systems, Languages and Applications
(OOPSLA), Seattle, Washington, USA (2002)
7. Alberto Silva: O Programa de Investigao ProjectIT (White Paper), v1.0 (2004)
8. WebComfort: www.webcomfort.org
9. Alberto Silva, Joo Saraiva: The WebComfort Framework: An Extensible Platform for
the Development of Web Applications. 34th EUROMICRO Conference on Software
Engineering and Advanced Applications, Service and Component-Based Software
Engineering Track, Itlia (Setembro 2008)
10. Alberto Silva: WebComfort Gestor de Contedos e Aplicaes Web: Plataforma,
Extenses e Aplicaes (White Paper), v1.0 (2007)
11. Kent Beck: Extreme Programming Explained: Embrace Change. Addison-Wesley,
Reading, PA, Vol. 32 (1999)
12. Extreme Programming: A Gentle Introduction: http://www.extremeprogramming.org/
13. Ken Schwaber, Mike Beedle: Agile Project Management with Scrum. Prentice Hall,
(Fevereiro 2002)
64

14. Rui Francisco: Ferramenta de Gesto de Processos de Desenvolvimento de Software.
Tese de Mestrado, Instituto Superior Tcnico (2008)
15. What is Scrum?: http://www.controlchaos.com/
16. VersionOne: http://www.versionone.com/
17. Pivotal Tracker: http://www.pivotaltracker.com/
18. Rally Software Development: http://www.rallydev.com/
19. TargetProcess: http://www.targetprocess.com/
20. Gonalo Marcos, Miguel Silva: ProjectIT-Enterprise Integrao com Requisitos.
Relatrio Trabalho Final de Curso. Instituto Superior Tcnico (2007)
21. Joo Leonardo Carmo, Alberto Rodrigues da Silva: The WebComfort Project. Second
International Conference of Innovative Views of
.NET Technologies (IVNET), SBC & Microsoft, Brasil (2006)
22. Paula Martins: ProPAM A Software Process Improvement Approach based on
Process and Project Alignment. Tese de Doutoramento, Instituto Superior Tcnico (2008)
23. Scrum Alliance: Transforming the World of Work: http://scrumalliance.org/
24. J.Highsmith: Adaptive Software Development: A Collaborative Approach to Managing
Complex Systems, Dorset House (2000)
25. Alistair Cockburn: Agile Software Development, Addison Wesley (2002)
26. Introduction to OpenUP: http://epf.eclipse.org/wikis/openup/


65

8 Anexo
Tabela 8.1: Anlise das Ferramentas de Suporte de Processos geis e do sistema PIT-Enterprise/2007
Caractersticas VersionOne Pivotal Tracker RallyDev TargetProcess
PIT-
Enterprise/2007
PIT-
Enterprise/2010
C
a
r
a
c
t
e
r

s
t
i
c
a
s

G
e
r
a
i
s

Opes de Instalao
On-Site e
On-Demand
On-Demand
On-Site e
On-Demand
On-Site e
On-Demand
On-Site e
On-Demand
On-Site e
On-Demand
Mltiplos Projectos Sim Sim Sim Sim Sim Sim
Web-Based Sim Sim Sim Sim Sim Sim
Processos Suportados
XP, Scrum, DSDM
e AgileUP
Scrum
RUP, XP e
Scrum
XP e Scrum RUP
RUP, Scrum,
OpenUP,
AgileUP e XP
G
e
s
t

o

d
e

R
e
q
u
i
s
i
t
o
s

Prioritizao dos Backlogs
(drag-and-drop)
Sim Sim Sim Sim No Sim
Tipos de Itens do Backlog
Feature,
Enhancement e
Defect
Feature, Bug,
Chore e
Release
User Story,
Defect e
Defect Suite
Feature, User
Story e Bug
Activities Activities
Estimao dos itens

Story Points Story Points Story Points Horas Dias Dias
Dividir Histrias
em Sub-Histrias
Sim No Sim Sim No No
G
e
s
t

o

d
a


Q
u
a
l
i
d
a
d
e

Gesto de Testes
Integrao com
Fitnesse e
HP Quicktest Pro
No
Integrao com
Fitnesse
Integrao com
Selenium,
Nunit e JUnit
Sim Sim
Gesto de Defects
Integrao com
Bugzilla e JIRA
Sim
Integrao com
Bugzilla e JIRA
Integrao com
Bugzilla,
JIRA e
TestTrack Pro
No No
G
e
s
t

o

d
o

T
e
m
p
o

Releases Sim Sim Sim Sim Sim Sim
Sprints (ou Iteraes) Sim Sim Sim Sim Sim Sim
Estimao das Releases Story Points e Dias Dias
Story Points e
Dias
Dias Dias Dias
Estimao das Iteraes Story Points e Dias Story Points
Story Points e
Dias
Dias e Horas Dias Dias
Estimao das tarefas Horas No Horas Horas Dias Homens-Dia
Monitorizao
de Histrias
Sim - Storyboard Sim Sim Sim - Storyboard No No
Monitorizao
de Tarefas
Sim - Taskboard No Sim - Taskboard Sim - Taskboard Sim Sim - Taskboard
Grficos
Iteration/
Release
Burndown/Cumulat
ive flow e Velocity
Chart
Iteration Burn-
Up,
Release
Burndown,
Velocity Chart
Iteration/
Release
Burndown/Cumul
ative flow e
Velocity Chart
Iteration/
Release
Burndown/
Cumulative flow
e Velocity Chart
No
Iteration Burndown
Chart
Relatrios Sim Sim Sim Sim No No
Relatrios Configurveis Sim No No Sim No No
Formato dos Relatrios PDF No PNG, PDF e JPG No No No
G
e
s
t

o

d
e


P
e
s
s
o
a
s

e


C
o
m
p
e
t

n
c
i
a
s

Definio de Equipas Sim Sim Sim Sim Sim Sim
Definio de Papis de
um Processo
Sim No Sim Sim No Sim
Indicao do trabalho
alocado a cada elemento
Sim Sim Sim Sim Sim Sim
O
u
t
r
a
s

F
u
n
c
i
o
n
a
l
i
d
a
d
e
s

Histrico Sim Sim Sim Sim No No
Pesquisa Sim Sim Sim Sim No No
Categorizao por tags Sim Sim Sim Sim No No
Configurabilidade Sim Sim Sim Sim No No
Dashboard Sim Sim Sim Sim No Sim
Importao/Exportao
Via Excel (CSV),
XML e
MS Project
Via Excel (CSV)
Via Excel (CSV),
XML e
MS Project
Via Excel (CSV) Via MS Project Via MS Project
Integrao com
ferramentas externas
Eclipse,
SubVersion,
Microsoft VSTS e
Wikis
No
Salesforce,
Eclipse e Wikis
Visual Studio,
SubVersion,
Perforce e
SourceSafe
No Wiki
Notificaes Via Email e RSS Via Email e RSS Via Email e RSS Via Email Via Email Via Email
Anexao de ficheiros Sim Sim Sim Sim Sim Sim
66


67

Modelo de Dados da Dimenso Organizacional

Figura 8.1: Modelo de Dados da Dimenso Organizacional




ActivityMembers
ActivityProjectID
UserID
SkillID
Effort
WorkPackageID
ProjectID
ActivityProject
ActivityProjectID
Priority
Name
Description
ActivityProjectTemplateID
StartPlannedDate
FinishPlannedDate
StartRealDate
FinishRealDate
EffortDone
Effort
StateID
PlannedCost
RealCost
WorkPackageID
ProjectID
Project
ProjectID
Name
Description
StartDate
FinishDate
PrivacyLevelID
StateID
LogoProjectUrl
TabID
ProjectManagerID
ProcessID
ProcessLanguage
LevelWorkPackages
ProjectMembers
ProjectID
UserID
Skill
SkillID
Name
Cost
UserProfile
UserID
Name
Email
CountryID
City
Phone
PhotoUrl
UserSkills
UserID
SkillID
WorkPackage
WorkPackageID
Name
Description
StartDate
FinishDate
ResponsibleID
WorkPeriodProjectID
PrivacyLevelID
StateID
ProjectID
WorkPackageMembers
WorkPackageID
UserID
ProjectID
68

Modelo de Dados da Dimenso de Processos

Figura 8.2: Modelo de Dados da Dimenso de Processos







ActivityProcess
ActivityProcessID
Name
Description
DisciplineProcessID
LanguageID
ProcessID
ActivityProcessSkills
ActivityProcessID
SkillID
ProcessID
DisciplineProcess
DisciplineProcessID
Name
Description
Type
ProcessID
LanguageID
DocumentProcess
DocumentProcessID
FileFriendlyName
FileNameUrl
WorkProductProcessID
LanguageID
ProcessID
Process
ProcessID
Name
LogoProcessUrl
TabID
LevelWorkPackages
ProcessDefinition
ProcessID
Description
LanguageID
RoleActivities
RoleProcessID
ActivityProcessID
ProcessID
RoleProcess
RoleProcessID
Name
Description
LanguageID
ProcessID
RoleSkills
RoleProcessID
SkillID
ProcessID
WorkPeriodProcess
WorkPeriodProcessID
Name
Description
TimeSpanInitial
TimeSpanFinal
TimePeriod
HierarchyLevel
ProcessID
LanguageID
WorkProductProcess
WorkProductProcessID
Name
Description
DisciplineProcessID
LanguageID
ProcessID
69

Modelo de Dados da Dimenso de Projectos

Figura 8.3: Modelo de Dados da Dimenso de Projectos
ActivityEffort
ActivityProjectID
Day
Effort
WorkPackageID
ProjectID
ActivityMembers
ActivityProjectID
UserID
SkillID
Effort
WorkPackageID
ProjectID
ActivityProject
ActivityProjectID
Priority
Name
Description
ActivityProjectTemplateID
StartPlannedDate
FinishPlannedDate
StartRealDate
FinishRealDate
EffortDone
Effort
StateID
PlannedCost
RealCost
WorkPackageID
ProjectID
ActivityProjectTemplate
ActivityProjectTemplateID
Name
Description
DisciplineProjectTemplateID
ProjectID
ActivityProjectTemplateSkills
ActivityProjectTemplateID
SkillID
ProjectID
DisciplineProjectTemplate
DisciplineProjectTemplateID
Name
Description
Type
ProjectID
DocumentProject
DocumentProjectID
FileFriendlyName
FileNameUrl
WorkProductProjectID
WorkPackageID
ProjectID
DocumentProjectTemplate
DocumentProjectTemplateID
FileFriendlyName
FileNameUrl
WorkProductProjectTemplateID
DisciplineProjectTemplateID
ProjectID
Project
ProjectID
Name
Description
StartDate
FinishDate
PrivacyLevelID
StateID
LogoProjectUrl
TabID
ProjectManagerID
ProcessID
ProcessLanguage
LevelWorkPackages
ProjectMembers
ProjectID
UserID
Skill
SkillID
Name
Cost
UserProfile
UserID
Name
Email
CountryID
City
Phone
PhotoUrl
UserSkills
UserID
SkillID
WorkPackage
WorkPackageID
Name
Description
StartDate
FinishDate
ResponsibleID
WorkPeriodProjectID
PrivacyLevelID
StateID
ProjectID
WorkPackageMembers
WorkPackageID
UserID
ProjectID
WorkPeriodProject
WorkPeriodProjectID
Name
Description
StartDate
FinishDate
HierarchyLevel
ParentWorkPeriod
Editable
WorkPeriodProjectTemplateID
ProjectID
WorkPeriodProjectTemplate
WorkPeriodProjectTemplateID
Name
Description
TimeSpanInitial
TimeSpanFinal
TimePeriod
HierarchyLevel
ProjectID
WorkProductProject
Name
Description
Date
WorkProductProjectTemplateID
WorkPackageID
ProjectID
WorkProductProjectTemplate
WorkProductProjectTemplateID
Name
Description
DisciplineProjectTemplateID
ProjectID

Você também pode gostar