Sunteți pe pagina 1din 6

Universidade Tecnolgica Federal do Paran Campus Ponta Grossa Departamento Acadmico de Informtica Prof.

Danillo Leal Belmonte Engenharia de Software 2 ALUNO: RENAN RAMON RAMOS MENDES TEMA: Qualidade de software 1. DEFINIES: Primeiramente necessrio definir qualidade. Inicialmente, o conceito parece ser intuitivo, porm, realizando a definio atravs de uma perspectiva abrangente a conceituao torna-se complexa. Um pressuposto que ajuda na definio assumir obteno de objetivos, qual ser a melhor forma de atingi-los e quo satisfatrios sero os resultados. Assim, qualidade refere-se ao grau de satisfao no cumprimento de objetivos preestabelecidos. A definio posterior a qualidade de software. Segundo Pressman, qualidade de software uma gesto de qualidade efetiva aplicada de modo a criar um produto til que fornea valo mensurvel para aqueles que o produzem e para aqueles que o utilizam.(PRESSMAN, 2011). Partindo dessa definio, conclui-se que a qualidade de software um mecanismo aplicvel ao desenvolvimento que obtm o resultado adequado as expectativas do cliente e do desenvolvedor. 2. CARACTERSTICAS: David Garvin apresenta oito dimenses de qualidade, que podem ser aplicadas a qualidade de software: Qualidade do desempenho: referente ao ganho esperado pelo usurio, se o software garante que os recursos especificados cumprem com o que foi proposto. Qualidade dos recursos: diz respeito a satisfao e encantamento do usurio com os recursos apresentados. Confiabilidade: relaciona-se com o mbito total de garantia de execuo das tarefas sem a ocorrncia de falhas ou erros. Conformidade: refere-se a obedincia aos padres estabelecidos, tanto internos quanto externos. Durabilidade: capacidade do software resistir a mudanas e correes sem provocar efeitos colaterais no desejados. Manutenibilidade: facilidade de manuteno do software, se ela feita de forma rpida e compatvel com a complexidade da manuteno. Esttica: caracterstica at certo ponto subjetiva, mais todos os usurios esperam encontrar uma aplicao elegante e que apresente fluncia no desenvolver das atividades.

Percepo: relacionada ao sentido de perceber a real qualidade de um produto. Ela no pode ser influenciada pela m ou boa reputao da empresa que desenvolveu o software. McCall desenvolveu uma categorizao de fatores que influenciam a qualidade do software. So eles: correo confiabilidade, usabilidade, integridade, eficincia, manuteno, flexibilidade, testabilidade, portabilidade, reutilizao, interoperabilidade. Esses fatores esto relacionados a trs aspectos fundamentais de um produto de software, que so as caractersticas operacionais, o suporte a mudanas e a adaptabilidade aos diversos ambientes.

Ilustrao 1: (Fonte:http://www.testexpert.com.br/?q=node/669)

Existe um grande dilema relacionado a qualidade de software: entre produzir um software praticamente perfeito, gastando muito tempo e dinheiro na sua construo ou desenvolver um sistema que tenha pssima qualidade, mas que ningum adquirir. A soluo encontrada para esse dilema desenvolver um software que seja aceitvel e suficientemente bom, onde os gastos fiquem dentro dos planos e a qualidade seja lapidada com as manutenes e verses posteriores. Para se alcanar a qualidade de software desejada, existem quatro atividades que devem sem muito bem desempenhadas e desenvolvidas, garantindo alto padro qualitativo. A seguir, as atividades: - Mtodos de engenharia de software: em qualquer trabalho que est sendo desenvolvido, deve-se primeiramente entender o problema proposto e criar um projeto que efetivamente resolva o problema. Existem mtodos adequados para esse entendimento e que fornecem uma base slida para a construo do projeto da melhor forma possvel. - Tcnicas de gerenciamento de software: a qualidade de software dependente do gerenciamento do projeto. Quando cada tarefa de projeto iniciada, um lder de projeto tomar decises que podem ter um impacto significativo sobre a qualidade do produto. (PRESSMAN, 2011). - Controle de qualidade: O controle de qualidade engloba um conjunto de aes de

engenharia de software que ajudam a garantir que cada produto resultante atinja suas metas de qualidade. (PRESSMAN, 2011). a forma de identificar possveis erros de desenvolvimento que afetariam a qualidade esperada do software. - Garantia da qualidade: ela a responsvel por definir uma infraestrutura que seja possvel garantir o sucesso de todas as outras atividades. (...) a garantia da qualidade consiste em um conjunto de funes de auditoria e de relatrios que possibilita uma avaliao da efetividade e da completude das aes de controle de qualidade. (PRESMANN, 2011). 3. NORMAS: Para a identificao dos atributos fundamentais da qualidade de software, foi criado o padro ISO 9126. So definidos seis atributos essenciais para a qualidade: - Funcionalidade: o quanto a aplicao capaz de satisfazer as necessidades impostas pela adequabilidade, exatido, interoperabilidade, conformidade e segurana. - Confiabilidade: garantia de disponibilidade do software conforme a maturidade, tolerncia a falhas, facilidade de recuperao. - Usabilidade: refere-se a facilidade de uso definidos pela facilidade de compreenso, aprendizagem e operao. - Eficincia: o quanto o software capaz de otimizar o uso dos recursos do sistema indicados pelo comportamento em relao ao tempo e em relao aos recursos. - Facilidade de manuteno: o quo fcil realizar correes no software, conforme a facilidade de anlise, facilidade de realizao de mudanas, estabilidade e testabilidade. - Portabilidade: o grau de facilidade com que um software transportado de uma plataforma a outra conforme a adaptabilidade, facilidade de instalao, conformidade e facilidade de substituio. 4. MEDIES E MTRICAS: Em qualquer processo de engenharia preciso medir. Porm, na engenharia de software, diferentemente de outras engenharias, as formas mensurveis no esto definidas na fsica, como massa, tenso, temperatura. Esse fato acaba gerando muita discusso. Mas, o incontestvel que deve-se medir quantitativamente o software, buscando a compreenso do processo de desenvolvimento. importante estabelecer uma estrutura de medio de produto. Atravs desta estrutura possvel definir o conceito de mtrica de produto para software. Primeiramente, essencial diferenciar medida, medio, mtrica e indicador. Medida, no mbito da engenharia de software, pode ser definida como um meio de proporcionar a visualizao da quantidade de algum atributo pertencente ao produto. A ao de determinar uma medida denominada medio. Mtrica est associada ao grau de um determinado sistema possuir um atributo estabelecido. Quando ocorre uma combinao de mtricas capazes de proporcionar informaes sobre o processo de software, caracterizado um indicador. Assim como na qualidade de software, existe um grande desafio em medies quantitativas. Durante dcadas, desenvolvedores e pesquisadores tentaram encontrar uma mtrica que seja de fcil entendimento, porm, sem sucesso. Cada atributo representa um ponto de vista qualitativo de um produto, e mensurar esse ponto de vista parte de uma subjetividade, visto que ele pode ser primordial ou desprezvel para determinada aplicao.

Esse grande problema distancia a teoria inicial da medio. Todavia, especialistas afirmam que se a medio de um produto for realizada nos primeiros estgios do desenvolvimento, o projeto ter uma base consistente para a avaliao qualitativa. Para execuo da medio existem alguns princpios bsicos: Formulao (construo de mtricas e medidas adequadas), Coleo (mtodo de reunio dos dados necessrios para as mtricas), Anlise (computao e uso de recursos matemticos), Interpretao (avaliao), Feedback (resposta da interpretao obtida atravs da medio). Alguns especialistas tambm definem alguns atributos eficazes para a mtrica de software. As mtricas e as medies devem ser: - Simples e computveis: fceis e aprendizado simplificado. - Empiricamente e intuitivamente persuasivas: deve corresponder as expectativas esperadas pelo engenheiro. - Consistentes e objetivas: resultados corretos, sem possibilitar ambiguidade. - Consistentes no seu uso das unidades e dimenses: devem obter resultados que tenham coerncia, sem combinar variveis totalmente diferentes. - Independentes da linguagem de programao: devem ser baseadas na estrutura do programa e modelos de requisitos e projeto. - Mecanismo efetivo para feedback de alta qualidade: devem fornecer informaes que levem a uma melhora efetiva da aplicao final. Mtricas para o modelo de requisitos desejvel obter mtricas para o modelo de requisitos, pois nessa fase que os requisitos so especificados e toda base para o projeto montada. A mtrica de pontos por funo um excelente mecanismo para medir a funcionalidade que um sistema proporcionar. Ela capaz de (...) estimar o custo ou trabalho necessrio para projetar, codificar e testar o software; prever o nmero de erros que sero encontrados durante o teste; e prever o nmero de componentes e/ou nmero de linhas de cdigo-fonte no sistema implementado.(PRESSMAN, 2011). So definidos valores de domnio com objetivo de mensurar o software: Entrada Externa (EE): Nmero de entradas de outras aplicaes. Sada Externa (SE): Nmero de sadas que sero fornecidas ao usurio. Consulta Externa (CE): Nmero de entrada on-line que resultam resposta imediata da aplicao. Arquivos Lgicos Internos (ALI): Nmero de agrupamentos de arquivos de dados que residem dentro da fronteira da aplicao. Arquivos de Interface Externos (AIE): Nmero de agrupamentos de arquivos de dados que esto fora da aplicao. Com esses dados coletados, eles so lanados numa tabela objetivando um valor final para cada atividade. No final so quantificados os fatores de ajuste. Eles so os requisitos nofuncionais do software. So obtidos atravs de questes referentes as funcionalidades da aplicao. Mtricas para o modelo de projeto As mtricas de projeto so fundamentais para o desenvolvimento de um software ou de qualquer outro produto que esteja sendo desenvolvido. Ela um indicador de como ocorrer a evoluo do projeto. As mtricas para o projeto de arquitetura se preocupa com a estrutura da arquitetura e o quo eficientes so os componentes internos a ela. Card e Glass definem trs medidas de complexidade de projeto de software: complexidade estrutural, complexidade de dados e complexidade de sistema.

(PRESMANN, 2011). A complexidade estrutural definida atravs da elevao ao quadrado dos mdulos subordinados ao mdulo em questo (Ce = (Msub)). A complexidade de dados depende da razo entre, as variveis de entrada e sada do mdulo, e os mdulos subordinados mais um (Cd = var/(Msub + 1)). Para obter a complexidade de sistema feita a soma da complexidade estrutural e a complexidade de dados (Cs = Ce + Cd). Existem muitas outras formas de se obter mtricas para o projeto. Mtricas de projeto para WebApps As aplicaes web esto amplamente presentes no cotidiano das pessoas. Atualmente so desenvolvidos milhares de softwares e de fundamental importncia estabelecer mtricas para fornecer dados quantitativos sobre eles. As mtricas que podem ser adotas so as seguintes: - Mtricas de interface: esto relacionadas a interao do usurio com a aplicao; complexidade de layout, quanto tempo o usurio leva para realizar a atividade desejada, a aplicao exige muitos cliques e digitaes, nmero mdio de palavras por pgina. - Mtricas de esttica: tem relao com a quantidade total de palavras na pgina, total de links, tamanho da pgina e da fonte das palavras, contagem de figuras e cores utilizadas. - Mtricas de contedo: essa mtrica responsvel pela contabilizao do tempo mdio de carregamento da pgina, nmero de vdeo, udio e animaes presentes nas pginas. - Mtricas de navegao: mtrica que trata do fluxo de navegao, mensurando o nmero de links por pgina, internos e externos, a densidade de conectividade. Mtricas para Cdigo-fonte A teoria de Halstead da cincia do software props as primeiras leis analticas para programas de computador.(PRESSMAN, 2011) As medidas desenvolvidas por Halstead so as seguintes: n1 = nmeros de operadores distintos que aparecem no programa; n2 = nmero de operandos distintos que aparecem no software; N1 = nmero total de determinado operador; N2 = nmero total de determinado operando. Para se estimar o tamanho global do programa realizado o seguinte calculo: N = n1 log n1 + n2 log n2. Para ser definido o volume do programa utilizada a seguinte frmula: V = N log (n1+n2). Como V varia conforme a linguagem de programao utilizada, definida uma razo de volume L, que indica a razo entre o volume do programa na verso mais compacta e o volume real: L = (2/n1) * (n2/N2) Mtricas para teste possvel realizar uma adaptao as mtricas obtidas por Halstead para aplic-las a testes. Utiliza-se a definio do volume V e nvel PL, calculando o trabalho e: PL = 1/(n1/2)*(N2/n2) e = V/PL; A porcentagem de trabalho de teste pode ser obtida atravs da relao abaixo: Porcentagem de trabalho de teste = e/ e. Mtricas para manuteno Todas as mtricas aplicadas em outros estgios do desenvolvimento do software, podem ser aplicadas para sua manuteno. Contudo, foram criadas mtricas especficas para a manutenibilidade da aplicao. A IEEE define uma norma para a indicar a estabilidade de um produto, atravs do ndice de maturidade de software: SMI = (Mt (Fa + Fc + Fd ))/Mt, onde:

Mt = nmero de mdulos na verso atual; Fc = nmero de mdulos na verso atual que foram alterados; Fa = nmero de mdulos na verso atual que foram acrescentados; Fd = nmero de mdulos na verso anterior que foram excludos. Ao passo que o ndice de maturidade de software se aproxime de 1.0, a aplicao comea a ser considerada estvel. 5. OUTROS: Custos qualidade de software Para ser assegurada a garantia de qualidade de um produto demandado muito tempo e dinheiro. Porm a falta de qualidade tambm tem seu preo. Os usurios tero que conviver com uma aplicao que apresenta diversos erros e a empresa que o desenvolveu ter que realizar manutenes constantes. Nesse contexto definido o custo da qualidade. Ela caracterizada por todos os custos inerentes pela busca de qualidade e execuo de atividades relacionadas a qualidade, e tambm pelos custos ocasionados pela falta de qualidade. Os custos de qualidade podem ser divididos em custos referentes preveno, avaliao e falhas: - Custos de preveno: so aqueles associados a gastos com atividades de gerenciamento necessrias para o planejamento e coordenao das atividades que garantem a qualidade. Tambm esto inclusos os custos de planejamento e testes, treinamento para as atividades relacionadas, e atividades tcnicas adicionais para o desenvolvimento de modelos de requisitos e projetos. - Custos de avaliao: esto inclusas atividades de entendimento aprofundado do produto a ser projetado. Custos de revises tcnicas, coleta de dados, testes e depurao esto includos nos gastos com a avaliao - Custos de falhas: so os custo que so necessrios quando a aplicao no apresenta boa qualidade, ou seja, seriam descartados caso no surgisse nenhum problema antes ou aps a entrega ao cliente. Quando o problema detectado antes da entrega esse custo interno; quando a falha aparece aps a sua entrega, o custo externo. Ferramentas para mtricas de produto Existem ferramentas para auxiliar a contabilizao de mtricas, ajudando engenheiros e desenvolvedores de software a avaliar de forma mais precisa o desenvolvimento de uma aplicao. As ferramentas analisam uma representao do software e apresentam como resultado o desenvolvimento de mtricas avaliativas. 6. REFERNCIAS: PRESSMAN, Roger S. Engenharia de software: uma abordagem profissional. 7. ed. Porto Alegre, RS: AMGH, 2011. 780 p. ISBN 9788563308337.

S-ar putea să vă placă și