BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Uma Introdução à Qualidade de Software

Uma Introdução à Qualidade de Software

Em dois artigos recentes, David Chappell, CEO da Chappell & Associates, descreve os diferentes aspectos de qualidade de software (funcionais, estruturais e de processo), os grupos de pessoas diretamente interessadas na qualidade (usuários, desenvolvedores e patrocinadores), e o resultado que os defeitos no software causam, sejam eles externos ou internos, ao longo do tempo.

No artigo Os Três Aspectos da Qualidade de Software: funcionais, estruturais e de processo (PDF), Chappell apresenta três aspectos da qualidade de um software: funcional, estrutural e de processo, onde cada um está relacionado de alguma forma aos três grupos de pessoas diretamente interessadas no produto final ou serviço: usuários, desenvolvedores e patrocinadores.

Qualidade funcional expressa o quão bem o software executa as tarefas solicitadas por seus usuários. Chappell distingue quatro atributos desse tipo de qualidade de software:

  • O software atende aos requisitos especificados
  • Possui poucos defeitos
  • Possui um desempenho razoável
  • É fácil de aprender e de usar

Qualidade estrutural mede o quão bem o software é organizado, sendo definida pelos seguintes atributos:

  • Testabilidade do código
  • Manutenibilidade - facilidade para realizar manutenção do código
  • Clareza - facilidade em se entender o código
  • Eficiência do código - gerencia os recursos (memória, conexões de rede) eficientemente ?
  • Segurança do código - é capaz de impedir as ameaças de segurança mais comuns?

Enquanto a qualidade funcional e a estrutural "recebem a fatia do leão nas discussões sobre qualidade de software", Chappell considera que a qualidade do processo também é muito importante, em que seus principais atributos são:

  • As datas de entrega são cumpridas?
  • Está dentro do orçamento ?
  • Há um processo de desenvolvimento de software replicável? Um que entregue software de qualidade de forma confiável e previsível?

Chappell acredita que os usuários estão mais interessados em qualidade funcional, e possuem algum interesse no atributo "datas de entrega" da qualidade do processo. Já os desenvolvedores se importam principalmente quanto a qualidade estrutural, porque este item possui um impacto direto no resultado do seu próprio trabalho, mas também estão interessados em qualidade funcional, só que não tanto quanto os usuários, e na qualidade do processo porque "fornece muitas das métricas com as quais o seu trabalho é medido". Já os patrocinadores de um projeto devem se preocupar com todos os aspectos de qualidade de um software, cientes de que cada aspecto tem um impacto importante sobre os resultados finais.

No artigo O Valor para o Negócio da Qualidade de Software (PDF), Chappell discute o impacto do software de baixa qualidade em um negócio. Ele distingue dois tipos de softwares: softwares visível externamente (aqueles utilizados pelos clientes de uma empresa) e softwares visível internamente (aqueles utilizados pelos próprios empregados de uma empresa).

Chappell lembrou dos danos que ocorreram em decorrência da falha de segurança na PlayStation Network da Sony, em abril de 2011, quando 70 milhões de contas foram comprometidas devido a exploração de uma vulnerabilidade de segurança já conhecida de um determinado banco de dados. Também citou uma falha no sistema de backup que afetou clientes da RIM no mundo inteiro durante três dias em outubro de 2011. Tais defeitos de qualidade tem o seguinte impacto nos negócios ao longo do tempo, de acordo com Chappell:

  • Perdas financeiras devido a vendas não concretizadas;
  • Perdas financeiras devido aos reparos necessários;
  • Perdas financeiras devido a perda de clientes;
  • Perdas financeiras devido a processos judiciais
  • Perda de valor da Marca.

Já a falta de qualidade em um software usado internamente pode conduzir aos resultados a seguir ao longo do tempo:

  • Adoção mais lenta pelo usuário;
  • Redução de benefícios para o negócio;
  • Maiores dificuldades para os líderes de TI;
  • Baixa moral do departamento de TI e baixa confiança das outras áreas neste departamento;
  • Maiores chances de se terceirizar o software.

Todos os três aspectos da qualidade precisam ser respeitados (funcional, estrutural e de processo) tanto para softwares visíveis internamente quanto para aos visíveis externanemte, para se alcançar um bom resultado.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT