Serviços Personalizados
Journal
Artigo
Indicadores
- Citado por SciELO
- Acessos
Links relacionados
- Similares em SciELO
Compartilhar
RISTI - Revista Ibérica de Sistemas e Tecnologias de Informação
versão impressa ISSN 1646-9895
RISTI no.spe3 Porto mar. 2015
https://doi.org/10.17013/risti.e3.17-28
ARTÍCULOS
Extracción del Conocimiento tácito como base para el establecimiento de mejora de procesos de software en las Organizaciones de desarrollo de Software
Tacit knowledge Extraction to establish software process improvement in software development organizations
Jezreel Mejia, Guadalupe Uribe
Centro de Investigación en Matemáticas, CIMAT A.C. Unidad Zacatecas, Av. Universidad No. 222, Fracc. La Loma, C.P. 98068, Zacatecas, Zacatecas, México E-mail: j.mejia@cimat.mx, guadalupe.uribe@cimat.mx
RESUMEN
En orden a implementar mejoras de procesos, las organizaciones de desarrollo de productos y servicios de software deben realizar una correcta gestión del conocimiento tácito. Muchas organizaciones y específicamente las pymes, enfrentan una serie de problemas relacionados con carencias en la gestión de este conocimiento tales como: la falta de un proceso bien definido, formalizado o la ausencia de un proceso como tal. Surge la necesidad de realizar la extracción del conocimiento tácito en las pymes con la finalidad de formalizarlo, que se vea estandarizado en procesos organizacionales y en base a éste, proponer posibles mejoras de procesos o la adopción de un estándar o modelo de calidad. Este artículo presenta una herramienta web con el objetivo de dar soporte a la extracción del conocimiento tácito organizacional para soportar la mejora de procesos y un caso de estudio que demuestra la viabilidad de la herramienta propuesta.
Palabras clave: Conocimiento Tácito, Mejora de Procesos de Software, Pymes, Extracción del Conocimiento Tácito, Herramienta de software.
ABSTRACT
In order to implement process improvements, software product development and software services organizations must make a correct management of tacit knowledge. Many organizations and specifically SMEs face a number of problems related to deficiencies in the management of this knowledge such as: lack of a well-defined, formalized or absence of such a development process. The need arises to perform the extraction of tacit knowledge in SMEs in order to formalize, display standardized organizational processes and based on it, to propose proceses improvements or adoption of a quality standard or model. This paper presents a web tool with the aim of supporting the extraction of organizational tacit knowledge to support proceses improvement and a case study that demonstrates the feasibility of the proposed tool.
Keywords: Tacit Knowledgre, Software Process Improvement, SMEs, Tacit Knowledge Extraction, Software Tool.
1 Introducción
En orden a desarrollar la competitividad y proveer un nivel óptimo de calidad en productos y servicios de software, las organizaciones de desarrollo de software deben implementar mejoras continuas a sus procesos (Munoz Mirna, 2012), (Subramanian, Jiang, & Klein, 2007), (Cabrera, 2008). Un factor vital para estas organizaciones, es gestionar correctamente el conocimiento tácito que posee el personal con el fin de establecer o formalizar éste en los procesos de desarrollo (Rose Jeremy, Aaen Ivan, 2008). Este conocimiento representa un activo para la toma de decisiones dentro de la organización, pues la calidad de los productos está asociada a la calidad de los procesos (Ashrafi, 2003), (Trudel, Lavoie, Paré, & Suryn, 2006), (Rahman, 2011). Tal y como lo afirman Abdullah y Mohamed (Abdullah, 2012), se puede considerar que la gestión del conocimiento es el núcleo de la mejora de procesos, ya que es muy difícil implementar mejoras cuando no se conoce el proceso base.
Sobre el conocimiento tácito, en su investigación sobre los distintos tipos de conocimiento, Polanyi (Wan, Jiangping, Wan Dan, Luo Weiping, 2011), afirma que el conocimiento tácito, es aquél conocimiento que no ha sido codificado y que presenta una mayor complejidad al transmitirse. Además, se basa en experiencias personales, prácticas organizacionales no formalizadas o conocimiento empírico y es conservado por los expertos (Nonaka & von Krogh, 2009).
Sin embargo, “No todo es miel sobre hojuelas” en el área de procesos de software tal y como lo muestra el estudio Stella, Villa y Ocampo [32], precisamente las mejoras son requeridas debido a que existe un emergente número de problemas a resolver tales como, productos deficientes, planificaciones mal estimadas, incorrección en el cálculo de los presupuestos, incumplimientos, sub y sobre estimaciones de tiempos de entregas y un sinfín de detalles que las organizaciones buscan afrontar mediante la implementación de mejoras.
En este contexto, según el estudio de Valtierra y Muñoz (Claudia, Mirna, & Jezreel, 2013), (Jezreel, Muñoz, Mirna, Calvo-manzano, & Cuevas, n.d.), se detecta una serie de problemas cuya raíz se encuentra en la falta de una correcta gestión del conocimiento tácito y que afecta sobre todo a las organizaciones conocidas como pymes (Claudia et al., 2013). Este tipo de organizaciones son importantes para la economía mundial ya que representan el 52% de la generación de producto interno bruto y el 72% en la generación de empelos formales (Claudia et al., 2013) . Entre los principales problemas dentro de las pymes se encuentran: a) la falta de un proceso formalizado o bien definido (Rose Jeremy, Aaen Ivan, 2008), b) El desconocimiento de la existencia de procesos organizacionales por la gran mayoría del personal (Pino, García, & Piattini, 2007), c) Dependencia de los expertos en las actividades de desarrollo (Pino, 2006), d) Falta de la gestión del conocimiento sobre las actividades (Abdullah, 2012). En este contexto, se podría afirmar que estás son organizaciones son caóticas. Sin embargo, aun cuando parezca que estas pymes no cuentan con un proceso, están realizando un conjunto de actividades que les permite realizar sus proyectos que están basadas en conocimiento tácito no formalizado en procesos (Daneshgar & Ward, 2007). La problemática por lo tanto, guarda una relación directa con una mala gestión del conocimiento tácito y la falta de formalización o codificación de este conocimiento en los procesos organizacionales. De esta manera, surge la necesidad de extraer y formalizar el conocimiento tácito para convertirlo en conocimiento explícito y mediante este conocimiento, soportar el establecimiento o formalización de un proceso de desarrollo para las pymes.
El objetivo de este artículo es dar a conocer una herramienta Web para apoyar la automatización del método para la extracción del conocimiento tácito de las organizaciones propuesto en (Jezreel et al., n.d.), (Muñoz Mirna & Jezreel, 2013) . Con la implementación de la herramienta se pretende establecer o formalizar los procesos de las pymes, establecer las bases para la implementación de mejoras de procesos y reducir la resistencia al cambio (Muñoz Mirna & Jezreel, 2013), además, permitirá reducir los costos de implementación de mejoras de procesos. El contenido de este trabajo de investigación se estructura en una serie de secciones que se describen a continuación: Sección 2 se abordan los Antecedentes, Sección 3 se muestra la Herramienta para la automatización de la extracción del conocimiento tácito, y finalmente en la Sección 4 se presentan las Conclusiones y el Trabajo Futuro.
2 Antecedentes
Para establecer las bases de la funcionalidad de la herramienta que se propone, se implementó el protocolo para la revisión sistemática propuesto por Barbara Kitchenham (Kitchenham et al., 2010), (Kitechenham, 2007) . El objetivo fue identificar y establecer el estado actual sobre la mejora de procesos de software y su relación con la extracción del conocimiento tácito, metodologías y herramientas con la finalidad caracterizar las funcionalidades que debe contener la herramienta para dar soporte a la automatización de la extracción del conocimiento tácito en las pymes. Por lo tanto, se realizaron búsquedas manuales y el uso de la herramienta para la automatización de este protocolo presentado en (Miranda et al., 2014).
Mediante la búsqueda tradicional y la búsqueda con la herramienta para la automatización de la revisión sistemática fueron elegidos 100 artículos considerados relevantes para la investigación. Los resultados se pueden dividir en tres categorías principales como son, importancia del conocimiento y su relación con la mejora de procesos de software tal y como lo indican los autores Polany (Rose Jeremy, Aaen Ivan, 2008), Abdullah y Mohamed, (Abdullah, 2012).
En segundo lugar se detectaron un número considerable de metodologías e iniciativas para la extracción y formalización del conocimiento tácito en las organizaciones de software y en particular en las pymes, entre las más destacadas están: Aurum, Daneshgar y Ward (Aurum, Daneshgar, & Ward, 2008), Faegri, Dyba y Dingsoyr (Fægri, Dybå, & Dingsøyr, 2010), Pek, Land, Aurum y Handzic (Pek & Land, 2001), Basili y su planteamiento de las organizaciones como fábricas de experiencia (Experience Factories Organizations as, EFO, por sus siglas en inglés), (VICTOR R. BASILI, 1993).
En tercer lugar se encuentran las herramientas detectadas para soportar la extracción y formalización del conocimiento tácito de las pymes, de estas herramientas, se encontró un número limitado, entre las más importantes se pueden citar: La propuesta de Schneider, von Hunnius y Basili (Schneider & Hunnius, 2002), basada en una herramienta web desarrollada en HTML. Otra propuesta interesante es la de Alagarsamy, Justus e Iyacutti (Alagarsamy, Justus, & Iyakutti, 2007). En su investigación delimitan y proveen las bases sobre las cuáles se debe desarrollar una herramienta de gestión del conocimiento enfocada a la mejora de procesos de software. A continuación la Tabla 1, muestra una comparativa de las principales propuestas de algunos autores y sus principales aportaciones al tema que este artículo hace referencia.
Apesar de existir varias metodologías e iniciativas propuestas para la extracción del conocimiento tácito en las pymes, se detectan pocas herramientas y prácticamente se podría decir que son solo bases de datos de conocimiento que no permiten de manera útil la formalización del conocimiento. Por lo tanto, se identifica la necesidad de desarrollar una herramienta de software que permita a las pymes la extracción, formalización y codificación del conocimiento reflejado en procesos organizacionales de desarrollo de software, que pueda servir como base para para el desarrollo de proyectos y le permita a las pymes afrontar los problemas que este tipo de organizaciones enfrentan al implementar mejoras de procesos.
3 Herramienta para la automatización de la metodología de la extracción del conocimiento tácito de las organizaciones
El desarrollo de la herramienta propuesta en este artículo, se basa en el método presentado en (Jezreel et al., n.d.), quiénes proponen una metodología para la identificación de las mejores prácticas y la extracción del conocimiento tácito en las organizaciones. Tomando en cuenta principios de la administración del conocimiento y administración del cambio, proponen un modelo para identificar las mejores prácticas dentro de la organización.
3.1 Análisis del modelo
Para el desarrollo de la herramienta sólo se toma en cuenta el primer análisis de este modelo, que sirve de base para la automatización de la metodología. Las fases del primer análisis del modelo se describen de manera resumida a continuación.
Realización de Entrevistas: Consiste en la extracción del conocimiento
Mediante la aplicación de entrevistas para la obtención de información sobre los procesos de desarrollo, esta fase se divide en 3 actividades principales los cuales son:
- Elección de entrevistados: La gerencia o un representante elige a los entrevistados que proveerán el conocimiento tácito, se toma en cuenta que de preferencia éstos, pertenezcan a diferentes niveles jerárquicos de la empresa, lo ideal es entrevistar a personal de gerencia, líderes de proyecto y a personal operativo de desarrollo.
- Selección de agenda de la entrevista: Consiste en la selección de la fecha y hora de la entrevista por parte de los entrevistados.
- Contestar entrevistas: Consiste en responder las preguntas que se realizan mediante la aplicación del cuestionario para la extracción del conocimiento tácito de las organizaciones, este cuestionario diseñado por (Jezreel et al., n.d.) está dividido en 9 bloques de preguntas. Para establecer una referencia sobre la información de la organización se tomó en cuenta la estructura del modelo CMMI-Dev 1.3 (SEI, 2010), cada bloque del cuestionario provee la información relativa a un área de proceso específica.
Análisis de la información de las entrevistas
Se analiza la información obtenida de cada cuestionario por bloque, de acuerdo a cada bloque se diagraman los procesos correspondientes detectados, las principales actividades en esta fase son:
- Análisis de los cuestionarios: Se analiza la información de las respuestas de cada entrevistado por cada bloque del cuestionario.
- Añadir actividades y elementos de proceso detectados: y se registran actividades y elementos de proceso.
El desarrollo de los diagramas
Consiste en identificar las actividades y diagramar los procesos detectados con la información obtenida y finalmente constatar si los procesos definidos mediante los diagramas expresan la información y conocimientos que ellos proporcionaron.
Identificación de actividades genéricas
Esta fase consiste en comparar todos los diagramas de acuerdo a cada bloque, se forma un diagrama general con las actividades y sus elementos similares y se conforma un proceso genérico.
3.2 Cuestiones técnicas
La herramienta se desarrolló como un sistema web, lo que permitirá a los usuarios acceder desde cualquier lugar que disponga conexión a internet. Como lenguaje de programación se eligió Python por ser un lenguaje multiplataforma y porque permite la implementación sobre la plataforma web, para acelerar el proceso de desarrollo se utilizó el framework Django, que trabaja sobre una variación de la arquitectura modelo, vista, controlador (MVC) llamada modelo, vista, template (MVT) por lo que permite la flexibilidad sobre todo en el diseño de las interfaces gráficas y el desarrollo acelerado de aplicaciones, como gestor de base de datos se eligió MySQL, se consideró principalmente por ser una herramienta open source (hasta cierto límite). Para las interfaces gráficas se eligió el módulo de templates BootStrap, esta herramienta se eligió tal y como se hizo con Django por la flexibilidad que permite y la rapidez en el desarrollo de interfaces. Una vez, elegido el entorno de desarrollo, a continuación se describe la forma en que la herramienta permite la automatización de las fases descritas anteriormente.
3.3 Automatización de las fases de la metodología para la extracción conocimiento tácito de las organizaciones
Para la automatización de las distintas fases que conforman la metodología para la extracción del conocimiento tácito de las organizaciones, la herramienta provee los módulos que se describen a continuación.
Módulo de Administración de Usuarios
La herramienta permite la administración de usuarios mediante el módulo de Alta de Usuario, que se muestra en la Figura 1 (izq.). Entre los usuarios que se pueden registrar, estos pueden ser un representante de organización y/o los entrevistados de la organización.
Seleccionar agenda para la entrevista
La herramienta permite el desarrollo de esta actividad mediante el módulo de agenda de entrevistas, este módulo se presenta en la Figura 1 (der.).
Contestar entrevistas
La herramienta permite dentro de esta fase en la fecha y hora señaladas en la agenda que se conteste la entrevista. Esta se contesta de manera escrita u oral mediante el módulo de cuestionario de la sección de extracción del conocimiento tácito. Entre las características destaca que se pueden grabar las respuestas y almacenarse en un servidor (En caso de responder oralmente) para fines de análisis posteriores. La Figura 2 representa el módulo de contestación de los cuestionarios para la extracción del conocimiento tácito.
Automatización del análisis de la información de las entrevistas
La segunda fase de la metodología en la que se basa la herramienta se automatiza mediante los módulos que se describen a continuación. El análisis de las entrevistas, se realiza en la interfaz del módulo de análisis de cuestionarios que provee la herramienta para esta actividad. La Figura 3 muestra este módulo.
Automatización del desarrollo de los diagramas
El módulo de diagramas, permite observar la formalización mediante los diagramas generados de las respuestas de los entrevistados. Cada diagrama corresponde a un proceso y bloque específico y se obtienen del análisis que el administrador o analista del proyecto realiza, el sistema permite de forma manual agregar las actividades y elementos que se detectan en las respuestas y el diagrama se muestra automáticamente en la sección de diagramas correspondiente. La Figura 4 muestra la interfaz de la formalización mediante los diagramas.
Automatización de la identificación de actividades genéricas
La herramienta permite esta actividad mediante la automatización de la conformación de un proceso genérico por bloque o proceso y su visualización en la interfaz de diagramas genéricos que se muestra a continuación en la Figura 5.
4. Validación de la herramienta
Con la finalidad de realizar pruebas en el desempeño de la herramienta para la extracción del conocimiento tácito de las organizaciones, se llevó a cabo una validación del funcionamiento de ésta en el Centro de Desarrollo de Software (CDS) de la Universidad Politécnica de Zacatecas, México. Para la validación, se eligieron 4 entrevistados, un gerente general, un director de proyectos y dos desarrolladores, quiénes contestaron la entrevista siguiendo la metodología por medio de la herramienta propuesta en el punto 3 de este artículo. De esta manera, se obtuvo la información sobre los procesos actuales y se logró formalizar el conocimiento tácito por medio de los diagramas de procesos que forma la herramienta. Entre los hallazgos principales se detectaron, la carencia y definición de un proceso de desarrollo, sobreestimación en la planificación de proyectos, carencia en cuanto a roles en los procesos, falta de un plan para capacitación de los desarrolladores, falta de seguimiento a los proyectos. Además, con la conformación de los diagramas genéricos se logró establecer un proceso en base al conocimiento provisto por los entrevistados y se lograron detectar las actividades faltantes para completar los procesos. Con esta visión del estado actual se creó la conciencia a todos los niveles de la organización sobre la importancia de implementar mejora de procesos gradualmente, disminuyendo la resistencia al cambio mediante la autoevaluación de ésta. Además, los costos se reducen ya que no dependerá de la contratación de expertos pues los mismos integrantes de la pyme pueden utilizar la herramienta propuesta. La Figura 6 muestra el proceso genérico de Planificación del CDS-UPZ obtenido con la herramienta, al igual que este se conformaron los 9 procesos base que la herramienta permite.
5. Conclusiones y trabajo Futuro
Con la herramienta para la extracción del conocimiento tácito de las organizaciones se lograron conformar los procesos base de la organización en el que se realizó el caso de estudio y se observó la viabilidad de la herramienta. Como conclusión se puede afirmar que la herramienta cubre los aspectos principales de la metodología en que se basa ya que las revisiones de la interfaz y funcionalidad se realizaron con el involucramiento de uno de los autores de dicha metodología, además se enriqueció con los lineamientos propuestos por otros autores sobre la automatización de la gestión del conocimiento tácito. Se espera que con su uso las Pymes puedan eliminar varios de los obstáculos que se presentan en la implementación de mejoras de procesos de desarrollo de software, como: resistencia al cambio, costos de contratación de expertos, mejoras en planificaciones y estimaciones, adopción de modelos o estándares al conocer los procesos que están realizando y establecer a qué modelo se acerca más la organización. El trabajo futuro consiste en aplicar esta herramienta en pymes de desarrollo de software en el estado de Zacatecas para seguir evaluando su funcionamiento.
Referencias
Abdullah, R. (2012). Knowledge Management System Model in Enhancing Knowledge Facilitation of Software Process Improvement for Software House Organization, 60–63.
Alagarsamy, K., Justus, S., & Iyakutti, K. (2007). On the Implementation of a Knowledge Management Tool for SPI. International Conference on Computational Intelligence and Multimedia Applications (ICCIMA 2007), 48–55. doi:10.1109/ICCIMA.2007.112
Ashrafi, N. (2003). The impact of software process improvement on quality: in theory and practice. Information & Management, 40(7), 677–690. doi:10.1016/S0378-7206(02)00096-4
Aurum, A., Daneshgar, F., & Ward, J. (2008). Investigating Knowledge Management practices in software development organisations – An Australian experience. Information and Software Technology, 50(6), 511–533. doi:10.1016/j.infsof.2007.05.005
Cabrera, C. (2008). INTRODUCCIÓN A LA CALIDAD DE SOFTWARE Introduction to software quality, (39), 326–331.
Claudia, V., Mirna, M., & Jezreel, M. (2013). Characterization of Software Processes Improvement Needs in SMEs. 2013 International Conference on Mechatronics, Electronics and Automotive Engineering, 223–228. doi:10.1109/ICMEAE.2013.33
Daneshgar, F., & Ward, J. (2007). Investigating Knowledge Management practices in software development organisations – An Australian experience. doi:10.1016/j.infsof.2007.05.005
Fægri, T. E., Dybå, T., & Dingsøyr, T. (2010). Introducing knowledge redundancy practice in software development: Experiences with job rotation in support work. Information and Software Technology, 52(10), 1118–1132. doi:10.1016/j.infsof.2010.06.002
Group, S. E. (2007). Guidelines for performing Systematic Literature Reviews in Software Engineering.
Jezreel, M., Muñoz, Mirna, Calvo-manzano, J., & Cuevas, G. (n.d.). Approach to Identify Internal Best Practices in a Software Organization, 107–118.
Kitchenham, B., Pretorius, R., Budgen, D., Brereton, O. P., Turner, M., Niazi, M., & Linkman, S. (2010). Systematic literature reviews in software engineering – A tertiary study. Information and Software Technology, 52(8), 792–805. doi:10.1016/j.infsof.2010.03.006
Miranda, J. M., Muñoz, M., Uribe, E., Márquez, J., Uribe, G., & Valtierra, C. (2014). Systematic Review Tool to Support the Establishment of a Literature Review, 1, 171–181. doi:10.1007/978-3-319-05951-8
Mirna, M.; Jezreel, M.; Calvo-Manzano, J.A; Cuevas, G.; San Feliu, T., "The results analysis of using MIGME-RRC methodology for software process improvement," Information Systems and Technologies (CISTI), 2011 6th Iberian Conference on , vol., no., pp.1,6, 15-18 June 2011, (852). [ Links ]
Mirna, M., Jezreel, M., a., C.-M. J., Gonzalo, C., Tomas, S. F., & Antonio, D. A. (2012). Expected Requirements in Support Tools for Software Process Improvement in SMEs. 2012 IEEE Ninth Electronics, Robotics and Automotive Mechanics Conference, 135–140. doi:10.1109/CERMA.2012.29
Nonaka, I., & von Krogh, G. (2009). Perspective—Tacit Knowledge and Knowledge Conversion: Controversy and Advancement in Organizational Knowledge Creation Theory. Organization Science, 20(3), 635–652. doi:10.1287/orsc.1080.0412
Pek, L., & Land, W. (2001). Capturing Implicit Software Engineering Knowledge, (2000), 108–114.
Pino, F. J. (2006). Revisión sistemática de mejora de procesos software en micro , pequeñas y medianas empresas. REICIS Revista Española de Innovación, Calidad E Ingeniería Del Software, 2, 6–23.
Pino, F. J., García, F., & Piattini, M. (2007). Software process improvement in small and medium software enterprises: a systematic review. Software Quality Journal, 16(2), 237–261. doi:10.1007/s11219-007-9038-z
Rahman, A. A. (2011). A Study of Process Improvement Best Practices, (November).
Rose Jeremy, Aaen Ivan, P. A. N. (2008). Software Processes & Knowledge. Aalborg: Software Inovation Publisher, Aalborg University, Departmen of Computer Science. [ Links ]
Schneider, K., & Hunnius, J. Von. (2002). Experience in Implementing a Learning Software Organization, (June).
SEI. (2010). CMMI ® para Desarrollo, Versión 1.3.
Subramanian, G. H., Jiang, J. J., & Klein, G. (2007). Software quality and IS project performance improvements from software development process maturity and IS implementation strategies. Journal of Systems and Software, 80(4), 616–627. doi:10.1016/j.jss.2006.06.014
Trudel, S., Lavoie, J.-M., Paré, M.-C., & Suryn, W. (2006). PEM: The small company-dedicated software process quality evaluation method combining CMMISM and ISO/IEC 14598. Software Quality Journal, 14(1), 7–23. doi:10.1007/s11219-006-5997-8
VICTOR R. BASILI, senior member, I. (1993). The Experience Factory and its Relationship to Other Improvement Paradigms.
Wan, Jiangping, Wan Dan, Luo Weiping, W. X. (2011). Research on Explicit and Tacit Knowledge Interaction in Software Process Improvement Project. Journal of Software Engineering and Applications, 04(06), 335–344. doi:10.4236/jsea.2011.46038
Recebido / Recibido: 7/3/2015
Aceitação / Aceptación: 28/3/2015