A demanda por qualidade de software tem motivado a comunidade de software para o desenvolvimento de modelos para a qualidade. Um software de qualidade � f�cil de usar, funciona corretamente, � de f�cil manuten��o e mant�m a integridade dos dados para evitar poss�veis falhas, fora ou n�o, do seu controle. Para o desespero de seus usu�rios as falhas se apresentam sem avisos pr�vios, gerando um impacto econ�mico e social muitas vezes irremedi�vel. Show
Os custos resultantes de defeitos ou erros provocados por falha de softwares, tanto para as empresas de softwares como para usu�rios, poderiam ser catastr�ficos, bancos poderiam perder milh�es de d�lares e clientes veriam seus dinheiros sumirem. Em 1991 aconteceu uma pane no sistema telef�nico da Calif�rnia e de toda a costa, motivo? A modifica��o de apenas tr�s das milh�es de linhas de c�digo introduziu um bug. Este � um exemplo que demonstra de quanto dependemos das maquinas e de seus softwares. A tecnologia da Informa��o e comunica��o transversa lizam cada vez mais todos os n�veis das atividades humanas, tornando assim a import�ncia da qualidade de software. A qualidade � hoje o grande motivador em todas as �reas de atividade humana, todos querem oferecer e receber produtos e servi�os com qualidades. Um software de qualidade oferece seguran�a de pessoas, disponibiliza servi�os essenciais (home banking, telefonia, etc), gera competitividade das empresas, etc. A qualidade de um software deve estar em conformidade com especifica��es e padr�es de desenvolvimento, h� necessidades expl�citas e objetivos propostos por aquelas pessoas que produzem software, garantindo que, tanto o produto do software quanto um bom processo de desenvolvimento, atinjam n�veis de qualidade mantendo sempre as necessidades dos usu�rios. O que � qualidade?Segundo Herman G. Weinberg �A qualidade � relativa. O que � qualidade para uma pessoa pode ser falta de qualidade para outra. A defini��o de qualidade pode parecer simples e at� trivial. Contudo se observada mais detalhadamente pode se perceber sua complexidade. Um dos principais desafios enfrentados pelos profissionais de qualidade e teste de software est� em definir o que � qualidade no contexto do produto atual. Analisando ent�o as vari�veis dispon�veis para o caso em concreto, tais como: or�amento, tempo e prazo. Visando estabelecer uma vis�o comum entre todos os membros da equipe e seus usu�rios � necess�rio que sejam vencidas as dificuldades de comunica��o entre os transmissores e os receptores da mensagem. O que � qualidade de software?Para ajudar nessa quest�o, a International Organization Standardization - ISO e a International Electrotechnical Comission-IEC, que s�o organismos normalizadores com import�ncia internacional reconhecida no setor de software, se uniram para editar normas internacionais conjuntas. A norma internacional ISO/IEC, define qualidade de software como A totalidade de caracter�sticas de um produto de software que lhe confere a capacidade de satisfazer necessidades expl�citas e impl�citas. Necessidades expl�citas s�o aquelas definidas no requisito proposto. Esses requisitos devem definir as condi��es em que o produto deve ser utilizado e dizer seus objetivos, fun��es e desempenho esperado. S�o, portanto, fatores relativos � qualidade do processo do desenvolvimento do produto que s�o percebidos somente pelas pessoas que trabalharam no seu desenvolvimento. Necessidades impl�citas s�o aquelas que, embora n�o expressas no documento do produtor, s�o necess�rias para o usu�rio. Est�o englobados em esta classe os requisitos que n�o precisam ser declarados por serem �bvios, mas que pela gravidade de suas consequ�ncias devem ser levados em considera��o (ex: mesmo em condi��es n�o previstas de erro ou m� opera��o, um sistema de administra��o hospitalar n�o pode provocar a morte de pacientes). Retenha talentos e aumente a produtividade dos seus programadoresSaiba mais DevMedia Plataforma empresarialAs necessidades impl�citas tamb�m s�o chamadas de qualidade em uso e devem permitir aos usu�rios atingir metas com efetividade, produtividade, seguran�a e satisfa��o em seu uso di�rio. Sobre a ISO e IEC: a International Organization Standardization - ISO � uma organiza��o n�o-governamental, estabelecida em 1947, e que coordena o trabalho de �rg�os de 127 pa�ses membros para promover a padroniza��o de normas t�cnicas em �mbito mundial. A IEC, fundada em 1906, conta com a participa��o de mais de 50 pa�ses e publica normas internacionais relacionadas com eletricidade, eletr�nica e �reas relacionadas. QualidadeEst� claro que produzir software de qualidade � uma meta essencial e b�sica da Engenharia de Software, que oferece m�todos, t�cnicas e ferramentas. O necess�rio mesmo � que o software seja confi�vel, eficaz e siga os padr�es exigidos pelo contexto. Freeman �[Freeman 87] apresenta uma distin��o entre qualidade b�sica e qualidade extra. Em qualidade b�sica ele lista: funcionalidade, confiabilidade, facilidade de uso, economia e seguran�a de uso. Em qualidade extra ele lista: flexibilidade facilidade de reparo, adaptabilidade, facilidade de entendimento, boa documenta��o e facilidade de adicionar melhorias. Essas prioridades v�o depender muito de cada caso e do custo de cada uma dessas qualidades. A sociedade pressiona o setor de software para que a caracter�stica qualidade seja preponderante. Qualidade e RequisitosSegundo Crosby [1992] �A qualidade � a conformidade aos requisitos�. Esta defini��o nos � bastante interessante, pois evidencia qual o caminho a seguir para julgar a qualidade de um software. Partindo deste pressuposto � necess�rio considerar tr�s fatores para a correta verifica��o da conformidade aos requisitos proposta por Crosby. Defini��o de ConformidadePara a correta verifica��o da qualidade torna-se necess�rio uma pr�via defini��o das margens de precis�o dos resultados esperados. Tornando poss�vel a medi��o em graus de qualidade do produto final. Metodologia de Observa��o dos Resultados� necess�rio ter em mente que a medida observada pode conter margens de erros. Existem diversos fatores que podem corromper os dados utilizados na observa��o. Conciliar os interesses dos diversos StakeholdersA qualidade est� intimamente ligada aos requisitos e estes requisitos s�o definidos por algu�m, logo a qualidade depende das escolhas que este algu�m fez. Muitos desenvolvedores de software devem conciliar, resolver ou minimizar os problemas organizacionais do cliente que contratou o desenvolvimento do produto. Requisitos de softwareOs requisitos do software s�o as descri��es sobre o comportamento, as funcionalidades e especifica��es do software. Todos os requisitos do software devem ser registrados no documento de requisitos que deve ser conciso e consistente para fornecer informa��es claras ao leitor. Para a correta especifica��o de requisitos � necess�rio que os mesmos sejam precisos, completos, consistentes e tenham controle de rastreabilidade e Modificabilidade. Seguindo a divis�o tradicional os requisitos podem ser classificados em requisitos funcionais e n�o-Funcionais. Guia Completo: Levantamento de Requisitos Qualidade de software na vis�o do usu�rioOs desenvolvedores de software n�o podem menosprezar o papel do usu�rio/cliente, n�o podendo se esquecer das necessidades impl�citas do uso. Cada cliente pode ter desejos e necessidades diferentes em rela��o ao mesmo tipo de produto. A pergunta � qual o interesse dos usu�rios de software? Os usu�rios est�o mais interessados no uso do software, na sua funcionalidade, no desempenho e nos efeitos que o uso possa produzir na sua empresa, organiza��o, etc. O cliente valoriza que o software responda �s suas necessidades. A qualidade interna tem que responder �s quest�es externas que o cliente venha a questionar. Por exemplo:
� importante considerar que o cliente � quem est� � frente. Ele tem poder de participa��o no processo externo do seu produto. Hoje o mercado � mais competitivo, aumentando a oferta de produtos, e o cliente est� mais consciente do seu poder. Esta mudan�a no mercado, maior globaliza��o, leva a exigir melhor qualidade de produtos e processos para atender a esse novo cliente. Qualidade de processo e produto: � poss�vel medir a qualidade de software?O controle de qualidade surge ent�o como uma necessidade: inicialmente s�o feitas verifica��es, logo em seguida adotam-se t�cnicas e crit�rios bem definidos, em alguns casos chega-se a verifica��o de 100% dos produtos para elimina��o daqueles produzidos com defeitos; certifica-se a qualidade do produto com um custo bem alto. Como alternativa busca-se melhorar o processo de produ��o para se adquirir maior confian�a na qualidade do produto final. A engenharia de software tem como objetivo a melhoria da qualidade do seu produto com propostas e modelos de desenvolvimento, m�todos e t�cnicas para aplica��o nas diversas fases de desenvolvimento. � importante a avalia��o da qualidade de software nas duas vis�es, processo e produto, � aqui que se direciona o esfor�o. O principal problema com que se defronta a engenharia de software � a dificuldade de se medir a qualidade. H� de se considerar que o software n�o se desgasta, por tanto, tal m�todo de medi��o de qualidade n�o pode ser aproveitado. A ISO/IEC fornece um modelo de prop�sito geral (Tabela 1) o qual define seis amplas categorias de caracter�sticas de qualidade de software que s�o subdivididas em sub caracter�sticas. O modelo proposto pela ISO/IEC 9126(NBR13596) tem como objetivo servir de refer�ncia b�sica na avalia��o de produto de software.
Tabela 1. Modelo proposto pela ISO/IEC 9126(NBR13596) Considera��es pr�ticas para garantir a Qualidade do ProdutoPara se garantir a qualidade de um produto durante seu desenvolvimento existe um conjunto de m�todos e t�cnicas que devem ser implementadas durante todo o processo. Nesta se��o, consta uma breve defini��o de algumas dessas atividades. Identifica��o de DefeitosConhecer os conceitos de erro, defeito e falha � o requisito b�sico para se construir um processo de garantia de qualidade. � preciso saber identificar o problema, antes de investigar sua proveni�ncia e, desta forma, saber corrigi-lo.
Quanto antes a presen�a do defeito for revelada, menor o custo de corre��o do defeito e maior a probabilidade de corrigi-lo corretamente. A solu��o � introduzir atividades de VV&T ao longo de todo o ciclo de desenvolvimento.
Tabela 2. Tipos de Defeitos Valida��o, Verifica��o e Testes (VV&T)As atividades de VV&T atuam na garantia de qualidade, assegurando que o software cumpra as especifica��es definidas e atenda �s necessidades de seus usu�rios. Defini��es:
Os principais m�todos de Valida��o e Verifica��o s�o:
Revis�es de SoftwareS�o processos ou atividades para leitura de um artefato de software visando assegurar que ele cumpre sua especifica��o e atende �s necessidades de seus usu�rios. Tem por objetivo realizar valida��o e verifica��o est�tica de artefatos de software. Pode ser aplicada a qualquer artefato produzido ao longo do processo de desenvolvimento de software. Tipos de Revis�es
Testes de SoftwareProcesso de executar um programa ou sistema com o objetivo de revelar a presen�a de erros; ou, falhando nesse objetivo, aumentar a confian�a sobre o programa. Envolve todo um processo de planejamento, fases de teste, etc., que necessitaria de um outro artigo para aprofundar este assunto. Conclus�oOs desenvolvedores fazem os softwares, mas os clientes s�o os que v�o us�-los. Por isso, h� a necessidade urgente de sistematizar formas de evitar os custos elevados consequente dos defeitos dos softwares e dos erros n�o intencionais dos usu�rios. Isto s� ser� poss�vel se forem priorizadas algumas caracter�sticas de qualidade de software: usabilidade, confiabilidade, funcionalidade e manutenibilidade. Sendo esses, os requisitos essenciais do produto de software exigidos pelos compradores e atendidos pelos vendedores. Assim veremos resultados positivos tendo softwares de qualidade e mais �teis. No Brasil ainda existem empresas de software que n�o utilizam t�cnicas para melhorar a qualidade de seus produtos, por isso aquelas empresas que desenvolvem software de qualidade s�o mais competitivas, o que favorece a abertura de mercados externos para os softwares brasileiros e beneficiando o mercado interno que acabar� por exigir software melhores e a menor pre�o. N�o resta a menor d�vida que ainda restam muitos esfor�os em melhoria da qualidade de software. Por isso, � fundamental ter seu foco n�o apenas no produto (fazer software melhor), mais principalmente no processo (fazer melhor o software) e no cliente (fazer software mais f�cil de usar). Saiu na DevMedia!
Bibliografia
Saiba mais sobre Engenharia de Software ;)
Confira outros conte�dos:Plano PRO
Por Devmedia Em 2008 O que fazer quando um sistema não cumpre as funções necessárias?Quando um sistema não cumpre com as suas funções necessárias é preciso avaliar o porquê disso, fazendo então as avaliações necessárias para tal, reavaliando as etapas anteriores, e colocando em prática as adaptações das alterações, caso não atenda realmente o objetivo deve procurar um outro que atenda todos os ...
Quais são os 5 componentes de um sistema de informação?Um sistema de informação é composto por cinco componentes, que são: recursos de software, recursos de hardware, recursos de rede, recursos de dados e recursos humanos.
Quais são os três componentes básicos dos sistemas de informação?Um sistema possui três componentes ou funções básicos em interação: Entrada - envolve a captação e reunião de elementos que entram no sistema; • Processamento - processos de transformação que convertem insumo (entrada) em produto; • Saída - transferência de elementos produzidos na transformação até seu destino final.
O que significa a etapa saída nos sistemas de informações?A saída envolve a etapa na qual a informação propriamente dita é emitida, é a etapa que realmente interessa ao usuário do sistema. A realimentação (feedback) é uma saída usada para fazer ajustes ou modificações nas atividades de entrada ou no processamento.
|