Este documento discute conceitos e métodos relacionados à qualidade de software. Apresenta definições de qualidade de software segundo a ISO e modelos de avaliação da qualidade. Também aborda características como correção, confiabilidade, usabilidade que devem ser consideradas para garantir a qualidade do produto.
1. FACULDADE OPET
CENTRO DE PÓS-GRADUAÇÃO
MBA DESENVOLVIMENTO DE SISTEMAS PARA WEB
Marcelo Luiz Stefaniak
QUALIDADE DE SOFTWARE
CURITIBA
2013
2. Marcelo Luiz Stefaniak
QUALIDADE DE SOFTWARE
CURITIBA
2013
Artigo Científico apresentado à disciplina
de Qualidade de Software como requisito
parcial à obtenção do Título de
Especialista, no Curso de Pós-
Graduação em MBA Desenvolvimento
de Sistemas Web, Faculdades Opet.
Orientador: Profº Reinaldo Pereira de
Moraes
3. QUALIDADE DE SOFTWARE
Marcelo Luiz Stefaniak
marceloluiz@bol.com.br
Orientador:Profº Reinaldo Pereira de Moraes
moraesreinaldo@yahoo.com.br
RESUMO
Os passos iniciais direcionados à qualidade de software consistem no estudo e
entendimento de conceitos que possam ser aplicados, com a intenção de promover a
melhoria da qualidade dos processos e consequentemente dos produtos de software. A
meta é apresentar alguns conceitos e métodos relacionados a qualidade de software, que
contam com eficiência comprovada, e aceitação global.
Palavras - chave: Produto de Software. Qualidade de Software.
ABSTRACT
The initial steps aimed at software quality consist in the study and understanding
of concepts that can be applied with the intention of promoting quality improvement
processes and consequently of software products. The goal is to present some concepts
and methods related to software quality, which have proven efficiency, and overall
acceptance.
Keywords: Software Product. Software Quality.
4. INTRODUÇÃO
A melhoria da qualidade de produto das empresas desenvolvedoras de softwares,
vem se tornando fator de maior importância.
Além da qualidade, esta deve contar com respaldo de entidades responsáveis, e
reconhecimento na área de atuação, devendo ser medida e reconhecida pela satisfação
do cliente.
As normas de qualidade proporcionam meios de avaliação dos produtos de
software, que podem ser utilizadas por desenvolvedores ou adquirentes de software, com
a função de mensurarem a qualidade de seus produtos.
QUALIDADE DE SOFTWARE
Qualidade, segundo a NBR ISO 1994, é a totalidade de características de uma
entidade que lhe confere a capacidade de satisfazer a necessidades explícitas e
implícitas.
Como capacidade explícita, entende-se os Requisitos Funcionais, que descrevem
as funcionalidades do sistema, ou o que o projeto permitirá ser obtido e suas
funcionalidades definidas.
Como capacidade implícita, estão os chamados Requisitos Não Funcionais, que
descrevem a qualidade do sistema. Os requisitos não funcionais, não estão detalhados
no projeto, mas se deseja que sejam alcançados, sejam em desempenho,
facilidades de uso, robustez, estética, itens de segurança, aspectos legais, operacionais
ou outros.
Software
Segundo Pressman (2006), Software é um elemento de sistema lógico, e não
físico, que Consiste de Instruções, estruturas de dados e documentação.
Processo de Software
São as atividades, métodos, ferramentas e práticas que são utilizadas na
construção de um produto de software.
Requisitos de um Produto de Software
Entende-se por requisitos, as necessidades dos usuários em relação a um
produto. São detalhes, objetivos ou restrições, que devem ser descobertos antes de se
começar a construção de um produto.
Os requisitos estão diretamente atrelados a qualidade de um produto.
Suprir as necessidades do cliente é etapa essencial para o produto de software
seja considerado satisfatório.
Os requisitos, que representam as necessidades claras dos clientes, cobrem a
maior parte das etapas a serem cumpridas em relação ao produto.
Qualidade de Software
De acordo com Pressman (2006), qualidade de software é a satisfação de
requisitos funcionais, que são os que descrevem as funcionalidades do sistema, e de
desempenho, que são os requisitos não funcionais, ambos declarados claramente,
seguindo normas de desenvolvimento, de maneira expressa quanto a documentação e,
alcançando as características não visíveis na definição do projeto, mas que mesmo assim
são desejadas como resultado.
5. Segundo Bartié (2002), qualidade de software engloba todo um processo
sistemático que focaliza todas as etapas e componentes produzidos com o objetivo de
garantir a conformidade de processos e produtos, prevenindo e eliminando defeitos.
Tendo já bem definidos os requisitos, com o gerenciamento dos processos e o
monitoramento da satisfação e aceitação do cliente pelo software em produção, pode-se
orientar os esforços que objetivam o alcance da qualidade.
A satisfação com o produto de software está diretamente ligada ao desempenho,
ausência de defeitos, erros ou falhas.
ISO - International Organization for Standardization,
Visando a qualidade, os desenvolvedores podem ter como base os conceitos e
diretrizes. que são reconhecidos mundialmente como normas, elaboradas, revisadas e
atualizadas por órgãos normatizadores de técnicas.
Segundo a NBR ISO (1994), qualidade de software é a totalidade de
características de uma entidade que lhe confere acapacidade de satisfazer a
necessidades explícitas e implícitas.
A ISO, International Organization for Standardization, tem por objetivo promover o
desenvolvimento de padronização, através de normas técnicas que estabelecem um
modelo de gestão da qualidade.
Conforme definição do INMETRO, ISO é uma organização que tem organismos de
normatização associados, em cerca de 160 países, e objetiva a criação de normas que
facilitem o comércio, promovendo boas práticas de gestão e o avanço tecnológico, além
da disseminação de conhecimentos.
As ISO/IEC 9126 e 14598, que fazem parte do conjunto de normas padrão ISO,
propõe características que o software deve apresentar, descrevem um modelo de
qualidade que pode ser aplicado, também possui um processo de avaliação, e conjunto
de métricas para avaliar a qualidade de um produto de software.
A NBR ISO/IEC 9126-1
A NBR ISO/IEC 9126-1, norma brasileira, tradução da norma ISO/IEC 9126-1,
contempla um modelo de qualidade com características e subcaracterísticas que um
produto de software pode adotar em seu desenvolvimento.
Avaliação da Qualidade do Produto de Software
É etapa primordial no processo de desenvolvimento de um produto de software a
avaliação da qualidade do produto.
Pode-se utilizar de técnicas e procedimentos operacionais, com a intenção de mensurar o
atendimento dos requisitos.
De acordo com Guerra (2009), durante o processo de desenvolvimento do produto
de software, a qualidade de software deve ser avaliada. Em seguida, o produto gerado
deverá passar por avaliação, e por fim o produto final em uso. Dessa forma, pode avalia-
se o processo, o produto de software e os efeitos do produto de software.
O modelo de avaliação da qualidade de software de McCall, em 1977, propôs um
conjunto de três fatores que avaliam o software de acordo com três pontos de vista:
I - Relacionado ao uso do produto, que são as características operacionais.
II - Relacionado a alteração do produto, que é a habilidade e os recursos
empenhados para que o software possa ser alterado.
III - Relacionado a transição do produto de software, considerando-se a
capacidade de adaptação em novos ambientes. portabilidade, reusabilidade,
interoperabilidade.
Em resumo, as três etapas tratam da: Operação, Revisão e Transição.
6. Quanto ao uso do produto, que são as características operacionais:
- Correção: é a medida na qual o software satisfaz as especificações e objetivos
visados pelo cliente.
- Confiabilidade: é a medida que se pode esperar que um programa ou rotina
execute sua função pretendida com o resultado exigido.
- Eficiência: É a quantidade de recursos físicos e de código exigida para que um
programa execute sua função, com total precisão, visando realizar a operação de forma
totalmente segura.
- Integridade: Medida na qual, controla-se o acesso ao software, segurança da
informação, bloqueando e limitando e racionalizando o acesso de pessoas conforme sua
autorização, para que não ocorram perdas e violações de dados ou de código.
- Usabilidade: Mede a facilidade para a utilização do software. Verifica o quanto de
esforço é necessário para aprender o funcionamento, fornecer a entrada dos dados e a
interpretação da saída de um programa ou processo.
Com relação a alteração do produto (Habilidade para ser alterado):
- Manutenibilidade: O esforço exigido para localizar e eliminar os erros em um
programa.
- Flexibilidade: O quanto de esforço é utilizado para realizar uma alteração no
software, isto é,
qual o grau de facilidade que o software, de forma rápida e eficaz, oferece para a sua
alteração.
- Testabilidade: São todos os recursos utilizados, no teste do software, isto é, o
quanto de esforço exigido e necessário para que se possa testar um programa a fim de
garantir que o mesmo execute a função pretendida.
Com relação a Transição do produto (Adaptabilidade a novos ambientes):
- Portabilidade: Mede a facilidade com que um produto pode ser movido para
outra plataforma, de hardware ou software.
- Reusabilidade: Medida na qual o software, ou parte dele, poder ser reusado em
outros softwares, em outras palavras,
o código fonte do software deve ser reaproveitável.
- Interoperabilidade: o quanto de esforço é necessário para o software ser capaz
de ser acoplado ao outro.
CONSIDERAÇÕES FINAIS
Tendo em vista a crescente popularização da utilização dos produtos de software,
grandes quantidades de software são cada vez mais disponibilizadas a um número
também crescente de pessoas, tornando-se para estas, parte de suas rotinas diárias
Sendo assim, a adoção de critérios de busca e avaliação da qualidade de
software, tornam-se cada vez mais imprescindíveis para os desenvolvedores.
Em contrapartida ao aumento da disponibilização de softwares, os usuários
também cobram, exigem e merecem utilizar softwares que possuam características que
atendam as suas necessidades.
7. METODOLOGIA
Esta pesquisa, é do tipo bibliográfica, por ser a metodologia que oferece meios
auxiliadores na exploração de novas área de conhecimento, permitindo também que um
tema seja analisado sob novo enfoque ou abordagem, produzindo novas conclusões.
Esta pesquisa, possui o objetivo de realizar um breve estudo sobre qualidade de
software.
REFERÊNCIAS
PRESSMAN, Roger S. Engenharia de Software. 6ª-ed. McGraw-Hill, 2006.
BARTIÉ, Alexandre. Garantia da Qualidade de Software:Adquirindo Maturidade
Organizacional. Campus, 2002
KOSCIANSKI, André; SOARES, Michel dos Santos. Qualidade de Software. 2ª-ed.
Novatec, 2007.
GUERRA, Ana Cervigni; COLOMBO, Regina Maria Thienne. Tecnologia da Informação:
Qualidade de Produto de Software. PBQP Software, Repositório Institucional do Centro
de Tecnologia da Informação Renato Archer, 2009.
INMETRO. Disponível em: http://www.inmetro.gov.br/qualidade. Acessado em: 20 maio
2013.
ABNT. Disponível em: http://www.abntcatalogo.com.br. Acessado em: 20 maio 2013.