Qualidade Na Indústria De Software Através Das Normas Iso e Do Modelo CMM

Share Embed


Descrição do Produto

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002

QUALIDADE NA INDÚSTRIA DE SOFTWARE ATRAVÉS DAS NORMAS ISO E DO MODELO CMM

Carlos Henrique Rodrigues Sarro UNIMEP – Universidade Metodista de Piracicaba – Mestrado Profissional em Sistemas de Informação Rodovia do Açúcar, Km 156 - Caixa Postal 68 - CEP 13.400-911 - Piracicaba, SP

Dagoberto Ganeo Dellai UNIMEP – Universidade Metodista de Piracicaba – Mestrado Profissional em Sistemas de Informação Rodovia do Açúcar, Km 156 - Caixa Postal 68 - CEP 13.400-911 - Piracicaba, SP

David Lourenço da Costa UNIMEP – Universidade Metodista de Piracicaba – Mestrado Profissional em Sistemas de Informação Rodovia do Açúcar, Km 156 - Caixa Postal 68 - CEP 13.400-911 - Piracicaba, SP

Rafael Ferreira Alves UNIMEP – Universidade Metodista de Piracicaba – Mestrado Profissional em Sistemas de Informação Rodovia do Açúcar, Km 156 - Caixa Postal 68 - CEP 13.400-911 - Piracicaba, SP

Abstract Over the last decades, several industries, such as the automotive, the aviation, the pharmaceutical, and the civil construction, among others, have gone through processes aimed to improve the quality of their products. The software industry has also followed the same trend, motivated by the globalization of services, facilitated by the Internet explosion, and a stronger presence of the emergent countries in software production, such as India. This has made the software-producing companies seek for mechanisms that guarantee the quality of all processes involved in the creation and maintenance of their products. The ISO (International Standardization Organization) 9000 Series Standards, and the CMM model (Capability Maturity Model) developed by SEI (Software Engineering Institute), offer reliable standards to achieve quality software products. Keywords: information systems, software quality, capability maturity model

I – Introdução Segundo CYMBALISTA (2000), a certificação de sistemas de garantia de qualidade como a série de normas ISO 9000, pode fornecer instrumentos para que as empresas tenham seus produtos colocados no mercado internacional com maior competitividade, pois favorece a garantia de bons produtos e serviços. Ainda segundo CYMBALISTA (2000), em tempos de economia globalizada, só sobreviverão os países que conseguirem ter seus produtos aceitos no mercado internacional. Nesse contexto, a indústria de software mundial busca se adaptar a essa nova realidade mundial através do uso de métodos já utilizados em outras indústrias, como as normas ISO série 9000, e também através de novos modelos com características específicas que envolvem a atividade de desenvolvimento de software, como o CMM desenvolvido pelo SEI. Nesse sentido, qualidade vai além da definição de ENEGEP 2002

ABEPRO

1

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002

PRESSMAN (2000), onde qualidade de software é a conformidade com requisitos funcionais e de desempenho explicitamente declarados, a padrões de desenvolvimento claramente documentados e a caraterísticas ímplicitas que são esperadas de todo software profissionalmente desenvolvido, e que segundo FURLAN (1996), produtos com baixa qualidade podem chegar a consumir 70% do tempo do ciclo de vida de um sistema com correções e manutenções, o que representa um custo extremamente alto no contexto do desenvolvimento do software. Qualidade na indústria de software envolve segundo SANT’ANNA & GUERRA (2002), todo o processo que irá resultar no produto de software concentrando seus esforços na busca da qualidade da produção e manutenção, ou seja, a avaliação não termina com o produto acabado, sendo a busca da qualidade um processo contínuo onde os produtos acabados e em uso sofrem análises constantes como parte da estratégia de melhoria para a criação de novos produtos. A atividade de construção de softwares, é de acordo com COSTA (2002), uma das atividades mais complexas do ser humano, se não a mais complexa, pois envolve o trabalho com um grande número de variáveis que se relacionam e possuem dependências entre elas. Poucos projetos fracassam pela falta de capacidade técnica caracterizada pelo uso de metodologias de engenharia de software e linguagens de programação, mas sim por erros em processos que envolvem a comunicação entre o usuário e o desenvolvedor, gerando produtos fora da especificação e que não atingem os objetivos propostos, em um processo parecido com o que aconteceu na construção da torre de Babel descrito na bíblia sagrada, onde a confusão de idiomas fez com que o produto final (a torre) fosse abandonado pela impossibilidade de comunicação entre os construtores (desenvolvedores). Segundo PIRES (2002), modelos como o CMM envolvem uma gerência de processos e não de projetos, sendo que a gerência de processos abrange todos os projetos em execução e uma série de outras atividades, como a gerência de mudanças, de configuração e de controle de qualidade, tratando da tarefa de organização de desenvolvimento como um todo e exigindo diferentes gerentes com especialidades distintas. Segundo FURLAN (1996), existe ainda um aspecto empresarial importante que diz respeito a urgência na conscientização de dirigentes ligados à area de informática, de que investimento na qualidade dos sistemas em lugar da quantidade, é fator primordial para que suas instalações possam acompanhar o progresso metodológico e tecnológico, o que permite uma prestação de serviços de informações também de alta qualidade, credora de inteira confiança dos usuários. Esse trabalho está organizado da seguinte forma: a seção II apresenta as normas da série ISO aplicadas na indústria de software, a seção III apresenta o modelo CMM e dados estatísticos de sua utilização, a seção IV fornece uma comparação entre as normas ISO e o modelo CMM, e a seção V apresenta as conclusões sobre esse estudo, indicando necessidades de pesquisas futuras. II – Normas ISO Aplicadas à Indústria de Software De acordo com WEBER & ET AL (2001), a série de normas ISO publicadas inicialmente em 1987, padronizaram internacionalmente os requisitos de garantia de qualidade que fornecedores de software deveriam ter para atender a grandes compradores. Essa requisição de qualidade é ponto chave na obtenção de espaço dentro dos blocos de mercados consumidores internacionais como a comunidade européia, mercosul e ALCA. Também de acordo com WEBER & ET AL (2001), dentro da família de normas ISO 9000, as normas 9001, 9002 e 9003 podem ser utilizadas como requisitos entre clientes e fornecedores, sendo que a ISO 9003 cobre as atividades de inspeção e ensaio final, a ISO 9002 as atividades de produção e serviços associados, e a ISO 9001 todo o ciclo de vida de um produto ou serviço como os de software, que inclui as fases de projeto (engenharia, projetos lógico e físico), desenvolvimento (programação) e serviços associados ENEGEP 2002

ABEPRO

2

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002

(manutenção e atualização de versões). Essas normas sofrem atualizações periódicas, sendo que a última em uso é a de 2000. A ISO 9001:1994, estabelece uma estrutura de 20 requisitos divididos em grupos, de acordo com características como estruturação da empresa, relacionados ao ciclo de vida do produto ou serviço e retroalimentação e melhoria (Tabela 1). No. Título do Requisito da ISO 9001:1994 Requisito 4.1 Responsabilidade pela administração 4.1.3 Análise crítica pela administração 4.2 Sistema da qualidade 4.3 Análise crítica de contrato 4.4 Controle de projeto 4.5 Controle de documentos e dados 4.6 Aquisição 4.7 Produto fornecido pelo cliente 4.8 Identificação de rastreabilidade 4.9 Controle de processo 4.10 Inspeção e ensaio 4.11 Controle de equipamentos de inspeção, medição e ensaio 4.12 Situação da inspeção e ensaio 4.13 Controle de produto não conforme 4.14 Ação corretiva e preventiva 4.15 Preservação, armazenamento, embalagem e entrega 4.16 Controle de registros da qualidade 4.17 Auditoria interna 4.18 Treinamento 4.19 Serviços associados 4.20 Técnicas estatísticas (1) E: Estrutural; P: Relacionado ao ciclo de vida do produto ou serviço; R: Retroalimentação/melhoria. Tabela 1 - Estrutura de Requisitos da ISO 9001:1994

Tipo de Requisito (1) E R E P P E P E P P P P P E R P E R E P E

Ainda segundo WEBER & ET AL (2001), a ISO criou 4 categorias genéricas de produtos, e à partir dessa divisão criou diretrizes específicas para a implementação de sistemas de qualidade para cada uma delas, sendo que o produto software é atendido pela ISO 9000-3 e complementado pela ISO/IEC 12207 que trata dos processos que compõem o ciclo de vida do software, sendo fundamental seu uso para auxiliar na implantação do sistema de gestão da qualidade por indústrias do setor. O processo de certificação ISO, segundo CYMBALISTA (2000), leva de 6 a 10 meses e envolve os seguintes passos: • Primeiro o reconhecimento, pela alta administração, pelo pessoal de qualidade, produção e marketing, da necessidade de modelos de gerenciamento de qualidade padronizados, como forma de agregar valor aos seus produtos; • Segundo, entender exatamente como esses modelos funcionam através de pesquisas em livros e revistas, cursos, seminários e palestras; • Terceiro, escolher qual a melhor norma que atende as expectativas da empresa; • Quarto, iniciar um processo de implantação através de pessoal interno, consultores externos, ou uma equipe mista;

ENEGEP 2002

ABEPRO

3

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002



Quinto, solicitar a auditoria de uma empresa certificadora. No Brasil, a lista de empresas certificadoras pode ser obtida junto ao INMETRO (Instituto Nacional de Metrologia e Qualidade Industrial), através do site http://www.inmetro.gov.br. A certificação tem prazo de 3 anos renováveis, devendo sofrer auditorias semestrais. De acordo com pesquisa feita pela ISO, em 1999 haviam 343.643 empresas certificadas em 150 países, sendo que desse total o setor de TI (Tecnologia da Informação) teve 6.706 certificados, ocupando o 14o lugar entre 39 setores identificados. (WEBER & ET AL, 2001). III – Modelo CMM De acordo com PESSOA (2001), o modelo CMM (Modelo de Maturidade da Capacidade), foi desenvolvido em 1987 pelo SEI (http://www.sei.cmu.edu), que é um instituto financiado pelo governo americano e está ligado a universidade Carnegie Mellon de Pitsburg. O CMM foi inicialmente desenvolvido para o DoD (Departament of Defense), que é o departamento de defesa dos Estados Unidos, com o objetivo de garantir que os projetos militares de software tivessem um padrão de qualidade a ser seguido. Baseado nos conceitos de Qualidade Total estabelecidos por Crosby, que vê a implantação de programas de qualidade total como um processo que segue um amadurecimento gradativo. (WEBER & ET AL, 2001). Segundo PAULK (1999), o CMM é o modelo para implementar qualidade nos processos de desenvolvimento de software que tem maior influência na indústria mundial desse setor. Esse sucesso, segundo PESSOA (2001), se deve ao fato de ser um modelo centrado especificamente para essa atividade, enquanto outros modelos como o ISO são mais genéricos, não enfocando diretamente atividades de projeto de software, sendo que sua implementação pode levar ,entre outros, aos seguintes benefícios : • Redução no número de erros nos sistemas; • Menor tempo de desenvolvimento (com qualidade); • Ganhos de produtividade; • Retornos de investimento que podem chegar na faixa de 5:1, ou seja, ganho de 5 reais para cada real investido. Segundo WEBER & ET AL (2001), o modelo CMM estabelece 5 níveis para indicar o estágio de maturidade que uma organização possui para desenvolver software. Esses níveis são: inicial, repetível, definido, gerenciado e otimizado (tabela 2), que estabelecem uma evolução gradativa de um processo AD HOC e caótico, até um processo disciplinado e continuamente otimizado. Para atingir esses níveis, os componentes normativos definidos pelo SEI e que foram publicados em SEI (2000), se dividem em 18 áreas-chave (KPAs). Cada área chave é detalhada nas práticas-chave , que são os quesitos a serem cumpridos na implantação do modelo e são em número de 316. As práticas-chave especificam “o quê” deve ser cumprido, exigindo documentos, treinamentos ou políticas definidas para as atividades, mas não especificam “como” elas devem ser implementadas. (WEBER & ET AL , 2001). Nível 1 Inicial

2 Repetível

ENEGEP 2002

Características Desenvolvimento com qualidade depende dos esforços heróicos e competência das pessoas

KPAs • Nenhuma

• Gerenciamento de requisitos • Planejamento do projeto de software Documentação do gerenciamento de • Acompanhamento do projeto de projetos e uso de práticas bemsoftware sucedidas em outros projetos • Gerenciamento do subcontrato de software ABEPRO

4

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002

3 Definido

Processo de desenvolvimento definido, padronizado, documentando e compreendido

Processo é medido e gerenciado quantitativamente para tomada de 4 Gerenciado decisões, podendo ser previsto seu desempenho por essas medições

• Gerenciamento da qualidade de software • Gerenciamento da configuração de software • Foco no processo da organização • Definição do processo da organização • Programa de treinamento • Gerenciamento integrado de software • Engenharia do produto de software • Coordenação de intergrupos • Revisões (peer reviews) • Gerenciamento quantitativo do projeto • Gerenciamento da qualidade do software

O foco está na melhoria contínua do • Prevenção de defeito processo, onde mudanças 5 • Gerenciamento da mudança de Otimizado tecnológicas e do próprio processo tecnologia são gerenciadas • Gerenciamento da mudança de processo Tabela 2 - Níveis de Maturidade CMM Como CMM é um modelo que segundo PIRES (2002), procura dar às empresas um processo de produção de software que funcione através de uma abordagem não só na qualidade do produto final, mas também principalmente no processo, existe a necessidade de uma mudança na cultura da empresa, de forma que todos estejam comprometidos com seu projeto de implantação. Segundo estatísticas publicadas em HERBSLEB & ET AL (1997), feitas à partir de uma pesquisa realizada com 138 empresas dos Estados Unidos e Canadá fornecedoras de produtos e serviços para o governo, foi constatado que: • 25% das empresas atingiram o nível 2 de maturidade em 21 meses ou menos. Outras 25% em 37 meses ou mais; • 25% das empresas passaram do nível 2 para o nível 3 em 17 meses ou menos. Outras 25% em 31 meses ou mais; • As empresas obtiveram em média 35% de ganhos de produtividade ao ano com a implantação do modelo; • O número de defeitos em produtos apresentou uma redução média de 39% ao ano; • A qualidade do produto final e a satisfação do cliente saltou de 20% no nível 1 para 100% quando o nível 3 foi atingido; • 84% das empresas afirmaram que a implantação de CMM tornou seus processos mais rígidos e burocráticos. IV – Comparando o Modelo CMM com as normas da série ISO 9001 Segundo PAULK (1995), o modelo CMM e as normas da série ISO 9001 trabalham com a qualidade e o gerenciamento de desenvolvimento de produtos e processos de software. Segundo PESSOA & SPINOLA (1999), existe uma diferença significativa entre produto de software e processo de software, sendo que : ENEGEP 2002

ABEPRO

5

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002



Produto de software, é o conjunto completo ou qualquer um dos itens isolados de : programas, documentação, procedimentos e dados entregues ao cliente para atender suas necessidades computacionais, e ; • Processo de software, é a seqüência de passos realizados para atingir determinado propósito, ou seja, processo de software é o que os desenvolvedores fazem usando procedimentos, métodos (engenharia de software), ferramentas (linguagens de programação), e equipamentos para gerarem os produtos de software. As normas da série ISO 9001 e o modelo CMM apresentam alguns pontos em comum como a necessidade de documentação seguindo o princípio “Diga tudo o que você faz, faça tudo o que você diz”. Apesar disso, de acordo com PAULK (1995), as normas da série ISO 9001 e o modelo CMM apresentam diferenças em suas filosofias estruturais (tabela 3), pois enquanto a ISO 9001 identifica os requerimentos mínimos para a qualidade do produto de software , o modelo CMM está baseado na necessidade de um processo de software que seja contínuo e que vise a melhoria da qualidade que não termina com os produtos de software prontos e entregues ao cliente, trabalhando na melhoria contínua dos processos de software, podendo gerar novos processos para otimizar processos que já se encontram em uso. Além dessas diferenças, existe ainda o próprio nível de detalhamento dos requisitos necessários. Por exemplo, a seção 4 da ISO 9001 tem cerca de 5 páginas de descrição dos requerimentos; as seções 5, 6 e 7 da ISO 9000-3 totalizam 11 páginas, enquanto que o modelo CMM é descrito em mais de 500 páginas. ISSO 9001 Foco no produto de software Estabelece critérios mínimos para um nível de qualidade aceitável

CMM Foco no processo de software Busca uma melhoria contínua da qualidade através dos níveis de maturidade É utilizada em outras indústrias como a Foi criada exclusivamente para a indústria de hardware e prestação de serviços de software Baseada em lista de 20 requisitos Baseada em 18 áreas-chave (KPAs) que se subdividem em 316 práticas- chave Certificação aceita como padrão de Certificação usada mais para atender a qualidade para mercados internacionais necessidades de melhoria de qualidade interna do que externa Tempo médio para certificação de 6 a 10 Tempo médio para atingir o nível 2 de meses maturidade de 24 meses Tabela 3 - Comparação ISO 9001 e CMM PESSOA & SPINOLA (1999), afirmam ainda que um “casamento” entre as normas ISO e o modelo CMM é o processo ideal na busca da qualidade para a indústria de software. Isto porque a implantação das normas ISO traz para a empresa a cultura da qualidade, é abrangente, e cria uma infraestrutura ideal para o uso eficiente do modelo CMM. A idéia é usar as normas ISO como ponto de partida e o modelo CMM como meta a ser atingida. V – Conclusão Nesse trabalho são apresentados, de maneira suscinta, 2 métodos para implementar qualidade na indústria de software: as normas da série ISO 9001 e o modelo CMM. Estabelecendo uma comparação entre eles, e apresentando seus pontos de convergência. Esses métodos sofrem constantes atualizações segundo BELLOQUIM (2002) e WEBER & ET AL ( 2001). Atualmente estão em estudo as normas ISO 15504, desenvolvida pelo projeto ENEGEP 2002

ABEPRO

6

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002

SPICE (Software Process Improvement and Capability dEtermination), e o CMMI (CMM Integrated) que cria vários CMMs como: • SW-CMM (Software CMM), para acompanhamento do processo de software; • P-CMM (People CMM) para medir o nível de maturidade dos processos de gestão de RH nas organizações de software; • SE-CMM (Systems Engineering CMM), para o desenvolvimento de sistemas completos, e o ; • SA-CMM (Software Acquisition CMM), para seleção, compra e instalação de software adquirido por terceiros. Essas atualizações levam à necessidade de novos estudos comparativos entre os métodos e seus pontos de convergência, como o realizado por PAULK (1999) . Observa-se que o modelo CMM vem sendo focado como o método que especializa o processo de construção de software, mediante a caracterização de níveis de qualificação em seu ciclo de desenvolvimento. Bibliografia BELLOQUIM, Átilla. Qualidade de Software: O que há de novo no mercado ?. Developers’ Magazine, Ano 6, No. 68, Abril 2002, Págs. 10-11. Axcel Books do Brasil Editora Ltda. CYMBALISTA, Melvin. Porque e quando buscar a certificação de qualidade. Conectivo, No. 43, Setembro 2000, Págs. 2-3. Fundação Vanzolini. Disponível em: http://www.vanzolini.org.br/publica/boletim43/ COSTA, Arisio. A torre de Babel e a Qualidade de Software. Developers’ Magazine, Ano 6, No. 68, Abril 2002, Págs. 24-25. Axcel Books do Brasil Editora Ltda. FURLAN, José D. Engenharia da Informação. São Paulo: MCGraw-Hill, 1996. HERBSLEB, James, ZUBROW, David, GOLDENSON, Dennis, HAYES, Will, PAULK, Mark C. Software Quality and the Capability Maturity Model. Comunnications of ACM, Vol. 40, No. 6, June 1997, pp. 30-40. PAULK, Mark C. How to ISO 9001 Compares with the CMM. IEEE Software, January 1995, pp. 74-83. PAULK, Mark C. Using the Software CMM With Good Judgment. ASQ Software Quality Professional, Vol. 1, No. 3, June 1999, pp. 19-29. PAULK, Mark C. Analyzing the Conceptual Relationship Between ISO/IEC 15504 (Software Process Assessment) and the Capability Maturity Model for Software, Proceedings of the Ninth International Conference on Software Quality, Cambridge MA, 4-6 October 1999, pp 293-303. PESSOA, Marcelo Schneck P. Padrões de qualidade já podem ser aplicados também ao desenvolvimento de software. Conectivo, No. 45, Fevereiro 2001, Págs. 2-3. Fundação Vanzolini. Disponível em: http://www.vanzolini.org.br/publica/boletim45/ ENEGEP 2002

ABEPRO

7

XXII Encontro Nacional de Engenharia de Produção Curitiba – PR, 23 a 25 de outubro de 2002

PESSOA, Marcelo Schneck P., SPINOLA, Mauro de Mesquita. Gestão do Desenvolvimento de Software. I Congresso Brasileiro de Gestão de Desenvolvimento do Produto de Software, Belo Horizonte 1999. PIRES, Fátima. Informativo Técnico – Centro de Computação. No. 70, Janeiro-Fevereiro 2000. UNICAMP. Disponível em: http://www.revista.unicamp.br/infotec/informacao/inf70.htm PRESSMAN, R. Software Engineering: A Practioner’s Approach. São Paulo: MCGrawHill, 2000. SEI, Software Engineer Institute - Carnegie Mellon University. The Capability Maturity Model: Guidelines for Improving the Software Process. 14 ed. EUA: Addison Wesley Longman, 2000. SANT’ANNA, Mary L., GUERRA, Ana C. Qualidade de Produto ou Qualidade de Processo de Software. Developers’ Magazine, Ano 6, No. 68, Abril 2002, Págs. 21-23. Axcel Books do Brasil Editora Ltda. WEBER, Kival C., ROCHA, Ana Regina C. , NASCIMENTO, Célia J. Qualidade e Produtividade em Software. São Paulo: Makron Books, 2001.

ENEGEP 2002

ABEPRO

8

Lihat lebih banyak...

Comentários

Copyright © 2017 DADOSPDF Inc.