Académique Documents
Professionnel Documents
Culture Documents
ndice
Unidad 3. Modelos de calidad de software ......................................................................... 3 Presentacin de la unidad ................................................................................................. 3 Propsitos.......................................................................................................................... 4 Competencia especfica..................................................................................................... 4 3.1. Modelos clsicos de calidad de software .................................................................... 4 3.1.1. Modelo de McCall .................................................................................................... 5 3.1.2. Modelo de Bohm .................................................................................................... 8 Actividad 1. Relacionar modelos de calidad de software clsicos y actuales ................... 10 3.2. Modelos de calidad de producto ............................................................................... 11 3.2.1. ISO 9126. Calidad de producto de ingeniera de software ..................................... 12 3.2.2. ISO 14598. Evaluacin de producto de software .................................................... 17 3.3. Modelos de calidad de proceso................................................................................. 24 3.3.1. ISO 15504 SPICE. Determinacin de la capacidad de mejora del proceso de software ........................................................................................................................... 24 3.3.2. CMM. Modelo de madurez de capacidades ........................................................... 31 Autoevaluacin ................................................................................................................ 36 Evidencia de aprendizaje. Planteamiento de los niveles de capacidad y madurez........... 37 Autorreflexiones ............................................................................................................... 37 Cierre de la unidad .......................................................................................................... 38 Para saber ms ............................................................................................................... 38 Fuentes de consulta ........................................................................................................ 39
Presentacin de la unidad
Bienvenidos a la unidad 3.Modelos de calidad de software. Un modelo de calidad es un conjunto de caractersticas y las relaciones entre ellas que proveen la base para la especificacin de los requisitos de calidad y la evaluacin de la calidad (Carvallo Vega, 2013). En esta unidad primeramente se estudiarn los modelos precedentes a los modelos actuales en el tema 3.1Modelos clsicos de calidad de software abarcando el modelo McCall y el Modelo de Bohm, debido al impacto que estos modelos tuvieron en la conformacin de los modelos actuales con los cuales se implement la divisin entre la revisin de la calidad de proceso y de producto, considerando que ambos elementos de anlisis de la calidad del software abarcan mbitos muy complejos que requieren una revisin especfica, ante ello, el siguiente tema que se abordar es el tema 3.2 Modelos de calidad de productoy 3.3 Modelos de calidad de proceso. Un modelo de calidad de producto comprende un catlogo de caractersticas y subcaractersticas que se descomponen en atributos para ser evaluados con mtricas (Carvallo, 2013) y el modelo de calidad de proceso proporciona una gua de mejoras para la gestin de los procesos en la organizacin dedicada al desarrollo de software (Scalone, 2006). El modelo de calidad de producto comprende el modelo ISO/IEC 9126 y el modelo ISO/IEC 14598. Los modelos calidad proceso de software que abarca el modelo 15504 y el modelo de madurez de capacidades CMM, siendo estos modelos los ms comunes aplicados a los procesos y productos de software como parte de un sistema de gestin de calidad en las organizaciones con el fin de obtener y garantizar productos de software de calidad. El modelo de calidad permite la definir de manera estructurada las caractersticas del producto software para su evaluacin, especificar los requisitos y establecer una relacin entre ellos, etctera. Por modelo se entiende que es un arquetipo o punto de referencia para imitarlo o reproducirlo(RAE, 2014 Modelo http://lema.rae.es/drae/srv/search?id=xzHZWdlqrDXX2u7iR2i0). Calidad se define como Propiedad o conjunto de propiedades inherentes a algo, que permiten juzgar su valor. Condicin o requisito que se pone en un contrato (RAE. 2014 Calidad http://buscon.rae.es/drae/srv/search?val=calidad) Podra decirse entonces que un modelo de calidad es la referencia para valorar las caractersticas o propiedades de algo, para el caso de esta asignatura, para valorar las caractersticas o propiedades de un producto o de un servicio de software.
En esta unidad es importante conocer los diferentes modelos de calidad de software que se han implantado por parte de ISO en el rea del desarrollo de software para la evaluacin de la calidad de productos y/o procesos. Una vez estudiados estos modelos podrs lograr la competencia general de la asignaturaAplicar el modelo de calidad de software de producto o proceso para detectar su grado de calidad a partir de casos simulados que representen actividades correspondientes al desarrollo de software.
Propsitos
Esta unidad tiene como propsitos que: 1. Analices los modelos de calidad de software de acuerdo con los procesos o productos de un proyecto de desarrollo de software especfico. 2. Analices los modelos de calidad de software clsicos y los ms utilizados en las organizaciones. 3. Analices y propongas alternativas de mejora para los proyectos de software dentro de un proyecto de ingeniera en desarrollo de software.
Competencia especfica
Analizar los modelos de calidad de software ms comunes para guiar la mejora de procesos en un proyecto de desarrollo de software mediante los niveles de capacidad y madurez del modelo.
de implantar nuevos modelos de calidad de productos y/o procesos que los conduzcan a la evaluacin del producto y a la satisfaccin del cliente. Un modelo de calidad de software es un conjunto de buenas prcticas para el ciclo de vida del software, enfocadas en los procesos de gestin y desarrollo de proyectos, este indica qu hacer y no cmo hacerlo (ECURED.CU, 2014, http://www.ecured.cu/index.php/Modelo_de_calidad). En un primero momento, los modelos de calidad aparecieron como una necesidad de reducir la brecha entre usuarios y desarrolladores identificando factores de calidad basadas en las prioridades de ambos, ante ello, surgen modelos considerados clsicos por reconocerse como precursores de los modelos actuales, estos modelos clsicos se revisarn en el subtema 3.1.1. Modelo de McCall y subtema 3.1.2. Modelo de Bohm en ellos conocers las caractersticas o factores de calidad en los que se basan.
Es importante sealar que los factores de calidad estn divididos para su estudio en tres perspectivas. a) Revisin del producto. Aqu se encuentran todos los factores de calidad que permitan al evaluador del producto conocer la capacidad de tiene el software para adaptarse a los cambios ante alguna modificacin propias del software o de acuerdo al objetivo de la empresa; b) Transicin del producto. Incluye factores de calidad que proporcionan la adaptabilidad que tiene el software a nuevos sistemas informticos o a la comunicacin que puede establecer con otras aplicaciones y c) Operacin del producto. Se especifican los factores de calidad referentes a las caractersticas operativas del producto software. Identificando el cumplimiento del objetivo para la satisfaccin del cliente, el tiempo de ejecucin, el esfuerzo requerido para manipularlo, etc. Los once factores, criterios y perspectivas se exponen en la tabla Tabla de factores de calidad del modelo de McCall. . Perspectivas Factores Correccin. Descripcin del factor y criterios de evaluacin de la calidad Cumple con el objetivo para el cual fue creado. Criterios a considerar: completitud de implementacin de las funciones, consistencia en el diseo e implementacin y trazabilidad o rastreabilidad desde los requisitos de inicio de la creacin del producto software hasta la ejecucin final del producto. Involucra el tiempo de la realizacin de un proceso en el producto software. Criterios a considera: Exactitud en los clculos realizaos, consistencia y tolerancia a fallos para continuar la ejecucin y funcionamiento del software bajo situaciones no usuales. Identificacin de los recursos hardware y software para el funcionamiento adecuado del producto software. Criterios a considerar: En la ejecucin y almacenamiento de la informacin. La informacin no deba ser alterada por terceros. Criterios a considerar: Control de accesos a usuarios y la facilidad para realizar auditora de accesos al software.
Fiabilidad
Integridad
Usabilidad
Verifica el esfuerzo que realiza el usuario para el manejo del producto software. Criterios a considerar: facilidad de operabilidad del software, facilidad para proporcionar datos y obtener resultados. Facilidad para localizar las fallas y errores del sistema. Criterios a considerar: Independencia en los mdulos, simplicidad en la implementacin de las funciones y auto descripcin de las funciones a implementar.
Facilidad de mantenimiento
Facilidad de evaluacin Se prueban todas las opciones del producto software Criterios a considerar: la simplicidad, auto descripcin, modularidad, etc. Flexibilidad Indica el esfuerzo que se requiere para modificar el producto software en funcionamiento. Criterios a considerar: simplificad, posibilidad de expansin segn sus funciones y datos. Capacidad que tiene el software de ser utilizado en otro entorno. Criterios a considerar: simplicidad, independencia del producto software entre el hardware y software. Muestra la posibilidad de utilizar alguna parte del software en otras aplicaciones Criterios a considerar: simplicidad, modularidad, independencia del hardware y software. La capacidad del producto software para comunicarse con otras aplicaciones. Criterios a considerar: Modularidad, uso de protocolos de comunicacin e interfaces estndar, estructura de datos.
Portabilidad
Los factores mencionados en la tabla anterior, se consideran para realizar la evaluacin de la calidad del software mediante un proceso que se conforma de tres etapas, segn el modelo de McCall.
Para evaluar la calidad de un software con el modelo de McCall se realiza el siguiente proceso (Snchez , et al, 2012, pg. 387). 1. Especificar los requisitos de calidad del producto software. En esta fase del proceso se identifican los requisitos que solicita el usuario que tengan relacin con la calidad final deseada. Se establece comunicacin directa con el usuario. 2. Establecer los factores de calidad segn las perspectivas del modelo de McCall. En esta fase se establecen los factores de calidad de acuerdo con los requisitos de calidad del software para ser aplicados en alguna de las etapas de ciclo de vida del proyecto de software. Los factores de calidad se revisaron en la tabla: Factores de calidad del modelo de McCall. 3. Evaluar los factores. En esta fase se aplican criterios de evaluacin a cada factor de calidad. Los factores de calidad se revisaron en la tabla: Factores de calidad del modelo de McCall. En este temas has conocido el modelo de McCall que evalua la calidad de los productos descomponiendo la calidad en once factores y criterios de calidad segn tres prespectivas. Este modelo es uno de los modelos clsicos ms utilizados desde su creacin, incluso con vigencia hasta nuestro das.(Piattini Velthuis, Garca Rubio, Garca Rodrguez de Guzmn, & Pino, 2012). A continuacin se expone otro de los modelos considerados clsicos que es el Modelo de Bohm evalua la calidad de un producto software.
de evaluacin, comprensibilidad y flexibilidad. Estos siete factores los retoma del modelo de McCall (Sanchez , et al, 2012). A continuacin se ilustra el modelo de calidad de Bohm
Utilidad general
Facilidad de mantenimiento
Portabilidad
Fiabilidad
Eficiencia
Usabilidad
Facilidad de evaluacin
Comprensibilidad
Portabilidad
Jerarqua del modelo de calidad de Bohm (Snchez , et al, 2012, pg. 388)
Los factores de calidad del modelo de Bohm se descomponen en criterios de evaluacin que son llamados elementos primarios. La siguiente tabla muestra los elementos primarios. Factores Portabilidad Elementos primarios Independencia del dispositivo Autocontencin Autocontencin Complexin Robustez/Integridad Consistencia Capacidad para rendir cuentas Eficiencia de dispositivos Accesibilidad Robustez/Integridad Accesibilidad Facilidad de comunicacin Capacidad para rendir cuentas
Fiabilidad
Eficiencia
Ergonoma Facilidad de
evaluacin
Comprensibilidad
Accesibilidad Facilidad de comunicacin Autodescripcin Estructuracin Consistencia Autodescripcin Estructuracin Concisin Legibilidad Estructuracin Extensibilidad
Elementos primarios de los factores del modelo de Bohm McCall (Snchez , et al, 2012, pg. 388) En este tema conociste los niveles jerrquicos del modelo de Bohm, los factores correspondientes para cada nivel y los elementos primarios que pertenecen a cada factor de calidad. El modelo de Bohm al igual que el modelo de McCall tienen niveles jerrquicos el objetivo final es medir la calidad desde los elementos primarios o criterios de evaluacin segn de modelo de calidad de Bohm o McCall respectivamente y utilizar estas medidas para mejorar los productos desarrollados.(Snchez , et al, 2012, pg. 388).A continuacin conocers los modelos de calidad de producto software que permiten definir la calidad del producto que recibe el cliente. Cuando se conoce con exactitud los requisitos que se quieren conseguir del producto software estos modelos son de gran ayuda para evaluar el producto software.
10
la investigacin realizada sobre el tema. No olvides integrar los datos bibliogrficos de las fuentes de consultadas. 3. Ingresa al foro y redacta una aportacin en forma individual acerca de la relacin del contenido de la base de datos con el contenido de la unidad respecto a los temas revisados: importancia del modelo de McCall y el modelo de Bohm en la calidad del software y los modelos de calidad de producto actuales que se basaron en estos modelos para su desarrollo. 4. Redacta tus conclusiones integrando tu opinin la influencia que han tenido los modelos de Bohm y McCall a nivel internacional en la calidad del software e intgralas en la Base de datos, enriqueciendo la aportacin de alguno de tus compaeros incluyendo tu propia aportacin. 5. Guarda tus conclusiones con el nombre DMCS_U3_A1_XXYZ. Sustituye las XX por las dos primeras letras de tu primer nombre, la Y por tu primer apellido y la Z por tu segundo apellido. 6. Enva tus conclusiones a tu Facilitador (a) mediante la herramienta Tarea *No olvides, consultar el documento Criterios de evaluacin de las actividades de la Unidad 3 para conocer los parmetros de esta actividad.
11
norma ISO/IEC 14598 da una descripcin general de los procesos para la evaluacin de productos de software as como tambin guas y requerimientos para la evaluacin. Por esta razn se recomienda su uso conjunto (Caponi, et al, 2014).A continuacin analizars ests normas.
12
estn subdivididas en subcaractersticas que a continuacin se describen (Calero, Moraga, & Piattini, 2010).
Funcionalidad Incluye las funcionalidades requeridas? Portabilidad Es fcil trasladarlo a otros entornos?
ISO/IEC 9126
Mantenibilidad Qu tan fcil resulta modificar el software? Eficiencia Qu tan eficiente es el software? Usabilidad Es fcil de usar?
Caractersticas del modelo de calidad ISO/IEC 9126(Snchez , et al, 2012, pg. 391)
El modelo ISO/IEC 9126-1 se estructura como una jerarqua multinivel de factores de calidad. El nivel ms alto de la jerarqua corresponde a caractersticas generales del software, que se desglosan en subcaractersticas y que a la vez se dividen en atributos. Los atributos del nivel inferior de la jerarqua deben ser atributos medibles, cuyo valor se puede calcular aplicando una mtrica. http://www.essi.upc.edu/~franch/papers/librocalidad-cap-10-jpc-xf-cq-10-version-preliminar.pdf
13
Modelo de calidad
Caracterstica de calidad
Caracterstica de calidad
Caractersticas de calidad
Subcaracterstica
Subcaracterstica
Subcaracterstica
Subcaracterstica
Subcaracterstica
Subcaracterstica
Atributos
Atributos
Atributos
Atributos
Atributos
Atributos
Mtricas
Esquema general de un modelo de calidad de producto de software (Melndez & Dvila, 2005).
A continuacin se describen las seis caractersticas para la evaluacin de la calidad externa y su descomposicin en subcaractersticas, como se explican en ISO 9126-1 (Calero, et al, 2010). 1. Funcionalidad: Permite evaluar la satisfaccin de las necesidades implcitas y explcitas para las que fue diseado el producto software (Calero, et al, 2010). Subcaractersticas Definicin Adecuacin Evala que el software cumpla las tareas especificadas de acuerdo a los objetivos del usuario. Exactitud Evala la capacidad que tiene el software para proporcionar resultados correctos. Evala la capacidad del software para interaccionarse con uno o ms sistemas especficos.
Interoperabilidad
14
Conformidad Seguridad
Evala si el software se asocia a algn estndar. Evala la prevencin en el software del acceso no autorizado.
2. Fiabilidad: Conjunto de atributos que evalan el nivel de rendimiento del software bajo condiciones normales y durante un perodo de tiempo establecido (Calero, et al, 2010).. Subcaractersticas Definicin Madurez Permite medir la frecuencia de falla por errores en el software Tolerancia a fallo Evala el nivel de funcionamiento en caso de fallas del software. Recuperabilidad Capacidad de restablecer el nivel de operacin y recobrar los datos que hayan sido afectados por una falla, el tiempo y esfuerzo para lograrlos.
3. Eficiencia: Evala la relacin entre el nivel de funcionamiento del software y la cantidad de recursos utilizados (Calero, et al, 2010). Subcaractersticas Comportamiento temporal Utilizacin de recursos Definicin Evala los tiempos de respuesta y de procesamiento de los datos. Atributos relativos a la cantidad de recursos utilizados en el software y la duracin de su uso en la realizacin de sus funciones.
4. Usabilidad: Evala el esfuerzo necesario que deber invertir el usuario para utilizar el sistema (Calero, et al, 2010). Subcaractersticas Definicin Comprensibilidad Esfuerzo requerido por el usuario para reconocer la estructura lgica del sistema y conceptos del software Facilidad de Esfuerzo del usuario para aprender a usar la aplicacin. aprendizaje Operabilidad Evala la operacin y control del sistema por parte del usuario. Atractividad Evala el ambiente del sistema. Esta subcaracterstica fue aadida en el 2001 al igual que la calidad de uso como nuevo objetivo de la calidad a alto nivel dentro de usabilidad.
15
5. Mantenibilidad: Permite medir el esfuerzo necesario para realizar modificaciones al software (Calero, et al, 2010). Subcaractersticas Facilidad de anlisis Cambiabilidad Estabilidad Facilidad de prueba Definicin Evala el esfuerzo necesario para diagnosticar deficiencias o fallas que debern ser modificadas. Mide el esfuerzo para modificar, remover fallas o adaptar al software a un ambiente diferente. Evala los riesgos de efectos inesperados debido a las modificaciones realizadas al software. Evala el esfuerzo necesario para validar el software una vez que fue modificado.
6. Portabilidad: Se refiere a la habilidad del software de ser transferido de un ambiente a otro (Calero, et al, 2010). Subcaractersticas Definicin Adaptabilidad Evala la oportunidad para adaptar el software a diferentes ambientes sin necesidad de modificarlo. Facilidad de Evala el esfuerzo para instalar el software en un instalacin ambiente determinado. Co-existencia Evalala capacidad convivencia y de compartir recursos comunes que tiene el producto software con otros programas. Reemplazabilidad Capacidad del producto software de ser utilizado en lugar de otro producto software especfico para el mismo propsito y en un ambiente similar.
ISO 9126-2. Mtricas externas. Es un reporte tcnico y contiene terminologa relacionada con las mtricas, proporciona al usuario una gua de mtricas para la evaluacin de planificacin, seleccin de mtricas, diseo de mtricas, aplicacin de mtricas e interpretacin de medidas de datos (Snchez , et al, 2012, pg. 388) ISO 9126-3. Mtricas internas. Proporciona mtricas internas para medir los atributos de las caractersticas de calidad definidas en la norma 9126-1(Snchez , et al, 2012, pg. 388). El conjunto de mtricas estn organizadas igualmente por caractersticas y subcaractersticas, donde tiene las mismas caractersticas y subcaractersticas que la norma ISO 9126-2. Por lo tanto las mtricas son funcionalidad, fiabilidad, usabilidad,
16
eficiencia, mantenibilidad y portabilidad. Las propiedades que se necesitan para las mtricas son las siguientes: confiable, repetible, reproducible, disponible, indicable, correcta y con significado. Los siguientes pasos se sugieren para establecer las mtricas son los siguientes (Snchez , et al, 2012): a) b) c) d) e) Identificacin de los requisitos de calidad. Especificacin de la evaluacin. Diseo de la evaluacin. Ejecucin de la evaluacin. Retroalimentacin a la organizacin.
Las mtricas se dividen en internas y externas en relacin con el producto de software. Las mtricas internas obtenidas durante la medicin del proceso de creacin del software deben servir de base para las decisiones de las actividades del plan de trabajo, en caso de que haya desviaciones de la calidad esperada. Las mtricas externas verifican que la calidad de producto satisfaga las necesidades del usuario y el desarrollador del producto software deber determinar las mtricas que sern aplicadas. (Snchez , et al, 2012). En este subtema has identificado como est estructurada la norma ISO/IEC 9126, sus caractersticas y subcaractersticas utilizadas en para la evaluacin de la calidad. Es importante resaltar que se deben elegir adecuadamente las caractersticas segn las que se relacionen con los requisitos inciales del producto para poder pasar a la evaluacin del producto final. A continuacin estudiars la norma ISO/IEC 14598es parte de la norma ISO/IEC 9126. La norma ISO/IEC 14598 ofrece el proceso de evaluacin que se recomienda trabajar en conjunto con la norma ISO/IEC 9126 para la evaluacin del producto software.
17
van a adquirir el software, por los desarrolladores o los que van a evaluar el producto para obtener una certificacin. Los resultados de la evaluacin sirven como base para identificar el nivel de conformidad con los requisitos que el usuario solicito y realizar mejoras si es necesario (Caponi, et al, 2014). La norma ISO/IEC 14598 puede utilizarse conjuntamente con la norma ISO/IEC 9126, ya que el primer paso en la evaluacin es seleccionar las caractersticas de calidad importantes, utilizando un modelo de calidad y precisamente la norma ISO/IEC 9126 describe un modelo de calidad de esa forma. En la siguiente figura se muestra la relacin entre las normas ISO/IEC 9126 e ISO/IEC 14598. El nivel superior corresponde a los procesos que realizan los modelos ISO/IEC 9126 e ISO/IEC 14598, el nivel inferior son las actividades que se desglosan de cada proceso, indicado por la norma que se encarga de esa actividad.
Recursos y entorno
Proceso de evaluaci n
Producto software
Apoyo a la evaluacin
Proceso de evaluacin
Mtricas internas
Mtricas externas
14598-1
14598-2 14598-3 14598-4 14598-6 14598-5 9126-3 9126-1 9126-2 9126-4
Relacin entre las normas ISO/IEC 9126 e ISO 14598 (Piattini,et al, 2012, pg. 98)
La norma ISO/IEC 14598 contempla las siguientes seis estndares, las cuales se describen a continuacin: 1. ISO/IEC 14598-1. Cuenta con estndares que se aplican a la visin general de la calidad del producto. Provee un resumen de las otras cinco partes ISO/IEC 14598-2,
18
ISO/IEC 14598-3, ISO/IEC 14598-4, ISO/IEC 14598-5 y ISO/IEC 14598-6 y explica la relacin entre la evaluacin del producto y el modelo de calidad (Caponi, et al, 2014). . 2. ISO/IEC 14598-2. Cuenta con estndares que guan la planificacin y administracin de la calidad. Tiene como objetivo explicar los requerimientos que deben ser brindados por una organizacin para asegurar el xito de la evaluacin donde el soporte puede ser parte de la misma organizacin as como tambin de las tecnologas necesarias para llevarla a cabo. Esta parte de la norma, est dirigida a las personas que son responsables de (Caponi, et al, 2014): Administrar el uso de la tecnologa para la evaluacin, Dar soporte en la evaluacin del software. Gestionar organizaciones de desarrollo de software. Las actividades a realizar es la preparacin de polticas, definicin de objetivos, identificacin de la tecnologa, asignacin de responsabilidades, evaluacin de software desarrollado y adquirido (Rincn Gonzalez, 2014). 3. ISO/IEC 14598-3. Cuenta con estndares que guan el proceso de los desarrolladores. Debe ser utilizado por organizaciones que planean desarrollar un producto nuevo o mejorar uno existente, y quieren realizar evaluaciones de su producto, pueden utilizar a los miembros de su propio personal tcnico. Se hace hincapi en el uso de indicadores grficos, esquemas o listas de actividades que pueden predecir la calidad de los productos finales, midiendo los productos intermedios desarrollados a lo largo del ciclo de vida (Caponi, et al, 2014). Las actividades a realizar son: Organizacin, planteamiento, especificaciones, diseo y montaje 4. ISO/IEC 14598-4. Proceso de los compradores. Debe ser utilizado por organizaciones que planean comprar o rehusar un producto de software existente o ya desarrollado. Puede aplicarse con el propsito de decidir sobre la aceptacin de un producto o para seleccionar un producto entre un conjunto de productos alternativos (Caponi, et al, 2014). Las actividades a realizar son: Requerimientos, especificacin de la evaluacin, diseo de la evaluacin, ejecucin de la evaluacin (Rincn, 2014). 5. ISO/IEC 14598-5. Proceso de los evaluadores.
19
El estndar define el proceso con sus respectivas actividades y entregables. Este proceso puede ser utilizado por laboratorios evaluadores que brindan servicios de evaluacin a otras empresas, empresas desarrolladoras de software, las que podran tener un laboratorio de evaluacin propio, adquirientes de software los cuales podran contratar con una institucin evaluadora que realice una evaluacin, usuarios de un producto los cuales podran dado un informe de evaluacin, poder determinar si la calidad del producto satisface sus requerimientos. Y en el caso de entidades certificadoras, podran utilizar el estndar para realizar normas de calidad de productos (Caponi, et al, 2014). 6. ISO/IEC 14598-6. Documentacin de mdulos de evaluacin del software. Contiene gua para documentar los mdulos. Un mdulo de evaluacin es: Un paquete de tecnologa de evaluacin para una caracterstica o sub-caractersticas de calidad. Este paquete incluye mtodos de evaluacin y tcnicas. Los mdulos de evaluacin contienen caractersticas y subcaractersticas aplicables a la informacin del producto software (Caponi, et al, 2014). Una vez explicadas las partes de la norma ISO/IEC 14598, ahora se hace referencia al proceso de evaluacin. El cual, abarca las siguientes tres partes: la norma ISO/IEC 14598-3, ISO/IEC 14598-4 y ISO/IEC 14598-5 donde se contemplan a los desarrolladores, compradores y evaluadores respectivamente como protagonistas de la evaluacin (Caponi, et al, 2014). Antes de explicar el proceso de evaluacin se consideran las siguientes caractersticas al evaluar un proceso (Caponi, et al, 2014): Repetible: el proceso debe evaluarse en las mismas circunstancias, la misma configuracin de las herramientas utilizadas, el mismo producto y el mismo evaluador para obtener el mismo resultado de evaluacin. Reproducible: En esta caracterstica se deben mantener todas las condiciones iguales, salvo que el evaluador sea otro y se debe obtener el mismo resultado. Imparcial: La evaluacin del proceso debe resultar de los estudios realizados en esa instancia y no deben estar influenciados por resultados anteriores obtenidos para realizar la misma evaluacin. Objetivo: El evaluador no debe influenciarse por sentimientos propios o prejuicios sobre elproducto u similares.
20
El evaluador debe asegurarse que el proceso cumpla las caractersticas de la norma en todas las etapas del proceso de evaluacin: repetible, reproducible, imparcial y objetivo(Caponi, et al, 2014).
A continuacin se presenta el proceso de evaluacin de esta norma, consta de cinco etapas, se explican y posteriormente se ilustran en la figura (Caponi, et al, 2014). a) Establecimiento de requerimientos. Se define los objetivos de la evaluacin de acuerdo a los requerimientos del cliente y se determina lo que se va a evaluar. Se aconseja basarse en la norma ISO/IEC 9126-1, para obtener un listado de los requerimientos a evaluar. b) Especificacin de evaluacin. En esta etapa se especifican las mediciones a ser tomadas sobre los atributos de calidad. Asegurarse que el proceso sea repetible y reproducible para detallar los procesos. Tambin se realiza un estudio de factibilidad para la evaluacin, c) Diseo de la evaluacin: Tiene como propsito documentar los procedimientos y mtodos a ser usados en la evaluacin y especificar los requerimientos a ser utilizados en la evaluacin. Por ejemplo documentacin de mtodos y procedimientos, agenda de actividades a realizar de acuerdo a los recursos disponibles, optimizacin del plan inicial y generar un plan de evaluacin. d) Ejecucin de la evaluacin. Se aplica el plan de evaluacin para valorar, registrar los resultados y acciones tomadas como el aseguramiento del correcto funcionamiento de las herramientas y brindar capacitacin sobre el uso de estas herramientas. e) Conclusin de la evaluacin. En esta etapa se genera el informe final que contiene el objetivo de la evaluacin, definicin de caractersticas y subcaractersticas del producto segn la norma ISO/IEC 9126-1, actividades para la evaluacin, etc. El contenido del informe vara de acuerdo a las especificaciones de la evaluacin. Se hace una revisin conjunta del informe entre los evaluadores y el cliente con el fin de revisar los resultados finales.
21
1) Establecimiento de requerimientos
Establece propsito de la evaluacin Identifica el (los) tipo(s) de productos a evaluar
2) Especificacin de evaluacin
3) Diseo de la evaluacin
Produce
Plan de evaluacin
Tomar medidas Comparar con criterios Valorar resultados
5) Conclusin de la evaluacin
Especificacin de la evaluacin Requerimientos de evaluacin Informe borrador de evaluacin
Siguiendo las etapas del proceso de evaluacin, se ejemplifican de manera bsica las tres primeras etapas, donde se evala la interfaz de un dominio de correo electrnico (Caponi,et al, 2014): 1) Establecer requisitos de evaluacin: Propsito de la evaluacin: Evaluacin de interfaz de en las siguientes tareas: Envo de mensaje de correo electrnico Uso de chat o charla virtual Integracin de grupos en las charlas.
22
2) Especificacin de la evaluacin: Caractersticas Efectividad Descripcin de la caracterstica para interfaz de correo electrnico Para el correo electrnico se identificar otras funciones que el usuario puede realizar aparte de enviar correo electrnico. Por ejemplo: uso del mensajero, eliminacin de correos, creacin de grupos para organizar contactos, cantidad de usuarios que puedan completar tareas especficas en el correo electrnico. Identificar el tiempo que tarda el responder el sistema de correo electrnico ante la exigencia del usuario. Por ejemplo: Cantidad de clicks para abrir algn men, para enviar un correo, tiempo para abrir el sistema de correo electrnico, etc. Identificar la relacin entre opiniones positivas y negativas de los usuarios. Por ejemplo cuantos usuarios recomendaran la interfaz de correo electrnico, cuantos usuarios prefieren a la interfaz del correo electrnico en comparacin a otro competidor.
Productividad
Satisfaccin
3) Diseo de la evaluacin. Se crea el plan de evaluacin para las encuestas que se le realizan al usuario, para tiempos insumidos en primer intento de acceso a las opciones de correo electrnico y para la cantidad de click necesarios al activar alguna opcin:
La norma ISO/IEC 14598 implementa estndares que garanticen una correcta evaluacin al software y mitiga los errores que puedan presentarse cuando se est ejecutando, recuerda que el cliente es parte fundamental de la organizacin y resultados obtenidos de la aplicacin de la norma pueden ser utilizados para medir el cumplimiento y realizar mejoras, establecer relaciones entre mtricas internas y externas que mejoraran la calidad del producto software y cubrirn las expectativas del cliente. Tambin es importante aplicar normas a los procesos del desarrollo de software. Dichos normas establecen un marco de trabajo que permitir evaluar los procesos, recordars que sin un buen proceso de desarrollo ser casi imposible obtener un buen producto. A continuacin se explican los modelos de calidad de proceso ms utilizados para la evaluacin de la calidad de proceso software.
23
3.3.1. ISO 15504 SPICE. Determinacin de la capacidad de mejora del proceso de software
El subcomit de SO/IEC JTC1/SC7 analiz la necesidad de mplementar un modelo de calidad mediante el cual se pudiera evaluar el proceso de desarrollo del software, lo que dio inicio en 1991 al proyecto SPICE como parte del estndar ISO/IEC15504(Moliner, 2005) . El modelo ISO 15504 de referencia para la evaluacin de procesos surge por la necesidad de reducir riesgos en el desarrollo de software, de mejorar la calidad de los productos software y contar con un mtodo comn como un estndar internacional mediante el cual se definan los procesos y la forma de evaluarlos. En 1993 la comisin ISO/IEC JTC1 aprob un programa de trabajo para el desarrollo de un modelo que fuera la base de un
24
futuro estndar internacional para la evaluacin de los procesos del ciclo de vida del software. Recibiendo este proyecto el nombre de SPICE que significa Mejora de Procesos deSoftware y Capacidad de Determinacin (por sus siglas en ingls Software ProcessImprovement and CapacibilityDetermination)(Piattini,et al, 2012).El proyecto SPICE representa el mayor marco de colaboracin internacional por diferentes pases establecido con la finalidad de desarrollar un estndar de evaluacin de procesos de software(Tuya, et al, 2007, pg. 16). El modelo ISO 15504 est vigente y se denomina ISO/IEC 15504 InformationTechnology ProcessAssessment se puede traducir como Tecnologa de la informacin evaluacin de procesos.Es un estndar internacional aplicable a cualquier organizacin que requiera conocer y mejorar la capacidad de sus procesos, independientemente del tipo de organizacin, el modelo del ciclo de vida adoptado, de la metodologa de desarrollo y de la tecnologa utilizada (Tuya, et al, 2007, pg.16). El modelo ISO/IEC 15504 se dividi en cinco estndares (Tuya, et al, 2007, pg. 17): ISO/IEC 15504-1:2004 Parte 1: Concepto y vocabulario. Este apartado se actualiz en el ao 2004, como su nombre lo dice y representa una introduccin general a la norma ISO/IEC 15504, proporciona una gua de uso de la misma. En este apartado se incluye el conjunto de trminos definidos especficamente para comprender la norma. ISO/IEC 15504-2:2004 Parte 2. Ejecucin y evaluacin. En este apartado se definen los requisitos que debe cubrir el proceso de evaluacin para que produzca resultados repetibles, fiables y consistentes. ISO/IEC 15504-3:2004 Parte 3. Gua en la ejecucin de la evaluacin. Establece una gua para la realizacin de evaluaciones de procesos, interpretando los requisitos de las partes normativas para diferentes contextos de evaluacin. ISO/IEC 15504-4:2004 Parte 4. Gua para la mejora de procesos y determinacin de capacidad de procesos. Proporciona una gua para poder utilizar los resultados de una evaluacin en la mejora de los procesos evaluados. La gua incluye ejemplos de la aplicacin de mejoras en una gran variedad de situaciones. ISO/IEC 15504-5 Parte 5: Modelo de evaluacin de procesos ejemplares. Proporciona un modelo totalmente compatible con la parte normativa, que incluye un conjunto de indicadores que facilitan el clculo de la capacidad de los procesos. La norma ISO/IEC 15504, con los 5 estndares mencionados, proporciona un modelo de referencia que puede ser la base para cualquier metodologa para la evaluacin del proceso software. Este modelo de referencia se divide en dos dimensiones:
25
1. Dimensin del proceso. Est determinada por los propsitos que son los objetivos medibles del proceso. Esta dimensin est representada por un modelo de proceso de referencia que agrupa los procesos de desarrollo de software en tres niveles y a su vez contienen otras categoras de proceso, dependiendo del tipo de actividad realizada. En la siguiente tabla se muestra el modelo de proceso de referencia. En la columna de categora del proceso se incluyen las siglas que hacen referencia a la categora del proceso. Niveles Procesos del ciclo de vida primario Categoras del proceso Adquisicin (ACQ) Subcategoras ACQ 1. Preparacin de la adquisicin. ACQ.2 Seleccin del proveedor ACQ.3 Contrato ACQ.4 Monitorizacin del proveedor SPL.1 Preparacin de la oferta SPL.2 Entrega del producto SPL.3 Soporte a la aceptacin del producto ENG.1 Obtencin de requisitos ENG.2 Anlisis de requisitos del sistema ENG.3 Diseo de la arquitectura del sistema ENG.4 Anlisis de los requisitos de software ENG.5 Diseo del software OPE.1 Uso operacional OPE.2 Soporte al cliente Descripcin Son los procesos que realiza el cliente para la adquisicin de un producto o servicio.
Suministro (SPL)
Ingeniera (ENG)
Abarca procesos realizados por el proveedor tanto en la propuesta como en la entrega de un producto o servicio Agrupa a los procesos que directamente especifican, implementan o mantienen el producto software, su relacin con el sistema y la documentacin del cliente
Operacin (OPE)
Soporte (SUP)
SUP.1 Aseguramiento de la calidad SUP.2 Verificacin SUP.3 Validacin SUP.4 Revisin conjunta
Describe los procesos directamente relacionados con la transicin del producto o servicio al cliente y se ocupan del correcto uso y operacin del mismo. Contiene procesos que pueden ser utilizados por cualquiera que gestiones cualquier tipo de proyecto o de proceso del ciclo de vida
26
Gestin (MAN)
SUP.5 Auditora MAN.1 Alineacin de la organizacin MAN.2 Gestin de la organizacin MAN.3 Gestin de proyectos MAN.4 Gestin de calidad MAN.5 Gestin de riesgos PIM.1 Preparacin de la oferta PIM.2 Entrega del producto PIM.3 Soporte a la aceptacin del producto
PIM.1 Preparacin de la oferta PIM.2 Seleccin del proveedor PIM.3 Contrato PIM.4 Monitorizacin del proveedor
Reutilizacin (REU)
REU.1 Gestin de activos REU.2 Gestin de programa de reutilizacin REU.3 Ingeniera del dominio
del software. Formada por los procesos que contienen prcticas que pueden ser utilizadas por cualquiera que gestione cualquier tipo de proyecto o de proceso del ciclo de vida del software. Est formada por los procesos que establecen, definen, despliegan e implantan, evalan y mejoran los procesos que se realizan en la organizacin. Describe los procesos que se realizan para dotar a la organizacin tanto de los recursos humanos como de la infraestructura necesaria para que los dems procesos puedan realizarse de manera apropiada. Contiene los procesos directamente relacionados con la realizacin de acciones destinadas a explotar las oportunidades de reutilizacin.
Modelo de proceso de referencia(Tuya, et al, 2007, pg. 19). 2. Dimensin de la capacidad del proceso. Se conforma de la definicin de escalas de medida de valoracin para determinar la capacidad de cualquier proceso. Representa una capacidad que va en incremento. Una escala de medida de valoracin deriva la forma de mejorar cada proceso. Consta de seis niveles de capacidad y nueve atributos de procesos. En la siguiente tabla se desglosan estos niveles.
Descripcin El proceso no existe o no se consigue su propsito. Se alcanza el propsito del proceso en trminos
27
generales. El personal de la organizacin reconoce que el proceso se realiza cuando es necesario, pero no se hace de forma planificada ni se realiza ningn seguimiento. Las salidas del proceso se identifican fcilmente y este hecho confirma que el proceso de realiza. Nivel 2 Gestionado Se obtienen los productos del proceso de acuerdo a una planificacin y seguimiento. Los productos se ajustan a las normas de calidad. Nivel 3 Establecido El proceso se realiza y se gestiona utilizando procedimientos definidos segn los principios de la Ingeniera de software, es decir con procedimientos creados segn un estndar y debidamente documentados. En este nivel se utilizan un proceso definido y con capacidad para alcanzar los resultados esperados. Nivel 4 Predecible La realizacin del proceso se gestiona en forma cuantitativa, es decir se recogen medidas detalladas del nivel de realizacin del proceso y se analizan. Esto permite mantener el proceso dentro de lmites predefinidos y disponer de una mejor posicin para poder cuantificar la capacidad del proceso y predecir su comportamiento. Nivel 5. En optimizacin La realizacin de un proceso se optimiza de forma continuada, para alcanzar los objetivos de negocio de la organizacin. Se lleva a cabo una monitorizacin continua de los procesos y se analizan los datos obtenidos. Esto permite que los procesos estndares definidos dentro de la organizacin cambien dinmicamente, para adaptarse de forma efectiva a los actuales y futuros objetivos de la empresa. Niveles de la dimensin de capacidades de ISO/IEC 15504(Tuya, et al, 2007, pg. 21)
En la siguiente tabla se muestran los atributos de procesos de acuerdo al nivel de capacidad especificada en la segunda dimensin. Nivel de capacidad 0 1 Atributos de los Descripcin procesos (PA) No hay atributos en este nivel Realizacin del proceso Representa la medida de cundo se alcanza el (PA1.1) propsito de un proceso, transformando los productos de entrada en productos de salida. Gestin de la Representa el grado de gestin de la realizacin del
28
realizacin (PA.2.1) Gestin de los productos resultantes (PA.2.2) Definicin de los procesos (PA.3.1)
proceso, para que se obtengan productos que cumplan los objetivos definidos. Representa el grado de gestin de los productos resultantes producidos por los procesos.
Representa el nivel de realizacin del proceso, segn el cual utiliza una definicin de proceso basada en un proceso estndar para conseguir sus objetivos. Aplicacin del proceso Representa el nivel de adecuacin de la (PA.3.2.) implementacin o despliegue efectivo del proceso estndar. 4 Medida del proceso Representa el nivel en que las medidas y los objetivos (PA.4.1.) de los productos y de los procesos son utilizados para asegurar que la realizacin del proceso soporte el alcance de los objetivos definidos como apoyo a los objetivos de negocio. Control del proceso Representa el nivel de control del proceso a travs de (PA.4.2.) la recopilacin, anlisis y uso de medidas de proceso y de producto, para corregir en caso necesario, su rendimiento y para conseguir los objetivos de proceso y de producto definidos. 5 Innovacin de los Representa el nivel de control de los cambios en la procesos (PA.5.1) definicin, gestin y realizacin del proceso con el fin de alcanzar los objetivos de negocio fijados en la organizacin Optimizacin de los Representa el nivel bajo el cual se identifican e procesos (PA.5.2.) implantan los cambios en los procesos, para conseguir una mejora continua en el cumplimiento de los objetivos de negocio de la organizacin. Atributos de los procesos asociados a los niveles de capacidad de ISO/IEC 15504(Tuya, et al, 2007, pg. 22) El nivel de capacidad que tiene un proceso depende de los atributos que posee y del grado con el cual se alcanzan dichos atributos. La escala de valoracin de los atributos se muestra en la siguiente tabla: Valores posibles del atributo N No alcanzado P Parcialmente alcanzado Grado de alcance 0%-5% 16%-50% Situacin para determinar el grado de alcance del atributo Indica un poco o nula evidencia de que se ha alcanzado este atributo en el proceso evaluado. Se evidencia una aproximacin sistemtica del alcance del atributo, pero algunas de sus
29
caractersticas no se dan. L Ampliamente 51%-85% Hay bastantes evidencias de que se alcanza el alcanzado atributo, pero la realizacin del proceso diverge en alguna rea F Completamente 86%-100% Hay evidencia de que el atributo se alcanza alcanzado plenamente de manera sistemtica en el proceso evaluado y no hay debilidades importantes en la unidad organizacional en la que se ubica el proceso. Escala de valoracin de los atributos de los procesos segn ISO/IEC 15504(Tuya, et al, 2007, pg. 23). Los cuatro valores posibles del atributo obligan a evaluar empezando desde el Nivel 1 y en caso de que sean alcanzados ampliamente (L) o completamente (F) los atributos del proceso asociados a un cierto nivel, permite evaluar el nivel siguiente. Una organizacin de software puede implantar cualquiera de las dimensiones para la evaluacin de sus procesos, le permitir determinar la capacidad de los procesos de software, comprender cules procesos y prcticas puede evaluar un asesor, qu haya que hacer para mejorar los procesos de software. Puede utilizar las dimensiones durante la aplicacin de los procesos de software de la organizacin, durante el desarrollo y/o revisin de los procesos de la organizacin y como parte de una actividad de mejoramiento continuo (Torres, 2007).
Recuerda el objetivo principal de evaluar los procesos es conocer la capacidad que tiene una organizacin. La norma ISO/IEC 15504 es un marco de referencia para la mejora de los procesos. A continuacin estudiars otro modelo de calidad de procesos. El Modelo de madurez de capacidades CMM es una gua que describe las caractersticas que hacen efectivo a un proceso. Presenta un enfoque para la mejora de procesos que proporciona a una organizacin.
30
producto o proceso nacionales o internacionales. 2. Elabora un diagrama de fortalezas y debilidades de los modelos de calidad de producto o proceso donde expongas cada uno de ellos. 3. Redacta tus conclusiones integrando tu opinin sobre el modelo de calidad de producto o proceso que soluciones ms necesidades respecto a la calidad de software. 4. Guarda tu evidencia con la nomenclatura DMCS_U3_A2_XXYZ. Sustituye las XX por las dos primeras letras de tu nombre, la Y por tu primer apellido y la Z por el segundo apellido. 5. Integra tu documento de identificacin de modelos de calidad de producto o proceso en la Base de datos. *Consulta el documento EA. Rbrica de evaluacin de la unidad 3, para que consideres los parmetros de evaluacin de esta actividad.
31
para implementar el modelo CMM en otra rea. Por lo tanto, surge modelo CMMI Modelo Integral de Capacidad de Madurez, (por sus siglas en ingls Capability Madurity Model Integration),como solucin a los problemas de falta de integracin y uso de mltiples de los modelos CMM (Tuya, et al, 2007). Un modelo de madurez es un conjunto de caractersticas que describen ciertos aspectos de equilibrio, experiencia y formalidad en una organizacin (Snchez, et al, 2012). El Modelo CMMI, es una versin perfeccionada del modelo CMM, CMMI creada en el ao 2000 del modelo anterior denominado CMM. El objetivo del CMMI es contar con un enfoque para la mejora de procesos que proporciona a una organizacin los elementos esenciales para llevar a cabo sus procesos de manera efectiva. Puede utilizarse para guiar la mejora de procesos en un proyecto, en un departamento, o en una organizacin completa. CMMI ayuda a integrar funciones de la organizacin tradicionalmente separadas, a establecer prioridades y objetivos en la mejora de procesos, proporciona guas para los procesos de calidad y sirve como referencia para la evaluacin de los procesos actuales. (Sanchez, et al, 2012, pg. 394) CMMI se enfoca en la mejora de los procedimientos y procesos que las personas de una organizacin llevan a cabo integrando el apoyo de los avances tecnolgicos y otras herramientas administrativas pues se considera que si los procesos no estn correctamente definidos, los procesos no son maduros y no son ampliamente conocidos por quienes estn implicados en los procesos, ninguna personas por ms capaz que sea, podr rendir a su mejor nivel aun disponiendo de las mejores herramientas tecnolgicas o estratgicas. Los elementos ms importantes que considera el CMMI son (Sanchez , et al, 2012): los procedimientos realizados en la organizacin, mtodos y herramientas para organizar el proceso de evaluacin y los recursos humanos que intervienen en la realizacin de los procesos de la organizacin y evaluacin.
32
Personas
CMMI
Herramientas
Procedimientos y mtodos
El Modelo CMMI (Snchez,et al, 2012, pg. 325). El modelo CMMI se representa de dos formas de evaluacin: 1) Continua. Se basa en los niveles de capacitacin; 2) Por etapas: Se emplea los niveles de madurez. Tanto los niveles de capacitacin como los de madurez proporcionan una forma adecuada para medir la mejora de procesos. A continuacin se explican a detalle la representacin contina y por etapas: Representacin contina. Es la representacin mediante niveles de capacitacin consiste en la definicin de objetivos y prcticas generales para cada rea de procesos. Estos niveles pueden considerarse, por tanto, un medio para mejorar progresivamente los procesos de una cierta rea en la organizacin. CMMI define seis niveles de capacitacin, etiquetados de 0 a 5 (Snchez, et al, 2012, pg. 325): Nivel 0. Incompleto: Se refiere a un proceso que no se lleva a cabo, o que se lleva a cabo parcialmente. Nivel 1. Realizado: Se refiere a un proceso que satisface los objetivos especficos del rea a la cual pertenece. Nivel 2. Gestionado: El proceso se planifica y ejecuta de acuerdo con ciertas reglamentaciones, emplea personal cualificado, se monitoriza y controla. Nivel 3. Definido: el proceso se ajusta a los estndares de la organizacin y proporcionan, tanto medidas de la produccin como otras informaciones valiosas desde la perspectiva de la mejora de procesos. Nivel 4. Gestionado cuantitativamente: Un proceso definido que adems, es controlado mediante tcnicas cuantitativas o estadsticas.
33
Nivel 5. En optimizacin: Un proceso gestionado cuantitativamente sujeto a mejoras basadas en la comprensin de las causas de la variabilidad inherente al propio proceso.
* Representacin por etapas. En este modo de representacin mediante niveles de madurez CMMI define cinco niveles en los que una organizacin puede categorizarse de acuerdo con la disposicin global de sus procesos internos. Es decir, no se enfoca a un rea en particular sino que se refiere a mltiples reas de procesos. Los cinco niveles que define CMMI se muestran en siguiente figura (Snchez, et al, 2012, pg. 325):
Cada nivel de madurez representa un escaln en el camino hacia una organizacin madura. Cada uno es una capa en la carrera de mejora de procesos
Nivel 3 Definido
Nivel 2 Repetible Nivel 1 Inicial
Proceso caracterizado por la organizacin. Proactivo Proceso caracterizado por proyectos. A menudo reactivo Proceso impredecible, pobremente controlado. Reactivo
Niveles de madurez en CMMI (Snchez,et al, 2012) En la figura anterior se muestran los niveles de madurez en forma escalonada dirigiendo a la organizacin hacia un nivel de madurez alto. Esto se lograr mejorando sus procesos en cada nivel. (Snchez, et al, 2012).El nivel 1 Inicial: es el ms bajo de la escala se encuentran aquellas organizaciones sin procesos definidos gran parte del trabajo se realiza sin procedimientos preestablecidos y controlados; El nivel 2 Repetible: Se implantan actividades de gestin de proyectos permitiendo posteriormente repetir los procesos exitosos con la desventaja de no poderlos aplicar para todos los proyectos. Para estar en este nivel la organizacin debe documentar los procedimientos: monitoreo y control de proyectos, planeacin de proyectos, administracin de requerimientos, etc. con todos aquellos formatos o planes que haya creado para mejorar los procesos; El nivel 3 Definido: Las organizaciones cuentan con procesos estandarizados en el desarrollo y mantenimiento de software, los procesos se encuentran con expectativas a mejora contina; Nivel 4 Gestionado: Los procesos de la organizacin cuentan con un programa detallado y organizado de medicin de procesos de desarrollo de software; Nivel 5 Optimizacin: Las organizacin de este nivel tienen implementado un proceso de mejora
34
continua para todos los procesos, recopilan datos de todos sus proyectos para mejorar innovaciones de los propios procesos de la organizacin (Picazzo M., Villegas M., & Tamura M., 2008). Los niveles de capacidad y madurez del modelo CMMI como ya se mostr tienen diferentes niveles permitiendo un enfoque segn las necesidades de quien vaya a implantarlo. Los niveles de capacidad muestra el nivel de capacidad que tiene cada rea de proceso. Es decir, que tan bien se desempea la organizacin en un rea de proceso de forma individual. Los niveles de madurez clasifica a la organizacin en funcin en qu reas de proceso consiguen sus objetivos y se gestionan con principios de ingeniera. Es decir, cmo se desempea una organizacin en base a la capacidad y madurez en un conjunto de reas de proceso (Pantaleo, 2011). Las reas de proceso estn agrupadas en Soporte, Ingeniera, Administracin de proyectos y administracin de procesos en estas reas de proceso se puede implantar el modelo CMMI. El modelo CMMI comprende los siguientes componentes: 1) Objetivos. Debern ser satisfactorios en el resultado de su evaluacin. Hay dos tipos segn a donde se apliquen. Especficos para cada rea de proceso y genricos relacionados a la organizacin; 2) Prcticas. Comprenden las prcticas que se realizaron para cumplir satisfactoriamente los objetivos y 3) Subprcticas. Son componentes informativos que ayudan a la interpretacin e implementacin de las prcticas (Pantaleo, 2011). Para la implantacin del Modelo CMMI se toma en cuenta el proceso de mejoras con CMMI, abarca dos etapas las cuales continuacin se describen. 1) Estrategia. Consiste en un relevantamiento de la empresa. Consiste en una interaccin entre la tecnologa, organizacin y recursos humanos, con la finalidad de preparar a los miembros de la organizacin al cambio. Las actividades que se realizaran sern las siguientes: Elaboracin de reportes de resultados del trabajo de relevantamiento para utilizarse como base para el proceso de mejoras; invitacin a los integrantes a participar con su aportacin, elaborar plan de mejoras con un cronograma de tiempo del trabajo a realizar, objetivos individuales, asignacin de recursos humanos, materiales y de una persona encargada el proyecto (Pantaleo, 2011). 2) Metodologa de trabajo. Se realiza la mejora de procesos basada en el modelo IDEAL por sus siglas en ingls Initiating, Diagnosing, Establishing, Acting and Learning, las fases del proceso son cuatro, se describen a continuacin: a) Inicio. Aplicacin de SCAMPI por sus siglas en ingls Standard CMMI Appraisal Method for Process Improvement. Determina el nivel madurez o capacidad que
35
tiene la organizacin. Los resultados de SCAMPI permiten a la organizacin conocer la situacin actual de los procesos para establecer mejoras. El proceso de evaluacin del modelo SCAMPI. Est compuesto por tres fases que generalmente se aplican por 15 das aproximadamente (Pantaleo, 2011, pg. 177). Fase 1. Planear y preparar para el Appraisail (evaluacin). En esta fase se analizan los requerimientos, se desarrolla un plan de trabajo, se selecciona y prepara al equipo de trabajo, se obtienen y analiza la evidencia objetiva inicial. Fase 2. Conducir el Appraisal. En esta etapa se examina, verifica, valida y documenta la evidencia objetiva evaluando las prcticas. Se generan resultados calificando a la unidad organizacional. Fase 3. Informar resultados del Appraisal. En esta etapa se publican los resultados del Appraisal, se empaqueta y archiva las evidencias. b) Diseo. Se elabora el plan de implementacin de mejoras, plan de accin, se define la estructura del grupo responsable de la definicin de los procesos de la organizacin, documentacin de trabajo, capacitacin para todos los involucrados, se establecen proyectos pilotos, objetivos, cronogramas, recursos humanos. Todo lo correspondiente a la fase de diseo ser dispuesto segn las debilidades, fortalezas y oportunidades encontradas por SCAMPI. c) Piloto. Se da soporte a todos los integrantes del grupo de desarrollo para la implementacin del proyecto. Segn los resultados despus del soporte se realizan modificaciones y se institucionaliza. d) Implementacin. Se institucionaliza los resultados resultantes de la fase piloto, Los pilotos sern una buena estrategia para que las organizaciones las realice por ella misma (Pantaleo, 2011).
En este tema revisaste los modelos de evaluacin y mejora de procesos de software. El modelo ISO/IEC 15504 y el modelo CMMI permiten identificar la capacidad o madurez de todos o algunos procesos que intervienen en el ciclo de vida del software, detectan los puntos fuertes y dbiles de cada proceso y proponen un conjunto de actividades que guan a la organizacin hacia una mejora gradual y continuada de cada uno de estos procesos.
Autoevaluacin
El propsito de esta actividad es realizar un anlisis del avance que has tenido para detectar las reas de oportunidad respecto al estudio de la tercera unidad.
36
Autorreflexiones
Adems de enviar tu trabajo de la Evidencia de aprendizaje, ingresa al foro Preguntas de Autorreflexin y consulta las preguntas que tu Facilitador(a) presente, a partir de ellas elabora tu Autorreflexin en un archivo de texto llamado DMCS_U3_ATR_XXYZ. Posteriormente enva tu archivo mediante la herramienta Autorreflexiones.
37
Cierre de la unidad
En esta unidad se analizaron los modelos de calidad de software que han sido ms importantes en la Ingeniera de software ya que el desarrollo de software ha sido un mbito relevante para enriquecer aspectos de calidad en el software. Recuerda la calidad del software es el grado en que un software posee una combinacin de atributos deseables (Sanchez , 2012, pg. 284). Esto ha sido causa de que existan dos perspectivas de estudio: los modelos de calidad para el producto y modelos de calidad de proceso software. Los modelos clsicos como el de McCall, Bohm, el modelo ISO/IEC 9126 y el ISO/IEC 14598 han sido implantados en las organizaciones para favorecer a la calidad de producto. Mientras que los modelos CMMI y el modelo ISO/IEC 15504 se han clasificado en los modelos de calidad de proceso. Los modelos de calidad de producto software comprenden un conjunto de caractersticas y subcaractersticas que se relacionan entre ellas conformando el fundamento para especificar requerimientos de calidad y evaluarlas. Los modelos de calidad de proceso software orientan a la mejora de los procesos de una organizacin y la capacidad para gestionar el desarrollo, la adquisicin y el mantenimiento de productos y servicios. La asignatura Modelos de calidad de software impacta para el logro del xito en el desarrollo de software porque ser necesario implantar un modelo de calidad que gue el desarrollo del producto y/o procesos. Adems producir el producto software con normas de calidad permite que otros ingenieros desarrolladores de software mejoren el producto porque todo estar debidamente documentado. La organizacin que implante modelos de calidad conseguir una certificacin aadiendo prestigio a su producto y organizacin.
Para saber ms
Se recomienda que leas el libro Calidad en el desarrollo de software, Guillermo Pantaleo, Editorial Alfaomega. El captulo 7contempla cmo trabajar con modelos de desarrollo que te ayudarn a profundizar tus conocimientos. El link del sitio web comprende un libro de ttulo Organizacin y transformacin de los sistemas de informacin en la empresa del autor Carmen de Pablo Heredero, se recomienda que leas a partir de la pgina 202 el tema: La estandarizacin de las metodologas la ISO/IEC 12207 y mtrica 3 como complemento del modelo ISO/IEC 15504
38
Se recomienda que leas el libro Calidad de producto y proceso software, Coral Calero, Ma. ngeles Moraga y Mario G. Piattini. El Captulo 10 Calidad de componentes software. Contiene los tipos de modelos y la estructura del estndar ISO/IEC 9126-1 y el captulo 7 Calidad en uso contra calidad externa. Contiene el modelo de calidad ISO/IEC 9126.
En la siguiente pgina encontrars informacin en espaol de la ISO tambin puedes consultar la pgina en ingls. http://translate.google.com.mx/translate?hl=es419&sl=en&u=http://www.iso.org/&prev=/search%3Fq%3Dpagina%2Bprincipal%2Bde%2 BISO%26biw%3D774%26bih%3D603
Se recomienda buscar videos en internet sobre las normas revisadas en esta unidad.
Fuentes de consulta
Calero, C., Moraga, M. ., &Piattino, M. (2010). Calidad del producto y proceso software. Madrid, Espaa: RAMA Caponi, M., De Vera, D., Ibarra, J. L., &Fojo, S. (2014). Gestin de software, informe sobre evaluacin de productos, Universidad de la Repblica-Facultad de Ingeniera, Recuperado el 2014, de http://www.fing.edu.uy/inco/cursos/gestsoft/Presentaciones/Evaluacion%20de%20Product os%20-%20G2/Evaluacion%20de%20Productos.pdf
Melndez, K., & Dvila, A. (enero de 2005). Normas de calidad de producto software, versin 1.0, Universidad catlica del Per, Grupo de investigacin y desarrollo en
39
Pantaleo, G. (2011). Calidad en el desarrollo de software. Buenos Aires, Argentina: Alfaomega. PiattiniVelthuis, M. G., Garca Rubio, F. O., Garca Rodrguez de Guzmn, I., & Pino, F. (2012). Calidad de sistemas de informacin. Mxico, D.F.: Alfaomega Grupo Editor, S.A. de C.V. Picazzo M., C., Villegas M., N. M., &Tamura M., G. (2008). Anlisis descriptivo del proceso de implementacin del nivel 2 del modelo CMMI es una empresa regional de desarrollo de software, Sistemas & telemtica, Obtenido de http://www.icesi.edu.co/revistas/index.php/sistemas_telematica/article/viewFile/1001/1026
Plaza Garca, I., Medrano Snchez, C. T., & Posa Gmez, A. B. (2010). Calidad en actividades de I+D+i Aplicacin en el sector TIC. San Fernando de Henares, Madrid: RC Libros Rincn Gonzalez, A. J. (2014). ISO/IEC 14598. Obtenido de http://www.slideshare.net/rinconsete/isoiec-14598 Sanchez , S., Sicilia, M. ., & Rodrguez, D. (2012). Ingeniera del Software Un enfoque desde la gua SWEBOK. Madrid: Alfaomega Grupo Editor, S.A de C.V. Snchez Alonso, S., SiliciaUrbn, M. ., & Rodrguez Garca, D. (2012). Ingeniera del software. Mxico, D.F.: Alfaomega Grupo Editor, S.A. de C.V. Tuya, J., Ramos Roman, I., & Dolado Cosn, J. (2007). Tcnicas cuantitativas para la gestin en la ingeniera del software. Espaa: Gesbiblo, S.L
40