Universidad Nacional Autónoma de México
Dirección General de Servicios de Cómputo Académico
Año 7 Núm. 74, Publicación Mensual, 27 de Noviembre de 2008

ARTÍCULOS

 

Año 5, Número 47, Marzo de 2006

MoProSoft: modelo de procesos de software hecho en México

Ma. Teresa Ventura Miranda
Marcela Peñaloza Báez

 

Cuando una organización encara proyectos de desarrollo de software, ¿qué la impulsa a seleccionar un proceso? ¿No es suficiente dejar que el conocimiento y el esfuerzo de los involucrados sean aplicados en forma uniforme, y simplemente se junten los frutos del trabajo de las personas al final del proyecto? Estas sencillas preguntas no poseen una única respuesta, pero sí debemos tener presente que la calidad de un producto es directamente proporcional a la del proceso con que es generado.

Pero, ¿qué es un proceso? un conjunto de prácticas relacionadas entre sí, llevadas a cabo a través de roles y por elementos automatizados, que mediante recursos y a partir de insumos, producen un satisfactor de negocio para el cliente. La madurez de un proceso es el nivel al cual está explícitamente documentado, gestionado, medido, controlado y continuamente mejorado.

Se asume que un proceso maduro tendrá alta capacidad; ésta última hace referencia al rango de resultados esperados que pueden obtenerse al realizarlo, lo que permite predecir el desempeño de futuras ejecuciones.

En este marco, un modelo de procesos es un conjunto estructurado de elementos que describen las características de procesos efectivos y de calidad, indicando “qué hacer”, no “cómo hacer” ni “quién lo hace”. Actualmente existen modelos internacionales como CMMI e ISO.

CMMI implica un amplio marco de trabajo donde se describen las prácticas esenciales de un proceso efectivo de desarrollo de software; fue creado en Estados Unidos y se ha convertido en una referencia internacional de la capacidad de los procesos de desarrollo de software. Define 25 áreas de proceso del ámbito de la ingeniería de software y la ingeniería de sistemas.

Por su parte, ISO 9000 es una familia de normas que sirve como guía a las organizaciones —de todo tipo y tamaño— en la implantación y operación de Sistemas de Gestión de la Calidad. ISO 9000 en su versión 2000 tiene un fuerte enfoque en los procesos y en la satisfacción del cliente; además de que es certificable en México. Sin embargo, por su generalidad, es abstracto y difícil de adecuar al desarrollo de software.

Si bien estos modelos internacionales permiten determinar la capacidad de procesos de una organización que desarrolla software, no es fácil adaptarlos al contexto de las empresas mexicanas, que en su mayoría son PyMEs. De acuerdo con un estudio hecho en 2004, 92% de las empresas que desarrollan software en México son PyMEs, con menos de 100 empleados (1).

Es así como surge MoProSoft, por iniciativa de la Secretaría de Economía y gracias al trabajo de académicos y empresarios mexicanos, encabezados por la Dra. Hanna Oktaba, profesora de la Facultad de Ciencias de la UNAM. MoProSoft es un modelo de procesos para la industria de software nacional, que fomenta la estandarización de su operación a través de la incorporación de las mejores prácticas en gestión e ingeniería de software. La adopción del modelo permite elevar la capacidad de las organizaciones que desarrollan o mantienen software para ofrecer servicios con calidad y alcanzar niveles internacionales de competitividad. Es también aplicable en áreas internas de desarrollo de software de las empresas de diversos giros.

Características de MoProSoft

  • Es específico para el desarrollo y mantenimiento de software.
  • Es sencillo de entender y adoptar.
  • Facilita el cumplimiento de los requisitos de otros modelos como ISO 9000:2000, CMM y CMMI.
  • Se enfoca a procesos.
  • Se le considera práctico en su aplicación, principalmente en organizaciones pequeñas, con bajos niveles de madurez.
  • Comprende un documento de menos de 200 páginas que, al compararlo con otros modelos y estándares, lo hace bastante práctico.
  • Resulta acorde con la estructura de las organizaciones mexicanas de la industria de software.
  • Está orientado a mejorar los procesos, para contribuir a los objetivos de negocio, y no simplemente ser un marco de referencia o certificación.
  • Tiene un bajo costo, tanto para su adopción como para su evaluación.

¿Para qué sirve MoProSoft?

  • Mejora la calidad del software producido por la empresa que adopta el modelo.
  • Eleva la capacidad de las organizaciones para ofrecer servicios con calidad y alcanzar niveles internacionales de competitividad.
  • Integra todos los procesos de la organización y mantiene la alineación con los objetivos estratégicos.
  • Inicia el camino a la adopción de los modelos ISO 9000 o CMMI.
  • Sirve para implantar un programa de mejora continua.
  • Permite reconocer a las organizaciones mexicanas por su nivel de madurez de procesos.
  • Facilita la selección de proveedores.
  • Permite obtener acceso a las prácticas de ingeniería de software de clase mundial.

Estructura de MoProSoft

El modelo pretende apoyar a las organizaciones en la estandarización de sus prácticas, en la evaluación de su efectividad y en la integración de la mejora continua. Sintetiza las mejores prácticas en un conjunto pequeño de procesos que abarcan las responsabilidades asociadas a la estructura de una organización que son: la Alta Dirección, Gestión y Operación.

MoProSoft es un modelo integrado donde las salidas de un proceso están claramente dirigidas como entradas a otros; las prácticas de planeación, seguimiento y evaluación se incluyeron en todos los procesos de gestión y administración; por su parte los objetivos, los indicadores, las mediciones y las metas cuantitativas fueron incorporados de manera congruente y práctica en todos los procesos; las verificaciones, validaciones y pruebas están incluidas de manera explícita dentro de las actividades de los procesos; y existe una base de conocimientos que resguarda todos los documentos y productos generados. Veamos a continuación el propósito de los procesos de MoProSoft:

Categoría
Proceso
Propósito
Alta Dirección
Gestión de Negocio
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.
Gestión
Gestión de Procesos
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.
Gestión
Gestión de Proyectos
Asegurar que los proyectos contribuyan al cumplimiento de los objetivos y estrategias de la organización.
Gestión
Gestión de Recursos
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. Las actividades de este proceso se apoyan en tres subprocesos:
- Recursos humanos y ambiente de trabajo.
- Bienes, servicios e infraestructura.
- Conocimiento de la organización.
Operación
Administración de Proyectos Específicos
Establecer y llevar a cabo sistemáticamente las actividades que permitan cumplir con los objetivos de un proyecto en tiempo y costo esperados.
Operación Desarrollo y Mantenimiento de Software Realización sistemática de las actividades de análisis, diseño, construcción, integración y pruebas de productos de software nuevos o modificados cumpliendo con los requerimientos especificados.
Remomado textualmente del Modelo de Procesos para la Industria de Software MoProSoft, versión 1.3 (agosto 2005).

MoProSoft, norma mexicana

El 15 de agosto de 2005 se publica en el Diario Oficial de la Federación la declaratoria de vigencia de la norma NMX-059-NYCE-2005, bajo el nombre de TECNOLOGÍA DE LA INFORMACIÓN-SOFTWARE-MODELOS DE PROCESOS Y EVALUACIÓN PARA DESARROLLO Y MANTENIMIENTO DE SOFTWARE, la cual consta de cuatro partes:

01: DEFINICIÓN DE CONCEPTOS Y PRODUCTOS.

02: REQUISITOS DE PROCESO (MoProSoft).

03: GUÍA DE IMPLANTACIÓN DE PROCESOS.

04: DIRECTRICES PARA LA EVALUACIÓN DE PROCESOS (EvalProSoft).

Al ser una norma NMX su carácter es voluntario, a diferencia de las normas NOM que son obligatorias. Al respecto, cabe comentar que ISO es también una norma NMX.

Los beneficios de MoProSoft, en palabras de la directora del equipo que lo elaboró, la Dra. Hanna Oktaba, son:

  • Al tener prácticas integradas, que abarcan desde la gestión de negocio hasta el desarrollo y mantenimiento de software, las empresas logran un mayor control sobre su desempeño en el mercado.
  • El costo de incorporación del nuevo personal podría disminuir si se enfocan a la educación y a la capacitación sobre un modelo único.
  • Las empresas pequeñas, al seguir procesos similares, podrían asociarse con mayor facilidad para afrontar proyectos de mayor envergadura.
  • La exportación de servicios de software de las empresas mexicanas será más factible, incluso se podría disminuir la necesidad de la intermediación de las empresas trasnacionales, gracias a que MoProSoft considera las prácticas reconocidas en el ámbito internacional.

La implantación de MoProSoft no demanda la incorporación de personal especializado en las empresas, únicamente requiere de una adecuada capacitación del personal existente.

Para mayor información:

http://www.amcis.org.mx
Asociación Mexicana para la Calidad en Ingeniería de Software (AMCIS).

http://www.software.net.mx

http://www.softwareguru.com.mx

Oktaba, Hanna, y coautores, Modelo de Procesos para la Industria de Software MoProSoft, versión 1.3 (agosto 2005).. .


1 Estudio del Perfil de la Industria Mexicana de Software para definir los Nichos de Mercado Internacional acordes al Perfil y Competitividad de la Industria. Secretaría de Economía. 2004.

Inicio | Contacto |