Buscar

ads2018engenhariadesoftware2materialdeestudo

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Aula 07 - ES2.pdf
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 07 
 
1 
 
CMMI: MODELO DE MATURIDADE EM CAPACITAÇÃO – INTEGRAÇÃO 
 
 O CMMI surgiu durante a década de 80 como um modelo para avaliação de risco na 
contratação de empresas de software pelo Dep. Dos EUA, que desejava ser capaz de avaliar 
os processos de desenvolvimento utilizados pelas empresas que concorriam em licitações 
como indicação da previsibilidade da qualidade, custos e prazos nos projetos contratados. 
 Um modelo tem como objetivo estabelecer - com base em estudos, históricos e 
conhecimento operacional - um conjunto de "melhores práticas" que devem ser utilizadas 
para um fim específico. 
 O CMMI foi construído considerando três dimensões principais: pessoas, ferramentas e 
procedimentos. O processo serve para unir essas dimensões. 
 O CMMI possui duas representações: "contínua" ou "por estágios". Estas representações 
permitem à organização utilizar diferentes caminhos para a melhoria de acordo com seu 
interesse. 
 Possibilita à organização utilizar a ordem de melhoria que melhor atende os objetivos de 
negócio da empresa. É caracterizado por: Níveis de Capacidade (Capability Levels): 
 
 Representação Contínua 
 Nível 0: Incompleto (Ad-hoc) 
 Nível 1: Executado 
 Nível 2: Gerenciado / Gerido 
 Nível 3: Definido 
 Nível 4: Gerenciado quantitativamente --- REMOVIDO DA v.1.3 
 Nível 5: Em otimização --- REMOVIDO DA v.1.3 
 
Representação Contínua 
Esta representação a capacidade é medida por processos separadamente. 
 No nível 1: o processo é executado de modo a completar o trabalho necessário para a 
execução de um processo. 
 No nível 2: é sobre planejar a execução e confrontar o executado contra o que foi 
planejado. 
 No nível 3: o processo é construído sobre as diretrizes do processo existente, e é 
mantido uma descrição do processo. 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 07 
 
2 
 
REPRESENTAÇÃO POR ESTÁGIOS 
Disponibiliza uma sequencia pré-determinada para melhoria baseada em estágios que não 
deve ser desconsiderada, pois cada estágio serve de base para o próximo. É caracterizado por 
Níveis de Maturidade (Maturity Levels): 
 Nível 1: Inicial (Ad-hoc) 
 Nível 2: Gerenciado / Gerido 
 Nível 3: Definido 
 Nível 4: Quantitativamente gerenciado / Gerido quantitativamente 
 Nível 5: Em otimização 
 
Nesta representação a maturidade é medida por um conjunto de processos 
 
 O CMMI fornece às organizações um conjunto de melhores práticas em 
desenvolvimento e manutenção de produtos e serviços tecnológicos 
 Quando uma organização atinge um nível de maturidade, considera-se que tem 
mecanismos que garantem a repetição sucessiva de bons resultados futuros 
relacionados principalmente à qualidade, custos e prazos. 
 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 07 
 
3 
 
Objetivo: 
Além da integração dos modelos e redução dos custos com melhorias de processo, os 
seguintes objetivos também fazem parte do projeto CMMI: 
• Aumento do foco das atividades 
• Integração dos processos existentes 
• Eliminar inconsistências 
• Reduzir duplicações 
• Fornecer terminologia comum 
• Assegurar consistência com a norma ISO 15504 
• Flexibilidade e extensão para outras disciplinas 
 
Conceito básicos 
 Área de Processo (Process Area – PA): práticas relacionadas em uma área que, 
quando executadas de forma coletiva, satisfazem um conjunto de metas consideradas 
importantes para trazer uma melhoria nessa área. 
 Metas Específicas: se aplicam a uma PA e tratam de características que descrevem o 
que deve ser implementado para satisfazer essa PA. São utilizadas nas avaliações para 
auxiliar a determinar se a PA está sendo satisfeita. 
 Práticas Específicas: atividades que são consideradas importantes na satisfação de 
uma meta específica associada. 
 Metas Genéricas: aparecem em diversas PAs. 
 Práticas genéricas: oferecem uma institucionalização que assegura que os processos 
associados com a PA serão eficientes, repetíveis e duráveis. 
 Produtos de trabalho típicos: exemplos de saídas de uma prática específica ou 
genérica. 
 Sub-práticas: descrições detalhadas que fornecem um direcionamento para a 
interpretação de práticas específicas ou genéricas. 
 
PAs são organizadas em quatro categorias de processo: Gerenciamento de Processos, 
Gerenciamento de Projetos, Engenharia e Suporte 
 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 07 
 
4 
 
1- Gerenciamento de Processos 
Atividades relativas à definição, planejamento, distribuição de recursos, aplicação, 
implementação, monitoramento, controle, avaliação, medição e melhoria de processos. 
 Envolve as seguintes PAs: 
• Foco no Processo Organizacional (básica) 
• Definição do Processo Organizacional (básica) 
• Treinamento Organizacional (básica) 
• Desempenho do Processo Organizacional (avançada) 
• Inovação e Desenvolvimento Organizacional (avançada) 
 
2- Gerenciamento de Projetos 
Atividades de gerência de projetos relacionadas ao planejamento, monitoramento e controle 
do projeto. 
• Planejamento de Projetos (básica) 
• Monitoramento e Controle de Projetos (básica) 
• Gerência de Acordos com Fornecedores (básica) 
• Gerência Integrada de Projetos (avançada) 
• Gerência de Riscos (avançada) 
• Integração de Equipes (avançada) 
• Gerência Quantitativa de Projetos (avançada) 
 
3- Engenharia: 
Atividades de desenvolvimento e manutenção que são compartilhadas entre as disciplinas de 
engenharia (por exemplo, engenharia de sistemas e engenharia de software). 
• Gerência de Requisitos 
• Desenvolvimento de Requisitos 
• Solução Técnica 
• Integração de Produtos 
• Verificação 
• Validação 
 
4- Suporte 
Atividades que apóiam o desenvolvimento e a manutenção de produtos. 
As PAs de Suporte tratam os processos que são utilizados no contexto da execução de outros 
processos, a saber: 
• Gerência de Configuração (básica) 
• Garantia da Qualidade do Processo e do Produto (básica) 
• Medição e Análise (básica) 
• Ambiente Organizacional para Integração (avançada) 
• Análise de Decisões e Resoluções (avançada) 
• Análise de Causas e Resoluções (avançada) 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 07 
 
5 
 
Representações Por Estágios: Vantagens 
 
• Fornece uma rota de implementação por meio de: 
– grupos de área de processo 
– implementação em seqüência 
– cada nível funciona como a fundação para o próximo 
• Estrutura familiar para aqueles que estão migrando do SW-CMM. 
• Habilidade de gerenciar processos ao longo da organização. 
• Em uma avaliação, atribui um nível de maturidade em que a organização se encontra, 
permitindo, assim, comparar organizações de forma direta. 
 
Representação por Estágio: PAs do Nível 2 
• Gerência de Requisitos 
• Planejamento de Projeto 
• Monitoração e Controle de Projeto 
• Garantia da Qualidade do Processo e do Produto
• Gerência de Acordo com Fornecedores 
• Gerência de Configuração 
• Medição e Análise 
 
Gerência de Requisitos: gerenciar os requisitos dos produtos e componentes de produtos do 
projeto e identificar as inconsistências entre estes requisitos e os planos e os produtos de 
trabalho do projeto. Envolve: 
– Assegurar que o conjunto de requisitos acordados é gerenciado para apoiar as 
necessidades de planejamento e execução do projeto. 
– Documentar as mudanças nos requisitos e suas justificativas, e manter a 
rastreabilidade bidirecional entre os requisitos fonte e todos os requisitos de 
produtos e componentes de produtos. 
 
Planejamento de Projetos: estabelecer e manter planos que definem as atividades do projeto. 
Envolve: 
– Desenvolver o plano do projeto 
– Interagir com os stakeholders de forma apropriada 
– Obter compromissos com o plano 
– Manter o plano 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 07 
 
6 
 
Monitoramento e Controle do Projeto: oferecer um entendimento do progresso do projeto, 
de maneira que as ações corretivas apropriadas possam ser tomadas quando o desempenho 
do projeto se desviar significativamente do plano. Envolve: 
– Monitorar atividades, comunicar status e tomar as ações corretivas. 
– O progresso é basicamente determinado pela comparação dos atributos reais 
de produtos de trabalho e tarefas, esforço, custo e cronograma com o que foi 
planejado. 
 
Garantia da Qualidade do Processo e do Produto: fornecer à equipe e à gerência um 
entendimento objetivo dos processos e seus produtos de trabalho associados. Envolve: 
– Avaliar objetivamente os processos, produtos de trabalho e serviços 
executados contra as descrições de processo, padrões e procedimentos 
aplicáveis 
– Identificar e documentar questões de não conformidades 
– Fornecer feedback para a equipe do projeto e gerentes sobre os resultados 
das atividades de garantia da qualidade 
– Assegurar que as questões de não conformidades sejam tratadas 
 
Gerência de Configuração: estabelecer e manter a integridade dos produtos de trabalho, 
utilizando a identificação da configuração, controle da configuração, comunicação do status da 
configuração e auditorias de configurações. Envolve: 
– Identificar a configuração de produtos de trabalho selecionados que compõem 
as baselines em determinados momentos no tempo 
– Controlar as mudanças nos itens de configuração 
– Construir ou fornecer especificações para construir produtos de trabalho a 
partir do sistema de gerenciamento de configurações 
– Manter a integridade das baselines 
– Fornecer um status preciso e os dados atuais de configurações para 
desenvolvedores, usuários finais e clientes 
 
Gerenciamento de Acordos com Fornecedores: gerenciar a aquisição de produtos de 
fornecedores para os quais existe um acordo formal. Envolve: 
– Determinar o tipo de aquisição que será utilizada para os produtos a serem 
adquiridos 
– Selecionar os fornecedores 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 07 
 
7 
 
– Estabelecer e manter acordos com fornecedores 
– Executar o acordo com o fornecedor 
– Aceitar a entrega dos produtos adquiridos 
– Fazer a transição dos produtos adquiridos para o projeto 
 
Medição e Análise: desenvolver e sustentar a capacidade de medições que é utilizada para 
apoiar as necessidades de gerenciamento de informações. Envolve: 
– Especificar os objetivos de medições e análises, de forma que estes estejam 
alinhados com as necessidades e objetivos de informações identificados 
– Especificar as medidas, mecanismos de coleta de dados e armazenamento, 
técnicas de análises e mecanismos de comunicação e de feedback 
– Implementar a coleta, armazenagem, análise e relatórios sobre os dados 
– Fornecer resultados objetivos que possam ser utilizados na tomada de 
decisões bem informadas e na tomada das ações corretivas apropriadas 
 
Representação por Estágio: PAs do Nível 3 
 
• Gerência de Projeto Integrada 
• Definição do Processo Organizacional 
• Foco no Processo Organizacional 
• Treinamento Organizacional 
• Desenvolvimento de Requisitos 
• Solução Técnica 
• Integração do Produto 
• Verificação 
• Validação 
• Gerência de Riscos 
• Análise de Decisão e Resolução 
 
Representação por Estágio: PAs do Níveis 4 e 5 
 
• Nível 4: 
– Gerência Quantitativa do Projeto 
– Desempenho do Processo Organizacional 
• Nível 5: 
– Análise de Causas e Resolução 
– Inovação e Implantação na Organização / Gestão de Processo Organizacional 
Aula 06 - ES2.pdf
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
1 
 
MPS.BR - Melhoria de Processo do Software Brasileiro 
 
• Mantido pela SOFTEX – Associação para Promoção da Excelência do Software 
Brasileiro (www.softex.br) 
• Ajuda as organizações a compreenderem todos os componentes presentes na 
aquisição e fornecimento de software, 
• Facilitar a contratação de produtos e serviços de software 
• Permitir às organizações executarem projetos de forma mais eficaz. 
 
Motivações 
– No topo da pirâmide estão as empresas exportadoras de software e outras 
grandes empresas que desejam atingir níveis mais altos de maturidade (CMMI 
níveis 4 e 5) e serem formalmente certificadas pelo SEI - Software Engineering 
Institute, em um processo de longo prazo. 
– Para as empresas, isto pode levar de 4 a 10 anos e custar muito dinheiro. 
 
– Na base encontra-se a grande massa de micro, pequenas e médias empresas 
(PMEs) que desenvolvem software e que necessitam melhorar radicalmente os 
seus processos, para atender normas internacionais e outros modelos (como 
CMMI nível 2 e aqui, o fator custo é crítico) 
– Isto pode levar de 2 a 4 anos e custar dezenas de milhares de dólares. Aqui, a 
melhoria de processo está baseada na oferta de pacotes de serviços para 
grupos de empresas (MNC - Modelo de Negócio Cooperado) 
Objetivo 
 Visa a Melhoria de Processo do Software Brasileiro em todo o país, com foco nas 
Pequenas e Médias Empresas, a um custo acessível 
 Modelo de qualidade de processos voltado para a realidade brasileira 
 
Vantagens: 
 Melhoria de processos mais gradual – Sete níveis mais ‘suaves’ de se alcançar 
 Compatibilidade total com CMMI (DEV e SVC) e normas internacionais ISO (12207; 
15504 e 20000,25000) 
Desvantagem: 
 A certificação MPS.BR tem foco para o mercado Brasileiro 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
2 
 
Estrutura: 4 Componentes 
 Modelo de Referência MPS para Software (MR-MPS-SW) 
o Contém os requisitos que os processos das unidades organizacionais devem 
atender para estar em conformidade; 
o O Guia de Aquisição é um documento complementar destinado a organizações 
que pretendam adquirir software e serviços 
 Modelo de Referência MPS para Serviços (MR-MPS-SV) 
o Contém as definições dos níveis de maturidade, processos e atributos do 
processo. 
o Baseado no CMMI-SVC 
 Método de Avaliação (MA-MPS) 
o O Guia de Avaliação contém o processo e o método de avaliação 
o Os requisitos para os avaliadores líderes,
avaliadores adjuntos e Instituições 
Avaliadoras (IA). 
 Modelo de Negócio para Melhoria de Processo de Software e Serviços. 
o Descreve regras de negócio para implementação do MRMPS-SW e MR-MPS-SV 
pelas Instituições Implementadoras 
o Avaliação seguindo o MA-MPS pelas Instituições Avaliadoras (IA) 
 
Estrutura: 5 Guias 
• Guia Geral de Software 
• Guia Geral de Serviços 
• Guia de Aquisição 
• Guia de Avaliação 
• Guia de Implementação 
 
Estrutura: 7: Níveis de Maturidade 
• Sete níveis de maturidade acumulativos: 
• A (Em Otimização) 
• B (Gerenciado Quantitativamente) 
• C (Definido) 
• D (Largamente Definido) 
• E (Parcialmente Definido) 
• F (Gerenciado) 
• G (Parcialmente Gerenciado). 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
3 
 
 
 
O atendimento aos atributos do processo (AP), pelo atendimento aos resultados esperados 
dos atributos do processo (RAP), é requerido para todos os processos no nível correspondente 
ao nível de maturidade. 
 
CAPACIDADE X ATRIBUTOS DE PROCESSO 
 
• AP 1.1 O processo é executado 
– propósito descreve o objetivo geral a ser atingido durante a execução do processo. 
 
• AP 2.1 O processo é gerenciado 
– Este atributo evidencia o quanto a execução do processo é gerenciada. 
 
• AP 2.2 Os produtos de trabalho do processo são gerenciados 
 – Este atributo evidencia o quanto os produtos de trabalho produzidos pelo processo são 
gerenciados apropriadamente 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
4 
 
• AP 3.1. O processo é definido 
– Este atributo evidencia o quanto um processo padrão é mantido para apoiar a 
implementação do processo definido. 
AP 3.2 O processo está implementado 
– o quanto o processo padrão é efetivamente implementado como um processo definido 
para atingir seus resultados. 
 
• AP 4.1 O processo é medido 
– o quanto os resultados de medição são usados para assegurar que a execução do 
processo atinge os seus objetivos. 
 
• AP 4.2 O processo é controlado 
– o quanto o processo é controlado estatisticamente para produzir um processo estável, 
capaz e previsível dentro de limites estabelecidos. 
 
AP 5.1 O processo é objeto de melhorias incrementais e inovações 
– Este atributo evidencia o quanto as mudanças no processo são identificadas a partir da 
análise de defeitos, problemas, causas comuns de variação do desempenho e da 
investigação de enfoques inovadores para a definição e implementação do processo. 
 
• AP 5.2 O processo é otimizado continuamente 
– Este atributo evidencia o quanto as mudanças na definição, gerência e desempenho do 
processo têm impacto efetivo para o alcance dos objetivos relevantes de melhoria do 
processo. 
 
 
 
 
 
 
 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
5 
 
NORMA ISO IEC 15504 – SPICE 
 
É uma “evolução” da ISO/IEC 12207, mas possui níveis de capacidade para cada processo assim 
como o CMMI. 
• O modelo tem dois objetivos: 
– Melhoria dos processos; 
– Determinação da capacidade de processos de uma organização. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Níveis de Maturidade do SPICE 
– 0 (Não executado): não possui nenhum tipo de processo, caótico; 
– 1 (Informalmente executado): algumas práticas básicas, porém não 
documentadas, depende de esforços individuais de seus colaboradores; 
– 2 (Planejado e rastreado): apresentam uma especificação padrão e requisitos 
bem delineados; 
– 3 (Definido): planejamento e organização usando processos padronizados; 
– 4 (Controlado): utiliza ferramentas de medição da melhoria dos seus processos 
tendo o desempenho gerenciado; 
– 5 (Melhoria contínua): possui uma resposta de seu desempenho. Controle e 
gerenciamento, visando detecção de falhas e correções. 
PROCESSO 
AVALIAÇÃO 
DO PROCESSO
MELHORIA DO 
PROCESSO 
DETERMINAÇÃO DA 
CAPACIDADE 
Identifica 
mudanças 
Identificação da 
Capacidade e 
riscos 
O que 
Leva a 
O que 
Leva a 
É examinado 
Motiva a 
PROCESSO 
AVALIAÇÃO 
DO PROCESSO
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
6 
 
• O SPICE possui mecanismos de pontuação em escala: 
– 0% a 15% não atendido; 
– 16% a 50% parcialmente atendido; 
– 51% a 85% largamente atendido; 
– 86% a 100% totalmente atendido. 
 
 Focada exclusivamente em software. 
 É um modelo para avaliação de processos de software. 
 Possui um modelo de referência que é a base da Avaliação dos Processos. 
 Dá suporte a todo o ciclo de vida do software. 
 Dividida em 9 partes. 
 Apenas um Relatório Técnico e não uma norma internacional. 
 
 
 
 O modelo de referência parte 2 documenta um conjunto universal de processos da 
engenharia de software que são fundamentais para uma boa engenharia de software, 
cobrindo as atividades de melhores práticas. 
 Ele descreve processos que uma organização pode realizar para adquirir, fornecer, 
desenvolver e operar software e os atributos de processos que caracterizam a 
capacidade desses processos. 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
7 
 
 O propósito do modelo de referência é fornecer uma base comum para modelos e 
métodos diferentes para avaliação de processos de software, garantindo que os 
resultados de avaliação possam ser relatados num contexto comum. 
 
1- As dimensões do modelo de referência: 
É caracterizada pela declaração dos propósitos do processo, que são os objetivos essenciais e 
quantificáveis de um processo. 
1. 1- CUS (customer-supplier) – cliente-fornecedor: estão nessa categoria os processos 
que afetam diretamente o cliente, desde a aquisição, fornecimento, instalação e assistência 
técnica. 
1.2 - ENG (engineering) – engenharia de software: esse grupo de processo tem o 
objetivo de transformar requisitos em um produto de software e foi subdividido em sete 
subprocessos ou componentes 
1.3- SUP (support) – apoio: os processos de apoio ou suporte, em número de oito, 
podem ser usados por quaisquer dos demais processos em qualquer ponto do ciclo de vida do 
software. 
1.4- MAN (management) – gestão: essa categoria consiste de quatro processos que 
contêm práticas de natureza geral, afetando qualquer pessoa que execute tarefas gerenciais, 
em qualquer ponto do ciclo de vida. 
1.5- ORG (organization) – organização: essa categoria de processos consiste de seis 
processos associados às atividades gerais da organização, desde os objetivos do negócio até a 
gestão de recursos humanos. 
 
2- A dimensão de capacidade de processo 
 Estabelece uma escala de capacidade de processo em geral. A capacidade é definida 
em uma escala de seis níveis crescentes, desde o nível inferior, o nível 0, até o nível 
superior, o nível 5. 
 Esses níveis são caracterizados por uma série de atributos de processo aplicáveis para
qualquer processo, que representam características quantificáveis necessárias para 
gerenciar um processo e melhorar sua capacidade de realização. 
 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
8 
 
HÁ 9 ATRIBUTOS DE PROCESSO (PA) QUE SÃO AGRUPADOS NOS NÍVEIS DE CAPACIDADE: 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 06 
 
9 
 
 
 
DIFERENÇA ENTRE AS ISO 
 
Aula 05 - ES2.pdf
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
1 
 
SISTEMAS DE QUALIDADE - GARANTIA DA QUALIDADE 
 
Conjunto de atividades executadas com o propósito de gerar confiança para o cliente e para a 
administração da organização de que os requisitos da qualidade especificados serão atingidos. 
Normas para Garantia da Qualidade: ISO 9001, ISO 9002 e ISO 9003 
 
SISTEMAS DE QUALIDADE - DOCUMENTAÇÃO 
• A documentação de um sistema de qualidade pode dividida em dois tipos: 
1. Documentos da qualidade : que descrevem o processo, ou seja, como os 
procedimentos devem ser executados. 
2. Registros da qualidade: que registram os resultados do processo, evidenciando que a 
organização seguiu as ações descritas nos documentos da qualidade. 
 
A ISO 9000-3 possui diretrizes para aplicação da ISO 9001 no que diz respeito a: 
1. Desenvolvimento; 
2. Fornecimento; 
3. Manutenção de software. 
 
Para cada item da ISO 9001 existe um correspondente na ISO 9000-3 que detalha e adequa ao 
software. 
 
SISTEMAS DE QUALIDADE – ISO-9001 
• Modelo para Garantia da Qualidade em Projeto, Desenvolvimento, Produção, 
Instalação e Assistência Técnica. 
• Indicada quando a conformidade com os requisitos especificados tiver que ser 
garantida pelo fornecedor desde o projeto até a manutenção. 
• ISO 9001 utiliza a metodologia conhecida por melhoria contínua conhecida como PDCA 
(Planejar – Fazer- Verificar – Agir) 
• A ISO 9001 baseia-se em 20 diretrizes que englobam vários aspectos da garantia da 
qualidade. 
• Apenas a ISO 9001 exige que todos os 20 elementos estejam presentes no sistema da 
qualidade. 
• A ISO 9001 é constituída por 8 seções sendo as 3 primeiras seções informações sobre a 
própria norma e as 5 ultimas seções focam na implementação da Norma 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
2 
 
SISTEMAS DE QUALIDADE – ISO-9001 – SEÇÕES - INFORMAÇÕES SOBRE A NORMA 
• Âmbito: Define que a organização precisa corresponder as exigências dos clientes e 
garantem que seus funcionários seguem as suas políticas e procedimentos enquanto 
implementam a melhoria contínua. 
• Referências Normativas: Fornece referência normativas que estão em conformidade 
com a ISO 9000 – para constituir os termos da 9001. 
• Termos e Definições: Define os termos utilizados na norma e indica as diferenças 
existentes entre as informações. 
 
SISTEMAS DE QUALIDADE – ISO-9001 – SEÇÕES: IMPLEMENTAÇÃO 
• Sistema de Gestão de Qualidade: Descreve os requisitos gerais que englobam todas as 
atividades da documentação do manual e controle de documentos, além de 
determinar a sequência de iteração dos processos. 
• Responsabilidade de Gestão: Exige o compromisso da gestão e explica que a 
administração deve estar orientada e dedicada aos produtos da organização, clientes 
e processos. 
• Gestão de Recursos: Fornece critérios para desempenhar uma determinada tarefa. 
Nessa seção discutem-se os recursos humanos, o planejamento de infra e ambiente de 
trabalho. 
• Realização do Produto: Define os passos ao desenvolvimento do produto envolvendo 
desde o momento da concepção até a entrega final. 
• Medição, Análise e Melhoria: Centra-se na medição, analise e melhoria, fazendo com 
que a empresa faça auditorias internas, monitorando o grau de satisfação do cliente. 
 
SISTEMAS DE QUALIDADE – ISO-90003 
• Organizava e dava nomes às diretrizes diferentes dos utilizados na ISO 9001 sendo 
necessário uma tabela de mapeamento entre as diretrizes da ISO 9000-3 e da ISO 
9001. 
• Agrupava as diretrizes em três partes principais: 
• Estrutura: Descreve aspectos organizacionais, relacionados ao sistema de 
qualidade. 
• Atividades do ciclo de vida: Descreve as atividades de desenvolvimento de 
software. 
• Atividades de suporte: Descreve as atividades que apoiam as atividades do 
ciclo de vida. 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
3 
 
• Nas edições mais recentes segue exatamente a estrutura da ISO 9001 e suas diretrizes 
têm o mesmo nome. 
SISTEMAS DE QUALIDADE – ISO-90003 – DIRETRIZES 
1. Responsabilidade da Gerência 
2. Requisitos do sistema de qualidade 
3. Revisão dos requisitos de contrato 
4. Requisitos de projeto do produto 
5. Controle de documentos e dados 
6. Requisitos de aquisição (compra) 
7. Produtos de clientes ou fornecedores 
8. Identificação e controle de produtos 
9. Processo de controle de requisites 
10. Testes e inspeções dos produtos 
11. Controle dos equipamentos de inspeção 
12. Inspeção e teste dos produtos 
13. Controle de não conformidade 
14. Ações corretivas e preventivas 
15. Manuseio, Armazenamento e Expedição 
16. Controle dos registros da qualidade 
17. Requisitos de auditoria interna da qualidade 
18. Requisitos de Treinamento 
19. Requisitos de Manutenção 
20. Técnicas estatísticas. 
 
SISTEMAS DE QUALIDADE – ISO-90003 – DIRETRIZES 
 
Exemplo diretriz: CONTROLE DOS EQUIPAMENTOS DE INSPEÇÃO 
Requer procedimentos para a calibração/aferição, o controle e a manutenção destes 
equipamentos. 
• Desenvolva procedimentos para controlar, calibrar e manter equipamentos (hardware 
e software) de inspeção, medida e teste usados para demonstrar que seu produto 
cumpre os requisitos especificados. 
• Use ferramentas, técnicas e equipamentos para testar se seu produto de software se 
adequa aos requerimentos especificados. 
• Desenvolva procedimentos para assegurar que seus equipamentos de medida são 
apropriados, efetivos e seguros. 
• Desenvolva procedimentos para calibrar todos os seus equipamentos de inspeção, 
medida e testes. 
• Desenvolva procedimentos para calibrar hardware e ferramentas usadas para testar e 
validade seus produtos de software. 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
4 
 
PROCESSO DE CICLO DE VIDA DO SOFTWARE – ISO-12207 
• A ISO/IEC 12207 define processo de desenvolvimento de software 
• Estabelece uma estrutura comum para os processos de ciclo de vida de software 
visando ajudar as organizações a compreenderem todos os componentes presentes na 
aquisição e fornecimento de software; 
• Possibilita as organizações firmarem contratos e executarem projetos de forma mais 
eficaz 
• Ela pode ser utilizada com qualquer modelo de ciclo de vida, método ou técnica de 
engenharia de software e linguagem de programação. 
• Contém um conjunto de processos, atividades e tarefas projetado para ser adaptado 
de acordo com cada projeto de software. 
• A
estrutura cobre o ciclo de vida do software desde a concepção de ideias até a 
descontinuação do software. 
• O processo de adaptação consiste na supressão de processos, atividades e tarefas não 
aplicáveis. 
• Descreve a arquitetura dos processos de ciclo de vida de software, mas não especifica 
os detalhes de como implementar ou executar as atividades e tarefas incluídas nos 
processos. 
• Não pretende prescrever o nome, formato ou conteúdo explícito da documentação a 
ser produzida. 
• Não prescreve um modelo específico de ciclo de vida ou métodos de desenvolvimento 
de software. 
• Essa flexibilidade é uma característica importante; 
• As atividades e tarefas do processo de ciclo de vida do software especificam "o que 
fazer" e não "como fazer“; 
 
Propósito do Processo: O principal objetivo da execução do processo. Convém que a 
implementação do processo forneça benefícios tangíveis aos envolvidos. 
 
Resultado do Processo: Um resultado observável da realização com sucesso do propósito do 
processo. 
Um resultado pode ser: 
• um artefato produzido; 
• uma mudança significativa de estado; e 
• o atendimento das especificações, como requisitos 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
5 
 
FORMALIZA PROCESSOS, ATIVIDADES E TAREFAS QUE DEVEM SER APLICADAS: 
 
 
 
 PF - Aquisição: obter um produto e/ou serviço que satisfaça a necessidade expressa 
pelo cliente. 
 PF - Fornecimento: fornecer um produto ou serviço ao cliente que atenda aos 
requisitos acordados. 
 PF - Desenvolvimento: transformar um conjunto de requisitos em um produto de 
software ou um sistema baseado em software que atenda às necessidades explicitadas 
pelo cliente. 
 PF - Operação: operar o produto de software no seu ambiente e fornecer suporte aos 
clientes desse produto. 
 PF - Manutenção: modificar um produto de software/sistema após sua entrega para 
corrigir falhas, melhorar o desempenho ou outros atributos, ou adaptá-lo a mudanças 
no ambiente. 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
6 
 
 PA - Documentação: desenvolver e manter registradas as informações do software 
produzidas por um processo. 
 PA - Gerência de Configuração: estabelecer e manter a integridade de todos os 
produtos de trabalho de um processo ou projeto e disponibilizá-los a todos os 
envolvidos. 
 PA - Garantia da Qualidade: fornecer garantia de que os produtos de trabalho e 
processos estão em conformidade com os planos e condições pré definidos. 
 PA - Verificação: confirmar que cada produto de trabalho de software e/ou serviço de 
um processo ou projeto reflete apropriadamente os requisitos especificados. 
 PA - Validação: confirmar que são atendidos os requisitos de um uso específico 
pretendido para o produto de trabalho de software. 
 PA - Revisão Conjunta: manter um entendimento comum com os envolvidos 
(stakeholders) a respeito do progresso obtido em relação aos objetivos acordados e ao 
que deveria ser feito. 
 PA - Auditoria: determinar, de forma independente, a conformidade dos produtos e 
processos selecionados com os requisitos, planos e contratos, quando apropriado. 
 PA - Resolução de Problema: assegurar que todos os problemas identificados são 
analisados e resolvidos e que as tendências são identificadas. 
 PA - Usabilidade: garantir que sejam considerados os interesses e necessidades dos 
envolvidos de forma a proporcionar otimização do suporte e do treinamento, aumento 
da produtividade e da qualidade do trabalho, melhoria das condições para o trabalho 
humano e redução das chances de rejeição do sistema por parte do usuário. 
 PA - Avaliação de Produto: garantir, através de exame e medição sistemáticos, que o 
produto atende às necessidades especificadas e implícitas dos seus usuários. 
 
 
 
 
 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
7 
 
 PO - Gerência: organizar, monitorar e controlar a iniciação e a execução de qualquer 
processo de forma a atingir as suas metas de acordo com as metas de negócio da 
organização. 
 PO - Infra estrutura: manter uma infra estrutura estável e confiável, necessária para 
apoiar a execução de qualquer outro processo. A infra estrutura pode incluir 
hardware, software, métodos, ferramentas, técnicas, padrões e instalações para o 
desenvolvimento, a operação ou a manutenção. 
 PO - Melhoria: estabelecer, avaliar, medir, controlar e melhorar um processo de ciclo 
de vida de software. 
 PO - Recursos Humanos: fornecer à organização os recursos humanos adequados e 
manter as suas competências consistentes com as necessidades do negócio. 
 PO - Gestão de Ativos: gerenciar a vida dos ativos reutilizáveis desde a sua concepção 
até a sua descontinuação. 
 PO - Gestão do Programa de Reuso: planejar, estabelecer, gerenciar, controlar e 
monitorar esse programa em uma organização e sistematicamente explorar as 
oportunidades de reuso. 
 PO - Engenharia de Domínio: desenvolver e manter modelos, arquiteturas e ativos de 
domínio. 
 
PROCESSO DE DESENVOLVIMENTO 
 Implementação do processo; 
 Análise dos requisitos do sistema; 
 Projeto da arquitetura do sistema; 
 Análise dos requisitos do software; 
 Projeto de arquitetura do software; 
 Projeto detalhado do software; 
 Codificação e testes do software; 
 Integração do software; 
 Testes de qualificação do software; 
 Integração do sistema; 
 Teste de qualificação do sistema; 
 Instalação do software; 
 Apoio à aceitação do software 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
8 
 
O desenvolvedor deve estabelecer e documentar os requisitos do software, incluindo as 
especificações das seguintes características de qualidade: 
(i) especificações funcionais e de capacidade, 
(ii) interfaces externas ao item de software, 
(iii) requisitos de qualificação, 
(iv) especificações de proteção, segurança e de engenharia de fatores humanos 
(ergonomia), 
(v) definição de dados e requisitos de bases de dados, 
(vi) requisitos de instalação e aceitação do produto, 
(vii) documentação do usuário, 
(viii) requisitos do usuário para execução, operação e manutenção. 
 
O desenvolvedor deve avaliar os requisitos do software considerando os seguintes critérios: 
(i) Rastreabilidade para os requisitos do sistema e projeto do sistema, 
(ii) consistência externa com os requisitos do sistema, 
(iii) consistência interna, 
(iv) testabilidade, 
(v) Viabilidade do projeto do software, 
(vi) viabilidade da operação e manutenção. 
Os resultados das avaliações devem ser documentados. 
 
Resultados: 
 Os requisitos para o desenvolvimento do software são obtidos e acordados; 
 um produto de software ou um sistema baseado em software é desenvolvido; 
 produtos de trabalho intermediários são desenvolvidos e demonstram que o produto 
final é baseado nos requisitos; 
 há consistência entre os produtos do processo de desenvolvimento; 
 os fatores de qualidade de sistema são otimizados
em relação aos requisitos do 
sistema, por exemplo, desempenho, custo de desenvolvimento, usabilidade etc.; 
existem evidências que demonstram que o produto final atende aos requisitos (por exemplo, 
evidências de teste); e 
 o produto é instalado de acordo com os requisitos cordados. 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 05 
 
9 
 
 
Resultado 
 Os requisitos alocados aos elementos de soft do sistema e suas interfaces são 
definidos; 
 Os requisitos de soft são analisados em relação à testabilidade e correção; 
 A consistência e a rastreabilidade entre os requisitos de software e os requisitos de 
sistema são estabelecidas; 
 A priorização para implementação dos requisitos de soft é definida; 
 Os requisitos de software são aprovados e atualizados, sempre que necessário; 
 As mudanças nos requisitos de software são avaliadas quanto aos impactos nos 
aspectos técnicos, de custo e de cronograma; e 
 Os requisitos de software são colocados sob uma linha básica (baseline) e 
comunicados a todas as partes envolvidas. 
 
Aula 04 - ES2.pdf
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
1 
 
QUALIDADE DO PRODUTO DE SOFTWARE 
ISO-9126 - ISSO-25000 
São normas que tem o foco na medição da qualidade do produto de software 
A ISO 9126 É UMA NORMA DA FAMÍLIA ISO-9000 
 A família de normas ISO 9000 designam um grupo de normas técnicas que 
estabelecem um modelo (padrão) de gestão da qualidade para organizações em geral, 
qualquer que seja o seu tipo ou dimensão; 
 A adoção das normas ISO é vantajosa para as organizações uma vez que lhes confere: 
o Maior organização; 
o Maior Produtividade e credibilidade; 
o Aumento de competitividade nos mercados nacional e internacional. 
 A norma ISO/IEC 9126 é um conjunto de normas que tratam qualidade de software e 
estabelecem um modelo de qualidade com os seguintes componentes: 
o Processo 
o Produto 
o Qualidade em Uso 
 
Processo de desenvolvimento, cuja qualidade afeta a qualidade do produto de software 
gerado e é influenciado pela natureza do produto desenvolvido; 
Produto, compreendendo os atributos de qualidade do produto (sistema) de software. 
Os atributos de qualidade podem ser divididos entre atributos: 
1. Internos: 
Fatores perceptíveis pela equipe de desenvolvimento (desenvolvedores, mantenedores, 
ou seja, profissionais que tem acesso ao código fonte). 
1. Externos: 
Fatores perceptíveis pelos usuários (usuários finais e clientes). 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
2 
 
 
 
 Também identificada como NBR 13596 
 Fornece um modelo de propósito geral o qual define 6 categorias de características de 
qualidade de software que são, por sua vez, divididas em sub características. 
 Que podem ser avaliadas por um conjunto de métricas. 
Categoria Característica 
Funcionalidade 
satisfaz às necessidades explícitas 
e implícitas do usuário? 
Confiabilidade 
durante um período de tempo, 
funciona de acordo com as condições 
pré-estabelecidas? 
Usabilidade é fácil de usar? 
Eficiência não desperdiça recursos? 
Manutenibilidade é fácil de alterar? 
Portabilidade 
é facilmente adaptável a 
diferentes plataformas? 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
3 
 
FUNCIONALIDADE: A capacidade de um software prover funcionalidades que satisfaçam o 
usuário em suas necessidades declaradas e implícitas, dentro de um determinado contexto de 
uso. 
• Adequação: mede o quanto o conjunto de funcionalidades é adequado às 
necessidades do usuário; 
• Acurácia (ou precisão): representa a capacidade do software de fornecer 
resultados precisos ou com a precisão dentro do que foi acordado/solicitado; 
• Interoperabilidade: trata da maneira como o software interage com outro(s) 
sistema(s) especificados; 
• Segurança: mede a capacidade do sistema de proteger as informações do 
usuário e fornecê-las apenas (e sempre) às pessoas autorizadas; 
 
CONFIABILIDADE: O produto se mantém no nível de desempenho nas condições 
estabelecidas. 
 
• Maturidade: a capacidade do software em evitar falhas decorrentes de 
defeitos no software; 
• Tolerância a Falhas: a capacidade do software em manter o funcionamento 
adequado mesmo quando ocorrem defeitos nele ou nas suas interfaces 
externas; 
• Recuperabilidade: a capacidade de um software se recuperar após uma falha, 
restabelecendo seus níveis de desempenho e recuperando os seus dados; 
 
USABILIDADE: capacidade do produto de software ser compreendido, seu funcionamento 
aprendido, ser operado e ser atraente ao usuário. 
O conceito é abrangente e se aplica mesmo a programas que não possuem uma interface para 
o usuário final. 
 
• Inteligibilidade: representa a facilidade com que o usuário pode compreender 
as suas funcionalidades e avaliar se o mesmo pode ser usado para satisfazer as 
suas necessidades específicas; 
• Apreensibilidade: identifica a facilidade de aprendizado do sistema para os 
seus potenciais usuários; 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
4 
 
• Operacionalidade: como o produto facilita a sua operação por parte do 
usuário, incluindo a maneira como ele tolera erros de operação; 
• Atratividade: envolve características que possam atrair um potencial usuário 
para o sistema, o que pode incluir desde a adequação das informações 
prestadas para o usuário até os requintes visuais utilizados na sua interface 
gráfica; 
 
EFICIÊNCIA: tempo de execução e os recursos envolvidos são compatíveis com o nível de 
desempenho do software. 
 
• Comportamento em Relação ao Tempo: avalia se os tempos de resposta (ou 
de processamento) estão dentro das especificações. qual é o tempo de 
resposta e de processamento? 
• Utilização de Recursos: mede tanto os recursos consumidos quanto a 
capacidade do sistema em utilizar os recursos disponíveis. quanto recurso usa? 
Durante quanto tempo 
 
MANUTENIBILIDADE: Capacidade (ou facilidade) do produto de software ser modificado, 
incluindo tanto as melhorias ou extensões de funcionalidade quanto as correções de defeitos, 
falhas ou erros. 
 
• Analisabilidade: identifica a facilidade em se diagnosticar eventuais problemas 
e identificar as causas das deficiências ou falhas; 
• Modificabilidade: caracteriza a facilidade com que o comportamento do 
software pode ser modificado; 
• Estabilidade: avalia a capacidade do software de evitar efeitos colaterais 
decorrentes de modificações introduzidas; 
• Testabilidade: representa a capacidade de se testar o sistema modificado, 
tanto quanto as novas funcionalidades quanto as não afetadas diretamente 
pela modificação; 
 
PORTABILIDADE: A capacidade do sistema ser transferido de um ambiente para outro. 
Ambiente é todo fator de adaptação, tal como: 
• Diferentes condições de infraestrutura (sistemas operacionais, versões de bancos de 
dados, etc.), 
Disciplina Engenharia
de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
5 
 
• Diferentes tipos e recursos de hardware (tal como aproveitar um número maior de 
processadores ou memória). 
• Fatores como idioma ou a facilidade para se criar ambientes de testes devem ser 
considerados como características de portabilidade. 
 
• Adaptabilidade: capacidade do software se a adaptar a diferentes ambientes 
sem a necessidade de ações adicionais (configurações); 
• Capacidade para ser Instalado: identifica a facilidade com que pode se instalar 
o sistema em um novo ambiente; 
• Coexistência: mede o quão facilmente um software convive com outros 
instalados no mesmo ambiente; 
• Capacidade para Substituir: capacidade que o sistema tem de substituir outro 
sistema especificado, em um contexto de uso e ambiente específicos. Este 
atributo interage tanto com adaptabilidade quanto com a capacidade para ser 
instalado. 
 
QUALIDADE DO PRODUTO DE SOFTWARE – ISO-9126 
 
 
 
 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
6 
 
Definição dos níveis de pontuação 
• Os resultados quantificados são mapeados em uma escala com regiões sugeridas pela 
norma: 
– Três para a pontuação Satisfatória: 
Excelente 
Bom 
Razoável 
 – Uma para a pontuação Insatisfatória 
 
 
QUALIDADE DO PRODUTO DE SOFTWARE – ISO-25000 - ISO/IEC 25000 (SQUARE) 
Software product QUAlity - Requirements and Evaluation 
E uma evolução das séries de Norma 
 
OBJETIVO: 
• Organizar; 
• Enriquece; 
• Unir as séries que cobrem dois processos principais: 
 
1. Especificação de requisitos de qualidade do software e 
2. Avaliação da qualidade do software, suportada pelo processo de medição da qualidade 
do software. 
 
ESTABELECE CRITÉRIOS PARA: 
 
• especificação de requisitos de qualidade de produtos de software, 
• indicadores e respetiva avaliação 
 
• Inclui um modelo de qualidade para unir as definições de qualidade dos clientes com 
os atributos no processo de desenvolvimento. 
• Tendo a ISO-9126 como base principal, a ISO-25000 pode ser entendida como a norma 
que estabelece o “como fazer” e acrescenta algumas características. 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
7 
 
MÓDULOS PRINCIPAIS 
• Gerenciamento 
• Introdução geral sobre 25000 
• Definição de termos 
• Modelo de qualidade 
• Corresponde a 9126 – conceitos qualidade externa/interna – modelo de 
características/atores 
• Medição 
• Definir medição / Processo de medição / Proposta de métricas 
• Requisitos de qualidade 
• Herda da 9126 – conceito do objetivo de qualidade para um produto – relação 
com os requisitos do software 
• Avaliação 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 04 
 
8 
 
 
Aula 03 - ES2.pdf
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 03 
 
1 
 
 
 
Somente há poucas décadas o conceito de qualidade passou formalmente para a função de 
gerenciamento. 
• Era somente relacionada às funções de inspeção 
• Hoje é vista como essencial para o sucesso de um produto 
 
ERA DA INSPEÇÃO 
 No final do século XVIII e início do século XIX a Qualidade era obtida de uma forma 
bem diferente da obtida hoje em dia. 
 Com a Revolução Industrial começou a aumentar o distanciamento entre o produtor e 
o consumidor, o que originou os primeiros problemas sérios com a qualidade do 
produto. 
 Henry Ford descobriu que se dividissem as tarefas de em pequenas operações, poderia 
recrutar mão-de-obra não qualificada, treinar e, assim, conduzir de maneira eficaz 
todas as tarefas de fabricação e montagem de um automóvel. 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 03 
 
2 
 
ERA DO CONTROLE 
 Com a ascensão da empresa industrial e da produção massificada, tornou-se 
impraticável inspecionar a totalidade de produtos que saíam aos milhares das linhas 
de montagem; 
 Surgimento do controle estatístico da qualidade (CEQ), baseado em técnicas de 
amostragem; 
 Apesar do envolvimento dos diversos setores das empresas na busca de qualidade em 
seus produtos, faltava uma coordenação central. 
ERA DA GARANTIA 
 A Guerra Fria fez com que a questão "qualidade" ganhasse nova dimensão. Estudos 
mostravam que os problemas da falta de qualidade eram causados em 80% dos casos 
por falhas gerenciais e não por falhas técnicas; 
 As empresas sempre se preocuparam com a qualidade no "chão de fábrica", 
esquecendo-se que os grandes problemas surgiam das falhas de comunicação entre os 
diversos órgãos da empresa e entre diversos níveis hierárquicos. 
ERA DA QUALIDADE 
 O livro Total Quality Control Engineering and Management (Feigenbaum, 1961, que 
envolve de maneira sistêmica todos os órgãos da empresa, passando pelo marketing, 
projeto, desenvolvimento, aquisição, fabricação, inspeção e testes, expedição, 
instalação e assistência técnica; 
 A ênfase passa a ser o cliente, tornando-se o centro das atenções das organizações 
que dirigem seus esforços para satisfazer às suas necessidades e expectativas; 
 A gestão da qualidade total pode ser definida como um conjunto integrado e 
sistêmico de procedimentos que visam coordenar as ações das pessoas de uma 
organização. 
ERA DA GESTÃO 
 A qualidade deixa de ser atributo do produto ou serviço, deixa de ser também 
responsabilidade exclusiva do departamento da qualidade. A qualidade passa a ser 
problema de todos e envolve todos os aspectos da operação da empresa; 
 O desenvolvimento de padrões continua a ser feito com bastante afinco, sobretudo 
em busca de normalizações internacionais, a exemplo da ISO 9000; 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 03 
 
3 
 
Aqui aparece Joseph Moses Juran com sua famosa definição de qualidade como adequação ao 
uso. Fica assim expressa a existência de um sujeito, que vai receber o bem ou serviço, cujas 
necessidades de uso precisam ser satisfeitas. 
Com o conceito de adequação ao uso, Juran explicita que o produto deve cumprir as funções 
básicas que resolvem os problemas do cliente e, ao mesmo tempo, atender às características 
conexas como nível de desempenho, durabilidade, pouca manutenção e facilidade de uso, 
entre outras. 
QUALIDADE DE SOFTWARE 
 “É um processo sistemático que focaliza todas as etapas e artefatos produzidos com o 
objetivo de garantir a conformidade de processos e produtos, prevenindo e 
eliminando defeitos”. 
 Conjunto de características que devem ser alcançadas em um determinado grau para 
que o produto atenda às necessidades de seus usuários. [Ana R. C. Rocha, 2001] 
 Alguns modelos de qualidade de software também são citados por Pressman (2005). 
Há o que McCall e Cavano (1978) sugerem como métricas para qualidade de software. 
Conhecido como Fatores
da Qualidade 
 Portanto, é necessário um planejamento adequado para que a qualidade de software 
seja atingida, conforme a definição de qualidade que deverá ser alcançada. 
 Para isso são necessários modelos, padrões, procedimentos e técnicas para atingir 
essas metas de qualidade propostas. 
 Para tanto, todas as etapas do ciclo de vida de engenharia de software devem ser 
contempladas com atividades que visam garantir a qualidade tanto do processo 
quanto do produto. 
• Pelos fundamentos da Engenharia de Software, um processo bem definido e aferido 
tende a produzir, no final, um produto com qualidade. 
• Mas como medir se o produto, resultante do processo, tem a qualidade esperada? 
• Algumas normas focam medir a qualidade do processo. Outras normas enfatizam 
medir a qualidade do produto. 
• Para que se possa medir a qualidade é necessário estabelecer critérios; 
• Os critérios visam minimizar a subjetividade da avaliação; 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 03 
 
4 
 
MODELO DE QUALIDADE DE MCCALL 
 
 
 
 
 
 
 
 
OPERAÇÃO 
 Correção: o quanto um programa satisfaz a sua especificação e cumpre os 
objetivos visados pelo cliente 
 Confiabilidade: o quanto um programa executa a função pretendida com a 
precisão exigida 
 Eficiência: a quantidade de recursos computacionais e de código exigida para que 
um programa execute sua função 
 Integridade: o quanto o acesso ao software ou aos dados por pessoas não 
autorizadas pode ser controlado 
 Usabilidade: o quanto de esforço é necessário para aprender, preparar a entrada e 
interpretar a saída de um programa. 
 
TRANSIÇÃO 
 Portabilidade: o quanto de esforço é necessário para transferir um programa de 
uma plataforma de hw e/ou software para outra 
 Reusabilidade: o quanto um programa (ou partes dele) pode ser reutilizado em 
outros programas 
 Interoperabilidade: o quanto de esforço é necessário para se acoplar um 
programa a um outro 
 
REVISÃO 
 Manutenção: o quanto de esforço é necessário para localizar e eliminar erros em um 
programa 
 Flexibilidade: o quanto de esforço é necessário para modificar um programa 
 Testabilidade: o quanto de esforço é necessário para testar um programa a fim de 
garantir que ele execute a função pretendida 
TRANSIÇÃO 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 03 
 
5 
 
A VISÃO DO USUÁRIO: 
 O usuário interessado na utilização e no desempenho Há interesse nas medidas 
externas de qualidade: 
• as funções especificadas estão disponíveis? 
• qual é a confiabilidade do software e sua eficiência? 
• é fácil de usar? 
 é fácil para transferir para outro ambiente operacional Características construtivas não 
interessam 
 
A VISÃO DO DESENVOLVEDOR: 
 Deve ser coerente com as expectativas do usuário (requisitos + aceitação) 
 Medidas internas – ex: controle de caminhos + tempo de espera ⇒ tempo de resposta 
 Qualidade de produtos intermediários Expectativas de outros atores; ex: manutenção 
 Produtos de prateleira: requisitos implícitos 
 
CRISE DO SOFTWARE: 
 Abordagem tradicional com teste final 
• grande percentual de sistemas encomendados e não usados; desperdício 
• motivos: ou com problemas de confiabilidade ou não atendiam mais às 
necessidades do cliente 
 Falta de foco no cliente: 
• distância do especificado 
 Foco no processo 
• não basta esperar o produto final 
bons processos -> bons produtos 
 
Aula 02 - ES2.pdf
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 02 
 
1 
 
 
 
 
 
 
 
 
 
 
 
QUETIONÁRIO: 
1. O que você entende de Qualidade? 
2. Qual o seu nível de qualidade ao desempenhar uma atividade ou função? 
3. Qual o nível de qualidade que você espera de um “terceiro”? 
4. Quem “desenvolveu” o critério de qualidade no mundo? Por quê? Desde quando? 
5. Cite 3 ferramentas de qualidade? Explique? 
6. Vocês conhece o programa de qualidade 5S? Quem já executou? 
QUALIDADE 
• Para que se possa identificar a qualidade de algo é necessário que o que se está 
alisando possa ser medido segundo algum critério; 
• A qualidade de algo deve atender aos requisitos implícitos e explícitos esperados para 
o produto; 
• Em um produto que possui uma forma física torna-se mais fácil de identificar os itens 
de qualidade do que um produto de software. 
• As métricas de qualidade se tornaram cada vez mais necessárias à medida que a 
indústria tendeu a produção em larga escala; 
• As métricas avaliam tanto o produto final como o(s) processo(s) utilizado para produzir 
o produto. 
CONCEITO DE QUALIDADE DE SOFTWARE 
• “A qualidade de software é definida como a conformidade a requisitos funcionais e de 
desempenho explicitamente declarados, a padrões de desenvolvimento claramente 
documentados e a características implícitas que são esperadas de todo software 
profissionalmente desenvolvido” (PRESSMAN, 1995) 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 02 
 
2 
 
OS FATORES QUE AFETAM A QUALIDADE DE SOFTWARE PODEM SER CATEGORIZADOS EM 02 
(DOIS) GRUPOS: 
• Podem ser medidos diretamente. Exemplo: erros, unidade de tempo. 
• Medidos indiretamente. Exemplo: usabilidade, manutenibilidade. 
• A qualidade de um software depende de se decidir o que significa qualidade; 
• Não se pode ser dogmático: “Não cometerás erros de programação” 
• É preciso adotar uma perspectiva técnica e considerar diversos fatores que afetam a 
construção do produto e que influenciem no julgamento dos usuários... 
FATORES QUE INFLUENCIAM 
• Tamanho e complexidade do software sendo construído; 
• Número de pessoas envolvidas no projeto; 
• Ferramentas utilizadas; 
• Custos associados à existência de erros; 
• Custos associados à detecção e à remoção de erros. 
 
SQA - SOFTWARE QUALITY ASSURANCE - GARANTIA DE QUALIDADE DO SOFTWARE 
É uma atividade que é aplicada ao longo de todo processo de engenharia de software 
 
SQA ABRANGE 
1. Métodos e ferramentas de análise, projeto, codificação e teste; 
2. Revisões técnicas formais que são aplicadas durante cada fase de engenharia de 
software; 
3. Uma estratégia de teste de múltiplas fases; 
4. Controle da documentação de software e das mudanças feitas nela; 
5. Um procedimento para garantir a adequação aos padrões de desenvolvimento de 
software (quando aplicáveis) 
6. Mecanismos de medição e divulgação. 
 
QUALIDADE É UM DOS PRINCIPAIS OBJETIVOS DA ENGENHARIA DE SOFTWARE. 
• Muitos métodos, técnicas e ferramentas são desenvolvidas para apoiar a produção 
com qualidade. 
• “Tem-se dado grande importância ao processo como forma de se garantir um software 
de melhor qualidade.” 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 02 
 
3 
 
O termo QUALIDADE pode ser definido de várias formas, causando mal-entendidos: 
• Qualidade não tem um único sentido; 
• Para cada conceito existem vários níveis
de abstração; 
• Visão popular pode ser diferente do seu uso profissional. 
• Qualidade é estar em conformidade com os requisitos do cliente. 
• Qualidade é antecipar e satisfazer os requisitos dos clientes. 
• Qualidade é escrever tudo o que se deve fazer e fazer tudo o que foi escrito. 
• SIGNIFICADO: “Propriedade, atributo ou condição das coisas ou das pessoas capaz de 
distingui-las das outras e de lhes determinar a natureza” (Aurélio) 
 
EVOLUÇÃO DA QUALIDADE
 
A maioria dos autores que hoje são chamados de "gurus da qualidade" (Juran, Deming, 
Feigenbaum e Ishikawa). 
EDWARDS DEMING: 
 Norte-americano 
 Várias conferências no Japão na década de 1950 
 Gestão da qualidade 
 “A participação do trabalhador no processo decisório é fundamental” 
 “A simples inspeção de entrada e de saída não é eficaz” 
 “Sistema” dos 14 princípios 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 02 
 
4 
 
OS 14 PRINCÍPIOS: 
 
1º princípio: Estabeleça constância de propósitos para a melhoria do produto e do serviço, 
objetivando tornar-se competitivo e manter-se em atividade, bem como criar emprego; 
 
2º princípio: Adote a nova filosofia. Estamos numa nova era econômica. A administração 
ocidental deve acordar para o desafio, conscientizar-se de suas responsabilidades e 
assumir a liderança no processo de transformação; 
 
3º princípio: Deixe de depender da inspeção para atingir a qualidade. Elimine a 
necessidade de inspeção em massa, introduzindo a qualidade no produto desde seu 
primeiro estágio; 
 
4º princípio: Cesse a prática de aprovar orçamentos com base no preço. Ao invés disto, 
minimize o custo total. Desenvolva um único fornecedor para cada item, num 
relacionamento de longo prazo fundamentado na lealdade e na confiança; 
 
5º princípio: Melhore constantemente o sistema de produção e de prestação de serviços, 
de modo a melhorar a qualidade e a produtividade e, consequentemente, reduzir de 
forma sistemática os custos; 
 
6º princípio: Institua treinamento no local de trabalho; 
 
7º princípio: Institua liderança. O objetivo da chefia deve ser o de ajudar as pessoas e as 
máquinas e dispositivos a executarem um trabalho melhor. A chefia administrativa está 
necessitando de uma revisão geral, tanto quanto a chefia dos trabalhadores de produção; 
 
8º princípio: Elimine o medo, de tal forma que todos trabalhem de modo eficaz para a 
empresa; 
 
9º princípio: Elimine as barreiras entre os departamentos. As pessoas engajadas em 
pesquisas, projetos, vendas e produção devem trabalhar em equipe, de modo a preverem 
problemas de produção e de utilização do produto ou serviço; 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 02 
 
5 
 
10º princípio: Elimine lemas, exortações e metas para a mão-de-obra que exijam nível zero 
de falhas e estabeleçam novos níveis produtividade. Tais exortações apenas geram 
inimizades, visto que o grosso das causas da baixa qualidade e da baixa produtividade 
encontram-se no sistema, estando, portanto, fora do alcance dos trabalhadores; 
 
11º princípio: Elimine padrões de trabalho (quotas) na linha de produção. Substitua-os 
pela liderança; elimine o processo de administração por objetivos. Elimine o processo de 
administração por cifras, por objetivos numéricos. Substitua-os pela administração por 
processos através do exemplo de líderes; 
 
12º princípio: Remova as barreiras que privam o operário horista de seu direito de 
orgulhar-se de seu desempenho. A responsabilidade dos chefes deve ser mudada de 
números absolutos para a qualidade; remova as barreiras que privam as pessoas da 
administração e da engenharia de seu direito de orgulharem-se de seu desempenho. Isto 
significa a abolição da avaliação anual de desempenho ou de mérito, bem como da 
administração por objetivos; 
 
13º princípio: Institua um forte programa de educação e auto-aprimoramento; 
 
14º princípio: Engaje todos da empresa no processo de realizar a transformação. A 
transformação é da competência de todo mundo. 
 
Aula 01 - ES2.pdf
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 01 
 
1 
 
I - EMENTA 
Qualidade de Software. Modelos de qualidade de software. Verificação e Validação. Testes. 
Plano e casos de teste. Técnicas e tipos de teste. Revisões técnicas formais. Manutenção de 
Software. Tipos de manutenção. Gerência de configuração. 
 
II – OBJETIVOS GERAIS 
Apresentar ao aluno os aspectos mais importantes para a qualidade de um produto de 
software, bem como a importância das atividades de testes e da manutenção de software. 
 
III – OBJETIVOS ESPECÍFICOS 
Apresentar ao aluno conceitos de qualidade de produto e de processo, bem como os modelos 
de qualidade de software. Conscientizar os alunos sobre a importância da Verificação e 
Validação para a qualidade do software que é produzido, bem como a importância dos testes e 
seu impacto nos custos de desenvolvimento do software. Apresentar as atividades de teste e 
as principais técnicas empregadas. Apresentar ao aluno a importância da manutenção no ciclo 
de vida de um software. Mostrar que esta atividade envolve não somente o código, mas 
também todos os documentos do projeto. 
 
IV - CONTEÚDO PROGRAMÁTICO 
1. Qualidade de software 
 Conceitos de qualidade de produto e de processo 
 Qualidade do produto de software: ISO/IEC 9126 e ISO 25000 
 Sistemas da Qualidade: ISO 90003 e ISO 9001 
 Processos do Ciclo de Vida do Software: ISO 12207 
 Modelos de qualidade de software 
CMMI (Capability Maturity Model Integration) 
MPS.Br (Melhoria de Processos de software Brasileiro) 
SPICE - ISO 15504 
 
2. Verificação e Validação de software 
 Definição e importância da Verificação e Validação ao longo do ciclo de vida 
 Classificação das técnicas 
 Revisões técnicas: Passeio (walkthrough); Inspeção do produto 
 Abordagens formais: Prova de correção; O processo sala limpa (clean room) 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 01 
 
2 
 
 Testes: Fundamentos; Os testes e o ciclo de vida 
 Testes unitários: Testes Estruturais; Testes Funcionais 
 Outras estratégias de teste 
 
3. Manutenção de software 
 Manutenção: definição e características 
 Manutenabilidade 
 Processos de Manutenção 
 Técnicas de Desenvolvimento para a Manutenabilidade 
 Padrões de Desenvolvimento 
 Padrões de Manutenção 
 Desenvolvimento Baseado em Componentes e Impactos na Manutenção 
 Desenvolvimento Orientado a Aspectos e Impactos na Manutenção 
 Atividades de Apoio a Manutenção 
 
4. Gerência de Configuração 
 
V - BIBLIOGRAFIA BÁSICA 
PAULA FILHO, W. P. Engenharia de software: fundamentos, métodos e padrões. 3. ed. Rio de 
Janeiro: LTC, 2012. 
PRESSMAN, R. S. Engenharia de software: uma abordagem profissional. 7. ed. AMGH, 2011. 
COSTA, I.; MOLLO NETO, P. L. O.; CARDOSO JÚNIOR, J. L.. Qualidade em tecnologia da 
informação: conceitos de qualidade nos processos, produtos, normas, modelos e testes de 
software no apoio às estratégias empresariais. São Paulo: Atlas, 2013.
VI - BIBLIOGRAFIA COMPLEMENTAR 
SOMMERVILLE, I. Engenharia de software. 9. ed. São Paulo: Pearson Prentice Hall, 2011. 
COHN, M. Desenvolvimento de Software com Scrum. Bookman, 2011. 
SCHACH, S. R. Engenharia de software: os paradigmas clássico orientado a objetos. 7. ed. Porto 
Alegre : AMGH, 2010. 
BECK., and Kent. TDD Desenvolvimento Guiado por Testes. Bookman, 2010. PEZZÉ, M.; YOUNG, 
M. Teste e Análise de Software: processo, princípios e técnicas. Porto Alegre: Bookman, 2008. 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 01 
 
3 
 
Lembrar: O que é software? 
 Muitas pessoas atualmente ainda possuem um conceito errado a respeito de software, 
o que é então para vocês software???? 
Segundo o Autor Roger Pressman, software de computador é o produto que os 
profissionais de software (quais são os profissionais), constroem e mantêm ao longo do 
tempo. Esse software abrange programas que executam em computadores de qualquer 
tamanho e arquitetura, conteúdo que é apresentado ao programa a ser executado e 
documentos tanto de forma impressa quanto virtual que combinam todas as formas de mídias 
eletrônicas. 
 
O que é Engenharia de Software? 
 Segundo Sommerville, Engenharia de software é uma disciplina de engenharia 
relacionada com todos os aspectos da produção de software, desde os estágios iniciais de 
especificação do sistema até sua manutenção, depois que este entrar em operação. 
 Nessa definição dada por Sommerville temos duas frases importantes que vamos 
discutir a seguir: 
 
 Disciplina de Engenharia – É dito uma disciplina, porque os engenheiros estão sempre 
aplicando teorias, métodos e ferramentas sempre aonde as mesmas forem mais 
apropriadas e usando-as de modo seletivo, além disso, os engenheiros estão sempre 
estudando novas maneiras e métodos de solucionar os problemas. 
 
 Todos os aspectos da produção de software – Isso significa dizer que a Engenharia não 
esta relacionada apenas com os processos técnicos de desenvolvimento de software, 
mas também com atividades como o gerenciamento e desenvolvimento de 
ferramentas, métodos e teorias que apoiem a produção de software. 
 
 
 
 
 
 
 
 
 
Disciplina Engenharia de Software II Período 2018/1 Turma: ADS 
Prof. Rika Luz richardson.luz@docente.unip.br Aula 01 
 
4 
 
Questões: 
 
 
Assinale a alternativa que melhor explica a frase “O software não se desgasta, ele se 
deteriora". 
 
a) Significa que o software não tem falhas 
b) Significa que o software não sofre falhas, mas problemas relacionados ao tempo e 
ambiente 
c) Significa que o software não sofre desgastes de manutenções ao longo da sua vida 
entretanto sofre problemas ambientais e temporais tornando-se obsoletos ou 
deteriorados 
d) Significa que o software não sofre desgastes ambientais (tempo, poeira), mas ao longo 
da sua vida sofre diversas alterações por causa das falhas e manutenções ficando 
obsoletos ou deteriorados 
 
Em 1968 aconteceu a NATO Software Engineering Conference, um evento criado com o 
objetivo de discutir alternativas para contornar a Crise do Software. Podemos resumir à crise 
no desenvolvimento de software causada por alguns problemas com exceção de: 
 
a) Projetos estourando o prazo 
b) Software de baixa qualidade 
c) Projetos atendendo o orçamento 
d) Software muitas vezes não atendendo os requisitos 
 
Podemos afirmar que a construção de um carro e a construção de um software são projetos 
similares? 
 
a) Não, pois os produtos são diferentes 
b) Sim, mesmo exigindo diferentes formas de condução e execução do projeto 
c) Sim, porque qualquer pessoa pode utilizar 
d) Não, pois o levantamento de requisitos é totalmente diferente

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais