terça-feira, 9 de outubro de 2012

Qualidade de Produto e de Processo


    De acordo com Pressman, nas décadas de 1960 e 1970 mudanças tecnológicas importantes aconteceram, as quais afetaram as especificações de hardware e construção de computadores e, consequentemente, as de software. Tal período é conhecido, hoje, como a “crise do software” e suas repercussões são sentidas até hoje.
            Com um hardware mais capaz, mais memória e velocidades de processamento consideravelmente maiores, houve um direcionamento da demanda do comércio, indústria e governos por software capaz de mais funcionalidades, mais útil, que automatiza-se e simplifica-se muitos dos processos vigentes. Tendo uma importância e valor comercial cada vez maior, o software começou a ser explorado de maneira crescente e, com uma complexidade maior, mais gente produzindo e mais software sendo produzido, é natural que muito desse software apresentasse defeito. Deste problema, surgiu a área chamada de Engenharia de Software.
            Para Bauer, Engenharia de Software é a criação e a utilização de sólidos princípios de engenharia a fim de obter software de maneira econômica, que seja confiável e que trabalhe em máquinas reais. A Engenharia de Software se concentra nos aspectos práticos da produção de um sistema de software, e como melhorá-lo.
            Segundo a NBR ISO 9000:2005, "qualidade é o grau no qual um conjunto de características inerentes satisfaz aos requisitos". Ou seja, afirma-se que quando algum produto ou serviço atende aos requisitos especificados, este produto ou serviço específico possui qualidade. A qualidade de software, segundo Pressman, "é a conformidade a requisitos e a características implícitas que são esperadas de software profissionalmente desenvolvido" (Pressman, 1995). Rocha et al. (2001) também expõe este conceito de forma similar: "Qualidade de software pode ser vista como um conjunto de características que devem ser atingidas em um determinado grau tendo em vista que o produto atenda às necessidades de seus usuários". A partir das definições expostas acima têm-se que a qualidade de software é composta por três objetos: qualidade de processo, qualidade de projeto e qualidade de produto. Ainda conforme Pressman, existem muitas medidas de qualidade de software, sendo algumas:

Corretitude: um programa deve operar corretamente, caso contrário, será de pouco valor aos seus usuários. Corretitude é o grau em que o software executa a função que é dele exigida.
 Manutenibilidade: à manutenção de software é responsável por mais esforço do que qualquer outra atividade de engenharia de software. Manutenibilidade é a facilidade com que um programa pode ser corrigido se um erro for encontrado, adaptado se o seu ambiente se modificar ou ampliado se o cliente desejar inclusões e alterações nos requisitos funcionais. Não existe nenhuma forma de se medir a manutenibilidade diretamente, deve-se usar medidas indiretas.
Integridade: Esse atributo mede a capacidade que um sistema tem de se suportar ataques à sua integridade, sendo que ataques podem ser feitos a todos os três componentes do software: programas, dados e documentos; ataques podem ser feitos de maneira intencional, assim como podem surgir não intencionalmente.
 Usabilidade: Usabilidade é um termo utilizado para definir a facilidade com que pessoas podem fazer uso de uma ferramenta ou objeto a fim de praticar uma tarefa específica e/ou importante. Pode-se referir também, à usabilidade, como aos métodos de mensurar a usabilidade e ao estudo de princípios por trás da eficiência percebida, por um sujeito, de um objeto. Segundo a ISO 9241, usabilidade é a medida pela qual um produto pode ser usado por certos usuários para alcançar os objetivos desejados com efetividade, eficiência e satisfação em um dado contexto. Nesse contexto, medida deve ser entendida como resultados de medição e os processos utilizados para se obter aqueles valores.
     A qualidade do produto final, entretanto, nunca pode ser garantida. É através de uma profissionalização e aperfeiçoamento do processo de desenvolvimento de software que uma empresa produtora de software, ao se chegar a um alto nível de formalidade e institucionalização de suas práticas de trabalho, atingirá uma alta qualidade de processo e projeto. Eventualmente, a partir das duas vertentes de qualidade citadas, se chegará na qualidade do produto.

Nenhum comentário:

Postar um comentário