SciELO - Scientific Electronic Library Online

 
vol.11 número2Reparación de Data Warehouses con sentido semánticoAplicación informática basada en modelos matemáticos del secado natural de la mena laterítica índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

  • No hay articulos citadosCitado por SciELO

Links relacionados

  • No hay articulos similaresSimilares en SciELO

Compartir


Revista Cubana de Ciencias Informáticas

versión On-line ISSN 2227-1899

Rev cuba cienc informat vol.11 no.2 La Habana abr.-jun. 2017

 

ARTÍCULO ORIGINAL

 

Fundamentos para la definición de un modelo de evaluación de la calidad para GNU/Linux Nova

 

Foundations for the definition of a model of quality assessment for GNU / Linux Nova

 

 

Mónica Ma. Albo Castro1*

1 Facultad 1, Universidad de las Ciencias Informáticas. 2½ km Carretera S. Antonio de los Baños, La Lisa, La Habana. mmalbo@uci.cu

 

*Autor para la correspondencia: mmalbo@uci.cu

 

 


RESUMEN

La evolución de la industria del software ha establecido modelos de desarrollo que permiten obtener productos de alta calidad que aseguran la competitividad en el mercado. La gestión de la calidad del software tiene dos aristas fundamentales, la calidad del proceso y la calidad del producto, influyendo la primera en la segunda. Entre los distintos productos de software cuya calidad puede ser crítica para su utilización, se encuentran los sistemas operativos, las distribuciones GNU/Linux son una variante de propósito general, que han servido de solución para los países con menos recursos. La Universidad de las Ciencias Informáticas ha creado una distribución GNU/Linux que pudiera sustituir las plataformas privativas del país para contribuir al proceso de migración que se viene impulsando hace varios años. Para su desarrollo actualmente se cuenta con una metodología donde la gestión de la calidad tiene una definición abierta sobre cómo garantizar la calidad del producto y una disciplina de pruebas que verifica y valida los requerimientos definidos, sin embargo, no cuenta con un procedimiento que evalúe la calidad de los productos. El presente trabajo propone los elementos que debe incluir un modelo de evaluación de la calidad del producto para la distribución GNU/Linux Nova, a partir del estudio de estándares de calidad internacionales, modelos de calidad para software libre y a las particularidades de este tipo de productos.

Palabras clave: evaluación de la calidad, estándares de calidad, GNU/Linux Nova, modelos de calidad, software libre


ABSTRACT

The evolution of the software industry has established development models that allow to obtain high quality products that ensure competitiveness in the market. The quality management software has two main approaches, process quality and product quality, influencing one to in the other. Among the various software products whose quality can be critical for use are the operating systems, GNU/Linux distributions are a variant that have served as solution for countries with fewer resources. The University of Informatics Science has created a GNU/Linux distribution that could replace privative platforms to contribute to the process of migration to free software that has been promoting the country for several years.  For his development currently has a methodology, where quality management has an open definition on how to ensure product quality and has discipline of tests that verifies and validates the defined requirements, however, it does not have a procedure that evaluates the quality of products. This paper proposes the elements that should include an evaluation model of product quality for the GNU/Linux Nova distribution from the study of international quality standards, quality models for free software and the particularities of this type of product.

Key words: quality evaluation, quality standards, GNU/Linux Nova, quality models, free software


 

 

INTRODUCCIÓN

En la actualidad las tecnologías de la información y las comunicaciones (TIC) están presentes en todos los aspectos de la vida diaria y cada día se introducen nuevos aportes que las convierten en un elemento esencial de la misma. Esto ha sido posible por la evolución de la industria desarrolladora de software, lo cual ha fomentado la creación de aplicaciones que faciliten el uso de las tecnologías por todo tipo de personas sin importar las posibles limitaciones. Dichas herramientas permiten, además, aplicar las tecnologías en diversas actividades, como pueden ser las industriales y las económicas. La propia evolución de la industria del software ha establecido modelos de desarrollo que permiten obtener productos de alta calidad y competitividad en el mercado.

La calidad de software es un proceso que, aplicado de manera eficaz, genera un producto útil que proporciona un valor medible para los productores y los usuarios. Desarrollar software con calidad en tiempo y costos eficientes se puede conseguir aplicando buenas prácticas definidas en los diferentes modelos de desarrollo, entre las cuales se encuentra verificar continuamente la calidad del software (Pressman, 2015).

La gestión de la calidad del software tiene dos aristas fundamentales, la calidad del proceso de desarrollo y la calidad del producto, influyendo la primera en la segunda. Entre las actividades que incluye la verificación de la calidad se pueden encontrar las auditorías y revisiones a los procesos del desarrollo para garantizar su correcto desempeño; así como las pruebas de software evaluadoras del producto resultante del proceso.

Los estándares de calidad más difundidos en la industria de software (CMMI, ISO/IEC 9000, ISO/IEC 9126, entre otros) incluyen entre sus procesos de gestión de la calidad el aseguramiento de la calidad del software, tanto del proceso como del producto final, a través de diferentes actividades.

Entre los distintos productos de software, cuya calidad puede ser crítica para su utilización, se encuentran los sistemas operativos. Estos son el software que administra el hardware y proporciona las bases para las aplicaciones, actúa como intermediario entre el hardware y el usuario. Algunos se diseñan para ser prácticos, otros para ser eficientes y otros para ambos objetivos (Silberschatz et. al., 2011). Estas características los muestran como un tipo de software grande y complejo que requiere un proceso de desarrollo cuidadoso, en el que se diseñe y defina, pieza por pieza, el producto final. En la actualidad hay varios tipos de sistemas operativos (SO en lo adelante), pues estos pueden ser de propósito general o específico para una única funcionalidad, por ejemplo, los desarrollados para equipos médicos e industriales. Entre los de propósito general hay varios que han ganado un lugar significativo en el mercado como son: Microsoft Windows, MacOS y GNU/Linux.

Las distribuciones GNU/Linux son una variante de SO de propósito general surgidos como parte del movimiento de software libre (SWL en lo adelante) en su búsqueda por un entorno de desarrollo donde se pueda compartir los conocimientos. En Cuba, el movimiento de SWL, ha sido una solución para la creciente industria de desarrollo de software, la cual se estaba viendo afectada en el pago de licencias para la producción y comercialización de software sobre plataformas privativas. Por esta y otras razones, como la soberanía tecnológica, Cuba se encuentra hoy en un proceso de migración hacia plataformas de SWL y código abierto.

La Universidad de las Ciencias Informáticas (UCI) ha creado una distribución GNU/Linux que pudiera sustituir las plataformas privativas en la producción de software. A medida que fue creciendo la idea, se fundó un proyecto y, en el marco de la Feria Informática’09, se libera la primera versión oficial Nova Baire (1.2). Esta fue exitosa gracias a que cumplía con las características de calidad más visibles a un producto de este tipo, como son la funcionalidad y la eficiencia en equipos de bajas prestaciones. Sin embargo, aunque pocas, se reportaron algunas inconformidades de los usuarios, fundamentalmente referentes a la portabilidad del sistema y su usabilidad para usuarios inexpertos.

El éxito obtenido con esta primera versión del producto le valió para ser propuesto como una de las distribuciones a utilizar en el proceso de migración a SWL que se desarrolla en el país, esto amplió su objetivo a la creación de un sistema operativo orientado a usuarios inexpertos con este tipo de sistema o, incluso, con el trabajo en computadoras (GTNSWL, 2011). La liberación de una distribución GNU/Linux Nova que cumpla con parámetros de calidad internacionales es importante porque garantizará la calidad del proceso de migración a SWL que se desarrolla en el país. Además, optimiza el tiempo y los costos del desarrollo, lo cual permite ampliar la gama de productos para un mejor ajuste a las nuevas necesidades, y creará mejores oportunidades de insertar los productos en el mercado internacional.

Durante las primeras experiencias en la migración a SWL se evidenciaron problemas no detectados durante el desarrollo previo a la liberación. Los análisis realizados arrojaron que el proceso de desarrollo utilizado era empírico, omitía procesos básicos que garantizan el resultado del producto final. A partir de esto, se comenzó a trabajar en la introducción de un proceso de desarrollo formalizado a través de la aplicación de una metodología de desarrollo de software. Las particularidades de una distribución GNU/Linux, como producto de software, generaron dificultades en la aplicación de metodologías y modelos de desarrollo estandarizados e institucionalizados. Sin embargo, se realizaron investigaciones para la formalización de un proceso y una metodología de desarrollo ajustados a estas particularidades (Pierra, 2011; Fernández, 2013), todas se mantuvieron alineadas al desarrollo de SWL y a los modelos institucionalizados en la UCI por la Dirección de Calidad. La nueva metodología Nova Open-Up se puso en práctica a partir del año 2011 e incluye la disciplina de gestión de la calidad que tiene una definición abierta sobre cómo garantizar la calidad del producto. Además, incluye una disciplina de pruebas que permite liberar productos con menor número de no conformidades y aplica las buenas prácticas de CMMI para las áreas de Verificación y Validación (Fernández, 2013). Con este proceso de pruebas solo se realizan pruebas a las aplicaciones, las cuales se definen como requisitos funcionales de la distribución y las pruebas en distintos escenarios de hardware definidos en los requisitos no funcionales (Monteagudo, 2011).

El actual proceso de desarrollo de la distribución GNU/Linux Nova cuenta cómo único mecanismo de evaluación de la calidad con el proceso de pruebas, el cual no tiene en cuenta características clave para evaluar la calidad de un sistema operativo. Algunas de ellas son la estabilidad ante actualizaciones de seguridad y la robustez del sistema ante fallos. Estas representan elementos implícitos en un sistema operativo, y por consiguiente en una distribución GNU/Linux, no necesariamente definidos en los requerimientos explícitos; pero pueden afectar la calidad del producto final. Esta investigación tiene como objetivo establecer los elementos a incluir en un modelo de evaluación de la calidad del producto ajustado a estándares de calidad internacionales, al modelo de desarrollo de SWL y a las particularidades del proceso de desarrollo de la distribución GNU/Linux Nova.

 

MATERIALES Y MÉTODOS

Para lograr el objetivo de la presente investigación, se realiza el análisis de los estándares de referencia internacional sobre calidad de software, fundamentalmente aquellos que se enfocan en evaluar la calidad del producto, lo cual permite definir los elementos clave a incluir en cualquier modelo de evaluación de la calidad. Se valora desde las características e indicadores de medición de la calidad del producto de software hasta los pasos a seguir en el procedimiento de evaluación.

Además, se plasma una revisión documental sobre el modelo de desarrollo de SWL, al cual responde el proceso de desarrollo de la distribución GNU/Linux, así como una comparación de los procedimientos seguidos por otras distribuciones. Los elementos analizados confirman la necesidad de definir un modelo acorde a las particularidades de este tipo de producto y de acotar el resultado a un conjunto inicial de características e indicadores a incluir en el modelo.

Estándares internacionales de evaluación de la calidad del producto de software

Entre los estándares de calidad de referencia internacional analizados se encuentran la ISO/IEC 90003 (ISO/IEC, 2014), CMMI (SEI, 2010), la NC-ISO/IEC 9126 (NC, 2005), la ISO/IEC 14598 (ISO/IEC, 1999) y la ISO/IEC 25000 (ISO/IEC, 2006). De los dos primeros estándares se puede considerar las actividades propuestas por la ISO/IEC 90003 para la evaluación de la calidad del producto, totalmente alineada con CMMI, en cuanto a las buenas prácticas para las áreas de procesos de PPQA (Aseguramiento de la calidad del Proceso y el Producto), VER (Verificación) y VAL (Validación). Las cuales se pueden resumir en:

  • planificar la gestión de la calidad en conjunto con el proceso de desarrollo del software,

  • implicar en la evaluación de los requerimientos la definición de los requerimientos de calidad asociados a características de calidad de un producto de software,

  • definir criterios de aceptación del cliente para la validación del producto,

  • validar el producto a través de las pruebas, las cuales deben registrar el análisis de sus resultados.

En el caso de la ISO/IEC 9126, a diferencia de las anteriores, sí ofrece un modelo de calidad de los productos de software común, a través de la definición de seis características de calidad y un modelo de evaluación de los productos de software aplicando métricas. El aporte de esta norma a la evaluación de la calidad del producto radica fundamentalmente en:

  • proponer que las necesidades del cliente y los requerimientos en general sean asociados a las características de calidad a cumplir por el software;

  • definir características y atributos de la calidad del software para los distintos niveles de evaluación de la calidad;

  • proponer un grupo de métricas para la evaluación cuantitativa de la calidad del software.

Sin embargo, no define el procedimiento a seguir para realizar la evaluación de la calidad propiamente, lo que implica su utilización de conjunto con la ISO/IEC 14598 (ISO/IEC, 1999) como complemento a esta deficiencia. La utilización combinada de la NC-ISO/IEC 9126 y la 14598 permite elaborar y aplicar un procedimiento de evaluación cuantitativa de la calidad del producto de software para cualquier proyecto.

A partir de la necesidad de unificación y actualización de las normas antes mencionadas, pertenecientes a la primera generación de estándares de calidad, en 2005 surge la ISO/IEC 25000, conocida por SQuaRE (Evaluación y Requerimientos de Calidad de un Producto de Software, por sus siglas en inglés). Esta norma provee de una serie de estándares con una visión general de contenidos relativos a la calidad de un producto de software, modelos y definiciones, así como una guía para el correcto entendimiento de los estándares y la forma de aplicarlos (Capote, 2011). Las diferencias fundamentales con respecto a las características de calidad son la sustitución de la subcaracterística Idoneidad por un grupo más detallado de subcaracterísticas y la integración natural del modelo de calidad y las actividades de la evaluación logradas en este estándar (ISO/IEC, 2006).

Modelos de evaluación de la calidad de SWL

El modelo de desarrollo de SWL, desde el punto de vista del aseguramiento de la calidad, se sustenta en las actividades y procesos de pruebas del software. Este modelo tiene, como soporte de las pruebas, a las áreas clave de administración de la configuración y el seguimiento de fallas, consideradas también en los modelos tradicionales de aseguramiento de la calidad del software (Ruiz, Robinson, 2011; Zhao, Elbaum, 2003).

A partir de la expansión del SWL, incluso a entornos empresariales, fue necesario comenzar a valorar la aplicación de modelos de calidad y, por las particularidades del modelo de desarrollo propio del SWL, fueron surgiendo modelos de calidad específicos. Algunos de los más divulgados son OSMM (Open Source Maturity Model), QSOS (Qualification and Selection of Open Source Software Model), OpenBRR (Open Business Readiness Rating), Open BQR (OSSpal, 2016), SQO-OSS, QualOSS (Quality Open Sources), QualOSS (Quality Open Sources) y QualiSPo. Algunos de estos modelos ya no se desarrollan ni actualizan por no haber logrado amplia divulgación o aceptación (Wilson, 2011). Otros se centran en la calidad del proceso y no aportan novedades significativas con respecto a los estándares de referencia internacional. Del estudio realizado resalta, en el caso de OSMM, la inclusión de características de calidad como: la percepción de la comunidad y el uso diario (Gorhan et. al., 2012), esta última de gran utilidad para la evaluación de un sistema operativo; así como la comparación con productos similares como referencia (Wilson, 2010).

El modelo QSOS (QSOS, 2013) tiene muchas ventajas, entre ellas la práctica de una calificación a los productos completamente cuantitativa y en una pequeña escala, evitando las grandes variaciones (Gorhan et. al., 2012). Sin embargo, la aplicación de este, supone mucho tiempo y, precisamente, en la dinámica actual del desarrollo de SWL se busca liberar los productos con calidad, pero en el menor tiempo posible.

En el caso de SQO-OSS, se hace una propuesta interesante a partir de crear un observatorio de calidad del software para SWL. Se le aplica un conjunto de métricas creadas y utiliza la mayor cantidad posible de fuentes de indicadores de calidad (UENA, 2008). Aunque no aporta elementos significativos para el objetivo de esta investigación, se puede utilizar como referencia en trabajos posteriores más profundos con el objetivo de su posible implementación en el repositorio de la distribución GNU/Linux Nova.

Por último, QualiSPo define un modelo basado en la fiabilidad de los productos, propone dos vías para la evaluación; una subjetiva, consistente en preguntar a los usuarios cómo evalúan el comportamiento de las características definidas y, por otra parte, se va realizando una evaluación objetiva, a partir de las métricas aplicadas a las características en elementos observables del producto. La complejidad del modelo ha requerido el desarrollo o utilización de diferentes herramientas de apoyo a la recolección de los datos de las evaluaciones (Bianco et. al., 2010).

Procesos de pruebas de distribuciones GNU/Linux

Entre las diversas distribuciones GNU/Linux existe un conjunto que basan su desarrollo netamente en las comunidades, como es el caso de GNU/Linux Debian. Otras son desarrolladas por empresas, con el apoyo de la comunidad, entre estos casos se puede encontrar a Ubuntu y Fedora. Por último, se encuentran las distribuciones con licencias más restrictivas, las que generalmente poseen mayor robustez, pero a cambio de un costo monetario por obtener soporte del sistema, caso típico de la distribución Red Hat.

La diferencia en cuanto a quien lleva a cabo el desarrollo de una distribución implica que, en ocasiones, no es publicada la documentación sobre el proceso de desarrollo de la misma, aunque existen elementos clave en cuanto a los procesos de pruebas visibles en todas las distribuciones. Este es el caso de la liberación de versiones mínimamente funcionales con el objetivo de someterlas a prueba por la comunidad, tal como se mencionó anteriormente. Bajo el concepto de versión alpha (α), beta (β), testing y estable, las distribuciones GNU/Linux pasan por un exhaustivo ciclo de pruebas, que puede incluir en su equipo de probadores a usuarios finales con pocos conocimientos sobre informática. Este proceso, aunque permite involucrar al usuario en las pruebas del software para obtener mayor calidad, trae como desventajas:

  • Descontento de los clientes cuando alguna de las versiones, a pesar de ser intermedias, no cumple con sus expectativas.

  • Períodos de pruebas muy largos y dependientes de los errores reportados por la comunidad.

En el caso del proyecto Debian cuenta con un grupo de personas dedicadas al aseguramiento de la calidad del producto final liberado (QA group), reciben el apoyo de los desarrolladores a través del esfuerzo de estos por mantener los paquetes lo más libre de errores como sea posible. Adicionalmente, el proyecto se estructura en 3 distribuciones para facilitar el trabajo del grupo de aseguramiento de la calidad, estas son: Estable, Pruebas (testing), Inestable. Esta última es donde se cargan o ubican todos los paquetes de software inicialmente y comienzan a pasar por un conjunto de pruebas antes de su liberación. A partir de esta estructura un paquete pasa de una distribución a otra cuando cumpla determinados criterios definidos por el grupo QA. Además, cada cierto tiempo convoca a la comunidad a los llamados “bug squashing parties” con el objetivo de eliminar la mayor cantidad de errores posibles (Debian, 2016).

El proyecto Ubuntu, como Debian, cuenta con un equipo de calidad (QATeam) que se encarga de asegurar la calidad de los productos a liberar. Apoyado fuertemente en la comunidad, centra sus actividades en la realización de pruebas, ya sean manuales, automáticas, a la imagen del sistema, a las aplicaciones, entre otras clasificaciones (Canonical, 2016).

Por su parte, Fedora es un sistema operativo Linux desarrollado por el proyecto que lleva el mismo nombre, el cual es una colaboración de miembros de las comunidades de SWL a nivel mundial. Posee un proyecto de aseguramiento de la calidad encargado de mejorar continuamente la calidad de las liberaciones y actualizaciones de la distribución. La utilización de criterios de validación tiene como objetivo principal especificar claramente los criterios a cumplir por cada una de las liberaciones del producto. Esto ayuda a reducir la toma de decisiones subjetivas respecto a cuándo se está listo para entregar una versión del producto. Permite mostrar, a quienes no están involucrados en el desarrollo, los objetivos y metas de la versión en proceso de liberación. Además, ayuda a enfocar el propósito de la misma, evita tareas fuera del alcance y valora si se está en el camino correcto para lograr los objetivos. Los criterios de liberación pueden ser utilizados para valorar si los errores reportados son críticos para la finalización y posterior liberación del producto, estos se definen en función de los requisitos del producto (RedHat, 2016).

 

RESULTADOS Y DISCUSIÓN

Los elementos clave requeridos para definir un modelo de evaluación de la calidad del producto alineado a los estándares de referencia internacional y a las particularidades del desarrollo de SWL son:

  • un procedimiento que indique cómo realizar la evaluación de la calidad,

  • un conjunto de características o indicadores de calidad, que incluya a la comunidad,

  • un grupo de métricas que permitan establecer en qué medida se satisface cada característica.

Durante el análisis se pudo apreciar que las pruebas juegan un papel fundamental en la evaluación de la calidad del producto. Según Pressman las pruebas de software son un grupo de actividades que pueden ser planeadas según se avanza el desarrollo y realizadas sistemáticamente para comprobar la calidad del producto (Pressman, 2015). Como parte de la verificación de la calidad, las pruebas involucran la ejecución del software con datos de pruebas para evaluar las salidas y el comportamiento del mismo, chequeando su desempeño según lo especificado o deseado (Sommerville, 2011). Por ello, se analizaron los procesos de pruebas de otras distribuciones GNU/Linux, para lograr un procedimiento de evaluación de la calidad que reutilice actividades incluidas actualmente y que tributan al objetivo principal de garantizar la calidad del producto. Sin embargo, si se observa la Tabla 1, se evidencia que los procesos de pruebas analizados no establecen un procedimiento claro de evaluación de la calidad, solo establecen en alguna medida criterios de validación para considerar si el producto está listo para su liberación.

Para el caso de esta investigación se propone incluir en el proceso de pruebas de la distribución GNU/Linux Nova un procedimiento que incluya las siguientes actividades:

  1. Planificar la evaluación de la calidad como parte del sistema de gestión de la calidad conjunto con la planificación del proceso de desarrollo de la distribución.

  2. Establecer requerimientos de calidad a partir de la evaluación de los requerimientos de software definidos.

  3. Establecer una asociación directa entre los requerimientos de calidad y las características de calidad del producto de software, definidos en el modelo de calidad.

  4. Definir métricas de calidad y criterios de aceptación en función de las características y atributos requeridos por el producto de software.

  5. Ejecutar la evaluación de las métricas, análisis del cumplimiento de los criterios de aceptación, a partir de los resultados de las pruebas.

  6. Documentar e informar los resultados de la evaluación para la toma de decisiones.

Entre las características o indicadores a valorar durante la evaluación de los requerimientos se pueden considerar:

  • Seguridad

  • Confiabilidad: disponibilidad, recuperabilidad.

  • Usabilidad: experiencia de usuario.

  • Eficiencia: rendimiento (carga, operaciones Entrada/Salida).

  • Mantenibilidad: diagnosticabilidad, modificabilidad (estabilidad ante actualizaciones).

  • Portabilidad: adaptabilidad, instalabilidad.

  • Uso diario: estabilidad.

  • Percepción de la comunidad: credibilidad, aceptación

A partir de ellas se debe elaborar un conjunto de métricas y establecer los criterios de aceptación para la evaluación de la calidad de la distribución, previo a su liberación.

El actual proceso de pruebas de la distribución GNU/Linux Nova (Albo, 2013) se concentra en las pruebas del sistema e intenta contener algunos elementos de sus similares y buenas prácticas de los estándares de calidad institucionalizados por la Dirección de Calidad en la UCI. Define cuatro actividades: Planificación de las pruebas, Diseño de los casos de pruebas, Selección y/o implementación de las pruebas automáticas, Ejecución de las pruebas. En esta última actividad es donde se evidencia la estrategia de pruebas definida para el producto de software a evaluar, generalmente se realizan diferentes iteraciones, las pruebas a la versión Alpha, Beta, las pruebas de uso diario y las pruebas de aceptación (ver Figura 1). En el proceso definido se aplican las buenas prácticas de CMMI, además se evidencian, fundamentalmente en su integración al proceso de desarrollo, actividades de la ISO/IEC12207, ambos estándares establecidos como normativa por la Dirección de Calidad en la UCI.

El procedimiento propuesto por esta investigación para ser integrado al proceso descrito, generaría una nueva actividad de evaluación de los resultados de las pruebas (Evaluación de la Calidad). Los demás pasos del procedimiento se integran naturalmente al proceso como se venía realizando durante la planificación y el diseño de las pruebas (ver Figura 2).

Los elementos propuestos establecen la base para la definición de un procedimiento de evaluación de la calidad del producto en el proceso de desarrollo de la distribución GNU/Linux Nova, sin generar grandes cambios en las actividades realizadas y aporta un paso significativo hacia el objetivo principal de liberar un producto con mayor calidad. Una vez formalizado dicho modelo, deben analizarse todas las características y atributos que pudieran estar presente en cada una de las versiones del producto para ser incluidas en el modelo general. Además, deben generarse las métricas para evaluar cada atributo y los criterios que definen el grado de satisfacción o cumplimiento de cada uno. De esta manera, el modelo de evaluación de la calidad del producto, propio de la distribución, se encontrará alineado a los estándares de referencia internacional (además institucionalizados), a los modelos de calidad de SWL y a su proceso de desarrollo.

 

CONCLUSIONES

El estudio realizado durante la investigación permitió determinar que a pesar de la existencia de estándares internacionales de evaluación de la calidad del software y modelos para la evaluación de SWL, las distribuciones GNU/Linux no aplican durante su desarrollo ningún procedimiento, modelo o estándar para obtener una medida de su calidad.

La importancia de la distribución GNU/Linux Nova, por su protagonismo en el proceso de migración a plataformas de SWL llevada a cabo en el país, hace necesario garantizar la calidad del producto. La investigación propone elementos clave para definir un modelo de evaluación de la calidad del producto, para la distribución GNU/Linux Nova, alineado a estándares de referencia internacional y a modelos de calidad de SWL. El modelo definido deberá ser aplicado, a modo de prueba, antes de establecerlo como parte del proceso de desarrollo de la distribución GNU/Linux Nova.

 

AGRADECIMIENTOS

El trabajo con el equipo Nova Qalit (2010-2013) y el apoyo de los desarrolladores de Nova 2011 y 2013, permitieron recopilar la información necesaria para el desarrollo de esta investigación.

 

REFERENCIAS BIBLIOGRÁFICAS

ALBO CASTRO, Mónica M. Proceso de pruebas de la distribución cubana GNU/Linux Nova. [Soporte digital] 2013. [Consultado el: 20 de octubre de 2014].

BIANCO, V.; LAVAZZA, L.; et. al. The QualiSPo approach to OSS product quality evaluation. FLOSS '10 Proceedings of the 3rd International Workshop on Emerging Trends in Free/Libre/Open Source Software Research and Development. [En línea]. Base de Datos ACM, 2010 [Consultado el: 15 de abril de 2016]. Disponible en: http://dl.acm.org/citation.cfm?id=1833277

CANONICAL Ltd. Ubuntu Community. Wiki QATeam. [En línea]. Sitio oficial. [Consultado el: 20 de Octubre de 2014]. Disponible en: http://community.ubuntu.com/contribute/quality/.

CAPOTE, Tayche. Conceptualización e implantación de un Laboratorio Industrial de Pruebas de Software. Tesis de maestría. Universidad de Ciencias Informáticas, La Habana, 2011.

DEBIAN. Debian the universal operating system. Wiki page for Debian QA Group. [En línea]. Sitio oficial. [Consultado el: 20 de Octubre de 2014]. Disponible en:  https://www.debian.org/index.es.html.

FERNANDEZ, Yusleydi. Metodología para el desarrollo de la distribución cubana GNU/Linux Nova. Tesis de maestría. Universidad de Ciencias Informáticas, La Habana, 2013.

GORHAN, F.; HETTINGER, J.; SCHULZ, J., WOLTER, M. Development of a Model Evaluating the Maturity of Open Source Software. [En línea]. Tesis de grado. Baden-Wuerttemberg Cooperative State University, Alemania, 2012. [Consultado el: 13 de abril de 2016]. Disponible en: http://www.dhbw-stuttgart.de/fileadmin/dateien/KOS/2012/SEM_Development_of_a_Model_Evaluating_the_Maturity_of_Open_Source_Software.pdf

GTNSWL (Grupo Técnico Nacional de Software Libre), Guía Cubana para la migración a SWL. La Habana, 2011.

ISO/IEC, ISO/IEC 14598: Standard for Information Technology – Software product evaluation. Suiza, 1999.

ISO/IEC, ISO/IEC 25012: Software engineering: Software Quality Requirements and Evaluation (SQuaRE) – Data Quality Model. Canada, 2006.

ISO/IEC, ISO/IEC 90003, Software engineering — Guidelines for the application of ISO 9001:2008 to computer software. Suiza, 2014.

MONTEAGUDO, Lorena. Proceso de pruebas de la distribución GNU/Linux Nova. Trabajo de diploma. Universidad de Ciencias Informáticas, La Habana, 2011.

NC (Oficina Nacional de Normalización), Ingeniería de Software – Calidad del producto – Parte 1: Modelo de la Calidad (ISO/IEC 9126-1:2001, IDT). Cuba, 2005

OSSpal. Evaluating Open Source Software. [En línea]. Sitio oficial. [Consultado el: 14 de abril de 2016]. Disponible en: http://osspal.org/

PIERRA, Allan. Conceptualización y Reestructuración Estratégica de la Distribución Cubana de GNU/Linux “Nova”. Tesis de maestría. Universidad de Ciencias Informáticas, La Habana, 2011.

PRESSMAN, R. S. Software engineering: a practitioner's approach, 8va edición. McGraw-Hill Education, 2015. p. 412-430, 466-495.

QSOS Core Team. Qualification and Selection of Open Source software (QSOS). [En línea]. Sitio oficial, 2013. [Consultado el: 14 de abril de 2016]. Disponible en: http://www.qsos.org/Method.html

REDHAT INC. Fedora Project Wiki. [En línea]. Sitio oficial. [Consultado el: 6 de octubre de 2016]. Disponible en: https://fedoraproject.org/wiki/Fedora_Project_Wiki.

RUIZ, C.; ROBINSON, W. Towards a Unified Definition of Open Source Quality. IFIP Advances in Information and Communication Technology. [En línea]. 2011, Vol. 365, [Consultado el: 13 de abril de 2016]. Disponible en: http://link.springer.com/chapter/10.1007%2F978-3-642-24418-6_2

SEI (Software Engineering Institute), CMMI for Development, V1.3. EEUU, 2010.

SILBERSCHATZ, A.; GALVIN, P. B.; GAGNE, G. Fundamentos de sistemas operativos, 7ma edición. Madrid: McGraw-Hil/Interamericana de España, 2006. p. 2-3.

SOMMERVILLE, I. Software Engineering, 9na edición. Pearson Edition. Escocia, 2011. p. 513-588.

TAIBI, D.; LAVAZZA, L.; MORASCA, S. OpenBQR: a framework for the assessment of OSS. IFIP Advances in Information and Communication Technology. [En línea]. 2007, Vol. 234. [Consultado el: 14 de abril de 2016]. Disponible en: http://link.springer.com/chapter/10.1007%2F978-0-387-72486-7_14

UNIVERSIDAD DE ECONOMÍA Y NEGOCIOS DE ATENAS. Software Quality Observatory for Open Source Software. [En línea]. Reporte final del Proyecto. Grecia, 2008. [Consultado el: 14 de abril de 2016]. Disponible en: http://cordis.europa.eu/project/rcn/79362_en.html

WILSON, J. A. J. Open Source Maturity Model. OSS Watch, University of Oxford. [En línea]. 2010. [Consultado el: 13 de abril de 2016]. Disponible en: http://oss-watch.ac.uk/resources/archived/osmm#body.1_div.2

ZHAO, L.; ELBAUM, S. Quality assurance under the open source development model. Journal of Systems and Software. [En línea]. 2003, Vol. 66, no. 1. [Consultado el: 13 de abril de 2016]. Disponible en: http://www.sciencedirect.com/science/article/pii/S016412120200064X

 

 

Recibido: 02/09/2016
Aceptado: 13/02/2017

Creative Commons License Todo el contenido de esta revista, excepto dónde está identificado, está bajo una Licencia Creative Commons