|
Las necesidades terminológicas en la elicitación
y representación de conocimiento
en Sistemas Informáticos
Mela Bosch
Facultad de Periodismo y Comunicación Social
Universidad Nacional de La Plata
Argentina
Resumen
Se observan las características del tratamiento de conocimiento en sistemas informáticos con el objeto de comprender las necesidades terminológicas involucradas. Desde la perspectiva de sistemas informáticos el conocimiento es a) un reservorio, ámbito donde la Terminología realiza aportes con los lenguajes controlados para recuperación de información y b) razonamiento, entendido como el proceso que dada información sobre aspectos observables de un problema permite determinar información de aspectos no observables del mismo. En los sistemas informáticos no aparece un solo modelo de razonamiento sino varios que se caracterizan por: establecer la red óptima de representaciones, coherentes con un modelo conceptual determinado, establecer la red de representaciones como transacción satisfactoria entre diferentes modelos coexistentes y establecer la red de representaciones como síntesis de modelos apuestos. El trabajo terminológico, en la mayoría de sus desarrollos actuales, se orienta a representar consistentemente un modelo conceptual, pero los sistemas informáticos hoy requieren un análisis que responda a diferentes esquemas. Complementariamente se presentan la importancia de la terminología en los distintos momentos de un sistema: a partir del establecimiento del léxico en los requerimientos del sistema, el trabajo terminológico debe acompañar el diseño de acuerdo con el modelo de razonamiento; debe apoyar la documentación de la codificación, y hacer accesible la interface de usuario y los manuales; llegando hasta la reingeniería que necesita terminología explícita y coherente entre el sistema y el dominio.Se realiza una presentación los temas en forma general a la espera aún de líneas metodológicas para realización de desarrollos.
Palabras claves: Elicitación / Ingenieria Lingüística / Razonamiento / Representación del Conocimiento / Sistemas Informáticos / Terminología
Introducción
Es usual ver la vinculación entre Terminología e Informática como una relación en un solo sentido, es decir la utilización de la informática para aplicaciones terminológicas, ya sean Bancos de Datos Terminológicos, programas de manejo de diccionarios, de contrucción de Tesauros, de lenguajes controlados para la recuperación, de traducción automática y asistida entre otros.
Este trabajo se sitúa en otra perspectiva, se propone observar la importancia del trabajo terminológico en la ingeniería de sistemas informáticos e indicar su presencia en el ciclo de vida de los mismos: requerimientos, diseño, codificación, prueba, uso, mantenimiento, modificación y/o crecimiento.
Esta es una mirada particular de la terminología considerándola como una lengua artificial cuyos elementos, atributos, relaciones y operadores están directamente vinculados con el modelo de adquisición y representación de conocimiento por parte del sistema informático que la utiliza.
Como todo enfoque interdisciplinario, el presente tiene dificultades para ser presentado, trataremos de explicitar los conceptos provenientes del área de sistemas aunque presupondremos un conocimiento básico de los mismos.
El objetivo de este trabajo es realizar una exploración desde una perspectiva nueva de las necesidades terminológicas y a la vez solicitar la atención y apoyo de los colegas ya que se trata de un despeje teórico que dista mucho del establecimiento de líneas metodológicas de desarrollo.
Adquisición de conocimiento: Memorizar y razonar
La adquisición del conocimiento desde una perspectiva de sistemas informáticos comprende:
a) la acumulación de conocimiento ya existente: Aquí interesan las formas de registro en una memoria y está directamente vinculado con la capacidad de acumulación en forma cuantitativa y en la extension en el tiempo de esa memoria.
Este es el gran tema de los documentos, archivos y reservorios; es el ámbito donde la Terminología ha realizado importantes aportes brindando metodologías rigurosas para la indización y recuperación de información mediante el uso de lenguajes controlados para este fin.
b) el razonamiento: Cuando se resuelve un problema desde el más complejo al más nimio, la parte esencial del esfuerzo no es sólo la acumulación y detección de conocimiento anterior, sino su complementación con un conjunto de operaciones que se llaman genéricamente razonamiento.
En una definción informal, siempre en el marco en que estamos trabajando, el razonamiento es la tarea de inferir información acerca de algún aspecto no observable, basado en la información de las partes observables de la situación.
Elicitación: conocer para emular
Ambos aspectos requieren de un paso previo que es la elicitación. (De elicio, is, cui, citum, ere, atraer, llevar. De uso en inglés con ese origen, no aparece en RAE).
En la literatura de sistemas, la elicitación es el proceso de extracción y registro de conocimiento y modos de conocer de otros para a su vez realizar una aplicación que emule esas capacidades. De manera que no se trata ni de la teoría del conocimiento de la epistemología, sino de un campo pragmático.
La elicitación es una tarea que requiere relevar los conceptos y operaciones entre ellos para conocer un dominio. La articulación entre conceptos y operaciones de entre sí, puede ser denominada modo de razonamiento y su objeto es la búsqueda de conocimiento.
Por razones didácticas tomamos de Bhatnagar y Kanal la idea de varias modos de razonamiento con el fin de entender mejor la adquisición de conocimiento para el desarrollo de sistemas informáticos y telemáticos. (Bhatnagar, R.; Kanal, L. 1992.) Estos autores toman a su vez el trabajo de Churchman (Churchman, C. 1971.)
Modelos de búsqueda de conocimiento desde una perspectiva de Sistemas
Churchman analiza el razonamiento desde una perspectiva de sistemas y nos dice que está compuesto de:
a) ideas innatas, premisas o ideas previas; se trata de principios o verdades teóricas en las que el que razona cree o da por ciertas.
b) entradas (inputs): es nueva información nacida de observaciones y experimentación
c) red de hechos (fact-net) es la interconexión entre entradas e ideas innatas construida mediante el sentido dado por un conjunto de relaciones y operaciones, una red de hechos es una red de verdades contingentes.
Es decir que permanece siempre y cuando no surja nueva información que la modifique.
A partir de estos elementos se realiza una esquematización de la forma de buscar nuevo conocimiento. Recordamos que estas modelizaciones y análisis están dirigidos no al aspecto filosófico del conocer sino al uso en una perspectiva organizacional y de sistemas aunque, como veremos, utilizan nombres de pensadores, con ellos se designan tres modelos:
a. Buscador de Leibniz : este modelo construye una red de hechos óptima para la situación. Lo óptimo deviene relevante pues para un conjunto dado de entradas, es posible construir un número diferente de redes de hechos. Este modelo asume que hay una red óptima y que el proceso de construcción de la red convergirá con ella por las habilidades inherentes al proceso de construcción.
Representa una clase muy general de sistemas de búsqueda de conocimiento. Según indican Bhatnagar y Kanal, la práctica de la ciencia puede verse como un buscador de Leibniz. Cada nuevo resultado científico resulta una entrada que puede ser conectada a la red de los viejos resultados especialmente cuando el campo esta gobernado por una teoría. La teoría provee la relación y los operadores para colocar juntos los resultados en una forma de red de hechos que corresponde a las ideas innatas. Un resultado, o entrada, que quede afuera de la red es ignorado.
b. Buscador de Kant: el modelo de Kant de búsqueda de conocimiento no presupone la existencia de un modelo a priori de la situación. Contiene inicialmente una serie de modelos, cada modelo es un conjunto de ideas innatas y puede contener sus primitivas, axiomas y reglas de inferencia. Se selecciona un modelo del conjunto y se construye la red de hechos de leibniz usando las entradas y las ideas innatas de ese modelo. Se determina luego la extensión para la cual esta red de hechos es “satisfactoria” de acuerdo a algunos criterios. El modelo que genera la red más satisfactoria es la solución de la búsqueda de conocimiento. Lo que se busca en realidad es un ajuste adecuado entre nuevo conocimiento y el existente.
d. Buscador de Hegel: Busca desarrollar la habilidad para ver las mismas entradas desde diferentes puntos de vista. Se posee un número de modelos cada uno de los cuales es un conjunto independiente de ideas innatas y puede contener primitivas, axiomas y reglas de inferencia. En este caso prima una síntesis entre modelos, donde se conjugan apuestos.
Aplicaciones de los modelos de razonamiento en sistemas informáticos
Siguiendo esta esquematización notamos que en nuestra relación con el conocimiento difícilmente utilicemos un solo tipo de modelo de razonamiento. La elección fluctua y depende del dominio del problema. En los sistemas informáticos y telemáticos la situación es similar.
Obviamente estamos ante una abstracción de situaciones reales, que como dijimos, escogimos para hacerlas más comprensibles; no existen sistemas que operen anunciándonos: “nuestro modelo de razonamiento es del tipo Leibniz o Kant”.
Pero por ejemplo, si tengo datos completos y precisos se utiliza un modelo de razonamiento del tipo Leinbnitz. ya que en el mismo el acceso al conocimiento se mide en términos de aciertos y fallos.
Nos damos cuenta de que hay ocasiones donde la necesidad de determinar coincidencias y detectar errores hace que este modelo sea de enorme utilidad. Por ejemplo, un sistema de medición de ventas o en el ámbito científico cuando tenemos mediciones precisas: espaciales, marinas, etc.; o los robots industriales que realizan operaciones rutinarias.
En cambio, el modelo Kantiano no acepta apriorismos, y el acceso se define como la transacción más satisfactoria entre otras. Este modelo es útil, por tanto, cuando se desarrollan sistemas que deben establecer alternativas posibles de solución. Se los utiliza cuando nos encontramos con grandes cantidades de datos pertenecientes a distintos esquemas semánticos y de medición. Se lo ve aplicado en esferas tan alejadas como la medicina, el tránsito vehicular o las transacciones financieras.
El modelo Hegeliano, por su parte, permite llegar a una síntesis creando desde situaciones dadas, con nuevas ópticas, otras situaciones totalmente diferentes de las originales, pero que las contienen. Existen interesantes sistemas informáticos de diseño de imagen, sonido y realidad virtual que operan con este modelo de razonamento.
Razonando con términos
Cuando los sistemas informáticos utilizan datos numéricos el modo de razonamiento está relativamente bien resuelto porque se cuenta modelos matemáticos que representan a cada uno.
Pero cuando estamos ante el lenguaje natural todo cambia. Hace 30 años se avizoraba en las obras de ciencia ficción un mundo manejado por computadoras considerando especialmente su enorme capacidad de manejar números. Ellas se han instalado en nuestras vidas cotidianas no solamente por nanipular números, sino por manipular palabras; en las bases de datos mundiales la presencia del dato se fue incrementando de ser mayoritariamente numérico a ser alfanumérico y actualmente Internet es predominantemente textual y gráfico.
La forma que tienen los sistemas informáticos de manipular las palabras es traduciéndolas a parámetros numéricos y el manejo de las mismas se realiza con modelos matemáticos. Pero la semántica debe ser asignada por humanos que dan valores a determinadas cadenas de caracteres, por medio de etiquetas, o extraída por medio de algoritmos automáticos de cálculo que se basan en la presencia o ausencia de elementos, y operaciones entre ellos que van desde apareamientos simples a formas de álgebra boolena básica o ampliada; álgebra de relaciones, difusa y probabilística
Esto para representar el contenido, ¿pero qué ocurre cuando se quiere efectivamente emular la semántica en un sistema?
Cada vez más se recurre a la fuente natural de semántica para el ser humano: el lenguaje.
Para comunicarse con la computadora es necesario algoritmizar la lengua y se parte de un área particular del lenguaje que no es el lenguaje natural, sino lo que se conoce como lenguajes artificiales.
El lenguaje humano comprende al lenguaje natural y a los lenguajes formales, en un extremo de uno y otro están el habla corriente y la matemática. En medio están los lenguajes artificiales que formalizan partes de lenguaje natural con diferentes fines.
El mundo de los sistemas informáticos conoce muy bien los lenguajes artificiales que sirven de interface entre la máquina y el humano. Los primeros lenguajes artificiales eran sólo secuencias de instrucciones a la computadora, estaban directamente relacionados con el proceso que debía realizarse y no con el mundo de los problemas que se debían resolver. Pero poco a poco la estructura de los lenguajes se fue alejando de cómo funciona la maquinaria y pareciéndose más a la forma en que resolvemos los problemas y a las disciplinas profesionales humanas.
Adaptación del mundo real al mundo de la informática
De manera que hoy es más evidente que antes que para la utilización de un lenguaje artificial debe crearse previamente un modelo del problema y de la solución que el sistema informático enfoca, para que el lenguaje artificial exprese lo que se desea que la máquina realice.
Y aquí aparece el modo de razonar. Los sistemas informáticos que utilizan un modelo de búsqueda de conocimiento de tipo Leibnitz modelizan el mundo real de una manera procedural, como un flujo de datos que al ingresar se comparan con lo que previamente se le inculcó al sistema. Mantienen una estructura de cognocitiva y funcionamiento de tipo jerárquico. (Cfr. Rescher, N. 1981)
Pero en los últimos años interesa cada vez más que los sistemas informáticos enfrenten problemas que requieren un tipo de razonamiento que aquí llamamos de Kant y de Hegel, donde se realiza una adecuación y/o una síntesis entre los elementos existentes y los nuevos que aparecen. La estructura cognocitiva es de tipo reticular porque se requieren muchas y variadas vinculaciones y en diferentes sentidos. El paradigma de Orientación a Objetos ofrece una forma de modelización adaptada a estas necesidades. (Cfr. Martin, J.; Odell, J. 1992)
No hablaremos aquí de esta forma de modelización de dominios y soluciones de problemas para uso informático, pero sí nos interesa entender que es necesario desde el punto de vista terminológico tanto para un análisis informático procedural como para uno orientado a objetos.
Ambos requieren la identificación y denominación de los elementos de datos en el sistema, en los lenguajes procedurales se traducen en instrucciones de operación, es decir que están más dirigidos a la representar los procesos que realiza la maquinaria y no tanto el dominio del problema que se enfoca.
En los de orientación a objetos lo más importante es identificar los conceptos involucrados en el dominio y construir una estructura de vinculación entre ellos y consecuentemente disponer de formas de etiquetamiento de los mismos, sus atributos, su pertenencia a categorías aglutinantes o desagreagaciones, especificar la herencia de aspectos conceptuales y muchos otros temas que hacen que la Terminología aparezca hoy con más fuerza en todo el ciclo del sistema informático.
La Terminología en el ciclo de vida de un sistema informático
Por tanto, la identificación conceptual consistente terminológicamente es necesaria no sólo el momento en que un usuario interroga o usa una aplicación informática sino que recorre todo el ciclo de vida de un sistema: Requerimientos, diseño, codificación, testeo, uso mantenimiento y actualización.
En los sistemas procedurales se suele relativizar la importancia de como se denominan las cosas, ya que lo importante es la concreción del proceso. Pero los problemas aparecen cuando se debe realizar cambios o en la comunicación con las personas.
En los sistemas orientados a objetos que presentan una estructura reticular se requiere una gran coherencia terminológica que debe estar presente desde el mismo inicio del ciclo de vida de un sistema.
Aquí aparece la importancia del trabajo terminológico. Como indicamos arriba, cuando se construye un sistema informático se modelizan formas de razonamiento sobre un dominio y de acuerdo con esta forma de razonamiento se instrumentan soluciones, que pueden serlo en términos de acierto, transacción satisfactoria, síntesis o mezcla de todas. Para ello (dicho de una manera muy genérica) se modeliza el problema y la solución de una manera procedural cuando se trata de lograr aciertos, y orientada a objetos cuando se trata de transacciones o síntesis.
Cualquiera sea la manera en se razonará o se modelizará, cuando se contruye un sistema es necesario presentar lo que llamamos ideas innatas según la propuesta de Churchman y son el dominio del problema. Esto se expresa en el momento de la determinación de los requerimientos.
El proceso de producción de los requerimientos involucra la elicitación, el análisis y la especificación de los mismos. (Cfr. Davis, Alan. 1993).
Dentro del primer proceso, la elicitación, y justamente tendiente a la comunicación con el usuario y en especial para comprender la complejidad del dominio del problema la metodología de desarrollo de un Léxico del Sistema es de gran utilidad. (Cfr. Hadad, G.; Kaplan, G. Oliveros, A. 1996.)
La metodología de desarrollo de un Léxico del sistema ha mostrado una gran potencia. Establecido en su primer versión en la etapa de elicitación de requerimientos permite trazar el bagaje de ideas fundamentales del dominio.
Por nuestra parte, hemos propuesto utilizar técnicas y normas de trabajo terminológico para el desarrollo de este léxico ( Cfr. Bosch, M. et al. 1998).
Pero creemos que el trabajo terminológico debe continuar acompañando —partiendo del Léxico del sistema— la etapa de diseño permitiendo el establecimiento de etiquetas de los elementos de datos y los atributos de los mismos, nominando la entidades y explicitando las relaciones de acuerdo con el modelo de razonamiento del sistema.
Presente en todo el ciclo de vida del sistema la terminología del mismo debe ser el sustrato explícito del diseño, consistentemente debe documentar la codificación, adaptarse y explicitarse en la interface de usuario y en los manuales de uso y de usuario.
Permitirá entonces la rastreabilidad de todo el sistema desde sus requerimientos hasta la reingeniería, área que actualmente está descubriendo cuan útil es una terminología nativa, explícita y coherente entre el sistema y el dominio del mismo.
Cuando se trata de un sistema de estructura jerárquica (Leibnitz) esta vinculación acepta los aportes tradicionales de la Terminología, aunque aún carecemos de formación y experiencia en nuestros terminólogos para poder enfrentar esta tarea en toda su magnitud.
Indudablemente cuando nos encontramos ante una coexistencia de modelos conceptuales referenciales en dominios complejos aún tenemos mucho para desarrollar, este es el desafío que tenemos ante nosotros.
Bibliografía
Arntz, R. & H. Picht (1995). Introducción a la terminología. Madrid: Pirámide.
Bhatnagar, R . & L. Kanal (1992). “Models of enquiry and formalism for approximate reasoning”. In: Zadeh, L. y Kacprzyk, J. Eds.: Fuzzy Logic for the management of uncertainty. New York: John Wiley, pp. 29-54.
Bosch, M. (1997). Incetidumbre y complejidad en la recuperación de Información: El sistema Sibila, Semantizador de Textos Digitales. Serie Documentos del Sistema Sibila. Facultad de Periodismo y Comunicación Social, Universidad Nacional de La Plata.
Bosch, M., M. Mendoza Padilla, L. Sorgentini & H. Thompson. (1998). “Terminología y masas textuales digitalizadas en comunicación social”. Simposio Iberoamericano de Terminología, 6.
Cabré, M. Teresa (1993). La terminología: Teoría, metodología y aplicaciones. Barcelona: Antártida, 1993.
Churchman, C. (1971). The design of inquiry systems: Basics concepts os Systems and Organization. New York: Basic Books.
Davis, Alan. (1993). Software requeriments. Objects, functions, and states. NJ: Prentice Hall.
Hadad, Graciela, Gladys Kaplan & Alejandro Oliveros (1996). Integración de Escenarios con el Léxico Extendido del Lenguaje en la elicitación de requerimientos: Aplicación a un caso real. Departamento de Investigación. Universidad de Belgrano, Mayo.
Leloup, C. (1997). Moteurs d’indexation et de recherche. Environnments client-serveur, internet et intranet. Paris: Eyrolles.
Martin, J. & J. Odell (1992). Análisis y Diseño Orientado a Objetos. México: Prentice Hall Hispanoamericana. Cap. 9. Conceptos y objetos, pp. 247-262.
Rescher, N. (1981). La sistematización cognocitiva, México, S.XXI, 1981. Sistematización jerárquica: el modelo euclideano, pp.54-59. Sistematización cíclica, el modelo en red, pp.59-66
Sager, Juan C. (1993). Curso práctico sobre el procesamiento de la terminología. Madrid: Fundación Germán Sánchez Ruipérez.
|