Escolar Documentos
Profissional Documentos
Cultura Documentos
1. Qualidade de Software.
1.1. Introduo.
rea de conhecimento da engenharia de software que objetiva garantir a
qualidade do software atravs da definio e normatizao de processos de
desenvolvimento.
Apesar dos modelos aplicados na garantia da qualidade de software
atuarem principalmente no processo, o principal objetivo garantir um
produto final que satisfaa s expectativas do cliente, dentro daquilo que foi
acordado inicialmente.
Segundo a atual norma brasileira sobre o assunto (NBR ISO 8402),
qualidade " A totalidade das caractersticas de uma entidade que lhe confere
a capacidade de satisfazer s necessidades explcitas e implcitas".
NBR 13596
ISO 12119
de
prateleira,
vendido
com
um
produto
embalado).
ISO 9241
ISO 14598
CMM
SPICE
ISO 15504
ISO 9000
Normas e Modelos
para
a Gesto e Garantia
da
Qualidade.
1.4. Qualidade de Processo - ISO 15504 SPICE
SPICE - Software Process Improvement and Capability Determination
O resultado do projeto est previsto para ser transformado na norma ISO
5504 -Tecnologia de Informao - Avaliao de Processos de Software.
Descrio.
do
necessidades
do
software,
Gerncia
das
Cliente,
Fornecimento
do
Desenvolvimento
software,
Integrao
Desenvolvimento
do
de
teste
projeto
requisitos
de
de
software,
do
software,
Desenvolvimento
Desempenho
da
da
documentao,
gerncia
de
configurao,
trabalho,
Revises
conjuntas,
Auditorias,
Resoluo de problemas.
Gerncia
Organizao
Caractersticas de Qualidade
Funcionalidade:
usurio?
Confiabilidade: Durante um perodo de tempo, funciona de acordo com
as condies pr-estabelecidas?
+
Qualidade do Processo
+
Qualidade do Produto
ISO 9001:2008
Pertencente famlia ISO 9001 (gesto de qualidade para qualquer
organizao).
Estabelece os requisitos para um sistema de gesto da qualidade.
Padronizao de todos os processos-chave, que afetam o produto e
o cliente.
Garantir a rastreabilidade do processo e fornecer meios apropriados
de aes corretivas.
ISO 9001:2008
Pertencente famlia ISO 9001 (gesto de qualidade para qualquer
organizao).
Estabelece os requisitos para um sistema de gesto da qualidade.
Padronizao de todos os processos-chave, que afetam o produto e
o cliente.
Garantir a rastreabilidade do processo e fornecer meios apropriados
de aes corretivas.
ISO/IEC 9126
Norma para qualidade de produto de software.
Prope atributos de qualidade distribudos em seis caractersticas.
ISO/IEC 12207
Estabelece uma estrutura comum para os processos de ciclo de vida
do software.
Visa ajudar a organizao a compreender todos os componentes
presentes na aquisio e fornecimento de software.
Processos d i v i d i d o s e m t r s c a t e g o r i a s :
fundamentais,
a p o i o e organizacionais.
ISO/IEC 15504
Conhecida como SPICE, define o processo de desenvolvimento de
software, sendo uma evoluo da ISO/IEC 12207.
Possui nveis de capacidade, assim como o CMMI
o conjunto de programas de
Qualidade do Processo
A qualidade de processo garantir que as tarefas que envolve o passo a
ISO 12207
CMMI
PSP
SPICE
MPSBr
Upper-CASE
Ferramentas para apoiar as atividades iniciais de processo de requisitos
e de projeto;
Lower-CASE
Ferramentas para apoiar as atividades finais tais como programao,
debugging e teste.
Heterogeneidade
Sistemas de software devem ser capaz de lidar com diferentes
Entrega
O sistema deve ser entregue ao cliente no menor tempo possvel, com o
Confiana
O usurio deve poder justificadamente depositar sua confiana no
sistema
Escala
O sistema deve funcionar adequadamente mesmo quando um grande
Fase I
Concepo Nascimento do Sw
Fase II
Fase III
Ajustes ps-implantao
Fase IV
Fase V
Declnio
Dificuldades de uso
Manuteno Tentativa
de
sobrevivncias
(ajuste
melhorias)
Morte
1. Estudo Inicial:
1. Estudo de viabilidade ou levantamento de requisitos.
2. Entrevistas
com
usurios
fim
de
identificar
as
suas
necessidades.
3. Aps as entrevistas, definem-se as funes requisitadas e
elaborao de um Plano de trabalho, com limitaes de prazo,
recursos humanos, oramento, custos/benefcios das funes a
serem automatizadas.
2. Anlise
1. Transforma as informaes obtidas no estudo inicial em uma
especificao estrutura das necessidades dos usurios.
10
11
geram-se
documentos
detalhando
as
12
13
processo
de
software
para
as
atividades
de
14
Nvel de Maturidade
reas-Chave de Processo
1. Inicial
2. Reproduzvel
Administrao
dos
Requisitos,
Planejamento
de
Gerenciamento
de
Subcontrato
de
4. Gerenciado
Gerenciamento
da
Qualidade
de
Software
15
16
Quantitativamente
Gerenciamento
quantitativo
do
projeto,
tendncia atual de
que o modelo
CMM seja
substitudo
g r a d a t i v a m e n t e pelo CMMI.
3.4. CONSIDERAES SOBRE O CMM
3.4.1. Origem do CMM
O CMM teve origem durante na dcada de 1980 como um modelo para
avaliao de risco na contratao de empresas de software pela Fora Area
Norte-Americana, que desejava ser capaz de avaliar os processos de
desenvolvimento utilizados pelas empresas que concorriam em licitaes,
como indicao da previsibilidade da qualidade, custos e prazos nos projetos
contratados.
Para desenvolver este modelo, a Fora Area constituiu, junto
Carnegie-Mellon University, o SEI (Software Engineering Institute), o qual,
alm de ser o responsvel pela evoluo do CMM, realiza diversas outras
pesquisas em Engenharia de Software.
O lder do projeto que veio a resultar no CMM foi Watts Humphrey,
anteriormente responsvel por todo o desenvolvimento de software da IBM,
onde aplicou pela primeira vez os conceitos tradicionais de qualidade,
largamente conhecidos e utilizados em manufatura, no desenvolvimento e
manuteno de software. Neste trabalho, Humphrey baseou-se na sua
experincia anterior como engenheiro de hardware.
17
18
Indstria;
Governo;
3.4.4. Benefcios
3.4.4.1. Benefcios trazidas pelo cmmi no negcio
As vantagens esperadas no negcio:
Causa
integrao
de, integrao
entre,
vrias
funes
desenvolvidas;
Estende o s b e n e f c i o s d o C M M -SW p a r a t o d o o p r o j e t o
e/ou organizao;
integrao de sistemas;
administrao de riscos;
mtricas e anlises;
19
3.4.4.3. CONCLUSO
O CMMI (Capability Maturity Model Integration), representa uma
evoluo do modelo SW-CMM.
Apesar de todo o sucesso de uso do modelo CMM no mundo, existe a
tendncia de que ele seja substitudo gradativamente pelo CMMI.
20
desenvolvimento
multidisciplinar,
cobrindo
outras
reas
do
desenvolvimento de sistemas.
Reviso:
capacidade
modificado e evoludo.
do
Transio:
adaptabilidade
diferentes ambientes.
21
produto
novos
ser
Reviso
Transio
Correo
Manutenibilidade
Portabilidade
Confiabilidade
Flexibilidade
Reusabilidade
Eficincia
Testabilidade
Interoperabilidade
Integridade
Usabilidade
Atualmente existem outros modelos de avaliao da qualidade do
produto de software, em especial o padro internacional de engenharia de
software ISO/IEC 9126, que trata da Qualidade do Produto. A norma se divide
em quatro partes, sendo a primeira uma viso geral do modelo de qualidade, e
as outras trs, os grupos de mtricas definidas para este modelo:
22
FURPS+
ISO 9126
McCall
Functionality (Funcionalidade)
Funcionalidade
- (n/a, funcional)
Usability (Usabilidade)
Usabilidade
Usabilidade (Operao)
Correo,
Reliability (Confiabilidade)
Confiabilidade
Confiabilidade,
Integridade (Operao)
Performance (Desempenho)
Supportability
(Suportabilidade)
Eficincia
Eficincia (Operao)
Manutenibilidade,
Manutenibilidade
Flexibilidade,
Testabilidade (Reviso)
Portabilidade,
+ (outros requisitos/restries)
Portabilidade
Interoperabilidade,
Reusabilidade
(Transio)
.
Vale ressaltar que qualidade do software, abordada aqui, se entende por
Qualidade do produto de software em si, o que distinto de qualidade do
processo de software, que diz respeito qualidade das atividades e forma
pelas quais se produz software.
Em 1977, McCall props um modelo para a avaliao da qualidade de
software. Esse modelo envolve um conjunto de trs fatores que avalia o
software com relao a trs pontos de vista distintos.I - Com relao ao uso
do produto (Caractersticas Operacionais).
* Corretude Medida na qual o software satisfaz as especificaes e objetivos
visados pelo cliente.
23
realizar
operao
de
forma
100%
segura.
isto , o esforo exigido para testar um programa a fim de garantir que ele
execute a funo pretendida.
III - Transio do produto (Adaptabilidade a novos ambientes).
* Portabilidade Mede a facilidade com que um produto pode ser movido
para outra plataforma, ou software.
* Reusabilidade Medida na qual o software, ou parte dele, poder ser
reusado em outros softwares, em outras palavras, o cdigo do sw deve ser
reaproveitvel.
24
de
Pernambuco,
http://www.cin.ufpe.br/~qualisoft/documentos/diversos/quality.doc;
Recife,
Acessado
em 27/03/2015.
CMMI
(Capability
Maturity
Model
Integration),
http://www.devmedia.com.br/cmmi-capability-maturity-model-integration,
Acessado em 27/03/2015.
25
http://www.timaster.com.br/revista/materias/main_materia.asp?codigo=1061&p
ag, Acessado em 27/03/2015.
http://kplus.cosmo.com.br/materia.asp?co=30&rv=Vivencia,
Acessado
em
27/03/2015.
http://www.dromostg.com.br/CMMI.PDF, Acessado em 27/03/2015.
http://blog.mhavila.com.br/2010/06/20/modelo-de-qualidade-de-software-demccall/
John
Heinemann, 1994.
26
Pressman
R. S.; Pressman,
Software Engineering:
A Practitioners
27