Aplicando Engenharia de Processos, Gestão da Qualidade e Gestão de Projetos no desenvolvimento de software bem sucedido



Documentos relacionados
UNIP Ciência da Computação / Sistemas de Informação TED I - Orientações Gerais para Elaboração dos Documentos

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

UNIVERSIDADE DO ESTADO DE SANTA CATARINA UDESC CENTRO DE EDUCAÇÃO SUPERIOR DO ALTO VALE DO ITAJAÍ CEAVI DIREÇÃO DE ENSINO DEN PLANO DE ENSINO

GARANTIA DA QUALIDADE DE SOFTWARE

Processo de Implementação de um Sistema de Gestão da Qualidade

Gerência de Projetos

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

PEDRO HENRIQUE DE OLIVEIRA E SILVA MESTRE EM MODELAGEM MATEMÁTICA E COMPUTACIONAL PEDROHOLI@GMAIL.COM CMM E CMMI

A Disciplina Gerência de Projetos

CMMI: Capability Maturity Model Integration

O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no

Políticas de Qualidade em TI

Gerenciamento de Projetos

Ciência da Computação ENGENHARIA DE SOFTWARE. Planejamento e Gerenciamento

MASTER IN PROJECT MANAGEMENT

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI

Análise de Pontos por Função

Qualidade de software

Garantia da Qualidade de Software

Implantação de um Processo de Medições de Software

Modernização e Evolução do Acervo de Software. Gustavo Robichez de Carvalho guga@les.inf.puc-rio.br

ISO/IEC 12207: Gerência de Configuração

Gerenciamento de Projetos Modulo II Clico de Vida e Organização

F.1 Gerenciamento da integração do projeto

Gerenciamento de Projetos Modulo III Grupo de Processos

Universidade Paulista

Universidade de Brasília Faculdade de Ciência da Informação Curso de Arquivologia Profa. Lillian Alvares

Metodologia de Gerenciamento de Projetos da Justiça Federal

GERÊNCIA DE INTEGRAÇÃO DO PROJETO

Engenharia de Software I

Profa. Dra. Ana Paula Gonçalves Serra

MODELO CMM MATURIDADE DE SOFTWARE

ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI)

Comparação da Metodologia TenStep PGP (Processo de Gerenciamento de Projetos), com o Guia PMBOK 4ª Edição - PMI

CHECK LIST DE AVALIAÇÃO DE FORNECEDORES Divisão:

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

PMONow! Serviço de Implantação de um Escritório de Projetos

CMMI Conceitos básicos. CMMI Representações contínua e por estágios. Professor Gledson Pompeu (gledson.pompeu@gmail.com)

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler

4. PMBOK - Project Management Body Of Knowledge

Gerenciamento de Projetos

Rede TSQC / SOFTEX Workshop de Aquisição de software Guia de Aquisição MPS.BR

O que é CMMI? Base do CMMI. Melhorando o processo é possível melhorar-mos o software. Gerais. Processo. Produto

FACULDADE SENAC GOIÂNIA

Introdução. Escritório de projetos

Oficina de Gestão de Portifólio

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

29/05/2012. Gestão de Projetos. Luciano Gonçalves de Carvalho FATEC. Agenda. Gerenciamento de Integração do Projeto Exercícios Referências FATEC

PLANEJAMENTO PLANEJAMENTO ESTRATÉGIA CICLO PDCA CICLO PDCA 09/04/2015 GESTÃO DE ESCOPO GERENCIAMENTO DE PROJETOS ACT

Gerenciamento de Integração do Projeto Planejamento e Execução do Projeto

CHECK - LIST - ISO 9001:2000

SISTEMA. Tecnologia. Software. Hardware. Prazos. Pessoas. Qualidade. Custo GERENCIAMENTO DE RISCO: COMO GARANTIR O SUCESSO DOS PROJETOS DE TI?

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES

Roteiro SENAC. Análise de Riscos. Monitoramento e Controle de Riscos. Monitoramento e Controle de Riscos. Monitoramento e Controle de Riscos

Melhorias de Processos de Engenharia de Software

Borland: Informatizando TI. João Carlos Bolonha

A visão do modelo MPS.BR para Gerência de Projeto - Nível G. por Adriana Silveira de Souza

Segurança Computacional. Rodrigo Fujioka

efagundes com GOVERNANÇA DE TIC Eduardo Mayer Fagundes Aula 3/4

PROCESSOS DE GERENCIAMENTO DE PROJETOS SEGUNDO O PMBOK. Faculdade PITÁGORAS Unidade Raja Prof. Valéria valeriapitagoras@gmail.

Implementação utilizando as melhores práticas em Gestão de Projetos

Processos de gerenciamento de projetos em um projeto

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática

UNIVERSIDADE DO ESTADO DE SANTA CATARINA UDESC CENTRO DE EDUCAÇÃO SUPERIOR DO ALTO VALE DO ITAJAÍ CEAVI DIREÇÃO DE ENSINO DEN PLANO DE ENSINO

ESCRITÓRIO RIO DE PROJETOS

Questionário de Avaliação de Maturidade Setorial: Modelo de Maturidade Prado-MMGP

Desafio Profissional PÓS-GRADUAÇÃO Gestão de Projetos - Módulo C Prof. Me. Valter Castelhano de Oliveira

QUALIDADE DE SOFTWARE AULA N.7

Unidade I FINANÇAS EM PROJETOS DE TI. Prof. Fernando Rodrigues

PODER JUDICIÁRIO TRIBUNAL REGIONAL DO TRABALHO DA 3ª REGIÃO

Qualidade de Processo de Software Normas ISO e 15504

Teoria e Prática. Totalmente de acordo com a 4 a Edição/2009. Rosaldo de Jesus Nocêra, PMP, PMI-SP, MCTS. do PMBOK do PMI. Acompanha o livro:

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

Planejamento e Gerência de Projetos de Software. Prof.: Ivon Rodrigues Canedo. PUC Goiás

RiskFree Uma ferramenta de apoio à gerência de riscos em projetos de software

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

Introdução ao MPS.BR Guia Geral. Prof. Elias Batista Ferreira

Engenharia de Software

VISUAL STUDIO TEAM SYSTEM IMPLANTAÇÃO DA SUITE DE FERRAMENTAS

C.M.M. Capability Maturity Model Modelo de Maturidade da Capacidade

Planejamento Iterativo

Proposta de um método para auditoria de projetos de desenvolvimento de software iterativo e incremental

PROJETO DE COOPERAÇÃO TÉCNICA INTERNACIONAL. Projeto 914 BRA PRODOC-MTC/UNESCO DOCUMENTO TÉCNICO Nº 03

PRODUTOS RIOSOFT COM SUBSÍDIO SEBRAEtec

Desenvolvimento de um software de gerenciamento de projetos para utilização na Web

ENGENHARIA DE SOFTWARE I

Agenda. Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria

Gerenciamento de Projetos Modulo III Grupo de Processos

Unidade I GERENCIAMENTO DE. Profa. Celia Corigliano

Gerenciamento de custos do projeto

PMI-SP PMI-SC PMI-RS PMI PMI-PR PMI-PE

GESTÃO DE PROJETOS. Prof. Anderson Valadares

Controle ou Acompanhamento Estratégico

Transcrição:

Aplicando Engenharia de Processos, Gestão da Qualidade e Gestão de Projetos no desenvolvimento de software bem sucedido Vitor Alcântara Batista e Bruno Santos Pimentel Synergia Engenharia de Software e Sistemas {vitor, brunosp}@dcc.ufmg.br Resumo: Diversas pesquisas e relatórios têm apresentado dados que nos levam a concluir que a gestão de projetos na área de Tecnologia da Informação, em especial no desenvolvimento de software, ainda não atingiu a mesma maturidade da gestão de projetos em outras áreas, como por exemplo, nas indústrias automobilística, aeronáutica e na construção civil. Esse artigo se propõe a relatar o modelo de gestão de projetos de software construído pelo Synergia, seus componentes e estrutura, bem como os resultados alcançados nos projetos. Tal modelo integra elementos de processo, qualidade e controle em um sólido arcabouço apoiado por ferramentas de gestão. 1. Introdução Apesar da disciplina de Gerenciamento de Projetos ser relativamente bem estabelecida, principalmente em áreas de aplicação mais tradicionais (indústria automobilística, aeronáutica, construção civil, etc.), sua difusão na área de Tecnologia da Informação (TI) ainda não alcançou um patamar adequado de maturidade. Esta realidade é ainda mais evidente no contexto nacional, em que se observa um mercado de TI extremamente pulverizado [Pratico 2006] em micro e pequenas empresas com pouca experiência e reduzida capacidade gerencial. É interessante notar que, apesar da tradição brasileira em criar talentos individuais na área de tecnologia, o número de casos de sucesso na gestão de pequenas e médias empresas de TI ainda é bastante reduzido. Como exemplo, ao se observarem estatísticas sobre a população de empresas nacionais avaliadas oficialmente no modelo CMMI (Capability Maturity Model Integration) [CMMI], observa-se que uma pequena parcela [MCT 2005] geralmente empresas de porte médio ou grande e com maior equilíbrio financeiro possui algum nível formal de capacidade. Essa característica é ressaltada quando se comparam dados do estado de Minas Gerais [Pratico 2006] com outros estados. De fato, existem outros modelos de maturidade teoricamente mais acessíveis a pequenas empresas, como o MPS.Br [MPSBR 2006], por exemplo. No entanto, a questão que se coloca é a grande distância entre os níveis atual e desejado de maturidade técnica e gerencial dessas empresas. Apesar de modelos de maturidade como o CMMI e o MPS.Br definirem um conjunto completo de boas práticas em áreas de processos técnicos e gerenciais, a implantação e efetiva aplicação destes processos independe do investimento em uma avaliação formal por entidades oficiais. A experiência de empresas bem-sucedidas na área de TI mostra que a aplicação de conceitos sólidos e maduros de gerenciamento, em especial o gerenciamento de projetos, tende a produzir resultados significativos em termos de previsibilidade, qualidade e produtividade. De fato, o gerenciamento de projetos é uma área de processos fundamental nos níveis iniciais de maturidade dos modelos CMMI e MPS.Br. Dado esse cenário, o presente artigo se propõe a apresentar um modelo de gestão de projetos consolidado, ilustrado em um caso bem sucedido de integração entre processo de desenvolvimento e processo de gerenciamento de projetos em uma organização de pequeno 1

porte especializada em Engenharia de Software. Além da personalização e implantação de um processo de desenvolvimento formal e orientado aos resultados dos projetos, definiu-se um conjunto de ferramentas de suporte que difundem o conhecimento e consolidam a aplicação adequada das técnicas de planejamento e controle de projetos. A utilização deste arcabouço vem promovendo resultados cada vez positivos em termos de controle, qualidade e produtividade nos projetos desenvolvidos. O restante do artigo está dividido da seguinte forma: a Seção 2 apresenta o processo de desenvolvimento de software denominado Praxis-Synergia. As Seções 3, 4 e 5 descrevem respectivamente como a Engenharia de Processos, a Gestão da Qualidade e a Gestão de Projetos são tratados no Praxis-Synergia. A Seção 6 apresenta o modelo de gestão de projetos de software do Praxis-Synergia e sua aplicação na organização. A Seção 7 conclui o artigo, apresentando resultados qualitativos e quantitativos da aplicação do modelo proposto. 2. O Praxis-Synergia O Praxis (PRocesso para Aplicativos extensíveis InterativoS) original, ou educacional, é um processo de desenvolvimento de software idealizado com o propósito de ensinar Engenharia de Software a alunos de graduação. O processo vem sendo usado em turmas de graduação e especialização em Ciência da Computação na Universidade Federal de Minas Gerais por quase uma década. Durante todos esses anos ele sofreu alterações e melhorias baseadas nas observações de seu autor nos trabalhos práticos dos alunos, gerando significativos resultados acadêmicos [Pádua 2006]. O Praxis foi adotado e personalizado pelo Synergia [Pimentel 2006] Laboratório de Engenharia de Software e Sistemas do Departamento de Ciência da Computação da UFMG em projetos reais de desenvolvimento de sistemas de informação gerencial de grande porte. O Synergia possui uma organização orientada por projetos, estando dividido em quatro unidades de negócio: Produtos, Processos, Marketing e Administração. O corpo técnico está organizado em equipes de projeto multifuncionais, com papéis de especificação, desenvolvimento, testes e qualidade, usabilidade, engenharia de processos e gestão de projetos. Por ter sua origem no Praxis educacional, o Praxis-Synergia também contém diversos elementos do PSP (Personal Software Process), TSP (Team Software Process), UP (Unified Process) [Filho 2003] e aplica diversas das melhores práticas do SWEBoK (Software Engineering Body of Knowlegde) [SWEBoK 2004] e CMMI. Com o uso em projetos reais e de grande porte o processo passou por diversas melhorias e personalizações, principalmente na disciplina de Gestão de Projetos, onde conceitos do PMBoK [PMBoK 2004] foram incorporados. A inclusão das disciplinas de Usabilidade e Modelagem de Negócio foram outras melhorias importantes. O Praxis-Synergia é constituído pelos seguintes componentes: Modelo do processo: ciclo de vida e disciplinas conceituais. Artefatos do processo: documentos, modelos e relatórios. Papéis: perfis de profissionais e suas responsabilidades. Tarefas: conjunto de passos fundamentados nas disciplinas e executados pelos papéis. Orientações: conceitos, diretrizes, exemplos, padrões, procedimentos e tutoriais. O ciclo de vida de um projeto de desenvolvimento de software que segue o Praxis-Synergia é representado na Figura 1. O processo é definido de acordo com uma estrutura matricial que correlaciona as dimensões temporal fases e iterações (subdivisões das fases) e conceitual disciplinas de Engenharia de Software e Gestão de Projetos de um projeto de desenvolvimento de software. 2

Figura 1 Ciclo de vida e disciplinas do Praxis-Synergia. A tabela abaixo descreve brevemente os objetivos de cada fase e iteração no Praxis-Synergia. No processo, o ciclo de vida de um projeto típico de desenvolvimento de software obrigatoriamente inclui todas as fases e iterações, sendo que uma ou mais liberações (Ln) de resultados intermediários podem ser realizadas, como forma de controle e aceitação do escopo do projeto pelos clientes. Fase Sigla Iteração Objetivo Concepção Elaboração Construção AT Ativação Levantamento e análise das necessidades dos usuários e conceitos da aplicação, em nível de detalhe suficiente para justificar a especificação de um produto de software. MN Modelagem de Definição da visão geral do negócio, possibilitando a identificação das Negócio necessidades de sistemas da organização. IR Identificação de Identificação preliminar das funções do produto para permitir o planejamento requisitos adequado da fase de Elaboração. LR Levantamento de Levantamento de requisitos funcionais e não-funcionais do produto em nível requisitos de detalhe suficiente para determinar sua viabilidade de desenvolvimento. AR Modelagem conceitual dos elementos do problema, validando os requisitos e Análise dos definindo a arquitetura, em detalhe suficiente para o planejamento da fase de Requisitos Construção. DI Desenho Implementação de um subconjunto crítico de funções do produto, validando a Implementável tecnologia e determinando a produtividade de desenvolvimento. Ln Liberação n Implementação de um subconjunto de funções do produto que será avaliado pelos usuários. TA Testes Alfa Realização dos testes de sistema no ambiente de desenvolvimento. TB Testes Beta Realização dos testes de aceitação, no ambiente dos usuários. Transição OP Operação Piloto Operação do produto em instalação piloto do cliente, em período de garantia. Tabela 1 - Fases e iterações do Praxis-Synergia. O Praxis-Synergia recebeu influências do SWEBoK e por esse motivo, diferentemente do PMBoK, trata a Gestão da Qualidade no mesmo nível da Gestão de Projetos. Essa característica confere um caráter de imparcialidade entre controle e garantia da qualidade e a gestão do projeto. Um mapeamento das disciplinas do Praxis-Synergia para as áreas de conhecimento do PMBoK e SWEBoK está presente na Tabela 2. 3

Gerenciais Técnicas Disciplinas do Praxis-Synergia Áreas de conhecimento do PMBoK Áreas de conhecimento do SWEBoK Requisitos - Software Requirements Análise - Software Requirements Desenho - Software Design Implementação - Software Construction Testes - Software Testing Usabilidade - - Modelagem de Negócio - - Integração Escopo Tempo Gestão de Projetos Custos Recursos Humanos Software Engineering Management Comunicações Riscos Aquisições Gestão da Qualidade Engenharia de Processos Qualidade Qualidade Recursos Humanos Tabela 2 - Mapeamento Praxis-Synergia x PMBoK x SWEBoK Software Maintenance Software Configuration Management Software Quality Software Engineering Process Software Engineering Tools and Methods O modelo de gestão apresentado nesse artigo utiliza como elementos principais as disciplinas gerenciais do Praxis-Synergia: Engenharia de Processos, Gestão da Qualidade e Gestão de Projetos. As três próximas seções descrevem brevemente cada uma dessas disciplinas e como elas apóiam a execução bem sucedida de um projeto de desenvolvimento de software. 3. Engenharia de Processos Os principais elementos da disciplina Engenharia de Processos, no que diz respeito à adequada execução dos projetos, são descritos abaixo: Melhoria de Processos: Melhorias pontuais no processo são implantadas prontamente e comunicadas a toda a equipe. Modificações de maior porte envolvem projetos-piloto antes de torná-las elementos oficiais do processo. Melhoria de Tecnologia: A escolha de uma nova ferramenta ou atualização de versões é sempre alvo de estudos de avaliação técnica, analisando o impacto sobre os padrões existentes, capacitação da equipe e custos financeiros. Gestão de Métricas: Métricas a serem coletadas nos projetos devem ser definidas, analisadas e reportadas. Essas métricas são extraídas de artefatos e repositórios de ferramentas, sendo consolidadas ao final de cada projeto. O objetivo maior da Engenharia de Processos é o aperfeiçoamento tático e operacional da organização, no que diz respeito às disciplinas técnicas e gerenciais. A execução das atividades de Engenharia de Processos é de responsabilidade de uma equipe independente de projetos, de forma a garantir a imparcialidade e promover a consolidação dos processos e do conhecimento no nível da organização. O esforço de melhoria técnica é normalmente orientado pelos conceitos do CMMI, enquanto o esforço de melhoria gerencial é normalmente orientado pelos conceitos do PMBoK. 4

4. Gestão da Qualidade Um produto de software de qualidade é definido como aquele que causa nenhum ou poucos problemas, de impacto limitado, ao cliente [Tian 2005]. O custo de remoção de defeitos em um produto aumenta com o avanço nas etapas do desenvolvimento [Galin 2004]. Etapa do desenvolvimento Custo médio relativo do defeito Especificação de requisitos 1 x Desenho 2,5 x Testes de unidade 6,5 x Testes de integração de caso de uso 16 x Testes de sistema/aceitação 40 x Operação pelo cliente 110 x Tabela 3 - Custo relativo de remoção de defeitos. Para garantir o desenvolvimento de produtos de software de qualidade, o Praxis-Synergia define diversos procedimentos de qualidade ao longo do ciclo de vida do projeto, tentando remover defeitos o mais cedo possível e evitando que apareçam em operação no cliente. Tais procedimentos incluem inspeções e revisões [IEEE 1997], além de testes funcionais (requisitos do produto) e não-funcionais (desempenho, usabilidade, etc.). O escopo de um produto de software é dividido em casos de uso, que formam unidades coerentes de funcionalidade e capturam os requisitos do cliente. O progresso do desenvolvimento dos casos de uso é medido por estados que representam marcos no projeto e pontos concretos de validação pelo cliente. A progressão entre os estados é restrita à aprovação de conjuntos específicos de procedimentos de qualidade. Como exemplo, a evolução de um caso de uso evoluir para o estado Especificado depende da aprovação de sua especificação de testes em uma inspeção. Além dos procedimentos de qualidade executados sobre cada caso de uso, ao final de cada iteração do ciclo de vida do projeto, é realizada uma auditoria de qualidade por um grupo independente. Essa auditoria é feita sobre os artefatos produzidos na iteração com o objetivo de verificar a conformidade do processo executado em relação aos padrões oficiais. 5. Gestão de Projetos Como mencionado anteriormente, os maiores investimentos de melhoria e evolução recebidos pelo Praxis-Synergia concentraram-se na disciplina Gestão de Projetos, a qual incorporou diversos conceitos do PMBoK. Nessa seção será apresentado como o Praxis-Synergia aborda cada um dos grupos de processos de gestão de projetos. A iteração Ativação (Tabela 1) é dedicada aos processos de iniciação. Nela ocorre a confecção da proposta de especificação de software, que contém a declaração do escopo do produto a ser desenvolvido, as metas gerenciais de prazo e custo, um cronograma macro do projeto e a estimativa inicial do tamanho do produto em pontos de função, métrica bastante difundida para representar tamanho de software [Garmus 2000]. A partir da Ativação, os processos de planejamento acontecem de forma iterativa: ao final de cada iteração planeja-se com detalhes a iteração seguinte, planejando escopo, prazo, esforço, recursos, custos e riscos. O Praxis-Synergia define completamente a documentação básica de cada projeto padronizando a descrição dos processos de planejamento. Dessa forma, como a seqüência das atividades já está definida, evita-se que tarefas importantes deixem de ser planejadas. A estrutura, no entanto, é flexível o suficiente para permitir a adição de tarefas específicas de um projeto ao plano. Da mesma forma, quando há necessidade de personalizações, apenas as alterações necessitam serem registradas em documento próprio. 5

Os processos de monitoramento e controle são executados com o auxílio de ferramentas automatizadas de medição dos valores reais de esforço e prazo do projeto, possibilitando um acompanhamento quantitativo por meio da análise de valor adquirido. Relatórios de progresso são apresentados à gerência executiva, com quem o gerente do projeto discute eventuais questões pertinentes à manutenção dos compromissos com os clientes. Os processos de execução, no Praxis-Synergia, são em sua maioria tratados em disciplinas técnicas e não na Gestão de Projetos. A realização de auditorias de qualidade é responsabilidade da Gestão da Qualidade, realizada por um grupo independente do projeto. A capacitação das equipes é organizada por um grupo de treinamento composto por integrantes das equipes de Processos e Qualidade. A distribuição de informações é feita por meio dos artefatos oficiais do processo, como os relatórios, para acesso da equipe do projeto. Ao final de cada iteração é feita uma reunião de retrospectiva, onde ocorre o registro de lições aprendidas em uma reunião com toda a equipe do projeto. Ao final do projeto os resultados das retrospectivas são consolidados e arquivados juntamente com os termos de aceitação do produto pelo cliente, formalizando os processos de encerramento. 6. Colocando tudo junto um modelo de gestão de projetos de software As seções anteriores detalharam as três disciplinas gerenciais do Praxis-Synergia, as quais colaboram entre si para definir um modelo de gestão de projetos de desenvolvimento software (Figura 2). A Engenharia de Processos define o ciclo de vida, os procedimentos que devem ser executados, os perfis responsáveis pela execução e os artefatos que devem ser produzidos em um projeto. A Gestão de Projetos, em conformidade com o processo definido, planeja, executa, controla e finaliza os projetos. A Gestão da Qualidade realiza revisões e inspeções no escopo do projeto, medindo a eficiência e eficácia do processo. Figura 2 Modelo de gestão de projetos de software do Praxis-Synergia. Esse modelo de gestão, apesar de genérico, deve ser implementado com o suporte de ferramentas informatizadas, de modo a viabilizar sua execução. Tais ferramentas devem permitir a representação dos seguintes elementos do modelo de gestão: Modelo do Processo: Representação do ciclo de vida do processo, conceitos das disciplinas, gabaritos, padrões e procedimentos, bem como critérios de aceitação. Planejamento e controle: Instanciação do plano de projeto, representando o escopo do projeto e do produto, marcos de projeto, prazos e custos, planejados e reais. 6

Análise de desempenho: Representação das métricas do projeto, facilitando a identificação dos fatores positivos e negativos sobre seu desempenho. É importante notar que os elementos do modelo podem ser instanciados com qualquer conjunto de ferramentas que atendam os requisitos acima. Em seguida, ilustraremos o modelo de gestão apresentado por meio de uma dessas possíveis instâncias de ferramental. Modelo do Processo O modelo do Praxis-Synergia foi construído a partir de uma ferramenta de modelagem que permite a geração de um portal de conteúdo, organizando a documentação do processo e facilitando a consulta pelas equipes. A figura abaixo ilustra parte da documentação de uma das atividades do ciclo de vida do projeto, evidenciando os fundamentos de execução da atividade, o conjunto de tarefas relacionadas, os perfis responsáveis pela execução, os insumos e resultados produzidos e os marcos de escopo do produto. Figura 3 - Portal do processo Praxis-Synergia A navegação pelo portal é bastante intuitiva e promove a distribuição do conhecimento entre as equipes de projeto, facilitando especialmente a capacitação de novos integrantes e reduzindo o tempo de latência até sua total capacidade de produção. A qualquer momento, qualquer colaborador pode apresentar solicitações de ajustes, sugestões de melhoria, ou outras contribuições por meio de uma funcionalidade de feedback. Tais solicitações são analisadas e implementadas pela Engenharia de Processos, com o suporte da Gestão da Qualidade. Planejamento e controle A partir do modelo do processo, é possível obter-se o gabarito do plano do projeto de forma automática, promovendo o alinhamento entre a definição do ciclo de vida do projeto e sua efetiva implementação. A Figura 4 ilustra a ferramenta de planejamento e controle, mostrando o trecho do gabarito do plano de projeto correspondente à representação conceitual da atividade construção do caso de uso apresentada na Figura 3. É possível notar que plano de projeto contém todas as atividades do processo, suas interdependências e o perfil de profissional responsável por sua execução. Ainda, os estados dos casos de uso (Seção 4) tornam-se marcos no plano do projeto. 7

Figura 4 - Gabarito de planejamento de projeto Embora a ferramenta de planejamento e controle seja bastante útil ao gerente do projeto, a comunicação com a equipe é facilitada pela utilização de uma ferramenta de gestão de tarefas. Esta se integra à primeira, possibilitando a delegação das tarefas à equipe e permitindo que cada colaborador conheça detalhes de suas atividades (metas de prazo e esforço, bem como a descrição e referência da tarefa no modelo do processo) e registre os prazos e o esforço real nelas empenhado. A ferramenta de gestão de tarefas também permite o gerenciamento dos riscos do projeto e o acompanhamento dos defeitos encontrados pelos procedimentos de qualidade do processo. Este último possibilita a avaliação da qualidade dos resultados produzidos e o nível de retrabalho gerado no projeto. A Figura 5 ilustra a interface gráfica da ferramenta de gestão de tarefas. Figura 5 - Ferramenta de gestão de tarefas, revisões e defeitos. Uma funcionalidade de sincronização permite que os esforços e durações reais das tarefas possam ser remetidos de volta à ferramenta de planejamento e controle, possibilitando a avaliação do desempenho do projeto, a comparação com a linha de base e a avaliação de alterações no caminho crítico. 8

Análise de desempenho As ferramentas descritas na seção anterior permitem a coleta de métricas importantes para a análise de desempenho do projeto. Periodicamente, o gerente do projeto realiza uma consolidação dos dados coletados de forma a produzir relatórios de acompanhamento do projeto. Tais relatórios contêm análises dos resultados quantitativos de prazo, esforço, custo e qualidade do projeto, além de uma avaliação qualitativa das pendências e dos riscos. A análise quantitativa é feita por meio da técnica de análise de valor adquirido, que é a principal ferramenta de acompanhamento, tanto pelos gerentes de projeto, quanto pela gerência executiva. As curvas e indicadores de valor adquirido são gerados com valores diários, permitindo detectar e corrigir eventuais desvios de prazo e custo tempestivamente. A Figura 6 mostra um exemplo de relatório de análise de desempenho. 3000 DI L1 2500 Distribuição de defeitos por caso de uso 2000 1500 42% 12% 46% Cadastro de fornecedores Relatório de pedidos Controle de estoque CPI: 1,01 SPI: 0,89 1000 Planejado Real Adquirido 500 0 11/4/2005 18/4/2005 25/4/2005 2/5/2005 9/5/2005 16/5/2005 23/5/2005 30/5/2005 6/6/2005 13/6/2005 Figura 6 Análise de desempenho de projeto. A partir da consolidação das análises de desempenho projeto e dos registros das retrospectivas, a Engenharia de Processos e a Gestão da Qualidade podem promover melhorias nos Praxis-Synergia. 7. Conclusões O modelo de gestão apresentado nesse artigo e instanciado no processo Praxis-Synergia possibilita a aplicação de importantes conceitos de gerenciamento de projetos em organizações de TI, em especial aquelas que trabalham com desenvolvimento de software. A utilização adequada do arcabouço permite a obtenção de importantes resultados em termos de compromissos de prazos, custos e qualidade. O nível de qualidade de um produto de software pode ser medido de acordo com a densidade de defeitos, ou seja, a quantidade, por ponto de função, de defeitos encontrados pelo cliente durante o primeiro ano de uso do produto. A Tabela 3 ilustra um trecho do relatório apresentado pela Software Productivity Research [Jones 2002], correlacionando o nível de qualidade de produtos de software, a eficiência de remoção e a maturidade da organização. Dados coletados em projetos realizados com o Praxis-Synergia, considerando produtos de até 3.000 pontos de função, mostram que a densidade de defeitos obtida é semelhante à média das organizações avaliadas como SW-CMM nível 5. A média da densidade apurada nesses projetos foi de 0,0178 com mediana 0,0129 e desvio padrão de 0,0158 defeitos por ponto de função. Esses resultados estão em conformidade com a definição de software de qualidade 9

descrita no início da seção 4 e ilustram a aplicação do modelo de gestão do Praxis-Synergia no desenvolvimento bem sucedido de projetos de software. Nível de maturidade SW-CMM Defeitos potenciais Eficiência de remoção Defeitos entregues ao cliente Nível 1 5,0 80% 1,00 Nível 2 4,0 90% 0,40 Nível 3 3,0 95% 0,15 Nível 4 2,0 97% 0,08 Nível 5 1,0 99% 0,01 Tabela 3 Densidade de defeitos de produtos de software de acordo com o nível de maturidade. É importante ressaltar que o modelo de gestão aqui apresentado é genérico e independente de um ferramental específico, desde que este contenha os elementos de processo, planejamento e controle, e análise de desempenho. Acredita-se que sua utilização por organizações de pequeno e médio porte possa aumentar significativamente o grau de maturidade gerencial e consequentemente a eficiência dos projetos desenvolvidos. 8. Referências [Booch 1999] BOOCH, G.; RUMBAUGH, J.; JACOBSON, I., The Unified Modeling Language Reference manual - Addison-Wesley 1999. [CMMI] CARNEGIE MELLON / SOFTWARE ENGINEERING INSTITUTE - Capability Maturity Model Integration, Disponível em: http://www.sei.cmu.edu/cmmi/. Acessado em 13/09/2006. [Filho 2003] PAULA FILHO, Wilson de Pádua, Engenharia de software; fundamentos, métodos e padrões, 2.ed, 2003, Rio de Janeiro, Editora LTC. [Garmus 2000] Garmus, David and Herron, David Function Point Analysis: Measurement Practices for Successful Software Projects Addison-Wesley 2000. [Galin 2004] Galin, Daniel Software Quality Assurance From theory to implementation Person, Addison- Wesley 2004. [IEEE 1997] Software Engineering Standards Committee of the IEEE Computer Society, IEEE Standard for Software Reviews: 1028-1997, 1997. [Jones 2002] SOFTWARE PRODUCTIVITY RESEARCH, Software Quality in 2002: a survey of the state of the art, 2002. Disponível em: http://www.cs.nyu.edu/artg/producing_production_quality_software/fall2005/lectures/software_qu ALITY_IN_2002_CAPERS_JONES.pdf. Acesso em 13/09/2006. [MCT 2005] MINISTÉRIO DA CIÊNCIA E TECNOLOGIA / SECRETARIA DE POLÍTICA DE INFORMÁTICA, Qualificação CMM e CMMI no Brasil, 2005, Disponível em: http://www.mct.gov.br/upd_blob/6445.pdf. Acesso em: 13/09/2006. [MPSBR 2006] SOFTEX, Melhoria de Processo do Software Brasileiro, 2006, Disponível em: http://www.softex.br/mpsbr. Acesso em: 13/09/2006. [Pádua 2006] PÁDUA, Clarindo, Transitioning model-driven development from academia to real life, Proceedings of Educators' Symposium of the ACM/IEEE 9th International Conference on Model Driven Engineering Languages and Systems. Genova, Italy, Oct. 2006 (to appear). [Pimentel 2006] PIMENTEL, Bruno et al, Synergia A Software Engineering Laboratory to Bridge the Gap between University and Industry, Proceedings of the Third International Summit on Software Engineering Education (SSEE III), 28th. International Conference on Software Engineering, Shanghai China. [PMBoK 2004] PROJECT MANAGEMENT INSTITUTE, A Guide to Project Management Body of Knowlegde, 3rd. edition, 2004. [Pratico 2006] LABORATÓRIO SYNERGIA/DCC /UFMG PrATIco (Processo de aquisição de produtos e serviços de tecnologia): resultados de pesquisa, 2006, Disponível em: http://www.synergia.dcc.ufmg.br/pratico/resultados/resultado.htm. Acesso em 13/09/2006. [SWEBoK 2004] IEEE COMPUTER SOCIETY (Org.), Guide for Software Engineering Body of Knowlegde, 2004. Disponível em http://www.swebok.org. Acesso em 13/09/2006. [Tian 2005] TIAN, Jeff Software Quality Engineering. John Wiley and Sons, Inc.; IEEE Computer Society Press 2005. 10