UMA ABORDAGEM PARA A GERÊNCIA DE PROJETOS DE
SOFTWARE
DANIELE VIEIRA FIOROT¹
1
Aluna do Curso de Ciência da Computação do Centro Universitário de Vila Velha. E-mail:
[email protected].
MARCO AURÉLIO GEROSA²
2
Doutor em Informática pela PUC-Rio, Engenheiro em Engenharia da Computação. E-mail:
[email protected].
2
RESUMO
Os
desenvolvedores de software vêm
enfrentando um grande desafio no
gerenciamento de projetos. Escopo, requisitos, estimativas, design de interfaces,
qualidade, desempenho, usabilidade, riscos, entre outros itens, devem ser bem
gerenciados, com o intuito de atender às necessidades das partes interessadas. Para
minimizar este problema, no mercado há diversas opções de ferramentas que auxiliam
na gerência de projetos de software, servindo de suporte principalmente no
gerenciamento das tarefas que devem ser realizadas por cada um dos atores do
processo de desenvolvimento (programadores, analistas, projetistas, gerentes). Estas
ferramentas, na sua maioria, são usadas em atividades específicas – gerenciamento
de tarefas, gerência de documentos ou cálculo de orçamento (por pontos de função,
número de linhas de código ou outras métricas) –, e não em todo o processo de
desenvolvimento. O objetivo deste trabalho é enfatizar a importância de se gerenciar
os projetos de software. Para isso, foi realizada uma pesquisa de campo de como as
empresas de desenvolvimento de sistemas do Espírito Santo têm gerenciado os seus
projetos e uma avaliação do impacto do uso de uma ferramenta (também descrita
neste trabalho) de auxílio ao processo de gestão de tempo, recursos humanos e
atendimento ao cliente quanto a chamados e melhorias.
Palavras-chave: Gerência de Projetos, Projetos de Software, Produtividade,
Desenvolvimento de Software, Qualidade.
1 INTRODUÇÃO
O desenvolvimento de software vem enfrentando ao longo dos anos diversos
problemas: não cumprimento dos requisitos, não atendimento aos prazos, dificuldades
ao elaborar o projeto, baixa qualidade e desempenho do produto, entre outros. Estes
problemas acontecem devido a diversos erros cometidos durante todo o processo de
desenvolvimento. Algumas causas para esses problemas são: má gestão dos
requisitos, inconsistências de projeto não encontradas antecipadamente, poucos
testes realizados, má administração dos riscos, estimativas inadequadas de custos e
prazos, entre outras (GARCIA, 2007).
3
Segundo a TenStep – empresa de consultoria e treinamento em Gerenciamento de
Projetos, sediada em Atlanta (Geórgia, EUA) – existem cinco erros comuns em
gerenciamento de projetos (TenStep, 2007): definição e planejamento inadequado do
projeto; práticas de gerenciamento inadequado de mudanças de escopo; não
gerenciamento do plano de trabalho (Workplan); falta de comunicação com os
interessados; falta de um bom gerenciamento de qualidade.
Devido a esses erros cometidos e os problemas gerados por estes, 18% dos projetos
são cancelados antes de seu término, 53% são concluídos com limitações e somente
23% são efetivamente concluídos, sendo que 88% ultrapassam seus prazos, custos
ou ambos – em média ultrapassam 189% dos custos estimados e 222% os prazos
originalmente estimados (STANDISH GROUP, 2004). Com números tão expressivos,
medidas devem ser tomadas para que o projeto possa ser concluído com êxito e com
os custos e prazos próximos das estimativas.
2 OBJETIVO
Com tantos problemas a serem enfrentados no decorrer do projeto e com a constante
busca pela redução de prazos e custos, o uso de ferramentas de apoio ao
gerenciamento de projetos tem se tornado mais freqüente. Assim, este artigo busca
esclarecer os pontos importantes que devem ser observados no gerenciamento de
projetos, incluindo projetos de software, e apresentar o que uma ferramenta precisa
tratar para estar conivente com esses pontos abordados. Ao longo deste artigo serão
apresentados conceitos básicos para o gerenciamento de projetos, algumas áreas de
conhecimento envolvidas e a aplicação de alguns desses conceitos na construção de
uma ferramenta de auxílio à gestão de projetos.
3
GERÊNCIA DE PROJETOS
A principal fonte das informações utilizadas foi o Conjunto de Conhecimentos do
Gerenciamento de Projetos (PMBOK) – A Guide to the Project Management Body of
Knowledge – formulado pelo Project Management Institute (PMI), que reúne as boas
práticas na gerência de projetos.
4
A gerência de projetos é um termo que aborda a gestão de qualquer tipo de projeto,
desde sócio-econômicos e administrativos até arquitetônicos, incluindo os projetos de
software. Para melhor entender o gerenciamento do desenvolvimento de sistemas é
importante saber alguns conceitos do gerenciamento de projetos em geral e as áreas
de conhecimentos envolvidas na gestão de projetos.
3.1 INTRODUÇÃO À GERÊNCIA DE PROJETOS
Segundo o PMI, “um projeto é um esforço temporário empreendido para criar um
produto, serviço ou resultado exclusivo” (PMI, 2004, p. 5), ou seja, é um conjunto de
atividades realizadas por determinado tempo com o intuito de entregar um produto
(final ou componente), uma capacidade de realizar um serviço ou um resultado (de
uma pesquisa, por exemplo).
Além disso, o projeto é desenvolvido por etapas, ou seja, progressivamente. Cada
uma dessas etapas pode ser de iniciação, planejamento, execução, monitoramento
(controle) ou de encerramento. As etapas de iniciação envolvem a identificação das
necessidades que devem ser atendidas e a determinação dos objetivos a serem
alcançados. As etapas de planejamento envolvem a determinação do escopo, prazos,
custos, possíveis riscos e restrições, ou seja, é determinado o que deverá ser feito e
até quando. As etapas de execução envolvem a realização das atividades
determinadas no escopo de acordo com os prazos estabelecidos. As etapas de
monitoramento ou controle são realizadas em conjunto com as outras etapas, pois são
verificados o cumprimento dos requisitos, custos, prazos e restrições. Em alguns
casos há também o controle da qualidade do produto. As etapas de encerramento
envolvem a entrega do produto e sua validação final.
O gerenciamento de projetos é o acompanhamento de cada uma de suas fases,
controlando a realização de cada uma delas e verificando o cumprimento de todos os
requisitos. Além disso, ele pode ser dividido em várias áreas como gerenciamento de
integração, escopo, tempo, custos, qualidade, recursos humanos, comunicação, riscos
e aquisições (PMI, 2004, p. 11).
5
Enfim, a gerência de projetos “é a aplicação de conhecimento, habilidades,
ferramentas e técnicas às atividades do projeto a fim de atender aos requisitos” (PMI,
2004, p. 8), em outras palavras, é planejar, organizar e monitorar todo o projeto para
atender as necessidades das partes interessadas.
3.2 PROJETOS DE SOFTWARE
Os projetos de software são caracterizados pela sua complexidade, pela dificuldade de
visualização do produto final e dificuldade de comunicação entre executor e cliente
(PRADO, 1999). Além disso, suas etapas são mais específicas, determinadas pelo
ciclo de vida – roteiro de trabalho composto pelas macro-atividades do projeto –
escolhido para o desenvolvimento do software. A seguir a Tabela 1 relaciona as
etapas do projeto com as etapas do ciclo de vida do software.
Etapa do Projeto
Etapa do Ciclo de Vida
Iniciação
Especificação dos Requisitos
Planejamento;
Planejamento
Análise;
Projeto
Execução
Implementação
Monitoramento
Testes
Implantação;
Encerramento
Treinamento;
Operação;
Manutenção
TABELA 1 – relacionamento entre etapas do ciclo de vida e etapas do projeto
Na Especificação dos Requisitos, os requisitos são listados e agrupados de acordo
com as suas funcionalidades, formando um pré-escopo do projeto. Na fase de
Planejamento esse pré-escopo é refinado, os prazos são determinados, as restrições
listadas e os custos estabelecidos. Na Análise os requisitos são modelados, avaliados
e documentados. Na fase de Projeto os requisitos tecnológicos são acrescentados ao
escopo e os modelos são refinados. Na Implementação, a codificação propriamente
dita é realizada. Na fase de Teste o sistema implementado é verificado desde o
6
atendimento aos requisitos até o funcionamento em si. Na Implantação o sistema é
colocado em ambiente de uso final, os Treinamentos são realizados e o sistema entra
em Operação. Na fase de Manutenção, as correções necessárias são feitas e as
melhorias solicitadas são acrescentadas.
A gerência de projetos de software coordena todo o trabalho de desenvolvimento do
sistema, cuidando desde o estabelecimento de tarefas e alocação de recursos para a
sua execução, até o monitoramento e controle de cada uma das fases do
desenvolvimento.
3.3 ÁREAS DE CONHECIMENTO
As áreas de conhecimento em gerenciamento de projetos agrupam processos de
gestão. O PMBOK cita nove áreas (PMI, 2004, p. 9): gerenciamento de integração,
gerenciamento do escopo, gerenciamento de tempo, gerenciamento de custos,
gerenciamento da qualidade, gerenciamento dos recursos humanos, gerenciamento
das comunicações, gerenciamento de riscos e gerenciamento de aquisições. Estas e
outras mais específicas a projetos de software são descritas a seguir.
3.3.1 Gerência de Integração
A gerência da integração descreve os processos e as atividades que integram os
diversos elementos do gerenciamento de projetos, que são identificados, definidos,
combinados, unificados e coordenados dentro dos grupos de processos de
gerenciamento de projetos. É a área responsável pela identificação e gerenciamento
dos pontos de interação entre os elementos do projeto e estabelecimento e
manutenção da boa comunicação entre esses pontos (VIEIRA, 2003).
3.3.2 Gerência de Requisitos
A gerência dos requisitos muitas vezes é incluída dentro da gerência de escopo, mas
para melhor entendimento e gerenciamento é importante que seja tratado
separadamente devido à importância dos requisitos em projetos de software; como já
foi mencionado anteriormente, os requisitos são os principais causadores de
problemas durante o desenvolvimento de sistemas.
7
Um requisito é definido como “uma capacidade de software que deve ser
disponibilizada por um sistema ou componente de sistema de modo a satisfazer um
contrato, padrão, especificação ou outra formalidade imposta” (SAYÃO; BREITMAN,
2005). Ou seja, é uma necessidade, qualidade ou restrição que deve ser atendida pelo
software a ser desenvolvido, definindo o comportamento, propriedade e atributos do
sistema. Já o escopo, descrito mais a seguir, envolve não somente os requisitos, mas
todo trabalho e todos os processos da geração dos resultados do projeto.
O levantamento e especificação dos requisitos podem levar o desenvolvimento de um
sistema para diferentes rumos, ou seja, uma interpretação errada ou esquecimento de
algum detalhe importante de uma necessidade do cliente pode gerar sérios problemas
para que o sistema atenda seu propósito. Assim, os cuidados com o levantamento e
alterações de requisitos ao longo do desenvolvimento devem ser cautelosos e muito
bem gerenciados.
3.3.3 Gerência de Escopo
A gerência do escopo descreve os processos envolvidos na verificação de que o
projeto inclui todo o trabalho necessário, e apenas o trabalho necessário, para que
seja concluído com sucesso. O escopo é todo trabalho envolvido na criação dos
resultados do projeto (VIERA 2003). É a área responsável também pela gestão das
mudanças.
3.3.4 Gerência de Tempo
A gerência do tempo descreve os processos relativos ao término do projeto no prazo
correto. Envolve o controle das atividades para cumprimento do cronograma (VIEIRA,
2003) e a confirmação dos marcos do projeto dentro das estimativas de prazo. Os
marcos são acontecimentos no projeto que separam uma fase ou atividade de outra.
3.3.5 Gerência de Custos
A gerência dos custos descreve os processos envolvidos em planejamento, estimativa,
orçamentação e controle de custos, de modo que o projeto termine dentro do
orçamento aprovado. Em projetos de sistemas, pode ser bem mais crítico do que nos
demais, principalmente, se os requisitos e o escopo ainda não estiverem bem
definidos. Outra situação que pode gerar problemas é na utilização de novas
tecnologias, onde os riscos são maiores. O importante é não determinar custos antes
8
da definição dos requisitos e do escopo, além de estudar muito bem a tecnologia que
será utilizada (VIEIRA, 2003).
3.3.6 Gerência de Qualidade
A gerência da qualidade descreve os processos envolvidos na garantia de que o
projeto irá satisfazer os objetivos para os quais foi realizado, que inclui a satisfação
dos clientes e usuários finais. A qualidade está diretamente ligada ao cumprimento dos
prazos e custos, pois é o que caracteriza um serviço de boa qualidade na visão do
cliente. Além disso, também está ligada ao atendimento das necessidades do usuário
final e à performance do sistema, em alguns casos (VIERA, 2003).
3.3.7 Gerência de Recursos Humanos
A gerência dos recursos humanos descreve os processos que organizam e gerenciam
a equipe do projeto. Sendo uma das principais fontes da produtividade no
desenvolvimento de sistemas, a gestão e o planejamento das pessoas envolvidas no
projeto é fundamental, principalmente para que não haja problemas quanto prazo
(VEIRA, 2003).
3.3.8 Gerência de Comunicações
A gerência das comunicações descreve os processos relativos à geração, coleta,
disseminação, armazenamento e destinação final das informações do projeto de forma
oportuna e adequada (VIEIRA, 2003). Junto com a gerência de integração, forma o
canal entre todas as áreas da gerência de projetos. Esta área refere-se à comunicação
entre todas as pessoas envolvidas no projeto, e é responsável por divulgar alterações
de escopo, prazo, custo ou qualquer outro tipo de informação relacionada ao projeto. A
boa comunicação no projeto poder definir o resultado dele. Por exemplo, se o cliente
pede a alteração de um requisito, mas o desenvolvedor não é comunicado e o cliente
só percebe na implantação que a alteração não foi realizada, recursos podem ter sido
gastos sem necessidade e talvez seja necessário gastar ainda mais recurso para
atender o cliente.
3.3.9 Gerência de Riscos
A gerência de riscos descreve os processos relativos à diminuição da probabilidade e
dos impactos dos eventos adversos ao objetivo do projeto. Além de aumentar a
probabilidade da ocorrência de eventos positivos para o projeto (VIEIRA, 2003). A
9
gestão dos riscos envolve desde medidas de segurança (backup, por exemplo) até o
planejamento de ações contra imprevistos ou possíveis acontecimentos que impactem
na boa fluidez do projeto, por exemplo a demissão de um funcionário que estava
cuidando de uma parte crítica do sistema.
3.3.10 Gerência de Aquisições
A gerência das aquisições descreve os processos que compram ou adquirem
produtos, serviços ou resultados, além dos processos de gerenciamento de contratos
(VIEIRA, 2003). É o gerenciamento de ferramentas, software, hardware ou qualquer
equipamento necessário na realização das atividades do projeto.
4 FERRAMENTAS DO MERCADO
Existem diversas ferramentas no mercado que dão suporte ao gerenciamento de
projetos, muitas já são muito utilizadas como o Microsoft Project. Na gerência de
projetos de software o Primavera e o NetOffice também são muito usados. A seguir,
temos a descrição de algumas dessas ferramentas do mercado.
4.1 MICROSOFT PROJECT
O Microsoft Project é um software proprietário de gestão de projetos. É muito utilizado
em diversos ramos do mercado. Com ele pode-se gerenciar recursos (humanos ou
materiais), fazer alocação de tarefas, gerenciamento de tempo, gerenciamento de
custos,
relacionar tarefas, obter caminho crítico, obter linha de base, gerar
relatórios, entre outras funcionalidades. A Figura 1 ilustra o ambiente do Microsoft
Project.
10
Figura 1 – Tela do Microsoft Project (Fonte: POPPI, 2006).
4.2 GP3
O GP3 (Gestão de Processos, Projetos e Pessoas) é um software proprietário de
gerenciamento de projetos desenvolvido pela empresa PROAGE. Ele é totalmente
baseado na WEB e serve para o controle e gerenciamento de projetos e atividades,
desenvolvidas por pessoas em diversos locais ou em um mesmo ambiente. Permite
que seja feito o controle dos prazos das atividades, tomando-se também um
gerenciador de processos.
O GP3 proporciona o gerenciamento de vários projetos ao mesmo tempo; possui um
controlador de usuários, onde estes vêem o andamento de todas as atividades, mas
só podem alterar as suas. Ele envia automaticamente mensagens de e-mail para a
equipe do projeto avisando-a quais atividades devem começar ou terminar e quais
estão atrasadas. Possui uma área de arquivos usada como um repositório central de
documentos, onde a equipe tem os arquivos mais recentes do projeto. Oferece
também um cadastro de clientes, que recebem uma senha de acesso ao GP3,
11
podendo assim verificar o andamento do projeto. A tela principal do GP3 é
apresentada na Figura 2.
Figura 2 – Tela do GP3
4.3 PRIMAVERA
O Primavera Project Planner, ilustrado na Figura 3, é um amplo software proprietário
de gerenciamento de projetos, que permite uma visão completa através de relatórios
gerais de custos, detalhamento de estruturas analíticas do projeto, controle dos
prazos, análise de risco, entre outras funcionalidades. Possibilita grande flexibilidade
de gerenciamento utilizando bancos de dados relacionais, permitindo comparações e
análises de andamento do empreendimento.
Com seu ambiente web, os membros da equipe podem acessar com facilidade
relatórios, gráficos e qualquer informação do projeto. Possui ainda ferramentas
adicionais de comunicação dos membros da equipe, atualização de atividades e
apontamento de horas e recursos gastos.
Auxilia no planejamento de projetos e ajuda a otimizar recursos. Outras características
gerais seriam: multiusuário, multi-projeto, gráficos de Gantt, histograma de recursos,
12
visões de acompanhamento, despesas, riscos, notas, documentos, níveis de
segurança globais ou por projeto.
Figura 3 – Tela do Primavera
4.4 NETOFFICE
O NetOffice, ilustrado na Figura 4 é um software opensource gerenciador de projetos
multi-usuário com interface em português (brasileiro). Com ele toda equipe pode
acompanhar o andamento dos projetos e têm espaço para organizá-los como listas de
favoritos.
Permite o cadastro de clientes, contatos, projetos, tarefas e equipes, controle de
tarefas, anexar documentos, envio de e-mails, emissão de relatórios, fórum, entre
outras funcionalidades. Além disso, permite o registro e controle do atendimento de
suporte (chamados). Por ser um software livre permite alterações e personalizações,
mas não é muito fácil de ser instalado por iniciantes.
13
Figura 4 – Tela do NetOffice
4.5 DOTPROJECT
O DotProject é uma aplicação web para gerenciamento de projetos baseada em
software livre. Através do DotProject é possível cadastrar empresas, cadastrar
projetos, cadastrar atividades, cadastrar usuários, compartilhar arquivos através do
repositório de documentos, e visualizar o calendário de atividades. Permite gerenciar
tempo, gerenciar a elaboração progressiva do projeto e visualizar o gráfico de Gantt. O
DotProject permite que o gerente acesse relatórios de um determinado projeto
contendo informações, tais como: quantidade de horas alocadas por usuário,
andamento e situação das atividades, lista de tarefas e desempenho da equipe.
Oferece ainda fóruns de discussão, lista de contatos, e a funcionalidade “Chamados”
que permite ao cliente do projeto registrar suas considerações sobre o mesmo. A
Figura 5 ilustra a interface do DotProject com a tela Editar Projeto. Visualiza-se, na
parte superior, a barra de menus com as principais funcionalidades do sistema e, logo
abaixo, os campos onde o usuário digita as informações do projeto juntamente com os
botões “cancelar” e “salvar” (DOTPROJECT).
14
Figura 5 – Tela do dotProject
4 PESQUISA DE CAMPO
Com o intuito de obter mais informações a respeito do gerenciamento de projetos
realizado nas empresas do Espírito Santo, iniciei uma pesquisa sobre este assunto.
Nesta pesquisa estão sendo levantadas informações como quais as ferramentas mais
utilizadas, quais áreas da gestão de projetos têm sido tratadas por essas ferramentas,
quais as características das empresas que utilizam os conceitos de gerenciamento de
projetos, entre outras. Levando em consideração que uma pesquisa de tal amplitude
não poderia ser finalizada em poucos meses, cabe ressaltar que é referente a uma
pequena amostra das várias empresas da área, o que impossibilita afirmações
conclusivas, mas apresentam indícios sobre o cenário local.
Trinta empresas foram selecionadas para a pesquisa através da lista telefônica e o site
da
TEC
Vitória
(http://www.tecvitoria.com.br),
e
são
atuantes
da
área
de
desenvolvimento de sistemas. Essas empresas receberam por e-mail um questionário
(descrito no Apêndice B). Até o dia 27 de Maio de 2008, sete empresas responderam
a pesquisa, quatro delas foram entrevistas pelo telefone e duas permitiram uma visita
15
técnica. A seguir, tem-se os resultados parciais da pesquisa, referente às sete
empresas entrevistadas.
4.1 CARACTERÍSTICAS DAS EMPRESAS
Foi constatado que as empresas de desenvolvimento de sistemas do Espírito Santo
geralmente são micro-pequenas empresas, com menos de 100 funcionários. Cinco
das empresas existem a mais de dez anos. Seus sistemas atendem diferentes setores
do mercado, mas principalmente comércio, transporte, siderurgia e área pública
(prefeituras e câmaras).
Quanto às certificações, seis empresas possuem a SGQ-TEC, duas possuem a ISO
9001:2000, duas possuem a PRODFOR e duas não possuem nenhuma certificação.
Uma das empresas está em processo de certificação da CMMI, enquanto outra já a
possui.
4.2 NORMAS E PADRÕES UTILIZADOS PELAS EMPRESAS
Dentre as normas e padrões mais utilizados estão o PMI PMBOK®, ITIL e ISO 12207.
Mas, geralmente, essas normas e padrões são utilizados apenas conceitualmente,
raramente
estão
implementadas
nas
funcionalidades
das
ferramentas
de
gerenciamento; às vezes, não são usadas nem nos processos da empresa, apesar de
elas alegarem que conhecem e usam no dia-a-dia.
Dentre as áreas da gerência de projetos a menos utilizada nas empresas é a Gerência
de Aquisições. Mas as empresas alegam atender às nove áreas do PMBOK®, sendo
que as ferramentas de apoio ao gerenciamento geralmente atuam somente nas áreas
de gerência de tempo, de recursos humanos e de qualidade.
4.3 FERRAMENTAS UTILIZADAS PELAS EMPRESAS
16
O Microsoft Project é utilizado por 100% das empresas, e quatro delas utilizam
também uma ferramenta desenvolvida por elas, e as restantes utilizam alguma
ferramenta já existente no mercado (geralmente opensource).
Cinco empresas alegam que a ferramenta é utilizada somente para conseguir algum
controle sobre o projeto, e ainda utilizam planilhas e documentos de texto para os
controles diários. Poucos são os cálculos realizados e indicadores gerados pelas
ferramentas, geralmente elas são usadas apenas para registros simples e algumas
comunicações casuais.
4.4 O PAPEL DO GERENTE DE PROJETOS NAS EMPRESAS
Três das empresas possuem o gerente de projetos atribuído como função a algum
funcionário e quatro delas possui o gerente de projetos como cargo definido na
empresa. Mas em ambos os casos, raras são as empresas em que o gerente de
projetos realmente desempenha o seu verdadeiro papel, que é de gerenciar e
acompanhar o projeto atuando em todas as áreas da gerência buscando sempre o
cumprimento dos prazos, dos orçamentos e garantindo o cumprimento do escopo e da
qualidade determinada. Segundo Susan Snedaker (2006), ter um gerente de projetos
com experiência e atuando somente no seu papel é o terceiro na lista dos oito fatores
de sucesso para os projetos de sistemas – a lista dos fatores de sucesso é composta
(respectivamente) por: apoio executivo, envolvimento do usuário, gerente de projetos
com experiência, objetivos do projeto claramente definidos, escopo menor e bem
definido, cronogramas menores e marcos múltiplos, processo de gerenciamento
claramente definido e padronização da infra-estrutura.
4.5 CONSIDERAÇÕES IMPORTANTES
Mesmo com o pequeno número de empresas que responderam a pesquisa, já se pode
constatar o quanto as empresas de desenvolvimento de sistemas do Espírito Santo
são imaturas quanto ao gerenciamento de projetos. Somente nos últimos três anos, as
empresas tem começado a se preocupar com isso, têm buscado certificações e têm,
às vezes, terceirizado o serviço de gerência de projetos – caso de uma das empresas
17
que responderam. Mesmo entendendo essa necessidade, ainda não estão
completamente dispostas a gastar recursos com isso. Até o papel do gerente de
projetos não têm sido bem desempenhado na maioria das empresas.
Mesmo com essa aversão ao investimento que, geralmente, só traz resultados ao
longo prazo, algumas dessas empresas têm preferido desenvolver suas próprias
ferramentas de gerenciamento, principalmente devido ao alto investimento necessário
na aquisição das ferramentas já existentes no mercado e devido às ferramentas
opensource disponíveis não se adequarem aos seus processos.
Enfim, as empresas têm atuado como podem no desenvolvimento de sistemas, mas
têm buscado o aperfeiçoamento dos seus processos. Só resta o apoio dos executivos
para que os padrões possam ser definidos e adequados às empresas, através dos
investimentos necessários.
5 SISTEMA PROPOSTO
A ferramenta foi desenvolvida com o intuito de possibilitar um melhor suporte aos
projetos de software. A escolha de suas funcionalidades foi feita baseada na realidade
das empresas do Espírito Santo mencionada no capítulo anterior – gerenciam apenas
tempo, recursos humanos e qualidade –, e também foi realizada para atender uma
demanda mais urgente da empresa em que o sistema hoje é utilizado. Cabe ressaltar,
que é importante o gerenciamento eficaz dos projetos e que o uso da ferramenta vem
apenas facilitar ou complementar essa gerência.
5.1 CONTEXTO DO SISTEMA
A ferramenta é Web e é descrita como a seguir.
Para cada projeto existe uma pessoa responsável (o gerente), que possui permissão
total para cada funcionalidade da ferramenta (cadastrar, alterar, consultar, excluir). A
ferramenta possibilita o cadastro de informações, lançamentos das horas trabalhadas,
18
acesso às documentações do Escritório da Qualidade e divulgação de informações
administrativas.
Os cadastros possíveis são de Atividades, Clientes, Funcionários, Níveis de
importância, Projetos, Tarefas. As Atividades são as fases possíveis para uma tarefa.
Dos Clientes cadastra-se a razão social e um apelido; pode ainda cadastrar
funcionários desses clientes informando o nome, a matricula, o e-mail e telefone. Dos
Funcionários informa-se nome, usuário, telefone, número de horas diárias e ramal.
Dos Níveis de Importância informa-se a descrição, o valor de importância e o timeout
dos chamados. Das Tarefas informa-se a descrição, data de inicio previsto e real, data
de término previsto e real, funcionários alocados, fases da tarefa, suas subtarefas (por
exemplo, especificação de requisito, layout, query SQL, codificação, teste, correção,
entre outros) e a duração. As subtarefas são compostas igualmente às tarefas. Dos
Projetos, informa-se a referência, o cliente, a descrição, inicio previsto, inicio, final
previsto e final. Os chamados possuem as seguintes informações: título, requisitante,
início, nível de importância, ocasionador, número do chamado do cliente, data limite
entrega e descrição. Os chamados podem estar classificados nas seguintes situações:
Aberto, Cancelado, Andamento, Aguardando validação, Pendente, Aguardando
Informações,
Encerrado,
Aguardando
Atendimento,
Aguardando
Sol.
Final,
Andamento Sol. Final e Finalizado. Assim como os chamados, as melhorias possuem
as mesmas funcionalidades. As diferenças são as informações que são salvas: título,
requisitante, nível de importância, ocasionador, número da melhoria do cliente, início e
descrição. Depois do preenchimento o usuário poderá salvar as informações ou
cancelar o cadastro.
Os lançamentos de hora, ou apontamentos, são os registros das horas trabalhadas
que servirão de base histórica para a análise de projetos futuros e para negociação
com os clientes, através dos relatórios que o sistema emite. O relatório refere-se aos
apontamentos realizados em um conjunto de projetos em determinado período. Outro
relatório utilizado em negociações com os clientes é gráfico dos chamados.
5.2 OBJETIVOS GERAIS
A ferramenta possui os seguintes objetivos:
19
• Gerenciamento de usuários: pois é um sistema multi-usuário – que permite
mais de um usuário ao mesmo tempo;
• Gerenciamento de Clientes (empresas);
• Gerenciamento de Projetos e Tarefas;
• Gerenciamento de Chamados e Melhorias;
• Controle de permissões: controle ao acesso das informações, assim como a
novos cadastros, alterações e exclusões.
5.3 PROTÓTIPOS DAS TELAS DO SISTEMA PROPOSTO
Para melhor ilustrar o sistema desenvolvido, a seguir estão algumas das telas do
sistema. A Figura 6, ilustra a tela inicial do sistema
Figura 6 – Tela Inicial
20
Figura 7 – Tela Cadastro Tarefas
21
Figura 8 – Tela Lançamentos Apontamentos
22
Figura 9 – Tela Atendimento Chamados
23
Figura 10 – Tela Relatório Gráfico Chamados por Dia
6 AVALIAÇÃO DA FERRAMENTA
Para ilustrar o uso de uma ferramenta de auxílio ao gerenciamento de projetos e
os problemas que a mesma pode causar no dia-a-dia dos seus usuários, foi realizada
uma avaliação da ferramenta proposta. Como a ferramenta é utilizada há um ano
podemos avaliá-la através dos registros feitos e através da opinião dos usuários. A
seguir temos os detalhes dessa avaliação.
Até Maio de 2008, a ferramenta era utilizada por 41 pessoas e possuía 23
projetos registrados. Na Figura 29, está ilustrado um gráfico comparativo entre o
24
primeiro (2006-2007) e o segundo (2007-2008) ano de uso, e refere-se à média de
apontamentos por dia de cada mês.
Figura 29 – Gráfico: Média diária de apontamentos
A Figura 30 ilustra o gráfico do número de chamados registrados por mês
durante os meses de Maio de 2007 e Abril de 2008.
Figura 30 – Gráfico: Número de chamados registrados por mês
No dia 10 de Janeiro de 2008, foi realizada uma avaliação dos apontamentos de horas
que constatou o resultado descrito no gráfico da Figura 31, que indica o número de
funcionários que apontaram determinada porcentagem das suas horas totais de
trabalho no período de 01/11/2007 à 31/12/2007.
25
Figura 31 – Gráfico: Funcionários e suas porcentagens de horas apontadas
Para os funcionários que apontaram menos de 70% da sua carga horária
referente aos 2 meses do período em questão, foi questionado o motivo pelo não
apontamento de suas horas. Os motivos estão listados na Figura 32, junto com o
número de funcionários que o deram como resposta ao questionamento.
Figura 32 – Gráfico: Motivos para o não apontamento
A opinião dos usuários quanto à ferramenta pode ser considerada favorável,
mas a opinião de boa parte dos usuários é que a ferramenta poderia ser mais
otimizada e evitar que as burocracias fossem exaustivas. Por exemplo, que a
ferramenta carregasse os chamados a partir do e-mail de suporte ou que os clientes
pudessem cadastrar diretamente na ferramenta os chamados. Outra sugestão dada é
26
que a navegação do sistema fosse mais fácil e rápida. Os gráficos a seguir detalham
melhor a opinião do usuário, obtida numa pesquisa mais recente.
O usuário foi questionado quanto “O que você acha da ferramenta?” (Figura 33),
“Que incentivo gostaria de ter para usar a ferramenta?” (Figura 34), “O que falta na
ferramenta?” (Figura 35) e “Se tivesse um tempo diário para usar a ferramenta, você
usaria sem problemas?” (Figura 36).
Figura 33 – Gráfico: “O que você acha da ferramenta?”
Figura 34 – Gráfico: “Que incentivo gostaria de ter para usar a
ferramenta?”
27
Figura 35 – Gráfico: “O que falta na ferramenta?”
Figura 36 – Gráfico: “E se tivesse um tempo para usar a ferramenta?”
7 CONSIDERAÇÕES FINAIS
Para facilitar a gerência de projetos de software utiliza-se ferramentas que
ajudam a diminuir os problemas enfrentados ao desenvolver os projetos. Essas
ferramentas possibilitam ao usuário o controle das atividades desempenhadas durante
o desenvolvimento. Mas, além disso, o uso de técnicas e normas são muito
importantes para a aplicação da gerência.
A Tabela 5, a seguir, faz um comparativo entre as ferramentas utilizadas no
mercado (apresentadas neste artigo) . Como é possível ver, existem ferramentas
muito completas, mas raras são aquelas que dão algum suporte ao gerenciamento de
28
projetos de software, abordando gerência de requisitos, por exemplo. Além disso, o
custo do investimento a ser feito na ferramenta geralmente dificulta ainda mais a sua
aquisição, além de sua adequação aos processos da empresa dificilmente acontecer.
TABELA 5 – COMPARATIVO ENTRE FERRAMENTAS DO MERCADO
CARACTERÍSTICAS
MS PROJECT
GP3
PRIMAVERA
NETPROJECT
DOTPROJECT
Tipo de Licença
Paga
paga
paga
gratuita
gratuita
Web / Desktop
Desktop
Web
web
web
web
Interface Adaptada ao Usuário
Não
Sim
sim
sim
sim
Geração de Gráficos
gantt; pert/com
gantt
gantt
gantt
gantt
Controle de Alocação de Pessoas
Sim
Sim
sim
sim
sim
Gerenciamento de Custos
Sim
Sim
sim
sim
não
Gerenciamento de Riscos
Não
Sim
sim
não
não
Calendário / Agenda
sim (Outlook)
Sim
sim
sim
sim
Relatórios
Sim
Sim
sim
sim
sim
Controle de Usuários
Não
Sim
sim
sim
sim
Comunicação entre usuários
e-mail
e-mail
e-mail
e-mail; discussões
e-mail; fórum
Controle de arquivos
Não
Sim
sim
sim
sim
Permite Acompanhamento do Cliente
não
Sim
sim
não
sim
Controle de projetos
sim e subprojetos
Sim
sim
sim
sim
Bug Report
não
Não
sim
sim
sim
Comparativos entre Projetos
não
Sim
sim
sim
sim
Para auxiliar o desenvolvimento de sistemas, cada vez mais, há a necessidade
do constante aperfeiçoamento da ferramenta. Devido a isso, muitas empresas de
desenvolvimento têm construído suas próprias ferramentas.
É importante ressaltar que somente o uso de uma ferramenta não garante a
completa redução dos problemas do desenvolvimento de software. Visto que, é
importante também aderir os conhecimentos descritos normas ou padrões – como os
da PMI, com o PMBOK®.
O estudo realizado neste trabalho levantou a importante necessidade de um bom
gerenciamento de projetos e seus requisitos, e abre espaço para a realização de
novos trabalhos na área. Além disso, possibilitou a aplicação dos conhecimentos
adquiridos na empresa onde trabalho.
SOFTWARE PROJECTS MANAGEMENT
ABSTRACT
29
Software developers face a great challenge in project management. Scope,
requirements, estimates, interface design, quality, performance, usability and threats,
among other factors, must be well managed to fulfill the interested people’s
expectations. To minimize those problems, there are numerous tools to help software
development management, supporting mainly the task management of the various
actors on the development process (programmers, designers, managers, etc). Most of
those tools are used in specific activities of development -- task management,
document management, budget (based on function point, code lines or other metrics) -and not on the development process as a whole. The objective of this graduation
project is to emphasize the importance of managing the software projects. For this, a
search was conducted to know how development systems companies from Espírito
Santo (Brazil) have been managing their projects and an assessment of the impact of
the use of a tool (also described in this paper) to aid the process of management time,
human resources and customer service and called for improvements.
Keywords: Projects Management, Projects of Software, Productivity, Software
Development, Quality.
REFERÊNCIAS BIBLIOGRÁFICAS
DOTPROJECT.
Project
Management
Software.
http://www.dotproject.com.br Acesso em: 26 abr. 2007.
Disponível
em:
GARCIA, Francilene Procópio. Ferramentas para Desenvolvimento e Verificação
de
Aplicações.
2007.
Disponível
em:
www.dsc.ufcg.edu.br/~patricia/pct/aula12/Ger_Processo.ppt Acesso em: 9 fev. 2007.
PMI. Um Guia do Conjunto de Conhecimentos em Gerenciamento de Projetos
(Guia PMBOK®). 3. ed. Belo Horizonte: Project Management Institute (PMI-MG),
389p., 2004.
POPPI, Claudio Teles. Apostila de Microsoft Project 2003. 2006. Disponível em:
http://www.portalproject.k6.com.br Acesso em: 13 set. 2007.
PRADO, Darci Santos. Gerência de Projetos em Tecnologia de Informação. Série
Gerência de Projetos. 5. vol. Belo Horizonte: Editora de Desenvolvimento Gerencial,
1999.
30
SAYÃO, Miriam; BREITMAN, Karin Koogan. Gerência de Requisitos. Mini-Curso do
20º SBBD e 19º SBES, 2005.
SNEDAKER, Susan. Como ter sucesso em gestão de projetos. São Paulo: Digerati
Books, 2006.
STANDISH GROUP. The Chaos Report 2004. Dados disponíveis em:
http://projetos.prodesp.sp.gov.br/sites/MS_ProjectServer_PublicDocuments/Shared%2
0Documents/Palestra%20Bases%20e%20Desafios%20do%20Gerenciamento%20de
%20Projetos.pdf Acesso em: 22 ago. 2007.
TENSTEP. Os Cinco Erros Cometidos em Gerenciamento de Projetos. 2007.
Disponível
em:
http://www.tenstep.com.br/br/open/Marketing/OsCincosErrosComunsCometidosemGP.
pdf Acesso em: 30 mar. 2007.
VIEIRA, Marconi. Gerenciamento de Projetos de tecnologia de informação. Rio de
Janeiro: Elsevier, 2003.
Download

uma abordagem para a gerência de projetos de software