TESIS-RENE-CAI-TRIZ-CBR

download TESIS-RENE-CAI-TRIZ-CBR

of 105

Transcript of TESIS-RENE-CAI-TRIZ-CBR

Instituto Tecnolgico de Orizaba Divisin de Estudio de Posgrado e Investigacin Maestra en Sistemas Computacionales

TesisTTULO:

Desarrollo de una aplicacin Web colaborativa basada en el modelo TRIZ-CBR para asistir la resolucin de contradicciones y capitalizar el conocimientoPRESENTADA POR: I.S.C. Ren Lpez Flores

PARA OBTENER EL GRADO DE: Maestro en Sistemas Computacionales

DIRECTOR DE TESIS

Dr. Guillermo Cortes RoblesORIZABA, VERACRUZ, MXICO MARZO 2011

A mi esposa Leticia porque confa en m tanto como para compartir su vida a mi lado, todos mis logros son logros de los dos. A mis padres que han sido el pilar ms importante en mi vida y formacin. A mis 4 hermanos espero que vean en m un buen ejemplo. A mi mis suegros y cuados que me han adoptado como un miembro ms de su familia.

Agradecimientos

A Dios, porque con Dios todo sin l nada. Al Dr. Guillermo Cortes Robles por que ha sido el gua que ha conducido el desarrollo de la tesis, muchas gracias por todo su apoyo y dedicacin. A los miembros de mi jurado: Dr. Giner, Dr. Ulises y Dr. Hilarin por sus consejos, asesoras y correcciones. A mi compaero Antonino que ha sido una parte importante en el desarrollo de este proyecto. A la academia de la Maestra en Sistemas Computacionales y los maestros por haberme brindado la oportunidad y todas las facilidades en la realizacin de mi maestra muchas gracias. A la maestra Ana Mara por su apoyo, por haberme escuchado y orientado cuando le platique de mi inters por entrar a la maestra. Al Consejo Nacional de Ciencia y Tecnologa por la beca que me otorg y que me permiti mejorar mi formacin acadmica y profesional. Al Ing. Daniel Hernndez Marn que ha compartido sus conocimientos y experiencia para la realizacin de la tesis.

Contenidondice de tablas...................................................................................................................... iv Resumen ................................................................................................................................ v Abstract ................................................................................................................................. vi Introduccin ............................................................................................................................ 1 Captulo 1 Antecedentes......................................................................................................... 3 1.1 Marco Terico........................................................................................................... 3

1.1.1 La evolucin tecnolgica y la innovacin ................................................................ 3 1.1.2 El enfoque psicolgico en la resolucin de problemas ............................................ 4 1.1.3 Anlisis de mtodos tradicionales ........................................................................... 5 1.1.4 La innovacin sistemtica y el enfoque de la Teora TRIZ ...................................... 6 1.1.5 Conceptos elementales de la teora TRIZ ............................................................... 6 1.1.6 La matriz de contradicciones................................................................................... 9 1.1.7 Razonamiento Basado en Casos (CBR) ............................................................... 11 1.1.8 Proceso del CBR .................................................................................................. 14 1.1.9 El modelo TRIZ-CBR ............................................................................................ 16 1.1.10 Innovacin Asistida por Computadora (CAI) ....................................................... 18 1.1.11 Aplicaciones Web ............................................................................................... 18 1.1.12 Trabajo colaborativo apoyado por la computadora (CSCW)................................ 19 1.2 Planteamiento del problema ........................................................................................ 20 1.3 Objetivo general .......................................................................................................... 20 1.3.1 Objetivos especficos ............................................................................................ 21 1.4 Justificacin................................................................................................................. 22 Captulo 2 Estado de la prctica ........................................................................................... 24 2.1 Trabajos relacionados ................................................................................................. 24 2.2 Anlisis comparativo ................................................................................................... 27 2.2.1 Conclusiones del estado de la prctica ................................................................. 28 2.3 Propuesta de solucin ................................................................................................. 28 2.3.1 Lenguaje de programacin ................................................................................... 28 2.3.2 Marcos de trabajo para aplicaciones Web............................................................. 28 2.3.3 Gestor de base de datos ....................................................................................... 29

i

2.3.4 Mapeo Objeto-relacional (ORM) ........................................................................... 30 2.3.5 Servidor de aplicacin ........................................................................................... 30 2.3.6 Criterios de eleccin ............................................................................................. 30 2.3.7 Solucin propuesta ............................................................................................... 31 Captulo 3 Aplicacin de la metodologa ............................................................................... 32 3.1 Introduccin................................................................................................................. 32 3.2 Casos de uso .............................................................................................................. 32 3.2.1 Casos de uso de la Web colaborativa. .................................................................. 33 3.2.2 Caso de Uso resolucin de contradicciones.......................................................... 39 3.2.3 Caso de uso Mdulo de CBR ................................................................................ 47 3.3 Modelado del dominio ................................................................................................. 49 3.4 Arquitectura de la aplicacin........................................................................................ 52 3.4.1 Elementos principales ........................................................................................... 53 3.4.2 Capa de la vista .................................................................................................... 54 3.4.3 Capa del controlador ............................................................................................. 55 3.4.4 Capa de servicios ................................................................................................. 57 3.4.5 Capa del modelo ................................................................................................... 59 3.5 Integracin de las tecnologas ..................................................................................... 62 3.6 Implementacin del mdulo de CBR ........................................................................... 64 3.7 Desarrollo de interfaces grficas de usuario ................................................................ 66 Captulo 4 Resultados........................................................................................................... 70 4.1 Registro de casos........................................................................................................ 70 4.2 Mdulo de CBR ........................................................................................................... 76 4.2.1 Variaciones en el ndice de similitud ..................................................................... 79 4.3 Proceso de colaboracin ............................................................................................. 80 Captulo 5 Conclusiones y recomendaciones ....................................................................... 85 Glosario ................................................................................................................................ 87 Publicaciones ....................................................................................................................... 91 Referencias .......................................................................................................................... 92

ii

ndice de imgenesFigura 1.1 Fragmento de la matriz de contradicciones .......................................................... 10 Figura 1.2 Proceso del CBR ................................................................................................. 14 Figura 1.3 Modelo TRIZ-CBR ............................................................................................... 17 Figura 3.1 Diagrama de casos de uso de la Web colaborativa.............................................. 33 Figura 3.2 Diagrama de Caso de uso Resolucin de contradicciones................................... 40 Figura 3.3 Diagrama de casos de uso de la bsqueda en el Mdulo de CBR ....................... 47 Figura 3.4 Diagrama del modelo del dominio. ....................................................................... 49 Figura 3.5 Diagrama del modelo de dominio del CBR........................................................... 51 Figura 3.6 Diagrama de la arquitectura desarrollada ............................................................ 53 Figura 3.7 Formulario de registro de usuarios en ZUML ....................................................... 55 Figura 3.8 Controlador del formulario registro de usuario. .................................................... 57 Figura 3.9 Clase de servicio con operaciones para administrar usuarios. ............................. 58 Figura 3.10 Entidad de negocios con anotaciones de JPA. .................................................. 59 Figura 3.11 Interfaz GenericDAO .......................................................................................... 62 Figura 3.12 Archivo de configuracin ApplicationContext.xml ............................................... 63 Figura 3.13 Clase para la bsqueda en el CBR .................................................................... 66 Figura 3.14 Pgina de inicio con la opcin de autenticacin. ................................................ 67 Figura 3.15 Pgina principal usuario autenticado.................................................................. 68 Figura 3.16 Opcin de Mis proyectos.................................................................................... 68 Figura 3.17 Opcin de editar proyecto. ................................................................................. 69 Figura 4.1 Resultado de bsqueda en el mdulo de CBR..................................................... 77 Figura 4.2 Reporte en formato HTML ................................................................................... 78 Figura 4.3 Herramienta Notificaciones .................................................................................. 81 Figura 4.4 Invitacin a colaborar por nombre de usuario ...................................................... 82

iii

Figura 4.5 Invitacin por correo electrnico .......................................................................... 82 Figura 4.6 Mensaje con invitacin para colaborar ................................................................. 83 Figura 4.7 Opcin de colaboracin ....................................................................................... 83

ndice de tablasTabla 1.1 Comparacin TRIZ CBR ....................................................................................... 15 Tabla 2.1 Anlisis comparativo del estado de la prctica ...................................................... 27 Tabla 3.1 Descripcin de entidades ...................................................................................... 50 Tabla 3.2 Descripcin de entidades para el CBR .................................................................. 51 Tabla 3.3 Atributos indexados en el mdulo de CBR ............................................................ 64 Tabla 4.1 Problema colector solar......................................................................................... 70 Tabla 4.2 Problema ensamblado de automviles .................................................................. 72 Tabla 4.3 Problema garrafn de agua................................................................................... 75 Tabla 4.4 Caso de prueba del mdulo CBR. ......................................................................... 76 Tabla 4.5 Cambio en nmero de recursos ............................................................................ 79 Tabla 4.6 Cambio en el nmero de restricciones .................................................................. 80

iv

ResumenLa importancia de administrar adecuadamente la informacin en las organizaciones propici el desarrollo de sistemas de informacin, los cuales son un elemento que permite tener una ventaja competitiva para la toma de decisiones; actualmente muchas industrias dependen del uso extensivo de estos sistemas para su existencia. Un tipo de sistema de informacin con una gran trascendencia son las aplicaciones Web, las cuales utilizan la infraestructura que provee Internet. Una de las caractersticas ms interesantes de este tipo de sistemas es la capacidad de proveer una plataforma para el trabajo colaborativo. Esta capacidad se revela fundamental dentro de la administracin de la innovacin, proceso que es en esencia un trabajo colaborativo y que no escapa a la influencia de este tipo de aplicaciones computacionales. Los trabajos relacionados con este dominio de reciente creacin se encuentran en el rea de la Innovacin Asistida por Computadora (CAI). A travs del CAI se busca ofrecer a los ingenieros, administradores, inventores y dems involucrados en el proceso de innovacin, un conjunto de herramientas de software para dirigir y administrar dicho proceso. En esta tesis se desarroll una aplicacin Web que permite la colaboracin entre los involucrados en el proceso de innovacin, para que mediante el uso del modelo TRIZ- CBR se habilite la capitalizacin del conocimiento adquirido durante la resolucin de problemas inventivos.

v

AbstractThe importance of properly managing information in organizations led to the development of information systems, which are an element that provides a competitive advantage for making decisions, now many industries rely on extensive use of these systems for their existence. One type of information system with high relevance are Web applications that use the infrastructure that Internet provides. One of the most interesting features of these systems is the ability to provide a platform for collaborative work. This capability is essential in the management of innovation, a process that is essentially a collaborative work that has not escaped the influence of such computer applications. The works related to this domain are newly established in the area of Computer Aided Innovation (CAI). The CAI seeks to provide engineers, managers, inventors and others involved in the innovation process, a set of software tools to manage and administer such process. In this thesis is developed a Web application that enables collaboration among those involved in the innovation process, so that by using the TRIZ-CBR model enabling the capitalization of knowledge acquired while solving an inventive problem.

vi

Introduccin

IntroduccinEn el ambiente industrial actual, la capacidad para controlar y dirigir el proceso de innovacin es en un factor primordial para el xito y permanencia en un mercado altamente competido. Cualquiera que sea el escenario (productos, servicios o procesos), el proceso de innovacin requiere de buenas ideas y es en esta etapa, donde la tcnicas tradicionales pierden efectividad. Tpicamente, las metodologas y herramientas empleadas para satisfacer la etapa de generacin de ideas y conceptos, estn basadas nicamente en un enfoque psicolgico. Esto conduce a soluciones poco eficientes y de una calidad inferior, a aquellas alcanzables mediante el empleo de nuevas metodologas o teoras. Existe un enfoque capaz de asistir a los ingenieros durante el desarrollo sistemtico de nuevos productos, servicios y procesos: la teora TRIZ (Teora para la resolucin de problemas inventivos) la cual se apoya en la evolucin de la tecnologa y la ciencia para resolver problemas. Sin embargo, esta teora posee varias limitaciones y dentro de estas, una es fundamental para el desarrollo de esta tesis: La teora TRIZ no dispone de un mecanismo explcito para capturar y reutilizar el conocimiento adquirido al momento de resolver un problema inventivo. Esta deficiencia se resuelve al combinar la teora TRIZ con el razonamiento basado en casos (Case-Based Reasoning o CBR). TRIZ-CBR es un modelo que propone una sinergia entre ambos enfoques, pero no cuenta actualmente con un software orientado hacia el trabajo colaborativo que facilite su aplicacin. En esta tesis se busca disear, desarrollar e implementar una aplicacin Web colaborativa que cumpla con los requisitos establecidos en dicho modelo.

1

Introduccin

La estructura de esta tesis se organiza en cinco captulos: Captulo 1: en este captulo se establecen los antecedentes y el marco terico. el objetivo es definir el contexto del proyecto, as como realizar una breve introduccin al concepto de innovacin y la resolucin de problemas. Tambin se busca ofrecer una descripcin de los mtodos tradicionalmente empleados en la resolucin de problemas. Se aborda la innovacin sistemtica a travs de la teora TRIZ, se describe lo que son las herramientas CAI tambin se hace una definicin de lo que es una aplicacin Web. Adems en este captulo se presenta el planteamiento del problema, el objetivo general y los objetivos especficos del proyecto, as como su justificacin. Captulo 2: presenta el estado de la prctica bajo la forma de un estudio sobre los trabajos relacionados con la presente propuesta. Es un anlisis de los artculos consultados que al final se resumen en una tabla comparativa. Tambin se incluye la solucin propuesta y metodologa de desarrollo. Captulo 3: documenta el desarrollo de la metodologa para alcanzar la solucin propuesta. Se describe: los requisitos del sistema empleando casos de uso, el modelado del dominio, la descripcin de la arquitectura, la integracin de las tecnologas y se incluyen pantallas de usuario de las interfaces grficas creadas con ZK. Captulo 4: ofrece los resultados alcanzados en el desarrollo de la tesis, para ello se documentan 3 casos resueltos con la matriz de contradicciones y que estn disponibles en la bibliografa, se explica el funcionamiento del mdulo de CBR y el proceso de colaboracin. Captulo 5: describe las conclusiones que se establecen con el desarrollo de la tesis as como recomendaciones para trabajos futuros.

2

Antecedentes

Captulo 1 AntecedentesLa importancia de la innovacin en la actualidad

La diversidad de creaciones tecnolgicas se entiende a travs de la teora de la evolucin tecnolgica como lo sugiere Basalla [1]. En dicha teora se busca hacer una analoga con la teora de evolucin de las especies que Charles Darwin propuso. La evolucin tecnolgica es causa de cambios en la sociedad, en la poltica y en el medio ambiente, influyendo directamente en la historia de la humanidad. En la gran variedad de productos tecnolgicos que existen actualmente se identifica un elemento comn: la innovacin. De acuerdo con varios autores [2], [3] la innovacin es un proceso creativo, social, tcnico y econmico, que es fundamental para el desarrollo de la industria actual. De esta definicin se establece la importancia que tiene en las empresas controlar este proceso tan complejo, ya que la innovacin permite tener una ventaja competitiva para ofrecer productos y/o servicios que los clientes aceptan con xito.

1.1

Marco Terico

1.1.1 La evolucin tecnolgica y la innovacin

El desarrollo tecnolgico del ser humano reposa en su capacidad para resolver problemas. Consecuentemente, uno de los retos de la innovacin es la resolucin de problemas. Diferentes autores aseguran que la innovacin es un proceso continuo de resolucin de problemas [4]. Se entiende por problema la diferencia que existe entre dos estados, el actual y otro al que se desea llegar. Esto se interpreta tambin como cualquier oportunidad para mejorar un sistema. La resolucin de problemas es una actividad central en el proceso de innovacin y el desarrollo tecnolgico. Por lo tanto es importante dedicar especial atencin al estudio de este proceso. A partir de esta premisa se plantean las siguientes preguntas:

3

Antecedentes

1. Cmo hacen los inventores para innovar o inventar? 2. Ms importante an, Cules son los mtodos empleados para la resolucin de problemas? 3. Estos se aprenden y se reutilizan? Para dar respuesta a estas preguntas se emplean dos enfoques que explican el proceso de resolucin de problemas: el enfoque psicolgico y el enfoque basado en la evolucin de la tecnologa.1.1.2 El enfoque psicolgico en la resolucin de problemas

El enfoque psicolgico se apoya en las habilidades creativas innatas de cada individuo, no considera los descubrimientos de la ciencia, ni tampoco las leyes de evolucin de la tecnologa. Este enfoque sugiere que la creatividad es aleatoria y que es el resultado de un proceso especial. Algunos de los mtodos que propone este enfoque se presentan a continuacin. 1) Prueba y error. En 1898 E. Thorndike expuso formalmente el mtodo de prueba y error durante una investigacin sobre el aprendizaje. Este mtodo se caracteriza por una ausencia de direccin durante la bsqueda de soluciones. La bsqueda de conceptos capaces de resolver el problema que se enfrenta, se hace de manera aleatoria, intentando cubrir el mximo del espacio posible de soluciones. El mtodo es tan antiguo como la humanidad y se emplea desde el nacimiento de nuestra sociedad. De hecho continua vigente en nuestros das. A pesar del continuo incremento de la complejidad de los problemas inventivos actuales, los mtodos para resolverlos no presentan ninguna mejora y sin embargo, ingenieros e innovadores continan tratando de alcanzar sus objetivos utilizando este antiguo mtodo. 2) Lluvia de ideas o Brainstorming. El mtodo lo desarroll Alex Osborn en 1937, pero fue hasta 1957 que apareci la primera publicacin que haca

4

Antecedentes

referencia a este mtodo. La lluvia de ideas naci de la necesidad de incrementar la eficiencia del mtodo de prueba y error. En este mtodo se busca, mediante la supresin temporal del sentido de la crtica, amasar todas las ideas espontneamente producidas por los miembros de un equipo, generalmente pluridisciplinario [5]. 3) Sinctica o Synectics. Un intento por mejorar el brainstorming llev a la creacin de una metodologa: la sinctica. Durante la dcada de 1960, William Gordon descubri que exista una sinergia entre el brainstorming, el sentido de la crtica y el razonamiento analgico (o razonamiento por analogas). En consecuencia, era viable crear una red para interconectar estos tres procesos mentales y capturar la sinergia producida. Synectics es un vocablo griego que significa unir elementos aparentemente sin relacin alguna. Esta tcnica utiliza el intercambio de analogas y metforas entre un equipo pluridisciplinario y cuidadosamente seleccionado, donde coinciden diferentes personalidades y experiencias en diversas reas de la ciencia o de una industria [6].1.1.3 Anlisis de mtodos tradicionales

Tomando como base la descripcin sobre los mtodos ms utilizados para resolver problemas bajo el enfoque psicolgico, se extraen las siguientes conclusiones:

Son altamente aleatorios. Su aprendizaje es rpido, excepto la sinctica. Despus de largos periodos de aplicacin sigue sin sufrir modificacin para incrementar su eficiencia. No permiten transferir el conocimiento adquirido de un rea de la ciencia a otra.

5

Antecedentes

1.1.4 La innovacin sistemtica y el enfoque de la Teora TRIZ

La solucin de problemas inventivos o complejos, necesita de herramientas o tcnicas capaces de reducir la complejidad del problema. Estas tcnicas no se formalizan nicamente con base en la experiencia de un inventor o con base en el anlisis de un solo dominio de la tecnologa. De acuerdo con Altshuller [4], la bsqueda catica y desordenada, tpica de los mtodos descritos con anterioridad, tiene un costo bastante elevado en tiempo y energa para la resolucin de un problema. Consecuentemente, es necesario desarrollar un mtodo capaz de producir una bsqueda ordenada, basada en reglas bien estructuradas y lgicas.

Preocupado por las deficiencias de los enfoques tradicionales para resolver problemas el inventor ruso G. S. Altshuller propuso una teora que llam TRIZ (Teora para resolver problemas inventivos). Lo que Altshuller pretenda como inventor era ayudar a otros en su proceso de innovacin [7], y con los trabajos de investigacin que realiz, estableci las bases para una teora que pretende hacer de la innovacin un proceso sistemtico y controlable. Una definicin de TRIZ establece que es un rea de la ciencia que explora los mecanismos de evolucin de los sistemas tcnicos con el objetivo de desarrollar mtodos analticos y tcnicas de resolucin de problemas [8]. Una ventaja de la teora TRIZ sobre otros mtodos tradicionales para resolver problemas es que gua el proceso de solucin hacia modelos industriales y de ingeniera ya probados con xito en mltiples dominios tecnolgicos. En consecuencia, lo aleatorio no reside ms que en la formalizacin del problema y en la interpretacin de las direcciones producidas por tales modelos.1.1.5 Conceptos elementales de la teora TRIZ

A continuacin se hace una breve introduccin a algunos de los conceptos elementales de la teora de TRIZ [7].

6

Antecedentes

1) Sistema tcnico. De acuerdo con Savransky [9] un sistema tcnico es un conjunto ordenado de subsistemas interactuando destinados a la ejecucin de funciones especficas. Posee comportamientos y propiedades que no se reducen a los comportamientos y propiedades de los subsistemas por separado. Los sistemas tcnicos se clasifican en: dinmicos (televisin, carro, piano, entre otros) y estticos (construccin, muebles, anteojos, entre otros). 2) Tendencias de evolucin. Existen tendencias o leyes objetivas que explican la evolucin de todo sistema tcnico. Estas tendencias se descubrieron y analizaron, y ahora se aplican para resolver los problemas intrnsecos de desarrollo de productos o de tecnologas. Entre stas la ms importante es el concepto de sistema ideal, que implica que todo sistema evoluciona hacia el incremento de su grado de perfeccionamiento. El grado de perfeccionamiento se determina mediante la relacin que existe entre las funciones tiles de un sistema y la suma de los costos y efectos indeseables asociados al sistema. 3) La contradiccin como elemento central de un problema. Durante su evolucin, un sistema tcnico supera las contradicciones que existen entre un estado actual, un estado futuro y las restricciones asociadas a la transicin entre estos estados. Una contradiccin se define como la condicin en la cual dos exigencias o requerimientos de un sistema son mutuamente exclusivos y sin embargo se asocian para alcanzar un mismo objetivo [7]. La resolucin de la contradiccin (mediante la aplicacin de las herramientas adecuadas), elimina el conflicto entre ambos factores, contrariamente a los enfoques tradicionales que favorecen el compromiso. Existen dos tipos fundamentales de contradicciones: las contradicciones fsicas y las contradicciones tcnicas. 4) El proceso de innovacin se despliega sistemticamente. La aplicacin de TRIZ demuestra su habilidad para eliminar las barreras entre diferentes disciplinas. En otros trminos, las herramientas de TRIZ permiten acceder a un conjunto de mejores prcticas, a soluciones y estrategias de resolucin de

7

Antecedentes

problemas inventivos altamente creativas. Los conceptos fundamentales de TRIZ en coordinacin con su variado y equilibrado repertorio de herramientas, permiten delimitar el espacio de solucin de un problema y por este medio, producir de manera eficaz y casi sistemtica una solucin. 5) Resultado Ideal Final (RIF). Herramienta propuesta por Altshuller y Shapiro que sirve para guiar la resolucin de un problema. De acuerdo con Altshuller, el RIF se plantea como una fantasa, como una utopa o algo que es inalcanzable pero que funcionan de gua. El RIF es la solucin que resuelve la contradiccin sin compromiso. Los recursos se utilizan para pasar de la contradiccin a una solucin casi perfecta [9][10]. 6) El concepto de recurso. Todo sistema en evolucin, dispone de ciertos recursos que se utilizan para mejorar la eficiencia de este sistema. Un recurso es un elemento disponible en el sistema o en su ambiente, generalmente inactivo y capaz de producir una accin til sin costo o al menor costo posible. La identificacin y el uso de estos recursos produce nuevas ideas, resuelve contradicciones y dirige la evolucin de un sistema. Se recomienda despus de plantear el problema hacer un anlisis con el fin de identificar los recursos disponibles dentro del sistema. Los conceptos de TRIZ se agrupan en un conjunto de herramientas de aplicacin general. Estas herramientas se dividen en: basadas en el conocimiento y herramientas analticas. La matriz de resolucin de contradicciones tcnicas o simplemente matriz de contradicciones es una de las herramientas de TRIZ basadas en el conocimiento, y tiene una elevada importancia para el desarrollo en esta tesis. Por esta razn, la seccin siguiente ofrece una descripcin de esta herramienta.

8

Antecedentes

1.1.6 La matriz de contradicciones El desarrollo de la matriz de contradicciones comenz en 1946 con el objetivo primordial de ofrecer una herramienta capaz de guiar la creatividad durante la resolucin de una contradiccin tcnica. En esta herramienta se concentran las estrategias, tcnicas y mtodos ms exitosos para enfrentar este tipo de situaciones. Para el desarrollo de esta herramienta fue indispensable tomar en cuenta el avance tcnico en muchos campos de la ciencia y en diferentes tipos de industrias, sobre todo en aquellas donde se resuelve algn tipo especfico de contradiccin. Por ejemplo en la aeronutica la contradiccin entre la velocidad y el peso. Durante el anlisis de patentes, Altshuller y sus colaboradores se percataron que, inclusive las soluciones ms originales, reposaban sobre ciertos principios fundamentales. Estos principios se sintetizaron y forman un cuerpo de 40 grandes vas de resolucin de problemas inventivos. Una constatacin paralela tuvo lugar durante este anlisis: con un nmero limitado de parmetros, a saber, 39, es posible formalizar un problema inventivo. La relacin entre los 39 parmetros y los 40 principios de resolucin dio lugar a una matriz de 39*39. Una actualizacin de esta matriz aument el nmero de parmetros a 48. La cantidad de principios inventivos sigue sin modificacin. En la Figura 1.1 [11] se muestra un ejemplo de un fragmento de la matriz

9

Antecedentes

Figura 1.1 Fragmento de la matriz de contradicciones

Para resolver un problema empleando la matriz de contradicciones se siguen las siguientes cinco actividades: 1) Identificar en el problema el conflicto entre dos caractersticas o parmetros de un sistema. 2) Identificar estos dos parmetros entre la lista de los 39 (o los 48) parmetros genricos. 3) Con la ayuda de la matriz de contradicciones sobre las lneas, identificar el parmetro que se desea mejorar y sobre las columnas, el parmetro que se degrada debido a esta mejora (o que impide que se realice la mejora). El punto de interseccin entre la lnea y la columna es la contradiccin. Esta contradiccin asla un conjunto de principios de solucin (ordenados segn un orden recomendado de aplicacin), que se utilizan eficazmente en diversos dominios, para eliminar la contradiccin identificada.

10

Antecedentes

4) Hacer un anlisis de los principios identificados. 5) Aplicar el principio genrico para encontrar una solucin especfica a nuestro problema. Si ninguno de los principios identificados en el paso 4) permite resolver el problema, se sugiere revisar el conjunto de los 40 principios propuestos en la matriz para encontrar la solucin. Nota: si una vez revisados los 40 principios, no es posible transformar ninguno de ellos en una solucin pragmtica, se recomienda analizar el planteamiento del problema. Desafortunadamente en el proceso de resolucin de contradicciones no se contempla un mecanismo que permita registrar y recuperar los problemas resueltos en el pasado, generando con ello una prdida de conocimiento. Para superar esta limitacin se integr una tcnica del rea de la Inteligencia Artificial (AI) denominada Razonamiento Basado en Casos o CBR, el cual permite la capitalizacin y la administracin del conocimiento. Ms adelante se describe un modelo denominado TRIZ-CBR que esquematiza y describe una sinergia entre los dos enfoques.1.1.7 Razonamiento Basado en Casos (CBR)

El CBR es una tcnica que sirve para capturar, adaptar y reutilizar el conocimiento generado en la resolucin de problemas. Se basa en el principio de que problemas similares tienen soluciones similares. Tuvo sus orgenes en el trabajo que realizaron Schank y Abelson en 1977 acerca de la memoria humana y la memoria dinmica. Un grupo de trabajo de la Universidad de Yale, que Schank dirigi, cre un modelo cognitivo para CBR y la primera aplicacin computacional basada en dicho modelo [12]. Desde un punto de vista pragmtico, mltiples son las razones que justifican el empleo del CBR como herramienta de resolucin de problemas y administracin del conocimiento, entre ellas se encuentran las siguientes [12], [13], [14]:

11

Antecedentes

Los expertos de cualquier disciplina comparan un problema nuevo, con las experiencias adquiridas. Si se identifica un problema similar, este se adapta para satisfacer las condiciones exigidas en el problema que confrontan.

Las experiencias estn disponibles en fuentes bibliogrficas y en la memoria de los expertos, de este modo, stas se adquieren cuando se resuelve un nuevo problema.

Un problema resuelto se generaliza hasta cierto punto, a fin de extraer ciertas caractersticas que faciliten su identificacin y determinen sus particularidades. La comparacin entre dos experiencias o casos, se efecta fcilmente. Adems, stas mantienen su pertinencia sobre intervalos de tiempo relativamente largos. Las razones mencionadas se resumen en dos caractersticas del CBR:

memorizar y reutilizar el conocimiento. Antes de definir el proceso de CBR se presentan las siguientes definiciones de conceptos importantes para entender mejor su funcionamiento [12]: 1) Representacin de un caso. Un caso se define como la representacin de un episodio de conocimiento o experiencia. Un caso es el relato de un evento, una historia o algn tipo de registro que tpicamente incluye: a. El problema que describe el estado del entorno cuando ocurri el caso. b. La solucin expuesta derivada de la solucin problema. Por lo tanto un caso individual se compone de dos elementos: una descripcin del problema y una solucin almacenada. 2) Indizar. Un ndice es una estructura computacional de datos que se almacena en memoria para hacer las bsquedas ms rpidamente. Un CBR tambin ocupa ndices para acelerar la bsqueda. La informacin contenida en un caso es de dos tipos:

12

Antecedentes

a. Informacin indizada que se usa para la recuperacin. b. Informacin no indizada que provee de un contexto a la informacin que es importante para el usuario pero que no se utiliza directamente en la recuperacin. Una tarea nada fcil en el diseo de un CBR es identificar los atributos o caractersticas del caso que servirn de ndices. La siguiente lista describe como se define un ndice: Es predecible. Dirige los propsitos para los cuales se usa el caso. Es lo suficientemente abstracto para permitir ampliar el uso futuro de la base de casos. Es concreto para ser reconocido en un futuro.

3) Almacenamiento. El almacenamiento es un aspecto importante en el diseo de un sistema CBR eficiente, en l se refleja la vista conceptual de la informacin que se representa en el caso y toma en cuenta los ndices. La base de casos se organiza en una estructura manejable que permite la bsqueda eficiente y la implementacin de los mtodos de recuperacin. 4) Recuperacin. La recuperacin de un caso est muy relacionada y depende del mtodo usado para indizar. En general, son dos las tcnicas usadas por las herramientas CBR comerciales: la recuperacin mediante el algoritmo del vecino ms cercano y la recuperacin inductiva. El algoritmo del vecino ms cercano es una tcnica muy simple que consiste en determinar la distancia que existe entre los atributos indizados del nuevo caso y los atributos indizados de los casos almacenados en la base de casos, localizando el que ms similitud tenga. El clculo de la distancia se realiza con

13

Antecedentes

alguna de las siguientes medidas de similitud: distancia Euclidiana, distancia de Manhattan y Alineamiento dinmico temporal. La recuperacin inductiva emplea un rbol de decisiones, a partir del cual, se encuentra el caso ms parecido a la informacin dada. El algoritmo ID3 que Ross Quinlan cre es til para la generacin del rbol de decisiones [15].1.1.8 Proceso del CBR

En la Figura 1.2 se muestran los elementos que componen el proceso del CBR [12].

Figura 1.2 Proceso del CBR

El proceso de CBR se define en los siguientes cuatro pasos: 1) Recuperar el caso ms similar. 2) Reutilizar el caso para intentar resolver el problema. 3) Revisar la solucin propuesta si es necesario.

14

Antecedentes

4) Guardar la solucin encontrada como parte de un caso nuevo. Del proceso anterior se establece que un problema nuevo se compara con los casos en la base de casos, y se recupera uno o ms casos. La solucin propuesta por los casos similares se reutiliza y se evala. Cuando el caso recuperado no es similar, la solucin se revisa, generando un nuevo caso que se almacena una vez validado. La principal limitante en el proceso del CBR se presenta en la etapa de recuperacin, cuando no existe un caso similar en la base de casos. Este problema imposibilita continuar las siguientes actividades [16]. En la Tabla 1.1 se muestran las diferencias ms importantes entre el enfoque de TRIZ y el CBR [17].Tabla 1.1 Comparacin TRIZ CBR

CBR

TRIZ

Basado en el pensamiento analgico Basado en el pensamiento analgico, pero enfocado a dominios especficos. pero utiliza analogas a travs de

diferentes dominios. Propone solucin a los problemas Es necesario un anlisis profundo para

rpidamente. No es necesario obtener la identificar que herramienta de TRIZ se solucin desde cero. utiliza.

Propone soluciones en disciplinas que el El problema y los elementos de TRIZ razonador no comprende del todo. requieren ser bien entendidos.

Experiencias pasadas producen criterios La idealidad es el nico criterio propuesto para evaluar las soluciones. Recuerda los problemas y para la evaluacin. errores No tienen memoria. Por lo tanto, no se

ocurridos en el pasado, previniendo al almacenan problemas resueltos, errores

15

Antecedentes

CBR razonador que acciones tomar para evitar o xitos. o prevenir errores pasados.

TRIZ

No estn disponibles la solucin o Contiene un resumen de las mejores estrategias de solucin de otros dominios soluciones y estrategias de mltiples dominios. No tiene un concepto o herramienta para Incluye superar la inercia psicolgica. algunas herramientas para

reducir la rigidez mental. Es un enfoque equilibrado entre la psicologa y la tecnologa.

Sin embargo, de acuerdo con varios autores [2], [18], [19], [16], [37] es posible establecer una sinergia entre la teora TRIZ y el CBR, de la cual se desprende el modelo TRIZ-CBR.1.1.9 El modelo TRIZ-CBR

Es a partir de las similitudes y diferencias constatadas entre ambos enfoques, que se obtiene un mecanismo de resolucin de problemas esquematizado en la Figura 1.3 [16].

16

Antecedentes

flow chart Modelo TRIZ-CBR

Principios Asociados

Interpretacin

Solucin propuesta

No Caso Recuperado? Si Caso Resuelto FC_OnPageConnector . Recuperacin Casos Anteriores Memoria basada en las contradicciones Revisin Caso verificado y/o reparado Memorizacin Caso registrado Elaboracin Resultado Final Ideal Descripcin del problema Problema Objetivo Nuevo caso

Contradiccin

-Objetivo -Recursos -Restricciones, etc

Figura 1.3 Modelo TRIZ-CBR

En el proceso TRIZ-CBR el problema objetivo se modela como una contradiccin. Despus la contradiccin y algunos otros elementos derivados de la descripcin del problema se usan para recuperar un caso similar de la memoria. La bsqueda ofrece o no un caso similar. Por consecuencia, en esta etapa de la bsqueda, se siguen dos sub-procesos: 1) Se recupera un caso similar en la base de casos. Comienza el proceso de reutilizacin y/o adaptacin. El usuario adapta la solucin del problema en la base de casos a los requerimientos del problema objetivo. 2) No existe un caso similar registrado. El sistema propone al menos un principio de solucin asociada a la contradiccin. El usuario interpreta el principio de solucin para proponer una solucin potencial.

17

Antecedentes

Cualquiera de los dos escenarios propone una solucin. La solucin propuesta se verifica y si es necesario se rectifica. El proceso termina cuando la implementacin (xito o fracaso), la estrategia de adaptacin de la solucin y las sugerencias de implementacin se validan para memorizarse en la base de casos. De los pasos descritos en el proceso anterior, se deriva que TRIZ ofrece el conocimiento genrico que permite abordar cualquier problema formalizado como una contradiccin. Adems de esto, TRIZ ofrece una estructura que permite clasificar e indexar un caso. El CBR proporciona los elementos necesarios para buscar y comparar dos problemas, e igualmente para conservar y actualizar las experiencias obtenidas. En esta sinergia se integran diferentes herramientas y conceptos de TRIZ como la contradiccin, el resultado final ideal y la matriz de resolucin de contradicciones tcnicas. Desafortunadamente este modelo an no cuenta con herramientas que faciliten su aplicacin y difusin, el amplio uso de los sistemas de informacin los convierte en una opcin factible para la creacin de un software que permita implementarlo.1.1.10 Innovacin Asistida por Computadora (CAI)

La Innovacin Asistida por Computadora es un dominio emergente dentro del entorno computacional y cuyo propsito es asistir a los ingenieros, administradores e innovadores en el proceso de innovacin y el desarrollo de productos. Las herramientas de tipo CAI forman parte de lo que se define en el mbito de la informtica como tecnologas asistida por computadora o CAx [21].1.1.11 Aplicaciones Web

La definicin de aplicacin Web que aqu se plantea toma como base los elementos de diferentes definiciones, ya que no es posible encontrar una definicin aceptada por la mayora.

18

Antecedentes

Una aplicacin Web es la tercera generacin en la evolucin de los contenidos en la Web. Es un tipo de producto ms sofisticado que supera las caractersticas de sus antecesores: las pginas Web que aparecieron a mediados de 1990 como la primera etapa evolutiva y los productos de segunda generacin denominados sitios Web [22]. Se define como una coleccin de diferentes recursos (servlts, scripts, paginas HTML y clases) que se empacan y ejecutan en diferentes servidores de contenidos [23]. Entre sus caractersticas [24] se enlistan las siguientes: Se basan en una arquitectura Web e infraestructura existente. Se acceden a travs de un Web browser (Internet Explorer, Mozilla Firefox, Google Chrome, entre otros). La plataforma y lenguaje de programacin son independientes. Promueven la reutilizacin de la aplicacin ms all del Web browser. Permiten la composicin con otras aplicaciones Web o de escritorio

1.1.12 Trabajo colaborativo apoyado por la computadora (CSCW) Es un campo de investigacin multidisciplinario que se enfoca en el desarrollo

de herramientas y tcnicas computacionales que apoyan el trabajo de muchas personas en tareas relacionadas [25] [26]. Las caractersticas de un sistema CSCW (Computer Supported Cooperative Work) son: Facilita la comunicacin entre los usuarios. Coordinacin de las actividades realizadas por los usuarios. Colaboracin entre grupos de usuarios para la creacin, modificacin y distribucin de artefactos y/o productos. Control en los procesos para asegurar la integridad y llevar un registro en el progreso de los proyectos.

19

Antecedentes

1.2 Planteamiento del problemaLas personas que ocupan el enfoque para resolver problemas de la teora TRIZ, no cuentan con un sistema Web que permita el trabajo colaborativo; que sea funcional y eficiente para asistir en la resolucin de un problema formulado como una contradiccin y que al mismo tiempo permita capitalizar las experiencias adquiridas. Por lo tanto cada vez que se enfrenta un problema inventivo, se despliega el proceso completo de resolucin de problemas. Esto conlleva a que el conocimiento generado y puesto en accin durante dicho proceso no se registre, tampoco el resultado de la implementacin de la solucin propuesta, provocando la reinvencin de soluciones y disminuyendo la eficiencia del proceso. Con base en lo expuesto en el prrafo anterior, se plantea que existe la necesidad de una aplicacin Web colaborativa para asistir el proceso de modelar y resolver un problema que se formula como una contradiccin. Esta aplicacin Web necesita estar disponible en mltiples disciplinas para ir creando de forma colaborativa una base de soluciones creativas, con el propsito de contar con una herramienta informtica efectiva y eficiente capaz de hacer de la innovacin un recurso disponible sobre demanda. Generalmente los problemas inventivos o problemas que contienen al menos una contradiccin se resuelven mediante un compromiso que rara vez satisface los requerimientos reales del problema. Esto es lo que hace diferente a un problema inventivo de un problema de optimizacin, ya que distinto a la optimizacin, en este tipo de problemas se genera un espacio de solucin.

1.3 Objetivo generalDesarrollar una aplicacin Web colaborativa para capturar, modelar y resolver un problema inventivo, ocupando como base el modelo TRIZ-CBR. Este proceso ofrece un mecanismo para almacenar y recuperar problemas resueltos que se modelan como una contradiccin.

20

Antecedentes

La aplicacin provee una solucin de acuerdo a los parmetros del problema modelado, basndose en un ndice de similitud. Esto implica que el sistema posee una memoria que permite almacenar experiencias.1.3.1 Objetivos especficos

1. Realizar un anlisis bibliogrfico sobre la teora TRIZ para comprender el funcionamiento del proceso de resolucin de problemas mediante la matriz de contradicciones tcnicas y los principios de separacin. 2. Analizar el proceso de formulacin y composicin de una contradiccin (sin importar su tipo). 3. Analizar el proceso de resolucin de una contradiccin. 4. Proponer un esquema para construir un episodio de conocimiento. 5. Proponer y modelar una estructura para almacenar los episodios de conocimiento derivado de las soluciones creativas que se vayan descubriendo con el sistema. Esto significa que se desarrolla una estructura para una memoria capaz de almacenar las experiencias adquiridas durante la solucin de un problema. 6. Proponer un esquema para recuperar y presentar soluciones almacenadas mediante el anlisis de mtodos y tcnicas para calcular el ndice de similitud entre 2 o ms problemas. 7. Modelar una arquitectura que facilite la integracin con otro mdulo para la resolucin de problemas de inventiva, pero que se basa en el Anlisis camposustancia y las 76 soluciones estndar de TRIZ. El desarrollo de este segundo mdulo est fuera del alcance de esta tesis. 8. Disear una interfaz intuitiva y fcil de usar que permita capturar y modelar los problemas inventivos en trminos de los conceptos intrnsecos de la matriz de contradicciones tcnicas y los principios de separacin. 9. Facilitar la transferencia de soluciones entre diferentes reas tecnolgicas. 10. Proveer de un mecanismo que le permita a los usuarios hacer una evaluacin o feedback de las caractersticas del sistema

21

Antecedentes

11. Tener un soporte que facilite la internacionalizacin.

1.4 JustificacinLos siguientes puntos abordan la justificacin de la tesis desde diferentes perspectivas: tecnolgica, social, acadmica y econmica. Justificacin tecnolgica o Como aportacin tecnolgica se plantea tener una aplicacin Web colaborativa que sea eficiente y funcional para facilitar a las personas que ocupan la teora TRIZ para modelar y resolver un problema inventivo (formulado como una contradiccin). Se busca crear, con la ayuda de un sistema de tipo CBR, una base de soluciones reales en diferentes reas profesionales para facilitar la reutilizacin y transferencia del conocimiento ya adquirido. o Se pretende facilitar la transferencia entre diferentes reas tecnolgicas ya que la herramienta est disponible a travs de la Web permitiendo que los usuarios colaboren sin importar su ubicacin geogrfica. o No se tiene reportado una aplicacin Web colaborativa que sistematice el despliegue del modelo TRIZ-CBR. o Plantear en el rea de la ingeniera de software una arquitectura que de soporte al trabajo colaborativo en aplicaciones Web dentro del CAI. Justificacin social o En el mbito social su busca poner al alcance a travs del sitio Web de la Asociacin Mexicana de TRIZ, A.C. http://www.ametriz.com/ una

herramienta que est disponible en los idiomas espaol, ingls y francs, para facilitar el uso y difusin de las metodologas de la teora TRIZ: Matriz de contradicciones tcnicas y los principios de separacin.

22

Antecedentes

Justificacin acadmica o TRIZ es una teora que est en vas de consolidarse, por lo tanto, necesita de herramientas tiles que le permitan estar al alcance de un mayor nmero posible de personas. Actualmente no se reporta en la Web la existencia de una herramienta funcional que ofrezca lo que se propone con el desarrollo de este proyecto. o El desarrollo sistemtico de nuevos conocimientos, produce innovaciones en productos, procesos o en la estructura de la organizacin, por eso es necesario la creacin de una estructura que favorezca la adquisicin, el anlisis, la preservacin y la reutilizacin del conocimiento como un elemento capaz de acelerar el proceso de innovacin.

Justificacin econmica o En el mbito econmico se reduce el tiempo y el esfuerzo dedicado a la resolucin de problemas ya que se parte de soluciones reales comprobadas. Se busca asegurar el xito de una solucin, as como evitar posibles fracasos.

23

Estado de la prctica

Captulo 2 Estado de la prcticaCon el propsito de ampliar el conocimiento que existe acerca de posibles proyectos relacionados con la temtica abordada en este trabajo, se hizo un estudio en el rea del CAI tratando de establecer las tcnicas, mtodos y tecnologas empleadas en la creacin de herramientas para asistir en el proceso de innovacin. Este estudio sirve de base para determinar la trascendencia de la tesis y ayudar a establecer un punto de partida para su desarrollo. A continuacin se describen los trabajos relacionados que se consultaron y al final se muestra mediante una tabla comparativa la relacin que existe entre ellos.

2.1 Trabajos relacionadosSe entiende como marco de trabajo una estructura definida que permite organizar y desarrollar un proyecto, en [20] el proyecto Laboranova propone el marco de trabajo unificado para la colaboracin en la innovacin (UCIF Unified Collaborative Innovation Framework). Su propsito es proveer el soporte para las etapas tempranas en el proceso de innovacin dentro de entornos de trabajo colaborativo. UCIF es una construccin conceptual que funciona como la estructura y lmite sobre los cuales se integran varias entidades y conceptos para proveer una solucin. Por lo tanto, se espera que UCIF simplifique el trabajo centrndose en los usuarios de la innovacin abierta. La innovacin abierta es un concepto acuado por Henry Chesbrough, la idea central es que el mundo consiste de un conjunto de conocimiento distribuido, donde las organizaciones/empresas no se dan el lujo de depender por completo de sus propias investigaciones, es por ello que compran el producto, licencia de los procesos o invenciones de otras compaas [20]. Una plataforma basada en la Web para la administracin del conocimiento es un software diseado para facilitar la colaboracin y llevar a cabo tareas especficas relativas a la identificacin, indexacin, reutilizacin y difusin del conocimiento. En [21] se ilustra una plataforma Web http://www.kmmaster.com/ como un ejemplo de una herramienta tipo CAI, la cual ofrece apoyo para el intercambio de conocimientos, la 24

Estado de la prctica

comunicacin dentro y entre los diferentes tipos de organizaciones tales como equipos, los departamentos o redes internas de la organizacin. La plataforma Web que se describe presenta las caractersticas siguientes: trata de apoyar la comunicacin interna y externa, as como la virtualizacin de los conocimientos, la visualizacin de los procesos de toma de decisiones y la capacidad de los equipos a colaborar. Adems, provee un entorno de trabajo bsico para desarrollar, capturar, preservar, evaluar y aplicar el conocimiento. En [2], [16] se hace una descripcin de lo que es el modelo TRIZ-CBR describiendo cmo se complementan los dos enfoques en una interesante sinergia para proponer una herramienta que promueve y acelera el diseo. En esta sinergia TRIZ aporta la estructura inicial, la matriz de contradicciones, para proporcionar un soporte para indizar y almacenar casos y proponer una solucin si no se encuentran casos similares. Por otro lado, CBR provee tcnicas para acelerar la bsqueda y comparacin de problemas con otros resueltos previamente. En las propuestas se menciona el uso del algoritmo del vecino ms cercano (K-NN) para seleccionar los casos ms similares. Se describe una frmula matemtica para hacer el clculo de la similitud global. Tambin se muestra un ejemplo sobre el uso del modelo, se trata de probar las posibilidades de la sinergia TRIZ-CBR en la ingeniera qumica. Se menciona el uso de un sistema prototipo para implementar el modelo, el sistema que se describe es mediante una aplicacin de escritorio. No se especifican detalles sobre el lenguaje de programacin. En [27] presentan un reporte de una aplicacin Web para asistir a los estudiantes universitarios en el aprendizaje de TRIZ. El objetivo del proyecto es ayudar a aprender mediante juegos en lnea el conocimiento bsico sobre la teora. Se reporta un artculo [28] resultado de una investigacin emprica que tena como objetivo estudiar la interaccin entre un sistema CBR y usuarios sin en el conocimiento de CBR. A esa interaccin ellos lo llamaron interaccin Nave y ocurre frecuentemente en sistemas CBR basados en la Web, y por consiguiente en sistemas tipo e-commerce.

25

Estado de la prctica

Reutilizar el conocimiento en el desarrollo de software es un principio para aumentar la productividad en el proceso. De acuerdo con [29] es posible lograrlo haciendo que la reutilizacin sea sistemtica. Esto significa que los procesos para recuperar, reusar, revisar y retener estn definidos. Al mismo tiempo se considera problemas organizacionales. En el artculo se compara los modelos de reutilizacin del conocimiento en el desarrollo de software con el ciclo del modelo CBR. Adems se sugiere extender el modelo de CBR para considerar explcitamente problemas organizacionales. La representacin de un caso es la premisa para la recuperacin, reutilizacin, revisin y almacenamiento. De acuerdo con [30] la teora TRIZ es el enfoque basado en el conocimiento para la innovacin y una poderosa herramienta para resolver problemas. El patrn de localizacin generalizado es una herramienta til para realizar diseo automatizado. Se establece un nuevo caso para la representacin basado en ambos, el cual contiene principios de informacin para la innovacin en el diseo y la informacin geomtrica del ensamblado o partes. Se ilustra la tecnologa CBR para la automatizacin en la innovacin de diseos. Por lo tal, se desarroll un sistema prototipo de diseo asistido computadora (CAD) para verificar la utilidad de usar CBR en la innovacin de diseos basndose en TRIZ y el patrn de localizacin generalizado. En [37] se propone la integracin de la metodologa TRIZ dentro del proceso de CBR y se enfoca en explorar la posibilidad de usar los mtodos de TRIZ como un complemento para mejorar el funcionamiento de CBR en el diseo de productos. Hacen uso del problema de una lmpara de pared. Para resolver el problema, se construy un sistema interactivo CBR que provee a los diseadores de una herramienta computacional para recuperar eficientemente casos de diseo tiles, as como para asistir a los diseadores en la generacin sistemtica de ideas creativas. El sistema se implement con una aplicacin de escritorio haciendo uso del lenguaje de programacin Java con posibilidades de conexin a una base de datos en MySQL.

26

Estado de la prctica

2.2 Anlisis comparativoLa Tabla 2.1 es un anlisis comparativo de los artculos consultados para establecer el estado de la prctica.Tabla 2.1 Anlisis comparativo del estado de la prctica

Autor H. Duin, J.Jaskov, A. Hesmer, and K. Thoben [20]

Propsito Proveer el soporte para las etapas tempranas en el proceso de innovacin dentro de entornos de trabajo colaborativo

Tecnologa No especfica

Etapa Concluido

N. Drr, E. Behunken and Dr. T. Muller [21] C. Robles, S. Negny and JM Le Lann [16] W. Lap and K. Ming [27] C. Berruquier, E. Blanzieri and A. Ebranati [28] C. Tautz and K. Althoff [29] C. Gao, K. Huang, H. Chen [30]

Ilustrar un ejemplo de herramienta CAI para administrar el conocimiento Describir la sinergia en el modelo TRIZ CBR

Plataforma Web

Concluido

No especfica

Concluido

Facilitar el aprendizaje de TRIZ

Plataforma Web

Concluido

Estudiar la interaccin entre un sistema CBR y usuarios sin en el conocimiento de CBR La reutilizacin del conocimiento en el desarrollo de software Ilustrar la tecnologa CBR para la automatizacin en la innovacin de diseos.

No especfica

Concluido

No especfica

Concluido

No especfica

Concluido

Y. Lee, Y. Deng [37]

Integracin de la metodologa TRIZ dentro del proceso de CBR

Java, MySQL

Concluido

27

Estado de la prctica

2.2.1 Conclusiones del estado de la prctica De acuerdo a los artculos revisados se concluye que existe un esfuerzo por parte de investigadores y acadmicos con el objetivo de tratar de ofrecer herramientas que faciliten la sistematizacin de la innovacin en las organizaciones. Sin embargo, mientras se realizaba la investigacin se constat que son pocas las herramientas tipo CAI que funcionan sobre la Web. Ms an, no se encontr alguna que tenga las caractersticas que se proponen en la presente tesis.

2.3 Propuesta de solucinEl contexto de la presente propuesta de solucin implica los conceptos de: innovacin asistida por computadora (CAI) y aplicacin Web colaborativa. Como parte de las actividades para el desarrollo de esta tesis, se realiz un anlisis de las diferentes tecnologas de informacin factibles de ser empleadas para el logro de los objetivos. Para fines prcticos, el anlisis se llev a cabo en los siguientes rubros: lenguajes de programacin, marcos de trabajo para aplicaciones Web, gestores de base de datos, ORM (Mapeo Objeto-Relacional), servidores y/o contenedores de aplicacin. 2.3.1 Lenguaje de programacin El lenguaje de programacin propuesto es Java, el cual presenta las siguientes caractersticas tcnicas: es de propsito general, concurrente, basado en clases y orientado a objetos. Los programadores escriben un programa una vez y lo ejecutan en cualquier computadora que tenga instalada la Mquina Virtual de Java (JVM) [31]. Se requiere un kit de desarrollo (JDK) la versin propuesta para el desarrollo es: JDK 6 Update 17. Sistema operativo: Multiplataforma. 2.3.2 Marcos de trabajo para aplicaciones Web Spring Es un marco de trabajo flexible para aplicaciones Web basadas en el patrn de diseo Modelo Vista Controlador (MVC) para el desarrollo de aplicaciones en Java/JavaEE que presenta las siguientes caractersticas: un contenedor ligero capaz 28

Estado de la prctica

de ensamblar un sistema a partir de un conjunto de componentes desacoplados llamados POJOs (Plain Old Java Object) de una forma transparente y consistente. Ofrece una capa de abstraccin comn para la administracin de transacciones, as como, una capa de abstraccin JDBC. Permite la integracin con Toplink, Hibernate, JDO, iBATIS. Ofrece funcionalidad de programacin orientada a aspectos (POA) [32].

ZK Es un marco de trabajo para el desarrollo de aplicaciones tipo AJAX y para dispositivos mviles, diseado para maximizar operaciones empresariales y minimizar el costo de desarrollo por su innovadora arquitectura Direct RIA. Caractersticas: experiencia rica del usuario usando componentes AJAX con caractersticas verstiles de Aplicaciones Ricas para Internet (RIA). Basado en estndares como XUL y HTML, tambin es compatible con JSP, JSF, Portlet y tecnologas Java EE. Direct Push, ZK provee de una tecnologa robusta e intuitiva que permite actualizaciones espontaneas enviadas del servidor al Web browser y los dispositivos mviles. Permite una alta escalabilidad y es compatible con el clustering y balanceo de carga disponibles en los servidores modernos de aplicacin. Lenguaje de programacin Java [33]. 2.3.3 Gestor de base de datos MySQL es un sistema de gestin de base de datos relacional, multihilo y multiusuario. Mantiene un esquema de licenciamiento dual, es decir, ofrece una distribucin bajo la licencia GNU GPL, pero en caso de que se utilice para productos privados se compra una licencia especfica que permita su uso comercial. Al contrario de proyectos como Apache, donde el software se desarrolla por una comunidad pblica y el derecho de autor del cdigo est en poder del autor individual, MySQL es propietario y est patrocinado por una empresa privada, que posee los derechos de autor de la mayor parte del cdigo. Dentro de las caractersticas que lo distinguen de otros SGBD estn: los mltiples motores de almacenamiento (MyISAM, Merge, InnoDB, BDB, Memory/heap, MySQL Cluster, Federated, Archive, CSV y Blackhole), permitiendo al usuario escoger la que sea ms adecuada para cada tabla de la base de datos; la agrupacin de

29

Estado de la prctica

transacciones, permite reunir mltiples transacciones de varias conexiones para incrementar el nmero de transacciones por segundo [34]. 2.3.4 Mapeo Objeto-relacional (ORM) El mapeo objeto relacional es una tcnica de programacin para convertir datos entre el sistema de tipos utilizado en un lenguaje de programacin orientado a objetos y el utilizado en una base de datos relacional, utilizando un motor de persistencia. Una herramienta ORM simula una base de datos orientada a objetos, sobre la base de datos relacional. Una herramienta que implementa un ORM es la especificacin Java Persistence API (JPA). Hibernate Annotations son un conjunto de anotaciones bsicas de Java que implementan el estndar JPA. Emplea anotaciones como reemplazo para los archivos XML que definen el mapeo objeto relacional en Hibernate [35]. 2.3.5 Servidor de aplicacin Apache Tomcat es una implementacin de software de cdigo abierto de las tecnologas Java Servlet y JavaServer Page. Las versiones 6.x tienen las siguientes caractersticas: implementa las especificaciones Servlet 2.5 y JSP 2.1, soporte para Unified Expression Language 2.1, diseado para funcionar en Java SE 5.0 reciente y soporte para Comet a travs de la interfaz CometProcessor. Versin estable 6.0.20. Sistema operativo: Windows y Linux [36]. 2.3.6 Criterios de eleccin Se presentan los criterios que sirvieron como base para la eleccin de las tecnologas propuestas:

Interoperabilidad: que permitan la interaccin con otros sistemas existentes o futuros Escalabilidad: para facilitar agregar nuevos mdulos y/o funcionalidades Robustez: para modificar cualquier parte de la aplicacin con el mnimo impacto en el resto del sistema. Facilidad de mantenimiento.

30

Estado de la prctica

El costo: aprovechar al mximo las tecnologas disponibles para desarrollar una aplicacin de bajo costo y de buena calidad.

2.3.7 Solucin propuesta Los siguientes puntos describen brevemente las razones que condujeron a la creacin de una propuesta de solucin: Se propone hacer el desarrollo de la arquitectura base integrando los marcos de trabajo: ZK, Hibernate Annotations y Spring. Se considera el uso de Spring ya que ofrece una estructura basada en el patrn de diseo MVC para organizar el proyecto, adems permite la integracin de diferentes tecnologas y marcos de trabajo. ZK provee de un gran conjunto de componentes grficos o controles, lo cual facilita el desarrollo de las interfaces grficas de usuario. El soporte de Server push es una de las caractersticas que se considera para que ZK forme parte de la propuesta de solucin. Otra caracterstica importante es el modelo de programacin en ZK, el cual es centrado en el servidor y facilita el desarrollo de aplicaciones ms seguras. Para el manejo de persistencia de la informacin se propone usar Hibernate Annotations ya que cumple con la especificacin EJB3.0 (JSR 220). Hibernate Annotations cuenta con bastante documentacin y libros disponibles en la Web, lo cual es muy importante para facilitar el uso y la implementacin de la herramienta. Para instalar la aplicacin se propone el uso de Apache Tomcat con servidor de aplicacin ya que es un contenedor de servlets robusto, y ligero.

31

Aplicacin de la metodologa

Captulo 3 Aplicacin de la metodologa3.1 IntroduccinEl presente captulo corresponde al desarrollo de la propuesta de solucin planteada previamente en el Captulo 2. Se describen los casos de uso ms representativos en el anlisis de los requerimientos del sistema, el modelo de dominio con las entidades identificadas, as como, la descripcin de la arquitectura propuesta, el diseo e implementacin del mdulo de CBR, por ltimo se muestran interfaces grficas de usuarios elaborados con el marco de trabajo ZK. En el proceso de desarrollo de la aplicacin se emplearon algunas prcticas propuestas en las metodologas giles como son: Modelado rpido de requerimientos generales con diagramas UML. Desarrollo de prototipos de interfaz. Integracin contina. Desarrollo guiado por pruebas. Participacin activa de usuarios expertos. Concepcin de la arquitectura.

3.2 Casos de usoPara representar los requerimientos se hace uso de la notacin de diagramas de casos de uso del Lenguaje Unificado de Modelado (UML) tomando ventaja de la versatilidad de este lenguaje. A continuacin se presentan los requerimientos identificados para el diseo de la Web colaborativa, el proceso de resolucin de contradicciones y mdulo de CBR.

32

Aplicacin de la metodologa

3.2.1 Casos de uso de la Web colaborativa.

En los casos de uso para la gestin de la Web colaborativa se consideran los requerimientos que facilitan las actividades de: gestin de proyectos para organizar y dar seguimiento a las acciones en un proyecto desde que se crea hasta que se finaliza, y las actividades que les permitan a los usuarios compartir un proyecto y colaborar en la edicin de un proyecto como usuario invitado. Los casos de uso mencionados se presentan en la Figura 3.1.

Figura 3.1 Diagrama de casos de uso de la Web colaborativa

Nombre: Autor: Fecha:

Recibir notificaciones Ren Lpez Flores 12/Mayo/2010

33

Aplicacin de la metodologa

Descripcin: Modela los requerimientos necesarios para recibir notificaciones relacionadas con la actividad del usuario en el sistema. Registra las siguientes actividades: creacin de un nuevo proyecto, edicin de un proyecto, invitacin a colaborar y colaboracin. Actores: Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Flujo normal: 1. El usuario ingresa a la pgina de inicio despus de autenticarse en el sistema. 2. El sistema recupera de base de datos las ltimas notificaciones asociadas con el usuario. 3. El sistema le presenta al usuario las notificaciones. Flujo alternativo 2A1: El usuario selecciona la opcin actualizar notificaciones. 1. El sistema recupera de base de datos las ltimas notificaciones asociadas al usuario. 2. El sistema presenta al usuario las notificaciones. Pos-condiciones El sistema actualiza el estado de las notificaciones presentadas.

Nombre: Autor: Fecha: Descripcin:

Administrar proyectos Ren Lpez Flores 12/Mayo/2010

Define los requisitos para las tareas relacionadas en la administracin de los proyectos como son: agregar nuevos proyectos y editar los proyectos existentes. Actores:

34

Aplicacin de la metodologa

Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Flujo normal: 1. El usuario selecciona la opcin de proyectos. 2. El sistema presenta la opcin agregar proyecto. 3. El sistema recupera de base de datos los proyectos que el usuario tiene creados. 4. El sistema presenta en forma de lista los proyectos con las opciones de editar e invitar para cada proyecto. 5. El usuario selecciona la opcin de agregar nuevo proyecto. 6. El sistema le presenta al usuario una pantalla para especificar el tipo de proyecto. 7. El usuario selecciona el tipo de proyecto y asigna un nombre. 8. El sistema crea el proyecto en base de datos. 9. El sistema presenta la pantalla para edicin del proyecto. Flujo alternativo 4A1: El usuario selecciona, de alguno de los proyectos listados, la opcin de editar. 1. El sistema recupera el proyecto de base de datos. 2. El sistema le presenta al usuario una pantalla con las opciones para editar el proyecto. Pos-condiciones Se crea el proyecto en base de datos.

Nombre: Autor: Fecha: Descripcin:

Editar proyecto Ren Lpez Flores 12/Mayo/2010

35

Aplicacin de la metodologa

En este caso de uso el usuario tiene acceso al proyecto en modo de edicin para: describir el problema, asignar y remover recursos, describir el resultado final ideal, identificar las contradicciones y describir la solucin encontrada. Actores: Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. El proyecto no est bloqueado por que otro usuario. Flujo normal: 1. El usuario edita alguna de las caractersticas del proyecto: Descripcin del problema, recursos, resultado final ideal, contradicciones y la solucin encontrada. 2. El usuario selecciona la opcin guardar. 3. El sistema comprueba la validez de los datos. 4. El sistema guarda en base de datos las caractersticas del sistema actualizadas. 5. El sistema cierra la pantalla de edicin de proyectos.

Flujo alternativo 2A1: El usuario cancela la edicin de proyectos. 1. El sistema cierra la pantalla de edicin de proyectos. Pos-condiciones Se actualiza en base de datos las caractersticas editadas del proyecto.

Nombre: Autor: Fecha: Descripcin:

Invitar colaboracin Ren Lpez Flores 12/Mayo/2010

Enviar invitaciones para que otros usuarios registrados en el sistema contribuyan

36

Aplicacin de la metodologa

con su colaboracin en la resolucin de un problema. Actores: Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Flujo normal: 1. El usuario selecciona a la opcin de proyectos 2. El sistema recupera de base de datos los proyectos que el usuario tiene creados. 3. El sistema presenta en forma de lista los proyectos con las opciones de editar e invitar para cada proyecto. 4. El usuario selecciona la opcin invitar correspondiente a un proyecto de la lista de proyectos. 5. El sistema presenta una ventana con dos opciones para hacer la invitacin: usando el nombre de usuario de un usuario registrado y usando el correo electrnico de un usuario no registrado. 6. El usuario selecciona la opcin de hacer la invitacin por nombre de usuario. 7. El usuario ingresa el nombre de usuario. 8. El sistema verifica que el nombre del usuario se encuentre registrado en base de datos. 9. El sistema enva la invitacin al usuario especificado. 10. El sistema cierra la ventana de invitaciones.

Flujo alternativo 6A1: El usuario selecciona la opcin de hacer la invitacin por correo electrnico. 1. El usuario ingresa el correo el electrnico. 2. El sistema verifica que sea un correo electrnico vlido. 3. El sistema manda una invitacin a la direccin de correo electrnico para

37

Aplicacin de la metodologa

que el usuario se registre en la aplicacin y le notifica que tienen una invitacin pendiente. 4. El sistema cierra la ventana de invitaciones. Pos-condiciones El usuario al que se le enva la invitacin se notifica que tiene una invitacin pendiente.

Nombre: Autor: Fecha: Descripcin:

Colaborar Ren Lpez Flores 12/Mayo/2010

El usuario acepta o rechaza las invitaciones pendientes para colaborar en proyectos creados por otros usuarios, adems de editar los proyectos en que colabora. Actores: Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Para colaborar en la edicin de un proyecto, el sistema bloquea el proyecto para otro usuario no lo edite. Flujo normal: 1. El usuario selecciona la opcin colaboracin. 2. El sistema recupera de base de datos los proyectos que tienen invitacin pendiente de aceptar. 3. El sistema recupera de base de datos los proyectos que el usuario est colaborando. 4. El sistema presenta en una lista los proyectos con invitacin pendiente y en los que colabora el usuario con las opciones de aceptar invitacin, rechazar invitacin y colaborar de acuerdo al estado de la invitacin. 5. El usuario selecciona la opcin colaborar.

38

Aplicacin de la metodologa

6. El sistema le presenta al usuario una ventana con las opciones para editar el proyecto seleccionado.

Flujo alternativo 2A1: El usuario selecciona la opcin aceptar/rechazar colaboracin. 1. El sistema actualiza el estado de la invitacin pendiente del proyecto seleccionado. Pos-condiciones Se actualiza el estado de las invitaciones de colaboracin pendientes. Se actualiza los datos del proyecto.3.2.2 Caso de Uso resolucin de contradicciones

Para la resolucin de contradicciones se utiliza como referencia el procedimiento establecido en el modelo TRIZ-CBR. La Figura 3.2 presenta el caso de uso que modela los requerimientos establecidos en el modelo TRIZ-CBR.

39

Aplicacin de la metodologa

Figura 3.2 Diagrama de Caso de uso Resolucin de contradicciones

Nombre: Autor: Fecha: Descripcin:

Situacin problemtica Ren Lpez Flores 14/Junio/2010

Permite describir caractersticas generales con relacin al proyecto que se edita. Actores: Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema.

40

Aplicacin de la metodologa

Se requiere que el usuario este editando un proyecto en la opcin de situacin problemtica. Flujo normal: 1. El usuario entra a la opcin de situacin problemtica. 2. El sistema recupera y presenta la informacin que se registr previamente. 3. El usuario selecciona el objetivo del proyecto, es decir el tipo de problema que se resuelve. 4. El usuario selecciona la fecha programada para terminar el proyecto. 5. El usuario actualiza detalles referentes a la situacin problemtica. 6. El usuario selecciona la opcin guardar cambios en el proyecto. 7. El sistema actualiza los datos referentes a la situacin problemtica. Flujo alternativo 6A1: El usuario selecciona la opcin cancelar. 1. El sistema cierra la edicin de la situacin problemtica descartando las modificaciones hechas al proyecto. Pos-condiciones Se actualiza los detalles referentes a la situacin problemtica.

Nombre: Autor: Fecha: Descripcin:

Identificar recursos Ren Lpez Flores 14/Junio/2010

Permite asociar o remover recursos identificados en el sistema que presenta la situacin problemtica. Actores: Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Se requiere que el usuario este editando un proyecto en la opcin de recursos.

41

Aplicacin de la metodologa

Se requiere tener categoras, sub-categoras y recursos registrados en el sistema. Flujo normal: 1. El usuario selecciona la opcin de recursos. 2. El sistema recupera de base de datos la lista de recursos. 3. El sistema presenta al usuario los recursos en una lista de rbol. 4. El usuario selecciona una categora de recursos. 5. El sistema presenta un formulario con los recursos asociados a la categora seleccionada. 6. El sistema presenta los recursos que el usuario identific previamente en el proyecto y el valor asociado. 7. El usuario identifica nuevos recursos o elimina recursos seleccionados. 8. El usuario selecciona la opcin de guardar los recursos. 9. El sistema actualiza los recursos seleccionados y los valores asociados en el proyecto que se est editando. Flujo alternativo 7A1: El usuario selecciona la opcin cancelar. 1. El sistema cierra la edicin de los recursos descartando las modificaciones hechas al proyecto. Pos-condiciones Se actualiza los recursos seleccionados y/o eliminados en el proyecto.

Nombre: Autor: Fecha: Descripcin:

Identificar restricciones Ren Lpez Flores 15/Junio/2010

Agrega o elimina restricciones identificadas por el usuario en el proyecto. Las restricciones se asocian con los parmetros de la matriz de contradicciones. Actores: Usuario, Sistema

42

Aplicacin de la metodologa

Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Se requiere que el usuario este editando un proyecto en la opcin de restricciones. Se requiere tener registrados en el sistema los parmetros de la matriz de contradicciones. Flujo normal: 1. El sistema presenta las categoras en las que se clasifican los parmetros de la matriz de contradicciones. 2. El sistema recupera de base de datos las restricciones identificadas previamente en el proyecto y las presenta al usuario. 3. El usuario selecciona una categora. 4. El sistema muestra los parmetros asociados a la categora. 5. El usuario agrega o elimina restricciones de la categora seleccionada. 6. El usuario selecciona la opcin de guardar restricciones. 7. El sistema actualiza las restricciones identificadas en el proyecto. Flujo alternativo 6A1: El usuario selecciona la opcin cancelar. 1. El sistema cierra la edicin de las restricciones descartando las modificaciones hechas al proyecto. Pos-condiciones Se actualiza las restricciones agregadas y/o eliminadas en el proyecto.

Nombre: Autor: Fecha: Descripcin:

Identificar contradiccin Ren Lpez Flores 15/Junio/2010

El objetivo de este caso de uso es servir para que el usuario seleccione la contradiccin identificada en el proyecto. Actores:

43

Aplicacin de la metodologa

Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Se requiere que el usuario este editando un proyecto en la opcin de contradiccin. Se requiere tener registrados en el sistema los parmetros de la matriz de contradicciones y los principios de solucin. Flujo normal: 1. El sistema presenta las categoras en las que se clasifican los parmetros de la matriz de contradicciones. 2. El usuario selecciona de una lista el parmetro que mejora y el parmetro que empeora para especificar la contradiccin en el proyecto. 3. El sistema muestra los principios de solucin asociados a la contradiccin. 4. El usuario selecciona la opcin de guardar cambios. 5. El sistema actualiza la contradiccin en el proyecto. Flujo alternativo 5A1: El usuario selecciona la opcin cancelar. 1. El sistema cierra la edicin de la contradiccin descartando las modificaciones hechas al proyecto. Pos-condiciones Se actualiza la contradiccin identificada en el proyecto.

Nombre: Autor: Fecha: Descripcin:

Mdulo de CBR Ren Lpez Flores 18/Junio/2010

El mdulo de CBR es un caso de uso que integra los requerimientos para la administracin de la base de conocimiento. Actores:

44

Aplicacin de la metodologa

Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Se requiere que el usuario este editando un proyecto en la opcin de base de conocimiento. Se requiere tener la contradiccin establecida. Se sugiere tener identificado al menos un recurso y una contradiccin. Se requiere que este establecido el objetivo del problema. Flujo normal: 1. Cuando el usuario accede a este caso de uso el sistema valida los datos obligatorios en el proyecto: objetivo del problema, recursos, restricciones y contradiccin. 2. El sistema presenta la opcin buscar en base de casos. 3. El usuario selecciona la opcin realizar bsqueda. 4. El sistema realiza la bsqueda en la base de casos. 5. El sistema recupera de la base de casos los que son similares con el caso que se compara y presenta en forma de lista los que tienen un porcentaje de similitud mayor al 50%. 6. El usuario selecciona el reporte de los casos mostrados que sean de su inters. 7. El sistema recupera el caso y genera un reporte del proyecto seleccionado por el usuario. Flujo alternativo 5A1: No existe en el sistema un caso que tenga una similitud de ms del 50% con el caso que se est comparando. 1. El sistema le presenta al usuario los principios de solucin asociados con la contradiccin identificada en el proyecto. Pos-condiciones

45

Aplicacin de la metodologa

Nombre: Autor: Fecha: Descripcin:

Plantear solucin Ren Lpez Flores 25/Junio/2010

Plantear solucin es el ltimo caso de uso en el proceso de resolucin de un problema planteado como una contradiccin. En este caso de uso se recupera informacin que se registr previamente en alguno de los otros casos de uso de la edicin del proyecto. Sirve para documentar, en lo posible, la solucin del proyecto. Actores: Usuario, Sistema Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Se requiere que el usuario este editando un proyecto en la opcin de plantear solucin. Se requiere tener la contradiccin establecida. Se sugiere tener identificado al menos un recurso y una contradiccin. Se requiere que este establecido el objetivo del problema. Flujo normal: 1. Cuando el usuario accede a este caso de uso el sistema valida los datos obligatorios en el proyecto: objetivo del problema, recursos, restricciones y contradiccin. 2. El sistema recupera informacin sobre la propuesta de solucin introducida previamente por el usuario, y la presenta. 3. El usuario actualiza algunas de las partes que componen el planteamiento de solucin: la solucin propuesta, la implementacin y detalles de la solucin. 4. El usuario confirma la solucin. 5. El sistema verifica que estn registrados los datos requeridos para hacer la confirmacin de la solucin.

46

Aplicacin de la metodologa

6. El proyecto cumple con los datos requeridos para confirmar la solucin. 7. El sistema crea un nuevo episodio de conocimiento en la base de casos con el proyecto que est en edicin. 8. El sistema cambia el estado del proyecto a Proyecto resuelto. 9. El sistema notifica a los usuarios que estn colaborando en el proyecto. Flujo alternativo 6A1: El proyecto no cumple con los datos requeridos para confirmar la solucin. 1. El sistema notifica al usuario de la informacin requerida para confirmar la solucin. Pos-condiciones Se crea un nuevo caso en la base de casos. Se actualiza el estado del proyecto en edicin.3.2.3 Caso de uso Mdulo de CBR

El caso de uso Mdulo de CBR modela las tareas especificadas en el ciclo del CBR. La Figura 3.3 presenta los requerimientos establecidos para realizar la bsqueda de un caso en la base de casos.

Figura 3.3 Diagrama de casos de uso de la bsqueda en el Mdulo de CBR

47

Aplicacin de la metodologa

Nombre: Autor: Fecha: Descripcin:

Realizar bsqueda Ren Lpez Flores 26/Junio/2010

Caso de uso para hacer la bsqueda y recuperacin de un caso en la base de casos del mdulo de CBR. Actores: Usuario, Sistema, Base de casos Precondiciones: Es necesario que el usuario se encuentre validado en el sistema. Se requiere que el usuario este editando un proyecto en la opcin de base de conocimiento. Se requiere tener la contradiccin establecida en el proyecto. Se sugiere tener identificado al menos un recurso y una contradiccin. Se requiere que este establecido el objetivo del problema. Flujo normal: 1. El usuario selecciona la opcin Realizar bsqueda. 2. El sistema forma el caso (Problema objetivo) que se va a comparar, para ello recuperar del proyecto en edicin los siguientes atributos indexados: objetivo del problema, recursos identificados, restricciones y la

contradiccin. 3. El sistema recuperan los casos almacenados en la Base de Casos. 4. El sistema hace la comparacin del caso a comparar contra los casos recuperados. 5. El sistema muestra los casos que presentan similitud de ms del 50%. Flujo alternativo . Pos-condiciones

48

Aplicacin de la metodologa

3.3 Modelado del dominioEn la Figura 3.4 se presenta un diagrama robusto del modelo de objetos del dominio, con las clases ms importantes identificadas en el desarrollo de la metodologa. En el diagrama tambin se presenta las relaciones que existen entre dichas entidades. Se aprecia que las entidades Proyecto y Perfil son las que ms relaciones tienen con el resto de las entidades.

Figura 3.4 Diagrama del modelo del dominio.

Una vez presentado el diagrama se hace una descripcin de las entidades en la Tabla 3.1.

49

Aplicacin de la metodologa

Tabla 3.1 Descripcin de entidades

Nombre entidad CasoCBR

Descripcin Es un episodio de conocimiento registrado en la base de casos del CBR, se forma a partir del proyecto despus de que se confirma la solucin.

Contradiccion

Representa

una

contradiccin

de

la

matriz

de

contradicciones en el problema. Invitacion Invitacin por parte de otros usuarios registrados en el sistema para colaborar en un proyecto para la resolucin de un problema. Notificacion Aviso que el usuario recibe sobre la actividad realizada en los proyectos que tiene agregados o en los que se encuentra colaborando. Perfil Entidad que tiene agregada los proyectos de los usuarios, administra las notificaciones y las invitaciones para colaborar. Pizarra Entidad en la que se registran las notificaciones recibidas por el usuario. Proyecto Agrupa las caractersticas de los proyectos como lo son: descripcin del problema, recursos y solucin. ProyectoContradiccion Tipo de proyecto que se resuelve aplicando la matriz de contradicciones de TRIZ Recurso Cualquier medio tangible o intangible que potencialmente utilizable para resolver un problema. Solucion Es el resultado del proyecto despus de aplicar las herramientas de matriz de contradicciones de TRIZ o la bsqueda orientada a recursos. Usuario Representa la cuenta de los usuarios para autenticarse en el sistema. Forma parte de la entidad perfil.

50

Aplicacin de la metodologa

El modelado del dominio del mdulo de CBR se describe en la Figura 3.5. En la figura se describen las entidades que forman la base de conocimiento del mdulo de CBR.

Figura 3.5 Diagrama del modelo de dominio del CBR

Para entender mejor el diagrama de la Figura 3.5 en la Tabla 3.2 se explican las entidades que intervienen en l.Tabla 3.2 Descripcin de entidades para el CBR

Nombre entidad ContradiccionCBR

Descripcin Representa la contradiccin como un atributo indexado en el caso.

CasoCBR

Es un episodio de conocimiento registrado en la Base de Casos del CBR, se forma a partir del proyecto despus de que se confirma la solucin. Los atributos que componen el caso son los atributos que se indexan.

Proyecto

Agrupa las caractersticas de los proyectos como lo son: descripcin del problema, recursos y solucin.

RestriccionCBR

Entidad que describe una restriccin como atributo indexado en el CBR. Se maneja como una lista con

51

Aplicacin de la metodologa

Nombre entidad

Descripcin los identificadore