Factores de Calidad de Software.docx

22
REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN UNIVERSITARIA INSTITUTO UNIVERSITARIO DE TECNOLOGÍA DEL ESTADO BOLÍVAR PROGRAMA NACIONAL DE FORMACION INFORMATICA PROFESORA: ESTUDIANTES: XXXXXXXXX XXXXXXXXXXX ADMINISTRACIÓN DE CALIDAD

Transcript of Factores de Calidad de Software.docx

REPBLICA BOLIVARIANA DE VENEZUELAMINISTERIO DEL PODER POPULAR PARA LA EDUCACIN UNIVERSITARIAINSTITUTO UNIVERSITARIO DE TECNOLOGA DEL ESTADO BOLVARPROGRAMA NACIONAL DE FORMACION INFORMATICA

ADMINISTRACIN DE CALIDAD

PROFESORA: ESTUDIANTES:XXXXXXXXXXXXXXXXXXXX

CIUDAD BOLVAR, NOVIEMBRE 2014INTRODUCCIN

Las posibilidades de que aparezca el fallo humano en el proceso de desarrollo de software son enormes. Es complicado realizar un buen software, y muchos de los productos que se construyen tienen calidad insuficiente, adems de no acertar con las estimaciones de tiempo y recursos inexactos para la construccin de los mismos. Los responsables expertos de compaas reconocen que la alta calidad ahorro de coste y mejora general. Adems, todos los mtodos, herramientas y procedimientos que constituyen la Ingeniera del Software van orientados a un nico fin: producir software de calidad.En este tema introduciremos el concepto de calidad de software, viendo s cules son los factores que influyen en la calidad del software, cmo medirlos, y por ltimo algunos modelos de calidad.

UNIDAD III: ADMINISTRACIN DE CALIDAD1. Factores de Calidad de Software Los factores que determinan la calidad se pueden clasificar en 2 grandes grupos: Factores que se pueden medir directamente (Ej. errores / unidad de tiempo). Factores que slo pueden ser medidos indirectamente (Ej. facilidad de mantenimiento),En ambos casos, se puede obtener una medida. Pero estas medidas deben ser comparadas con alguna referencia o indicador para poder llegar a una indicacin de la realidad Mc Call clasifica los factores de calidad en:a) Caractersticas Operacionalesb) Capacidad de Soportar Cambiosc) Adaptabilidad a nuevos entornos.Caractersticas Operacionales: Correccin: es el grado en que un programa satisface sus especificaciones y consigue los objetivos pedidos por el cliente. Este factor tiene una pregunta asociada:Hace lo que quiero? Confiabilidad: es el grado en que se puede esperar que un programa lleve a cabo sus funciones esperadas con la precisin requerida. La pregunta asociada a este factor sera:Lo hace de forma fiable todo el tiempo? Eficiencia: la cantidad de recursos de computadoras y de cdigo requeridos por un programa para llevar a cabo sus funciones. La pregunta asociada a este factor sera: Se ejecutar en mi hardware lo mejor que pueda?

Capacidad de Soportar Cambios: Facilidad de Mantenimiento: es el esfuerzo requerido para localizar y arreglar un error en un programa. La pregunta asociada a este factor sera:Puedo corregirlo? Flexibilidad: es el esfuerzo requerido para modificar un programa operativo. La pregunta asociada a este factor sera:Puedo cambiarlo? Facilidad de Prueba: es el esfuerzo requerido para probar un programa de forma que se asegure que realiza su funcin requerida. La pregunta asociada a este factor sera:Puedo probarlo?Adaptabilidad de nuevos entornos: Portabilidad: es el esfuerzo requerido para transferir el programa desde un hardware y/o un entorno de sistema de software a otro. Este factor tiene una pregunta asociada: Podr usarlo en otra mquina? Reusabilidad:es el grado en que un programa (o partes de este) se pueden reusar en otras aplicaciones. Este factor tiene una pregunta asociada:Podr reusar alguna parte del software? Facilidad de Interoperacin: es el esfuerzo requerido para acoplar un sistema a otro. Este factor tiene una pregunta asociada:Podr hacerlo interactuar con otro sistema?Mtricas de CalidadEs difcil desarrollar medidas directas de los anteriores factores de calidad. Por eso, se definen un conjunto de mtricas para cada uno de los factores de calidad. Generalmente estas mtricas definidas por MacCall solo pueden ser medidas en forma subjetiva.Las mtricas pueden estar listas de comprobaciones para obtener el grado de los atributos especficos del software. El esquema de graduacin propuesto por McCall va en una escala de 0 (bajo) a 10 (alto). En este esquema se usan las siguientesmtricas: Facilidad de Auditora: la facilidad con que se puede comprobar la conformidad con los estndares. Exactitud: La precisin de los clculos y el control. Normalizacin de las Comunicaciones: el grado en que se usan el ancho de banda, los protocolos y las interfaces estndar. Completitud: el grado en que se ha conseguido la total implementacin de las funciones requeridas. Concisin: lo compacto que es el programa en trminos de lneas de cdigo. Consistencia: el uso de un diseo uniforme de tcnicas de documentacin a los largo del proyecto de desarrollo de software. Estandarizacin en los datos: el uso de estructuras de datos de tipos estndar a lo largo de todo el programa. Tolerancia de Errores: el dao que se produce cuando el programa encuentra un error. Eficiencia en la Ejecucin: el rendimiento en tiempo de ejecucin de un programa. Facilidad de expansin: el grado en que se puede ampliar el diseo arquitectnico de datos o procedural. Generalidad: la amplitud de aplicacin potencial de los componentes del programa. Independencia del Hardware: el grado en que el software es independiente del hardware en que opera. Instrumentacin: el grado en que el programa muestra su propio funcionamiento e identifica errores que aparecen. Modularidad: la independencia funcional de los componentes del programa. Facilidad de Operacin: la facilidad de operacin de un programa Seguridad: la disponibilidad de mecanismos que controlen o protejan los programas o datos. Auto-Documentacin: el grado en que el cdigo fuente proporciona documentacin significativa.La relacin entre los factores de calidad del software y las mtricas se muestran en la siguiente tabla:

Aseguramiento de CalidadEl Aseguramiento de la Calidad del Software es el conjunto de actividades planificadas y sistemticas necesarias para aportar la confianza que el software satisfar los requisitos dados de calidad. Este aseguramiento se disea para cada aplicacin antes de comenzar a desarrollarla y no despus. El Aseguramiento de la Calidad del Software engloba: Un enfoque de gestin de calidad. Mtodos y herramientas de Ingeniera del Software. Revisiones tcnicas formales en el proceso del software. Una estrategia de prueba multiescala. El control de la documentacin del software y de los cambios realizados. Procedimientos para ajustarse a los estndares de desarrollo del software. Mecanismos de medicin y de generacin de informes.Las revisiones del software son un "filtro" para el proceso de Ingeniera del Software. Esto es, las revisiones se aplican a varios momentos del desarrollo del software y sirven para detectar errores y defectos que pueden ser eliminados. La revisin tcnica formal (RTF), a veces llamada inspeccin, es el filtro ms efectivo desde el punto de viste del aseguramiento de la calidad y es un medio efectivo para mejorar la calidad del software.Evoluacin de Calidad del productoCon respecto a la evolucin de la calidad del producto: documentacin, pruebas de aceptacin. Documentacin: la necesidad de documentacin es una consecuencia de los otros factores de calidad vistos arriba. Se puede distinguir entre tres especies de documentacin:1. La necesidad de documentacinexterna, la cual permite a los usuarios entender el poder del sistema y usarlo convenientemente, es una consecuencia de la definicin de facilidad de uso.2. La necesidad de documentacininterna, la cual permite a los desarrolladores de software entender la estructura y la implementacin del sistema, es una consecuencia del requerimiento de extensibilidad.3. La necesidad de documentacin de interfaz de mdulo o subsistema, permite a los desarrolladores de software entender las funciones provistas por un mdulo o subsistema sin tener que entender su implementacin, es una consecuencia del requerimiento de reutilizacin. Tambin fluye del factor de extensibilidad, ya que la documentacin de la interfaz de subsistema hace posible determinar si un cierto cambio afecta a otros mdulos. Pruebas de aceptacinEstas pruebas las realiza el cliente. Son bsicamente pruebas funcionales, sobre el sistema completo, y buscan una cobertura de la especificacin de requisitos y delmanualdel usuario. Estas pruebas no se realizan durante eldesarrollo, pues sera impresentable al cliente; sino que se realizan sobre elproductoterminado e integrado o pudiera ser una versin del producto o una iteracin funcionad pactada previamente con el cliente.La experienciamuestraque an despus del ms cuidadosoprocesode pruebas por parte del desarrollador, quedan una serie de errores que slo aparecen cuando el cliente comienza a usarlo. Los desarrolladores suelen llevar las manos a la cabeza y expresan:"Pero, a quin se le ocurre usar as miprograma?"Sea como sea, el cliente siempre tiene razn. Decir que los requisitos no estaban claros, o que el manual es ambiguo puede salvar la cara; pero ciertamente no deja satisfecho al cliente. Alegar que el cliente es un intil es otra tentacin muy fuerte, que conviene reprimir.Una prueba de aceptacin puede ir desde un informal caso de prueba hasta la ejecucin sistemtica de una serie de pruebas bien planificadas. De hecho, las pruebas de aceptacin pueden tener lugar a lo largo de semanas o meses, descubriendo as errores latentes o escondidos que pueden ir degradando el funcionamiento del sistema. Estas pruebas son muy importantes, ya que definen el paso nuevas fases delproyectocomo el despliegue ymantenimiento.

2. Modelo de calidad CMMIEl modelo CMMI (Modelo integrado de madurez de la capacidad) se usa para evaluar el nivel de madurez de una compaa en trminos de desarrollo informtico.CMMI, una versin ms amplia, se basa en CMM, adopta la mayora de sus conceptos y ofrece los ndices de referencia de las mejores prcticas para el desarrollo de software.El objetivo es alentar a las compaas para que monitoreen y mejoren continuamente sus procesos, y evalen el nivel de madurez de los mismos en una escala de cinco niveles establecida por el CMMI.Los Niveles CMM CMMI, son 5 y se definen: Nivel 1 o nivel Inicial de Madurez: se agrupan en este nivel las empresas que simplemente no tiene procesos definidos. Es decir emprenden un proyecto sin tomar en cuenta tiempo que le lleva producir cierta parte, incluso no dividen el proyecto en partes. Pero que concluyen el mismo. Nivel 2 o nivel Gestionado o tambin llamado Repetible: se diferencia del Nivel anterior bsicamente, porque el proyecto ha sido Gestionado. Con gestionado queremos decir que adems de concluir un proceso, este fue planificado, se revisan y evalan los procesos para ver si se cumplen las expectativas planteadas. Adems es llamado repetible porque para un proceso exitoso, este podra repetirse y obtener los mismos resultados exitosos. Nivel 3 o nivel Definido: incluye las caractersticas de un proceso de Nivel 2, pero los procesos utilizados, son ajustados a la poltica de procesos de la empresa, es decir el proceso se alinear con las directivas que posee la empresa como propios. Nivel 4 o nivel Cuantitativamente Gestionado: una empresa llega a este nivel, cuando es una empresa con nivel de madures 3, y adems agrega la caracterstica de agregar la medicin de resultados de una forma cuantitativa, es de decir poder medir que tan buenos fueron sus procesos. Nivel 5 o nivel Optimizado: es la empresa que teniendo nivel 4, adems tiene procesos de mejora continua, es decir mide sus resultados, los analiza, aprende, y toma decisiones a partir de ellos. Esto llevar a la empresa a estar siempre ms cerca de la optimizacin.

3. Modelo de Calidad de MOPROSOFTMOPROSOFT es el Modelo de Procesos para la Industria del Software. Un modelo para la mejora y evaluacin de los procesos de desarrollo y mantenimiento de sistemas y productos de software. Desarrollado por la Asociacin Mexicana para la Calidad en Ingeniera de Software a travs de la Facultad de Ciencias de la Universidad Nacional Autnoma de Mxico (UNAM) y a solicitud de la Secretara de Economa para obtener una norma mexicana que resulte apropiada a las caractersticas de tamao de la gran mayora de empresas mexicanas de desarrollo y mantenimiento de software.Caractersticas de MoProSoft: Es especfico para el desarrollo y mantenimiento de software. Es sencillo de entender y adoptar. Facilita el cumplimiento de los requisitos de otros modelos como ISO 9000:2000, CMM y CMMI. Se enfoca a procesos. Se le considera prctico en su aplicacin, principalmente en organizaciones pequeas, con bajos niveles de madurez. Comprende un documento de menos de 200 pginas que, al compararlo con otros modelos y estndares, lo hace bastante prctico. Resulta acorde con la estructura de las organizaciones mexicanas de la industria de software. Est orientado a mejorar los procesos, para contribuir a los objetivos de negocio, y no simplemente ser un marco de referencia o certificacin. Tiene un bajo costo, tanto para su adopcin como para su evaluacin.Para qu sirve MoProSoft? Mejora la calidad del software producido por la empresa que adopta el modelo. Eleva la capacidad de las organizaciones para ofrecer servicios con calidad y alcanzar niveles internacionales de competitividad. Integra todos los procesos de la organizacin y mantiene la alineacin con los objetivos estratgicos. Inicia el camino a la adopcin de los modelos ISO 9000 o CMMI. Sirve para implantar un programa de mejora continua. Permite reconocer a las organizaciones mexicanas por su nivel de madurez de procesos. Facilita la seleccin de proveedores. Permite obtener acceso a las prcticas de ingeniera de software de clase mundial.4. Modelo de calidad SW-CMM1El Modelo de Madurez de la Capacidad para el desarrollo de Software (Capability Maturity Model for Software, SW-CMM) es un modelo de procesos para el desarrollo y mantenimiento de sistemas de software, diseado sobre los criterios: La calidad de un producto o sistema es consecuencia directa de los procesos empleados en su desarrollo. Las organizaciones que desarrollan software presentan un atributo denominado madurez, cuya medida es proporcional a los niveles de capacidad e institucionalizacin de los procesos que emplean en su trabajo.2Origen y evolucin:Fue diseado a finales de los ochenta por Software Engineering Institute (SEI) a instancias del Congreso Norteamericano, como medio para evaluar a las empresas suministradoras de software para el Departamento de Defensa Norteamericano.CMM (como se le denomina abreviadamente) define 5 niveles de madurez para las organizaciones, en funcin de cules son los procesos que emplean en el desarrollo y mantenimiento de software y los grados de capacidad e institucionalizacin de cada uno; y puede emplearse con dos finalidades:a) Criterio para la evaluacin de la madurez de la organizacin.b) Gua para la mejora de sus procesos.Tras su creacin en 1984 SEI comenz la investigacin para desarrollar un marco de mejora y evaluacin de la previsibilidad y calidad de las empresas y el resultado se denomin "Capability Maturity Model for Software" SW-CMM o abreviadamente CMM, cuya versin 1.0 se public en agosto de 1991. Posteriormente se publicaron las revisiones 1.1 en 1993 y 1.2 en 1997.Hoy es un modelo obsoleto, que SEI ya no mantiene desde que en 2000 fue relevado e integrado en el nuevo CMMI.3Niveles de madurez definidos en SW-CMM: Nivel 1: Inicial, los resultados de calidad obtenidos son consecuencia de las personas y de las herramientas que emplean. No de los procesos, porque o no los hay o no se emplea. Nivel 2: Repetible, se considera cuando se llevan a cabo prcticas bsicas de gestin de proyectos, de gestin de requisitos, control de versiones y de los trabajos realizados por subcontratistas. Los equipos de los proyectos pueden aprovechar las prcticas realizadas para aplicarlas en nuevos proyectos. Se le llama Repetible ya que se pueden repetir xitos anteriores aplicando la disciplina necesaria. Nivel 3: Definido, los procesos comunes para desarrollo y mantenimiento del software estn documentados de manera suficiente en una biblioteca accesible a los equipos de desarrollo. Las personas han recibido la formacin necesaria para comprender los procesos. Para cada proyecto en particular, se adaptan los procesos estndar segn las necesidades del caso, es consistente la base de procesos. 4Nivel 4: Gestionado, la organizacin mide la calidad del producto y del proceso de forma cuantitativa con base a mtricas establecidas. La capacidad de los procesos empleados es previsible, y el sistema de medicin permite detectar si las variaciones de capacidad exceden los rangos aceptables para adoptar medidas correctivas. Nivel 5: Optimizado, la mejora continua de los procesos afecta a toda la organizacin, que cuenta con medios para identificar las debilidades y reforzar la prevencin de defectos. Se analizan de forma sistemtica datos relativos a la eficacia de los procesos de software para analizar el coste y el beneficio de las adaptaciones y las mejoras. Se analizan los defectos de los proyectos para determinar las causas, y su mapeado sobre los procesos. Es el nivel ms alto de CMM por el momento.5Integracin de SW-CMM a CMMIMuchas organizaciones estn descubriendo que la actualizacin de SW-CMM a CMMI basado en la mejora del proceso es sencilla porque la implementacin de CMMI se basa en su conocimiento de la SW-CMM. Organizaciones sin demora puede pasar de un nivel de madurez de la SW-CMM al nivel de madurez CMMI correspondiente.Algunos de los beneficios que las organizaciones al completar la actualizacin a CMMI son: Una mejor visibilidad en el ciclo de vida del producto y las actividades de ingeniera para asegurar que el producto o servicio cumple con las expectativas del cliente. Vnculos ms estrechos con las normas ISO. El aprovechamiento de las reas adicionales de las mejores prcticas (por ejemplo, la medicin, el riesgo gestin y administracin de proveedores).

5. Modelo de calidad ISOLa International Standard Organization (ISO) es un organismo internacional especializado en crear estndares y est integrado por los institutos de estandarizacin de alrededor de 130 pases miembros. Su oficina principal se encuentra en Ginebra, Suiza. El propsito de ISO es promover el desarrollo de la normalizacin y actividades relativas a facilitar el comercio internacional de bienes y servicios, as como desarrollar la cooperacin intelectual, cientfica y econmica. Los resultados del trabajo tcnico de ISO son publicados como estndares internacionales.Las Normas ISO 9000 son un conjunto de normas y directrices internacionales para la gestin de la calidad que, desde su publicacin inicial en 1987, han obtenido una reputacin global como base para el establecimiento de sistemas de gestin de la calidad.Dado que los protocolos de ISO requieren que todas las normas sean revisadas al menos cada cinco aos para determinar si deben mantenerse, revisarse o anularse, la versin de 1994 de las normas pertenecientes a la familia ISO 9000, fue revisada por el Comit Tcnico ISO/TC 176, publicndose el 15 de diciembre del ao 2000.AENOR public con la misma fecha las normas UNE-EN ISO 9000 del ao 2000, versin espaola de las normas ISO 9000 del ao 2000.

CONCLUSIONES

Cada vez ms las exigencias de los consumidores en los actuales escenarios econmicos es muy relevante, especialmente por el rol que desempea la calidad y en donde, las empresas exitosas estn plenamente identificadas que ello constituye un buena ventaja competitiva, si se sabe utilizar. La gerencia moderna est muy comprometida como algunos sealan a responder continuamente a las exigencias de un entorno que cada vez es ms dinmico, turbulento e imprevisible. Todo ello hace necesario, la adopcin de un sistema gerencial con orientacin a la calidad que favorezca a los logros, objetivos establecidos y haga ms competitivas a las empresas. Las empresas modernas saben, que para permanecer en los mercados y garantizar una buena participacin se debe tener presente, que la calidad actualmente es muy importante tenerla bien controlada, porque ella involucra como se sabe: satisfacer plenamente las necesidades del cliente, cumplir las expectativas del cliente y algunas ms, despertar nuevas necesidades del cliente, lograr productos y servicios con cero defectos, hacer bien las cosas desde la primera vez, disear, producir y entregar un producto de satisfaccin total, producir un artculo o un servicio de acuerdo a las normas establecidas, dar respuesta inmediata a las solicitudes de los clientes entre otras; donde la calidad no es un problema, es una solucin.

REFERENCIASConsulta de pginas Web Buscador Google:http://tuzonasistema.blogspot.com/2014/07/factores-que-determinan-la-calidad-de.htmlhttp://webcache.googleusercontent.com/search?q=cache:lF5jgei4dNYJ:www.angelfire.com/dc/marcodorantes/Docs/CalidadDelSoftware.doc+&cd=27&hl=es-419&ct=clnk&gl=vehttp://www.sites.upiicsa.ipn.mx/polilibros/portal/Polilibros/P_proceso/ANALISIS_Y_DISEnO_DE_SISTEMAS/IngenieriaDeSoftware/CIS/UNIDAD%20II/2.3.HTMhttp://dankocs2012.blogspot.com/2012/12/aseguramiento-de-la-calidad-de-software.htmlhttp://www.enterate.unam.mx/Articulos/2006/marzo/moprosoft.htmhttp://es.slideshare.net/LoloUBD/mejora-de-procesos-y-transicion-sw-cmm-a-cmmihttp://www.apmarin.com/download/691_cal1.pdf