You are on page 1of 25

Proyecto de Ingeniera Web

Ttulo

Procesos de las Aplicaciones Web

Informe sobre la Calidad de las Aplicaciones Web

Alumno: Enrique J. Abril Prez Profesores: Francisco Jos Garca Pealvo Mara N. Moreno Garca

Calidad de las Aplicaciones Web

Proyecto de Ingeniera Web INDICE


1. OBJETIVOS ..................................................................................................................................... 3 2. INTRODUCCIN ............................................................................................................................ 4 3. CONCEPTOS PREVIOS................................................................................................................. 6 I. QU SE ENTIENDE POR CALIDAD?.............................................................................................. 6

II. POR QU CALIDAD?................................................................................................................... 7 III. TIPOS DE CALIDAD ......................................................................................................................... 8 IV. QU ES UNA APLICACIN WEB? ................................................................................................... 8 4. CALIDAD DEL SOFTWARE....................................................................................................... 13 I. QU ES LA CALIDAD DEL SOFTWARE? ......................................................................................... 13

II. CARACTERSTICAS DE LA CALIDAD DEL SOFTWARE ...................................................................... 14 III. NORMAS ISO / IEC 9216 ............................................................................................................. 16 IV. UTILIDAD DE LAS NORMAS ISO / IEC 9216 .................................................................................. 18 V. MEDICIN DEL SOFTWARE ............................................................................................................ 18 MTRICAS DE CALIDAD ................................................................................................................ 19 5. MODELOS DE CALIDAD............................................................................................................ 20 6. CONTEXTO ................................................................................................................................... 22 EVOLUCIN DE LA MEJORA DE LA CALIDAD.................................................................................. 22 7. CONCLUSIONES .......................................................................................................................... 23 8. BIBLIOGRAFIA ............................................................................................................................ 25

Calidad de las Aplicaciones Web

Proyecto de Ingeniera Web


1. OBJETIVOS o Profundizar en el mbito de la calidad del software, haciendo un especial nfasis en la calidad de las aplicaciones Web o Transmitir la importancia de este rea en el desarrollo de las aplicaciones software basadas en Web y en su evolucin a lo largo del tiempo (mantenimiento) o Consolidar y ampliar los conocimientos adquiridos durante la formacin terica o Proponer unas pautas que debera de seguir todo desarrollo de aplicaciones Web para alcanzar productos finales de alta calidad o Estudiar los estndares y marcos de calidad existentes para la medicin y evaluacin de la calidad del proceso, de los productos (intermedios o finales), de la calidad en uso, as como otras propuestas para la estimacin de proyectos Web. o Proporcionar al pblico objetivo una visin integral de las distintas perspectivas en la calidad de un sistema de informacin Web

Calidad de las Aplicaciones Web

Proyecto de Ingeniera Web


2. INTRODUCCIN La principal motivacin que me ha llevado a decidirme por este proyecto ha sido el poder investigar y ampliar mis conocimientos en el rea de la calidad del software, concretamente en el mbito de las aplicaciones Web. Resear que todos los temas relacionados con la calidad adquieren cada da mayor importancia en los mbitos econmicos y organizativos, y de modo particular en los Sistemas de Informacin Web. Los continuos avances impuestos por las tecnologas han propiciado la evolucin de los sitios Web, inicialmente utilizados como repositorio de informacin, a aplicaciones cada vez ms complejas en trminos de estructura, funcionalidad e interfaz. El alcance y la complejidad de estas aplicaciones varan extensamente y pueden ser desde servicios de escala reducida hasta aplicaciones empresariales en larga escala distribuidas en la Internet. En la actualidad, la comunidad de Ingeniera del Software reconoce que las aplicaciones Web poseen caractersticas que las diferencian de los sistemas tradicionales. Estas caractersticas se deben al tamao y complejidad de las aplicaciones, el carcter multidisciplinar del equipo de desarrollo, la tasa apresurada de entrega del proyecto, etc. stas caractersticas hacen con que los procesos, modelos y mtricas existentes para evaluar la calidad tengan que ser adaptados para considerar los cambios impuestos por las nuevas tecnologas. Como medida preventiva, el proceso de produccin de sistemas de informacin Web debe ser gestionado de una manera rigurosa y cuantitativa. La utilizacin de principios de medicin para evaluar el desarrollo Web proporciona una retroalimentacin que ayudar a entender, controlar, predecir, y mejorar estos productos y su proceso de desarrollo. Como en cualquier proyecto software, tener estimaciones realistas del coste y esfuerzo requerido en etapas tempranas del ciclo de vida de las aplicaciones Web propician a los directores de proyecto y organizaciones el manejo eficiente de sus recursos. Entre los aspectos fundamentales de la calidad de las aplicaciones Web destacamos: la medicin y evaluacin del producto software el control del proceso de desarrollo A continuacin mostraremos los estndares y modelos de evaluacin y mejora de los procesos software que estn relacionados con la calidad, en cualquiera de los trminos analizados. ISO 9001:2000. Modelo para conseguir la calidad total en el diseo, desarrollo, produccin, instalacin y servicio post-venta. ISO 9000-3:1991. Gua para la aplicacin de la norma ISO 9001 al desarrollo, suministro y mantenimiento de software.

Calidad de las Aplicaciones Web

Proyecto de Ingeniera Web


En todo caso, si nos certificramos segn la ISO 9000-3, implicara que no aade ni cambia los requerimientos de la ISO 90001, sino que los amplia y aclara. Otras normas aplicables: ISO 9004-1:2000. Gestin de la calidad y elementos del sistema de calidad (Gua para establecer el QA). ISO 8402:1995. Gestin de la calidad y garanta de la calidad. Vocabulario. ISO 12207:1995. Procesos del ciclo de vida del software. ISO/IEC 9126:1991/2001. Caractersticas de la calidad de un producto software. ISO/IEC 12119:1995. Productos software: evaluacin y test. ISO/IEC 14102:1995. Gua para la evaluacin y seleccin de herramientas CASE.

De todos estos estndares y modelos analizaremos con especial atencin las normas ISO/EIC 9126. Dichas normas nos permitirn conocer con mayor profundidad qu caractersticas debe cumplir todo producto software para que sea de alta calidad.

El informe lo hemos estructurado atendiendo a: o definicin de conceptos previos o calidad del software (definicin, caractersticas, medicin,) o modelos de calidad existentes o contexto sobre el que nos encontramos o conclusiones obtenidas tras el estudio

Calidad de las Aplicaciones Web

Proyecto de Ingeniera Web


3. CONCEPTOS PREVIOS Con objeto de estudiar la calidad del software se hace necesario definir este atributo. Podremos encontrarnos que una gran variedad de definiciones cuyo origen es muy variado y diverso (instituciones, organizaciones, estudiosos, etc.). A continuacin vamos a intentar responder a las siguientes cuestiones: Qu se entiende por calidad? Por qu calidad? Tipos de calidad Qu es una aplicacin Web? I. Qu se entiende por Calidad? Definicin del concepto calidad segn: 1) RAE (Real Academia Espaola) Diccionario lengua espaola Calidad (del lat. Qualitas, -atis y este calco del griego poiothz) .f.
Propiedad o conjunto de propiedades inherentes a algo, que permiten juzgar su valor. Buena calidad, superioridad o excelencia. Carcter, genio, ndole. Condicin o requisito que se pone en un contrato. Estado de una persona, naturaleza, edad y dems circunstancias y condiciones que se requieren para un cargo o dignidad. Nobleza del linaje. Importancia o gravedad de algo. PL. Prendas personales Condiciones que se ponen en algunos juegos de naipes.

De calidad Dicho de una persona o de una cosa: Que goza de estimacin general. 2) Diccionario de uso del Espaol Calidad, en sentido amplio, equivale a "cualidad". Como se puede observar las acepciones del trmino son muy variopintas, 3) Wikipedia La palabra calidad tiene mltiples significados: De un producto o servicio es la percepcin que el cliente tiene del mismo. Conjunto de propiedades inherentes a un objeto que permiten apreciarlo como igual, mejor o peor que el resto de objetos de los de su especie. Conjunto de cualidades que pueden definirse como buena, mala o regular. Conjunto de propiedades inherentes a un objeto que le confieren capacidad para satisfacer necesidades implcitas o explcitas. Calidad de las Aplicaciones Web 6

Proyecto de Ingeniera Web


Conjunto de propiedades y caractersticas (implcitas o establecidas) de un producto o servicio que le confieren su aptitud para satisfacer unas necesidades implcitas o establecidas. Debe definirse en el contexto que se est considerando, por ejemplo, la calidad del servicio postal, del servicio dental, del producto, de vida, etc. 4) En mbitos empresariales Grado en el que un conjunto de caractersticas inherentes cumple con los requisitos. El conjunto de actividades encaminadas a descubrir y satisfacer las necesidades de un colectivo o de una sociedad en general. Satisfaccin del cliente y conformidad con sus requisitos y necesidades. El grado de satisfaccin que produce al cliente. II. Por qu Calidad? La industria del software, como tal industria, tiene muchas caractersticas de la industria tradicional, entre ellas la necesidad de que sus productos sean de calidad. El tema de la calidad est en el orden del da tanto en los medios de comunicacin escritos y audiovisuales como en las revistas tcnicas, y lo ms importante, tiene una presencia continuada por el inters que despierta. Todo esto tiene como fundamento que el papel que la calidad ejerce sobre la competitividad empresarial es enorme. Hasta tal punto que incluso la Unin Europea propone la necesidad de la evaluacin y certificacin de los productos europeos mediante la calidad europea, como medio de discriminacin en mercados internacionales. Dado que la situacin actual est marcada por la exigencia mxima en un mercado abierto, se hace ms necesaria que nunca la produccin de productos de calidad. La calidad es crtica para la supervivencia de las empresas por diversas razones, entre las que destacamos: es un factor competitivo es esencial para el comercio internacional reduce las prdidas producidas por la no calidad mantiene a los clientes e incrementa los beneficios es el sello distintivo de los negocios de nivel mundial

Calidad de las Aplicaciones Web

Proyecto de Ingeniera Web


III. Tipos de Calidad La industria del software, como tal industria, tiene muchas caractersticas de la industria tradicional. Podemos distinguir tres tipos de calidad relacionados entre s: calidad necesaria, calidad programada (planificada) y calidad realizada.
Calidad planificada. Es el nivel de calidad que se propone obtener el fabricante. Calidad necesaria. Es la calidad que pide el cliente y la que le gustara recibir. Calidad realizada. Es la calidad que se puede obtener debido a las personas que realizan el trabajo o a los medios utilizados.

Calidad Planificada

Calidad Necesaria

Calidad Realizada

Podemos representar estas calidades como tres crculos que se cortan. Lo que la gestin de la calidad pretende conseguir es que el rea comn sea la mayor posible, incluso que lleguen a coincidir para evitar insatisfacciones y gastos superfluos. A veces se habla de calidad percibida, que no tiene que coincidir con la realizada, ya que depende de la subjetividad de algunas de las caractersticas, por ejemplo la esttica, y es debido a que los usuarios no disponen de la informacin completa. En estos casos los productos o servicios se evalan ms por su nombre de marca o la publicidad que por sus caractersticas objetivas. La calidad percibida es el grado de calidad que el cliente cree que tiene el producto o servicio. Al ser subjetiva del cliente, el sistema de gestin poco puede hacer para que la calidad percibida sea igual a la realizada, salvo incrementar la comunicacin a fin de conseguir la convergencia. IV. Qu es una Aplicacin Web? En ingeniera del software una aplicacin Web es aquella que los usuarios usan accediendo a un servidor Web a travs de Internet o de una Intranet. Las aplicaciones Web son populares debido a la practicidad del navegador Web como cliente ligero.

Calidad de las Aplicaciones Web

Proyecto de Ingeniera Web


La habilidad para actualizar y mantener aplicaciones Web sin distribuir e instalar software en miles de potenciales clientes es otra razn de su popularidad. Aplicaciones como los Webmails, wikis, Weblogs, MMORPGs (juegos de rol multijugador masivo online), tiendas en lnea, etc. son ejemplos bien conocidos de aplicaciones Web. Un poco de historia En los primeros tiempos de la computacin cliente-servidor, cada aplicacin tena su propio programa cliente y su interfaz de usuario, estos tenan que ser instalados separadamente en cada estacin de trabajo de los usuarios. Una mejora al servidor, como parte de la aplicacin, requera tpicamente una mejora de los clientes instalados en cada una de las estaciones de trabajo, aadiendo un costo de soporte tcnico y disminuyendo la eficiencia del personal. En contraste, las aplicaciones Web generan dinmicamente una serie de pginas en un formato estndar, soportado por navegadores Web comunes como HTML o XHTML. Se utilizan lenguajes interpretados del lado del cliente, tales como JavaScript, para aadir elementos dinmicos a la interfaz de usuario. Generalmente cada pgina Web individual es enviada al cliente como un documento esttico, pero la secuencia de pginas provee de una experiencia interactiva. Interfaz Las interfaces Web tienen ciertas limitantes en la funcionalidad del cliente. Mtodos comunes en las aplicaciones de escritorio como dibujar en la pantalla o arrastrar-y-soltar no estn soportadas por las tecnologas Web estndar. Los desarrolladores Web comnmente utilizan lenguajes interpretados del lado del cliente para aadir ms funcionalidad, especialmente para crear una experiencia interactiva que no requiera recargar la pgina cada vez (cosa que suele molestar a los usuarios). Recientemente se han desarrollado tecnologas para coordinar estos lenguajes con tecnologas del lado del servidor, como por ejemplo PHP. AJAX, es una tcnica de desarrollo Web que usa una combinacin de varias tecnologas. Consideraciones Tcnicas Una ventaja significativa en la construccin de aplicaciones Web que soporten las caractersticas de los navegadores estndar es que deberan de funcionar igual independientemente de la versin del sistema operativo instalado en el cliente. En vez de crear clientes para Windows, Mac OS X, GNU/Linux, y otros sistemas operativos, la aplicacin es escrita una vez y es mostrada casi en todos lados. Sin embargo, aplicaciones inconsistentes de HTML, CSS, DOM y otras especificaciones de navegadores pueden causar problemas en el desarrollo y soporte de aplicaciones Web. Adicionalmente, la habilidad de los usuarios a personalizar muchas de caractersticas de pantalla (como tamao y color de fuentes, tipos de fuentes, inhabilitar Javascript) puede interferir con la consistencia de la aplicacin Web. Otra (poco comn) aproximacin es utilizar Macromedia Flash o Java applets para producir parte o toda la interfaz de usuario. Como casi todos los navegadores incluyen soporte para estas tecnologas (usualmente por medio de plug-ins), aplicaciones basadas en Flash o Java pueden ser implementadas con aproximadamente la misma facilidad. Como hacen caso omiso de las configuraciones de los navegadores estas tecnologas permiten ms control sobre la interfaz, aunque incompatibilidad entre implementaciones de Flash o Java puedan traer nuevas Calidad de las Aplicaciones Web 9

Proyecto de Ingeniera Web


complicaciones. Por las similitudes con una arquitectura clienta-servidor, con un cliente un poco especializado, hay disputas sobre si llamara a estos sistemas aplicaciones Web; un termino alternativo es aplicacin rica de Internet. Estructura (Arquitectura de capas) Aunque muchas variaciones son posibles, una aplicacin Web est comnmente estructurada como una aplicacin de tres-capas. En su forma ms comn, el navegador Web es la primera capa (cliente / interfaz de usuario), un motor usando alguna tecnologa Web dinmica (ejemplo: CGI, PHP, Java Servlets o ASP) es la capa de en medio (reglas de negocio), y una base de datos como ltima capa. El navegador Web manda peticiones a la capa media, que la entrega valindose de consultas y actualizaciones a la base de datos generando una interfaz de usuario. Ejemplo de arquitectura 3 capas:

La tendencia actual y futura es la arquitectura de n capas, en la que se separan las reglas de negocios del acceso a los datos. Entre las razones de su uso en el desarrollo de aplicaciones encontramos: Abstraccin total acerca del origen de datos. Las distintas capas se especializan absolutamente en la funcionalidad que deben brindar (procesamiento en las reglas de negocios o presentacin de datos en la capa cliente) sin importar cual es el origen de los datos procesados. Bajo costo de desarrollo y mantenimiento de las aplicaciones. Si bien al momento del diseo podemos observar una mayor carga de complejidad, la utilizacin de esta arquitectura nos brinda un control ms cercano de cada componente, as como tambin la posibilidad de una verdadera reutilizacin del cdigo. Por ejemplo: La reutilizacin de cdigo y a su vez, una herramienta que nos ofrece seguridad, ya que mediante la utilizacin de esta arquitectura, el desarrollador de una interfaz de usuario jams llegar a manipular directamente un dato en nuestro servidor sino es a travs de un componente. Calidad de las Aplicaciones Web 10

Proyecto de Ingeniera Web


Estandarizacin de las reglas de negocio. Las reglas de negocio se encuentran encapsuladas en un conjunto de rutinas comunes y pueden ser llamadas desde diversas aplicaciones sin necesidad de saber cmo esta funciona o ha sido diseada. Ejemplo de arquitectura 4 capas;

Uso en negocios Una estrategia que est emergiendo para las empresas proveedoras de software, es proveer acceso va Web al software. Para aplicaciones previamente distribuidas como de escritorio, esto puede requerir el desarrollo de una nueva aplicacin o simplemente adaptar la aplicacin para usar una interfaz Web. Estos programas permiten al usuario pagar una cuota mensual o anual para usar la aplicacin, sin necesidad de instalarla en la computadora del usuario. Las compaas que siguen esta estrategia son llamadas Proveedores de Aplicaciones de Servicio (ASP por sus siglas en ingles), este modelo de negocios esta atrayendo la atencin de la industria del software. Lenguajes de programacin Existen numerosos lenguajes de programacin utilizados para el desarrollo de Aplicaciones Web, entre los que destacan: * PHP * ASP/ASP.NET * JSP * Perl * Ruby * Python Aunque ciertamente ASP no es un lenguaje de programacin, sino una arquitectura de desarrollo Web en la que se pueden usar por debajo distintos lenguajes (por ejemplo VB.NET o C# para ASP.NET, o VBScript/JScript para ASP).

Calidad de las Aplicaciones Web

11

Proyecto de Ingeniera Web


Ejemplos de aplicaciones Web Gmail por Google. Correo electrnico. MyWebDesktop.net 24SevenOffice. Solucin ERP/CRM. Basecamp por 37Signals. Administracin de proyectos. Bouchard Translator. Traductor en lnea de fuente abierta. eRequirements. Administrador de requerimientos para desarrollo de aplicaciones Web. eZ publish Administrador de contenido de fuente abierta. Flickr por Ludicorp. Administrador de fotografas. NetSuite ERP/CRM PhantomEZForm Creador de formularios Web. Salesforce.com CRM Stellent UCM. Administrador de contenidos. SugarCRM CRM AceProject. Administracin de proyectos. Zheta. Framework por objetos hecho con PHP

Calidad de las Aplicaciones Web

12

Proyecto de Ingeniera Web


4. CALIDAD DEL SOFTWARE I. Qu es la calidad del software? Grado con el cual el cliente o usuario percibe que el software satisface sus expectativas (IEEE 729-83) Conjunto de propiedades y de caractersticas de un producto o servicio, que le confieren aptitud para satisfacer una necesidades explcitas o implcitas (ISO 8402:1984) La calidad del software es el grado con el que un sistema, componente o proceso cumple los requerimientos especificados y las necesidades o expectativas del cliente o usuario. (IEEE, Std. 610-1990). Concordancia del software producido con los requerimientos explcitamente establecidos, con los estndares de desarrollo prefijados y con los requerimientos implcitos no establecidos formalmente, que desea el usuario (Pressman, 1998) La calidad del software puede ser entendida como el grado con el cual el usuario percibe que el software satisface sus expectativas (IEEE 729-83). El tipo y nmero de actividades de garanta de calidad que es necesario adoptar en un proyecto o en una organizacin depende del tamao y complejidad de los productos software que se estn desarrollando. Tambin influyen otros factores, como pueden ser el tipo de proceso de desarrollo de software o los mtodos y herramientas utilizados, la estructura organizativa de la organizacin, la motivacin del personal, entre otros. Segn el modelo de calidad descrito en la ISO 9126, la calidad de un proceso contribuye a mejorar la calidad del producto, y, a su vez, la calidad del producto contribuye a mejorar la calidad en uso. La finalidad de la calidad en uso es medir la efectividad, productividad, seguridad y la satisfaccin de los usuarios (pertenecientes a perfiles determinados) que interactan con el producto en escenarios especficos de uso. Las dimensiones de calidad de las aplicaciones Web y sus indicadores se deben identificar considerando algunas caractersticas que las diferencian de otras aplicaciones del tipo: Aplicaciones hipermedia Sistemas distribuidos Usuarios no identificados Mltiples perfiles de usuario Dimensiones de calidad (aplicaciones Web) Calidad de Productos Web o Calidad de Modelos Conceptuales o Calidad del Producto Final Calidad del Proceso de Desarrollo Web Calidad en Uso

Calidad de las Aplicaciones Web

13

Proyecto de Ingeniera Web

II. Caractersticas de la calidad del software Las caractersticas generales de la calidad del software se aplican a las aplicaciones Web y nos proporcionan una base til para evaluar la calidad de los sistemas Web. El modelo de calidad ISO/IEC 9216 (Internacional Standard Information technology Software Product Quality) define 6 caractersticas de calidad que debe de cumplir toda aplicacin Web para que sea un producto de calidad. 1. Funcionalidad :
Es la capacidad de un producto software de satisfacer los requisitos funcionales prescriptos y las necesidades implcitas de los usuarios.

2. Fiabilidad :
Es la capacidad de un producto software de mantener su nivel de desempeo, bajo condiciones establecidas, por un periodo de tiempo.

3. Usabilidad:
Es la capacidad de un producto software de ser comprendido, aprendido, usado, atractivo y conforme con las reglamentaciones y guas de usabilidad.

4. Eficiencia:
Es la capacidad de un producto software de proporcionar un rendimiento apropiado, de acuerdo a la cantidad de recursos usados bajo condiciones establecidas.

5. Mantenibilidad:
Es la capacidad de un producto software para ser modificado. Las modificaciones pueden incluir correcciones, mejoras o adaptacin del software a cambios en el entorno, en los requisitos o en las especificaciones funcionales.

6. Portabilidad:
Es la capacidad de un producto software de ser transferido de un ambiente a otro. Nota: El ambiente puede ser organizacional, de software o de hardware.

Calidad de las Aplicaciones Web

14

Proyecto de Ingeniera Web


Calidad aplicacin Web

Funcionalidad
Adecuacin Exactitud Seguridad de Acceso Cumplimiento funcional

Fiabilidad Madurez Tolerancia a Fallos Capacidad de recuperacin Cumplimiento de la fiabilidad

Usabilidad Capacidad para ser entendido Capacidad para ser aprendido Capacidad para ser operado Capacidad de atraccin Cumplimiento de la usabilidad

Eficiencia
Comportamiento Temporal (Tiempo de respuesta) Utilizacin de Recursos Cumplimiento de la eficiencia

Mantenibilidad
Capacidad para ser analizado Capacidad para ser cambiado Estabilidad Capacidad para ser probado Cumplimiento de la mantenibilidad

Portabilidad
Adaptabilidad Instalabilidad Coexistencia Capacidad para reemplazar Cumplimiento de la portabilidad

Olsina et al. (2001) han desarrollado un rbol de requisitos de calidad que identifica un conjunto de atributos que conducen a aplicaciones Web de alta calidad. 1) Usabilidad
Capacidad de comprensin del sitio global Servicios de ayuda y realimentacin en lnea Capacidades estticas y de interfaz Servicios especiales

2) Funcionalidad
Capacidad de recuperacin y de bsqueda Servicios de bsqueda y navegacin Servicios relacionados con el dominio de la aplicacin

3) Fiabilidad
Proceso correcto de enlace Recuperacin de errores Validacin y recuperacin de la entrada del usuario

4) Eficiencia
Rendimiento del tiempo de respuesta Velocidad de generacin de pginas Velocidad de generacin de grficos

5) Capacidad de mantenimiento
Facilidad de correccin Adaptabilidad Extensibilidad

Calidad de las Aplicaciones Web

15

Proyecto de Ingeniera Web


III. Normas ISO / IEC 9216 El estndar ISO/EIC 9216 (Internacional Standard Information technology Software Product Quality) se estructura en cuatro partes:

CALIDAD DEL CALIDAD DEL PROCESO PROCESO

CALIDAD CALIDAD INTERNA INTERNA 9 1 2 6 1

9126-3

CALIDAD CALIDAD EXTERNA EXTERNA

9126-2

CALIDAD CALIDAD EN USO EN USO

9126-4

Parte 1: Modelo de Calidad Conjunto de caractersticas y las relaciones entre ellas que proporcionan una base para especificar requisitos y evaluar la calidad. Parte 2: Mtricas Externas El mbito en que un producto satisface las necesidades implcitas y explcitas cuando es usado bajo condiciones especficas. Se obtiene a travs de la medicin del comportamiento del sistema (usando mtricas externas) Las mtricas externas pueden ser usadas slo durante las etapas de prueba del proceso del ciclo de vida o durante cualquier etapa operacional. Parte 3: Mtricas Internas La totalidad de los atributos internos de un producto que determina su capacidad para satisfacer las necesidades implcitas y explcitas cuando usado bajo condiciones especificadas. Se obtiene a travs de mtricas internas durante las primeras etapas del proceso de desarrollo (especific, requisitos, modelos conceptuales, etc.) Las mtricas internas proporcionan la habilidad de medir los artefactos intermedios y de esta manera predecir la calidad del producto final. Calidad de las Aplicaciones Web

16

Proyecto de Ingeniera Web


Parte 4: Mtricas de Calidad en Uso Calidad en uso Es la visin del usuario de la calidad que tiene un producto (percepcin del usuario) Se mide en trminos de los resultados del uso del software, ms que las propiedades del propio software. Se debe tener en cuenta los objetivos del negocio, el contexto y los escenarios de uso. Para desarrollar un producto usable, se tienen que conocer, entender y trabajar con los usuarios potenciales del producto. Caractersticas de Calidad en uso Efectividad: la capacidad de un producto software de permitir a los usuarios lograr las metas especificadas con exactitud e integridad en un contexto especificado de uso. Productividad: la capacidad del producto software para permitirles a los usuarios que gasten cantidades apropiadas de recursos (tiempo. Esfuerzo, materiales, costo) en relacin con la efectividad lograda en un contexto especificado de uso. Seguridad: la capacidad del producto software para lograr un nivel aceptable de riesgos de dao a las personas, el software, el equipamiento, o el entorno en un contexto especificado de uso. Satisfaccin: la capacidad del producto software de satisfacer a los usuarios en un contexto especificado de uso. Cmo se mide la Calidad en uso? Un producto se considera fcil de aprender y usar en trminos del: Tiempo que toma el usuario para llevar a cabo su objetivo Nmero de pasos que tiene que realizar para ello, y el xito que tiene que predecir la accin apropiada para llevar a cabo sus tareas La satisfaccin del usuario se suele medir a travs del uso de cuestionarios (Ej.: SUMI, WebQual)

Calidad de las Aplicaciones Web

17

Proyecto de Ingeniera Web


Diferentes aspectos de la calidad Interna: medible a partir de las caractersticas intrnsecas, como el cdigo fuente Externa: medible en el comportamiento del producto, como en una prueba En uso: durante la utilizacin efectiva por parte del usuario IV. Utilidad de las normas ISO / IEC 9216 Este estndar est pensado para los desarrolladores, adquirentes, personal que asegure la calidad y evaluadores independientes, responsables de especificar y evaluar la calidad del producto software. Por tanto, puede servir para validar la completitud de una definicin de requisitos, identificar requisitos de calidad de software, objetivos de diseo y prueba, criterios de aseguramiento de la calidad, etc. La calidad de cualquier proceso del ciclo de vida del software (estndar ISO 12.207) influye en la calidad del producto software que, a su vez, contribuye a mejorar la calidad en el uso del producto. La calidad del software puede evaluarse midiendo los atributos internos (medidas estticas o productos intermedios) o atributos externos (comportamiento del cdigo cuando se ejecuta). V. Medicin del software Qu entendemos por medicin del software? A la asignacin de una medida a un atributo de una entidad a partir de una mtrica. Otras definiciones: Una funcin que toma como entrada cierta informacin del software que se est midiendo, y que devuelve como salida un valor numrico, el cual es interpretado como el grado en que el producto software posee un atributo dado que afecta a su calidad (IEEE:1992) Proceso de asignar emprica y objetivamente nmeros o smbolos a los atributos de las entidades del mundo real, y al hecho de entender estos nmeros o smbolos como una manera de describir tales entidades Fenton y Pfleeger (1997) Qu entendemos por Mtrica? Un mtodo de medicin y una escala cuantitativos que pueden ser usados para determinar el valor que toma cierta caracterstica en un producto software concreto (ISO 14598-1:1999)

Calidad de las Aplicaciones Web

18

Proyecto de Ingeniera Web


Mtricas de calidad Mtricas de calidad para modelos conceptuales Orientado a Objetos (OO) Tradicionales Chidamber and Kemerer (1991; 1994) Kesh (1995) Li and Henry (1993) Moody (1998) Brito e Abreu and Carapua (1994) Lorenz and Kidd (1994) Briand et al.s (1997) Marchesi (1998) Harrison et al. (1998) Banisya et al. (1999) Dentro de los modelos conceptuales orientado a objetos podemos encontrar el desarrollo de las aplicaciones Web, cuyas mtricas de medicin de la calidad son especficas para dicho modelo conceptual. Mtricas de calidad para modelos conceptuales Orientado a Objetos (OO) Aplicaciones Web Mtricas de tamao, conectividad, visibilidad de sitios [Bray, 1996] Mtricas hipermedia [Botafogo,1992] Relevancia de pginas Web [Yuwono y Lee, 1996] Mtricas de diseo de pginas Web [Ivory et al., 2001] Mtricas de usabilidad y calidad del diseo [Ivory y Hearst, 2002] Mtricas para Modelos Navegacionales OOWS [Abraho, 2002] Prediccin del esfuerzo de desarrollo de aplicaciones Web [Mendes et al., 2003]

Calidad de las Aplicaciones Web

19

Proyecto de Ingeniera Web


5. MODELOS DE CALIDAD Modelo de Calidad Un conjunto de caractersticas y las relaciones entre ellas que proporcionan una base para especificar requisitos y evaluar la calidad. La calidad de un producto software debe evaluarse usando un modelo de calidad que tiene en cuenta criterios para satisfacer las necesidades de los desarrolladores, mantenedores, adquisidores y usuarios finales (ISO, 2001). Los modelos de calidad pueden ser utilizados para construir mejores productos y asegurar su calidad. Construir un modelo de calidad es bastante complejo y es usual que estos modelos descompongan la calidad del producto software jerrquicamente en una serie de caractersticas y subcaractersticas que pueden usarse como una lista de comprobacin de aspectos relacionados con la calidad. Se han desarrollado varios modelos de calidad para diferentes productos y procesos software. Despus de haber analizado varios de ellos, podemos afirmar que la mayor parte estn basados en la norma ISO9126. Esta norma (descrita con anterioridad) define un conjunto de caractersticas de calidad que son despus refinadas en subcaractersticas que estn descompuestas en atributos. Los valores de estos atributos se calculan mediante la utilizacin de mtricas. A continuacin describiremos diversos modelos definidos por diferentes autores basados en su mayora por la norma estndar ISO9126, que acabamos de describir. De entre los modelos basados en esta norma, se encuentran: el modelo propuesto Bertoa y Vallecillo (2002) para componentes software en el que los autores adaptan la norma ISO9126 a los componentes COTS. el modelo de calidad QUINT2 (Niessink, 2002) tambin presenta una ampliacin de la norma ISO 9126, pensada para valorar la calidad de arquitecturas software. el modelo realizado por Simo y Belchior (2003) en el que los autores han ampliado las subcaractersticas y atributos propuestos por la norma llegando a identificar 124 atributos de calidad para los componentes software. el modelo de calidad propuesto por Franch and Carvallo (2003) presenta una adaptacin de la ISO9126 para correo electrnico. el modelo que proponen Botella et al. (2003) para la seleccin de ERP y tambin escogen como marco de trabajo el estndar de calidad ISO/IEC 9126-1 el modelo de calidad que proponen Cai et al. (2000) para componentes y sistemas basados en componentes. el modelo de calidad definido por Fernndez and Rossi (2000) para software distribuido Zo and Ramamurhty (2002) presentan un modelo para valorar y seleccionar los sitios Web de comercio electrnico en un entorno B2C (Business-to-consumer). En Web and Web (2002) se presentan los factores de calidad del sitio Web que son importantes para los consumidores.

Calidad de las Aplicaciones Web

20

Proyecto de Ingeniera Web


En Parasuraman et al (1998) se describe el modelo SERVQUAL el cual contiene cinco dimensiones y 22 tems para medir los diferentes elementos de la calidad de un servicio en general. La idea de este modelo es que puede ser adaptado a diferentes entornos en funcin de los servicios ofrecidos por cada uno de ellos adaptando las dimensiones descritas en el modelo original. Los modelos de calidad del software proponen diferentes atributos de calidad y las relaciones entre ellos. Podemos distinguir dos tipos de modelos segn la finalidad de evaluacin. Evaluacin de la calidad del producto Se evala la calidad del producto software en funcin de un conjunto de caractersticas que pueden medirse Evaluacin de la calidad del proceso Sirve para evaluar las actividades de desarrollo de software determinando la presencia en el proyecto de una serie de prcticas recomendable Entre las propuestas para evaluar y predecir la calidad de los sistemas Web podemos encontrar: WebQEM: Proceso para la evaluacin de la calidad de sitios Web (Olsina et al., 1999) (Olsina y Rossi, 2002) Proyecto WebTango: Mtricas cuantitativas para la calidad de pginas Web (centradas en la usabilidad) (Ivory, 2001) Mtricas Web y el Proyecto Tukutuku - Benchmarking de proyectos Web (Mendes et al., 2001) Mtricas para Modelos Navegacionales OOWS (Abraho, 2002)

Calidad de las Aplicaciones Web

21

Proyecto de Ingeniera Web


6. CONTEXTO o La Unin Europea edita el libro blanco sobre crecimiento, competitividad y puestos de trabajo, y reconoce la calidad como un elemento esencial de xito de la empresa y constituye un factor estratgico en la poltica europea de competitividad. o Las empresas precisan marcas y certificados que ayuden a vender sus productos en el mercado nico en la era de la globalizacin. Se potencia la creacin de infraestructuras de calidad: entidades de acreditacin, organismos de normalizacin, entidades de inspeccin, etc. Evolucin de la mejora de la calidad
Mejora de la calidad

Calidad total Mejora Continua Garanta de calidad Control de calidad Prevenir defectos

Detectar defectos

Definiciones segn la terminologa ISO8402:

Tiempo

Calidad: Conjunto de propiedades y caractersticas de un producto o servicio que le confieren su aptitud para satisfacer unas necesidades explcitas o implcitas Control de calidad: Conjunto de tcnicas y actividades de carcter operativo, utilizadas para verificar los requerimientos relativos a la calidad del producto o servicio. Garanta de calidad: Conjunto de acciones planificadas y sistemticas necesarias para proporcionar la confianza adecuada de que un producto o servicio satisfar los requerimientos dados sobre calidad

Calidad de las Aplicaciones Web

22

Proyecto de Ingeniera Web


7. CONCLUSIONES o Investigar sobre la calidad de las aplicaciones Web es como si acotramos la investigacin sobre una parte de la calidad del software, porque al fin y al cabo, el producto aplicaciones Web es un subconjunto del producto software. o Analizando el proceso de produccin de software podemos concluir que todos los mtodos y herramientas utilizados en el mismo tienen un nico objetivo: producir software de alta calidad o Uno de los principales problemas que acucia la calidad del software es la falta de consenso generalizado en esta disciplina, es decir, el tener definido un punto de vista unificado que simplifique y d coherencia a los modelos existentes. A continuacin citamos algunos de estos modelos que han sido generados con gran esmero y esfuerzo, por universidades, asociaciones de carcter internacional y organismos pblicos (BOOTSTRAP, SQAM, proyecto ALVEY, proyecto SPICE, CMM, ISO/EIC 9126, METRICA,) o Encontramos con otra de las principales carencias en aspectos del aseguramiento de la calidad es la falta de estrategias y herramientas que soporten el desarrollo, la explotacin y la administracin de las mtricas de cada dominio. Aadir que ante la existencia de numerosas propuestas de modelos de calidad para distintos dominios de aplicacin, hemos observado que no existe un consenso general sobre cmo ha de documentarse o explotarse de forma efectiva las mtricas de calidad que cada una de estas propuestas definidas. Ante esta necesidad ha aparecido un framework que pretende proporcionar una infraestructura genrica que facilite la especificacin y uso de tales mtricas, y que permita el desarrollo de herramientas industriales para tratar de automatizar los procesos de especificacin, consulta y anlisis de mtricas basado en estndares de amplia aceptacin como pueden ser UML, XML, RDF y tecnologas de Web Semntica. (ver ms info. en el artculo) o Los modelos navegacionales constituyen la espina dorsal del diseo de las aplicaciones Web y su calidad tiene un gran impacto en la calidad del producto final entregado al usuario. Durante la evaluacin de la calidad es importante analizar la arquitectura de la aplicacin Web y el balance entre la profundidad y la amplitud de un Mapa Navegacional. La disponibilidad de mtricas tempranas permitir a los diseadores predecir y mejorar la mantenibilidad de los modelos navegacionales contribuyendo de esta manera a la mejora de la aplicacin Web final. o Para poder asegurar una alta calidad del software no slo pasa por la unin con los estndares de desarrollo y mantenimiento del software sino que se debe concienciar a todos los empleados de una compaa de los grandes beneficios que genera. o La calidad del software carece de un punto de vista unificado que simplifique y d coherencia a los modelos existentes permitiendo su equiparacin en objetivos y resultados.

Calidad de las Aplicaciones Web

23

Proyecto de Ingeniera Web


o Como conclusin final vamos a abordar un anlisis estratgico sobre la situacin actual de la calidad de las aplicaciones Web en la UE mediante una matriz DAFO.

DEBILIDADES - Falta de consenso para unificar criterios - Existen mltiples modelos de calidad -Falta de estrategias y herramientas que soporten el desarrollo, la explotacin y la administracin de las mtricas de cada dominio

AMENAZAS - Continua aparicin de nuevos modelos de calidad - Los mercados emergentes (asitico) consiga mejores productos de calidad a menor coste

FORTALEZAS - Existen ciertos modelos de calidad francamente vlidos - Es un atributo diferenciador con el que se aumenta la competitividad -

OPORTUNIDADES Definir un estndar internacional vlido para todos los mbitos existentes Se est potenciando desde la UE la calidad de los productos (como un atributo diferenciador)

Calidad de las Aplicaciones Web

24

Proyecto de Ingeniera Web


8. BIBLIOGRAFIA Ponencia sobre Calidad de los Sistemas de Informacin: Hacia la medicin del software Dr. Mario Piattini Velthuis. Grupo Alarcos. Universidad de Castilla-La Mancha. Valladolid-2006 Calidad de Sistemas de Informacin Web Silvia Abraho. Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia. 2004-2005 http://www.dsic.upv.es/~sabrahao/ficheros/seminarioCalidad-parte1.pdf Mtodo de Medicin de Tamao Funcional para la Web Silvia Abraho. Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia. 2004-2005 http://www.dsic.upv.es/~sabrahao/ficheros/OOmFPWeb.pdf La calidad del software y su medida. Jess Mara Minguet Melin Juan Francisco Hernndez Ballesteros. Ed. Centros de estudios Ramn Areces S.A. 2003 Introduccin a la arquitectura de n-Capas. http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art20.asp Un Mtodo para Medir el Tamao Funcional y Evaluar la Calidad de Sitios Web. Silvia Mara Abraho, Oscar Pastor, Luis Olsina, Joan J. Fons http://paginas.fe.up.pt/ipc/suporte/praticas/JISBD-01.pdf Un Marco Conceptual para la Definicin y Explotacin de Mtricas de Calidad L. A. Olsina, M. F. Bertoa, G. J. Lafuente, M. A. Martn, M. Katrib, A. Vallecillo http://congresos.lcc.uma.es/~av/Publicaciones/02/MarcoConceptualJISBD02.pdf Normas ISO (International Organization for Standardization) http://www.iso.org Norma estndar ISO/IEC TR 9126-1:2001, Software engineering -- Product quality -- Part 1: Quality model, 2001. Norma estndar ISO/IEC TR 9126-2:2003, Software engineering -- Product quality -- Part 2: External metrics, 2003. Norma estndar ISO/IEC TR 9126-3:2003, Software engineering -- Product quality -- Part 3: Internal metrics, 2003. Norma estndar ISO/IEC TR 9126-4:2004, Software engineering -- Product quality -- Part 4: Quality in use metrics, 2004. Gestin de la calidad. Administracin de proyectos informticos. Dr. Mara N. Moreno Garca. Departamento de Informtica y Automtica. Universidad de Salamanca Real Academia Espaola. Diccionario de la lengua espaola. http://www.rae.es Diccionario de uso del espaol. Mara Moliner.

Calidad de las Aplicaciones Web

25