Artigo do tipo Teórico
Recursos especiais neste artigo:
Conteúdo sobre boas práticas.
Em busca da Qualidade de Software
Este artigo aborda alguns dos principais fatores que influenciam a qualidade de software. Ele faz uma compilação de pontos importantes que nos remetem a refletir sobre como incrementar e assegurar que a qualidade seja a principal engrenagem que conduz o desenvolvimento de software.

Em que situação o tema útil
Este tema é útil para todos os profissionais direta ou indiretamente envolvidos no desenvolvimento de software e que querem uma visão sobre pontos importantes relativos à qualidade.

Software tem um papel extremamente importante na sociedade contemporânea. Se olharmos ao nosso redor, podemos citar incontáveis dispositivos que direta ou indiretamente afetam nossa vida e que dependem de software: carros, aparelhos eletrônicos, eletrodomésticos, etc. Nossa dependência por software desenfreadamente cresce de maneira sutil e imperceptível. Dependemos de software para realizar nosso trabalho, para o nosso lazer, para realizar compras, para nos manter informados, e a lista não para.

Tomemos como exemplo para essa crescente dependência os dispositivos móveis. Vivenciamos sua diária proliferação, cada vez mais acessíveis, sustentados pela necessidade de constantemente estarmos conectados. Eles nos fornecem a capacidade de gerenciarmos a nossa vida, e de nos divertirmos, na palma de nossa mão. E software para isso é o que não falta.

Em 2012, Google Play e Apple Store registraram aproximadamente 25 bilhões de downloads de aplicativos cada uma.

A quantidade de downloads realizados impressiona. Mas o que mais chama a atenção é a quantidade de aplicativos que cada um dos “mercados de aplicações” das duas gigantes possui. Números de janeiro de 2013 apontam que o Google Play conta com mais de 800.000 aplicativos, já a Apple Store oferece mais de 775.000 aplicativos para iPhone, iPad e iPod.

Este mar de aplicativos é suportado pelo crescimento constante do número de desenvolvedores, aliados ao fácil acesso a ferramentas poderosas e frameworks bem escritos que facilitam muito a criação de aplicações. Muitos destes são capazes de gerar conteúdo automaticamente, visando diminuir o time to market e aumentar a produtividade de quem desenvolve.

Quando olhamos para estes fatos sob o aspecto da evolução dos métodos e práticas de desenvolvimento de software, ficamos felizes em ver o quanto a engenharia de software tem evoluído de forma rápida. Porém, há um ponto muito importante que devemos observar e sempre levar em consideração. Um ponto subjetivo e que vem à tona quando vemos a quantidade de software sendo desenvolvido: qualidade. Quantos desses milhares de aplicativos são realmente confiáveis? Os resultados que eles nos apresentam e com os quais tomamos decisões refletem a realidade?

Qualidade não é obtida espontaneamente. Ela tem de ser construída. Assim, a qualidade do produto depende fortemente da qualidade de seu processo de desenvolvimento, das pessoas envolvidas – stakeholders, desenvolvedores, gestores – dos requisitos e de muitos outros fatores, não necessariamente tangíveis, mas que devem ser administrados constantemente para que se consiga atingir a qualidade esperada ao final do ciclo de desenvolvimento.

A definição de qualidade de software dada pela NBR 13596, em agosto de 1996, diz o seguinte: “A totalidade de características de um produto de software que lhe confere a capacidade de satisfazer necessidades explícitas e implícitas.” As necessidades explícitas são todas aquelas que surgem ainda no desenvolvimento, diagnosticadas pelos profissionais que trabalham no projeto, para atender as características solicitadas pelo cliente. As implícitas, como a classificação já impõe, são aquelas que passam tanto pelos desenvolvedores quanto pelos usuários (ou clientes), enquanto utilizam o produto desenvolvido.

...
Quer ler esse conteúdo completo? Tenha acesso completo