Análisis de experiencias de mejora de procesos de desarrollo de software en PYMEs

Shirley Coque-Villegas
Universidad Politécnica Salesiana, Ecuador
Vanessa Jurado-Vite
Universidad Politécnica Salesiana, Ecuador
Allan Avendaño-Sudario
Universidad Politécnica Salesiana, Ecuador
Guillermo Pizarro-Vásquez
Universidad Politécnica Salesiana, Ecuador

Análisis de experiencias de mejora de procesos de desarrollo de software en PYMEs

Revista Ciencia Unemi, vol. 10, núm. 25, pp. 13-24, 2017

Universidad Estatal de Milagro

Los autores pueden mantener el copyright, concediendo a la revista el derecho de primera publicación. Alternativamente, los autores pueden transferir el copyright a la revista, la cual permitirá a los autores el uso no-comercial del trabajo, incluyendo el derecho a colocarlo en un archivo de acceso libre.

Recepción: 03 Agosto 2016

Aprobación: 06 Junio 2017

Resumen: Los servicios de las empresas de desarrollo de software se basan en producir productos de software de alta calidad. La calidad de los productos de software se asegura mediante la aplicación de prácticas de ingeniería de software a lo largo de todo el proceso de desarrollo. Para mejorar estos procesos, es necesario adaptar los modelos de proceso de mejora de software a las empresas de acuerdo con sus propias características. Este artículo ofrece un análisis de la aplicación de diversos modelos de mejora de procesos de software en pequeñas y medianas empresas. Finalmente, los resultados aquí presentados evidencian la influencia de los factores inherentes de las empresas y de sus equipos de trabajo en la elección de un modelo de proceso de mejora de software específico.

Palabras clave: mejora de procesos, calidad de desarrollo de software, mejora del desempeño de equipos de trabajo, ISO, IEC 29110, CMMI, Competisoft.

Abstract: Software development companies’ services rely on high quality software products. Software products quality is ensured by applying software engineering practices along all development process. In order to improve these process, it is require to adapt software improvement process models into companies according to their own characteristics. This paper offers an analysis of applying software process improvement models into small and medium size companies. Finally, results presented here evidence the influence of companies’ inherent factors and their work teams into choosing a specific software improvement process model.

Keywords: software process improvement, SPI, Quality of Software development, QoS, work team performance enhancement, ISO, IEC 29110, CMMI, Competisoft.

I. INTRODUCCIÓN

Las pymes resultan de gran importancia en la economía de Latinoamérica (Saavedra G. & Hernández C., 2008), representan el 89,85% del total de empresas de la región, de las cuales las miPymes constituyen el 99,12%. Un estudio realizado en varios países determina que, las microempresas cumplen un papel fundamental en la asignación de empleos, al contribuir con un promedio del 64,26% de puestos de trabajo.

La definición de pymes no posee una caracterización de reconocimiento internacional, incluso existen discrepancias dentro de un mismo país, en la mayoría de los casos se basa en el entorno económico y social; un estudio refleja que las pymes representan el 95% de las empresas (Ueki, Tsuji, & Cárcamo Olmos, 2005).

Las pequeñas y medianas empresas de software son una pieza importante de la industria (Muñoz, Gasca, & Valtierra, 2014), debido a que la mayoría de empresas desarrolladoras son pymes; estas pequeñas empresas con menos de 50 empleados, desarrollan productos significativos y necesitan de prácticas eficientes de Ingeniería del Software adaptadas a su tamaño y tipo de negocio (Fayad, Laitinen, & Ward, 2000).

Existe un gran interés de la comunidad de Ingeniería del Software sobre mejora de procesos aplicados al proceso de desarrollo de software (SPI por sus siglas en inglés – software process improvement) (Pino, García, & Piattini, 2006), esto se evidencia en el crecimiento del número de estudios realizados acerca del tema y que, en algunos casos se enfoca en pequeñas y medianas empresas (Kuhrmann , Konopka, Nellemann, Diebold, & Münch, 2015).

Es de vital importancia brindar a este tipo de empresas las herramientas necesarias para que puedan mejorar sus procesos paulatinamente, ya que por su tamaño no pueden ni deben manejarlos como lo haría una empresa de mayores dimensiones. El presente artículo brinda una revisión bibliográfica de modelos existentes para la mejora de procesos software, así como las experiencias de su aplicación, que contribuye a entender el entorno de su implementación.

II. DESARROLLO

1. Metodología

Pregunta y estrategia de la investigación

Según (da Costa Santos, de Mattos Pimenta, & Nobre, 2007) existen 4 elementos para la búsqueda de evidencias:

  1. 1. 1. Población: Grupos de elementos objeto de la revisión. Documentos que presenten y apliquen modelos de mejora de procesos software. Los términos utilizados han sido derivados de mejoras de procesos software, software process improvement, pymes desarrolladoras de software.

    2. Intervención: Elementos a ser evaluados dentro de la población definida. Estos son los factores que impactan en la aplicación de modelos de mejora de procesos. Los términos utilizados han sido derivados de implementación de mejora de procesos software en pymes.

    3. Comparación: Elementos que permiten comparar las intervenciones. Para el caso analizado no aplica.

    4. Resultados: Es la salida de la información que se espera de la investigación. Estudio primario o secundario de implementación de mejora de procesos software en pequeñas y medianas empresas. Los términos utilizados han sido derivados de factor y habilitador.

    La tabla 1 muestra las cadenas utilizadas para la búsqueda de información. En base a estas premisas se plantea la pregunta de investigación:

    Pregunta: ¿Cuáles son las mejores prácticas para la mejora de procesos en el desarrollo de software?

Tabla 1.
Recursos Bibliográficos de la Revisión de la Literatura
Palabras clave utilizadas en el estudio
Población software process improvement AND (“software process” OR Methodology OR Methods OR “software project” or “software development” OR “VSE”)
Intervención (adoption OR adopt OR implementation OR impact OR adaptation)
Resultados (Factor OR enable OR disable OR “Success factor”)
Estrategia de búsqueda Población AND Intervención AND Resultados
Para la búsqueda se utilizó las bibliotecas digitales: Latindex, Redalyc, ACM, Web of Science, Scielo, DOAJ, Scopus, ScienceDirect.

Trabajo con artículos identificados

Luego de la búsqueda y selección de recursos con información relevante acerca del tema, se contó con 34 recursos bibliográficos, los mismos que fueron distribuidos entre artículos científicos, documentos oficiales, libros y sitios web oficiales, como se muestra en la Tabla 2.

Tabla 2
Recursos Bibliográficos de la Revisión de la Literatura.
AñosArtículosRecurso WebTallerLibrosTotal
20001
200311
200511
2006224
2007212
20082114
200911
201022
2011 112
201222
201322
201421
2015617
20161 23
Total2371334
Los artículos mencionados en la Tabla 2, se encuentran indexados de la siguiente manera: Latindex 5; Redalyc 1; ACM 2; Web of Science 6; Scielo 3; DOAJ 1; Scopus 8; ScienceDirect 1.

De los 23 artículos mencionados, 3 son de carácter académico (sin revisión por pares); sin embargo, 16 artículos si son considerados como científicos.

Con los 34 recursos se procedió a organizar la información por temas y fechas de elaboración, dando como resultado la identificación de los siguientes modelos de mejora de procesos software: CMMI-SRP, CMMI, OWPL, COMPETISOFT, PRISMS, THEORICAL FRAMEWORK, ISO / IEC 29110, en el apartado de resultados se describe cada uno de ellos, junto con las experiencias encontradas.

2. Resultados

Modelos de Mejora de Procesos

La mejora de procesos significa comprender los procesos existentes y realizar cambios para incrementar la calidad del software o reducir costos y el tiempo de desarrollo. Un modelo de proceso de software consiste en la representación simplificada de un proceso (Sommerville, 2011). Existen dos enfoques en cuanto a modelos de mejora de procesos: el enfoque de madurez y el enfoque ágil. Los esfuerzos para conseguir un mejor producto software han derivado en el desarrollo de varios modelos de mejora de procesos, tal como se describe en la tabla 3.

Tabla 3
Modelos de Mejora de Procesos Software
Modelo de mejora de ProcesosPaís / CiudadAñoAutores
CMMI-SRPJordania2015Najjar & Al-Sarayreh
CMMI Colombia, Uruguay, Malasia2015J. Iqbal, R. B. Ahmad, M. H. N. M. Nasir, M. Niazi, S. Shamshirband y M. A. Noor.
OWPLCanadá2006Jean-Marc Desharnais, Claude Y. Laporte, Anabel Stambollian, Mohannad Zarour, Naji Habra, Alain Renault
COMPETISOFTMéxico2009Hanna Oktaba, Mario Piattini, Francisco J. Pino, María Julia Orozco, Claudia Alquicira
PRISMSReino Unido2003Allen, Ramachandran, & Abushama
THEORICAL FRAMEWORKUganda2015Edward Kabaale, Geoffrey Mayoka Kituyi
ISO / IEC 29110Canadá, Irlanda, Bélgica, Francia, Perú, Brasil2010O’Connor & Laporte, 2010
CMMI

CMMI (Capability Maturity Model Integration) es un modelo de madurez de mejora de los procesos para el desarrollo de productos y de servicios. Consiste en las mejores prácticas que tratan las actividades de desarrollo y de mantenimiento que cubren el ciclo de vida del producto, desde la concepción, la entrega y el mantenimiento (Konrad & Shrum, 2009). Trasladado a 10 idiomas, con presencia en 101 países, en los cuales 11 gobiernos lo utilizan como soporte para el desarrollo económico de sus naciones, hace que CMMI se convierta en un modelo consistente, y con un fuerte reconocimiento de su implementación. (CMMI Institute, s.f.)

El modelo se basa en determinar si una organización es madura o inmadura en sus procesos de desarrollo, para lo cual utiliza niveles de madurez y de capacidad. Los niveles de madurez están codificados de la siguiente forma: 1.Inicial, 2.Gestionado, 3.Definido, 4.Cuantitativamente gestionado y 5.Optimizado, los que se pueden trabajar por etapas o por áreas; los niveles de capacidad en una representación por etapas se determinan como: 0.Icompleto, 1.Realizado, 2.Administrado, 3.Definido, 4.Cuantitativamente Administrado, 5.Optimizado (Díaz, Rodríguez, Valencia, Saldaña , & Miguel, 2013)

El CMMI está orientado a tres áreas de interés: Desarrollo de productos y servicios. (CMMI for Development – CMMI-DEV); Establecimiento de servicios, Gestión. (CMMI for Services – CMMI-SVC); Adquisición de Productos y Servicios. (CMMI for Acquisition – CMMI ACQ). (González Yepes, Calvache Pardo, & Gómez Gómez, 2015)

Experiencias

En las experiencias aplicadas a Pymes, el CMMI no fue implementado en todos sus niveles, como se detalla a continuación:

CMMI-SRP (3 niveles de madurez)

Un estudio en Jordania, propuso un modelo denominado CMMI-SRP, para la mejora de los procesos en la Ingeniería de Requisitos, está basado en el estándar CMMI-DEV 1.3, que originalmente tiene cinco niveles de madurez, que fueron reducidos a tres para esta implementación, los niveles que se definieron en esta propuesta fueron:

  1. 0. Incompleto, indica que no se realiza o se lleva a cabo en forma parcial, por lo que este nivel no tiene un objetivo para la Ingeniería de Requisitos.

    1. Realizado, se ejecutan los objetivos y las prácticas de la Ingeniería de Requisitos, se definen cinco áreas: obtención, análisis, especificación, validación y gestión de requisitos.

    2. Gestionado, está planificado y realizado de acuerdo a las políticas de la organización, en donde se establecen las áreas que son el proceso de apoyo a este nivel de madurez.

    Este trabajo presenta una guía detallada para la evaluación y la mejora de los procesos de Ingeniería de Requisitos, quedando pendiente la experimentación que permita evaluar el modelo propuesto (Najjar & Al-Sarayreh , 2015).

    CMMI-para grupos pequeños (2 niveles)

    La mejora de procesos software en las pequeñas empresas tiene resultados que no son altamente satisfactorios, en esta implementación realizada en Malasia y Pakistán, se trata de apoyar el CMMI con nivel de madurez 2, algunas de las experiencias indican que el CMMI es útil para la Pymes cuando el entorno de la empresa es tomado en cuenta, además establece una relación entre la calidad de los productos software, con la calidad del proceso que produce software. (Iqbal et al., 2015).

    Es posible alcanzar el nivel de madurez 2 usando metodologías ágiles, si se tienen en cuenta un conjunto de activos de procesos. La demostración se la realizó para una empresa pequeña desarrolladora de software. Se concluye que las empresas pequeñas pueden conseguir una certificación CMMI utilizando métodos ágiles en el desarrollo de software (Hurtado & Bastarrica, 2006).

    OWPL

    El modelo fue diseñado, para ser utilizado por pequeñas y medianas empresas dedicadas al desarrollo de software, para la mejora de procesos, con la finalidad de evitar una alta inversión de recursos (CETIC, 2006).

    El componente principal es el proceso, el que se define de acuerdo con el objetivo de la empresa; en este modelo se definen diez procesos: gestión de requisitos, documentación, planificación de proyectos, seguimiento de proyectos, desarrollo, pruebas, la gestión de la configuración, gestión de subcontratos, control de calidad, la experiencia de capitalización. Un conjunto de prácticas establece el proceso, cada práctica tiene cinco atributos: objetivos, entradas, salidas, recursos y el peso que tiene en la consecución del proceso. Además, son considerados factores de éxito: la organización, la política de gestión, la motivación de las personas y los medios tecnológicos (Renault, et al., 2006).

    Experiencias

    De forma general, las prácticas aplicadas al desarrollo de software en empresas pequeñas no están definidas; pero es factible emprender un proceso de mejora, sin tener que invertir recursos tan grandes. Se establece que el OWPL es un marco diseñado para estos fines, con niveles que permiten en su etapa 3 conseguir una evaluación CMM o una ISO 15504. El estudio enfatiza la aplicación del modelo en una docena de empresas pequeñas, dedicadas al desarrollo de software, establecidas en tres países diferentes (Desharnais J.-M. , et al., 2007)

    En un estudio que se realizó durante 7 años, en varios países, se realiza la evaluación del modelo propuesto, para la mejora de procesos software, los ejes utilizados para esta evaluación fueron: Calidad, Clientes, Subcontratistas, Proyectos y Desarrollo, Producto, Recurso Humano; considerando que antes de emplear el OWPL, se realice una pequeña evaluación de los procesos que se llevan dentro de la organización; las observaciones realizadas, confirman que la micro-evaluación es una herramienta muy atractiva para las empresas pequeñas, que desean acceder a una certificación a través del modelo OWPL, ya que tiene una buena relación costo-beneficio, siendo una alternativa para los equipos de desarrollo pequeños con un bajo nivel de madurez (Desharnais J.-M. , Laporte, Habra, Renault, & Alexandre, 2008).

    COMPETISOFT

    Competisoft es un proyecto que consta de tres modelos: El modelo de procesos, un modelo de evaluación y un modelo de mejora. El modelo de procesos es una evolución y refinamiento del modelo propuesto en MoProSoft (Modelo de Referencia de Procesos para la Industria de Software), al que se añadió varios elementos de MANTEMA (metodología de mantenimiento de software). Agrupa los procesos en tres categorías principales: Alta dirección que incluye la Gestión del Negocio; Gerencia cuyos procesos son: gestión de cartera de proyectos, gestión de recursos, gestión de procesos, gestión de recursos humanos, gestión de bienes, servicios e infraestructura, gestión de conocimiento; y por último Operación en donde se incluye las prácticas de los proyectos de desarrollo y mantenimiento de software agrupadas en tres procesos: Administración del Proyecto, Desarrollo de Software y Mantenimiento de Software. Estos procesos tienen cinco niveles de madurez: 1.Realizado, 2.Gestionado, 3.Establecido, 4.Predecible, 5.Optimizado (Oktaba, Piattini, Pino, Orozco, & Alquicira, 2009).

    El modelo de mejora propuesto en Competisoft está definido por los siguientes componentes: PmCompetisoft que comprende una guía para la mejora continua de procesos y una herramienta software; METvalCompetisoft consiste en una metodología para la valoración de los procesos; PfemCompetisoft, que comprende una guía para formular y ejecutar mejoras utilizando Scrum (Proyecto Competisoft, 2008).

    Experiencias

    Competisoft es un modelo aplicado en varios países de Iberoamérica como: España, Argentina, Perú, Colombia.

    En Colombia se aplicó el modelo Competisoft en cinco pequeñas empresas dedicadas al desarrollo de software, con la finalidad de mejorar procesos. La aplicación fue realizada por estudiantes universitarios de los últimos niveles. La implementación de Competisoft fue exitosa en tres de las cinco empresas, ya que el éxito depende del compromiso de la alta gerencia, de la actitud visionaria; también influye la cultura de cada empresa cuando se debe adoptar nuevas metodologías. Se debe contar con la total disposición del personal de la organización y de los directivos para adoptar nuevos métodos que incrementen la calidad de su desempeño (Aguirre, Pardo, Pantoja, Mejía, & Pino, 2010).

    En un estudio realizado a una empresa argentina, según (Martinez, Ramon, & Bertone, 2012) el primer beneficio que se obtuvo de aplicar Competisoft a partir de Scrum, fue la formalización del proceso de desarrollo de software, esto debido a que tanto el modelo Competisoft como la metodología Scrum, establecen un marco metodológico para guiar el proceso de desarrollo de productos software. Para lograr que el modelo y la metodología ágil funcionaran fueron necesarias ciertas condiciones como: la responsabilidad de la gerencia, capacitación del directorio, comunicación basada en la confianza, participación activa del cliente, disciplina durante la implementación.

    En Perú, el esfuerzo desarrollado ha permitido validar el modelo a través de pruebas controladas en empresas, además de establecer una relación especial entre las universidades y las empresas que han participado de estas iniciativas de mejora de procesos. El proyecto permitió obtener un conjunto de beneficios y resultados tanto para empresas, como para profesionales y académicos. Las lecciones aprendidas que más se destacan son: acuerdo formal de colaboración, que permitió trabajar de manera ordenada y en conjunto; prácticas de Ingeniería de Software en pymes, que condujo a reconsiderar los contenidos académicos en función de las empresas pequeñas; aprendizaje por la acción, los estudiantes fueron participantes activos del proceso; oportunidades universidad-empresa, propuesta de proyectos en conjunto para desarrollo de productos software; relación entre universidades, las instituciones participantes han mejorado su relación con respecto a la Ingeniería de Software lo que ha permitido establecer otras iniciativas conjuntas o colaboraciones en otros contextos (Dávila, et al., 2012)

    THEORETICAL FRAMEWORK

    En el caso de Uganda, existe un estudio acerca de un marco de trabajo teórico para ayudar a pequeñas y medianas empresas de software a mejorar la ingeniería de requisitos (RE) y mejora de procesos (PI), considerados como factores claves para determinar la calidad del software. El theoretical framework se basa en las prácticas utilizadas en los procesos competentes a la ingeniería de requisitos que son utilizados en la organización, el proceso es: Evaluar la estrategia de RE y PI, obtener los requisitos, refinar los requisitos, implementar los requisitos. Es determinante la participación con el usuario, uso de la mejora de procesos en la Ingeniería de Requisitos, Gestión del cambio, Formación y educación, Apoyo a la gestión y compromiso (Kabaale & Mayoka Kituyi, 2015).

    Experiencias

    La aplicación del theoretical framework se realizó en 4 organizaciones y fueron consultados 40 expertos, la validación del marco se realizó considerando: la funcionalidad del marco, facilidad de uso, comprensible, consistente y aplicable. Los resultados indican que el marco de trabajo propuesto puede ser beneficioso en la ingeniería de requisitos, así como en la mejora de procesos, para las pequeñas empresas. El marco fue fácil de usar ya que es fácil de aprender y comprender, requiere poco tiempo o ningún entrenamiento para ser utilizado; comprensible en cuanto al uso de un lenguaje sencillo, los pasos a seguir y el flujo sistemático de las fases; consistente en cuanto al uso de términos y flujo lógico de los procesos de aproximación; aplicable y sistemático en términos de su flexibilidad para diferentes entornos (Kabaale & Mayoka Kituyi, 2015).

    PRISMS

    Las principales características del proceso PRISMS es que los objetivos de la mejora de procesos están relacionados explícitamente con los objetivos del negocio, los que se utilizan para seleccionar y priorizar áreas clave del proceso de mejora; el uso de un método de evaluación simplificada y adaptable basado en CMM; la definición y el uso de métricas desde el primer momento; además de mecanismos para fomentar la máxima transparencia en el proceso y la participación de todas las partes interesadas (Allen, Ramachandran, & Abushama, 2003).

    Experiencias

    Un grupo de investigadores, aplicaron el modelo en cuatro empresas radicadas en el Reino Unido, caracterizadas como pequeñas y medianas, los resultados iniciales del proyecto indican que los directores técnicos, están a favor de la mejora del proceso software; se evidencia más resistencia por parte de los desarrolladores de software, debido a la documentación que deben generar, lo que implica detener de cierta forma sus actividades cotidianas; para evitar este inconveniente es preciso mantener al mínimo los requerimientos de documentación. Es importante destacar que las mejoras se aplican en áreas clave del proceso de recuperación, lo que proporcionará cambios visibles dentro de un período bastante corto (Allen, Ramachandran, & Abushama, 2003). ISO /IEC 29110 La ISO/IEC 29110 es un estándar internacional que ofrece un marco de trabajo basado en perfiles de ciclo de vida y lineamientos para el desarrollo de sistemas de información dirigido a empresas muy pequeñas (González Yepes, Calvache Pardo, & Gómez Gómez, 2015).

    Fue desarrollada por el Comité Técnico Conjunto ISO/IEC JTC- 1, Tecnología de información, Sub-comité SC 7, Ingeniería de Software y sistemas (Laporte, Séguin, Villas Boas, & Buasung, 2013), debido a que las pequeñas y medianas empresas tienen dificultades para implementar un modelo de madurez como CMMI, era necesario contar con una norma que se ajuste a los requerimientos de las Pymes.

    Para el desarrollo de esta norma, se tomó un conjunto de factores como: los perfiles de microempresas que no desarrollen software crítico, selección y adecuación de subgrupo de procesos de ISO/IEC 12207 que apliquen para pequeñas empresas y elaboración de directrices, listas de control, plantillas y ejemplos.

Tabla 4.
Público objetivo ISO/IEC 29110
ISO/IEC 29110TITULO AUDIENCIA
Parte 1Visión GeneralEmpresas, evaluadores, desarrolladores, consultores, etc
Parte 2Marco de Referencia y TaxonomíaNormalizadores, desarrolladores, consultores, No es para las empresas.
Parte 3 Guía de EvaluaciónEvaluadores y empresas.
Parte 4Especificaciones de los PerfilesNormalizadores, desarrolladores, consultores. No es para empresas.
Parte 5Guía de Gestión e Ingeniería Empresas.
Fuente: Tomado de (Laporte, Séguin, Villas Boas, & Buasung, 2013) ISO/IEC 29110 ofrece un marco de trabajo que consta de 5 partes como se muestra en la tabla 4, y se describen en (ISO/IEC JTC 1/SC 7, 2011) de la siguiente manera:

  1. Parte 1: Introduce los procesos, los conceptos de ciclo de vida y de la normalización, y la serie de ISO/IEC 29110. También introduce las características y requisitos de una Pymes y clarifica la lógica de los perfiles, documentos, normas y guías específicas de Pymes.

    Parte 2: Establece la lógica detrás de la definición y la aplicación de los perfiles normalizados. Especifica los elementos comunes a todos los perfiles normalizados (estructura, conformidad, evaluación) e introduce la taxonomía (catálogo) de los perfiles.

    Parte 3: Define las directrices de evaluación de procesos y los requisitos de cumplimiento necesarios para cumplir el propósito de los Perfiles. También contiene la información que puede ser útil para los desarrolladores de los métodos y las herramientas de evaluación.

    Parte 4: Proporciona la especificación para todos los perfiles, en un grupo de perfil que se basan en los subconjuntos de los elementos de normas apropiadas.

    Parte 5: Proporciona una gestión de implementación y una guía de ingeniería para el perfil de VSE descrito en la parte 4.

    Cuenta con perfiles (entrada, básico, intermedio y avanzado) con un enfoque progresivo, lo que permite ser implementado por microempresas en sus estados iniciales (pequeños proyectos de corta duración) hasta microempresas que deseen avanzar como desarrolladoras de software (Laporte, Séguin, Villas Boas, & Buasung, 2013).

    Experiencias

    En Canadá un estudio piloto se ha llevado a cabo en un departamento de TI; un analista y tres desarrolladores, que implementaron 3 DPs (Deployment Package – Paquetes de puesta en operación): requisitos de software, control de versiones, gestión de proyectos. En Bélgica una microempresa de 25 personas comenzó con una evaluación de procesos, con el objetivo de identificar las fortalezas y debilidades en el desarrollo de procesos relacionados. Esta compañía trabajó en la mejora de acciones basadas principalmente en los siguientes paquetes de distribución: análisis de requisitos, control de versiones, gestión de proyectos. En Irlanda una microempresa de 8 personas trabajó en la mejora de gestión de proyectos, seguimiento y control de las prácticas utilizando el paquete de implementación de Gestión de Proyectos (O'Connor & Laporte, 2010).

    CSIT, es una empresa de ingeniería con sede en Montreal – Canadá, especializada en la integración de sistemas interactivos, comunicación y seguridad en el ámbito del transporte público de trenes, metro y autobuses, así como estaciones y paradas; llevó a cabo un proyecto para definir e implementar procesos para la gestión de proyectos e ingeniería de sistemas, la nueva norma ISO / IEC 29110 para la ingeniería de sistemas se ha utilizado como principal referencia para el desarrollo de sus procesos (Laporte, VSE Pilot Project website public website, s.f.).

    En (Larrucea, O'Connor, Colomo-Palacios, & Laporte, 2016) se indica haber realizado evaluaciones en 74 empresas pequeñas basadas en el perfil básico, donde se destaca que las áreas con mayores problemas son la de implementación de software, verificación y validación, prueba de casos, prueba de procedimientos, componentes de software y arquitectura de software y diseño detallado.

    Bit Perfect, una microempresa de 4 personas, creada en 2012 por dos ex alumnos del programa de Ingeniería de Software de la Universidad Peruana de Ciencias Aplicadas (UPC), fue auditada con éxito en el 2014; la organización de auditoría Brazilain emitió un certificado de conformidad de los procesos de gestión de proyectos y la implementación de software de la norma ISO / IEC 29110 perfil básico, y se convirtió en la primera organización en América del Sur (fuera de Brasil) en obtener una certificación ISO / IEC 29110 por sus procesos de desarrollo de software (Laporte, VSE Pilot Project website public website, s.f.).

    Las certificaciones internacionales pueden mejorar la credibilidad, la competitividad y el acceso a los mercados nacionales e internacionales. Brasil ha dado lugar al desarrollo de un proceso de certificación 29110 ISO / IEC. Un auditor ISO/IEC 29110 debe ser competente en técnicas de auditoría, tener experiencia en ISO/IEC 29110 y experiencia en sistemas o desarrollo de software. Para las microempresas, tal certificación debe ser corta y barata. El proceso de certificación ha sido probado con éxito en pocas empresas pequeñas de origen brasileño. El sistema de certificación, que se describe en la norma ISO/IEC 29110-3-2 se basa sobre las normas ISO sobre evaluación de la conformidad (Laporte & O’Connor, A Systems Process Lifecycle Standard for Very Small Entities: Development and Pilot Trials, 2014). (Error 1: La referencia (Laporte & O’Connor, debe estar ligada) (Error 2: El tipo de referencia (Laporte & O’Connor, es un elemento obligatorio) (Error 3: No existe una URL relacionada)

    En la figura 1, se muestran las etapas del proceso de certificación. En la primera etapa, la microempresa aplica para al proceso de auditoría y si tiene éxito, se crea un acuerdo comercial y técnico en el cuerpo de la acreditación. Se empieza la segunda etapa, si tiene éxito, el resultado final es la certificación inicial de la microempresa por un período de tres años. La tercera etapa implica la realización de dos auditorías de vigilancia uno y dos años después de la obtención de la certificación inicial. Por último, la cuarta etapa es la renovación de la certificación de la microempresa una vez que haya transcurrido el ciclo de certificación de tres años (García Paucar, Laporte, Arteaga, & Bruggmann, 2015).

Etapas del proceso de certificación ISO/IEC 29110
Fig. 1.
Etapas del proceso de certificación ISO/IEC 29110
Fuente: Adaptado de (Laporte & O’Connor, A Systems Process Lifecycle Standard for Very Small Entities: Development and Pilot Trials, 2014)

En Ecuador en 2015, el Servicio Ecuatoriano de Normalización (INEN) adoptó la norma ITE INEN-ISO/IEC TR 29110-1 Primera edición 2015-01, este informe técnico es una traducción idéntica del Informe Técnico Internacional ISO/IEC TR 29110-1:2011, la adopción de esta norma es responsabilidad del Comité Técnico de Normalización del INEN. (INEN, 2015)

3. Discusión

Tabla 5.
Comparación de modelos CMMI, Competisoft e ISO/IEC 29110
ModeloNivelesCategorías de ProcesoResultados de experiencias en pymes
CMMI5 niveles de madurez, 6 niveles de capacidad4 (Soporte, Gestión de proceso, Gestión de proyectos, Ingeniería)Satisfactorias en los niveles 2 y 3
Competisoft5 niveles de madurez3 (Alta Dirección, Gerencia, Operación)Fue desarrollado para pymes
ISO/IEC 29110 (En desarrollo)4 perfiles (Desarrollado solo el perfil básico)2 desarrollados del perfil básico (Gestión del Proyecto, Implementación del software)Fue desarrollado para pymes, ha sido utilizado por este tipo de empresas en Canadá, Bélgica, Irlanda, Perú
Se han desarrollado varios modelos para medir la madurez de los procesos de desarrollo de software; el resultado de la presente investigación indica que los modelos que han sido evaluados en gran variedad de Pymes son los mostrados en la tabla 5. Estos modelos han desarrollado en común que la medición de los procesos se realice por etapas, denominadas perfiles en la ISO/IEC 29110 y niveles en CMMI y Competisoft; las implementaciones de estos modelos en Pymes se han realizado considerando procesos específicos del desarrollo de software.

Los modelos de mejora de procesos presentados en la tabla 5, convergen en la mejora de procesos de la gestión del proyecto que considera puntos importantes como la planificación, ejecución, evaluación y control y el cierre del proyecto; también todos tienen puntos de acción sobre la implementación en donde se consideran los requerimientos, la construcción, integración, verificación, validación y la entrega del producto.

Los estudios analizados demuestran que se puede realizar la implementación de un modelo de mejora de procesos robusto y consistente como CMMI, con la diferencia de que no se puede establecer todos sus niveles de madurez del proceso. En algunos casos, se puede determinar un modelo de madurez basado en CMMI que contiene tres niveles, aplicables a los procesos incluidos en la Ingeniería de Requisitos (Najjar & Al-Sarayreh , 2015); también se puede implementar una versión de CMMI de dos niveles que puede alcanzar la certificación, utilizando metodologías ágiles (Iqbal, y otros, 2015); es importante destacar que lograr la certificación no solamente depende de la aplicación del modelo; se debe considerar factores ajenos al modelo, como el entorno de la empresa, la relación entre la calidad de los productos con la calidad del proceso, lo que es determinante para el éxito o fracaso de la aplicación del CMMI como modelo de mejora de procesos.

Competisoft es un modelo concebido para ser aplicado en pymes (Oktaba, Piattini, Pino, Orozco, & Alquicira, 2009); pero su aplicación se determina por el compromiso de la alta gerencia, la actitud, la cultura empresarial, la disposición del personal (Aguirre, Pardo, Pantoja, Mejía, & Pino, 2010). Este modelo también se utiliza con metodologías ágiles, pero depende en gran parte de la responsabilidad y disciplina del equipo de trabajo. (Martinez, Ramon, & Bertone, 2012); la aplicación de Competisoft, permite que las empresas aporten no solamente a sus procesos internos, sino a cambios en la academia, en relación a la Ingeniería de Software (Dávila, et al., 2012).

La ISO/IEC 29110 nace como el estándar para la aplicación de la mejora de procesos, definida de forma íntegra para las pequeñas empresas. Contiene perfiles para determinar el nivel de madurez (Laporte, Séguin, Villas Boas, & Buasung, 2013); los procesos que se involucran en esta norma son: análisis de requisitos, control de versiones y gestión de proyectos (O'Connor & Laporte, 2010); a pesar de que tiene pocos años, ya existe una empresa certificada en el perfil básico (Laporte, VSE Pilot Project website public website, s.f.).

Para lograr un mejor factor de éxito, utilizar una herramienta como la microevaluación antes de la aplicación de un modelo, puede ser de gran ayuda (Desharnais J.-M. , Laporte, Habra, Renault, & Alexandre, 2008); cuando se desea conseguir una certificación CMM o ISO (Desharnais J.-M. , et al., 2007), a través del OWPL; para este modelo, se consideran otros factores que afectan la mejora de procesos como la organización, la política de gestión, la motivación(Renault, et al., 2006).

Las experiencias en la aplicación de un modelo de mejora de procesos en pymes, indican que se puede crear o acoplar un modelo de mejora, pero esta ceñido no solamente a los parámetros que contiene el modelo; se debe afrontar en gran medida la resistencia al cambio, la cultura organizacional, la motivación y predisposición de los equipos de trabajo, el apoyo incondicional de la gerencia, la comunicación eficiente; este conjunto de factores indica que el éxito de aplicar un modelo de mejora de procesos, en pymes, está relacionado con el compromiso de las partes involucradas, más allá de elegir el modelo apropiado, se debe contar con las personas comprometidas a ese cambio.

III. CONCLUSIONES

Las pequeñas y medianas empresas son consideradas como el motor principal de la economía a nivel global, es imperante incluirlas en procesos que buscan mejorar la calidad de sus productos.

Los esfuerzos realizados para considerar la mejora de procesos de desarrollo de software, como una herramienta fundamental para mejorar la calidad del software y el rendimiento de los equipos de trabajo, han ido evolucionando a través del tiempo y del entorno en donde fueron aplicados y que, dependen en gran medida de ese entorno y, de los factores internos como las personas y la cultura organizacional.

Las experiencias analizadas demuestran que la aplicación de la mejora de procesos se puede realizar en uno o varios procesos software como la ingeniería de requisitos, la gestión de proyectos, control de versiones, etc., y que se puede ser combinada inclusive con prácticas como los métodos ágiles.

Los modelos de mejora de procesos han evolucionado para ser aplicados a empresas clasificadas como Pymes, además se han desarrollado modelos que han sido aplicados considerando la realidad cultural, social y económica de la región en donde se utilizaron, debido a que los modelos propuestos pueden ser muy ambiciosos para pequeñas empresas cuya caracterización difiere en tamaño, recursos y los equipos de trabajo.

El CMMI es un modelo de mejora de procesos software muy utilizado, que define niveles de capacidad y madurez que son inalcanzables para empresas muy pequeñas, la experiencia indica que se pueden alcanzar algunos de ellos, pero no todos.

El desarrollo de la norma ISO 29110, indica la importancia de la aplicación de la mejora de procesos software, su incidencia en los procesos de desarrollo, puede derivar en mantener un equipo motivado, procesos altamente definidos que influyen directamente en el producto final; incluso ya existe un esquema de certificación que bien inducido podrá afectar directamente al crecimiento personal y profesional de los equipos de desarrollo de software y la oportunidad de acceder a mercados internacionales.

La norma ISO 29110, es una oportunidad para las Pymes de los países de Latinoamérica como la aplicación de un modelo de mejora de procesos en el desarrollo de productos software; incluso para aquellos que establecieron a COMPETISOFT como su modelo a seguir y que de alguna forma no se pudo establecer como un estándar a nivel regional.

Referencias

Aguirre, A., Pardo, C., Pantoja, W., Mejía, M., & Pino, F. (2010). Reporte de experiencias de la aplicación de competisoft en cinco mipymes colombianas. Revista EIA(13), 107-122.

Allen, P., Ramachandran, M., & Abushama, H. (2003). PRISMS: an approach to software process improvement for small to medium enterprises. Proceedings of the Third International Conference On Quality Software (QSIC’03) IEEE, 211-214.

CMMI Institute. (s.f.). CMMI® Institute helps organizations discover the true value they can deliver by building capability in their people and processes. (CMMI Institute) Recuperado el 05 de 05 de 2016, de http://cmmiinstitute.com/newsroom/announcements

da Costa Santos, C. M., de Mattos Pimenta, C. A., & Nobre, M. R. (2007). A estratégia PICO para a construção da pergunta de pesquisa e busca de evidências. Revista Latino-Americana de Enfermagem, 508-511.

Dávila, A., Basurto, C., Flores, L., Arisaca, R., Manrique, R., Sánchez, J., & Schneck de Paula Pessôa, M. (2012). The Peruvian Component of Competisoft Project: Lesson Learned from Academic Perspective. (CLEI), 2012 XXXVIII Conferencia Latinoamericana En Informatica. Medellin.

Desharnais, J.-M., Laporte, C., Habra, N., Renault, A., & Alexandre, S. (2008). Initiating software process improvement in very small enterprises: Experience with a light assessment tool. Information and Software Technology, 50, 763-771.

Desharnais, J.-M., Laporte, C., Stambollian, A., Zarour, M., Habra, N., & Renault, A. (2007). Initiating Software Process Improvement with a ligjt model for Small Enterprise: Our Experience. III Taller Internacional de Calidad en Technologias de Information et de Communications.

Díaz, F., Rodríguez, G., Valencia, A., Saldaña , H., & Miguel, G. (15 de 08 de 2013). Implementación del modelo CMMI para la creación de fábrica de software de la UTSJR. En Congreso Interdisciplinario de Cuerpos Académicos (pág. 151). Guanajuato: ECOFARN. Recuperado el 05 de 05 de 2016, de http://www.ecorfan.org/handbooks/pdf/Ciencias%20Administrativas%20y%20Sociales%20Handbook%20T-II.pdf#page=151

Fayad, M. E., Laitinen, M., & Ward, R. P. (2000). Software Engineering in the Small. Communications of the ACM, 115-118.

González Yepes, D. J., Calvache Pardo, J. C., & Gómez Gómez, S. O. (2015). Revisión sistemática acerca de la implementación de metodologías ágiles y otros modelos en micro, pequeñas y medianas empresas de software. Revista Tecnológica ESPOL – RTE.

Hurtado , J., & Bastarrica, M. (2006). Implementing CMMI using a Combination of Agile Methods. CLEI ELECTRONIC JOURNAL, 9(1), 1-15.

INEN. (2015). Ingeniería de Software - Perfiles del ciclo de vida para entidades muy pequeñas. Quito.

Iqbal, J., Ahmad, R. B., Nasir, M. N., Niazi, M., Shamshirband, S., & Noor, M. A. (2015). Software SMEs’ unofficial readiness for CMMI-based software process improvement. Software Quality Journal, 1-27.

ISO/IEC JTC 1/SC 7. (01 de Septiembre de 2011). ISO/IEC TR 29110-1:2011(en). (ISO) Recuperado el 09 de Junio de 2016, de https://www.iso.org/obp/ui/#iso:std:iso-iec:tr:29110:-1:ed-1:v1:en

Kabaale, E., & Mayoka Kituyi, G. (2015). A theoretical framework for requirements engineering and process improvement in small and medium software companies. Business Process Management, 21(1), 80-99.

Konrad, M., & Shrum, S. (2009). Guía para la integración de procesos y la mejora de productos. En CMMI, Guía para la integración de procesos y la mejora de productos. Pearson.

Kuhrmann , M., Konopka, C., Nellemann, P., Diebold, P., & Münch, J. (2015). Software Process Improvement: Where Is the Evidence? International Conference on Software and Systems Process. ACM, (págs. 107 - 116). Tallinn.

Laporte, C. Y. (s.f.). VSE Pilot Project website public website. (École de technologie superieure) Recuperado el 15 de Junio de 2016, de http://profs.etsmtl.ca/claporte/English/VSE/index.html

Laporte, C. Y., & O’Connor, R. V. (2014). A Systems Process Lifecycle Standard for Very Small Entities: Development and Pilot Trials. In Communications in Computer and Information Science, 13–24.

Laporte, C. Y., Séguin, N., Villas Boas, G., & Buasung, S. (2013). Aprovechando las ventajas de las normas de ingeniería de software y sistemas. ISO Focus+.

Larrucea, X., O'Connor, R. V., Colomo-Palacios, R., & Laporte, C. Y. (2016). Software process improvement in very small organizations. IEEE Software, 33(2), 85-89.

Martinez, N., Ramon, H., & Bertone, R. (2012). Aplicabilidad de competisoft a partir de un método ágil como Scrum: Un caso práctico. XVIII Congreso Argentino de Ciencias de la Computación. La Plata.

Muñoz, M., Gasca, G., & Valtierra, C. (2014). Caracterizando las Necesidades de las Pymes para Implementar Mejoras de Procesos Software: Una Comparativa entre la Teoría y la Realidad. RISTI - Revista Ibérica de Sistemas e Tecnologias de Información.

Najjar, S. K., & Al-Sarayreh , K. T. (2015). Capability Maturity Model of Software Requirements Process and Integration (SRP CMMI). Proceedings of the International Conference on Intelligent Information Processing, Security and Advanced Communication ACM, 68.

O'Connor, R. V., & Laporte, C. Y. (2010). Towards the provision of assistance for very small entities in . Proceedings of the 11th International Conference on Product Focused Software. ACM, 4-7.

Oktaba, H., Piattini, M., Pino, F., Orozco, M., & Alquicira, C. (2009). COMPETISOFT: Mejora de Procesos Software para Pequeñas y Medianas Empresas y Proyectos. México: Alfaomega.

Pino, F. J., García, F., & Piattini, M. (2006). Revisión sistemática de mejora de procesos software en micro, pequeñas y medianas empresas. Revista Española de Innovación, Calidad e Ingeniería del Software.

Proyecto Competisoft. (2008). Alarcos reseach group. Recuperado el 30 de 04 de 2015, de Mejora de Procesos para Fomentar la Competitividad de la: http://alarcos.esi.uclm.es/ipsw/doc/competisoft-modelo_v1.pdf

Renault, A., Habra, N., Alexandre, S., Deprez, J., Niyitugabira , E., & Lamblin, A. (2006). OWPL Software Process Improvement for VSE, SME and low maturity enterprises.

Saavedra G., M. L., & Hernández C., Y. (2008). Caracterización e importancia de las MIPYMES en Latinoamérica. Actualidad Contable FACES, 11(17), 122-134.

Sommerville, I. (2011). Ingeniería de Software. México: Pearson.

Ueki, Y., Tsuji, M., & Cárcamo Olmos, R. (Octubre de 2005). Comisión Económica para América Latina y el Caribe. Recuperado el 21 de Julio de 2016, de http://www.cepal.org/socinfo/noticias/documentosdetrabajo/6/23296/Tecnologia%20de%20la%20informacion%20y%20las%20comunicaciones.pdf

Notas de autor

scoque@ups.edu.ec

HTML generado a partir de XML-JATS4R por