En la economía mundial se observan claras tendencias hacia la internacionalización de los negocios y los mercados de capitales, la liberación del comercio, el intercambio entre grandes bloques regionales y cierto desplazamiento del centro del comercio mundial desde el Océano Atlántico hacia el Pacífico (Bozzo, 2001).
El papel de las Pequeñas y Medianas Empresas (PyMEs) en la estructura industrial deja paulatinamente de ser cualitativa y cuantitativamente marginal, para conformar una parte integrada y no simplemente alternativa de organizaciones productivas. El mercado Argentino no está exento a estas consideraciones.
En particular la industria del software, y especialmente luego de los cambios económicos sufridos a partir del año 2001, se ha convertido en una actividad económica de suma importancia para la economía del país, como para el resto de los países latinoamericanos.
Por otra parte, las pequeñas y medianas empresas desarrolladoras de software sufren un cambio de paradigma importante, producto de la maduración de este mercado emergente, y es que ya no basta con aplicar bien la tecnología, o aplicar la tecnología de última generación para obtener un buen producto software. Uno de los desafíos para no sucumbir, es buscar e implementar nuevas estrategias sobre la base del trabajo con mayor eficiencia (Bozzo, 2001).
En este mercado esto se traduce con procesos de calidad. La única forma que tiene una Pyme de desarrollo de Software de mejorar su eficiencia y ser más productiva, alcanzando los niveles de calidad exigidos por el comercio exterior, es introducir un modelo de calidad, que se ajuste a las necesidades de la organización.
No obstante, las PyMEs de este sector productivo poseen una serie de ventajas y algunas desventajas, debido a sus características estructurales.
Entre las ventajas de las PyMEs más significativas, se puede señalar:
-
Posibilidad de flexibilidad y reaccionar con rapidez frente a los cambios.
-
Mayor poder de innovación.
-
Menores costos de infraestructura.
-
Concentración en la toma de decisiones.
-
Puntos de ventas cercanos al consumidor.
-
Atención más personalizada.
Entre las desventajas de las PyMEs más destacadas, se puede señalar:
- Pocas facilidades de financiación.
- Problemas para planear su crecimiento.
- Falta de gerenciamiento profesional.
- Dificultades para exportar.
- Fuerte individualismo que le impide efectuar distintos tipos de asociaciones.
- Fuertes lazos afectivos con su pasado.
- Sistemas de información, administración y contabilidad deficientes.
Dentro de este contexto, es necesario aplicar un modelo de procesos que asegure obtener los niveles de calidad requeridos por el mercado para ser eficiente, pero que por otro lado no resulte excesivamente burocrático, que se convierta en gigantesco e inflexible, o que termine resultando muy costoso y desmotivador para el equipo de desarrollo.
En la actualidad existen varios modelos de proceso apropiados para aplicar en el desarrollo de software. Entre los más utilizados y reconocidos por el mercado, se encuentra el conjunto de Normas ISO, para certificación de Calidad tales como ISO/IEC 15504-2, ISO 90003, ISO 9001:2000, y el Modelo CMMI (Capability Maturity Model Integration) (Software Engineering Institute, 2002), que mide la madurez de las organizaciones y ha sido creado especialmente para el desarrollo de software.
Estos modelos han sido pensados para la mejora de la calidad en organizaciones grandes, por lo tanto, la implementación en pequeñas y medianas empresas resulta dificultosa, compleja y de un costo económico significativo. Es por ello que han surgido diversas experiencias de crear modelos de proceso adecuados a las PyMEs, como son los casos de Brasil, con el Modelo "MR mps" de Brasil (Weber, y otros, 2004), México con el Modelo MoProSoft, Modelo de Procesos y Evaluación para Desarrollo y Mantenimiento de Software (Oktaba, y otros, Agosto 2005), y el modelo
SPICE: Software Process Improvement and Capability dEtermination, ISO 15504 (ISO/IEC, 2003).
El modelo MoProSoft, ha sido elaborado por la Universidad Autónoma de México y aprobado en el marco del Programa para el Desarrollo de la Industria de Software (ProSoft) de la Secretaría de Economía, como Norma de Certificación de Calidad de software para la industria mexicana de software (NMX-I-059/01-NYCE-2005 TECNOLOGÍA DE LA INFORMACIÓN - SOFTWARE - MODELOS DE PROCESOS Y EVALUACIÓN PARA DESARROLLO Y MANTENIMIENTO DE SOFTWARE), creado especialmente para el desarrollo de software por Pequeñas y Medianas Empresas.
MoProSoft, que en estas latitudes se conoce como CompetiSoft, se propone como un modelo sencillo de entender y de aplicar en las empresas pequeñas, que les permita mejorar su forma de trabajar y obtener niveles de competitividad internacionales en relativamente corto tiempo y a bajo costo.
En su estructura define diferentes niveles de capacidad, de forma similar a lo que hace CMMI, con un orden específico para la implementación de las prácticas de los procesos partiendo de prácticas básicas, e incorporando prácticas más complejas que se corresponden con los niveles más avanzados.
Por otra parte, una dificultad con la que se encuentran a menudo las empresas de desarrollo de software es la selección y utilización de herramientas apropiadas para el gerenciamiento de proyectos que a su vez permita la visibilidad de todo el desarrollo, incluyendo la definición de tareas y responsabilidades por rol en el equipo de trabajo, hasta la generación de código correspondiente al producto requerido.
Generalmente, las empresas cuentan e incorporan a la organización, una diversidad de herramientas que se encuentran disponibles en el mercado, para cumplir con las diferentes actividades. Este conjunto de herramientas, habitualmente permanecen desvinculadas entre sí, generando dificultades para gestionarlas, mantenerlas y controlar el versionamiento de los productos que se desarrollan, no teniendo la información disponible exacta acerca de los elementos del desarrollo, se encuentren o no documentados. Como resultado, se cuenta con distintas fuentes o repositorios no integrados, que hace costosa y menos confiable la obtención de información para el control gerencial de los proyectos.
En Marzo del 2006 Microsoft Corporation lanzó al mercado Visual Studio Team System (VSTS), un conjunto integral de herramientas diseñadas para permitir la comunicación desde dos perspectivas: por una parte, entre los miembros de un equipo de desarrollo, y por otra parte, entre los miembros del equipo de desarrollo y los interesados o clientes, en tiempo real (Levinson & Nelson, 2006), facilitando una administración legítima del proyecto integrada con el desarrollo, sin tener que recurrir a herramientas extras.
El Visual Studio Team System viene provisto de dos metodologías de desarrollo, basadas en el metamodelo denominado Microsoft Solution Framework (MSF), que es un marco de trabajo descriptivo con modelos y disciplinas a seguir. Las metodologías propuestas por el fabricante no son más que guías de procesos de desarrollo prescriptivas, una pensada más liviana que es MSF para Desarrollo de aplicaciones Ágiles, y otra más formal y rigurosa que es MSF para Proceso de Mejora Continua con CMMI.
No obstante los modelos provistos por la herramienta, la misma cuenta con la capacidad de personalizar la totalidad del Modelo de Proceso a las características propias del modelo de cualquier organización. De esta manera, permite conformar una plantilla de proceso genérica que cuenta con todos los elementos necesarios, cada vez que la misma es seleccionada al iniciar un proyecto.
Como resultado, podría haber tantas plantillas de procesos diferentes como proyectos tuviera una organización, ya sea de Modelos Agiles como de Modelos tradicionales.
Cada uno de estas metodologías, dentro de este conjunto de herramientas, cuenta con una Guía de Procesos, que sirve de consulta permanente para todos los miembros del equipo de proyecto, y puede personalizarse acorde al proceso seleccionado.