GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

Qualidade de Software

ANDRE LUIZ PEREIRA DE OLIVEIRA Portugiesisch

Inhalt der Mindmap

Qualidade de Software

  1. Gerência da Qualidade

    • Uma das principais metas da Engenharia de Software é a produção de software de qualidade.
    • Entretanto, que características um determinado produto precisa apresentar para considerarmos que o mesmo tem qualidade?
    • Qualidade de software é um conjunto de características a serem satisfeitas em um determinado grau, de modo que o software satisfaça às necessidades de seus usuários.
    • Usuário
      • O interesse fica concentrado principalmente no uso do software: facilidade de uso, requisitos atendidos
    • Desenvolvedor
      • A qualidade fica mais voltada às características internas do software: legibilidade, testabilidade, eficiência
    • Gerente
      • A qualidade do produto não pode ser desvinculada dos interesses da organização: custo e prazos
    • Aspectos importantes:
      • Documentação
      • Garantia e Controle da Qualidade
      • Gerência e Configuração de Software
      • Medição
    • O gerenciamento da qualidade de software para sistemas de software tem três preocupações principais:
      • 1. No nível organizacional, a gestão da qualidade se preocupa em estabelecer uma estrutura de processos e padrões organizacionais que levem a software de alta qualidade.
      • 2. No nível do projeto, o gerenciamento da qualidade envolve a aplicação de processos de qualidade específicos.
      • 3. O gerenciamento da qualidade no nível do projeto também se preocupa com o estabelecimento de um plano de qualidade para um projeto.
  2. Documentação

    • Documentos são artefatos que são submetidos à Gerência de Configuração e à Garantia e Controle da Qualidade.
    • A organização deve definir um Processo de Documentação.
      • Esse processo deve indicar:
        • Que documentos são produzidos
        • Quem elabora
        • Quem avalia
        • Quem acessa
        • Quando é elaborado
      • Quando o processo de documentação é bem definido e executado, o planejamento da documentação dos projetos consiste apenas em selecionar os documentos que serão utilizados/gerenciados.
  3. Garantia e Controle da Qualidade

    • Atividades de garantia e controle da qualidade são realizadas ao longo do processo de desenvolvimento e buscam detectar problemas tão logo eles ocorram
      • Envolve avaliar a qualidade tanto do produto quanto do processo.
      • Principais atividades de garantia da qualidade: VV&T.
      • A organização deve definir um Plano de Qualidade.
    • Gerência da qualidade
      • Qualidade baseada em processos
    • Para que uma organização realize as atividades de garantia e controle da qualidade, devem ser definidos padrões organizacionais de processo e de produto.
    • Exemplos de padrões organizacionais:
      • Padrões de Processo (processos padrão e especializados da organização)
        • Modelos de documentos (ex.: modelo do Plano de Projeto, da Especificação de Requisitos etc)
        • Roteiros (diretrizes gerais para a elaboração de um artefato)
        • Padrões de código (ex.: nomes de variáveis válidos, estilos de identação, regras para comentários etc)
        • Padrões de interface (ex.: padrão de telas, botões, textos etc)
    • Verificação
      • O software está sendo desenvolvido de maneira correta?
      • Avaliação da aderência aos padrões
    • Validação
      • O software desenvolvido é o correto?
      • (avaliação de atendimento aos requisitos
    • Teste
      • Atividades de V&V que consistem de uma análise dinâmica
      • (envolvem a execução do software)
    • Revisões
      • Análise de processos e artefatos ao longo do desenvolvimento para detectar erros e inconsistências, sejam eles relacionados à forma, sejam em relação ao conteúdo, e apontá-los aos responsáveis pela sua elaboração.
    • A Equipe de Garantia de Qualidade de Processo e de Produto
      • Pode ser um único grupo para toda a organização
        • atende a todos os projetos da organização
      • Pode ser um grupo para o projeto
        • atende ao projeto
      • Pode ser uma pessoa
        • para o projeto ou para a organização
  4. Gerência de Configuração de Software

    • Controla as mudanças nos itens de software (artefatos) gerados ao longo do desenvolvimento
      • Processo
      • Ferramentas
      • Documentos
      • Código
    • Visa estabelecer e manter a integridade dos itens de software ao longo de todo o ciclo de vida do software garantindo a completeza, a consistência e a correção de tais itens, e controlando o armazenamento, a manipulação e a distribuição dos mesmos
    • A organização deve definir um Plano de Gerência de Configuração que descreve as atividades da gerência de configuração, procedimentos e responsáveis pela execução dessas atividades
    • Processo de Gerência de Configuração de Software:
      • 1. Identificação da Configuração
        • Identificar os itens de configuração
        • Identificar as relações entre os itens de configuração
        • Estabelecer baselines
      • 2. Controle de Versão
        • Criação e administração de versões e variantes
      • 3. Controle de Mudança
        • Definição do procedimento a ser seguido para a realização de mudanças nos itens de configuração
    • Procedimento de Mudança:
      • 1. É realizada uma solicitação de mudança em um item de configuração.
      • 3. Se aprovada, é realizado o checkout do item de configuração e ninguém mais pode acessá-lo, exceto quem está executando as alterações.
      • 2. A solicitação é avaliada (considerando modificações nos itens relacionados).
      • 4. As alterações são avaliadas
      • 5. Se aprovadas, é realizado o check-in (a nova versão do item de configuração é disponibilizada e uma nova baseline é estabelecida).
      • Auditoria
        • Verificação das alterações realizadas nos itens e em seus relacionados
      • Relatório de Situação da Configuração
        • (i) O que aconteceu?
        • (ii) Quem fez?
        • (iii) Quando aconteceu?
    • O acesso rápido às informações agiliza o processo de desenvolvimento e melhora a comunicação entre as pessoas, evitando, assim, muitos problemas de alterações do mesmo item de configuração, com intenções diferentes e, às vezes, conflitantes
  5. Medição de Software

    • Medição de software é uma avaliação quantitativa de qualquer aspecto dos processos e produtos da Engenharia de Software, que permite seu melhor entendimento e, com isso, auxilia o planejamento, controle e melhoria do que se produz e de como é produzido (BASS et al 1999).
    • O elemento básico da medição, que propicia a análise quantitativo, são as medidas. Elas caracterizam, em termos quantitativos, alguma propriedade de um objeto da Engenharia de Software (BASILI e ROMBACH, 1994).
    • A medição provê informação útil para que as organizações tomem decisões que impactam em seus objetivos de negócios.
    • A medição de software é um dos principais pilares da melhoria de processos de software.
    • Atualmente, é um dos temas mais importantes na Engenharia de Software
    • Conceitos Básicos:
      • Medida
        • Quantificação dos atributos de entidades.
        • Ex.: número de defeitos de uma porção de código, tempo estimado para o projeto etc.
        • Pode ser medida base (ex.: número de defeitos) ou medida derivada (ex.: taxa de alteração de requisitos)
        • É medida utilizando se um procedimento de medição, que descreve como a coleta de dados para a medida deve ser realizado.
        • É analisada usando se um procedimento de análise, que descreve como os dados coletados para a medida deve ser representado e analisado.
      • Atributo
        • Propriedade de uma entidade que pode ser quantificada
        • A medida prazo estimado para o projeto quantifica o atributo tempo
        • Outros exemplos: tamanho, custo, esforço etc
      • Entidade
        • A medida prazo estimado para o projeto quantifica o atributo tempo de uma entidade do tipo projeto.
        • Outros exemplos: artefato, processo, módulo etc.
      • Procedimento de Medição
        • A medida aderência ao prazo do projeto poderia ter como procedimento de medição:
        • Aplicar a fórmula de cálculo de medida que determina a razão entre o prazo real do projeto e o prazo estimado para o projeto.
      • Procedimento de Análise
        • A medida aderência ao prazo do projeto poderia ter como procedimento de análise:
        • Representar em histograma as taxas de aderência ao prazo dos projetos. Analisar os valores medidos para os projetos e compará-los uns com os outros. 93 Subgrupar os dados e representá-los em outros histogramas a fim de identificar e analisar: (i) as diferenças das taxas de acordo com as características dos projetos; (ii) as diferenças das taxas de acordo com a fase em que o projeto se encontra.
      • Medição
        • Ato de medir, ou seja, de atribuir um valor a uma medida, executando seu procedimento de medição
        • Ex.: medição do prazo previsto para o projeto obtendo se o valor 500.
      • Análise de Medição
        • Ato de analisar os dados coletados para uma medida, executando seu procedimento de análise
        • Ex.: análise da aderência a o prazo do projeto, concluindo se que os projetos que envolveram o uso de nova tecnologia apresentaram uma aderência 10% menor aos prazos previstos do que a média das aderências dos projetos que não utilizaram novas tecnologias.
      • Indicador
        • Medida utilizada para analisar o alcance a objetivos.
        • Ex.: aderência a o prazo do projeto poderia ser um indicador para o objetivo melhorar a aderência dos projetos aos planos.
        • Mais diretamente, poderia ser definido o indicador: % de melhoria da aderência ao prazo dos projetos.
    • As medidas são imprescindíveis às atividades de Garantia da Qualidade e de Gerência de Projetos.
    • A literatura sugere diversas medidas e as organizações podem definir medidas própria
    • Por exemplo, a norma ISO/IEC 25010 sugere um conjunto de atributos (que podem ser medidos em um produto de software, bem como as medidas que podem ser utilizadas.
    • Planejar Medição
      • Os objetivos da organização são analisados e as necessidades de informação são identificadas. A partir daí, as medidas necessárias para atender às necessidades de informação são definidas
      • Os resultados são registrados no Plano de Medição.
      • É indispensável que a medição esteja alinhada com os objetivos de negócio da organização → Medição deve ser orientada a objetivos.
      • Definindo medidas
        • A definição operacional de uma medida deve conter todas as informações necessárias para que sua coleta possa ser realizada de forma consistente e para que sua análise seja realizada de modo a fornecer as informações necessárias
    • Realizar/Executar a Medição
      • Consiste na execução do Plano de Medição
      • Coleta
        • São coletados dados (valores medidos) para as medidas
        • Os dados são validados e armazenados em um repositório de medidas
      • Análise
        • Os dados coletados são analisados através de métodos analíticos (gráficos de barras, gráficos de controle, etc.) e os resultados da análise são utilizados para apoiar a tomada de decisão
      • Captura
      • Usar coleta automática sempre que possível (ex.: SLOC)
      • Muitas medidas serão coletadas manualmente (ex.: nº de defeitos detectados).
      • Para diminuir a possibilidade de erros na coleta:
        • Determinar um procedimento simples e claro para a coleta.
        • Evitar registros desnecessários
        • Treinar as pessoas no procedimento de medição.
        • Prover os resultados da análise dos dados coletados aos provedores originais, para que sejam utilizados em seu trabalho.
        • Utilizar formulários que orientem e facilitem a medição.
      • Armazenamento dos dados
        • A medição de software será tão boa quanto os dados forem coletados e analisados. Não pode tomar boas decisões baseando se em dados ruins.
        • Características de um bom dado:
          • Correto (foi coletado)
          • Acurado (o valor obtido é o valor)
          • Completo (contém todas as informações necessárias a seus níveis de detalhe)
          • Consistente (qualquer pessoa que o medisse obteria o mesmo)
          • Contextualizado (tempo e espaço do dado)
        • Alguns problemas possíveis
          • Dados não capturados
          • Valores errados capturados
          • Erros nas ferramentas de gerência dos dados
          • Então: deve ser feita validação de dados
      • Analisando os dados coletados
        • Para que os dados sejam analisados, deve ser seguido o procedimento de análise de medição da medida
        • O procedimento deve indicar o método analítico a ser utilizado e os critérios a serem considerados para se chegar a uma conclusão na análise.
        • Os dados devem ser representados graficamente para a análise
      • Importante:
        • Nem sempre uma medida pode ser analisada isoladamente. Assim, é necessário identificar medidas correlatas e fazer uma análise conjunta.
    • Atualmente, há diversos frameworks que apoiam a definição e institucionalização de programas de melhoria de processos como por exemplo o MR MPS SW, o CMMI, a série ISO/IEC 33000 e a ISO/IEC 12207.
    • Em todos esses frameworks, a medição ocupa papel fundamental.
    • Alguns desses frameworks propõem a implementação da melhoria de processos em níveis, nos quais a maturidade e a capacidade dos processos evoluem gradativamente
    • O único modo racional de melhorar um produto ou processo é medir atributos específicos, obter um conjunto de medidas significativas baseadas nesses atributos e usar os valores medidos para fornecer indicadores que conduzirão um processo de melhoria da qualidade (PRESSMAN, 2011).
  6. Medição do Processo

    • Medimos a eficácia de um processo de software indiretamente - derivando métricas com base nos resultados que podem ser derivados do processo:
      • medidas de erros descobertos antes do lançamento do software.
      • defeitos entregues e relatados pelos usuários finais.
      • produtos de trabalho entregues (produtividade).
      • esforço humano despendido
      • tempo gasto no calendário.
      • conformidade do cronograma
      • outras medidas

Informationen

Beschreibung
Mindmap am Qualidade de Software, erstellt von ANDRE LUIZ PEREIRA DE OLIVEIRA am 28/02/2024.
Aufrufe
0
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck