InfoQ

InfoQ

Notícias

Meus Favoritos

Faça oLogin ou Cadastre-se para ativar o recurso de favoritos por tempo ilimitado.

O conteúdo foi adicionado aos favoritos!

Houve um erro ao adicionar aos favoritos! Por favor, tente novamente.

O que significa Qualidade?

Postado por Mark Levison , traduzido por André Pantalião em 05 Mai 2009

Seções
Processos e Práticas,
Arquitetura e Design
Tópicos
Entrega de Qualidade ,
Agile ,
Entregando Valor
Tags
Qualidade

O que siginifica Qualidade no Desenvolvimento de Software? Como é usado hoje, Mike Bria observa: "Qualidade" se refere á "ausência de defeitos" ao invés da "presença de valor", de modo que isto representa o que é normalmente utilizado no uso diário.

Ele continua e sugere:

"Qualidade" deve ser usada como uma medida da utilidade funcional/aparente para nosso consumidor, e not não como medidas de defeitos. Realmente, deveria somente ser assumido que defeitos estão usualmente ausentes. Isto deveria apenas estar implícito no que significa ser um Profissional.
Então: Eu aqui proponho que nós como profissionais de software e homens de negócio parem de usar a palavra "qualidade" siginificando uma "medida de defeitos;.

Mike pensa que nós temos pessoas escrevendo código menos frágil se o foco não é a qualidade observada como menos defeitos, mas qualidade como adequado para uso pelo cliente. Ele não consegue pensar em nenhum outro produto onde o usuário iria dizer que é de boa qualidade só porque tem poucos defeitos. Ainda que seja a direção que seguimos em software.

Lisa Crispin, co-autora do Agile Testing: A Practical Guide for Testers and Agile Teams, comentou “Eu nunca gostei de medir defeitos então é difícil pensar sobre como chamar isto.”

Christian Vest Hansen, citando Robert Glass, diz que qualidade é:

…uma coleção de atributos: portabilidade, confiabilidade, eficiência, usabilidade, testabilidade, facilidade de entendimento e modificação.

Cada um destes atributos pode ter diferente importância em diferentes projetos, mas qualidade nunca pode ser um deles sozinha. Alguns projetos podem não ligar para portabilidade como um todo, e um produto que só é confiável e nada mais, não pode ser considerado um produto de qualidade.

James Bach pensa que a visão tradicional de qualidade é um mito que’s não está alinhado com o desenvolvimento de software: “A qualidade de um produto é construída no produto por seu time de desenvolvimento. Eles criam qualidade ao seguir práticas de engenharia de software para projetar o código-fonte de forma que ele atenda completamente os requisitos do usuárior.” Ao invés disso, ele propõe um novo mito:

Um produto é uma organização dinâmica, como um jardim que é sujeito às condições do tempo. Um produto de alta qualidade presta um atendimento compentente e sem problemas através do tempo. Como reais jardineiros, no início nós não temos todos os poderes conhecimentos que temos à medida que crescemos nossa plantação. Nós revemos as condições e o estado de nosso produto à medida que avançamos. Nós tentamos antecipar problemas, e reagimos para corrigir os problemas que ocorrem. Nós tentamos entender o que nossa arte pode e não pode fazer, e gerenciamos as expectativas de nosso cliente adequadamente. Nós sabemos que nosso produto está sempre sujeito a se deteriorar, e o sabor que terá para nossos clientes pode variar. Nós também sabemos que mesmo a mais perfeita safra de nossa plantação pode ser arruinada posteriormente por um mau cozinheiro que a utilize. Qualidade, em um grau importante, está fora de nossas mãos.

Depois de muitos anos vendo coisas funcionarem e falharem (ou trabalharem e depois falharem), Eu penso em qualidade como algo passageiro. Pode ser boa o suficiente, algumas vezes. é melhor ser melhor do que bom o suficiente. Mas enfraquece; sempre enfraquece, como algo natural.

Por fim, JB Rainsberger susugere: “Quando paramos de perseguir uma qualidade objetivamente medível, nós voltamos a tentar satisfazer pessoas em específico, eu creio que nos ajuda a entregar software mais apropriado e lucrativo.”

Poderia parecer que não há um entendimento claro do que qualidade representa. Ao invés disso, há um entendimento que qualidade isn’t não é uma medida de defeitos. Os autores concordam que precisamos chamar uma espada de espada (achar o nome correto para as coisas), assim podemos aceitar os defeitos como deficiências.

Muito bom o post! por Fabrício Campos Enviado
ótimo assunto por Wellidy Almeida Enviado
  1. Voltar ao topo

    Muito bom o post!

    por Fabrício Campos

    Qualidade pode ter muitos significados, e muitos deles podem ser bem diferentes, pois ela está fortemente relacionada a opinião e sensação da pessoa.
    Para mim por exemplo, o Firefox é o browser com maior qualidade, pois atende melhor as minhas necessidades e minhas espectativas.
    Já outras pessoas preferem o Chrome, e umas até o IE (rsrs).

    Parabéns pela tradução André! Ficou muito boa e o assunto é bem interessante.

    Abraços!

  2. Voltar ao topo

    ótimo assunto

    por Wellidy Almeida

    é essa exatamente a visão que todos deveriam ter sobre qualidade. Não é somente um ponto, devemos procurar qualidade em tudo, porque são pessoas diferentes que sentem a falta de qualidade.
    Um desenvolvedor sente a falta por ter que manter um código horrível.
    O cliente sente a falta quando o software não funciona como ele queria, ou foi entregue fora do prazo, ou simplesmente porque não foi comunidado de algo.
    Mas estamos fazendo software para o cliente, ele tem que ser nosso foco, ou melhor, o que agrega a ele. É como a Toyota faz, identifica o que é valor agregado para o cliente e comunica isso a todos os envolvidos em criar o produto.

    Parabéns pelo post.

Conteúdo Educacional

Business Model Canvas, passo a passo

O Business Model Canvas é uma ferramenta estratégica para a construção visual de novos produtos ou serviços. Conheça cada um dos seus elementos e como preencher o Canvas, passo a passo.

Google Apps Script, Parte 2: Google Docs, triggers e envio de emails

Nessa segunda e última parte de uma série sobre o Google Apps Script, conheça como funciona o envio de emails, a conversão de documentos e como criar menus e triggers.

Serviços de cloud computing PaaS: um guia para desenvolvedores Java

Este artigo avalia seis dos mais importantes fornecedores de serviços de cloud computing PaaS para desenvolvedores Java, analisando critérios como desempenho, escalabilidade e tecnologias suportadas.

Canvas de Modelo de Negócios: uma contribuição para o sucesso de Startups

O Canvas de Modelo de Negócios é um novo modo de comunicar e suportar a validação iterativa, incremental e empírica de modelos de negócio de startups e novos produtos substituindo o plano de negócios.

Entrevista com Rebecca Parsons Parte 2: Agile Distribuído, Arquitetura vs. Design e SOA

Nesta segunda e última parte de uma entrevista exclusiva para InfoQ Brasil, Rebecca Parsons, CTO da ThoughtWorks, fala sobre o Agile Distribuído e técnicas para definição de arquiteturas.

Entrevista com Rebecca Parsons Parte 1: Agile nas Empresas e Arquitetura Evolucionária

Nessa primeira parte de uma entrevista com a CTO da ThoughtWorks, veja recomendações sobre formas de construir e arquitetar sistemas para obter o máximo de flexibilidade e responsividade a mudanças.

Agile das equipes à organização: o papel do gerente, estratégias e dicas para a adoção

Os gerentes de projetos podem assumir o papel crítico de liderar a introdução do Agile. Vejas conceitos, dicas e técnicas para apoiar esse processo de mudanças.

Sinais vitais de um projeto ágil: saúde através de indicadores

A monitoração dos indicadores da saúde de um projeto ganham interpretações e prioridades diferentes nos projetos ágeis, que focam em transparência, visibilidade, simplicidade e medidas quantitativas.