Services on Demand
Journal
Article
Indicators
- Cited by SciELO
- Access statistics
Related links
- Cited by Google
- Similars in SciELO
- Similars in Google
Share
Ingeniería e Investigación
Print version ISSN 0120-5609
Ing. Investig. vol.28 no.1 Bogotá Jan./Apr. 2008
Joanna Capote1, Carlos J. Llantén2, César Pardo3, Alberto J. González4 y César A. Collazos5
1 Ingeniera de sistemas. Investigador, grupo de Investigación y Desarrollo en Ingeniería de software, IDIS, Universidad del Cauca, Colombia. jcapote@unicauca.edu.co
2 Ingeniero de sistemas. Investigador, grupo de Investigación y Desarrollo en Ingeniería de software, IDIS, Universidad del Cauca, Colombia. cllanten@unicauca.edu.co
3 Ingeniero de Sistemas. Investigador, grupo de Investigación y Desarrollo en Ingeniería de software, IDIS. Ingeniero de Calidad, proyecto de investigación iCom Centrex IP, Colciencias, Universidad del Cauca, Colombia. cpardo@unicauca.edu.co, cespardo@hotmail.com, cespardo@gmail.com
4 Ingeniero en electrónica y telecomunicaciones, Universidad del Cauca, Colombia. Candidato Magíster, en Ingeniera Área Telemática, Facultad de Ingeniería Electrónica y Telecomunicaciones, Universidad del Cauca, Colombia. Socio fundador, Gerente General de la empresa TOTEMS software especializada en el desarrollo de Soluciones Basadas en Conocimiento. Investigador, grupo de investigación IDIS, Investigación y Desarrollo en Ingeniería de software, de la Universidad del Cauca, Colombia. Líder, Laboratorio de Gestión del Conocimiento de Parquesoft, KIMONO. agonzalez@totems-software.com
5 Ingeniero en sistemas y computación, Universidad de los Andes, Colombia. Doctor, en Ciencias de la Computación, Universidad de Chile, Chile. Profesor titular, Departamento de Sistemas, Facultad de Ingeniería Electrónia y Telecomunicaicones, Universidad del Cauca, Colombia. Coordinador, Grupo IDIS. ccollazo@unicauca.edu.co
RESUMEN
Ante la significativa información generada durante la ejecución de los programas de mejora de procesos software (SPI), las organizaciones se han visto obligadas a cambiar su filosofía y plan de trabajo para mantener y convertir dicha información en conocimiento, de tal forma que permita adaptar e integrar cambios rápidamente y de esta forma mantenerse dentro del mercado competitivo. En este artículo se presentan algunos de los antecedentes más significativos en la definición e implementación de la gestión del conocimiento (KM) en programas SPI adaptados a las micro, pequeñas y medianas empresas desarrolladoras de software MiPyMEs DS, ya que dicha gestión representa una filosofía de verdadero capital organizativo para empresas que adelanten proyectos de mejoramiento de software. Se analiza la conveniencia de la implementación del KM en los programas o proyectos SPI partiendo de los objetivos principales de la gestión del conocimiento y su adaptación a dichos proyectos de acuerdo a las necesidades identificadas, especialmente en lo referente a la documentación y manipulación de los productos tangibles e intangibles generados en un SPI.
Palabras clave: Gestión del conocimiento, base de conocimiento, mejora de procesos software, activos intangibles, activos tangibles, lecciones aprendidas; micro, pequeñas y medianas empresas (MiPyME).
ABSTRACT
Due to the vast amount of information during the execution software processes improvement programs (SPI), the organizations have been forced to change their philosophy and working in a way that permit maintain and convert this information in knowledge in order to adapt and to integrate changes quickly and so staying within the competitive market. This article shows some of the most significant antecedents in the definition and implementation of Knowledge Management (KM) in SPI programs adapted in small software companies, because this management represents a philosophy of true organizational capital for companies that develop software improvement projects. We analyze the convenience of KM implementation in SPI programs or projects starting of the primary targets of knowledge management and its adaptation for these projects according to the necessities identified, specially in relation to the documentation and manipulation of tangible and intangible products generated in a SPI program.
Keywords: assets, knowledge base, knowledge management, software process improvement, small and medium enterprises (SMEs).
Recibido: septiembre 24 de 2007
Aceptado: febrero 29 de 2008
Introducción
La necesidad de mejorar dentro de las empresas de software es una realidad que se ve suplida por la inclusión de un programa de mejora de procesos software (SPI). Un programa de SPI tiene como propósito el mejoramiento continuo de los procesos a través de un ciclo de vida iterativo (Esquivel, 2006). Dicho programa de SPI contribuye al aumento gradual de la satisfacción del cliente (Fernández y Pardo, 2006), a la obtención de un producto de excelente calidad y a la generación de lecciones aprendidas (CMMI, 2002); además se fundamenta en el desarrollo de un trabajo en equipo, en la colaboración y en la comunicación efectiva para lograr la participación dinámica entre los participantes del equipo de mejora y en general de toda la organización. Un programa de SPI se caracteriza por estar compuesto de procesos intensivos en conocimiento, en los cuales es importante considerar de manera explícita las tareas, roles, objetos, relacionados con la gestión del conocimiento. Estos procesos tienen actividades caracterizadas por requerir y generar conocimiento y experiencia, fundamentales para la toma de decisiones (González y Joaquí, 2007). Se debe tener en cuenta que en la mejora de procesos debe existir una transición del aprendizaje individual al aprendizaje organizacional mediante la disposición y utilización de estos activos generados en su ejecución (Ramos, Ruiz y De la Villa, 2004), por lo tanto es importante la gestión de los activos tangibles representados por documentos, productos de trabajo, entregables, etc., al igual que de los intangibles como lecciones aprendidas, mejores prácticas y rutinas organizativas, resultantes de la elaboración de los documentos de salida de cada actividad, de la interacción de los participantes del programa, o por la generación continua de ideas que agregan innovación a los procesos y que en ocasiones no son tenidas en cuenta o son implementadas sin realizar un estudio previo de su impacto. De aquí que la mayoría de los modelos de mejora de procesos como IDEAL (Mcfeeley, 1996) o Impact (Scott et al., 2001), entre otros, no cuentan aún con un mecanismo que permita realizar esta gestión y facilite la captura y utilización de todas aquellas experiencias valiosas durante la ejecución de cada uno de los ciclos de mejora, o dejan esta decisión en manos de los ejecutores del programa.
La gestión del conocimiento (KM), definida como: Un proceso específico, sistemático y organizativo de adquirir, organizar y comunicar el conocimiento de los empleados para que otros puedan hacer uso de él (López y Meroño, 2004) y cuyo propósito es ayudar a las compañías a crear, compartir y usar su conocimiento más efectivamente, representándoles reducción de errores, menos trabajo, más independencia en tiempo y espacio del conocimiento de sus trabajadores y toma de mejores decisiones (Gottschalk, 2005), le proporciona un valor agregado a un programa de SPI para ser más efectivo y productivo a través de la inclusión de nuevos roles, procesos y actividades orientadas al conocimiento y su gestión. Algunos de los modelos de KM desarrollados recientemente por grupos de trabajo colombianos6 consideran procesos altamente estructurados orientados a medianas y grandes corporaciones, que harían compleja su aplicación en micro y pequeñas empresas. Es necesaria, entonces, la definición de un modelo liviano de KM que permita gestionar adecuadamente el conocimiento que se genera durante el proceso de mejora en las MiPyME7, para que dicho proceso no se convierta en un elemento burocrático, restrictivo e insostenible en tiempo y costos.
Se debe reconocer la ineludible presencia e importancia de las MiPYME en Colombia debido al gran impacto económico y estructura productiva representada en sus relevantes aportes al PIB del país, por ello se han convertido en un factor motivador para el desarrollo de soluciones que les permita ser más efectivas, eficientes y eficaces. De acuerdo a lo encontrado en la literatura, se puede establecer que las MiPYME tienen grandes dificultades para acceder a recursos financieros, a procesos innovadores y a nuevas tecnologías para mejorar su productividad y la calidad de sus productos.
De acuerdo a los planteamientos expuestos, la presente investigación busca desarrollar un marco conceptual resultante de la selección de un modelo de KM apropiado y adaptado para ser introducido en un programa SPI en las MiPyME DS, permitiendo así la integración de estas dos áreas de forma ágil.
La siguiente sección muestra una visión general de algunos de los trabajos que tratan sobre la necesidad de proveer al campo de la mejora de procesos de software con mejores herramientas y disciplinas, entre ellas la KM; en la sección 3 se describe brevemente la gestión del conocimiento y la mejora de procesos Software. La sección 4 describe la importancia de la integración de estas dos áreas y con base a las actividades planteadas por la gestión del conocimiento se analiza la conveniencia de la implementación de estas como solución a algunas necesidades identificadas en los proyectos SPI. Para terminar, en la sección 5 se presentan algunas conclusiones y trabajos futuros.
Trabajos relacionados
El concepto de gestión del conocimiento surgió a mediados de los ochenta y su implementación y uso se incrementó desde 1990 (Lindvall y Rus, 2002). Por su parte, la mejora de procesos software conocida internacionalmente como SPI ha sido un tema de gran interés desde 1990 para la comunidad de ingeniería del software (Pino, 2006). De esta forma, es importante mencionar algunos de los trabajos desarrollados, con el fin de establecer el estado actual de estas dos áreas y los aportes de las mismas.
Toward a Practical Solution for Capturing Knowledge for software Projects
Los autores de esta investigación (Komi-sirviö y MäntyniemI, 2002) concluyen que una de las utilidades de KM es darle soporte a las actividades de SPI, debido a que tanto los procesos de ingeniería del software como las técnicas de gestión de calidad fallan si no se basan en el conocimiento necesario o que ha sido producido dentro de la organización. Se hace un cuestionamiento de cómo puede ser capturado eficientemente el conocimiento en una organización desarrolladora de software, buscando mejorar la captura y reutilización del mismo. Para llevar a cabo este caso de estudio los autores realizaron entrevistas a los empleados que revelaron que los administradores y los diseñadores sienten que gran parte del conocimiento se desperdicia, que existe conocimiento difícil de encontrar, y en ocasiones cuando se encuentra no es reutilizable.
Utilizing Knowledge Management in software Process Improvement - The Creation of a Knowledge Management Process Model
Se desarrolló un modelo de procesos para actividades basadas en KM como un primer paso hacia un framework SPI basado en conocimiento. Este modelo fue aplicado y probado en una VSC (Virtual software Corporation) e incluye un primer ciclo de mejora que consta de análisis, definición, plan y efectos; además de un proceso operacional de creación, recolección, almacenamiento, actualización y distribución del conocimiento. Como conclusión se obtuvo que el modelo podría ser extendido hacia un framework, así como también hacia áreas específicas de ingeniería del software (Komi-sirviö y Kucza, 2001).
Using Knowledge Management to Improve software Process Performance in a CMM Level 3 Organization
La incorporación de estrategias de KM se pudo utilizar como solución a un problema encontrado en una empresa, donde la gran cantidad de capital intelectual que surge en el programa de mejora de sus procesos software no era gestionado. Estas estrategias incluían: (1) Desarrollar una base de datos de los procesos software basada en KM y proporcionar soporte con KM para adaptar los procesos organizacionales a los proyectos. (2) De acuerdo a la base de datos, estimar, planear, rastrear y replanear los proyectos software, y (3) realizar una búsqueda que permita llevar a la empresa a nivel 4 CMM. Las estrategias desarrolladas permitieron la adaptación de sus procesos a través de la herramienta ProKnowHow, la cual está basada en KM y permite soportar la mejora de procesos software (De Almedia, Mota y Rosa, 2004).
Karagabi KMModel
El principal objetivo de este proyecto es desarrollar un modelo que pueda servir de guía de referencia para la construcción de organizaciones orientadas a conocimiento. La propuesta presentada está basada en las teorías y prácticas de modelado organizacional, definiendo una serie de submodelos para abordar las distintas perspectivas de conocimiento organizacional que incluyen los modelos de estructura, motivacional, el de procesos del negocio, el de recursos humanos orientado a competencias, y los de experticia, entre otros, y de los trabajos en torno a la ingeniería del conocimiento, la gestión del conocimiento y la gestión por procesos del negocio (BPM) (Gonzalez y Joaquí, 2007).
Modelo jerárquico de roles para organizaciones de pequeño tamaño
La dificultad de implantar la mejora de procesos en pequeñas organizaciones conllevó a la definición de jerarquías de roles aplicables, a construir un framework software accesible vía Web para la generación de sistemas de ayuda a la toma de decisiones para almacenar datos del proceso de desarrollo de software (PDS) y permitir la optimización del proceso y el alcance de la calidad. Se detectó que es necesario gestionar el conocimiento a utilizar en la definición, utilización y mejora de los PDS. La reutilización de dichos activos correspondientes tanto a la ingeniería del software como a la ingeniería del conocimiento hace necesaria la integración de KM y la gestión del PDS (Larburu y Pikatza, 2002).
Como se puede observar, cada uno de estos trabajos permite detectar la importancia del conocimiento y su adecuada gestión dentro de las organizaciones, al mismo tiempo que se busca la mejora continua de sus procesos. Además, el tener en cuenta las lecciones aprendidas, las experiencias buenas y malas, y las mejores prácticas, que representan el capital intelectual de la organización, ha llevado a estas organizaciones a reconocer las áreas en las que se deben enfatizar las mejoras, al igual que a realizar estimaciones más certeras en proyectos futuros. La diferencia entre estos trabajos y el propuesto en este artículo radica en que los primeros se orientan a empresas de gran tamaño que pueden llevar a cabo procesos burocráticos y complejos, como es el caso de CMM o CMMI y que no podrían ser implantados en las MiPyME DS debido a su infraestructura y recursos limitados, por lo tanto es necesario idearse la manera de que estos procesos sean puestos en marcha de forma liviana, menos costosa y logrando los mismos resultados.
Gestión del conocimiento
El conocimiento como información de gran valor está jugando un rol importante dentro de las empresas de hoy. La necesidad de mantenerse en el mercado de forma competitiva ha permitido que las organizaciones sientan gran interés en hacer uso de su conocimiento, de tal modo que les represente una utilidad. Es aquí donde nace la KM como un mecanismo que define una serie de procesos para gestionar efectivamente el conocimiento generado (Stankosky, 2005). Esta gestión involucra: captura, organización, actualización y divulgación del conocimiento, originado y posteriormente utilizado por los mismos empleados de la organización. KM permite que los trabajadores obtengan el conocimiento indicado, en el momento indicado, generando como resultado personas más competitivas que aprenden de los errores, que reutilizan las mejores prácticas para solucionar problemas y tomar buenas decisiones, y por ende llevan a la compañía hacia una mejora en cuanto a productividad y calidad. La KM ha sido identificada como uno de los factores claves para el desarrollo, sostenimiento y competitividad de las organizaciones. Para que el conocimiento sea realmente aprovechado debe ser tratado como cualquier otro activo de negocio; como algo que se utiliza, mantiene y distribuye en beneficio de la organización. Las nuevas características de las organizaciones orientadas al conocimiento requieren nuevas estructuras, cambios culturales profundos, nuevas plataformas tecnológicas y modelos para la estructuración del conocimiento y de los procesos que permiten gestionarlo (Gonzalez y Joaquí, 2007). Si consideramos que la nueva forma de ver a las organizaciones desde la perspectiva del conocimiento, implica considerarlo como un activo estratégico, y a los procesos que permiten gestionarlo como cualquier otro proceso del negocio de la organización, los modelos existentes para el modelado empresarial se quedan cortos para soportar las nuevas tendencias (González y Joaquí, 2004). Algunos estudios recientes realizados por compañías y grupos de investigación colombianos8 han definido una propuesta para el modelado y gestión del conocimiento en organizaciones orientadas a conocimiento, basada en modelos de motivación (BMKM), estructura (OSKM), procesos (BPKM), recursos humanos y competencias (HRKM), y modelos para caracterizar los activos y objetos de conocimiento (González y Joaquí, 2007).
La aplicación de esta disciplina en el campo del desarrollo de software se considera promisoria dada la naturaleza misma de la ingeniería de software como actividad intensiva en conocimiento, cuyos principales productos y recursos están representados en capital intelectual y en la manera como la experiencia de desarrollos previos es utilizada para mejorar el proceso de desarrollo de software (Dingsoyr, 2002), (Holz, 2003), (Landes, 1999).
Actividades generales de KM
Las actividades de KM se pueden encontrar dentro de la literatura con diferentes nombres, pero su objetivo es el mismo; el nombre dado depende del escritor. En general, las actividades de KM son las siguientes:
1) Adquirir el conocimiento (aprender, crear o identificar).
2) Analizar el conocimiento (apreciar, validar o valorar).
3) Preservar el conocimiento (organizar, representar o mantener).
4) Usar el conocimiento (aplicar, transferir o compartir).
Estas actividades son lógicas teniendo en cuenta que para gestionar el conocimiento se debe primero tener algún conocimiento que gestionar, se tendrá que analizar este conocimiento, se necesitará almacenarlo y, por supuesto, se deseará la capacidad de acceder a él y usarlo (Watson, 2003).
Mejora de procesos software Software Process Improvement
En la actualidad, la necesidad de mejorar la calidad del software es alta. Al mismo tiempo, las tareas para el desarrollo de sistemas han llegado a ser más complejas. Para obtener un proceso de producción de software sin fallas, de buena calidad, adecuado a las necesidades o requerimientos estimados y entregados en un tiempo estipulado, es claro que el desarrollo del software debe convertirse en un proceso definido, disciplinado y aceptado por todos los integrantes de la organización (Booch, Jacobson y Rumbaugh, 1999). Un proceso de software es definido cuando se encuentra escrito a tal detalle que permite que los ingenieros puedan hacer uso de este frecuentemente, es decir, se lleve una disciplina de procesos. Además, dicho proceso debe ser flexible, poder ser fácilmente aprendido, facilitar el cambio y la innovación (Bodas, 2003). Ahora bien: se puede definir a la mejora de procesos como: El esfuerzo continuo para saber acerca del sistema de causas en un proceso y para usar éste conocimiento en el cambio y mejora del proceso y de esa manera reducir su variación, complejidad, y mejorar la satisfacción del cliente (Moen, Nolan y Provost, 1999). Como se puede observar, la mejora va encaminada a mantener procesos estables que permitan obtener realmente los resultados esperados.
Estudios previos han demostrado el éxito de los programas de SPI (Gibson y Goldenson, 2003), pero estos programas de mejora, al igual que los proyectos de ingeniería del software, pueden fallar debido a las razones enumeradas a continuación:
1) Las personas de la organización no se comprometen lo suficiente en las actividades de mejora.
2) La alta dirección no ha adquirido conciencia de las grandes ventajas que un programa de mejora puede traer para su compañía, la consecuencia de esto es que al programa de SPI, no se le asignen los recursos adecuados representados en tiempo, dinero, tecnología o personal. Un programa de SPI por lo tanto, debe ser tratado igual que un proyecto de software, al cual se le deben asignar recursos, y realizar una planeación, un seguimiento y un control.
3) Los activos intangibles generados en cada ciclo de mejora son almacenados en una base de conocimiento (KB por sus siglas en inglés) sin la debida gestión, para que puedan contribuir efectivamente en la toma de decisiones en futuros ciclos o proyectos de SPI.
4) Las prácticas utilizadas por el grupo de mejora no son las adecuadas, esto debido a malas interpretaciones de los modelos utilizados, para evitar esto es conveniente que las personas encargadas de la mejora comprendan muy bien los modelos utilizados y sus implicaciones al aplicarlos a las organizaciones (Jones, 2004).
5) La comunicación poco efectiva entre el grupo de mejora y en general de toda la organización, pues deben conocer los requisitos, objetivos y alcance del programa de mejora y la información debe ser bidireccional desde la alta gerencia hasta el nivel inferior de la organización (Analabon, 2005). La siguiente sección describe el modelo que se ha propuesto.
Necesidades en los programas SPI
Dentro de las razones por las cuales es importante la inclusión de KM en un programa SPI se puede mencionar que existe la necesidad de que haya mecanismos o aplicaciones para darle soporte escrito a todo el conocimiento generado durante la ejecución de todo un ciclo en un programa de SPI, para que este sea empaquetado o tenga un formato que permita compartirlo fácilmente con los demás integrantes del equipo de mejora (De la Torrienter, 1998). Los programas de SPI mantienen una KB en la cual se almacenan todas las lecciones aprendidas y experiencias adquiridas tanto positivas como negativas durante cada ciclo de mejora. El problema en sí es que este conocimiento no es gestionado de manera que les facilite a los empleados el acceso al conocimiento adecuado en el momento adecuado, además no se especifica cómo se debe realizar esta KB, qué roles deben ser los involucrados en su creación y gestión y, lo más importante, cómo contribuir de manera organizada con la KB para que todos busquen una realimentación continua, de manera que las personas integrantes del equipo de mejora interesadas en determinados temas puedan acceder y encontrar la información necesaria de actuales o anteriores ciclos de mejora; de esta manera se está garantizando que en ausencia de algún participante del proceso se cuente con otras personas capacitadas o con fácil acceso a la información, que permita reemplazar a la persona ausente en sus respectivas labores; el hecho de que exista y esté disponible esta KB, puede ayudar en:
1) La toma efectiva de decisiones basadas en experiencias anteriores.
2) La consulta de casos de estudio exitosos.
3) Tener organizada la información respectiva a lecciones aprendidas, con el objetivo de proporcionar las mejores soluciones de programas de SPI pasados, para ser aplicadas en programas futuros en otras empresas, así como también problemas presentados o experiencias desastrosas. Esto con el fin de reducir los retardos en la toma de decisiones y aumentar la implementación o reutilización de soluciones ya existentes.
4) Así mismo, todo lo anterior permitirá identificar quiénes son las personas que poseen determinado tipo de conocimiento o habilidades, es decir, desde el punto de vista estratégico, para las organizaciones es relevante conocer cuáles son las fuentes de información para poder utilizarlas como motor en el autoaprendizaje de los miembros de los equipos de mejora.
5) La transmisión de conocimientos es incompleta por falta de sistematización del conocimiento tácito (Forradellas, et al., 2001).
Gestión del conocimiento en un programa de mejora de procesos software
En esta sección se describe la importancia de incluir aspectos de gestión del conocimiento dentro de un modelo de mejora de procesos de desarrollo de software en particular en MiPyME. La inclusión de KM en las organizaciones ayuda en gran medida a que estas mejoren de forma que se mantengan competitivas en el mercado, como es el caso de una pequeña compañía del Reino Unido (Aspinwall y Wong, 2006), en donde al implantar los procesos de KM dieron solución a una serie de problemas que creaban un entorno caótico, tales como: la información adquirida no era organizada de forma adecuada, obteniendo como resultado almacenamiento de información en diferentes directorios, fólderes y archivos, además de no encontrarse categorizada de forma tal que su búsqueda se facilitara; es más, no había ningún proceso que se encargara de verificar la relevancia de la información o la actualización de la misma, llevando a repositorios aislados que contenían más basura que conocimiento y que a la vez aumentaba el tamaño de los mismos, generando una alta desconfianza en el personal, el cual prefería mantener su información en sus computadoras personales.
Es en este punto donde KM entra a jugar un papel importante dentro de un programa SPI, al permitir integrar estrategias, procesos, roles orientados a conocimiento y herramientas que incluyen bases de datos o repositorios de experiencias, sistemas de gestión documental y de trabajo colaborativo, entre otros, que facilitan que este conocimiento que surge desde y hacia todas las personas que interactúan en el programa pueda ser almacenado y distribuido de tal forma que la información a la que se tiene acceso fácilmente sea concisa, verídica y actualizada. Los expertos en SPI necesitan conocer cómo y cuándo aplicar diferentes técnicas, qué experiencias pasadas y lecciones han sido aprendidas, cuál es la cultura de la compañía, cuáles son los objetivos del negocio, etc. (Seija, 2004).
Objetivos de la gestión del conocimiento y su adaptación a los programas SPI
Uno de los objetivos principales de KM es promover la mejora continua de los procesos, procedimientos y métodos del negocio,?enfatizando la generación y utilización del conocimiento (Pávez, 2000); como se puede ver, tiene una estrecha relación con la mejora de procesos. Otro de los objetivos de KM es que permite monitorear y evaluar los logros obtenidos mediante la aplicación del conocimiento, esto puede ayudar a determinar qué tan efectivo ha sido para la organización o para el grupo de mejora la ejecución de una práctica particular del programa de mejora; entre otros, se pueden también mencionar: potencializar las habilidades, competencias y conocimiento de las personas que integran los grupos de mejora, además de fomentar la creación de una cultura orientada al autoaprendizaje y socialización del conocimiento para permitir que las buenas prácticas y las lecciones aprendidas sean de total conocimiento de los participantes en la mejora (Pávez, 2000).
La Tabla 1 presentada a continuación describe algunas de las principales necesidades detectadas en un programa de SPI y cómo pueden ser solucionadas o suplidas al integrar las actividades de KM a estos programas.
Importancia de la gestión de los activos tangibles e intangibles en un SPI
Cuando las organizaciones notaron que su información y su conocimiento gestionados de forma adecuada era lo que verdaderamente les proporcionaba un valor agregado, que los diferenciaba de su competencia y permitía que se mantuvieran dentro del mercado competitivo, se generó la división entre los activos tangibles y los intangibles (Carrion, 2007).
Dentro de los proyectos SPI y, más específicamente, dentro de cada uno de sus ciclos, se va generando una serie de activos intangibles que se van almacenando en un repositorio o KB. Así como es importante gestionar adecuadamente los activos tangibles con el fin de tener versiones y documentación actualizadas de cada uno de los productos generados, también surge la necesidad de gestionar los activos intangibles (conocimiento) de una forma especial, es decir, proporcionar a la organización conocimiento actualizado, organizado y estructurado, que brinde apoyo a la toma de decisiones para futuros proyectos y en general a la mejora de toda la organización. Lo anterior no es ajeno a los programas SPI; en este tipo de proyectos también se generan tanto activos tangibles como intangibles que deben ser gestionados. La gestión de activos intangibles dentro de un programa de SPI proporcionaría una mejor ejecución de cada ciclo, al tener en cuenta lecciones aprendidas, mejores prácticas, experiencias fallidas, etcétera.
La adopción de modelos de mejora de procesos, como CMMI9 y MoProSoft10, este último haciendo parte del proyecto CompetiSoft, implica un trabajo continuo que debería promover la creación y reuso de conocimiento basado en experiencias previas. Durante el desarrollo de un proceso software el conocimiento puede usarse como la base para el desarrollo del nuevo producto. CMMI propone el uso de una librería de activos de procesos-PAL (Process Assets Library) para ayudar a ese aprendizaje organizacional. Existen algunos sitios patrocinados por entidades gubernamentales y privadas que disponen de una biblioteca de activos de procesos para la comunidad de desarrolladores de software. Estas iniciativas demuestran la necesidad de contar con entornos que soporten la apropiación, formalización y divulgación del conocimiento con respecto al desarrollo de software.
En trabajos previos se ha realizado una caracterización de los activos de conocimiento relevantes a una organización de software (Anaya y Henao, 2007) así como de los modelos para la caracterización de la estructura, procesos, planes estratégicos y recursos humanos en organizaciones orientadas a conocimiento (González y Joaquí, 2007). Estos modelos conceptuales sirven como referente de partida en la construcción de una base de conocimiento para una organización de software que desea gestionar el conocimiento generado y evolucionado tanto en el proceso de ingeniería (el cual representa su cadena de valor), como en los procesos de gestión y apoyo. Los activos de conocimiento (Knowledge assets), como se puede observar en la Figura 1, son generados y utilizados por unidades de trabajo y sirven de soporte para la generación de otros activos de proceso (Anaya y Henao, 2007).
A su vez, los activos de procesos pueden componerse para formar activos de procesos de mayor granularidad. Estos activos se encuentran definidos dentro de un contexto (por ejemplo, tipo de cliente, dominio de aplicación, tecnología objetivo, entre otros) y tienen una alta dependencia de las personas que son las encargadas de producirlos, validarlos y evolucionarlos. A su vez, los activos de conocimiento pueden ser especializados, atendiendo a la naturaleza del conocimiento que representan. Esta clasificación atiende interrogantes básicos acerca del conocimiento como:
1) Qué conocimiento está disponible de fuentes externas (Conceptual Base Asset).
2) Cómo dicho conocimiento puede ser utilizado (Process Asset).
3) Cuáles han sido los resultados de aplicar dicho conocimiento (Experience Asset).
4) Por qué debe ser utilizado (Business Asset)
5) Cuáles son las habilidades requeridas o desarrolladas con el uso de un activo (Profile Asset).
6) Cómo puede medirse la efectividad de aplicación de un activo (Control Asset).
7) Cuáles son los recursos necesarios (organizacionales, de tecnología) para su aplicación (Infraestructure Asset).
El modelo conceptual propuesto ha sido el resultado de la apropiación de los principios de gestión del conocimiento en el campo de la ingeniería de software y las experiencias de aplicación en una empresa desarrolladora de software que forma parte del grupo de empresas evaluadas en CMMI (CMMI, 2002), dentro del proyecto liderado por Proexport y el Sena (Anaya, et al., 2006). Si bien la implantación de la gestión del conocimiento, como un proceso transversal de apoyo a una organización que busca altos niveles de madurez es un camino que ya emprendieron algunas compañías, el reto en este proyecto es buscar que buena parte de la experiencia adquirida por algunas organizaciones pueda ser representada, compartida y divulgada de manera que sirva de apoyo para apalancar a pequeñas y medianas empresas que aún no han adquirido la cultura de la calidad. Este reto implica consideraciones tanto desde lo tecnológico como desde lo humano y cultural. Desde el punto de vista tecnológico es necesario disponer de una infraestructura de hardware, software de base y redes de comunicaciones que soporte la definición de una comunidad virtual.
Plataformas para la gestión del conocimiento
El reto de desplegar estrategias y procesos de gestión del conocimiento en los procesos de mejora en MiPyME implica consideraciones tanto desde lo tecnológico como desde lo humano y cultural. Desde el punto de vista tecnológico es necesario disponer de una infraestructura de hardware, software de base y redes de comunicaciones que soporten el despliegue de las estrategias de KM. Dentro del proyecto actual se plantea la apropiación de las herramientas y componentes desarrollados dentro del proyecto ORGest® como parte de un esfuerzo conjunto entre el Grupo de Investigación y Desarrollo en Ingeniería de software - IDIS de la Universidad del Cauca y el sector empresarial para desarrollar una infraestructura común que soporte las estrategias y procesos de KM en los programas de mejora de procesos basados en el modelo Competisoft.
El proyecto ORGest® (González, 2004) generó una plataforma software conformada por un conjunto de herramientas, componentes y metodologías que permiten estructurar y gestionar de manera adecuada el conocimiento organizacional y posibilita la creación de servicios de valor agregado sobre el mismo.
ORGest® se apoya en la construcción de modelos de conocimiento basados en ontologías, sobre distintos aspectos relevantes de una organización, e incluye una serie de herramientas que permiten gestionarlos, reutilizarlos y compartirlos entre diversas aplicaciones, sistemas, organizaciones, comunidades y usuarios. ORGest® da soporte al ciclo de vida del conocimiento dentro de organizaciones orientadas a conocimiento. Uno de los componentes fundamentales de ORGest® es la plataforma de Portales de Conocimiento anKore® (Claros, González, Joaquí y Velasco, 2006). anKore® genera dinámicamente interfaces de navegación, búsqueda, visualización, y edición de conceptos, individuos y propiedades de las ontologías gestionadas por ORGest®, y es usada para generar la funcionalidad básica de la plataforma de gestión del conocimiento.
Conclusiones y Trabajos Futuros
KM y SPI son dos áreas del conocimiento que apoyan a las empresas en su interés por permanecer vitales dentro de un mercado competitivo, donde la calidad de los productos y la mejora continua son la prioridad. En cada ciclo de mejora en un programa SPI se genera una cantidad de conocimiento que debe ser gestionado, para adquirir un verdadero valor agregado que marque la diferencia a la hora de competir en el mercado. Las actividades de KM, permiten que todo este conocimiento sea adquirido de manera organizada, actualizada y eficiente.
Estas dos áreas han sido aplicadas a grandes empresas, que poseen los suficientes recursos para invertir en su implementación; sin embargo, en Latinoamérica contamos con una gran cantidad de MiPyME cuyos recursos son limitados. La idea es incorporar en los programas de SPI de estas empresas las actividades de KM, de modo que les permita a estos que todo el conocimiento que se genera y todo lo que saben las personas sea gestionado proporcionando un verdadero valor que incremente la calidad de sus productos y su productividad de modo que compitan en un mercado más amplio.
Como trabajo futuro se plantea definir un modelo adaptado a las PYME desarrolladoras de software y validarlas en un caso concreto de empresas que estén desarrollando un proceso de mejora con el fin de identificar si realmente el esquema propuesto puede llevar a un mejor desarrollo de sus procesos.
Agradecimientos
Este trabajo forma parte de los proyectos: COMPETISOFT (506AC0287, financiado por CYTED) y REVVIS, financiado por CYTED.
6 Karagabi® KMModel, Totems Software, www.totems-software.com; Grupo IDIS, Investigación y Desarrollo en Ingeniería del Software, http://www.unicauca.edu.co/idis/
7 MIPyME: micro, pequeñas y medianas empresas.
8 TOTEMS Software, www.totems-software.com; Grupo IDIS, Investigación y Desarrollo en Ingeniería del Software, http://www.unicauca.edu.co/idis/
9 CMMI Capability Maturity Model Integration. Modelo de calidad.
10 MoProSoft: Modelo de procesos de software.
Bibilografía [ Links ]
Anaya, R., Cechich, A., Henao, M., Enfoque integrado de la Gestión del Conocimiento en el modelo de procesos de Competisoft., Competisoft Project, Technical Report, 2006. [ Links ]
Anaya, R., Londoño, L., Hurtado, J., Una Estrategia para Elevar la Competitividad de las Industrias de Software PYMES., Memorias del /9° Workshop Iberoamericano de Ingeniería de Requisitos y Ambientes Software/, IDEAS, La Plata, Argentina., 2007. [ Links ]
Alquicira Esquivel, C. M. en C., Programa de mejora, una carrera por la mejora que no tiene meta., Último acceso 10 de Octubre de 2006. Disponible en Web: http://www.avantare.com/articulos/novedades_articulodelmes.html [ Links ]
Analabon, J. R., Las Causas más Comunes de Falla en la implantación de Mejoras en Software. Universidad de Santiago de Chile., Departamento de Ingeniería Informática, Nov., 2005. [ Links ]
Bodas, D. J., El CMM y la mejora continua del proceso de software., Madrid, Centro de Estudios Superiores Felipe II (UCM), Ingeniería Técnica Informática de Sistemas., Jun., 2003. [ Links ]
Capability Maturity Model® Integration (CMMISM)., Version 1.1. CMMISM for Systems Engineering, Software Engineering., Integrated Product and Process Development, and Supplier Sourcing. (CMMI-SE/SW/IPPD/SS, V1.1). Software Engineering Institute, Carnegie Mellon University, 2002. [ Links ]
Carrion, J., Introducción conceptual a la Gestión del Conocimiento., Disponible el 03 de Marzo del 2007 en Web: http://www.gestiondelconocimiento.com [ Links ]
De Almeida, R., Mota, L., Rosa, F., Using Knowledge Management to Improve Software Process Performance in a CMM Level 3 Organization., Memorias de la 4ta. Conferencia Internacional de Calidad del Software, Septiembre de 2004, pp. 162-169. [ Links ]
De La Torrienter, R., Intranets/Extranets para la Gestión del Conocimiento., Boletín de factores humanos, No. 8, Dic., 1998. [ Links ]
De La Villa, M., Ruiz, M., Ramos, I., Modelos de evaluación y mejora de procesos: Análisis comparativo., In 5th ADIS Workshop (Apoyo a la Decisión en Ingeniería del Software), Málaga, España, 2004. [ Links ]
Dingsoyr, T., Conradi, R., A Survey of Case Studies of the Use of Knowledge Management in Software Engineering., International Journal of Software Engineering and Knowledge Engineering, Vol. 12, No. 4, 2002, pp. 391 414. [ Links ]
Forradellas, P, Pantaleo, G, Rogers, J., El modelo CMM/CMMI - Cómo garantizar el éxito del proceso de mejoras en las organizaciones, superando los conflictos y tensiones generados por su implementación. [ Links ]
Goldenson, D. R., Gibson, D. L., Demonstrating the Impact and Benefits of CMMI: An Update and Preliminary Results., CMU/SEI-2003-SR-009., Oct., 2003. [ Links ]
González, A., ORGest: Plataforma para la Estructuración, Gestión y Reutilización de Conocimiento Organizacional., TOTEMS Software, Nov., 2004. [ Links ]
González, A., Velasco, C., Claros, I., Joaquí, C., anKore: Plataforma para la generación dinámica de portales de conocimiento., Popayán: TOTEMS Software, Nov., 2006. [ Links ]
González, A., Joaquí, C., Redes de Conocimiento Organizacional., Memorias del II Congreso Internacional de Gestión del Conocimiento y de la Calidad, Jun., 2004. [ Links ]
González, A., Joaquí, C., Modelo de referencia para la introducción de iniciativas de gestión del conocimiento en organizaciones basadas en conocimiento., TOTEMS Software, 2007. [ Links ]
Gottschalk, P., Strategic Knowledge Management Technology., Yurchak Printing Inc(ed.), 2005. pp.1-2. [ Links ]
Holz, H., Process-Based Knowledge Management Support for Software Engineering., University of Kaiserslautern, dissertation de Verlag, 2003. [ Links ]
Hurtado, J. A, Pardo, C., Pino, F., Factores de éxito o fracaso de un programa de mejora de procesos software: caso real en un grupo de MiPyMes, 2007. [ Links ]
Jacobson, I., Booch, G., Rumbaugh, J., The unified Software Development Process., Addison Wesley, 1999. [ Links ]
Jones, L. G., Software Process Improvement and Product Line Practice: Building on Your Process Improvement Infrastructure., Sept., 2004. [ Links ]
Komi-sirviö, S., MäntyniemI, A., Toward a Practical Solution for Capturing Knowledge for Software Projects., IEEE Software, Vol. 19, No. 3, May/Jun., 2002, pp. 60-62. [ Links ]
Kucza, T., Komi-sirviö, S., Utilizing Knowledge Management in Software Process Improvement: The Creation of a Knowledge Management Process Model., Proc. 7th International Conf. Concurrent Enterprising (ICE 2001), Univ. of Nottingham, Center for Concurrent Enterprising, Nottingham, UK, 2001, pp. 241249. [ Links ]
Larburu I. U., Pikatza, J. M., Sobrado, F. J., García J. J., Modelo jerárquico de roles para organizaciones de pequeño tamaño. Actas de las Jornadas de Ingeniería del Software y Bases de Datos, Workshop Apoyo a la Decisión en Ingeniería del Software Decisión Support in Software Engineering (ADIS), San Lorenzo del Escorial, Madrid, 2002. [ Links ]
Landes, D., Schneider, K., Houdek, F., Organizational learning and experience documentation in industrial software projects., Int. J. Human-Computer Studies 51, 1999, pp. 643-661. [ Links ]
Lopez, C., Meroño, Á., Procesos e instrumentos de Gestión del Conocimiento: propuesta de un modelo., XIV Congreso Acede, Murcia, Sep., 2004. [ Links ]
Moen, R. D., Nolan, T. W., Provost, L. P., Improving Quality Through Planned Experimentation., 2da. Edición, McGraw-Hill (ed.), 1999. [ Links ]
Nonaka, I., Takeuchi, H., The knowlegde-creating company., Harvard Business Review., Nov. /Dec., 1991, pp. 96-104. [ Links ]
Pardo, C., Fernández, L., Proceso Ágil para la Mejora de Procesos de Software: Agile SPI Process., tesis presentada a la Universidad del Cauca, para optar al titulo de Ingeniero de Sistemas, Popayán, 2006. [ Links ]
Pávez, A., Modelo de implantación de Gestión del Conocimiento y Tecnologías de Información para la Generación de Ventajas Competitivas., Universidad Técnica Federico Santa María, Departamento de Informática, Valparaíso, Chile, 2000. [ Links ]
Pino, F. J., 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, Vol.2, No. 1, 2006. [ Links ]
Rus, I., Lindvall, M., Knowledge Management in Software Engineering., IEEE Software, Mayo/Junio 2002, pp. 36-38. [ Links ]
Stankosky, M., Creating the discipline of knowledge management., Elsevier Butterworth Heinemann (ed.), Oxford, 2.005. pp. 51-52. [ Links ]
Seija, K., Development and evaluation of Software Process Improvement methods. Otamedia Oy, Faculty of Science, University of Oulu, Linnanmaa, 2004. [ Links ]
Watson, I., Applying Knowledge Management Techniques for Building Corporate Memories., University of Auckland., Morgan Kaufmann publishers, 2003, pp. 13-15. [ Links ]
Wong, K. Y., Aspinwall, E., Expert Systems with Applications: Development of a knowledge management initiative and system: A case study., Vol. 30, No. 4, May., 2006, pp. 633-641. [ Links ]