Qualidade na gestão de projeto de desenvolvimento de software



Documentos relacionados
MODELO CMM MATURIDADE DE SOFTWARE

CMM Capability Maturity Model. Silvia Regina Vergilio

Qual a diferença entre certificação e acreditação? O que precisamos fazer para obter e manter a certificação ou acreditação?

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

Qualidade de. Software. Definições. Qualidade do Produto ISO Processo de. Software. Modelo de Processo de. Software CMM SPICE ISO 12207

SGQ 22/10/2010. Sistema de Gestão da Qualidade. Gestão da Qualidade Qualquer atividade coordenada para dirigir e controlar uma organização para:

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

Gerência de Projetos de Software Modelos de gerência. CMM: Capability Maturity Model ITIL: Information Technology Infrastructure Library MPS BR

QUALIDADE DE SOFTWARE AULA N.7

GARANTIA DA QUALIDADE DE SOFTWARE

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

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

Melhorias de Processos de Engenharia de Software

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

Fundamentos de Teste de Software

Treinamento Gestão da Qualidade - Cartilha

CBG Centro Brasileiro de Gestão

Padrões de Qualidade de Software

Governança de TI. ITIL v.2&3. parte 1

Delfraro Rodrigues Douglas M Gandini José Luiz CMM. Capability Maturity Model

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

Qualidade de Software: Visão Geral

POLÍTICA DA QUALIDADE POLÍTICA AMBIENTAL POLÍTICA DE SEGURANÇA, SAÚDE E BEM ESTAR NO TRABALHO

Introdução a CMMI. Paulo Ricardo Motta Gomes Renato Miceli Costa Ribeiro

POLÍTICA DE SEGURANÇA POLÍTICA DA QUALIDADE POLÍTICA AMBIENTAL POLÍTICA DE SEGURANÇA, SAÚDE E BEM-ESTAR NO TRABALHO

Sistemas de Gestão da Qualidade. Introdução. Engenharia de Produção Gestão Estratégica da Qualidade. Tema Sistemas de Gestão da Qualidade

MASTER IN PROJECT MANAGEMENT

F.1 Gerenciamento da integração do projeto

Padrões de Qualidade de Software e Métricas de Software

Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos

Engenharia de Software

Gerência de Projetos

SISTEMA DE GESTÃO AMBIENTAL ABNT NBR ISO 14001

CobiT 4.1 Plan and Organize Manage Projects PO10

Gerência de Projetos de Software CMM & PMBOK

ISO Aécio Costa

ACOMPANHAMENTO GERENCIAL SANKHYA

CAPABILITY MATURITY MODEL FOR SOFTWARE. Eduardo Mayer Fagundes

Qualidade em Projetos aperfeiçoamento de processos Entendimento/Monitoração e Controle. 0 - Generalidades

CES-32 e CE-230 Qualidade, Confiabilidade e Segurança de Software. Conceitos de Qualidade. CURSO DE GRADUAÇÃO e DE PÓS-GRADUAÇÃO DO ITA

Políticas de Qualidade em TI

Atividade da gerência da qualidade

Atividade: COBIT : Entendendo seus principais fundamentos

CHECK - LIST - ISO 9001:2000

Normas Série ISO 9000

Importância da normalização para as Micro e Pequenas Empresas 1. Normas só são importantes para as grandes empresas...

Gerenciamento de Qualidade. Paulo C. Masiero Cap SMVL

Sistema de Gestão da Qualidade

Gerenciamento de projetos.

Material de Apoio. Sistema de Informação Gerencial (SIG)

Projeto de Sistemas I

Gerência de Projetos CMMI & PMBOK

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

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

SENAC GO. Gestão da Tecnologia da Informação. Tópicos especiais em administração. Professor Itair Pereira da Silva. Alunos: Eduardo Vaz

ISO 9000:2000 Sistemas de Gestão da Qualidade Fundamentos e Vocabulário. As Normas da família ISO As Normas da família ISO 9000

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

Secretaria de Gestão Pública de São Paulo. Guia de Avaliação de Maturidade dos Processos de Gestão de TI

Gestão e estratégia de TI Conhecimento do negócio aliado à excelência em serviços de tecnologia

FACULDADE SENAC GOIÂNIA

ISO NAS PRAÇAS. Oficina ISO Formulação da Política da Qualidade. Julho/2011

INFORMAÇÕES ADICIONAIS

Processos de gerenciamento de projetos em um projeto

ENGENHARIA DE SOFTWARE I

Introdução à Qualidade de Software. Profº Aldo Rocha

Estratégia de TI. Posicionamento Estratégico da TI: como atingir o alinhamento com o negócio. Conhecimento em Tecnologia da Informação

PMBoK Comentários das Provas TRE-PR 2009

Governança de TI UNICAMP 13/10/2014. Edson Roberto Gaseta

MODELO SPICE Software Improvement and Capacibilty Determination Avalia o software com foco na melhoria de seus processos (identifica pontos fracos e

Engenharia de Software

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

Gestão da Qualidade Políticas. Elementos chaves da Qualidade 19/04/2009

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

Introdução Fatores de Qualidade Garantia de Qualidade Rivisões de Software Conclusão. Qualidade. Plácido A. S. Neto 1

ANEXO X DIAGNÓSTICO GERAL

CMM - Capability Maturity Model

POLÍTICA DE GESTÃO DE RISCO - PGR

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

Corporativo. Transformar dados em informações claras e objetivas que. Star Soft.

APRENDA COMO GERENCIAR SEUS SERVIÇOS

Por que sua organização deve implementar a ABR - Auditoria Baseada em Riscos

CICLO DE EVENTOS DA QUALIDADE

ISO As três primeiras seções fornecem informações gerais sobre a norma, enquanto as cinco últimas centram-se na sua implementação.

ITIL - Por que surgiu? Dependências de TI; A qualidade, quantidade e disponibilidade de infra-estrutura de TI afetam diretamente;

Processos Técnicos - Aulas 4 e 5

CONSULTORIA. Sistema de Gestão ISO Lean Esquadrias

Ambientação nos conceitos

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

Pesquisa sobre: Panorama da Gestão de Estoques

Transcrição:

Qualidade na gestão de projeto de desenvolvimento de software [...] O que é a Qualidade? A qualidade é uma característica intrínseca e multifacetada de um produto (BASILI, et al, 1991; TAUSWORTHE, 1995). A relevância de cada faceta pode variar com o contexto e ao longo do tempo, pois as pessoas podem mudar seus posicionamentos e atualizar suas referências, com relação a um objeto de uma questão. Portanto, a qualidade não é absoluta, mas depende da perspectiva do avaliador. Por isso, qualidade é um conceito complexo, porque possui significados diversos para diferentes pessoas. Portanto qualidade de software é um conjunto de propriedades a serem satisfeitas, em determinado grau, de modo que o software satisfaça as necessidades do usuário, e para isso acontecer é necessário que o gerente de projeto tenha, de forma clara e definida, o objetivo daquele projeto de desenvolvimento. 2.0 - A Qualidade Segundo o PMBoK e a Iso9000 Segundo o PMBoK, o gerenciamento da qualidade do projeto inclui os processos necessários para assegurar que o projeto satisfaça as necessidades para as quais foi criado. Os processos principais do gerenciamento da qualidade são: 1- Planejamento da qualidade (identificar): identificação dos padrões de qualidade relevantes para o projeto e determinação de como atender a esses padrões; 2- Garantia da qualidade (avaliar o desempenho): Avaliação regular do desempenho geral do projeto para gerar confiança no sucesso do projeto em alcançar os padrões relevantes de qualidade; 3- Controle da Qualidade (controlar os resultados): Monitoração dos resultados específicos do projeto, a fim de determinar se esses resultados estão de acordo com os padrões relevantes de qualidade, e identificação de maneiras para eliminar as causas de desempenho insatisfatório. A abordagem básica usada no gerenciamento da qualidade descrito pelo PMBoK deve ser compatível com a usada pela International. Organization for Standartization (ISO) A ISO 9000 é um padrão internacional de qualidade que aplica o gerenciamento da qualidade de processo para gerar produtos que atendam as expectativas de seus usuários. Esses padrões foram criados sob a premissa de que, se o desenvolvimento e o gerenciamento do sistema são de boa qualidade, então o produto ou serviço resultante também será de boa qualidade. Um sistema de qualidade em conformidade com a ISO 9000 assegurará que seu processo de desenvolvimento possui um nível de controle, disciplina e repetibilidade, garantindo a qualidade de seus produtos (SCHMAUCH,1994) Em IEEE (1990) a qualidade é definida como o grau pelo qual um sistema, um componente ou um processo satisfaz seus requisitos especificados, e as necessidades ou expectativas de clientes ou usuários. 1

Um padrão é efetivo se, quando usado apropriadamente, melhora a qualidade dos resultados e reduz os custos dos produtos de software (FENTON, 1996). 3.0 - Princípios da Gestão da Qualidade Existem alguns princípios da gestão da qualidade 1.Foco no Cliente Este é o principal e requer uma combinação de conformidade aos requisitos (o projeto deve produzir o que se comprometeu a produzir) e adequação ao uso (o produto ou serviço deve satisfazer as necessidades reais). A satisfação do cliente é considerada como parte integrante das especificações do projeto; 2.Liderança Saber conduzir tudo e todos para um objetivo comum definido no início do projeto; 3.Envolvimento da Equipe Todos devem se sentir à vontade para falar, e o Gerente do projeto deve estar apto a ouvir; 4.Prevenção ao invés de inspeção O custo de prevenir erros é sempre menos que o custo de corrigi-los quando descobertos em inspeções; 5.Prevenir riscos ainda na fase de planejamento ações intempestivas, durante a execução, a fim de corrigir um risco não previsto, podem causar impactos sem precedentes. Por isso, a fase de planejamento é a melhor fase para se definir os riscos; 4.0 - Gerência de Projeto de Software Gerência de Projeto de software é a aplicação do conhecimento, habilidade, ferramentas e técnicas no desenvolvimento de software com o objetivo de atender aos requisitos do projeto. As principais dificuldades que um gerente de projeto enfrenta para assegurar a qualidade do seu projeto e do seu produto são conseguir atingir ou exceder as expectativas e balancear demandas e conflitos. Segundo o Cobit, o gerenciamento tem que ter assegurado que qualquer novo projeto ou modificações em antigos inclui a preparação de um plano de qualidade integrado com o plano geral do projeto, periodicamente revisto e aceito pela equipe. Neste plano deve estar previsto o planejamento da qualidade em cada fase da criação de um software. 5.0 - Processo de Desenvolvimento de Software Um processo de desenvolvimento de software é um conjunto de atividades, métodos, práticas e tecnologias que as pessoas utilizam para manter e desenvolver softwares e produtos relacionados. Ele envolve uma série de etapas que produzem um produto. Quando um processo de desenvolvimento é imaturo, seu projeto não é rigorosamente cumprido e controlado a qualidade e as funcionalidades do produto podem ficar comprometidas para que prazos sejam cumpridos, os custos de manutenção podem ser muito altos, com isso a qualidade do projeto como um todo fica muito comprometido. 2

6.0 - Qualidade no Processo de Desenvolvimento de Software Para lidar com a qualidade de um software é necessário lembrar que o projeto do software, o processo de desenvolvimento e o produto final têm que ter qualidade. Hoje se tem uma visão bastante abrangente de que é fundamental para a obtenção de um produto com qualidade um projeto bem definido com requisitos, cronograma, custos e vários outros fatores estabelecidos de forma bem sólida para assegurar a qualidade final do trabalho. Para começar é fundamental que o software seja confiável, isto é, seja eficaz e siga os padrões exigidos no contexto definido pelo cliente. Os métodos que serão utilizados na produção são uma escolha gerencial, porque esses métodos definirão a qualidade do produto resultante. A qualidade deve estar presente não só nos produtos produzidos, mas também nos processos utilizados para gerar esses produtos. Para assegurar a qualidade é necessário que se disponha de métodos e ferramentas compatíveis com a qualidade desejada. Atuar eficazmente na função de garantir a qualidade exige conhecimento técnico do gestor do projeto sobre os métodos e ferramentas, além do conhecimento para lidar com o pessoal. Como base para qualquer processo de gerência, deve existir um sistema de retroalimentação que forneça a gerência do projeto às informações sobre o funcionamento do processo para que eventuais problemas possam vir a ser corrigidos. Também é necessário organizar as informações coletadas, métricas para que possam conhecer melhor os produtos produzidos, bem como os processos utilizados na sua produção. As métricas são ponto fundamental para se avaliar o desempenho e progresso da qualidade do produto. Elas são essenciais para garantir a qualidade e a transparência aos processos. Em um projeto de software pode-se começar a buscar a qualidade deste projeto nas definições dos requisitos. O universo da informação e o contexto no qual o software deve ser desenvolvido e operado. Os requisitos expressam todas as necessidades dos clientes e que condicionam a qualidade do software. Tratar dos requisitos em um produto de software, torna-se um processo de gerência da qualidade na medida em que procura desde os requisitos estar planejando a qualidade dos processos. O processo de desenvolvimento de software é uma seqüência de estágios, apresentando uma estrutura técnica e de gerenciamento para o uso de métodos e ferramentas, e incluindo pessoas para as tarefas do sistema (Humphrey, 1995). Benefícios da qualidade: maior conformidade com as exigências dos clientes; o fornecedor consegue mostrar sua capacidade corrente e potencial de seu próprio processo de desenvolvimento; melhor uso dos recursos existentes; aumento de lucratividade; etc. 3

As pesquisas evidenciam que o problema da indústria de software é mais gerencial do que técnico, todavia, o gerenciamento dos projetos não está sendo considerado como deveria (Machado, 2001). É muito difícil encontrar no mercado hoje profissionais qualificados para integrar equipes de projetos e saberem dar o devido valor a cada área de conhecimento que deve ser abordada em um projeto, como a área da qualidade. 7.0 Gerenciamento da Qualidade no Processo de Desenvolvimento de Software baseado no CMM O gerenciamento da qualidade em um projeto de desenvolvimento de software pode adotar padrões para assegurar a qualidade do produto entregado. Neste artigo será usado o CMM (Capability Maturity Model) como modelo de maturidade de capabilidade de desenvolver software com qualidade. Inicicalmente em 1986, desenvolvido pelo SEI (Software Engeneering Institute) para que o DoD (Departament of Defence) dos Estados Unidos, pudesse avaliar as empresas subcontratadas. Hoje, em 2004, o CMM se tornou um padrão mundial para avaliação da maturidade de processos e capacidades das empresas de software e fonte de referência para as empresas que buscam melhorias em seus processos de software. Ele está dividido em cinco níveis: 5o Nível: Otimizado Melhoria Contínua do Processo 4o Nível: Gerenciado Processos e produtos são quantitativa, compreendidos e controlados. 3o Nível: Definido Processos padronizados e integrados em um processo padrão para a organização 2o Nível: Repetível Processos básicos de gestão são definidos 1o Nível: Inicial Poucos processos são definidos. Sucesso depende de esforço individual Várias empresas estão analisando o estágio de evolução de seu processo de software e verificando a necessidade de adoção de um processo sustentado que estabelecesse uma ponte entre o uso sistemático de recursos e a incorporação de práticas gerenciais aos projetos, com o intuito de assegurar o aumento da produtividade, o cumprimento de prazos e a conformidade com os altos padrões de qualidade de seus clientes. Inspiradas nessas diretrizes muitas empresas vem integrando atividades consagradas de desenvolvimento de software as práticas me melhoria do processo definidas no modelo CMM (Capability Maturity Model). O objetivo maior destas empresas é organizar e promover a melhoria contínua do processo de desenvolvimento, levando-o de um patamar informal (ad hoc) aos níveis maiores de maturidade preconizados pelo CMM. A expectativa ao se investir na melhoria do processo de software é aumentar a qualidade, a produtividade e a previsibilidade dos resultados finais. O CMM é um dos modelos mais aceitos para a melhoria da qualidade e do processo de software em todo o mundo e define os princípios e práticas que devem ser aplicados a uma organização para atingir estágios evolutivos de maturidade em seu processo de software. Os cinco níveis de maturidade estão definidos em 18 áreas-chave de 4

processos (KPA s Key Process Áreas). Que caracterizam a performance do projeto a cada nível. O primeiro passo é levar as empresas ao nível 2 (repetível) do CMM, onde práticas de gerencia mínima estão estabelecidas para controlar custos, cronograma e funcionalidade. A institucionalização dessas práticas é conseguida tanto pela consolidação de praticas existentes na empresa, quanto pela adoção das práticas sugeridas no CMM. Nesse contexto deve-se definir procedimentos para todas as áreas chaves do CMM, além de um processo de desenvolvimento único para toda a organização, que foi concebido com o objetivo de organizar um conjunto de atividades relacionadas com a criação, certificação, entrega e manutenção de soluções de software. Ele deve definir o que o que fazer (artefatos), quando e como executar atividades de desenvolvimento (fluxo), que ferramentas usar (meios) e quem está envolvido no processo (papéis). A associação entre áreas-chave e atividades típicas de engenharia de software pode constituir a base para muitas melhorias como, por exemplo: melhoria na qualidade do produto final, controle adequado dos requisitos de software, rastreabilidade dos dados, controle maior dos lideres sobre seus projetos, um aumento significativo na satisfação do cliente. A motivação para que os Gestores de projetos adotem modelos que deixem seus modelos mais maduros são os históricos das empreitadas em desenvolvimento que mostram que o mau gerenciamento do projeto é a causa de ¾ das falhas (DoD) e de dezesseis fatores associados as falhas, os seis primeiros são específicos do domínio do Gerente de Projeto e outros três são indiretamente relacionados ao mesmo domínio. Qualidade não é uma ação, é um hábito Aristóteles. A falta de uma cultura forte em planejamento e acompanhamento de projeto pode prejudicar a qualidade no produto final de um projeto de desenvolvimento de software. Com o treinamento em Gestão de Projetos, pôde-se perceber a necessidade de zelar pela qualidade em qualquer projeto que esteja sendo desenvolvido. Com a implantação das práticas de Gestão de Projetos, uma maior visibilidade pode ser alcançada tanto pela gerência quanto pelos desenvolvedores, o que pode ser comprovado na melhoria da qualidade da documentação do projeto, e pela possibilidade de priorização e o tratamento antecipado dos pontos críticos (riscos). Desde o início da década o CMM vem sendo implantado em várias empresas. O principio fundamental deste modelo diz que a qualidade do produto de software é alcançada através da melhoria da qualidade de seus processos (SANDERS et al, 1994). O CMM consegue ajudar o gestor da qualidade de um projeto de desenvolvimento de software a tomar decisões baseado em dados e não em suposições, tentando assim, garantir que o produto final tenha todas as características determinadas pelos clientes através da melhoria contínua dos processos. Fonte MAGNO, Patrícia Baraúna. Qualidade na gestão de projeto de desenvolvimento de software. Disponível em: <http://www.techoje.com.br/site/techoje/categoria/detalhe_artigo/242>. Acesso em: 21 maio 2009. 5