Вы находитесь на странице: 1из 8

Implantando um Programa de Melhoria de Processo: Uma Experincia Prtica

Evandro Polese Alves Ricardo de Almeida Falbo Departamento de Informtica - UFES Av. Fernando Ferrari, s/n, Vitria - ES - Brasil Email: evandro@vixteam.com.br, falbo@inf.ufes.br Resumo
Este trabalho discute uma experincia inicial na implantao de um programa de melhoria de processo, tendo por base o modelo IDEAL. O resultado principal obtido at ento foi um processo padro para o desenvolvimento orientado a objetos. Palavras-chave: Definio de Processo, Implantao de Programa de Qualidade.

Abstract
This paper presents a software process improvement initiative, developed using the IDEAL model. From the work done, the main outcome is an organizational software process for developing object-oriented software. Key-words: Software Process Definition, Quality Program Implementation.

1. Introduo O aumento da demanda por sistemas de software, associado importncia do papel por eles desempenhado na sociedade atual, tem levado a uma preocupao constante com a produtividade no desenvolvimento e a qualidade dos produtos gerados. Prazos extrapolados, baixa produtividade, custos altos e qualidade deficiente so situaes constantes na rea de desenvolvimento de software. O aumento da qualidade de software depende muito menos do uso de novas tecnologias do que do emprego efetivo de prticas gerenciais adequadas. Treinar desenvolvedores e dar-lhes tempo para absorver o que aprenderam fundamental. Impedir os usurios de colocar prazos absurdos para seus pedidos fundamental. Alocar recursos (tempo, dinheiro e pessoas) para trabalhar na melhoria do processo tambm fundamental. Comea a haver, ento, uma necessidade de compreenso dos problemas envolvidos no desenvolvimento de software, que no so somente tecnolgicos, mas, principalmente, gerenciais e organizacionais, para que se possa fazer um planejamento visando a melhoria do processo e, conseqentemente, melhoria da qualidade dos produtos gerados. Este trabalho relata uma experincia na implantao de um estgio inicial de um programa de melhoria do processo de software em uma empresa de porte mdio, a VixTeam Consultoria & Sistemas, que levou elaborao de um Processo Padro para Desenvolvimento Orientado a Objetos. Como base para esta ao, foi utilizado o modelo IDEALR [1].

O trabalho est estruturado da seguinte forma: na seo 2, apresentado o Modelo IDEALR. Na seo 3, so discutidas as fases do processo IDEALR que foram realizadas neste trabalho, a saber: Inicial, Diagnstico e Planejamento. Finalmente, a seo 4 apresenta as concluses deste trabalho e discute quais os prximos passos a serem realizados. 2. O Modelo IDEALR O modelo IDEAL um modelo de programa de Melhoria de Processo de Software (Software Process Improvement - SPI), desenvolvido pelo Software Engineering Institute (SEI), que pode ser usado como um guia no desenvolvimento de um plano integrado de longo prazo para iniciar e gerenciar um programa SPI [1]. A Tabela 1 apresenta as cinco fases de uma iniciativa de SPI, que podem ocorrer de forma iterativa, bem como as atividades relacionadas com cada uma delas. Fase Inicial Diagnstico Atividades Relacionadas Aprender sobre SPI; Definir os Objetivos Gerais; Prever os Recursos Iniciais. Avaliar o nvel de maturidade do processo; Levantar as prticas e mtricas; Descrever o processo; Esboar um plano de ao. Estabelecer os objetivos; Estabelecer as prioridades; Montar o plano de ao. Pesquisar e desenvolver solues para os problemas do processo; Divulgar melhorias no processo para toda a organizao. Preparar o novo ciclo; Refinar o processo de SPI. Tabela 1 Estrutura do Modelo IDEAL.

Planejamento Ao Replanejamento

Alm das cinco fases apresentadas, o modelo descreve, ainda, uma atividade para prover superviso dos projetos de melhoria e resolver questes relacionadas. 3. O Programa SPI na VixTeam A VixTeam Consultoria & Sistemas uma organizao de desenvolvimento de software que existe h trs anos e atua principalmente no desenvolvimento de sistemas de informao para o mercado corporativo do Esprito Santo, sob as plataformas cliente-servidor e Web, sendo que est iniciando trabalhos na rea de produto de prateleira. A VixTeam possui um quadro de aproximadamente trinta colaboradores e seis clientes ativos. Tendo em vista sua rea de atuao, a qualidade uma das constantes preocupaes da VixTeam. Associado a esta preocupao, h tambm um incentivo oferecido pela Prefeitura de Vitria, na forma de reduo da alquota de ISSQN (Lei 5.145/00), para as organizaes que comprovarem a obteno de Certificados de Sistemas de Garantias de Qualidade da famlia NBR ISO 9000, especificamente o NBR ISO 9001 ou NBR 9002 ou ISO 9126 (NBR 13596) [2], at 31 de dezembro de 2002. Sendo assim, a VixTeam decidiu investir na

melhoria de seu processo de software e, para tal, decidiu fazer uso do Modelo IDEAL. No momento atual, o programa SPI encontra-se na fase de ao do referido modelo, j tendo sido realizadas, portanto, as trs primeiras fases, que conduziram definio de um Processo Padro da organizao. A seguir, apresentamos os passos realizados e seus principais produtos. 3.1 A Fase Inicial Nesta fase, a infraestrutura preliminar de melhoria estabelecida, os papis e responsabilidades so atribudos e os recursos iniciais alocados. Um plano criado para guiar a organizao at a fase de Planejamento e os objetivos gerais do programa SPI estabelecidos. No caso da VixTeam, foi necessrio realizar um estudo sobre qualidade de processo de software, procurando conhecer os conceitos relacionados melhoria do processo de desenvolvimento e as principais normas e modelos de qualidade existentes. Como objetivo geral do programa, foi estabelecida a adequao da organizao norma NBR-ISO-9000-3 [3]. Esta escolha deveu-se ao fato desta norma ser menos conclusiva e detalhista em seus itens, propondo apenas requisitos mnimos para um processo de qualidade. Desta forma, o escopo do trabalho foi reduzido, o que mais adequado a um primeiro esforo de melhoria de processo em uma organizao do porte da VixTeam, em funo, principalmente de sua disponibilidade de recurso. Contudo, percebeu-se que a virtude da ISO 9000-3, a simplicidade, tambm sua fraqueza. Assim, para apoiar o programa, foi montado um quadro comparativo dos itens da norma com outros modelos, para permitir a utilizao destes como referncia complementar, principalmente nos pontos em que a ISO 9000-3 apresenta descries muito superficiais. Sobretudo o CMM [4] e a norma ISO 12207 [5] foram bastante teis neste trabalho. 3.2 A Fase de Diagnstico Esta fase a base para a realizao das etapas subseqentes. Atividades de avaliao so realizadas para estabelecer a linha base (baseline) das prticas correntes da organizao. Para estabelecer o estado corrente da organizao, primeiramente, foram realizados um levantamento detalhado dos itens da norma e uma comparao destes itens com as atividades realizadas pela organizao. Aps, foram feitas entrevistas com os principais responsveis pelas atividades listadas, levantando a prtica atual. Para cada item da norma foi descrito um diagnstico da empresa no atendimento ao item. Trs categorias de itens foram identificadas: itens atendidos (A), itens parcialmente atendidos (PA) itens que a organizao pratica, mas sem uma abordagem sistemtica definida, variando substancialmente de projeto para projeto e itens no atendidos (NA). A tabela 2 mostra parte deste diagnstico. Para os itens da norma no atendidos (NA) ou parcialmente atendidos (PA), foram propostas solues.

Item da Norma 5.2 5.3 5.4.1 / 5.4.2 5.4.3 5.4.4 / 5.4.5 5.4.6 5.5 5.6.1 5.6.2 5.6.3 5.6.4 5.7.2 5.7.3 / 5.7.4 / 5.8 5.9.2 / 5.9.3 6.1 6.3 / 6.4 6.6 6.8 6.9

Descrio Anlise Crtica do Contrato Especificao dos Requisitos do Comprador Planejamento do Desenvolvimento Controle da Execuo Entradas e Sadas das Fases de Desenvolvimento Verificao de Cada Fase Planejamento da Qualidade Projeto e Implementao - Generalidades Projeto Implementao Anlise Crtica Planejamento de Testes Testes, Validao e Aceitao Entrega e Instalao Gerncia de Configurao Registro de Qualidade, Medio Ferramentas e Tcnicas Produto de Software Includo Treinamento Tabela 2 Diagnstico

Situao NA PA PA NA NA NA NA A NA PA PA NA PA A NA NA A A PA

3.3 A Fase de Planejamento Na fase de planejamento (ou estabelecimento), os aspectos que a organizao decidiu considerar so priorizados e estratgias so estabelecidas [1]. No caso da VixTeam, decidiu-se definir um processo padro para o desenvolvimento orientado a objetos (tecnologia utilizada na grande maioria dos projetos), a ser utilizado como base para os trabalhos da fase de ao. A proposta apresentada tem como objetivo ser um modelo flexvel, que permita a adaptao, de tal maneira que o processo padro possa ser instanciado para projetos de diferentes tipos e tamanhos. O modelo baseado na idia de papis, permitindo que as equipes sejam montadas para cada projeto e as responsabilidades troquem de acordo com os papis. Em funo do tamanho e do tipo dos projetos, mudaro os papis necessrios e a alocao das pessoas para cada papel, havendo uma tendncia que, em projetos maiores, alguns papis sejam realizados por mais de uma pessoa e, em projetos menores, que uma mesma pessoa realize mais de um papel. A Tabela 3 apresenta os papis identificados, bem como suas responsabilidades. Alm dos papis, foram descritas, tambm, as atividades que compem o processo padro. Estas atividades, alm de possurem uma descrio do seu objetivo, relacionam os papis por elas responsveis, que artefatos precisam estar disponveis para que possam ser realizadas e que artefatos devem ser gerados. Elas foram, ainda, agrupadas em trs categorias: atividades de ciclo de vida, atividades de controle da qualidade e atividades de gerncia, apresentadas, respectivamente, nas tabelas 4, 5 e 6.

Papis Gerente de Produo Gerente de Projeto

Analista de Negcio

Projetista de Soluo Da Aplicao Projetista de Solues

Projetista de Aplicaes

Desenvolvedor

Engenheiro de Testes

Engenheiro de Qualidade

Engenheiro de Processo Administrador de Ambiente Gerncia Snior

Responsabilidades Alocao de recursos; Acompanhamento dos andamentos dos projetos; Tomada de decises estratgicas para correo de desvios. Definir escopo do projeto; Planejamento do projeto; Monitoramento do andamento do projeto; Definio de prioridades; Reportar status de progresso do projeto; Identificar riscos e planejar sua mitigao; Obter aprovaes do projeto; Tratar problemas detectados aps a aceitao do software. Definir e especificar requisitos funcionais e no funcionais; Prototipar interface com usurio; Definir modelos de classes e diagramas de seqncia de negcio; Definir critrios de aceitao do software; Planejar e realizar testes de validao; Planejar e realizar testes de aceitao junto ao cliente. Definir arquitetura do software; Sugerir componentes para o reuso; Projetar solues arquiteturais para o software; Projetar classes reusveis para o software. Gerenciar base de conhecimento da empresa; Desenvolver projetos de tecnologia; Gerenciar os componentes reusveis da empresa; Gerenciar padres operacionais da empresa. Modelar classes da Interface com o Usurio; Modelar classes do Domnio; Modelar os dados da aplicao; Elaborar documento de especificao de projeto contendo as descries de operaes. Construir cdigo fonte; Realizar testes unitrios; Corrigir defeitos apontados; Integrar cdigo ao sistema; Verificar o desempenho do cdigo gerado; Gerar programas executveis. Montar plano de testes; Definir os casos de testes; Realizar os testes; Avaliar os resultados e elaborar relatrio. Avaliar artefatos do projeto; Avaliar processo de desenvolvimento do projeto; Solicitar correes nos artefatos ou no processo avaliados; Solicitar ajustes de no conformidades. Revisar processo padro da empresa; Elaborar plano de qualidade da empresa; Assegurar o atendimento aos requisitos da ISO 9000-3. Administrar o ambiente operacional da produo de software da empresa; Analisar criticamente os contratos a serem assinados; Definir planejamento estratgico da empresa; Definir oramento da empresa; Planejar treinamentos dos colaboradores.

Tabela 3 Papis do Processo Padro VixTeam.

Atividade Definir Viso Projeto Elaborar Plano de Projeto Aprovar Contrato

Artefato Insumo

Artefato Produto Escopo do Software Plano de Projeto Contrato Assinado

Escopo do Software Proposta de Contrato Escopo do Software Plano de Projeto Escopo do Software

Responsvel Gerente do projeto Responsvel do Cliente Gerente de Projeto Gerncia Snior

Especificar Requisitos

Modelo Caso de Uso Especificar Modelos de Negcio Descrio Caso de Uso Descrio de Atores Glossrio Modelo Caso de Uso Projetar Arquitetura do Software Descrio Caso de Uso Prottipo de GUI Documento de Arquitetura Modelo de Classes Projetar Aplicao Negcio Diagrama Seqncia Negcio Diagrama de Estados Doc. de Arquitetura Diag. Classes de Projeto Codificar Aplicaes Diag. Seqncia Projeto Modelo de Dados Realizar Teste Cdigo Fonte Unitrio Descrio Caso de Uso Doc. de Arquitetura Realizar Testes de Diagrama Classes de Integrao Projeto Diag. Seqncia Projeto Cdigo Fonte Descrio Caso de Uso Doc. de Arquitetura Realizar Testes de Cdigo Fonte Aceitao

Modelo Caso de Uso Analista de Negcio Descrio Caso de Uso Descrio de Atores Glossrio Prottipo de GUI Ata de Avaliao Modelo Classes Analista de Negcio Negcio Diagrama de Seqncia Negcio Diagrama de Estados Documento de Arquitetura Projeto de Solues Aplicao

Documento de Projetista de Aplicao Arquitetura Diagrama Classes de Projeto Diagrama Seqncia de Projeto Modelo de Dados Cdigo Fonte Desenvolvedor

CheckList Teste Desenvolvedor Unitrio Plano de Testes Engenheiro de Testes Casos de Testes Relatrio Resultado de Testes Plano de Testes Gerente do projeto Casos de Testes Analista de negcio Relatrio Resultado de Responsvel do Cliente Testes Ata de Aceitao

Tabela 4 Atividades de Ciclo de Vida do Processo Padro VixTeam.

Atividade Planejar Qualidade Analisar Criticamente

Artefato Insumo Itens do Plano de Projeto Artefato a ser avaliado Artefato a ser revisado

Artefato Produto Plano de Qualidade Ata de Avaliao Ata de Aprovao Ata de Avaliao

Revisar Qualidade dos Artefatos

Responsvel Engenheiro de Qualidade Gerente de Projeto Analista de Negcio Responsvel do Cliente Engenheiro de Qualidade Engenheiro de Processo

Revisar Qualidade do Processo de Desenvolvimento

Registrar Qualidade

Gerenciar Configurao

Elaborar Padres Operacionais

Ata de Aprovao Registro de Qualidade Processo de Processo de Desenvolvimento Desenvolvimento Revisado Registros de Qualidade Padres de Desenvolvimento Revisados Padres de Ata de Aprovao Desenvolvimento Ata de Avaliao Registro de Qualidade Ata de Aprovao Relatrio Resultado de Testes Solicitao de Ata de avaliao Alterao Artefato a ser Alterado Plano de Projeto Artefato Modificado Verso anterior do Padro Operacional padro Alterado Padres relacionados Ata de aprovao

Engenheiro de Qualidade Gerente de Projeto Analista de Negcio Engenheiro de Testes Gerente de Projeto

Projetista de Solues

Validao de Produto de Software Includo

Produto de software Especificao Produto Software Requisitos do Software

Engenheiro de Qualidade Engenheiro de Processo Ata de avaliao Gerente de Projeto Plano de integridade do Analista de Negcio produto de software

Tabela 5 Atividades de Controle da Qualidade do Processo Padro VixTeam. Atividade Artefato Insumo Artefato Produto Responsvel Gerenciar e Plano de Projeto Plano de Projeto Gerente do Projeto acompanhar Revisado andamento do projeto Planejamento de Plano de Gerncia Snior Treinamento Treinamentos Anual Tabela 6 Atividades de Gerncia do Processo Padro VixTeam.

4. Concluso Neste trabalho, apresentamos as primeiras fases de um programa de SPI, orientado pelo IDEALR, que est sendo realizado na VixTeam e que conduziram elaborao de um Processo Padro para o desenvolvimento de software orientado a objetos. A fase de Ao do Modelo IDEALR j est em andamento. Foi formada uma Equipe Tcnicos Especialistas (Technical Working Group - TWG), que est refinando a proposta do processo padro de software, compatibilizando-a com o sistemtica de gerenciamento de projetos da VixTeam e vice-versa. J est definido um projeto piloto para a validao do processo padro, que ser acompanhado de perto pelo TWG que dar orientaes e far os ajustes necessrios. A partir desta validao, o processo padro dever ser divulgado para toda a organizao e, aps um perodo de avaliao dos resultados obtidos, poder ser replanejada (fase 5) uma nova entrada no ciclo do modelo IDEAL para aprimorar o processo de maneira a corrigir falhas no atendimento dos requisitos da norma ISO 9000-3. Nesta nova entrada do ciclo do IDEAL, deve ser feita uma reviso do programa de qualidade, adequando-o nova verso da norma ISO 9000 (ISO 9001:2000) [6], que foi publicada quando a fase de planejamento do primeiro ciclo j havia sido concludo. Espera-se, assim, que at dezembro de 2002, a meta de obteno da certificao seja atingida, j utilizando a nova verso da norma. Referncias Bibliogrficas [1] McFeeley, Bob. IDEALSM : A Users Guide for Software Process Improvement, 1996. [2] Rocha, A.R.C., et al., Qualidade de Software: Teoria e Prtica, Prentice Hall, 2001. [3] NBR ISO 9000-3:1993. Normas de gesto e garantia da qualidade parte 3,diretrizes para a aplicao da NBR ISO 9001 ao desenvolvimento, fornecimento e manuteno de software, 1993. [4] Fiorini, S., et al.; Engenharia de Software com CMM, Brasport, 1998. [5] ISO/IEC 12207. Information technology software life cycle processes, 1995. [6] ISO 9001:2000. Quality management systems. Requirements, 2000.

Вам также может понравиться