Baixe o app para aproveitar ainda mais
Prévia do material em texto
QUALIDADE DE SOFTWARE Aula 1- Conceito de Qualidade Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE ESCALADA Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE DESTAQUES DA AULA • A PREOCUPAÇÃO COM A QUALIDADE DE SOFTWARE • A CRISE DO SOFTWARE • O PROCESSO DE DESENVOLVIMENTO DE SOFTWARE • ABSTRAÇÃO E SUBJETIVIDADE • ONDE ESTÃO OS DEFEITOS? • O QUE É SOFTWARE COM QUALIDADE? • GERENCIAMENTO DA QUALIDADE • QUALIDADE NO PROCESSO • QUALIDADE NO PRODUTO • CERTIFICAÇÕES (PROCESSO E PRODUTO) Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE DIRETO AO ASSUNTO Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE A PREOCUPAÇÃO COM QUALIDADE DO SOFTWARE Período Características Anos 50 -Erros conhecidos, APÓS término do programa Anos 70 -Análise/programação estruturada. -Falta de consenso: teste ANTES do término Anos 80 - Primeiras preocupações e PADRÕES com QUALIDADE de software Anos 90 -Primeiros processos de testes. -Motivação: Bug do milênio. Anos 2000 -Estruturação dos procedimentos de testes dentro do processo de desenvolvimento. -Surgem excelentes ferramentas de testes. -QUALIDADE Total no processo de desenvolvimento e produto de software Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE A CRISE DO SOFTWARE Fatos reais - Projetos de Software + 30% dos projetos – CANCELADOS + 70% dos projetos – FALHAM as funcionalidades Custos e Prazos EXTRAPOLAM a Previsão Custos – em mais de 180% Prazos – em mais de 200% Custos do DESENVOLVIMENTO 80% - identificar e corrigir defeitos de programação Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE ASPECTOS RELEVANTES sobre SW e processo de desenvolver • Software NÃO é tangível. Requer muita ABSTRAÇÃO para desenvolvê-lo. • O processo de desenvolvimento é executado e gerenciado por pessoas, sendo portanto SUBJETIVO. •Discute-se idéias, necessidades e desejos dos usuários (também pessoas). • ABSTRAÇÃO E SUBJETIVIDADE conferem dificuldades ao processo de desenvolvimento. • O software em si é consequência direta da forma (processo) pelo qual foi desenvolvido. PROCESSO MANUFATURADO •Processo de desenvolvimento eficiente → Software eficiente. Na medida em que os softwares crescem em tamanho e complexidade, ABSTRAÇÃO e COMPLEXIDADE conferem cada vez mais DIFICULDADES ao processo de desenvolvimento Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE Processo de Desenvolvimento de SW •Conjunto de atividades, métodos, práticas e tecnologias que as pessoas usam para desenvolver e manter softwares •O processo adequado garante que o software será desenvolvido de maneira organizada, disciplinada e previsível. •O processo descreve formalmente e de forma organizada as atividades que devem ser seguidas para a obtenção segura de um produto de software. •A dificuldade está no gerenciamento do processo (existem vários modelos), que geralmente está dividido em fases. Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE Processo de Desenvolvimento de SW •Análise: Analista com usuários. • Requisitos. Interesses → soluções para usuário • Projeto (design): Projetista usa a tecnologia • Requisitos tecnológicos → tecnologia para usuário • Implementação: Programador usa L.P. • Escrita do código → Lógica de programação • Testes: Testadores com programas / sistema • Buscar defeitos e falhas nos sistema. • Homologação ou Aceitação: Com usuários. • Usuário aprovar o sistema (Participar de tudo !!!) • Implantação: Instalação e treinamento • Entrega o sistema. • Fim do ciclo de desenvolvimento ANÁLISE PROJETO IMPLEMENTAÇÃO TESTES HOMOLOGAÇÃO IMPLANTAÇÃO Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE ONDE ESTÃO OS DEFEITOS ? • A maior dificuldade esta na fase INICIAL, de entendimento do sistema - Requisitos – ALTO grau de ABSTRAÇÃO + Comunicação com pessoas • A segunda maior abrangência está na modelagem – ALTO Grau de ABSTRAÇÃO + domínio das técnicas • O erros de codificação em si, representam um % pequeno, mostrando que o foco do problema não é da Implementação. Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE SOFTWARE COM QUALIDADE • O QUE É SOFTWARE COM QUALIDADE ? • Atender aos REQUISITOS dos usuários • Satisfazer aos DESEJOS dos usuários • Escrever TUDO o que se deve fazer. FAZER tudo que foi escrito • O QUE É QUALIDADE DE SOFTWARE ? • PROCESSO SISTEMÁTICO QUE: • Focaliza todas as ETAPAS e ARTEFATOS (modelos, diagramas, programas, módulos de software, classes e etc) • Com objetivo de Garantir CONFORMIDADE dos processos e produtos especificados, PREVININDO E ELIMINANDO defeitos Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE SOFTWARE COM QUALIDADE • QUALIDADE DE SOFTWARE É CONFORMIDADE COM ? • REQUISITOS FUNCIONAIS – base para medir a qualidade • REQUISITOS DE DESEMPENHO – critérios de desempenho definidos • CARACTERÍSTICAS IMPLÍCITAS (esperadas) • Fácil de usar, fácil de interagir (usuário) • Código Legível, fácil de manter (equipe de desenvolvimento) • A QUALIDADE DO SOFTWARE DEPENDE DA QUALIDADE DE SEU PROCESSO DE DESENVOLVIMENTO (sofre forte influência). Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE QUALIDADE NO PROCESSO X QUALIDADE NO PRODUTO Qualidade do ProdutoQualidade do Processo Qualidade de Software A Qualidade do Produto é o que buscamos. A Qualidade do Processo é o meio para conseguirmos. A Qualidade do produto é fortemente influenciada pela qualidade dos processos utilizados no seu desenvolvimento. Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE A QUALIDADE É MAIS UMA FASE NO PROCESSO DE DESENV SW? • NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE, A QUALIDADE NÃO ATUA COMO UMA FASE ESPECÍFICA – ELA ESTÁ EM TODAS AS FASES QUALIDADE É ATUAR EM TODAS AS FASES – VERIFICANDO CONFORMIDADE COM OS PADRÕES E DEFINIÇÕES Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE QUALIDADE CONSIDERA USUÁRIOS – CLARO !!!! 1. Necessidades? Desejos? 3. Interesses? Qual a visão do usuário? Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE USUÁRIOS E AS SUAS PREOCUPAÇÕES Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE USUÁRIOS E AS SUAS PREOCUPAÇÕES Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE AS VISÕES DA QUALIDADE preocupações Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE POR QUE ORGANIZAÇÃO DESEJA SOFTWARE COM QUALIDADE • Software de Qualidade • GARANTE A SEGURANÇA das transações, dos negócios e das pessoas envolvidas • MANTÉM A ALTA DISPONIBILIDADE dos serviços. Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE A documentação do SW torna-se um instrumento fundamental para o CONTROLE DA QUALIDDE GERENCIAMENTO DA QUALIDADE (SOMMERVILLE) • GARANTIA • Padrões que garantam a qualidade do software • PLANEJAMENTO • Seleção de procedimentos e padrões adequados para o projeto • CONTROLE • Assegurar que o desenvolvimento tenha seguido os procedimentos e padrões de qualidade do projeto Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE O CUSTO COM PROCESSO DE QUALIDADE, SE PAGA ? • Esforços (recursos) pela qualidade nos mais diversos setores organizacionais já provaram que: • a qualidade não tem custo • se paga em pouco tempo. Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE CONCLUINDO Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE Reflexo Global: MAIOR SATISFAÇÃO DOS CLIENTES, REFLETINDO EM MAIOR PARTICIPAÇÃO NO MERCADO CONCLUINDO • O Aumento da Qualidade no PROCESSO acarreta • Garantia de estarmos fazendo o Software CERTO • Aumento de produtividade • Redução de Custos: Menos retrabalho e menos perdas • Menor prazo de entrega • Aumento da Qualidade do PRODUTO acarreta • Reaproveitamento de código de programa • Programas mais eficientes. • Menor custo e mais facilidade de manutenção • É mais fácil fazer software CORRETO do que consertá-lo (conclusão após longo período de remendo de software) Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE BATE PRONTOConceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 1. Quais as dificuldades em se prover qualidade no processo? • Ausência de procedimentos claros, até mesmo de um processo definido • Ausência de técnicas de desenvolvimento (análise, projeto e programação) • Ausência de registro das decisões e modelos (documentação) 2. Por que devemos nos preocupar com qualidade no processo? • Porque é através do processo que se gera o produto (PROCESSO MANUFATURADO). • Para garantir que os produtos desenvolvidos por aquele processo tenham as mesmas características (minimiza a subjetividade) Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 3. Por que Qualidade é ter conformidade com os requisitos? • Por que se não atender ao que o usuário precisa (requisitos), o SW não terá atingido o seu objetivo e sem isso, não há qualidade. 4. Como a qualidade se reflete no processo? • Aumento de produtividade • Redução de custos (menos re trabalho e menos perdas) • Menor prazo de Entrega 5. Como a qualidade se reflete no produto? • Reaproveitamento de código • Código mais legível (entendimento de terceiros) • Facilidade de manutenção Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 6. O custo para se implementar o gerenciamento da qualidade vale a pena? • Sim, o custo se paga, pois a qualidade no processo e no produto traz satisfação ao cliente e consequente aumento de participação no mercado (mais receitas). 7. Dentre as fases do processo de desenvolvimento, qual a que concentra maior % de defeitos (problemas)? • Requisitos (Levantamento e Análise), pois a má interpretação do que deseja o usuário implica em software que não atende ao que ele quer. • Erros na fase inicial, se propagados para as fases seguintes, tem maior custo de solução. 8. Quais os problemas, nessas fases iniciais? • O nível de abstração necessário é alto e os sistemas podem ser complexos Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 9. A qualidade deve ser então uma FASE adicional no processo de desenvolvimento? • NÃO, a qualidade deve ser aferida em TODAS as fases do processo. 10. Na prática como se dá a aferição da qualidade no processo e no produto? • No processo → através de revisões nos modelos e documentação, verificando se estão em conformidade com os requisitos, com os padrões da empresa e em conformidade com o modelo anterior. • No produto → através de testes durante a fase de implementação (testes unitários e testes integrados) e durante a fase de testes (testes de sistema e homologação). Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 11. Por que empresas buscam certificações de Qualidade? • Exigências de empresas que necessitar os serviços do fornecedor, como órgão governamental, empresa multinacional. • Organizar os processos da empresa para um crescimento, que traz em si a necessidade de certificação 12. O que garante uma certificação? • Que o fornecedor foi avaliado e julgado por um organismo certificador (ISO/IEC, NBR) 13. A certificação é para sempre? • NÃO, a empresa é avaliada de tempos em tempos 14.Existem certificações específicas para o processo e produto de software? • Sim, tanto para garantir um processo de qualidade, como para garantir um software de qualidade Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE SAIBA MAIS Conceito de Qualidade– AULA1 QUALIDADE DE SOFTWARE SAIBA MAIS.... Acesse 1) http://www.sbqs2012.com.br/ XI Simpósio Brasileiro de Qualidade de Software 2) http://200.192.112.133/sbqs2011/ X Simpósio Brasileiro de Qualidade de Software 3) http://www.sbqs2010.ufpa.br/ IX Simpósio Brasileiro de Qualidade de Software 4) http://msdn.microsoft.com/ Qualidade de Software na Microsof Indicações do conteúdo online, recomendado. 1. Referência sobre o tema "Qualidade de Software: uma necessidade" http://www.fazenda.gov.br/ucp/pnafe/cst/arquivos/Qualidade_de_Soft.pdf "Qualidade 2. de Software: uma necessidade" http://www2.unemat.br/rhycardo/download/qualidade_em_software.pdf http://www.sbqs2012.com.br/ http://200.192.112.133/sbqs2011/ http://www.sbqs2010.ufpa.br/ http://msdn.microsoft.com/ http://www.fazenda.gov.br/ucp/pnafe/cst/arquivos/Qualidade_de_Soft.pdf http://www2.unemat.br/rhycardo/download/qualidade_em_software.pdf QUALIDADE DE SOFTWARE Aula 2 – Fatores, Métricas e Garantia de Qualidade de SW Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE ESCALADA Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE DESTAQUES DA AULA • VISÃO GERAL DOS FATORES QUE AFETAM A QUALIDADE DO PROCESSO E DO PRODUTO • MEDIDAS INDIRETAS DA QUALIDADE DO SW • CONCEITOS E ATIVIDADES DA SQA (GARANTIA DA QUALIDADE DE SOFTWARE) • A DE REVISÃO DE SOFTWARE COMO PREVENÇÃO • A DE REVISÃO TÉCNICA FORMAL (RTF) COMO MEIO DE MELHORAR A QUALIDADE DO SOFTWARE E DO PROCESSO DE DESENVOLVIMENTO Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE DIRETO AO ASSUNTO Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE POR QUE MEDIR A QUALIDADE ? Para determinar um valor de grandeza • Mede e compara o SW com algum dado (padrão) e obtém uma INDICAÇÃO DE QUALIDADE • o que devemos medir ? • Processo • Produto • Fatores que afetam a qualidade • Mensuráveis diretamente • Tempo, Custo, produtividade • Mensuráveis indiretamente • Usabilidade, manutenibilidade (subjetivos) A QUALIDADE PRECISA SER MEDIDA, COMPARATIVAMENTE A PADRÕES E CRITÉRIOS PRÉ DETERMINADOS Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Que medidas são necessárias ? • Tempo e custo do processo • Desempenho e resultados • Produtividade da equipe • Recursos efetivos e usados O que fazer com medidas? • Permitir criar padrões • Estimativas (tempo, custo, recursos) • Aplicar ações corretivas e preventivas diante de riscos Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Fatores de Qualidade • Afetam a qualidade do software • Considerar no software • características operacionais • Capacidade de mudanças • Adaptabilidade a novos contextos • Categorias • Revisão do Produto • Operação do Produto • Transição do Produto Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Categoria REVISÃO Fator de Qualidade Característica Manutenibilidade Capacidade de ajuste e melhorias do programa, mantendo-o atual Flexibilidade Esforço para se modificar o programa Testabilidade Tempo para teste de um programa, garantindo sua eficácia (executa a função a que se destina?) Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Categoria OPERAÇÃO Fator de Qualidade Característica Corretude Atende as especificações e objetivos do cliente? Confiabilidade Executa sempre da mesma forma? Com a precisão exigida Eficiência Qtde de recursos (hw / sw) para o programa executar. Integridade Controle de acesso (sw e dados) é controlado? Usabilidade Esforço para aprender e operar o programa Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Categoria TRANSIÇÃO Fator de Qualidade Característica Portabilidade Esforço para transferir o programa para outro ambiente (hw/sw) de execução Reusabilidade Usar programa ou parte dele em outras aplicações Interoperabilidade Esforço para acoplar um sistema a outro. Integração de soluções. Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Como usar Métricas? • Pressman – Dificuldade: desenvolver medidas diretas dos fatores de qualidade propostos por McCall – Por que? subjetividade na medição. • McCall, julga relevante – escala padrão (0 a 10), estabelecendo métrica para cada fator que afeta a qualidade Consulte texto com Métricas de Pressman – PDF no ambiente Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Influenciama Qualidade • Ausência de: – modelo corporativo de qualidade. – procedimentos de testes automatizados. – profissionais capacitados em qualidade. • Deficiência no planejamento e aplicação dos testes. • Qualidade é aplicada tardiamente no processo. Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Benefícios da Qualidade • Ciclo de desenvolvimento de SW confiável. • Garante ações corretivas no ciclo de desenvolvimento.(momento de atuar) • Evita a ingerência do projeto de software. • Amplia chances de sucesso do proj. de SW • Amplia a produtividade do desenvolvimento. • Evita a propagação de erros. • Automação de testes reduz custos do projeto. Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE SQA- Garantia da Qualidade de Software • A garantia da qualidade de software (Software Quality Assurance – SQA) deve ser • Aplicada em todo o processo de engenharia de software. Avaliações, Auditorias, revisões • Define • Padrões para o projeto • Procedimentos para o relato • Acompanhamento de erros e Documentação necessária • Realimenta a equipe com conclusões do projeto Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Atividades - SQA Atividade Finalidade Aplicação de Métodos e ferramentas técnicas Aplicar a análise e projeto. Ajudam analistas e projetistas a gerarem software com qualidade. FTR – Revisão Técnica Formal Descobrir problemas de qualidade no projeto. Tão importante como os testes de software (produto). Teste de Software Detectar falhas e erros no software. Não é completo por si só. Auditoria de Padrões e Procedimentos Formais Verificar se o projeto cumpre os padrões definidos. O desenvolvimento está usando os padrões? Atividades de Controle de Mudanças (avalia IMPACTO) Formaliza e controla pedidos de mudança no software (no desenvolvimento e após manutenção) Medição do software Coleta um conjunto de medidas técnicas e orientadas a adm. das especificações do software. Documentação(sem documentação a qualidade fica comprometida) Manter acessível a documentação histórica dos resultados de todas as atividades SQA aplicadas. Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Revisões de Software • Métodos de validação de qualidade – uso pela equipe técnica. – Processo (avalia) – Produto • Filtram erros e inconsistências no processo de desenvolvimento. • Objetivos – Apontar melhorias ao produto ou parte dele – por um grupo de pessoas – Tornar o trabalho técnico mais administrável. Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE TIPOS DE REVISÕES • Inspeções de projeto ou programa • Detectar erros nos requisitos, projeto ou código • Revisões de progresso • Informações p/ gestão do progresso geral do projeto • Revisão do processo, produto (custos), planejamento e prazos • Revisões de qualidade • Análise técnica do produto ou documentação • Detectar inconsistências entre: • Especificação e projeto • Código ou documentação • Assegurar se padrões de qualidade foram seguidos? Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Custos de Qualidade • Custos Operacionais de implementação de atividades de qualidade no processo (e produto) •Metas: • Reduzir custo com qualidade • Comparar com demais custos • 4 categorias de classificação Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Os Custos da revisão de Qualidade e seus impactos Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Os Custos da Revisão de Qualidade e seus impactos Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Revisões de Software - Conclusões • Custo de identificação e reparo do erro/defeito – Cresce a medida em que o tempo passa. – Aumenta a insatisfação (interna e externa) • Dica: investir e Prevenção Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE A Conhecida como walkthroughs, inspeções, reuniões round – robin Cada RTF é conduzida como uma reunião. REVISÃO TÉCNICA FORMAL - RTF • Principal atividade de um SQA • Objetivos – Verificar se SW atende aos requisitos; – Garantir que o SW está de acordo com padrões pré- definidos; – Obter um SW desenvolvido de forma uniforme; – Tornar os projetos mais administráveis – Descobrir erros de função, lógica ou implementação do SW; Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE RTF – Reunião de revisão • Restrições a reunião (duração de até 2h) • 3 a 5 pessoas, com preparação antecipada • Foco: um produto, um componente de software • Ao final da reunião • Aceitam / rejeita / aceitam temporariamente • Um revisor = registrador • Produtor percorre o produto e explica o material • Revisores levantam questões Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE RTF – Reunião de revisão Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE RTF – Comunicação e Manutenção de Registros de Revisão • Durante a RTF, o revisor selecionado registra os tópicos levantados • Ao final da reunião – Relatório de revisão resumido e simples – O que foi revisado? Quem revisou? Quais as descobertas e conclusões? – Lista de questões de revisão – áreas problemáticas do produto – Checklist que orienta o produtor a medida que as correções são feitas • Líder da revisão, acompanha as correções. Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Diretrizes para a RTF Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Lista de Conferência de Revisão Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Lista de Conferência de Revisão Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Lista de Conferência de Revisão Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE RESUMINDO Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE CONCLUINDO • Qualidade no Processo desde o início • Aferição em cada fase → métricas, fatores de qualidade e padrões; Inconsistências. • SQA – Software Quality Assurance • Avaliações, Auditorias, Revisões, RTF • Atividades de controle das mudanças. • Documentação • Qualidade no Produto • Testes • Fase de Implementação (unitários e integrados) • Fase de Testes (sistema e homologação) • Automação dos testes / técnicas diversas Métricas, fatores de Qualidade e SQA- Aula 2 QUALIDADE DE SOFTWARE Abrindo o BAU De Olho na Imagem Abrindo o baú – de Olho na imagem http://www.youtube.com/watch?v=Z8jbF9GL3wo&feature=related QUALIDADE DE SOFTWARE Aula 3 – SQA Estatístico e Normas ISO 9000 SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE ESCALADA SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE DESTAQUES DA AULA • SQA Estatística – Garantia Estatística da Qualidade - técnica quantitativa • Mais Métricas de Qualidade(FUNDAMENTAIS) • Confiabilidade • Segurança (Risco) • Normas – NBR ISO 9000 • Como as empresas certificam-se? SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE DIRETO AO ASSUNTO SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Qualidade do ProdutoQualidade do Processo Qualidade = Processo + Produto A Qualidade do Produto é o que buscamos. A Qualidade do Processo é o meio para conseguirmos. A Qualidade do produto é fortemente influenciada pela qualidade dos processos utilizados no seu desenvolvimento. SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Garantia Estatística de Qualidade • A qualidade é responsabilidade de todos os participantes do desenvolvimento de software. • Qualidade pode ser obtida • Processo eficiente (analise, projeto, codificação e teste) • RTF nos trabalhos intermediários • Modificações propostas • SQA Estatística→ Apoio Quantitativo • Base: Frequência da ocorrência de erros e inconsistências, ao longo do período de tempo. • Objetivo: aprimorar os elementos do processo que promovem erro: SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Passo a Passo para a SQA Estatística • 1. Coletar informações sobre os defeitos e catalogar em categorias • alguns defeitos – no processo • outros defeitos – após entrega • 2.Rastrear o defeito até encontrar sua causa • 3.Considerar: 20% do código tem 80% dos defeitos → centrar no que importa • 4.Corrigir os problemas que originaram os defeitos Esse passo a passo é uma proposta de Pressman, que já propõe algumas categorias de relevância. SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Possíveis Causas dos defeitos categorias •I. Especificações incompletas ou mal formuladas. •II. Má interpretação da comunicação com o cliente. •III. Desvio intencional das especificações. •IV. Violação dos padrões de programação. •V. Erro na representação dos dados. •VI. Inconsistência na interface de componente. •VII. Lógica do projeto inconsistente. •VIII. Teste incompleto ou errôneo. •IX. Documentação imprecisa ou incompleta. •X. Erro na tradução do projeto para a linguagem. •XI. Interface H-M ambígua ou inconsistente. •XII. Diversos (miscelânea) SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE ERROS TOTAL GRAVE MODERADO SIMPLES Qtde % Qtde % Qtde % Qtde % I 205 22 34 27 68 18 103 24 II 156 17 12 9 68 18 76 17 III 48 5 1 1 24 6 23 5 IV 25 3 0 0 15 4 10 2 V 130 14 26 20 68 18 36 8 VI 58 6 9 7 18 5 31 7 VII 45 5 14 11 12 3 19 4 VIII 95 9 12 9 35 9 48 11 IX 36 4 2 2 20 5 14 3 X 60 6 15 12 19 5 26 6 XI 28 3 3 2 17 4 8 2 XII 56 6 0 0 15 4 41 9 TOTAIS 942 100 128 100 379 100 435 100 SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Garantia Estatística de Qualidade • O que nos diz a tabela? • Os erros I, II e V - poucas causas vitais que correspondem 53% dos erros (Some a coluna Total % desses 3 grupos de erros). • os erros I, V, VII e X - poucas causas vitais dos erros graves (coluna Qtde de Graves). • Após detecção dos erros vitais → ação corretiva → novos erros aparecerão Importante: Montar a tabela Categorias de Causas x Qtdes SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Procedimento – SQA Estatística REPETIR os passos ATE QUE erros sejam sanados 1. Criar lista de possíveis Categorias de Causas 2. Quantificar, por um tempo determinado, a incidência de erros 3. Focar nas poucas causas vitais • 20% do projeto/código contém 80% dos erros. 4. Corrigir as causas vitais → corrigir os erros 5. Surgem novos erros (testes são exaustivos) A cada Correção de problemas identificados, novos podem ser inseridos, por isso várias “rodadas” são necessárias. SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Métrica - Confiabilidade • A probabilidade de um programa operar sem falhas, num ambiente específico durante determinado tempo especifico”. • Considerar que um número mínimo de falhas ocorrerá na execução • Alguns software precisam de um % de confiabilidade muito próximo a 100%. • 0,98 de confiabilidade por 8h de processamento = se o software for executado 100 vezes por um tempo de oito horas é provável que funcione corretamente 98 vezes. • Alta Disponibilidade do software → Hoje. Confiabilidade: Difícil quantificar com precisão SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Métrica(fundamental) - Segurança • Problema: sistema de segurança crítico • Trata-se de uma Atividade SQA→ • detecta e avalia riscos em potencial, que podem provocar falhas e impactar o desempenho • Identifica e avalia causalidades em potencial que possam exercer impacto negativo e provocar falhas Confiabilidade: Difícil quantificar com precisão SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Métrica - Segurança • Passos para implementação da Segurança 1. Identificar a presença de riscos o mais cedo possível 2. Traçar as estratégias no projeto de software que eliminem ou controlem esses riscos em potencial. 3. Identificar a avaliar casualidades que possam impactar, negativamente, o SW causando falhas → categorizar as falhas por criticidade e risco 4. Analisar a gravidade e probabilidade de ocorrência 5. Listar os requisitos de segurança para do Software Segurança: Cada vez mais requerida nos Softwares atuais SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Tecnicas de Análise da Gravidade e Probabilidade de ocorrencia SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Tecnicas de Análise – Arvore de Falhas. SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Orgãos Normativos e Reguladores SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Certificações ISO 9000 • Quando pergunto: "Por que estão implementando ISO 9000?" • Todos respondem que estão procurando atender as exigências dos clientes. Mas, quase ninguém fala em melhorar a integridade da organização”. • Philip B. Crosby • A necessidade das organizações se tornarem competitivas passa a ser enfatizada como motivo para a adoção de sistemas que resultem na qualidade • GLOBALIZAÇÃO SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Princípios da ISO 9000 • Descreve elementos de garantia em termos genéricos, que podem ser aplicados aos negócios (Produto ou serviço). • Sistema de qualidade que: – Define responsabilidades – Cria procedimentos e processos – Capacita recursos para gestão da qualidade – Demanda normas – PARA SAFISTAZER OS CLIENTES , CONFORME SUAS ESPECIFICAÇÕES. – Não descreve como Fazer (consultoria) SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Por que as empresas querem ISO? • A adoção das normas ISO lhes confere: • A empresa ganha na produtividade e credibilidade, aumentando sua SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Por que as empresas querem ISO? • As consequencias • A empresa ganha na produtividade e credibilidade, aumentando sua competitividade. • Com a empresa competitiva – diferenciação e – galgar novas oportunidades em um mercado global SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Como funciona a Certificaçao? 1. Empresa contrata consultoria específica 2. Empresa se qualifica para a auditoria de acreditação da ISO • Avaliação da conformidade do sistema de garantia da qualidade -> Não certifica-se o produto e sim a capacidade de produção • Geralmente certifica-se por área de atividade da empresa (não na totalidade) 3. Uma vez qualificada (auditoria de validade), a empresa recebe o certificado 4. Começam as auditorias de vigilância – semestrais ou anuais. SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE • ISO: Mundial / Edições: 87,94,2000,2008 • ISO 9001 (mais completa) – Garantia da qualidade em projetos / desenvolvimento, produção, instalação e assistência técnica → empresas de criação de novos produtos • ISO 9002 – garantia da qualidade em produção e instalação → destina a quem produz item de catálogo ou prestam serviços conforme especificações existentes. • ISO 9003 – garantia da qualidade em inspeção e testes finais. Adequada a empresas cuja produção não inclua itens especiais (fácil separa itens conformes e não conformes na inspeção). • ISO 9004 – Gestão da qualidade e elementos do sistema de qualidade – diretrizes. Funciona como guia para desenvolvimento do SGQ. De uso volutuntário e interno (sem funs contratuais). Modelos da ISO 9000 SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Modelos da ISO 9000 – Ediçao 94 SQA Estatística e Normas NBR ISO 9000- Aula 3 QUALIDADE DE SOFTWARE Princípio da ISO 9000 : 2000 • Revisão na norma: adequação a prática • Foco no cliente • Liderança • Envolvimento das pessoas • Abordagem do processo (melhoria) • Abordagem Sistêmica para gestão • Melhoria contínua na qualidade (1994 – não) • Abordagem para tomada de decisão • Benefícios mútuos nas relações com fornecedores. SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Princípios da ISO 9000:2000 SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Princípios da ISO 9000:2000 SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE BATE PRONTO SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 1. O que é e o que faz a ISO? • ISO=International Organization Standardization. • Orgão, de origem inglesa, que produz normas internacionais. • 150 países participantes e cerca de 50 mil especialistas(Mundo) 2. O que é e o que faz a IEC? • IEC=International Eletrotechnical Commision 3. O que é o o que faz a ABNT? • Orgão brasileiro responsável pelas normas de qualidade • Representa, no Brasil a ISO e a IEC • Cuida da preparação das normas técnicas, mas também pode verificar a implantação e uso das normas em empresas SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 1. O que representa a adequação a uma norma, para uma empresa? • A adequação a uma norma consiste em colocar em prática, total ou parcialmente, a que ela se propõe. • A adequação pode ser obtida por consultoria ou de forma autônoma. 2. O que representa a certificação em uma norma, para uma empresa? • Envolve a participação de organismo ou empresa externa, credenciada e que possa atestar que a empresa segue a resptiva norma, • Obviamente a adequação deve preceder a certificação. SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Procedimento de Adequação SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Procedimento de Certificação SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE PERGUNTAS E RESPOSTAS 1. A certificação deve abranger todas as partes da norma? • Não. Normalmente a certificação é pontual, podendo ater-se a partes específicas da norma. 2. O fato de uma empresa ter certificação ISO 9000, significa que seus produtos ou serviços possuem qualidade? • Não, Pode ser que apenas um determinado setor cumpra a norma. 3. A certificação é válida para sempre, uma vez que foi obtida? • Não. A certificação vale por certo período de tempo, durante o qual há acompanhamento da certificadora: Testes com amostras (produtos) ou visitas e inspeções (gerenciamento e processos) • A empresa pode até perder seu certificado SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE RESUMINDO SQA Estatística e Normas NBR ISO 9000 - Aula 3 QUALIDADE DE SOFTWARE Resumindo • SQA Estatístico é importante pois temos uma noção numérica de falhas, problemas e erros por CATEGORIAS. • Ajuda a aperfeiçoar Processo de Produto • Confiabilidade é uma métrica importante, mas dificil de mensurar → é um quesito base : confiar no resultado • Segurança é essencial ao SW moderno, levando a uma análise de riscos. • A ISO 9000 surge como alternativa para melhoria do processo produtivo das empresas, gerando produtos e servicos mais competiticos no mercado Nacional e Internacional. • A certificação ISO surge como diferencial competitivo, sendo estratégico para corporação atingir patamares diferenciados e oportunidades num mercado Global. QUALIDADE DE SOFTWARE Aula 4 – NBR ISO/IEC 9126 (Produto) NBR ISSO/IEC 12119 (Pacote) NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE DESTAQUES DA AULA • A evolução do conceito de qualidade • As visões de qualidade: usuário, desenvolvedor e gestor • Norma NBR ISO/IEC 9126 • Proposta do Modelo de Qualidade do Produto • Métricas de qualidade propostas • Norma NBR ISO/IEC 12119 • Requisitos de Qualidade e Testes para pacotes de Software NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Foco Aspectos Desenvolvedor • Inicio: Qualidade = Funcionar • 2º momento: Qualidade = Confiabilidade • 3º momento: Qualidade incorpora outros aspectos Cliente • Percepção da Qualidade • Pacotes de Software Tecnologia • Deixou de ser diferencial (todos) • Passa a atributo de Qualidade, como por exemplo :interface Evolução do conceito de Qualidade do Software NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Visões da Qualidade • Usuário – Interesse: Qualidade de Uso e desempenho – Interesse nas medidas externas • As funções estão disponíveis? • Software é confiável? É eficiente? • Fácil de usar? • Fácil para mudar de ambiente? – Características construtivas não interessam NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE • Desenvolvedor – Coerente com expectativas dos usuários (requisitos e aceitação) – Interesse nas medidas internas (técnicas) – Qualidade de produtos intermediários (documentos, modelos e diagramas) Visões da Qualidade NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE • Gerente de Desenvolvimento – Medida global da qualidade – Qualidade x Prazo x Custos – Qualidade do processo. Visões da Qualidade NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 9126 (Produto) • Qualidade é: “totalidade de características de uma entidade que lhe confere a capacidade de satisfazer as necessidades explícitas e implícitas“ • As 2 necessidades subsidiam as validações e verificações (como testes) • Explícitas (externas) = condições em que produto deve ser usado, objetivos, funções,desempenho esperado (depende de especificações de requisitos). • Implícitas (internas) = Não estão especificados nos requisitos, mas são características obvias e fundamentais NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 9126 (Produto) • Define Características e sub-características que definem um MODELO de qualidade • Não apresenta métricas para características de qualidade. – Propõe que cada empresa use as próprias • Qualidades explícitas (externas) = métricas externas ou seja medições baseadas nas necessidades dos usuários (produto final) • Qualidades implícitas (internas) = métricas internas (produtos intermediários) • Qualidades de uso = Visão de qualidade que o usuário tem do software NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Modelo de Qualidade NBR ISO/IEC 9126 • Modelo de QUALIDADE da norma é composto de 2 partes: – A qualidade do produto deve ser avaliado segundo um modelo definido. – O modelo deve ser usado para estabelecer metas de qualidade do SW e produtos intermediários • Público alvo: desenvolvimento SW, Adquirentes, Equipe de qualidade e Avaliadores NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 9126 (Produto) NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Modelo de Qualidade 9126-1 Características Externas 9126-2 Características Internas 9126-3 Características de Qualidade de uso 9126-4 Quando executado Durante o desenvolvimento • Instrumentos necessários para realizar uma avaliação • Como medir qualitativamente e quantitativamente a qualidade - 9126-1 Utilização do software Modelo de Qualidade NBR ISO/IEC 9126 NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Métricas do Modelo de Qualidade NBR ISO/IEC 9126 NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE O que a norma entende como Característica? Característica Especificidades Funcionalidade • Ser adequado aos requisitos Confiabilidade • Manter o nível de desempenho Usabilidade • Ser de fácil uso. Sem esforço Manutenibilidade • Esforço para modificaçõesPortabilidade • Ser transferido de ambiente Eficiência • Uso otimizado de recusrsos. NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE O que a norma entende como Qualidade em Uso? Característica Especificidades Eficácia • Permitir que usuário atinja sua meta com acurácia e completude Produtividade • Permitir que os usuários empreguem a quantidade apropriada de recursos em relação a eficácia obtida Segurança • Apresentar níveis aceitáveis de riscos Satisfação •Satisfazer os usuários. NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Princípios do Modelo de Qualidade NBR ISO/IEC 9126 NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Métricas do Modelo de Qualidade NBR ISO/IEC 9126 NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 12119 (Pacote)) • Atual NBR ISO/IEC 25051) • A norma estabelece conjunto de: • 1. Estabelece os requisitos de qualidade de um software tipo pacote. • 2. Fornece instruções para testá-lo, com base nos requisitos. • Escopo: Pacotes oferecidos ao mercado. • Compreendem os processadores de texto, planilhas, BDs, softwares gráficos, programas para funções administrativas, técnicas ou científicas e programas utilitários NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 12119 (Pacote) • Esta Norma não trata de processos de produção de software (tampouco atividades e produtos intermediários, por exemplo especificações); • O sistema de qualidade do produtor (tratado, por exemplo, na NBR ISO 9001) está fora do escopo desta NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 12119 (Pacote) • Pacotes de software= conjunto completo e documentado de programas fornecidos a diversos usuários para uma aplicação ou função genérica. (SW de prateleira). NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 12119 (Pacote) NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 12119 (Pacote) • Os requisitos de qualidade incluem que: 1. A descrição do produto 2. Documentação do usuário; 3. Documentação do produto e dados necessários ao seu funcionamento • Um pacote de software está em conformidade com esta Norma se atende a todos aos requisitos acima Simultaneamente. NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE NBR ISO/IEC 12119 (Pacote) NBR ISO/IEC 9126 e NBR ISO/IEC 12119- Aula 4 QUALIDADE DE SOFTWARE Resumindo Acesse o link abaixo e veja o PDF da norma 12119 • ftp://ftp.unilins.edu.br/caldas/Engenharia%20de%20Softw are/Normas_de_Qualidade/NBR%2012119%20- %20Tecnologia%20de%20informacao%20- %20Pacotes%20de%20software%20- %20Teste%20e%20requisitos%20de%20qualidade.pdf ftp://ftp.unilins.edu.br/caldas/Engenharia de Software/Normas_de_Qualidade/NBR 12119 - Tecnologia de informacao - Pacotes de software - Teste e requisitos de qualidade.pdf QUALIDADE DE SOFTWARE Aula 5 – NBR ISO/IEC 9241 (Usabilidade do Produto) NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE DESTAQUES DA AULA • Qual a importância da Interface do SW? • O que é Usabilidade? • Por que Avaliar a Usabilidade? • A Norma 9241 e seu foco em Usabilidade NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Qual a importância da interface no software moderno? • “Para os usuários a interface é o programa.” -- > É o que o usuário vê. • Interface é um Sistema de Comunicação: – Um lado: usuário – Outro lado: Computador (hw + sw) – Objetivo: executar uma tarefa ação comunicação NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE • Mais pessoas usam computador (trabalho e laser) → aumento dos usuários não especializados → requerem interfaces fáceis de usar. – As aplicações são cada vez mais complexas. • Está provado: – interfaces eficientes aumentam a produtividade. – Interfaces ruins sacrificam a funcionalidade – A interface influencia como usuário visualiza e compreende as funcionalidades. Qual a importância da interface no software moderno? NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Fácil de Usar ◼ Esclarece os benefícios de medir usabilidade em termos de desempenho e satisfação do usuário. ◼ Emprega o termo usabilidade para referenciar mais precisamente aos atributos de um produto que o torna mais fácil de usar (hardware, software ou serviços), além das medidas relevantes de usabilidade ◼ não cobre os processos de desenvolvimento de sistema. NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE ◼ Um produto pode ser usado por usuários específicos para alcançar objetivos específicos com eficácia, eficiência e satisfação em contexto específico de uso. ◼ Eficácia: Completude com as quais usuários alcançam objetivos específicos. ◼ Eficiência: Eficácia c/ mínimo de recursos ◼ Satisfação: Ausência de desconforto e presença de atitudes positivas para uso Conceituando NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Usabilidade NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Como medir a avaliar a Usabilidade? NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Usabilidade - Contexto ◼ Usuários ◼ Contexto de Uso: Ambiente físico e social no qual um produto é usado. Sistema, composto de usuários, equipamento, tarefas e o ambiente físico e social, com o propósito de alcançar objetivos específicos. ◼ Tarefas, ◼ Equipamento (hardware, software e materiais) NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE ◼ A escolha e o nível de detalhes de cada medida (eficácia, eficiência e satisfação) depende dos objetivos das partes envolvidas na medição. ◼ Deve-se considerar a importância relativa de cada medida para os objetivos. Por exemplo, caso o uso não seja freqüente, pode ser dada grande importância para as medidas de aprendizado e re- aprendizado. ◼ Caso não seja possível obter medidas objetivas de eficácia e eficiência, medidas subjetivas baseadas na percepção dos usuários podem fornecer uma indicação de eficácia e eficiência. Como medir a avaliar a Usabilidade? NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Como medir a avaliar a Usabilidade? • Se as medidas de usabilidade são obtidas em curtos períodos de tempo, os valores podem não levar em consideração os eventos pouco freqüentes os quais podem ter um impacto significativo sobre a usabilidade → Por exemplo, erros intermitentes do sistema. • Para um produto de uso geral, geralmente será necessário especificar ou medir usabilidade em alguns contextos representativos diferentes, os quais serão um subgrupo de possíveis contextos e de tarefas que podem ser realizadas NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Problemas de Usabilidade NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Problemas de Usabilidade NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Problemas de Usabilidade NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Problemas de Usabilidade NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE • Qual foi o resultado? Era o que eu queria? • Para que serve este elemento? • O que significa esta figura? • Para onde “leva” este link? • A página demora a carregar! • O servidor não responde em tempo. • Não é exibido corretamente neste browser! • A linguagem script não funciona neste browser ou servidor. Problemas de Usabilidade NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Parte 1: Introdução Geral Parte 2: Orientações sobre requisitos da tarefa Parte 3: Requisitos para apresentação visual Parte 4: Requisitos para teclado Parte 5: Requisitos posturais e de layout para posto de trabalho Parte 6: Requisitos para ambiente Parte 7: Requisitos para monitores quanto à reflexão Parte 8: Requisitos para apresentação de cores Parte 9: Requisitos para outros dispositivos de entrada que não o teclado Parte 10: Princípios de diálogo Parte 11: Orientações sobre usabilidadeParte 12: Apresentação da informação Parte 13: Orientações ao usuário Parte 14: Diálogos por menu Parte 15: Diálogos por linguagem de comando Parte 16: Diálogos por manipulação direta Parte 17: Diálogos por preenchimento de formulário A Norma ISO/IEC 9241 NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE NBR ISO/IEC 924 • A ISO 9241, partes 12 a 17, fornecem recomendações condicionais que são aplicadas em contextos de uso específico. • Não cobre os processos de desenvolvimento de sistema. – Os processos de projeto centrados no ser humano para sistemas interativos são descritos na ISO 13407. NBR ISO/IEC 9241 - Aula 5 QUALIDADE DE SOFTWARE Resumindo • Acesse o link abaixo e veja o que é Usabilidade: http://www.youtube.com/watch?v=NSy El7_pJ80&feature=related • Acesse o link abaixo e veja o que é Usabilidade: • Inspeção http://www.youtube.com/watch?v=T_K0a442bjk • Teste http://www.youtube.com/watch?v=_bhxZjIqnIY http://www.youtube.com/watch?v=NSyEl7_pJ80&feature=related http://www.youtube.com/watch?v=T_K0a442bjk http://www.youtube.com/watch?v=_bhxZjIqnIY QUALIDADE DE SOFTWARE Aula 6 – NBR ISO/IEC 14.598 (Avaliação do Software) - Avaliação de Produto de Software NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE DESTAQUES DA AULA • Visão Geral dos processos de Avaliação do SW proposto pela Norma NBR ISO/IEC 14.598 • Guias e Requisitos propostos pela Norma NBR ISO/IEC 14.598 • Relação de parceria com a Norma NBR ISO/IEC 9126 • Apresentação de cada parte da Norma 14598-1, 14598-2, 14598-3, 14598-4, 14598-5 e 14598-6’. NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE NBR ISO/IEC 14598 AVALIAÇÃO DE PRODUTO DE SOFTWAREAVALIAÇÃO DO PROCESSO DE DESENVOLVIMENTO NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Visão Geral da Norma NBR ISO/IEC 14598 ▪ A norma fornece uma visão geral dos processos de avaliação de software. ▪ Fornece guias para avaliação baseada na utilização prática da Norma NBR ISO/IEC 9126 ▪ Define 3 enfoques de processos para: DESENVOLVEDORES ADQUIRENTES AVALIADORES NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Relação entre as Partes da Norma NBR ISO/IEC 14598 14598-2 Planejamento e gestão 14598-6 Documentação de módulos de avaliação 14598-3 Processo para desenvolvedores 14598-4 Processo para adquirentes 14598-5 Processo para avaliadores 14598-1 Visão Geral NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE As Partes da norma 14.598 Norma Objetivo 14.598-1 Visão geral da estrutura da série de normas e dos processos de avaliação. Relação com a norma ISO/IEC 9126 14.598-2 Atividades de planejamento e gerenciamento do processo de avaliação. Requisitos e orientações para suporte ao processo. 14.598-3 Para Desenvolvedores: atividades de avaliação durante o processo de desenvolvimento. Produtos intermediários 14.598-4 Para Adquirentes: atividades de avaliação no processo de seleção para aquisição do software (pacote ou sob medida ou modificações) 14.598-5 Para Avaliadores: descreve um processo para avaliação de produtos de software (visão do usuário) 14.598-6 Documentação dos módulos de avaliação. Define a estrutura e o conteúdo da documentação que será usada na descrição dos Módulos de Avaliação. NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE A proposta da Norma ISO/IEC 14.598 Avaliar a qualidade de um software é: Verificar, através de técnicas e atividades operacionais, o quanto os requisitos são atendidos Tais requisitos expressam as necessidades explicitadas e objetivam definir as características do SW, para que se possa examiná-lo e compreende-lo NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Razões para Avaliar a qualidade do SW As razões técnicas para deficiências e limitações do produto Produtos, mesmo que indiretamente Plano de ações: Como o produto pode evoluir Produtos, mesmo que indiretamente NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Relação entre as normas da série NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE NBR ISO/IEC 14.598-2 (Planejamento e Gerenciamento) ▪ Pressupõe existência de função de suporte a Organização para todos os seus projetos de avaliação. ▪ Desenvolvimento de SW ▪ Aquisição de SW ▪ Avaliação de SW NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Estrutura de Um Plano de Avaliação Quantitativa NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE NBR ISO/IEC 14.598-1 (Visão Geral) NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE • Define requisitos e orientações para a avaliação dos produtos intermediários de software, ou seja, avaliar durante a fase de desenvolvimento e manutenção: Métricas, revisões, RTF e etc. • Objetiva encontrar discrepâncias entre a qualidade esperada e a qualidade atual do produto de software, pela avaliação. • Usada por: • Gerentes de Projeto (monitorar desenvolvimento) • Analistas de Sistemas (levantar requisitos) • Equipe de Manutenção (demandas da fase) NBR ISO/IEC 14.598-3 (Desenvolvimento) NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE NBR ISO/IEC 14.598-4 (Aquisição) 1. Inicia o processo de Aquisição. 2. Nasce a necessidade: Obter, Desenvolver ou Melhorar um Produto ou Serviço de SW 1. Elaboração dos documentos de Requisitos de Aquisição 2. Determinar pontos de controle para revisão e auditoria do processo 1. Seleção de fornecedores e suas capacidades 2. Contrato negociando: custo e cronograma 3. Atenção para controle das alterações de contrato 1. Avaliação durante a vigência do contrato, considerando • Aceitação do produto ou serviço • Entre do produto ou serviço 1. Aceitação e entrega do produto ou serviço final, obedecendo os critérios de qualidade e aceitação previamente definidos. NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE NBR ISO/IEC 14.598-5 (Avaliação) NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE NBR ISO/IEC 14.598-5 (Avaliação) NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Repetidas avaliações, de um mesmo produto, pelo mesmo avaliador, com a mesma especificação de avaliação devem produzir resultados aceitos como idênticos Repetidas avaliações, de um mesmo produto, com a mesma especificação de avaliação e avaliador diferente devem produzir resultados idênticos A avaliação não deve ser influenciada por nenhum resultado parcial Os resultados não devem ser influenciados por opinião do avaliador (subjetividade) ISO/IEC 14.598-5-Características esperadas do processo de Avaliação NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE BATE PRONTO NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Questões de Exercícios TÉCNICO DE LABORATÓRIO - INFORMÁTICA - GO - 2009 - UFG (Informática, questão 50). De acordo com a ISO/IEC 14598-4, no “Processo de Avaliação”, a reprodutividade é caracterizada por: (cód. Q40647) ( ) uma avaliação que não deve ser influenciada por nenhum resultado particular ou por opiniões, mesmo quando realizada por um único avaliador. ( ) uma avaliação em que os resultados são factuais, ou seja, não são influenciados pelos sentimentos ou pelas opiniões de um avaliador ( ) uma avaliação repetida de um mesmo produto, com mesma especificação de avaliação, realizada pelo mesmo avaliador, com resultados que podem ser aceitos como idênticos. ( X) uma avaliação do mesmo produto, com mesma especificação de avaliação, realizada por avaliadores diferentes, produzindo resultados que podem ser aceitos como idênticos. NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Questões de Exercícios A norma 14598, visa apoiar a avaliação de software, oferecendo diretrizes para tal. A nova visa a avaliação sob 3 pontos de vistas, que são: ( ) Programador, Analista e Adquirente ( ) Gerente do projeto, projetista de SW e avaliador (X ) Desenvolvedor, Adquirente e Avaliador ( ) Gerente de sistemas, analista de redes e analista de sistemas A norma 14598 possui relação coma norma 9126, que estabelece: ( X ) Métricas externas, Métricas internas e Métricas de qualidade de uso ( ) Métricas externas, métricas internas e métricas medianas ( ) Usabilidade, Eficiência e eficácia. ( ) Repetitividade, produtividade e objetividade NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Questões de Exercícios O processo de Avaliação da Norma 14.598-5, que cuida da Avaliação do ponto de vista do Avaliador, possui 4 fases, que são, na ordem: ( ) Especificar os requisitos , Estabelecer critérios, Projetar e Executar a Avaliação ( X ) Estabelecer os requisitos, Especificar, Projetar e Executar a Avaliação ( ) Avaliar, comprar, desenvolver e distribuir ( ) Projetar, Estabelecer os requisitos, Especificar, e Executar a Avaliação Como se chama a característica esperada do processo de avaliação que diz que deve haver isenção de julgamento do avaliador: ( ) Repetitividade ( ) Reprodutividade ( ) Objetividade ( X) Imparcialidade NBR ISO/IEC 14.598- Aula 6 QUALIDADE DE SOFTWARE Questões de Exercícios A norma 14598-3, esta voltada a avaliação dos produtos intermediários do processo de desenvolvimento e ciclo de vida do software, qualquer que seja a sua fase. A quem essa avaliação pode interessar: ( x) Gerente de projeto, analistas de sistemas e equipe de manutenção ( ) Gerente de projeto, patrocinador e equipe de manutenção ( ) Analistas de sistemas, Analista de negócios e equipe de suporte ( ) Analista de sistemas, analista de rede e equipe de manutenção. Relacione as colunas I. 14.591-1 (IV ) Documentação dos módulos de avaliação II. 14.591-3 (II ) Para desenvolvedores III. 14.598-5 (VI ) Para Adquirentes IV. 14.598-6 (III ) Para avaliadores V. 14.598-2 (I ) Diretrizes gerais e relação com ISO 9126 VI. 14.598-4 (V) Planejamento e gerenciamento Resp: IV,. II, VI, III, I, V QUALIDADE DE SOFTWARE Aula 7 – NBR SO/IEC 9000-3 (Modelos de Melhoria e Avaliação de Processos de SW) NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Melhoria de Processos - Fundamental NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE CONTEXTO DE USO DA NORMA ISO 9000-3 • Orientar um contrato entre duas partes que exige a demonstração da capacidade do fornecedor em desenvolver, fornecer e bem como, manter softwares. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Contexto de USO da norma ISO/IEC 9000-3 • Por que processos devem ser bem estruturados? • Importante medir → CAPACIDADE do Processo NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE ATIVIDADES DE APOIO / SUPORTE ESTRUTURA DA NORMA 9000-3 9000-3 ESTRUTURA do SISTEMA DE QUALIDADE ATIVIDADES DO CICLO DE VIDA D O C U M E N T A Ç Ã O NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE ATIVIDADES DO CICLO DE VIDA NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE D I R E T R I Z E S NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE D I R E T R I Z E S NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE ISO/IEC 9000-3 – LIMITAÇÕES → FORA DO ESCOPO ▪ Não tratar de aspectos como a melhoria contínua do processo de software. ▪ Considera apenas quais processos a organização deve ter e manter, ▪ Não orienta quanto aos passos que devem ser seguidos para chegar a desenvolvê-los e nem de como aperfeiçoá-los. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Conceitos Importantes • Conceito de processo de software – “o que as pessoas fazem, por meio de atividades, métodos, práticas e transformações para desenvolver, manter e melhorar software” • Capacidade do Processo – Habilidade do processo em ser executado de forma eficiente e eficaz com a presença de características relevantes NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Características Relevantes • Execução consistente • Flexibilidade para adaptação de especificidades • Documentação por meio de fluxos, texto, fig • Deve ser apropriado para trabalho • Treinamento e evolução contínua • Manutenção para garantir evolução • Controle de mudanças – garantir integridade • Apoio de equipe, ferramentas e produtos. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Questões cobertas pela Norma 9000-3 • As diretrizes propostas cobrem questões como: ▪ Entendimento dos requisitos funcionais entre contratante e contratado; ▪ Uso de metodologias consistentes para o desenvolvimento de software; ▪ Gerenciamento de projeto desde a concepção até a manutenção. ▪ Ponto central: Documentação NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Responsabilidades da Gerência • A política de qualidade deve ser definida, documentada, comunicada, implementada e mantida por uma gerência. ▪ descreve: atitude da organização quanto a qualidade ▪ Define: Estrutura Organizacional adequada p/ gerenciar a qualidade ▪ Atribui responsabilidades ▪ Designa representante para controlar sistema de qualidade NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Responsabilidades da Gerência • Identificar e fornecer recursos adequados para execução do sistema de qualidade • Possibilitar que os gerentes possam usar os procedimentos e aprimorar a eficiência do sistema de qualidade. • Revisar periodicamente o sistema de qualidade com vistas ao seu aprimoramento • Manter os registros de todas as revisões. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Requisitos do Sistema de Qualidade • O sistema de qualidade deve ser documentado – como um manual. • Plano de Qualidade: controle da qualidade – Detalhar os procedimentos para: • Controlar a gerência de configuração • Verificar o produto • Validar o produto • Não conformidade – Mostrar como cumprir os requisitos do sistema de qualidade – Integrados com atividades do ciclo de vida – qualidade em todo o projeto NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Revisão dos Requisitos Contratuais • Tem que ser completos e bem definidos – Atender as exigências contratuais. • Procedimentos para revisão do contrato • Revisão junto a clientes. – Ajuda na aceitação entre as partes • Garantir a comunicação a empresa, das alterações contratuais. • Contratado e contratante devem concordar com as partes do contrato NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Revisão da Fase de Projetos • Documentar para assegurar cumprimento dos requisitos. – Planejamento – Método para revisão – Mudanças e verificações ocorridas • Planos de Procedimentos – Executado de forma disciplinada, assegurando um desenvolvimento sistemático. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Revisão da Fase de Projetos: PLANO DE PROCECIMENTOS ▪ Definir o projeto ▪ Listar os objetivos do projeto ▪ Apresentar o cronograma ▪ Definir entradas e saídas (com cliente) ▪ Posterior validação é recomendada ▪ Identificar projetos relacionados ▪ Análise de riscos ▪ Estratégias de controle ▪ As revisões, demonstrações e teste NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Revisão da Fase de Projeto: PLANO DE DESENVOLVIMENTO ▪ A responsabilidade dos participantes no desenvolvimento do software. ▪ Os meios de transmissão das informações ▪ Metodologia de desenvolvimento ▪ Os Modelos ▪ O comprometimento do cliente em aceitar, cooperar e dar suporte(ou não) ▪ A agenda de revisões do projeto para avaliar as atividades e os resultados alcançados NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Requisitos de Aquisição • O Controle da norma orienta para que haja procedimento para: – Avaliação de fornecedores (produtos e serviços) → qualidade aos produtos e serviços adquiridos – Seleção – Avaliação – Monitoramento – Controle dos subcontratados – Verificação dos produtos comprados – Registro e acompanhamento de subcontratados NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Identificação dos Controles dos Produtos • Necessidade de procedimentos para a identificação do produto por item, série ou lote durante todos os estágiosda produção, entrega e instalação. • O produto deve poder ser rastreado através dessa identificação. • A coerência nos procedimentos possibilita que todos os passos do caminho do produto (manipulação, armazenamento, produção, envio, instalação e serviço) sejam devidamente controlados. • O acompanhamento do produto de software e seus componentes durante o ciclo de vida. Para tanto: – métodos de gerência de configuração (configuration management) - usados para identificar e acompanhar o software e componentes. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Processo de Controle de Requsitos • Requer que todas as fases de processamento de um produto sejam controladas (por procedimentos, normas, etc.) e documentadas. • Os procedimentos para planejar, monitorar e controlar seu processo de produção, instalação e manutenção devem ser devidamente documentados. • Um bom sistema pode manter registros que monitorem e controlem processos, pessoal e equipamentos. Da mesma forma, procedimentos desenvolvidos podem controlar os processos de reprodução, liberação e instalação do software (software replication, reliase and intallation).. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Testes e Inspeções dos Produtos • Controlar atividades de teste e inspeção. – Exemplo> documentar Planos de Testes • Inspecionar as matérias-primas antes do uso • Elaborar procedimentos para inspecionar, testar e verificar: produto atende aos requisitos? • Produtos adquiridos por terceiros ou próprios: verificar os requisitos antes de disponibilizados para uso ▪ Desenvolvimento ou comércio NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Testes e Inspeções dos Produtos • Indicar no produto demonstração por quais inspeções ele passou e se foi aprovado. • Documentar status do software e de seus componentes - produção, instalação e manutenção. • Somente produtos que tenham passado por todos os teste e inspeções são subseqüentemente usados ou vendidos a clientes. NBR ISO/IEC 9000-3- Aula 7 QUALIDADE DE SOFTWARE Controle de Não conformidade. Procedimentos PARA: ▪ Assegurar que produto não conforme aos requisitos de qualidade seja impedido de ser utilizado ▪ Alertar o uso inapropriado do produto e notificar a todos: produto não se adequar a requisitos→ Identificar, corrigir, testar, discutir e registrar as não conformidades-procedimentos adequados ▪ Caso os problemas não sejam resolvidos, esse deve ser guardado em local separado ▪Os produtos de software que sofreram modificações devem passar por novos testes → Regressão QUALIDADE DE SOFTWARE Aula 8 – NBR SO/IEC 12207 (Modelos de Qualidade do processo de software) NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Melhoria de Processos - Fundamental NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Estrutura: Os Processos da NBR ISO/IEC 12207 (1995) A D A P T A Ç Ã O NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Os Processos da NBR ISO/IEC 12207 (2004) Processos Fundamentais Processos de Apoio P ro cesso d e A d a p ta çã o Aquisição Documentação Fornecimento Gerência de Configuração Desenvolvimento Operação Garantia da Qualidade Verificação Validação Revisão Conjunta Manutenção Auditoria Usabilidade Gerência de Resolução de Problemas Gerência de Solicitação de Mudanças Avaliação do Produto Processos Organizacionais Gerência Engenharia de Domínio MelhoriaGestão de Ativos Infra-estrutura Gestão de Programa de Reúso Recursos Humanos NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Os Processos da NBR ISO/IEC 12207 (2004) AQUISIÇÃO FORNECIMENTO MANUTENÇÃO DESENVOLVIMENTO Contrato T E/T Contrato OPERAÇÃO NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE O Significado do Processo • Cada processo recebe entradas • Entradas são transformadas por um processo. • Um processo gera saídas (os produtos do processo). • Clientes são receptores das saídas. • Fornecedores são provedores de serviços ou matérias-primas (entradas do processo). NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE O Significado do Processo - IMPORTANTE • Um processo é descrito pela pertinência de um conjunto de atividades atreladas a um propósito. Propósito/Resultado: reconhecimento do objetivo, da necessidade de execução do processo (propósito) e o que ele deve produzir como saída (resultado) Atividade ou tarefa: descrição das atividades e suas inter-relações, bem como a seqüência de execução de cada atividade ou tarefa. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE ATIVIDADES DO CICLO DE VIDA • ISO/IEC 12207: Tecnologia de informação – Processos de ciclo de vida de software • Versão Original (1995), • Emenda 1 (2002) • Emenda 2 (2004) NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE DIRETO AO ASSUNTO NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Conclusão ▪ A comunidade de software entende, então, a importância de criar normas, modelos e métodos para regular e orientar a definição de processos de software. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE O Conceito e Significado do processo • Conjunto de tarefas ordenadas: uma série de etapas que envolvem atividades, restrições e recursos para alcançar a saída desejada. • Para Pfleeger (2004), envolve um conjunto de métodos, técnicas, ferramentas e pessoas de forma a prescrever todas suas atividades • O processo de criação de um produto pode ser concebido como um ciclo de vida NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Por que Gerenciar POR processos? • Alinha estrategicamente a organização. • Foca a organização no cliente. • Obriga a organização a prestar contas pelo desempenho dos seus processos. • Alinha a força de trabalho com os processos. • Evidencia a necessidade de alocação de recursos. • Melhora a eficiência. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Os Processos da 12207 • Processos fortemente coesos – Suas partes - fortemente relacionadas e afins • Processos fracamente acoplados – O mais independentes uns dos outros • Modular – Executa 1 função do ciclo de vida NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Base da NBR ISSO/IEC 12207 ▪ A NBR ISO/IEC 12207 define ▪ Processos de Ciclo de Vida de Software ▪ Estabelecer uma estrutura comum para os processos de ciclo de vida de software ▪ Para ajudar as organizações a compreenderem a aquisição e fornecimento de software e, assim, conseguirem firmar contratos e executarem projetos de forma eficaz. ▪ http://pt.scribd.com/doc/46358566/Iso-12207 NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Prototipação NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Espiral NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Clássico NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE A ISO / IEC 12207 Proposta • A proposta da norma é a sua utilização desde a concepção até a descontinuidade do produto de software ressaltando: ▪ a importância do envolvimento de todos aqueles responsáveis pela produção, manutenção e operação do software tais como adquirentes, fornecedores, operadores, desenvolvedores, mantenedores, gerentes, profissionais de qualidade e usuários. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE A ISO / IEC 12207 Especifica • Cabe às empresas a responsabilidade de adaptação dos processos, atividades e tarefas da norma a fim de atender ao modelo de ciclo de vida para o projeto de software. • De acordo com a natureza dos processos esses se agrupam da seguinte forma: ▪ Fundamental / Apoio / Organizacional / Adaptação NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processos Fundamentais • Iniciam o ciclo de vida • Comandam a execução dos demais. • Aquisição – inicia o ciclo • Fornecimento – responde pela execução dos 3 abaixo • [1] Desenvolvimento • [2] Operação • [3] Manutenção – modificação para alteração ou melhoria. NBR ISO/IEC 12207- Aula8 QUALIDADE DE SOFTWARE Processos Fundamentais – Aquisição • Define as atividades a serem executadas pela organização que adquire ou subcontrata um produto ou serviço de software. • O propósito do Processo de Aquisição é obter um produto e/ou serviço que satisfaça a necessidade expressa pelo cliente. • O processo inicia com a identificação de uma necessidade do cliente e termina com a aceitação do produto e/ou serviço • A ISO/IEC 12207 define o propósito e os resultados para os sub processos de Preparação para Aquisição, Seleção de Fornecedor, Monitoração do Fornecedor e Aceitação pelo Cliente. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processos Fundamentais – Fornecimento • O Processo de Fornecimento é a sustentação para a execução dos processos de desenvolvimento, manutenção e/ou operação do produto ou serviço de software. • Inicia: preparação de proposta para atendimento ao pedido de proposta de aquisição • Encerra: entrega do produto ou serviço de software. • A ISO/IEC 12207 define o propósito e os resultados para os subprocessos de Proposta do Fornecedor, Acordo Contratual, Liberação do Produto e Suporte à Aceitação do Produto. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processos Fundamentais – Desenvolvimento • Contém as atividades e tarefas para o desenvolvimento do software. • O propósito é transformar um conjunto de requisitos em um software que atenda às necessidades do cliente • • A ISO/IEC 12207 define o propósito e os resultados para os sub processos de Elicitação de Requisitos, Análise dos Requisitos do Sistema, Projeto da Arquitetura do Sistema, Análise dos Requisitos do Software, Projeto da Arquitetura do Software, Projeto Detalhado do Software, Construção do Software, Integração do Software, Teste do Software, Integração do Sistema, Teste de Sistema e Instalação do Software, Apoio a Aceitação do Software NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processos Fundamentais – Desenvolvimento → TAREFAS Especificar requisitos de software Estabelecer e manter a rastreabilidade Verificar os requisitos de software Estabelecer linha base e comunicar os requisitos de software O processo se organiza em TAREFAS NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processos Fundamentais – Operação • Contém as atividades e tarefas para a operação do software e suporte operacional aos usuários. • O propósito do Processo de Operação é operar o produto de software no seu ambiente e fornecer suporte aos clientes • A ISO/IEC 12207 define o propósito e os resultados para os sub processos de Uso Operacional e Suporte ao Cliente NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processos Fundamentais – Manutenção • Ativado quando o produto de software é submetido a modificações no código e na documentação associada devido a um problema ou a uma necessidade de melhoria ou adaptação. • Este processo ainda inclui as possibilidades de migração e descontinuidade do produto de software. • O propósito do Processo de Manutenção é modificar um produto de software ou sistema após a sua entrega apara corrigir falhas, melhorar o desempenho ou outros atributos, ou adaptá-lo a mudanças do ambiente NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processo Apoio • Responsabilidade da organização que o executa • Proporciona qualidade aos demais processos • Exemplo: apoiar a documentação do software NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processo Organizacional • Responsabilidade da organização que o executa • São chamados pelos outros processos e são independentes do que esta sendo executado. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE Processo de Adaptação ATIVIDADE DESCRIÇÃO IDENTIFICAÇÃO DO AMBIENTE DO PROJETO Identificação do projeto: modelo e atividades de ciclo de vida; requisitos do sistema; políticas, procedimentos e estratégias organizacionais; tamanho, e tipos de sistema, produto ou serviço de software; e quantidade de pessoas SOLICITAÇÕES DE INFORMAÇÕES Avaliar os impactos das informações nas decisões de adaptação dos usuários, pessoal de suporte, gerentes de contrato e potenciais proponentes. SELEÇÃO DE PROCESSOS, ATIVIDADES E TAREFAS Definição de processos, atividades e tarefas que serão executadas com a devida documentação desenvolvida e seus respectivos responsáveis. DOCUMENTAÇÃO DE DECISÕES E MOTIVOS DE ADAPTAÇÃO Requer a documentação das decisões de adaptação juntamente com seus motivos. NBR ISO/IEC 12207- Aula 8 QUALIDADE DE SOFTWARE A ISO / IEC 12207 Especifica • Não se propõe a determinar métodos, ferramentas, treinamentos, métricas ou tecnologias empregadas. • Por que? ▪ norma é mundial / acompanhar a evolução da engenharia de software nas diversas culturas • Permite que seja utilizada em qualquer modelo de ciclo de vida, método ou técnica de engenharia de software e linguagem QUALIDADE DE SOFTWARE Aula 9 – Modelos de Qualidade de Processo de Software ISO/IEC 15504 - (Spice - Avaliação) e CMMI NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE Melhoria de Processos - Fundamental NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE Visão Geral d Norma ISO/IEC 15504 Processo Avaliação do Processo Melhoria do Processo Identifica aplicabilidade Leva a Identifica mudanças no Leva a É sujeito a Pode levar a Determinação da Capacitação NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE 15504-5 Dimensões de Processos Fundamentais Organizacionais Apoio • Gerência • Melhoria de Processo • Recursos e Infra- estrutura • Reuso • Controle de Configuração • Garantia da Qualidade • Aquisição • Fornecimento • Engenharia • Operação • 48 processos que estão organizados em 3 categoria de processo e 10 grupos de processo. NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE Níveis de Capacidade : 15504 Níveis de Capacidade: Métrica para avaliação e roteiro para melhoria, ... Processo executado dentro de limites de controle definidos e com medições detalhadas e analisadas Processo planejado e acompanhando, e satisfaz requisitos definidos de: ✓ qualidade, ✓ prazo, ✓ e custos, e seus produtos de trabalho são gerenciados Processo executado e gerenciado com uma adaptação de um processo padrão definido, eficaz e eficiente Processo atinge os objetivos, porem sem padrão de qualidade e sem controle de prazos e custos 5 Otimizando 4 Previsível 3 Estabelecido 2 Gerenciado 1 Executado 0 Incompleto Processo não existe ou geralmente falha Processo melhorado continuamente de forma disciplinada ... baseados na capacidade do processo NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE Representações no CMMI Contínua (Níveis de Capacidade) e por Estágios (Níveis de Maturidade) NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE Níveis de Maturidade: CMMI por Estágios NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE Níveis de Capacidade: CMMI Contínua NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE ISO / IEC 15504 ▪ A ISO/IEC 15504 → SPICE (Software Process Improvement and Capability Determination) ▪ norma para definição de processos de desenvolvimento de software. ▪ Apresenta níveis de capacidade para cada processo. ▪ Foca na avaliação de processos: investigação e análise organizada NBR ISO/IEC 15504 e CMMI- Aula 9 QUALIDADE DE SOFTWARE Visão Geral d Norma ISO/IEC 15504 • O que é? • Define requisitos para Avaliação de Processo; • Na prática, é utilizado com Modelo de Referência para Melhoria de Processo. • Avaliação em 2 Contextos: • Melhoria Contínua (otimização) – Entender o estado dos processos – Avaliação identifica oportunidades de melhoria – Foca na melhoria de processo • Determinação da Capacidade – Determinar a adequação dos processos – Geralmente realizada por quem tem interesse em contratar a organização
Compartilhar