Título do Artigo:
dotProject: Gerenciamento de Projetos com Software Livre
Autor:
Diego Figueiredo Costa Viégas
Correio Eletrônico:
[email protected]
Instituição de Origem:
Ministério das Cidades
Resumo:
O dotProject é um sistema de gerência de projetos em software
livre de fácil utilização, com um bom conjunto de funcionalidades e
características que o tornam interessante para utilização em
ambientes de corporativos, como o acesso via navegador web. Este
trabalho comenta os motivos pelos quais este aplicativo é visto como
uma das melhores opção em software livre neste segmento,
destacando as principais características técnicas da ferramenta, suas
funcionalidade centrais de gerenciamento de projetos e capacidades
adicionais. Desta forma, deseja-se divulgar esta opção para
instrumento de gerência de projetos, por ser interessante para as
instituições que desejem utilizar um ambiente deste tipo sem fazer
uso de softwares proprietários.
Summary:
dotProject is a project management software in open source.
This work comments why this software is considered one of the best
open source options on this segment, focusing the tool main
characteristics and its functionalities for project management. By this
way, it is pretended to show this applicative as an interest option to
institutions that want to use this kind without using proprietary
software.
dotProject
Gerenciamento de Projetos
com Software Livre
Diego Figueiredo Costa Viégas
Ministério das Cidades
Julho de 2005
Versão 1
Introdução
Com o aumento da atenção às sistemáticas de gerência de
projeto nas organizações, as ferramentas que visam auxiliar na
implementação destas sistemáticas também têm sua importância
expandida. As escolas de gerenciamento de projetos, entretanto, têm
se limitado a divulgar um leque reduzido de opções de aplicativos
para desenho, execução e acompanhamento de projetos. Em suma,
nota-se que a maioria dos sistemas utilizados nestas escolas e
mesmo nos Escritórios de Projetos já em atividade, são softwares
proprietários, normalmente advindos de poucos fornecedores.
O dotProject é uma ferramenta de controle de projetos que
atende a maior parte das necessidades de gerentes e Escritórios de
Projetos. Trata-se de um software livre, de código aberto, que é
distribuído sob a licença “GNU-GPL”. Isto significa que seus usuários
detém o poder de copiá-lo gratuitamente da Internet, fazer sua
instalação, executar alterações para melhorá-lo e até mesmo
distribuí-lo novamente, com ou sem alterações, desde que a licença
GNU-GPL seja mantida. Não é preciso, portanto, contratar uma
empresa para fornecer esta ferramenta, mas pode ser feito
investimento para torná-la mais adequada ao negócio da instituição, o
que normalmente não é possível nos softwares proprietários.
Assim, o dotProject vem se caracterizando como uma opção
interessante para aquelas instituições que já se decidiram pela
adoção de software livre. Apesar de existirem diversas outras
ferramentas livres disponíveis, uma série de órgãos de governo e
empresas já verificaram que este aplicativo é uma das melhores
opções, por reunir uma boa quantidade de características necessárias
e vantagens. Ainda para as instituições que não possuem política de
de implementação de software livre, o software também pode
constituir numa boa alternativa, pois opera em qualquer plataforma e
pode reduzir os custos que seriam despendidos na aquisição de
licenças proprietárias.
Características Técnicas
O dotProject, conforme comentado, é um software livre
distribuído sob licença GNU-GPL1. O início de seu desenvolvimento
data de dezembro de 2000. Desde então, os trabalhos de
aprimoramento têm sido contínuos, executados por colaboradores
distribuídos por todo o mundo. A versão atual é a 2.0.1, lançada em
abril de 2005.
1 A licença GNU-GPL pode ser lida em sua totalidade, em inglês, no endereço
eletrônico: http://www.gnu.org/licenses/gpl.txt
Os principais desenvolvedores do dotProject são da Austrália,
onde uma empresa chamada Saki Computers2 vende uma série de
serviços baseados neste produto, como suporte técnico e
customização. Desta forma, ela dedica alguns funcionários e recursos
para implementar melhorias e novas funções. Há também outras
empresas trabalhando da mesma forma. Não existe, entretanto,
perigo de que qualquer dessas empresas tornem o produto fechado e
proprietário, uma vez que licença em uso descarta esta situação.
Caso a Saki Computers deixe de apoiar o desenvolvimento, o que
parece pouco provável, vez que ela tem expandido os serviços
disponíveis, qualquer outro grupo de usuários ou instituição pode dar
continuidade ao comando dos trabalhos.
No Brasil, a ferramenta já conta com um bom número de
usuários. O autor deste artigo é responsável pela localização
(tradução) da versão atual. Isto significa que, uma vez aplicada esta
localização, que está disponível publicamente no sítio oficial do
projeto3, o usuário passa a ter a interface em português brasileiro. Por
solicitação dos usuários, que têm entrado em contato com o autor,
está sendo criada uma comunidade brasileira de pessoas
interessadas no aplicativo, visando prover um fórum de discussão e
suporte comunitário. Até então, os fóruns de suporte disponíveis no
sítio oficial têm foco na língua inglesa, dificultando muitas vezes o
acesso.
Em termos técnicos, o software enquadra-se no que é chamado
de arquitetura “LAMP” - Linux, Apache, MySQL e PHP. Esta arquitetura
é indicada como preferencial, mas podem ser utilizadas outras
alternativas para implementação. O único requisito indispensável é o
PHP4, linguagem utilizada como base para o desenvolvimento, que se
vale ainda de Java Script para ações de apresentação da interface.
Atualmente é utilizado o PHP na versão 4.1 ou superior, sendo que o
PHP 5 ainda não é suportado.
Qualquer sistema operacional e servidor de páginas web que
suporte PHP pode servir para hospedar o dotProject. Apesar disto, o
Apache HTTP Server5 tem se mostrado a melhor alternativa. No caso
do banco de dados, o MySQL6 é o preferencial, mas o sistema está
preparado para aceitar qualquer banco suportado pela camada de
abstração ADODB7, o que inclui PostgreSQL, SQLite, Interbase,
Firebird, Oracle, MS SQL Server, entre outros.
2
3
4
5
6
7
Sítio
Sítio
Sítio
Sítio
Sítio
Sítio
da Saki Computers: http://www.saki.com.au/
oficial do dotProject: http://www.dotproject.net
oficial do PHP: http://www.php.net/
oficial do Apache HTTP Server: http://httpd.apache.org/
oficial do MySQL: http://www.mysql.com/
oficial do ADODB: http://adodb.sourceforge.net/
O software dotProject permite a interação com algumas outras
ferramentas, como os serviços de diretório padrão LDAP. As
instituições que utilizam qualquer serviço deste tipo, como o
OpenLDAP8 ou mesmo servidores de diretório proprietários, podem
desta forma integrar o aplicativo a sua autenticação existente, assim
os usuários não precisarão decorar mais um nome de usuário e
senha. É interessante também configurar o software com o servidor
de correio eletrônico da rede, para que ele seja capaz de remeter
mensagens, como será visto mais adiante nas Funcionalidades de
Gerência de Projeto.
O acesso de usuários ao dotProject é feito através de um
navegador Internet convencional. Podem ser utilizados diversos
navegadores, como Mozilla, Firefox ou Microsoft Internet Explorer. Isto
provê muita flexibilidade, permitindo o acesso a partir de qualquer
sistema operacional, seja ele livre ou proprietário.
Outras vantagens do acesso web são a possibilidade de utilizar
o sistema de qualquer local, se o servidor estiver disponível via
Internet, e a independência de instalação de aplicativo no
microcomputador do usuário, o que reduz custos de implementação e
manutenção. Na Ilustração 1 está exibida uma tela de exemplo da
interface de usuário da ferramenta, acessada via navegador Firefox.
Ilustração 1 ­ dotProject ­ Interface de um projeto
8 Sítio oficial do OpenLDAP: http://www.openldap.org/
Destaca-se finalmente nas características técnicas do aplicativo
seu sistema de instalação. Na versão atual, este processo ocorre de
forma bastante automatizada. Após fazer a cópia do pacote de
arquivos a partir do sítio do projeto e descompactá-lo em um diretório
do servidor web, é preciso acessar este local através do navegador,
adicionando
“/install/”
à
URL.
Por
exemplo:
http://www.servidor.com.br/dotproject/install/. Se a configuração do
servidor estiver correta, será possível prosseguir com a instalação
através do assistente que surge.
Após o término da instalação através do assistente, é feita a
aplicação manual da localização para português brasileiro, seguindo
as instruções do arquivo “LEIAME”, disponível no pacote. Conforme
comentado, o pacote de localização também está disponível no sítio
do projeto, dentro da seção Language Packs.
Mais detalhes sobre os pré-requisitos9 e sobre a instalação10 em
si podem ser obtidos na área de documentação11 do sítio do projeto.
Principais Funcionalidades de Gerência de Projeto
O dotProject compreende uma gama considerável de recursos
para a gerência de projetos. Alguns recursos podem parecer
características
técnicas,
mas
influenciam
diretamente
nas
capacidades de gerenciamento.
Por exemplo, a primeira atividade a ser executada uma vez
instalada a ferramenta é o cadastro das instituições que irão interagir
através do ambiente. Isto significa que são aceitas diversas
empresas, órgãos, entidades de consultoria, etc. Cada uma dessas
instituições, por sua vez, pode ter configurado abaixo de si sua
estrutura de departamentos, diretorias, gerências, ou quaisquer
unidades organizacionais. Caso não haja mais de uma empresa
interagindo, não existe prejuízo ao funcionamento do sistema. Toda a
atividade referente ao cadastro de empresas é feita na aba
“Empresas”, na interface da ferramenta.
O fato do software ser multiusuário, por sua vez, implica que
cada usuário do sistema possuirá um acesso individual ao mesmo,
com uma visão personalizada de seus projetos e atribuições. Estes
9 Detalhamento dos pré-requisitos, em inglês: http://docs.dotproject.net/tikiindex.php?page=Minimal+System+Requirements
10 Detalhamento da instalação, em inglês: http://docs.dotproject.net/tikiindex.php?page=Installation+Instructions
11 Área de documentação do P rojeto dotProject, em inglês:
http://docs.dotproject.net/tiki-index.php
usuários podem ser cadastrados localmente, podem estar presentes
na base LDAP ou ambos. Cada usuário é vinculado a uma instituição
previamente cadastrada, podendo ainda ser especificado de qual
unidade organizacional ele faz parte. Assim, quando um trabalhador
de projeto ou gerente entra no ambiente, ele tem visão dos projetos e
atividade que estão vinculados a ele ou a sua empresa, dependendo
da permissão que ele receber. A manipulação de usuários é realizada
na aba “Admin. de Usuários”.
Esta flexibilidade de permissões é possível graças a um sistema
granular de acesso. Isto significa que é possível dizer exatamente o
que cada usuário poderá executar no sistema. Desta maneira, um
gerente de projeto poderá ter acesso apenas aos projetos de que
toma conta, ou ainda poderá visualizar os demais projetos
cadastrados, mas sem fazer alterações nos mesmos. Já um
trabalhador que é contratado como freelancer poderá ter acesso
apenas e exclusivamente à tarefas que foram a ele designadas, sem
nem mesmo enxergar o projeto como um todo. Dentro da
Administração de Usuários, as permissões são editadas clicando-se no
ícone de um cadeado, ao lado do nome do usuário desejado.
No sistema de acesso, ainda é possível cadastrar funções
padronizadas de utilização, como algumas que já são previamente
implementadas – Administrador, Trabalhador de Projeto, Visitante.
Isto é muito útil para que não seja preciso especificar para cada novo
usuário um conjunto de permissões. A configuração destas funções é
feita na aba “Admin. do Sistema”, dentro do item “Funções do
Usuário”.
O cadastro de projetos, um dos pontos mais importantes de
qualquer ferramenta deste tipo, permite obviamente incluir diversos
projetos. No registro de cada um deles pode-se especificar o principal
responsável (gerente), a qual empresa o projeto está primariamente
relacionado, as principais datas, qual o tipo de projeto (operacional,
administrativo, etc.), situação (proposto, em planejamento, em
execução, etc.), além da descrição completa. É possível ainda
importar tarefas previamente cadastradas num projeto-modelo ou
qualquer outro projeto já existente. A aba onde são realizados os
cadastros leva o nome “Projetos”.
Uma vez que exista o projeto, é o momento de cadastrar as
tarefas que fazem parte do mesmo. A adição de uma nova tarefa
pode ser simples ou mais detalhada, dependendo do nível de controle
desejado. As informações que podem ser registradas são bastante
extensivas e vale a pena listá-las:
• Nome da tarefa, descrição, situação (ativa ou inativa),
prioridade, progresso no momento do cadastro;
•
•
•
•
•
•
•
•
Responsável pela tarefa, contatos associados e unidades
organizacionais envolvidas na execução;
As datas de início e encerramento previstas, bem como a
duração em dias ou horas, que podem ser automaticamente
calculadas;
A tarefa pai, se houver, possibilitando vários níveis de
encadeamento de subtarefas;
As dependências que a tarefa possui, possibilitando rastrear e
determinar sua data de início com base no término da tarefa
da qual ela depende;
A possibilidade de tornar a tarefa dinâmica, de forma que
suas datas de início e término serão calculadas com base nas
datas de suas tarefas filhas;
Os recursos humanos envolvidos na execução da atividade,
com o percentual de alocação de cada um;
Comentários a serem enviados na mensagem de anúncio de
cadastro daquela tarefa, que será disparada para os seus
responsáveis e contatos;
Se o módulo de Recursos (a ser detalhado adiante) estiver
disponível, é possível apontar quais recursos serão alocados e
para aquela atividade, como computadores, equipamento
gráfico, ou qualquer outro insumo previamente cadastrado.
Toda manipulação das tarefas é feita a partir de um projeto,
assim, tanto para cadastrá-las como para alterá-las, é preciso
selecionar primeiro o projeto desejado. Torna-se disponível então um
botão para “nova tarefa” e a lista das atividades já cadastradas.
Nesta lista é possível editar a tarefa, marcá-la, acompanhar o
percentual de execução, prioridade, bem como os trabalhadores
envolvidos e as datas.
Outra opção da manipulação das terafas, que merece ser
detalhada, é o registro. Ao fazer um novo registro numa tarefa,
informa-se o que foi realizado para avançar o andamento daquela
atividade. Pode-se dizer em qual data ocorreu a ação, para qual
percentual de conclusão irá aquela tarefa após o registro, quantas
horas foram trabalhadas, a descrição do que foi executado, quem
deverá receber notificação sobre o registro, entre outras opções.
Mais uma funcionalidade diretamente relacionada às atividades
diz respeito à aba do sistema que leva o próprio nome “Tarefas”.
Nela, de acordo com o nível de permissão do usuário, é possível listar
as tarefas por usuários, por empresas, além de filtros mais
específicos. O resultado apresentado é organizado por projetos e
provém a mesma interação disponível quando se visualiza as tarefas
dentro dos mesmos.
Uma terceira maneira de listas as tarefas é através da aba
“Calendário”. Nesta visão, numa agenda diária, semanal ou mensal,
são apresentadas as tarefas que foram cadastradas, com a marcação
de suas datas de início e término. Na visão diária é possível cadastrar
um “novo evento”, como uma reunião ou compromisso. Os eventos
podem ser relacionados a um projeto e podem envolver diversas
pessoas, inclusive enviando convites às mesmas por correio
eletrônico.
A última funcionalidade principal relacionada aos projetos diz
respeito à aba “Arquivos”. Nesta área, é possível adicionar arquivos a
um projeto ou uma tarefa específica. Existem alguns tipos de
arquivos, que são texto, planilha, imagem ou código, sendo possível
criar novos. A adição de arquivos pode ser feita nesta área ou a partir
de um projeto ou tarefa, utilizando os links ali disponíveis. Neste
segundo caso, os arquivos são automaticamente atribuídos àquela
projeto ou tarefa onde estão sendo adicionados.
Há ainda, no módulo de arquivos, um controle de versão
simples, bem como registro de saída (check-out) e entrada (check-in),
para quando os mesmos sofrem edição e atualização. Entretanto, este
mecanismo não substitui um sistema dedicado de controle de versão,
como os utilizados em projetos de desenvolvimento de software.
Gráficos e Relatórios
O dotProject implementa a visualização do que deve ser a
representação mais comum de projetos, o gráfico de Gantt. A geração
destes gráficos é feita na própria ferramenta e apresenta uma
qualidade bastante boa.
Os gráficos podem ser gerados a respeito de um determinado
projeto. Para tanto, deve-se selecionar o item “Gráficos de Gantt”
após acessar o projeto específico. A principal opção é de alteração do
intervalo de tempo que está sendo exibido, cujo padrão é um mês. A
Ilustração 2 apresenta um exemplo de gráfico de Gantt gerado a
partir de um projeto com poucas tarefas.
Ilustração 2 ­ dotProject ­ Exibição de grá fico de Gantt
É ainda possível mostrar um gráfico geral de todos os projetos
cadastrados. Para tanto, na lista de projetos, clica-se no item “Gantt”.
Assim são exibidas as marcações de tempo gerais dos projetos e
assinalados seus andamentos.
Uma funcionalidade muito necessária são os relatórios. Eles
podem ser acessados a partir de um projeto selecionado, clicando-se
em “relatórios”, acima do nome do projeto. Nesta área estão
disponíveis algumas informações, como:
• quantidade de horas alocadas por usuário, permitindo
visualizar trabalhadores com alocação além da carga horária
disponível por dia;
• situação de atividades;
• lista de tarefas;
• performance de usuários, entre outras.
Alguns dos relatórios são gerados como documentos PDF,
necessitando que alguns executáveis estejam disponíveis no servidor
para sua formulação. Nestes casos, também é necessário um leitor
PDF na estação do usuário.
Finalmente, cabe comentar que a área de relatórios é um ponto
no qual o dotProject está evoluindo bastante, porém ainda é carente.
Nas versões de desenvolvimento do produto, disponíveis para
demonstração no sítio oficial e para cópia no CVS12, algumas
melhorias já podem ser vistas, devendo ser disponibilizadas em breve
na versão comum.
Outras Funcionalidades
Existem algumas outras capacidades na ferramenta dotProject,
que visam prover auxílio extra ao gerenciamento dos projetos. Estas
funcionalidades, bem como as já comentadas, figuram como módulos
dentro da ferramenta. Assim, é possível desabilitar ou apenas
esconder qualquer um dos módulos que não precise ser utilizado e
não se deseje permitir acesso.
A primeira destas funcionalidades são os “Contatos”.
Considerando que diversas instituições podem interagir nos projetos,
este catálogo provém uma lista de todos os usuários existentes no
sistema, permitindo ainda o registro de novos contatos, sem a
necessidade de cadastrá-los no sistema em si. É possível importar
para esta agenda bases de contatos já existentes ou obter a cópia de
12 Sítio de acesso ao CVS do dotProject:
http://sourceforge.net/cvs/?group_id=21656
uma lista completa de quem ali estiver registrado.
Nos “Fóruns” é possível abrir discussões relacionadas a projetos
específicos, iniciando sob estas discussões tópicos de debate, com
envio de respostas e monitoramento das atividades. A idéia,
novamente, é de que usuários de instituições diferentes ou que
estejam em locais físicos separados possam ter nesta funcionalidade
um ponto único de troca de informações, esclarecimento de dúvidas,
etc.
Outra funcionalidade implementada por padrão na ferramenta é
o registro de “Chamados”. Esta função é bastante óbvia quando se
pensa em projetos de desenvolvimento de software ou similares.
Neste caso, a idéia é que o cliente, que está acompanhando o
andamento do projeto através do sistema, possa registrar neste local
problemas encontrados numa versão de teste previamente
disponibilizada, por exemplo. Os chamados contam ainda com
determinação de situação, prioridade, acompanhamento e resposta.
Algumas facilidades extras podem ser ativadas ou incorporadas
ao sistema padrão. A funcionalidade de Recursos comentada no
registro de tarefas, por exemplo, acompanha a cópia padrão do
dotProject, porém fica inativa na instalação. Para ativá-la, é preciso
acessar a Administração do Sistema, selecionando “Visualizar
Módulos”. Ali é feito o controle de todos os módulos que compõe o
ambiente. Assim, pode-se instalar, ativar, configurar, esconder ou
mostrar os módulos disponíveis, além de alterar a ordem em que eles
são mostrados, o que equivale à ordem das abas principais do
sistema.
Módulos adicionais estão disponíveis na Internet para cópia e
instalação, principalmente no área de módulos13 que o Projeto
dotProject. Neste local, é possível encontrar adicionais como o
Backup Module, que provê a funcionalidade de tirar um backup do
banco de dados do sistema através de sua própria interface, o que
pode ser interessante em alguns casos. É importante verificar se os
módulos que deseja-se obter são compatíveis com a versão atual do
sistema.
13 Sítio de módulos adicionais do dotProject:
http://sourceforge.net/projects/dotmods/
Conclusão
Observando-se as características e capacidades do sistema,
verifica-se que certamente existem ainda muitas funcionalidade e
melhorias a serem implementadas no dotProject. Entretanto, pode-se
confirmar que o sistema é uma alternativa bastante interessante para
os softwares de gerência de projetos considerados “profissionais”,
que têm sido utilizados e divulgados pelas principais escolas e
escritórios de gerência de projetos.
Com as vantagens advindas do modelos do software livre, o
dotProject torna-se uma escolha convidativa para as instituições
brasileiras, principalmente aquelas que possuem capacidade de
desenvolvimento e aprimoramento da ferramenta, podendo assim
implementar customizações que dificilmente seriam conseguidas em
sistemas proprietários.
Bibliografia
BRASIL. Ministério da Saúde – Datasus. Relatório de Avaliação de
Ferramentas de Gerenciamento de Projetos. Brasília, 2005.
dotProject.net. The home of dotProject - the Open Source
Project
Management
tool.
Disponível
em:
http://www.dotproject.net/ . Acesso em 10 de Junho de 2005.
IV Seminário de Desenvolvimento em Software Livre, 2004, Brasília.
Mini-curso dotProject- Software Livre de Gerência de Projetos.
Download

Artigo: Gerenciamento de Projetos com Software Livrehot!