Adaptación de MoProSoft para la producción de software en instituciones académicas
MoProSoft adapting for Software Production in Universities
Gabriela Alejandra Martínez Cárdenas
Instituto Tecnológico de Colima, México
G1346002@itcolima.edu.mx
 Jesús Alberto Verduzco Ramírez 
  Instituto Tecnológico de Colima, México 
  nmendoza@ucol.mx
Resumen
El  modelo MoProSoft (Oktaba, 2005) se aplica al desarrollo de productos de  software en pequeñas y medianas empresas (Pymes); en un contexto global, 90 %  de las empresas que desarrollan software están incluidas en dicha  clasificación. Este proyecto de investigación tiene como propósito adaptar el  modelo de calidad MoProSoft para desarrollar proyectos de software en  instituciones académicas, en particular en el Instituto Tecnológico de Colima. El  desarrollo de los productos de software está basado en los procesos del modelo de  calidad de la norma MoProSoft  NMX-059-NYCE-2005. 
  
Palabras clave: modelo de calidad, MoProSoft,  procesos, desarrollo de software.
The  MoProSoft model is applied to the development of software products in small and  medium enterprises (SMEs) in the global context 90 % of companies that develop  software are included in this classification. This research project proposes to  adapt the MoProSoft quality model for software development projects in academic  institutions, particularly in the Technological Institute of Colima. The  development of software products is based on the process model of quality  MoProSoft NMX-059-NYCE-2005 standard. 
  
  Keywords: quality model,  MoProSoft, processes, software development.
  Fecha  recepción:   Febrero  2015           Fecha aceptación: Junio  2015
Introducción
La industria del software interviene en gran medida en la economía del país; las Tecnologías de Información y Comunicación han adquirido gran importancia en los últimos años, al grado de originar una revolución informática, donde las empresas de software son de las más rentables en el mundo (Peñaloza, 2002). Dicha situación era difícil de imaginar hace 30 o 40 años, pero actualmente el uso del software se ha masificado en muchas organizaciones a nivel mundial.
En  2002 había alrededor de 300 empresas de software en nuestro país, pero solo 20 %  estaban formalmente estructuradas, ya sea como subsidiarias de empresas internacionales  o como empresas de software 100 % mexicanas. El 90% de estas empresas de  software está conformado por microempresas (Ventura, 2006); sin embargo, la  participación de instituciones académicas en el desarrollo de software en  nuestro país es escasa, además de que es necesario que los planes de estudio se  vinculen mejor con la industria de software, para que haya congruencia entre  las necesidades tecnológicas y los estándares actuales de calidad. 
La  Secretaria de Economía en su rama de desarrollo de la industria del software  incluyó dentro de sus objetivos principales aumentar la competitividad de  México en proyectos de desarrollo de software. Así, se diseñó el Programa para  el Desarrollo de la Industria del Software (ProSoft), y una de sus estrategias  principales tiene como objetivo alcanzar niveles internacionales en capacidad  de procesos, por lo cual se propuso presentar un modelo de procesos y de  evaluación apropiado para la industria mexicana de software. Dicho modelo se llama  MoProSoft, que significa Modelo de Procesos para el desarrollo de Software; el  modelo está dirigido principalmente a las pequeñas y medianas empresas, y a las  áreas de desarrollo de software (Peñaloza, 2006).
Sin  embargo, no existe un modelo dirigido a las instituciones académicas enfocado al  mejoramiento de las prácticas para el desarrollo de software, por consiguiente  este proyecto tiene como objetivo adaptar el modelo de calidad MoProSoft al  desarrollo de software dentro de instituciones académicas. 
  El uso de estándares de calidad en el proceso de construcción de proyectos  informáticos es indispensable actualmente, y el incremento de empresas  dedicadas a este ámbito ofrece múltiples soluciones, lo que genera clientes  cada vez más selectivos, ¿pero qué es la calidad de software? 
  “La  concordancia con los requerimientos funcionales y de rendimiento explícitamente  establecidos, con los estándares de desarrollo documentados y con las  características implícitas que se esperan de todo software desarrollado  profesionalmente” (Pressman, 2002).
  Los  estándares de calidad definen los criterios de desarrollo que conducen la forma  en que lleva la Ingeniería de Software, y tienen como propósito generar productos  de software de alta calidad; los estándares suministran los medios para que  todos los procesos se realicen de la misma forma y son una guía para lograr la  productividad y la calidad (Piattini, 2003).
  Un  estándar de calidad de software reúne las actividades y hace que cada una se  planee, controle y ejecute de un modo sistemático. Algunos estándares son: ISO  90003, ISO 12207, ISO 15504 SPICE, IEE / EIA 12207, ISO 20000, ITIL, Cobit 4.0,  ISO 25000 SQUARE, IEEE Std 1061-1998.
  MoProSoft es el Modelo de Procesos para la Industria de Software en México,  cuyo propósito es la estandarización de su operación incorporando mejoras en  las prácticas en gestión e ingeniería de software. El modelo permite elevar la  capacidad de ofrecer productos de calidad a las organizaciones y alcanzar  niveles internacionales de competitividad.
  MoProSoft  nace pensando en las necesidades de empresas pequeñas y medianas dedicadas al  desarrollo y mantenimiento de software, provee un conjunto de procesos que  pueden adoptarse y ajustarse a las necesidades de cada empresa, es fácil de  entender y su implementación no es costosa, a diferencia de los estándares  internacionales los cuales están diseñados para empresas grandes y medianas  poco funcionales para las Pymes en México.  
MoProSoft está organizado en tres categorías que abarcan las áreas de una empresa dedicada al desarrollo de software: Alta Dirección, Gerencia y Operación. En la figura 1 se muestra el esquema da las categorías con cada proceso que la integra.
Categoría Alta Dirección
Se enfoca a las prácticas relacionadas con la gestión del negocio. También proporciona los lineamientos a los procesos de la categoría Gerencia y recibe la retroalimentación requerida a partir de la información generada por estos.
Categoría Gerencia
Se enfoca a las prácticas relacionadas con la gestión de procesos, proyectos y recursos de acuerdo a los lineamientos establecidos por la categoría Alta Dirección. Además, proporciona los elementos necesarios a los procesos de la categoría Operación, recibe y evalúa la información generada por estos y comunica los resultados a la categoría Alta Dirección.
Categoría Operación
Esta  categoría se enfoca a las prácticas de los proyectos de desarrollo y mantenimiento  de software. Lleva a cabo las actividades según los elementos dados por  Gerencia y comunica a esta sus resultados.
  Los  centros educativos o instituciones académicas, incluyendo universidades,  requieren que exista una comunicación con el sector empresarial para la  generación de productos tecnológicos, ya que actualmente no existe. Otro de los  problemas que algunas instituciones presentan es que no cuentan con una  metodología para asegurar la calidad de los productos que ofrecen al sector  empresarial; por estas y otras razones, los clientes potenciales no tienen  confianza en los centros de educación para que sean proveedores de soluciones  tecnológicas. No cuentan con un modelo de calidad que les permita ser  competentes en el mercado laboral, y esto obliga a empresas que requieren  soluciones tecnológicas buscar productos en empresas certificadas y no en  instituciones académicas. Otro problema común que se presenta al desarrollar  software es entender los procesos del negocio y entender el punto de vista  desde la perspectiva del cliente, quien a veces suele desconocer lo que  realmente quiere o necesita, así como tener la idea clara de las actividades  estratégicas de operación en una empresa.
  Las  instituciones de educación superior que ofrecen carreras en Tecnologías de la Información  y Comunicación no disponen de una metodología que asegure la calidad de los  productos tecnológicos desarrollados. Además, la ingeniería en requerimientos  es fundamental dentro del desarrollo de aplicaciones de software, y dichos  requerimientos definen lo que el sistema va a realizar, por ello la  identificación de cada uno de ellos de manera correcta proporciona un software  con la funcionalidad esperada por el usuario. Es posible también que los  requerimientos cambien y ello impacte de manera importante a la planeación y la  arquitectura del proyecto. La cantidad de requerimientos puede ser muy grande y  difícil de controlar, pero esta tarea se podrá facilitar si se apega a  estándares de calidad establecidos.
  Es  conveniente que las instituciones o empresas se apeguen a estándares de calidad  ya probados con el fin de garantizar un producto competente, por ello es  necesario adaptar un modelo que pueda cubrir eficientemente la producción de  software en una institución académica. 
  El  problema es que los estándares actuales (ISO 90003, ISO 12207, ISO 15504 SPICE,  IEE / EIA 12207, ISO 20000, ITIL, Cobit 4.0, ISO 25000 SQUARE, IEEE Std  1061-1998) son muy extensos, es decir, son aplicados para el desarrollo de  productos de software en grandes empresas, por lo que resulta muy costosa su  implementación; sin embargo, en el estado de Colima, la totalidad son pequeñas  y micro empresas, por lo que se requiere un modelo de calidad que se adapte a  desarrollar producto de software para este tipo de empresas.
  “Descrito  en forma general, una empresa está en búsqueda de una solución inteligente al  planteamiento de un problema a resolver, entre muchas, una necesidad  humana”  (Goodman, 1988).
  Con  respecto al problema planteado en el punto anterior, se propone implementar un  modelo de calidad que sirva a todas las instituciones académicas en México para  realizar productos tecnológicos basados en estándares que aseguren la calidad y  la satisfacción del cliente. 
  La  propuesta define un proceso sistemático de desarrollo de un modelo de calidad basado  en la norma mexicana NMX-I-059-02, con el cual se tendrá la seguridad de  obtener un proceso de software mientras se desarrolla un sistema informático  con las características de calidad más competitivas en el mercado.
La figura 2 muestra el esquema que representa la estructura del modelo y los procesos que conforman la norma NMX-l-059-01-NYCE-2005.
Figura 2. Estructura del Modelo MoProSoft
La  categoría de Alta Dirección contiene el proceso de Gestión de Negocio, en ella  se abordan las prácticas de Alta Dirección que están relacionadas con la  gestión de negocios, se generan los lineamientos para los tres procesos que  integran la categoría de Gerencia y se retroalimenta de la información generada  por ellos.
  La  categoría de Gerencia se forma por los procesos de Gestión de Procesos, Gestión  de Proyectos y Gestión de Recursos, este último constituido por los subprocesos  de Recursos Humanos y Ambiente de Trabajo, Bienes, Servicios e Infraestructura  y Conocimiento de la Organización.
  La  categoría de procesos aborda las prácticas de gestión de procesos, proyectos y  recursos en función de los lineamientos establecidos en la Categoría de Alta Dirección,  su labor principal es proporcionar los elementos para el funcionamiento de los proceso  de Categoría de Operación, recibir y evaluar la información generada por estos  y comunicar los resultados a la Categoría de Alta Dirección, La categoría de  Operación está integrada por los procesos de Administración de Proyectos Específicos  y de Desarrollo y Mantenimiento de Software. Esta categoría de procesos aborda  las prácticas de los proyectos de desarrollo y mantenimiento de software; asimismo,  realiza las actividades de acuerdo a los elementos proporcionados por la  Categoría de Gerencia y entrega a esta la información y productos generados.
  Los  productos generados en los procesos se clasifican en productos de software,  planes, reportes, registros, lecciones aprendidas y otros productos.
  El  producto de software se genera en el proceso de desarrollo y mantenimiento de  software, estos productos de software se clasifican en especificación de  requisitos, análisis y diseño, software, prueba, registro de rastreo y manual,  clasificación que puede ser especializada según las necesidades  (NMX-I-059-01-NYCE, 2005).
Es  el Centro de Innovación y Producción de Software del Instituto Tecnológico de Colima,  fundado con la finalidad de fortalecer la vinculación de la Comunidad  Tecnológica con los diferentes sectores productivos de la región.
  Misión
  La  misión del grupo JaguarSoft es generar soluciones tecnológicas para optimizar  los procesos de las empresas del sector productivo y social de la región  aplicando estándares de calidad.
  Visión
  Ser  un grupo líder que fortalezca la vinculación del Instituto Tecnológico de  Colima para impulsar el uso de las TIC en los organismos del sector público y  privado de la región.
  Dentro  de los servicios que ofrece el centro se encuentran los siguientes:
La estructura de MoProSoft está basada en procesos, constituida por tres categorías. A continuación la figura 3 muestra las categorías Alta Dirección y Gerencia con la integración del organigrama del Instituto Tecnológico de Colima.
La  categoría Alta Dirección está formada por el proceso Gestión de Negocio, el  responsable del proceso estaría representado por el director del Instituto  Tecnológico de Colima, quien sería el encargado de cumplir con el propósito del  proceso.
El  propósito de Gestión de Negocio es establecer la razón de ser de la  organización, sus objetivos y las condiciones para lograrlos, para lo cual es  necesario considerar las necesidades de los clientes, así como evaluar los  resultados para poder proponer cambios que permitan la mejora continua.  Adicionalmente habilita a la organización para responder a un ambiente de  cambio y a sus miembros para trabajar en función de los objetivos establecidos  (NYCE, 2005).
La  categoría Gerencia está formada por los procesos Gestión de Procesos, Gestión  de Proyectos y Gestión de Recursos, el responsable de Gestión de Procesos  estaría representado por el  Subdirector  de Planeación y Vinculación, quien tendría la responsabilidad de cumplir con el  propósito del proceso.
El  propósito de Gestión de Procesos es establecer los procesos de la organización,  en función de los Procesos Requeridos identificados en el Plan Estratégico. Así  como definir,  planificar e implantar las  actividades de mejora en los mismos.
El  responsable de cumplir con el propósito del proceso Gestión de Proyectos  estaría representado por el Jefe de Estudios de Posgrado e Investigación; el  propósito de la Gestión de Proyectos es asegurar que los proyectos contribuyan  al cumplimiento de los objetivos y estrategias de la organización.
El  proceso de Gestión de Recursos, el cual se integra por Recursos Humanos y  Ambiente de Trabajo, Bienes, Servicios e Infraestructura y Conocimiento de la  Organización, tiene como propósito conseguir y dotar a la organización de los  recursos humanos, infraestructura, ambiente de trabajo y proveedores, así como  crear y mantener la Base de Conocimiento de la organización. La finalidad es  apoyar el cumplimiento de los objetivos del Plan Estratégico de la  organización.
El  proceso de Recursos Humanos y Ambiente de Trabajo estaría representado por el Jefe  del Departamento de Recursos Humanos, cuya responsabilidad es proporcionar los  recursos humanos adecuados para cumplir las responsabilidades asignadas a los  roles dentro de la organización, así evaluar el ambiente de trabajo.
El  proceso de Bienes, Servicios e Infraestructura tendría como responsable al Jefe  del Departamento de Recursos Financieros cuyo propósito es proporcionar  proveedores de bienes, servicios e infraestructura que satisfaga los requisitos  de adquisición de los procesos y proyectos.
El  proceso del conocimiento de la organización tendría como responsable al Jefe  del Departamento de Desarrollo Académicos, cuyo propósito es mantener  disponible y administrar la Base de Conocimiento que contiene la información y  los productos generados por la organización.
La categoría operación dentro de la estructura de MoProSoft está constituida por dos procesos, la Administración de Proyectos Específicos y el Desarrollo y Mantenimiento de Software. A continuación la figura 4 muestra la adaptación de la categoría con el organigrama del Instituto Tecnológico de Colima.
El  propósito de la Administración de Proyectos Específicos es establecer y llevar  a cabo sistemáticamente las actividades que permitan cumplir con los objetivos  de un proyecto en tiempo y costo esperados; el responsable de este proceso sería  el Administrador de Proyectos de JaguarSoft.
El  propósito de Desarrollo y Mantenimiento de Software es la realización  sistemática de las actividades de obtención de requisitos, análisis, diseño, construcción,  integración y pruebas de productos de software nuevo o modificado cumpliendo con  los requisitos especificados; el responsable de este propósito sería el Jefe de  Desarrollo.
La adaptación de este modelo de calidad para el JaguarSoft en el Instituto Tecnológico de Colima incorpora las partes más importantes en las que las metodologías más utilizadas en empresas de desarrollo de software se certifican en MoProSoft, lo que permite hacerla más competitiva en el caso de que se requiera una certificación para una licitación. Se considera al producto resultante como un modelo ágil y de calidad que puede adaptarse a cualquier institución académica.
Año 7 Núm. 74, Publicación Mensual, 27 de Noviembre de 2008.  Entérate en línea Internet Cómputo y Telecomunicaciones.
  Año 1, Número 5, Enero de 2002. Entérate en línea Internet  Cómputo y Telecomunicaciones.
  Piattini, García (2003). Calidad en el desarrollo y  mantenimiento del software, RA-MA editorial, Madrid.
  Astorga, María; Olguín, Martín; Flores, Brenda (2006).  Instituto de Ingeniería, Universidad Autónoma de Baja California. Caracterización  de los factores de cambio para la implantación de MoProSoft en las PyMES. 
  Flores, Sergio; Mendoza, Nicandro; Román, Armando; Rosas,  Luis (2011). Modelo de calidad para la microempresa basado en MoProSoft. CiComp  2011, Baja California, México.
  Norma NMX-1-059/02-NYNCE-2005 (MoProSoft) Parte 02 Requisitos  de procesos 2005.
  Oktaba, Hanna. Software Process Improvement for Small and  Medium Enterprises, 2008.
  Oktaba, Hanna. Modelo de Procesos para la Industria de Software  MoProSoft, versión 1.3. México, 2005.
  Mendoza, María (2004). Metodologías de Desarrollo de Software. 
  Oktaba, Hanna. Historia y Futuro de la Ingeniería de software,  Revista SOFTWARE Gurú, México.
Pressman, R. (1998). Ingeniería  de software, un enfoque práctico, McGraw Hill.