Vous êtes sur la page 1sur 48

UNIVERSIDADE FEDERAL DO ESTADO DO RIO DE JANEIRO

ESCOLA DE INFORMTICA APLICADA


CURSO DE BACHARELADO EM SISTEMAS DE INFORMAO

MODELOS DE QUALIDADE DE SOFTWARE

LUIZ FERNANDO SALGUEIRO E MARCUS VINCIUS DO ARTE

ORIENTADOR: PROF. MARCIO BARROS

Agosto 2005
MODELOS DE QUALIDADE DE SOFTWARE

Projeto de Graduao apresentado Escola


de Informtica Aplicada da Universidade
Federal do Estado do Rio de Janeiro
(UNIRIO) para obteno do ttulo de
Bacharel em Sistemas de Informao

LUIZ FERNANDO SALGUEIRO E MARCUS VINCIUS DO ARTE

ORIENTADOR: PROF. MARCIO BARROS

2
Sumrio

1 Introduo............................................................................................................07
1.1 Objetivos..............................................................................................................08
1.2 Estrutura do texto...............................................................................................08
2 Qualidade de Software.......................................................................................09
2.1 Processo...............................................................................................................10
2.2 Projeto.................................................................................................................11
2.3 Ciclo de Vida............................................................................. .........................13
2.4 Controle da Qualidade................................................................... ...................14
2.5 Garantia da Qualidade..................................................................... ................15
2.6 Qualidade dos Produtos de Software............................ ..................................16
2.7 Mtricas.............................................................................. ................................18
2.8 Concluso .................................................................................. ........................19
3 Norma............................................................................ .....................................21
3.1 Norma ISO.................................................... .....................................................21
3.2 Histrico das normas ISO........................................... .....................................22
3.3 Norma ISO 12207.......................................................................... ....................23
3.3.1 Processos fundamentais................................. ...................................................25
3.3.2 Processos de apoio.......................................................... ...................................26
3.3.3 Processos organizacionais.............................................................. ...................27
3.4 NBR ISO/IEC 9126.......................................... .................................................28
3.4.1 Subcaractersticas de Qualidade de Software segundo a ISO/IEC 9126......28
3.5 ISO 9001:2000.................................................................................. .................30
3.5.1 Responsabilidade da Administrao............................... ................................32
3.5.2 Gerenciamento dos Recursos...................................... .....................................33
3.5.3 Realizao do Produto.......................................................... ............................34
3.5.4 Medio, Anlise e Melhoria.............................................................................34
3.6 Modelo de Qualidade CMM-Capability Maturity Model .............................35
3.6.1 Maturidade................................................................................... .....................36
3.6.2 Nveis............................................................................................ ......................36
3.6.3 Descrio dos Nveis CMM.......................................................... ....................37

3
3.6.4 Entendendo os nveis de maturidade.................................................................39
3.7 CMMI................................................................................ ..................................41
4 Concluso............................................................................. ...............................45
Referncias Bibliogrficas...................................................... ..........................48

4
Lista de Figuras

Figura 1 Processo de software......................................................................... 10

Figura 2 Histrico Normas ISO....................................................................... 22

Figura 3 Processo do ciclo do vida do software.............................................. 24

Figura 4 Caractersticas da qualidade de software.......................................... 28

Figura 5 Ciclo PDCA...................................................................................... 30

Figura 6 Organizaes maduras X Organizaes imaturas............................ 36

Figura 7 Nveis de Maturidade....................................................................... 38

Figura 8 Organizaes certificadas................................................................. 40

5
Resumo

As necessidades e exigncias de mercado tm influenciado as empresas produtoras


e prestadoras de servios de software a alcanar alto patamar de qualidade e produtividade
para enfrentarem a competitividade no setor. Muitas dessas organizaes buscam novos
paradigmas que conduzam a uma melhoria contnua e progressiva da qualidade de seus
processos, atenuando os problemas no desenvolvimento de seus produtos.

Pensando nisso, resolvemos realizar uma pesquisa sobre a qualidade de software e


os principais padres existentes, hoje, no mercado. Sero apresentadas abordagens
importantes, sobre as normas ISO 9000, os modelos CMM e CMMI, destacando suas
principais caractersticas e aplicabilidade.

O tema proposto faz parte do cotidiano da organizao em que trabalhamos, sendo


considerado um de nossos objetivos em relao ao plano de carreira profissional.
Acreditamos que este foi um dos grandes fatores de motivao para a pesquisa realizada.

6
1 Introduo

A Engenharia de Software, embora possua vrias definies, uma disciplina que


pode ser vista de forma objetiva como o uso dos princpios bsicos da engenharia com a
finalidade de desenvolver software de maneira sistemtica e econmica, resultando em
produtos confiveis e eficientes [Pressman, 2002].

Ela agrega trs elementos fundamentais:

Mtodos Fornecem uma base tcnica de como construir o software. Os mtodos


incluem um amplo conjunto de tarefas, que abrange anlise de requisitos, projeto,
construo de programas, teste e manuteno. Mtodos de engenharia de software
repousam num conjunto de princpios bsicos, que regem cada rea da tecnologia e
incluem tambm atividades de modelagem;

Ferramentas Oferecem suporte aos mtodos. Quando ferramentas so integradas,


de modo que a informao criada por uma delas possa ser usada por outra, um
ambiente para apoio ao desenvolvimento de software estabelecido;

Processos Estabelecem as ligaes ente os mtodos e as ferramentas. O processo


o adesivo que mantm unidas as camadas de tecnologia e permite o
desenvolvimento racional e oportuno de sistemas para computadores.

Obter qualidade nos processos e produtos de software no uma tarefa trivial. O


desconhecimento de ferramentas e a resistncia aos processos internos dentro de um
ambiente organizacional so alguns dos fatores que dificultam atingir os objetivos de
qualidade. No entanto, nada mais decepcionante do que produzir um software que no
satisfaa as necessidades dos clientes.[Maldonado, 2001]

As caractersticas da organizao, do pessoal tcnico e do domnio da aplicao podem


causar impacto na qualidade e na produtividade de processos e, consequentemente, dos
produtos. Alm de conhecer os mtodos e processos de engenharia de software, preciso
saber como avali-los para propiciar uma base slida evoluo do processo. A

7
disponibilidade de uma base histrica de dados abrangendo as diversas perspectivas e os
fatores que afetam o desenvolvimento tambm um elemento indispensvel nesse cenrio.

1.1 Objetivos

Com base no conhecimento adquirido, este trabalho possui os seguintes objetivos:

Compreender o papel da qualidade e a sua importncia no de desenvolvimento


de sistemas;

Identificar os principais fatores para um produto de software de qualidade;

Apresentar alguns modelos de qualidade do processo de desenvolvimento


software, destacando seus principais tpicos.

1.2 Estrutura do texto

Produzir software de qualidade exige, tambm, o entendimento do que


qualidade de software. A primeira parte do nosso trabalho foi baseada em uma
pesquisa voltada para os conceitos de: qualidade, processo, ciclo de vida, projeto,
controle e garantia da qualidade e, por ltimo, mtricas. Apresentaremos as partes
envolvidas em cada um destes itens e suas principais caractersticas.

O foco da segunda parte deste documento direcionada aos modelos e


normas para avaliao e melhoria de processos de software , visto que a conquista
de uma certificao para uma empresa significa alcanar um padro internacional
de qualidade.

8
2- Qualidade de Software

Qualidade , fundamentalmente, a adequao ao uso; ou ainda, a totalidade das


caractersticas de um produto ou servio que se relacionam com sua capacidade de atender
s necessidades de um cliente [Campos,1992]. A qualidade atualmente o principal fator
que o consumidor busca quando decide pela aquisio de um produto ou servio e pode ser
entendida como o atendimento das necessidades ou aspiraes do usurio, seja ele uma
pessoa ou uma empresa.

A qualidade deve ser incorporada a um produto ou servio e requer a conjugao de


esforos de todos os membros de uma empresa, a integrao de todas as funes e recursos
que ela dispe, desde a alta administrao at o mais simples empregado. A estruturao de
recursos, mtodos, passos e equipamentos envolvidos com a qualidade constitui o sistema
de qualidade da empresa.

Demonstrar que a empresa capaz de atingir e manter a qualidade de seus produtos


e servios e continuamente aperfeio-la um corolrio deste esforo e, por sua
repercusso na produtividade e competitividade, vem merecendo permanente cuidado das
organizaes lderes em suas reas de atividade. O comprometimento com a poltica de
qualidade uma responsabilidade do mais alto nvel da administrao.

Os elementos do sistema de qualidade devem estar estruturados para estabelecer um


controle adequado e uma garantia sobre todos os processos operacionais que afetam a
qualidade do produto ou servio. Aes preventivas devem ser enfatizadas para que se evite
a ocorrncia de problemas sem sacrificar a capacidade de responder e de corrigir falhas que
possam ocorrer.

9
2.1 Processo

Negcios so viabilizados por intermdio de processos. Os processos, portanto, so


importantssimos em uma organizao bem sucedida. comum o entendimento de
processo como uma seqncia de etapas executadas para realizar um determinado objetivo
[Campos, 1992]. Em um ambiente organizacional existem diversos processos, de produo,
de gerncia, de controle, de planejamento estratgico, etc.

Processos so a rede produtiva de uma organizao, onde cada n um ponto de partida


para outros novos processos, cada qual com suas caractersticas, peculiaridades e
tecnologias especficas, mas onde todos concorrem para um nico fim: o negcio.

O processo de software envolve mtodos, ferramentas e pessoas. Esse conjunto deve


estar integrado para que um processo funcione de maneira eficaz. Para um processo
funcionar corretamente, ele deve possuir:
Procedimentos e mtodos que descrevam a relao entre as tarefas;
Ferramentas e equipamentos que ofeream suporte realizao das tarefas,
simplificando e automatizando o trabalho;
Pessoas com perfil adequado, treinadas nos mtodos e nas ferramentas para
poderem realizar as atividades previstas, adequadamente.

Figura 1 - Processo de Software (adaptado Paulk, 1995).

10
2.2 - Projeto

Um projeto um empreendimento temporrio com o objetivo de criar um produto ou


um servio nico. Pode ser considerado temporrio porque possui um comeo e um fim
bem definidos. Pode ser nico porque o produto ou servio produzido de alguma forma
diferente de todos os outros produtos ou servios semelhantes [Zwass, 1998]. uma
representao de engenharia de algo que vai ser construdo. Os projetos so desenvolvidos
em todos os nveis da organizao e podem envolver uma nica pessoa ou milhares delas.

Os projetos tm um ciclo de vida formado por etapas distintas, que se subdividem em


tarefas ou atividades que podem ou no ser executadas de uma nica vez. Um projeto
composto por uma seqncia de atividades, cujo planejamento essencial para que ele se
encerre em um prazo e custo adequados.

Projetos possuem um conjunto de etapas pelas quais progridem e, no final de cada


etapa, um produto concludo. O nmero de fases, seus nomes e seus inter-relacionamentos
variam de caso a caso. De forma geral podemos dizer que um projeto possui quatro etapas
genricas [Zwass, 1998] :

Conceitualizao - formulao do escopo do projeto, definio do problema e


de uma possvel soluo para o mesmo. Nesta fase realizado um estudo da
viabilidade e um plano estratgico apresentado;

Desenvolvimento - com base nos resultados e concluses da fase anterior, inicia-


se o desenvolvimento dos componentes e a integrao das partes envolvidas
como um todo;

Execuo - realizada uma simulao do que ir ser implementado. So feitos


alguns testes para confirmar se o projeto foi construdo corretamente dentro do
que foi solicitado;.

Finalizao - a considerada a ltima etapa tendo como objetivo corrigir os


erros que foram identificados na fase anterior. Com base nos requerimentos
completos produz-se um desenho final para a soluo.

11
As partes envolvidas num projeto so indivduos e organizaes diretamente
envolvidas ou aqueles cujos interesses podem ser afetados, de forma positiva ou negativa,
no decorrer do seu desenvolvimento ou mesmo aps a sua concluso. Essas partes podem
tambm exercer variadas influncias no projeto e nos seus resultados [PMBOK, 2003]. A
equipe de gerncia do projeto deve identificar as partes envolvidas, conhecer suas
necessidades, expectativas e, ento, gerenciar e influenciar os requisitos de forma a garantir
o seu pleno sucesso. Vejamos quais so as partes envolvidas em um projeto:

Gerente do projeto indivduo responsvel pela gerncia do projeto;

Cliente indivduo ou organizao que far uso do produto do projeto. Podem


existir muitos tipos de clientes. Por exemplo, os clientes de um novo produto
farmacutico incluem os mdicos que o prescrevem, os pacientes que o tomam e as
companhias de seguro que pagam por ele. Em muitas reas de aplicao, clientes e
usurios so sinnimos, enquanto em outras o termo cliente se aplica entidade que
comprou o resultado do projeto, enquanto usurios so aqueles que usaro
diretamente o produto do projeto;

Organizao executora empresa cujos funcionrios estaro mais diretamente


envolvidos na execuo do projeto;

Membros da equipe do projeto o grupo que realiza o trabalho do projeto;

Patrocinador indivduo ou grupo dentro da organizao executora que prov os


recursos financeiros, em dinheiro ou espcie, para o projeto.

No contexto da engenharia de software, a maioria das organizaes encontra os


seguintes projetos: [Pressman,2002]

Projetos de desenvolvimento conceitual: so iniciados para explorar algum conceito


novo de negcio ou a aplicao de alguma tecnologia nova;

Projetos de desenvolvimento de novas aplicaes: so efetuados como conseqncia


de um pedido especfico de cliente;

12
Projetos de aperfeioamento de aplicaes: ocorrem quando o software existente
passa por modificaes importantes na funo, desempenho ou interfaces que so
observveis pelo usurio final;

Projetos de manuteno de aplicaes: corrigem, adaptam ou ampliam o software


existente em aspectos que no so imediatamente bvios ao usurio final;

Projetos de reengenharia: so efetuados com o objetivo de reconstruir um sistema


existente (herdado) no seu todo ou em parte.

2.3 - Ciclo de Vida

O conjunto de fases de um projeto conhecido como ciclo de vida do projeto


[PMBOK, 2003]. Um projeto normalmente dividido em vrias fases visando um melhor
controle gerencial e uma ligao mais adequada de cada um dos seus processos
operacionais. No ciclo de vida dos projetos, alguns pontos so definidos: que trabalho
deve ser realizado; quem deve estar envolvido em cada fase; qual o valor estimado do seu
custo; quais as datas de incio e concluso das atividades; quais os riscos etc.

O processo do ciclo de vida de software tem como principal objetivo fornecer uma
estrutura comum para que o adquirente, fornecedor, desenvolvedor, mantenedor, operador,
gerentes e tcnicos envolvidos com o desenvolvimento de software utilizem uma
linguagem comum. Esta linguagem comum estabelecida na forma de processos bem
definidos.

Os processos que envolvem o ciclo de vida do desenvolvimento de um produto de


software so agrupados em trs classes que representam sua natureza: processos
fundamentais, processos de apoio e processos organizacionais [ISO 12207]. Cada processo
definido em termos de suas prprias atividades, e cada atividade definida em termos de
suas tarefas. Uma abordagem mais detalhada sobre essas trs classes ser apresentada nos
prximos captulos.

13
2.4 Controle da Qualidade

O controle da qualidade um modelo gerencial centrado no controle do processo,


tendo como meta a satisfao das necessidades das pessoas [Campos,1992]. O objetivo
mais importante deste controle garantir a qualidade do produto para o seu cliente externo
ou interno.

A prtica consciente do controle de qualidade por todas as pessoas da empresa,


assumindo responsabilidades sobre os resultados ( do seu processo) e autoridade (meios)
sobre o seu processo, a base do gerenciamento participativo e o pilar de sustentao para
o controle da qualidade [Campos,1992].

O controle da qualidade possui trs objetivos principais :

Planejar a qualidade desejada pelos clientes: isto implica num esforo de localizar
o cliente, saber de suas necessidades, traduzir estas necessidades em caractersticas
mensurveis, de forma que seja possvel gerenciar todo processo;
Manter a qualidade desejada pelo cliente, cumprindo os padres previamente
acordados;
Melhorar a qualidade desejada pelo cliente: neste caso preciso localizar os
resultados indesejveis e utilizar um mtodo de soluo de problemas com a
finalidade de melhor-los.

O controle da qualidade envolve tambm a monitorao dos resultados especficos


do projeto, para determinar se eles esto de acordo com os padres de qualidade
previamente estabelecidos, alm de identificar formas de eliminar as causas dos resultados
insatisfatrios. Este controle deve ser executado ao longo de todo o projeto.

14
2.5 Garantia da Qualidade

A garantia da qualidade um processo sistemtico de verificao para certificar-se de


que a inspeo da qualidade e as operaes de controle esto sendo conduzidas de forma
correta, alm de verificar tambm se os setores de projeto, produo e vendas esto
trabalhando em conjunto, alinhados a um mesmo objetivo [Maldonado,2001]. Essa prtica
considerada uma atividade essencial para qualquer negcio onde um produto ou servio
ser colocado no mercado e ser comercializado.

A meta da garantia da qualidade fornecer gerncia os dados necessrios para que


fique informada sobre a qualidade do produto, ganhando compreenso e confiana de que
a qualidade do produto est satisfazendo suas metas [Pressman, 2002].

A garantia da qualidade conseguida pelo gerenciamento correto e obstinado de todas


as atividades de qualidade em cada projeto e em cada processo, buscando, sistematicamente,
eliminar totalmente as suas falhas, pela constante preocupao com a satisfao total das
necessidades do consumidor e pela participao e responsabilidade de todos na empresa.

Portanto, a garantia da qualidade envolve alguns pontos importantes [Campos,1992]:


Tradio: um cliente s poder comprar um produto ou servio com confiana se a
empresa tornar-se conhecida por sua confiabilidade ao longo do tempo. No se
consegue tradio da noite para o dia. A tradio um conceito comercialmente to
importante que fica difcil avaliar os prejuzos decorrentes de um produto defeituoso
colocado no mercado. Isto tem que ser evitado a todo o custo;

Satisfao total das necessidades do consumidor: o produto ou servio alm de no


possuir defeitos ou falhas, precisa satisfazer as caractersticas verdadeiras da
qualidade, ou seja, satisfazer s expectativas do consumidor. Sob este aspecto,
bom lembrar que as expectativas do consumidor no so fixas; elas mudam. Da o
cuidado que se deve ter com propaganda comercial, contedo do catlogo de vendas
e treinamento de pessoal, para que no sejam criadas expectativas negativas.

15
Para que uma empresa possa dizer que tem garantia da qualidade ela deve ser capaz de:
[Campos,1992]

Detectar necessidades humanas no atendidas;


Especificar produtos/servios que satisfaam a estas necessidades;
Projetar estes produtos/servios ao mais baixo custo possvel;
Projetar e operar processos que fabriquem este produtos/servios conforme as
especificaes, ao mais baixo custo;
Inspecionar os produtos de tal forma a verificar a sua conformidade com as
especificaes;
Dar assistncia tcnica e total ateno ao seu cliente, de tal forma a assegurar a sua
satisfao por um longo tempo.

2.6 Qualidade dos Produtos de Software

Qualidade de software pode ser vista como um conjunto de caractersticas que


devem ser alcanadas em um determinado grau para que o produto atenda s necessidades
de seus usurios [Weber, 2001].

Ao se desenvolver um produto de software, o objetivo no alcanar a qualidade


perfeita, mas sim a qualidade necessria e suficiente para o uso especificado, quando o
produto for entregue e realmente usado pelos usurios [Maldonado,2001]. necessrio
identificar quais so as caractersticas de qualidade necessrias para um determinado
produto de software e definir em que grau essas caractersticas precisam ser alcanadas
para satisfazer s necessidades dos usurios.

Podemos classificar um produto de software segundo as seguintes caractersticas


[Maldonado, 2001]:

Funcionalidade: refere-se existncia de um conjunto de funes, que satisfazem s


necessidades explcitas ou implcitas e suas propriedades especficas;

16
Confiabilidade: refere-se capacidade de o software manter seu nvel de
desempenho sob condies estabelecidas, por um perodo de tempo;

Usabilidade: refere-se ao esforo necessrio para usar um produto de software, bem


como o julgamento individual de tal uso por um conjunto explcito ou implcito de
usurios;

Eficincia: refere-se ao relacionamento entre o nvel de desempenho do software e a


quantidade dos recursos utilizados sob as condies estabelecidas;

Manutenibilidade: refere-se ao esforo necessrio para fazer modificaes


especficas no software;

Portabilidade: refere-se capacidade do software ser transferido de um ambiente


para o outro;

Efetividade: refere-se capacidade do produto de software possibilitar aos usurios


atingir metas especificadas com acurcia e completeza em um contexto de uso
especificado;

Produtividade: refere-se capacidade de possibilitar aos usurios utilizar uma


quantidade adequada de recursos;

Segurana: refere-se capacidade de oferecer nveis aceitveis de risco de danos a


pessoas, negcios, software, propriedade ou ao ambiente especificado;

Satisfao: refere-se capacidade de satisfazer os usurios em um contexto de uso


especificado.

Muito tem sido escrito sobre qualidade e seus vrios adjetivos. No entanto, o
fundamental que o software seja confivel, ou seja, que seja eficaz e siga os padres
exigidos pelo contexto onde ir atuar.

17
2.7 Mtricas

As mtricas e estimativas de software vm se tornando um dos principais tpicos na


Engenharia de Software com a crescente exigncia de seus consumidores pela qualidade,
rapidez, comodidade e baixo custo de implantao e manuteno. impossvel no
enxergar tais tcnicas como alavanca para um produto de melhor qualidade, com custos
adequados [Pressman, 2002].

Quando falamos de mtricas, ento, temos que ter em mente que se trata de dados
(nmeros) quantitativos que iro mostrar, em forma de indicadores, o estado atual de um
determinado projeto [Pressman, 2002]. A busca pela qualidade utilizando mtricas de
software deve ser aplicada tanto s pessoas que produzem o produto quanto ao processo em
que se desenvolve o mesmo produto. Com mtricas podemos estimar prazos de entregas
finais e ter uma viso global de todo o projeto.

Um projeto de software um processo de tomada de deciso, onde as mtricas so


usadas para fornecer uma base de identificao de procedimentos que no estejam em
conformidade com os alvos pretendidos e com as medidas de atributos de projetos, alm de
auxiliar na elaborao de novas solues, que levam melhoria da qualidade.

Quando falamos em mtricas, devemos destacar os seguintes aspectos


[Maldonado,2001] :

Tempo: tempo total do projeto, tempo nas fases de anlise, projeto, codificao
testes, tempo em reunies, tempo em retrabalho;

Preciso da estimativa de cronograma: preciso da estimativa de cronograma de


todo o projeto e de suas fases;

Esforo: esforo total do projeto, dos recursos, de pessoal, esforo em reunies de


reviso, esforo em retrabalho;

Tamanho do sistema: nmero de linhas de cdigo; pontos de funo ;

18
Nmero de erros: nmero de erros na especificao de requisitos e no projeto do
sistema, encontrados em reunies de reviso, erros de cdigo, encontrados nos teste
de unidade;

Nmero de modificaes: nmero de modificaes na especificao de requisitos,


projeto ou cdigo aps sua aprovao;

Densidade de defeitos: nmero de erros somados ao nmero de modificaes em


relao ao tamanho do sistema;

Rotatividade de pessoal: percentual de pessoas que saram, entraram ou mudaram


de funo durante o desenvolvimento do projeto;

Produtividade: nmero de cdigos produzidas por unidade de esforo;

Deteriorao do software: relao entre o esforo gasto para corrigir os problemas


aps a liberao do sistema comparado ao esforo gasto antes da liberao do
software para o usurio;

Experincia da equipe: experincia na linguagem de programao, no domnio da


aplicao, nas ferramentas, no mtodo e no processo de desenvolvimento, tempo
total de experincia do profissional.

2.8 Concluso

Vivemos, nos dias de hoje, tempo de mudanas. Mudanas muito rpidas e tambm
muito radicais. Novas tecnologias se tornam obsoletas da noite para o dia. Processos sofrem
modificaes a todo o momento interferindo, nos produtos e servios que so oferecidos a
um mercado cada vez mais competitivo. Nas empresas, os custos so rigorosamente
contabilizados. A realidade mostra, ainda, que os menores preos e a qualidade so
diferenciais importantssimos para uma clientela extremamente exigente.

Dentro desse contexto, as empresas especializadas no desenvolvimento de software,


obrigatoriamente, tm que se manter atualizadas, perseguir os critrios de qualidade

19
exigidos pelo mercado, incorporando sempre tecnologias mais apropriadas, a fim de poder
enfrentar, com sucesso, a feroz competitividade da atualidade.

No captulo seguinte, trataremos de melhoria na qualidade do processo de


desenvolvimento de software atravs de padres e normas mais conceituados do mercado.
Veremos que algumas caractersticas, tradicionalmente aceitas, so muito importantes para
que se obtenha vantagens considerveis sobre seus concorrentes.

20
3 - Norma

Uma norma um documento estabelecido por consenso e aprovado por um


organismo reconhecido, que fornece, para o uso comum e repetitivo, regras, diretrizes ou
caractersticas para atividades ou resultados, visando obteno de um grau timo de
ordenao em um dado contexto [ABNT-Associao Brasileira de Normas Tcnicas,1996 ]
. As normas so aprovadas por consenso por seus comits tcnicos, que partem de prticas
j em andamento, reunindo as experincias dos diversos pases-membros. O processo
adotado faz com que estas normas sejam empregadas em praticamente todo o mundo,
facilitando o intercmbio dos produtos e servios entre os pases que a adotam.

3.1 - Norma ISO

A sigla ISO representa uma organizao internacional, no governamental, que


elabora normas internacionais. Ela significa Organizao Internacional para
Normalizao (International Organization for Standardization). A sigla uma referncia
palavra grega ISO, que significa igualdade. O propsito das normas ISO desenvolver e
promover preceitos e padres mundiais que traduzam o consenso dos diferentes pases do
mundo de forma a facilitar o comrcio internacional [Maldonado,2001]. No Brasil, a
Associao Brasileira de Normas Tcnicas (ABNT) a representante brasileira das normas
ISO.

Com a remoo de barreiras comerciais entre os pases, novos aspectos nas relaes
comerciais esto sendo considerados. H indcios de que a implantao das normas ISO
seja um fator relevante concretizao de negcios em diversas partes do mundo: nos
Estados Unidos, na Europa, na sia e na Amrica Latina, principalmente em relao s
transaes comerciais do MERCOSUL. Os representantes de diferentes pases discutem,
analisam e buscam o consenso quanto ao contedo das normas ISO.

21
3.2 - Histrico das normas ISO

Durante os anos oitenta, a maioria das empresas fazia uso de TI (Tecnologia da


Informao) para apoiar processos internos (ex. finanas, recursos humanos etc) de modo
independente, desconectado de seus processos de negcios. O objetivo dos sistemas de
qualidade daquela poca era o controle da qualidade dos produtos.

A dcada de 90 mostra as empresas comeando a usar TI para apoiar seus processos


de negcio, com foco na cadeia produtiva (ex. produo, distribuio e gesto empresarial).
Nesse perodo, o objetivo das empresas mudou, passando do controle de qualidade de
produtos para a garantia da qualidade de processos relacionados a projetos,
desenvolvimento, produo, instalao e servios associados.

A primeira verso das normas internacionais ISO 9001, 9002 e 9003 para a garantia
da qualidade foi lanada em 1987. A seguir, um breve histrico:

Figura 2 - Histrico Normas ISO .


Fonte: ISO srie 9000 - Ao alcance de todos - 8 edio. MCG Qualidade.

22
O uso das normas ISO cresceu rapidamente no Brasil. No ano de 1990, apenas 13
empresas possuam 18 certificados ISO 9000. J no ano de 2000, 4.744 empresas detinham
6.389 certificados [Weber, 2001], nmeros esses que no param de crescer.

No perodo de 2000 a 2009, as empresas devero usar TI como parte integrante dos
processos de negcios ligados cadeia de demanda (ex. relacionamento com clientes,
gerncia de contas, servios de ps-venda e processamento de pedidos). Com a nova ISO
9001 verso 2000, os sistemas de gesto de qualidade devero mudar o seu objetivo da
garantia da qualidade para a satisfao dos clientes [Campos,1992].

O processo de certificao de uma empresa de software segundo as normas ISO 9001


segue um conjunto de passos bem definido [ISO, 2000]
1 A empresa estabelece o seu sistema de qualidade;
2 A empresa faz uma solicitao formal a um rgo certificador, incluindo detalhes
do negcio da empresa, escopo da certificao solicitada e cpia do manual de
qualidade;
3 O rgo certificador faz uma visita empresa, colhe mais dados e explica o
processo de certificao;
4 O rgo certificador verifica se a documentao do sistema de qualidade est de
acordo com a norma ISO;
5 O rgo certificador envia uma equipe empresa com fins de auditoria. Nesta visita,
ser verificado se todos na empresa cumprem o que est documentado no manual de
qualidade;
6 O rgo certificador emite o certificado de qualidade;
7 O rgo certificador realiza visitas peridicas empresa para assegurar que o
sistema continua sendo efetivo.

3.3 - Norma ISO 12207

Sob o ttulo de Information Technology - Software Life Cycle Process ( tecnologia


da informao - Processos de Ciclo de Vida de Software), a ISO 12207 foi criada para
estabelecer uma estrutura comum de processos, sendo utilizada como referncia em

23
negcios relacionados a produtos de software [Maldonado,2001]. O desenvolvimento e
manuteno do software devem ser conduzidos de forma semelhante a engenharia, ou seja,
este padro formaliza a arquitetura do ciclo de vida do software, que um assunto bsico
em Engenharia de Software.

A Norma NBR ISO/IEC 12207 - Processos do Ciclo de Vida do Software tem


como principal objetivo fornecer uma estrutura comum para que o comprador, fornecedor,
desenvolvedor, mantenedor, operador, gerentes e tcnicos envolvidos com o
desenvolvimento de software utilizem uma linguagem comum. Esta linguagem comum
estabelecida na forma de processos bem definidos [NBR ISO/IEC 12207].

Esta norma agrupa os processos de ciclo de vida do software em trs classes,


Processos Fundamentais, Processos de Apoio e Processos Organizacionais.

Figura 3 - Processos de ciclo de vida do software [ISO 12207] .

24
3.3.1 - Processos Fundamentais

Os processos fundamentais marcam o incio e execuo do desenvolvimento,


operao ou manuteno do software durante o seu ciclo de vida.

Processo de Aquisio: atividades de quem adquire um software. Inclui a definio


da necessidade de adquirir um software (produto ou servio), o pedido de proposta,
a seleo de fornecedor, a gerncia da aquisio e a aceitao do software ou
servio de software;

Processo de Fornecimento: define as atividades do fornecedor de software, ou seja,


organizao que prov o produto de software ao comprador. Inclui preparar uma
proposta, a assinatura de contrato determinao de recursos necessrios, o
desenvolvimento e a execuo dos planos de projeto, at a entrega do software;

Processo de Desenvolvimento: esse processo define as atividades do desenvolvedor


de software. Inclui a anlise de requisitos, o projeto, a codificao, a integrao, os
testes, a instalao e a aceitao do software;

Processo de Operao: define as atividades do operador. Inclui a operao de um


sistema computacional para os usurios, assim como tambm o suporte operacional;

Processo de Manuteno: define as atividades do mantenedor do software, isto ,


gerenciamento de modificaes no software para mant-lo atualizado e em perfeita
operao. Quando um sistema necessita de alteraes relativas melhoria,
adaptao, ou qualquer alterao no cdigo, esse processo ativado. Em qualquer
situao, sua integridade deve ser preservada.

25
3.3.2 - Processos de Apoio

Os processos de apoio auxiliam um outro processo e contribuem para o sucesso e


qualidade do projeto de software. So empregados e executados, quando necessrio por
outros processos.

Processo de Documentao: define as atividades para registrar informaes


produzidas por um processo ou atividade do ciclo de vida. O processo contm o
conjunto de atividades que planeja, projeta, desenvolve, produz, edita, distribui e
mantm os documentos necessrios a todos os interessados, tais como gerentes,
engenheiros e usurios do sistema ou produto de software;

Processo de Gerncia de Configurao: define atividades que identificam e


controlam os itens do software. Inclui o controle de armazenamento, liberaes,
manipulao, distribuio e modificao de cada um dos itens que compem o
software, estabelecendo suas linhas bsicas (baseline); garante a completeza, a
consistncia e a correo dos itens; controla o armazenamento, a manipulao e a
distribuio dos itens.

Processo de Garantia da Qualidade: define as atividades para garantir que os


processos e produtos de software estejam em conformidade com os requisitos e os
planos estabelecidos;

Processo de Verificao: define as atividades para verificao dos produtos de


software, se os mesmos esto atendendo aos requisitos especificados e s condies
impostas a eles;

Processo de Reviso Conjunta: define as atividades para avaliar a situao e os


produtos de uma atividade de um projeto, se apropriadas. Estas avaliaes ou
revises so realizadas nos nveis gerenciais do projeto e nos nveis tcnicos,
durante o contrato do projeto;

26
Processo de Auditoria: define as atividades para determinar adequao aos
requisitos, planos e contrato, quando for apropriado;

Processo de Resoluo de Problemas: define um processo para analisar e resolver


os problemas descobertos durante a execuo do desenvolvimento, operao,
manuteno ou outros processos.

3.3.3 - Processos Organizacionais

Os processos organizacionais so utilizados com o intuito de melhorar


continuamente a estrutura e os processos do ciclo de vida do software.

Processo de Gerncia: define as atividades que podem ser empregadas por


quaisquer das partes que tm que gerenciar seu respectivo processo. Inclui
gerenciamento de produto, gerenciamento de projeto e gerenciamento de tarefa do
processo de apoio;

Processo de Infra-estrutura: atividades que visam estabelecer o fornecimento de


recursos necessrios para outros processos. Inclui: hardware, software, ferramentas,
tcnicas, padres de desenvolvimento, operao ou manuteno;

Processo de Melhoria: define as atividades para estabelecer, avaliar, medir,


controlar e melhorar um processo de ciclo de vida de software;

Processo de Treinamento: define um conjunto de atividades para prover e manter o


pessoal treinado. Inclui planejamento e implementao de programas de
treinamento.

A norma detalha cada um dos processos acima. Ela define ainda como eles podem
ser usados de diferentes maneiras por diferentes organizaes (ou parte destas),
representando diversos pontos de vista para esta utilizao. Cada uma destas vises
representa a forma como uma organizao emprega estes processos, agrupando-os de
acordo com suas necessidades e objetivos.

27
3.4 - NBR ISO/IEC 9126

A ISO/IEC 9126 fornece o significado de caractersticas de qualidade e mtricas


para avaliao de produtos de software. As mtricas de qualidade so baseadas nos
atributos internos de software e no comportamento externo do sistema de computador.
Essas mtricas so aplicveis ao se especificar requisitos de qualidade e objetivos do
produto de software. A seguir, encontra-se na Figura 4 as caractersticas e algumas
descries que definem a qualidade de software segundo a ISO/IEC 9126.

Caractersticas Descrio

Funcionalidade Evidencia que o conjunto de funes atendem s necessidades


explcitas e implcitas para a finalidade a que se destina o produto.

Confiabilidade Evidencia que o desempenho se mantm ao longo do tempo e em


condies estabelecidas.

Usabilidade Evidencia a facilidade para a utilizao de software.

Eficincia Evidencia que os recursos e os tempos envolvidos so compatveis


com o nvel de desempenho requerido para o produto.

Manutenibilidade Evidencia a facilidade para correes, atualizaes e alteraes.

Portabilidade Evidencia que possvel utilizar o produto em diversas plataformas


com pequeno esforo de adaptao.

Figura 4 - Caractersticas da qualidade de software [ISO/IEC 9126] .

As caractersticas so detalhadas em subcaractersticas, para facilitar o


entendimento do que um software de qualidade.

3.4.1 - Subcaractersticas da Qualidade de Software segundo a ISO/IEC 9126

Funcionalidade

Adequao: Presena de conjunto de funes e sua apropriao para tarefas;

28
Acurcia: Gerao de resultados ou efeitos corretos;
Conformidade: Estar de acordo com normas, convenes e regulamentaes.
Confiabilidade

Segurana de Acesso: Capacidade de evitar acesso no autorizado a


programas e dados;
Maturidade: Indicao de baixa freqncia de falhas;
Tolerncia a falhas: Manter nvel de desempenho em caso de falha;
Recuperabilidade: Capacidade de se restabelecer e restaurar dados aps
falha.

Usabilidade

Inteligibilidade: Facilidade de entendimento dos conceitos utilizados;


Apreensibilidade: Facilidade de aprendizado;
Operacionalidade: Facilidade de operar e controlar a operao.
Eficincia

Comportamento em relao a tempo: tempo de resposta, de processamento;


Comportamento em relao a recursos: medida da quantidade de recursos
necessrios (CPU, disco e memria, dentre outros) e a durao;
Manutenibilidade

Analisabilidade: Facilidade de diagnosticar deficincias e causas de falhas;


Modificabilidade: Facilidade de modificao e remoo de defeitos;
Estabilidade: Ausncia de riscos de efeitos inesperado;
Testabilidade: Facilidade de ser testado.
Portabilidade

Adaptabilidade: Capacidade de ser adaptado a ambientes diferentes;


Capacidade para ser testado: Medida do esforo necessrio para se instalar o
produto;
Conformidade: Medida do nvel de conformidade do produto com padres
referentes portabilidade;
Capacidade para substituir: Medida de esforo necessrio para usar o
produto em substituio a outro, previamente especificado.

29
3.5 - ISO 9001:2000

No dia 15 de dezembro de 2000, foi publicada a nova srie de normas ISO 9000,
aps mais de quatro anos de discusses. Usurios de todas as partes do mundo, ouvidos
atravs de uma pesquisa conduzida pela prpria ISO, foram muito crticos em relao ISO
9001 edio de 1994, classificando-a como complexa e um pouco confusa no seu
entendimento. Esses aspectos foram detalhadamente analisados, em conjunto com as
sugestes dos usurios que queriam uma norma voltada para os processos da organizao,
para seus clientes e para a melhoria contnua do desempenho do Sistema de Gesto da
Qualidade

A ISO 9001 sugere que a aplicao e a gesto de um sistema de processos seja uma
forma efetiva de garantir uma boa gesto da qualidade [Maldonado,2001]. Para adotar esta
abordagem de processo, a norma inclui uma metodologia PDCA (Planejar-Fazer-
Checar-Agir) que pode ser aplicada a todos os processos, segue a descrio:

Figura 5 - Ciclo PDCA [Campos, 1992]

Planejar: Estabelecer os objetivos e processos necessrios para gerar resultados, de


acordo com os requisitos dos clientes e com as polticas da organizao;

30
Fazer: Implementar os processos;

Verificar: Monitorar e medir os processos e produtos em relao s polticas,


objetivos e requisitos para o produto e relatar os resultados;

Agir: Tomar aes para melhorar continuamente o desempenho dos processos.

A norma indica que a melhor forma de atender aos requisitos a criao de


procedimentos documentados. Os procedimentos so uma forma especificada para
desenvolver uma atividade. Ela prope um caminho com seis procedimentos:

1. Controle de documentos: Os documentos requeridos pelo sistema de gesto da


qualidade devem ser controlados, A documentao essencial para a reteno do
know how na organizao e no nas mos dos seus colaboradores, permitindo assim
a perpetuao da atividade na organizao. Tambm importante para facilitar a
padronizao das atividades e o treinamento de seus colaboradores;

2. Controle de registros: Os registros devem ser mantidos legveis, prontamente


identificveis e recuperveis. Um procedimento documentado deve ser estabelecido
para definir os controles necessrios para identificao, armazenamento, proteo,
recuperao, tempo de reteno e descarte dos registros;

3. Auditoria interna: A Auditoria Interna pode ser definida como sendo uma
atividade formal e documentada, executada por pessoas que no tenham
responsabilidade direta com a rea auditada. Essas pessoas devidamente habilitadas
e treinadas, utilizam-se de mtodos de coleta para anlise de informaes.

4. Controle da no conformidade de produtos: Preocupa-se em controlar e


identificar o nmero de no conformidades de um produto de acordo com as
especificaes estabelecidas. um processo relacionado pr-auditoria;

5. Ao corretiva: uma ao tomada para eliminar a causa de uma no-


conformidade ou outra situao indesejvel;

6. Ao preventiva: executada para previnir a ocorrncia de uma no-conformidade.

31
A existncia de procedimentos, instrues e registros de trabalho formalizam todas
as atividades que afetam a qualidade. Isto exige a participao de todos os indivduos da
organizao. Portanto, o comprometimento com a qualidade aumenta, uma vez que todos
participam diretamente da implementao do sistema da qualidade e so os principais
responsveis pelas atividades da empresa.

O cliente influencia o incio, o prprio processo e o produto final. O domnio de um


procedimento de desenvolvimento de software e do gerenciamento leva ao domnio do
processo de produo, o que ajuda a garantir a qualidade do produto final. O sistema de
gesto de qualidade o apoio para a conformidade dessa norma e deve estar estruturado
para controlar e divulgar o conjunto dos procedimentos usados pela empresa, facilitar e
promover o gerenciamento de mudanas, alm de facilitar as atividades de monitorao e
de auditorias do sistema da qualidade.

A ISO 9001:2000 est dividida em quatro requisitos: Responsabilidade da


administrao, Gerenciamento de recursos, Produo e Medio, Anlise e Melhoria.
[Maldonado, 2001].

3.5.1 Responsabilidade da Administrao

A alta direo da organizao, com a nova ISO 9001, dever ter um papel bem mais
ativo em relao ao Sistema de Gesto da Qualidade (SGQ). requerido agora que a alta
administrao:

Fornea evidncias de seu comprometimento com o desenvolvimento, a implementao


e a melhoria contnua da eficcia do SGQ;

Assegure que os requisitos do cliente so determinados e cumpridos;

Estabelea a poltica da qualidade e garanta que essa poltica fornece uma estrutura para
definir e analisar criticamente os objetivos da qualidade;

Garanta que so estabelecidos os objetivos da qualidade nas funes e nveis pertinentes


da organizao, e assegure que tais objetivos so mensurveis e consistentes com a
poltica da qualidade;

Assegure que realizado o planejamento das atividades para o SGQ;

32
Assegure que so definidas e comunicadas as responsabilidades, autoridades e suas
inter-relaes;

Designe um representante da direo;

Assegure que so estabelecidos, na organizao, processos apropriados de comunicao


interna;

Conduza anlises crticas peridicas do SQG e demonstre que so tomadas decises e


aes relacionadas a atividades de melhoria do SGQ, dos processos e dos produtos da
organizao.

3.5.2 Gerenciamento dos Recursos

Essa seo requer que a organizao determine e fornea recursos para implementar,
manter e melhorar continuamente a eficcia do Sistema de Gesto da Qualidade. Tambm
requerido que sejam determinados e fornecidos os recursos necessrios para aumentar a
satisfao do cliente, atendendo aos seus requisitos. Outros requisitos dessa seo incluem
as seguintes condies:

Executar atividades que afetam a qualidade do produto com pessoal competente, com
base em aes de educao, treinamento, habilidades e experincias apropriados, bem
como avaliar a eficcia das respectivas aes tomadas;

Assegurar que as pessoas esto conscientes da relevncia e importncia de suas


atividades e de como estas contribuem para que os objetivos da qualidade sejam
alcanados;

Manter registros da educao, treinamento, habilidades e experincia do pessoal;

Identificar, fornecer e manter a infra-estrutura (instalaes) necessria para alcanar


conformidade com os requisitos do produto, incluindo servios de apoio como
transporte, comunicao e manuteno;

Determinar e gerenciar os fatores do ambiente de trabalho necessrios para alcanar a


conformidade do produto.

33
3.5.3 Realizao do Produto

Os principais requisitos dessa seo incluem os elementos a seguir enumerados,


devendo o usurio da norma sempre lembrar que, conforme definido em toda a srie ISO
9000, o termo "produto" pode tambm significar "servio":

Planejamento e desenvolvimento dos processos necessrios para a realizao do


produto;

Anlise crtica de contrato e comunicao com o cliente, nos processos relacionados ao


cliente;

Requisitos para projeto e desenvolvimento do produto, incluindo o controle de


alteraes desses elementos;

Requisitos para aquisio;

Produo e servios associados (controle de processos, incluindo processos especiais);

Identificao e rastreabilidade de requisitos;

Controle da propriedade do cliente;

Preservao do produto;

Controle de dispositivos de monitoramento e medio.

3.5.4 Medio, Anlise e Melhoria

Nessa seo, os requisitos para auditoria interna foram ampliados, incluindo agora
tambm a auditoria do SGQ conforme disposies estabelecidas pela prpria
organizao. Outros elementos dessa seo abrangem:

Planejamento e implementao de processos de monitoramento, medio, anlise e


melhoria contnua;

Monitoramento de informaes relacionadas ao cliente, como uma das medidas de


desempenho do SGQ;

Conduo de auditorias internas;

Monitoramento e medio de processos;

34
Monitoramento e medio do produto;

Controle de produto no-conforme;

Anlise de dados;

Melhoria contnua da eficcia do SGQ;

Ao corretiva;

Ao preventiva.

Para uma empresa buscar sua certificao segundo a norma ISO 9001 deve
conhecer e mostrar que entende os requisitos do cliente, planejar e documentar as
atividades que afetam a qualidade; qualificar pessoas, identificar e disponibilizar recursos
para manter o sistema da qualidade, registrar as atividades, prevenir no-conformidades,
registrar a ocorrncia delas e tratar as causas dessas no-conformidades, alm de manter um
programa de avaliao para a melhoria contnua de todos os seus processos.

3.6 Modelo de Qualidade CMM - Capability Maturity Model

Conhecido como "Modelo de Maturidade da Capacidade", o CMM uma iniciativa


do SEI (Software Engineering Institute) para avaliar e melhorar a capacitao de empresas
que desenvolvem software [EDS Quality Plan, 2004]. O projeto CMM foi apoiado pelo
Departamento de Defesa do Governo dos Estados Unidos, que um grande consumidor de
software e precisava de um modelo formal que permitisse selecionar os seus fornecedores
de software de forma adequada.

Embora no seja uma norma emitida por uma instituio internacional (como a ISO
ou o IEEE), esta norma tem tido uma grande aceitao mundial, at mesmo fora do
mercado americano. O modelo, publicado em 1992, pode ser obtido na prpria Internet com
facilidade. O CMM tambm chamado de SW-CMM (Software CMM).

35
3.6.1 Maturidade

O CMM um modelo para medio da maturidade de uma organizao no que diz


respeito ao processo de desenvolvimento de software. A definio do que "Maturidade"
pode ser melhor entendida atravs da anlise da Figura 6:

Organizaes Maduras Organizaes Imaturas


Papis e responsabilidades bem definidos. Processo improvisado.

Existe base histrica. No existe base histrica.

possvel julgar a qualidade do produto. No h maneira objetiva de julgar a qualidade do


produto.

A qualidade dos produtos e processos monitorada. Qualidade e funcionalidade do produto


sacrificados.

O processo pode ser atualizado. No h rigor no processo a ser seguido.

Existe comunicao entre o gerente e seu grupo


Resoluo de crises imediatas.

Figura 6 - Organizaes Maduras x Organizaes Imaturas.

3.6.2 Nveis
O CMM classifica as organizaes em cinco nveis distintos, cada um com suas
caractersticas prprias. No nvel 1, esto as organizaes mais imaturas, onde no h
nenhuma metodologia implementada e tudo ocorre de forma desorganizada. Por outro lado,
no nvel 5 esto as organizaes mais maduras, onde cada detalhe do processo de
desenvolvimento est definido, quantificado e acompanhado e a organizao consegue at
absorver mudanas no processo sem prejudicar o seu desenvolvimento.

36
3.6.3 Descrio dos Nveis CMM

Nvel 1 Inicial. O processo de desenvolvimento desorganizado e catico. Poucos


processos so definidos e o sucesso depende de esforos individuais e hericos. O processo
de software de uma organizao de Nvel 1 imprevisvel porque constantemente
alterado ou modificado medida que o trabalho progride. Os cronogramas, os oramentos,
as funcionalidades e a qualidade do produto so geralmente imprevisveis. O desempenho
depende da capacidade dos indivduos e varia com as suas habilidades, conhecimentos e
motivaes inatas. Existem poucos processos de software estveis em evidncia e o
desempenho s pode ser previsto atravs da habilidade individual ao invs da capacidade
da organizao;

Nvel 2 - Repetvel. Os processos bsicos de gerenciamento de projeto esto estabelecidos


e permitem acompanhar custo, cronograma e funcionalidade. Os projetos nas organizaes
de nvel 2 tm instalado controles bsicos de gesto de software. Os compromissos do
projeto so baseados em resultados observados em projetos anteriores e nos requisitos do
projeto atual. Os gerentes do projeto acompanham os custos, os cronogramas e as
funcionalidades do software. Os problemas com compromissos so identificados quando
surgem. Os requisitos de software e os produtos de trabalho desenvolvidos para satisfaz-
los so congelados e a integridade dos mesmos controlada. Os padres do projeto de
software so definidos e a organizao garante que eles sejam seguidos fielmente. O projeto
de software trabalha com os seus subcontratados, se existirem, para estabelecer uma forte
relao cliente-fornecedor;

Nvel 3 - Definido. Tanto as atividades de gerenciamento quanto de engenharia do


processo de desenvolvimento de software esto documentadas, padronizadas e integradas
em um padro de desenvolvimento da organizao. Todos os projetos utilizam uma verso
aprovada e adaptada do processo padro de desenvolvimento de software da organizao.
A capacidade do processo de software das organizaes de nvel 3 pode ser resumida como
sendo padro e consistente porque a engenharia de software e as atividades de gesto so
estveis e repetveis. Dentro de linhas estabelecidas de produtos, o custo, o cronograma e as
funcionalidades esto sob controle e a qualidade de software acompanhada.

37
Nvel 4 - Gerenciado. So coletadas medidas detalhadas da qualidade do produto e
processo de desenvolvimento de software. Tanto o produto quanto o processo de
desenvolvimento de software so entendidos e controlados quantitativamente. A capacidade
do processo de software das organizaes de nvel 4 pode ser resumida como sendo
previsvel porque o processo medido e opera dentro de limites mensurveis. O processo
desse nvel permite que a organizao antecipe as tendncias na qualidade dos produtos e
dos processos dentro das fronteiras quantitativas desses limites. Quando esses limites so
excedidos, so tomadas aes para corrigir a situao. Os produtos de software so, como
era de se esperar, de alta qualidade;

Nvel 5 - Otimizado. O nvel de maturidade 5 se concentra no melhoramento contnuo do


desempenho de processos atravs de melhorias tecnolgicas incrementais e inovadoras. Os
objetivos quantitativos de melhoria de processos para a organizao so estabelecidos,
continuamente revisados para refletir alteraes nos objetivos do negcio. O melhoramento
contnuo conseguido atravs de um "feedback" dos processos e pelo uso pioneiro de
tecnologias inovadoras.

Figura 7 - Nveis de Maturidade [SEI, Software Engineering Institute] .

38
3.6.4 Entendendo os nveis de maturidade

O modelo CMM descreve atributos essenciais (ou chaves) que seriam esperados
para caracterizar uma organizao em um nvel de maturidade [Maldonado,2001]. um
modelo normativo, no sentido de que as prticas detalhadas caracterizam os tipos normais
de comportamento que seriam esperados em uma organizao que desenvolve projetos em
larga escala em um contexto de contratao governamental. A inteno que o CMM tenha
um nvel suficiente de abstrao que no restrinja desnecessariamente a maneira que o
processo de software implementado pela organizao: ele simplesmente descreve o que
normalmente seria esperado que os atributos essenciais do processo de software fossem.

Organizaes com Qualificao CMM no Brasil 1997-2003

Nvel Atual No
Desde At o ano
2 3 4 ano
1997 1 1 1
1998 1 1 2
1999 2
2000 2
2001 1 3 4 6
2002 4 4 10
2003 18 1 1 20 30

Fontes: ISD Brasil, Procesix e imprensa, compilado por MCT/SEITEC/DSI.

1 2 3
Organizaes brasileiras avaliadas de maneira oficial pelo SEI , ISD ou Procesix

Data de Data de
Seg Organizaes UF Fonte
Avaliao Referncia
Nvel 2
1 Alstom Transportes SP jun/02 ISD nov/03
2 Atech Tecnologias Crticas SP set/03 ISD nov/03
3 C.E.S.A.R PE jun/03 ISD nov/03

39
site Disoft fev/04
4 Citibank jun/03
Revista Forbes Brasil jun/03
5 CPqD SP mai/03 ISD nov/03
6 Credicard SP 1998 ISD nov/03
7 DBA Engenharia de Sistemas RJ jul/01 ISD nov/03
8 Dell RS fev/03 ISD nov/03
9 Disoft SP abr/03 Procesix fev/04
10 DTS SP dez/03 Procesix fev/04
11 e-Dablio RJ abr/03 ISD nov/03
12 G&P - Gennari & Peartree SP nov/03 ISD nov/03
13 HP Brasil RS set/03 ISD nov/03
14 Inatel MG fev/03 ISD nov/03
15 Instituto Atlntico CE out/03 ISD nov/03
16 Nec do Brasil SP abr/03 ISD nov/03
17 Politec Brasla DF jan/03 ISD nov/03
18 Politec So Paulo SP nov/03 ISD nov/03
19 SERPRO Braslia DF dez/03 Procesix fev/04
20 SERPRO Fortaleza CE out/03 Procesix fev/04
21 SERPRO Recife PE nov/02 ISD nov/03
22 SERPRO Salvador BA nov/03 Procesix fev/04
23 Stefanini SP out/02 ISD nov/03
24 Tele Design SP set/02 ISD nov/03
Nvel 3
1 Ci&T Software S.A, SP mar/04 SEI abr/04
2 EDS So Paulo Solution Center SP ago/01 Gazeta Mercantil fev/04
3 Ericson do Brasil SP mar/01 Gazeta Mercantil fev/04
4 IBM Fbrica de Software (CMMI) RJ/SP jan/03 ISD nov/03
5 Motorola SP dez/01 ISD nov/03
Xerox do Brasil CDSV (desativada
6 em Janeiro/2005) ES dez/97 ISD nov/03

Nvel 4
1 EDS Rio de Janeiro Solution Center RJ dez/03 Gazeta Mercantil fev/04
Nvel 5
Tata Consultancy Services do Brasil
1 S/A DF jun/04 Tata Consultancy jun/04

1
Software Engineering Institute / Carnegie Mellon University
2
Integrated System Diagnostics Brasil
3
Representada pela JDFurlan & Associados

Figura 8 Organizaes certificadas


[ http://www.mct.gov.br/Temas/info/Dsi/qualidad/CMM.htm ]

40
Em qualquer contexto em que o modelo seja aplicado, deve ser utilizada uma
interpretao razovel das prticas. O CMM deve ser interpretado apropriadamente,
utilizando-se o conhecimento de peritos quando o ambiente de negcio da organizao
difere significativamente de uma grande organizao fornecedora. O CMM no
prescritivo; ele no diz organizao como melhorar. O modelo descreve a organizao em
cada nvel de maturidade sem prescrever os meios especficos para consegui-lo.

A melhoria do processo de software ocorre dentro do contexto dos planos


estratgicos e dos objetivos de negcio da organizao, da sua estrutura organizacional, das
tecnologias em uso, da sua cultura social e do seu sistema de gesto. O CMM tem o seu
foco nos aspectos do processo da Gesto da Qualidade Total.

Exceto no nvel 1, todos os nveis so detalhados em reas-chave de processo. Estas


reas so exatamente aquilo no que a organizao deve focar para melhorar o seu processo
de desenvolvimento de software. Para que uma empresa possa se qualificar em um
determinado nvel de maturidade ela deve realizar os processos relacionados s reas-chave
daquele determinado nvel.

3.7 - CMMI
A experincia no uso do CMM durante uma dcada serviu para identificar pontos
em que o modelo poderia ser melhorado. Ao mesmo tempo, o surgimento do projeto SPICE
(Software Process Improvement and Capability Determination), da ISO, levou
necessidade de compatibilizao do CMM com a futura norma ISO 15504, que ser o
resultado do projeto. Por estas razes, o SEI iniciou um projeto chamado CMMI (CMM
Integration).

O CMMI um modelo para definir e melhorar a capacidade e a maturidade dos


processos das organizaes que produzem software. As empresas que investem no CMMI
tm como principais benefcios o aumento da qualidade dos processos de software e o
reconhecimento internacional dessa qualidade. Tambm tm uma maior e mais efetiva

41
gerncia de projetos de software, no que diz respeito a custo, tempo e recursos utilizados.
Esse modelo possibilita uma reduo significativa de defeitos nos servios gerados e
maior qualificao do pessoal no atendimento ao cliente, alm da customizao dos
processos de acordo com as necessidades. Com isso, as empresas reduzem o retrabalho,
baixam seus custos e agilizam suas solues, agregando valor para o cliente.

Os objetivos do CMMI so, basicamente, voltados para a reduo do custo da


implementao de melhoria de processo. So eles [Ahern, 2001] :

Eliminao de inconsistncias e reduo de duplicidades;

Melhoria da clareza e entendimento;

Utilizao de terminologia comum e estilo consistente;

Estabelecimento de regras de construo uniformes;

Manuteno de componentes comuns;

Consistncia com a futura norma ISO/IEC 15504;

Sensibilidade s implicaes dos esforos legados.

A busca pela certificao CMMI representa a afirmao da filosofia de


aprimoramento contnuo dos produtos e a concretizao de um importante passo rumo
exportao de software.

A principal mudana do CMMI em relao ao CMM a possibilidade de utilizao


de duas diferentes abordagens para a melhoria de processos. Estas duas abordagens so
conhecidas como o representao contnua e o representao em estgios. Existem
muitas razes para uma empresa selecionar uma representao ou outra. Pode ser que uma
organizao escolha utilizar a representao que lhe seja mais familiar. As listas seguintes
descrevem algumas das possveis vantagens e desvantagens de selecionar cada uma das
representaes:

Representao Contnua: Permite que se selecione a seqncia de melhorias que


melhor atende aos objetivos de negcios e reduz as reas de risco da sua

42
organizao. Possibilita comparaes dentro e entre organizaes em uma rea de
processo;

Representao em Estgios: Oferece uma seqncia comprovada de melhorias,


comeando com prticas bsicas de gerenciamento e progredindo por um caminho
pr-definido e comprovado de nveis sucessivos, cada um servindo como base para
o prximo.

Atualmente existem trs reas de conhecimento disponveis, quando for selecionar


um modelo CMMI: Engenharia de Sistemas, , Engenharia de Software e
Desenvolvimento Integrado de Produtos e Processos (Integrated Product and Process
Development IPPD)

Engenharia de Sistemas: A engenharia de sistemas cobre o desenvolvimento de


sistemas completos, que podem ou no incluir software. Os engenheiros de sistemas
concentram-se em transformar necessidades, expectativas e restries dos clientes
em solues de produtos e fornecer suporte a estas solues de produtos durante
toda a vida do produto.

Engenharia de Software: A engenharia de software cobre o desenvolvimento de


sistemas de software. Engenheiros de software se concentram em aplicar
abordagens sistemticas, disciplinadas e quantificveis ao desenvolvimento,
operao e manuteno de software.

Desenvolvimento Integrado de Produtos e Processos: O Desenvolvimento Integrado


de Produtos e Processos (Integrated Product and Process Development IPPD)
uma abordagem sistemtica que organiza uma colaborao pontual de
patrocinadores relevantes durante toda a vida do produto para melhor satisfazer as
necessidades, expectativas e requisitos do cliente. Os processos que oferecem
suporte a uma abordagem IPPD so integrados com os outros processos da
organizao. As reas de processos, metas e prticas especficas do IPPD isoladas
no conseguem criar um desenvolvimento integrado de produtos e processos. Se um
projeto ou organizao escolhe utilizar o IPPD, tem que executar as prticas
especficas do IPPD juntamente com as outras prticas especficas utilizadas para
produzir os produtos (por exemplo, as reas de processos de Engenharia). Isto , se

43
uma organizao ou projeto deseja utilizar o IPPD, ela escolhe um modelo com uma
ou mais disciplinas alm do IPPD.

O projeto CMMI envolveu uma grande quantidade de pessoas de diferentes


organizaes do mundo todo. Estas organizaes utilizavam um modelo CMM ou
mltiplos CMMs e estavam interessadas nos benefcios do desenvolvimento de um
framework integrado para auxiliar a melhoria de processos no mbito do
empreendimento como um todo.

O trabalho do projeto CMMI patrocinado pelo Departamento de Defesa dos


Estados Unidos (Department of Defense DoD), especificamente pelo departamento da
Sub-Secretaria de Defesa, Aquisio, Tecnologia e Logstica (Office of the Under
Secretary of Defense, Acquisition, Technology, and Logistics - OUSD/AT&L). O
patrocnio da indstria garantido pelo Comit de Engenharia de Sistemas da
Associao Industrial da Defesa Nacional (National Defense Industrial Association -
NDIA).

O produto de software passa a ser , cada vez mais, um componente comum em uma
srie de outros produtos, desde carros, eletrodomsticos, elevadores, telefones, at sistemas
de informao organizacionais. De um produto exige-se qualidade e preo. Portanto, como
produto, o software deve ter o nvel de qualidade exigido e procurar ser desenvolvido com
o menor custo possvel.

Produzir software de qualidade uma meta bsica da engenharia de software, que


disponibiliza mtodos, tcnicas e ferramentas para esse fim. Muito tem sido escrito sobre
qualidade e seus vrios adjetivos. No entanto, o fundamental que o software seja
confivel, ou seja, que seja eficaz e siga os padres exigidos pelo contexto onde ir atuar.
Cada vez mais a sociedade pressiona o setor de software para que a caracterstica
qualidade seja preponderante. Normas internacionais como a ISO e iniciativas como as
do SEI (Software Engineering Institute) so exemplos disso.

44
importante no esquecer que a produo de software um processo que envolve,
como parte fundamental, seres humanos. As tecnologias de produo de software, tem por
objetivo automatizar ao mximo a produo, mas ainda so fundamentalmente dependentes
da qualidade das equipes, das pessoas, de todo o time envolvido num processo de
desenvolvimento.

4 - Concluso

De acordo com os dados pesquisados, verificamos que para um processo funcionar


adequadamente preciso haver treinamento. Qualquer mudana ou informaes adicionais
inseridas nos processos devem ser comunicadas, disponibilizando materiais de consulta,
apresentaes, tutoriais a fim de melhorar o aprimoramento profissional das pessoas
envolvidas.

Um outro elemento que consideramos fundamental a documentao, onde sero


criadas bases necessrias para uma melhor utilizao e manuteno do produto de software.
Percebemos que pouca ateno tem sido dada documentao gerada durante os projetos
de desenvolvimento, que tem resultado em documentos mal-elaborados, de difcil
compreenso, inadequados e incompletos.

Tendo em vista os aspectos relacionados, percebemos que um processo utilizado de


forma correta gera um produto final muito mais eficiente. Durante o processo de ciclo de
vida do desenvolvimento verificamos que h um maior controle de todas as informaes
relacionadas ao projeto, custos, recursos, tempo, riscos etc.

Atualmente existe uma srie de normas dos mais variados tipos e com
aplicabilidade em diversas reas. A nossa escolha tem como base o conhecimento pr-
adquirido no curso de graduao, na nossa experincia profissional, visto que grande parte
destas prticas, so exercidas diariamente no nosso ambiente de trabalho.

45
Procuramos nesta pesquisa sinalizar tambm a importncia e a necessidade da
implantao de normas e modelos de qualidade nas empresas de TI. De fato, uma
certificao traz uma srie de benefcios para as organizaes, observamos que muitas
vezes, as empresas certificadas levam uma srie de vantagens nas licitaes para
desenvolvimento de sistemas. Sendo assim, o selo de qualidade faz bastante diferena no
mercado.

46
Alguns Eventos da rea:

SBQS - Simpsio Brasileiro de Qualidade de Software (antigo WQS - Workshop


de Qualidade de Software )

CITS - "Conferncia de Qualidade de Software"

SIMPROS - Simpsio Internacional de Melhoria de Processo de Software

PBQP - Projetos e Workshops do Programa Brasileiro de Qualidade e


Produtividade - Sw.

SPINs Regionais - Reunies dos grupos de Software Process Improvement


Network

47
Referncias Bibliogrficas

[Ahern, 2001] DENNIS M. AHERN, AARON CLOUSE, e RICHARD TURNER, CMMI


Distiled: A Practical Introduction to Integrated Process Improvement, SEI Series in
Software Engineering, Addison-Wesley, 306 pages, 2001.

[Campos, 1992] CAMPOS, VICENTE TQC Controle da Qualidade Total. Belo


Horizonte: Bloch Ed, 1992.

[EDS Quality Plan, 2004] Electronic Data System do Brasil, Plano de Qualidade, Rio de
Janeiro, 2004.

[ISO. 2000] ISO 9001:2000. Quality Management Systems. Requirements, 2000.

[Maldonado, 2001] Qualidade de Software , Teoria e prtica. So Paulo: Pearson, 2001.

[MCT,1996] MCT . Qualidade no setor de software brasileiro: 1995. Braslia, DF.


http://www.mct.gov.br

[PMBOK, 2003] - PMBOK - A guide to the Project Management Body of Knowledge.


Disciplina de Gerncia de Projetos em Informtica. Rio de Janeiro: UFRJ,2003.

[Pressman, 2002] PRESSMAN, R. Engenharia de Software. Rio de Janeiro: McGraw-Hill,


2002.

[Weber, 2001] WEBER, K.C,; ROCHA, A.R.C e NASCIMENTO, C.J. Qualidade e


produtividade em software, 4 edio renovada. So Paulo, Makron Books, 2001.

[Zwass, 1998] ZWASS, V. Foundations of Information System. Wisconsin. Irwin


McGraw-Hill, jun 1998.

48

Vous aimerez peut-être aussi