Estrategia para la gestión del conocimiento en el mantenimiento de software

El ciclo de vida de un software es un proceso continuo. Un proceso de desarrollo de software tiene como propósito la producción eficaz y eficiente de un producto que reúna los requisitos del cliente. Este proceso es intensamente intelectual, afectado por la creatividad y juicio de las personas involucradas. Aunque un proyecto de desarrollo de software es equiparable en muchos aspectos a cualquier otro proyecto de ingeniería, en el desarrollo de software hay una serie de desafíos adicionales, relativos esencialmente a la naturaleza del producto obtenido.

En el siguiente trabajo se describe un procedimiento para la gestión del conocimiento en la ejecución del soporte técnico desde la perspectiva del mantenimiento de software en la Empresa de Aplicaciones Informáticas Desoft División Territorial Guantánamo. También se abordan otros temas relacionados que pueden ser de interés.

Palabras claves: mantenimiento, conocimiento, software, soporte técnico.

INTRODUCCIÓN

La Empresa de Aplicaciones Informáticas en su División Territorial Guantánamo posee como objeto social el desarrollo, despliegue y soporte de aplicaciones informáticas, para ello existe una metodología que guía este proceso organizándolo en tres etapas: requisitos, desarrollo y despliegue. En esta última es donde se implementan los productos en el ambiente real del cliente para darle soporte y mantenimiento a la aplicación una vez concluido el adiestramiento en cuanto al uso de la misma.

Un software es intangible y por lo general muy abstracto, esto dificulta la definición del producto y sus requisitos, sobre todo cuando no se tienen precedentes en productos similares. Esto hace que los requisitos sean difíciles de consolidar tempranamente. Así, los cambios son inevitables, no sólo después de entregado el producto sino también durante el proceso de desarrollo. Por ello se hace necesario documentar todo lo referente a la construcción y versionado de los sistemas. Es aquí donde radica el problema en cuestión. La información está concentrada en una sola persona. La base de conocimiento no se alimenta, por lo que la información está dispersa entre los especialistas de soporte y algunos pocos implementadores con experiencia. Es por ello que surge la necesidad de diseñar una estrategia para gestionar el conocimiento adquirido a lo largo de los años que lleva fundada la institución. 

DESARROLLO

Gestión del conocimiento

¿Qué es gestión del conocimiento? ¿Es posible que algo como el conocimiento que pertenece inevitablemente a las personas se pueda gestionar en las organizaciones?

Cuando hablamos de gestión del conocimiento en las organizaciones, nos referimos a un proceso o una situación que permita trasferir los conocimientos o experiencias de una persona o grupo de personas a otras personas pertenecientes a una misma organización u empresa. Y aquí está el problema principal, que hablamos de personas y de trasmitir o compartir algo que no es fácil de trasmitir ni saber a quién trasmitir: información y habilidades.

Gestión del conocimiento es el proceso por el cual una organización, facilita la trasmisión de informaciones y habilidades a sus empleados, de una manera sistemática y eficiente. Es importante aclarar que las informaciones y habilidades no tienen por qué estar exclusivamente dentro de la empresa, sino que pueden estar o generarse generalmente fuera de ella. Este matiz final es muy importante. Generalmente la mayoría de las empresas identifican gestión del conocimiento solamente con la información y habilidades internas de la empresa, lo que se conoce como inteligencia empresarial. De esta forma casi todos los esfuerzos se orientan a canalizar la información y habilidades que ya posee una organización centrándose en la eficiencia de los procesos de comunicación interna a través de la implantación de sistemas como CRM, ERP y un CMI. Esto ha sido tradicionalmente así porque siempre ha sido mucho más fácil controlar los volúmenes de información interna que la información externa que se encuentra fuera de la organización que es más difícil de encontrar, buscar, seleccionar y organizar.

Estrategia de gestión del conocimiento en el mantenimiento de software

La Empresa de Aplicaciones Informáticas en su División Territorial Guantánamo posee como objeto social el desarrollo, despliegue y soporte de aplicaciones informáticas, para ello existe una metodología que guía este proceso organizándolo en tres etapas: requisitos, desarrollo y despliegue.

Procesos en una empresa de software
Procesos en una empresa de software

El proceso de desarrollo está diseñado bajo las premisas de las metodologías ágiles. Esto obliga al desarrollador a presentar entregables en cortos períodos de tiempo. Entre los principios y técnicas de trabajo se encuentran: desarrollo iterativo, arquitectura basada en componentes, modelado visual, verificación continua de la calidad, control de cambios y configuraciones y recopilación de métricas. Las siguientes etapas componen este proceso.

Proceso de desarrollo de software
Proceso de desarrollo de software

Gestión de proyectos

En esta actividad se define el plan de desarrollo del proyecto o servicio, donde se plasmará una descomposición del mismo en iteraciones y actividades. Estará estructurado a manera de esquema de descomposición, donde el primer nivel estará constituido por los entregables del proyecto pactados con el cliente, el segundo nivel por las tareas necesarias para obtener cada entregable, el tercer nivel por las subtareas que conllevan a la realización de cada tarea y así sucesivamente. Además, se lleva la gestión de cambios y entregas al cliente. Para la gestión del proyecto se utilizará la metodología correspondiente, si es un servicio de desarrollo los artefactos que se generan se asociarán con la gestión del servicio en cada etapa,

Requerimientos

En esta etapa se conjugan las dos primeras etapas de un típico proyecto o servicio de desarrollo: Alcance Preliminar y Requisitos. Se conjugan ambas etapas debido a que en el Alcance Preliminar es donde normalmente se realiza el diagnóstico para conocer de manera general los procesos de la empresa cliente. En esta actividad se requiere la aplicación de procesos de ingeniería de la información para obtener todos los objetos de información manejados por los procesos del cliente a diferentes niveles, así como los procesos que intervienen en la modificación y/o control de dicha información. Tiene como objetivo crear una base de entendimiento entre el cliente y los miembros de los equipos de trabajo del proyecto. Para ello es necesario definir los requisitos funcionales y no funcionales del sistema y actualizar o crear el glosario de términos que permita una comunicación fluida. La documentación de esta actividad debe constituir la base para las pruebas de aceptación final del sistema por parte del cliente, así como para las pruebas internas de calidad, por lo que esta definición tendrá que ser validada por todas las partes implicadas en el desarrollo.

Desarrollo

La etapa de desarrollo, como su nombre lo indica, es aquella donde se van a desarrollar las funcionalidades identificadas en la etapa anterior, el punto de partida es el documento de requisitos obtenido previamente y donde se describe detalladamente cada una de ellas. El objetivo de esta actividad es diseñar e implementar los requerimientos identificados en la etapa anterior. En el diseño se logra una representación más detallada de los diferentes elementos que conforman la propuesta del sistema, a través del diseño de los módulos, las clases y las diferentes relaciones que existen entre ellas. En la implementación se obtiene el código fuente que soporta el diseño realizado, la arquitectura del sistema y toda la funcionalidad y especificaciones definidas en la definición del proyecto o servicio. Deben proponerse además componentes desarrollados para la codificación del sistema y que puedan ser reutilizados en la codificación de otros sistemas.

Pruebas de liberación

En esta etapa se realizan las pruebas de liberación, estas son las pruebas que corroboran que el sistema y los artefactos del proyecto cumplen con la calidad requerida, tanto funcionalmente como por las normas y estándares utilizados. Sus objetivos son: Validar la adecuación de cada entregable de cada actividad a los estándares de la empresa, verificar la funcionalidad del sistema contra los requerimientos del cliente, verificar el código fuente para detectar errores y validar adecuación a los estándares de codificación y validar el producto respecto a nuestros atributos de calidad. Esta disciplina se comienza a trabajar desde el inicio del proyecto, al tener identificados los requisitos del software/ para poder probar la arquitectura seleccionada.

El proceso de despliegue consta de seis servicios asociados: Diagnóstico, Instalación, Configuración, Puesta en marcha, Adiestramiento y Operación asistida.

Proceso de despliegue de software
Proceso de despliegue de software

Diagnóstico

Servicio asociado a una consultoría, que permite obtener un estudio de los procesos del cliente, en aras de alinear la informatización de estos, a Ias funcionalidades de cualquier sistema. Para llevar a cabo este servicio se podrán utilizar como Herramientas y Material de Apoyo los cuestionarios y guías de diagnóstico específicas de cada sistema, disponibles.

Instalación

Servicio que garantiza la instalación de los sistemas en los servidores o en las máquinas de los usuarios. Para llevar a cabo este servicio se podrán utilizar como Herramientas y Material de Apoyo los instaladores y manuales o guías de instalación de cada sistema, disponibles.

Configuración

Servicio que permite establecer los parámetros necesarios para el correcto funcionamiento del sistema y garantiza la personalización de la solución informática. Para llevar a cabo este servicio se podrá utilizar como herramientas y material de apoyo, manuales de usuario o guías de configuración y personalización de cada sistema, disponibles, herramientas disponibles o desarrolladas para realizar exportación e importación de datos configuración automáticas, etc.

Puesta en marcha

Servicio que permite ejecutar y comprobar el buen funcionamiento del sistema con una muestra de datos reales. Para llevar a cabo este servicio se podrán utilizar como Herramientas y Material de Apoyo los manuales de usuario o guías de pasos para la puesta en marcha de cada sistema, disponibles.

Adiestramiento

Servicio que se desarrolla en el domicilio del cliente para mejorar el rendimiento de los empleados, incluye la práctica con las herramientas, documentos o materiales que se utilizarán de forma cotidiana. Para llevar a cabo este servicio se podrán utilizar como Herramientas y Material de Apoyo los diseños de cursos de adiestramiento por sistema, disponibles.

Operación asistida

Servicio que se ofrece en el puesto de trabajo del cliente por el tiempo que se negocie. Incluye donde proceda la carga inicial de los datos. Para llevar a cabo este servicio se podrá utilizar como herramientas y material de apoyo los manuales de usuario o guías de pasos para la operación de cada sistema, disponibles; las herramientas disponibles o desarrolladas para realizar la carga inicial de los datos de forma automática.

El proceso de soporte permite establecer y mantener un nivel de servicio aceptable mediante el apoyo al cliente en el uso eficaz del sistema, una vez que se encuentra en explotación. Este servicio se compone de cuatro etapas: Comunicación, Realización, Seguimiento y Evaluación. El problema en cuestión radica en la primera etapa, la comunicación.

Proceso de soporte de software
Proceso de soporte de software

Comunicación

Se inicia cuando un cliente realiza solicitud de asistencia técnica, la cual puede ser recibida por las diferentes vías de comunicación activadas: telefónica, correo electrónico, por la web, etc. los objetivos principales son conocer las necesidades que presenta el cliente y preparar las condiciones para iniciar el servicio.

Entre las actividades y tareas correspondiente a esta etapa se encuentra: Realizar una búsqueda y análisis inicial en la base de conocimiento (banco de soluciones). Esta herramienta actualmente no está implementada y el conocimiento está concentrado en una sola persona, la especialista de soporte telefónico. Este es el principal cuello de botella, ya que cuando esta persona se ausenta el proceso colapsa.

Para ello se diseñó una base de datos donde los especialistas de despliegue y soporte van registrando las soluciones que se le va dando a las diferentes no conformidades detectadas en las instalaciones de los clientes. En caso de ser sistemas de terceros, una vez reportada el especialista de soporte telefónico es el encargado de incrementar la base de datos con las soluciones enviadas por el especialista de mantenimiento de la aplicación en cuestión. La misma esta implementada como parte del sistema Servilín para el control de las actividades de soporte, desarrollada por la División Territorial Santi Spíritus donde se encuentra el centro de contacto.

Realización

Comprende las tareas necesarias para dar solución a la solicitud, ya sea por vía telefónica, presencial u otro medio que se disponga. Con los objetivos de verificar la problemática real y lograr la solución al problema planteado por el cliente.

Seguimiento

Persigue los objetivos de monitorear el estado de las ordenes y el cumplimiento de plazos, lograr la solución y análisis de todos los problemas no resueltos y mantener informado al cliente de las acciones para solucionar sus problemas.

Evaluación

Comprende el procesamiento de datos para obtener información sobre el desempeño del proceso y lograr su mejora. Con los objetivos de conocer el desempeño del proceso, evaluar la satisfacción del cliente y lograr la mejora del proceso.

CONCLUSIONES

La Gestión del conocimiento implica ir mucho más allá que un mero sistema informático o plan de formación. Es esencial para favorecer una estructura empresarial innovadora y eficiente. Si el conocimiento fluye y se trasmite de manera correcta en la organización, este solo puede crecer. Las habilidades e informaciones útiles se trasmiten entre los empleados de forma rápida y de esta manera aumenta la posibilidad de generar nuevo conocimiento que deriva en aplicaciones nuevas, mejoras en procesos o productos y nuevas formas de hacer negocio para alcanzar nuevas oportunidades.

No se puedo olvidar que el conocimiento es el único activo que crece con el tiempo y no se desgasta pero que puede desparecer con las personas, si este no es compartido. Se han dado casos en los que la marcha de un empleado ha supuesto una pérdida de competitividad muy importante para una empresa por ser el único que disponía de un conocimiento muy concreto. Por eso es vital gestionarlo, tanto en grandes como en pequeñas organizaciones.

REFERENCIAS

  1. Bulmaro Adrián Fuentes Morales (2010): «La gestión de conocimiento en las relaciones académico-empresariales. Un nuevo enfoque para analizar el impacto del conocimiento académico.» Tesis Phd. Universidad Politécnica de Valencia, España.
  2. WIIG, K. (1997): “Integrating Intellectual Capital and Knowledge Management”, Long Range Planning, vol. 30, no. 3, pp. 399-405.
  3. ANDREU, R. & SIEBER, S. (1999): “La gestión integral del conocimiento y del aprendizaje”, Economía Industrial, no. 326, pp. 63-72.
  4. BUENO, E. (1999): “Gestión del conocimiento, aprendizaje y capital intelectual”, Boletín del Club Intelect, no. 1, enero. Madrid.
  5. Harman, Chris; Brelade, Sue (2000). Knowledge Management and the Role of HR. Financial Times/Prentice Hall 2000. (Edición Española Kindle 2015).
  6. Cordero Borjas, A. E., & García Fernández, F. (2008). Knowledge Management and Work Teams: Observatorio Laboral Revista Venezolana, 43-64.
  7. FERRATER MORA, JOSÉ (2002): Diccionario de Filosofía, ed. rev., y act., por Terricabras, Josep-Maria, Círculo de Lectores, Travessera de Gràcia, 47-49, 08021 Barcelona, ISBN (OC) 84-226-8967-7.
  8. DAVENPORT, T. H. & PRUSAK, L. (1998): Working Knowledge: How organizations manage what they know, Harvard Business School Press, ISBN 1-57851-301-4

Hazle saber al autor que aprecias su trabajo

1+
Tu opinión vale, comenta aquí

Comentarios

Compártelo con tu mundo

Escrito por:

Cita esta página
Betancourt Matos Arlethy. (2019, marzo 29). Estrategia para la gestión del conocimiento en el mantenimiento de software. Recuperado de https://www.gestiopolis.com/estrategia-para-la-gestion-del-conocimiento-en-el-mantenimiento-de-software/
Betancourt Matos, Arlethy. "Estrategia para la gestión del conocimiento en el mantenimiento de software". GestioPolis. 29 marzo 2019. Web. <https://www.gestiopolis.com/estrategia-para-la-gestion-del-conocimiento-en-el-mantenimiento-de-software/>.
Betancourt Matos, Arlethy. "Estrategia para la gestión del conocimiento en el mantenimiento de software". GestioPolis. marzo 29, 2019. Consultado el 22 de Noviembre de 2019. https://www.gestiopolis.com/estrategia-para-la-gestion-del-conocimiento-en-el-mantenimiento-de-software/.
Betancourt Matos, Arlethy. Estrategia para la gestión del conocimiento en el mantenimiento de software [en línea]. <https://www.gestiopolis.com/estrategia-para-la-gestion-del-conocimiento-en-el-mantenimiento-de-software/> [Citado el 22 de Noviembre de 2019].
Copiar
Imagen del encabezado cortesía de christiaancolen en Flickr