Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porRosario Miranda Sánchez Modificado hace 10 años
1
Diseño e Implementación del Sistema Principios del diseño y criterios de calidad Arquitectura del Sistema CommonKADS Pasos para la creación de un modelo de diseño
2
Curso CommonKADSDiseño e implementación del Sistema2 Desde el análisis al diseño
3
Curso CommonKADSDiseño e implementación del Sistema3 Diseño del Sistema r Entrada: ä Modelo del conocimiento = requisitos de resolución de problemas ä Modelo de comunicación = requisitos de interacción ä Otros modelos = requisitos ‘no funcionales’ r Salida: ä Especificación de una arquitectura software ä Diseño de la aplicación con dicha arquitectura
4
Curso CommonKADSDiseño e implementación del Sistema4 Arquitectura del sistema r Descripción del software en términos de: ä Descomposición en sub-sistemas ä Elección del(los) regímene(s) de control ä Descomposición de los sub-sistemas en módulos software r Elemento central en el proceso de diseño r Arquitectura base para sistemas basados en CommonKADS
5
Curso CommonKADSDiseño e implementación del Sistema5 Diseño basado en el mantenimiento de la estructura del análisis “Preservar durante el diseño tanto el contenidos como la estructura del modelo de análisis” r Principio esencial en el diseño moderno r Se considera que el diseño sólo debe ‘añadir detalles específicos de la implementación a los resultados del análisis’ r La clave está en preservar la información r Relacionado directamente con los criterios de calidad
6
Curso CommonKADSDiseño e implementación del Sistema6 Criterios generales de calidad en el diseño r Minimización del acoplamiento r Maximización de la cohesión r Transparencia r Mantenibilidad
7
Curso CommonKADSDiseño e implementación del Sistema7 Criterios de calidad para el diseño de SBC r Reusabilidad de elementos del diseño /del código resultante r Mantenibilidad y adaptabilidad ä Desarrollos en un solo paso es poco realista, especialmente para sistemas intensivos en conocimiento r Posibilidad de generar explicaciones r Facilidad en la extracción y refinamiento del conocimiento ä El conocimiento evoluciona en el tiempo
8
Curso CommonKADSDiseño e implementación del Sistema8 Pasos en el diseño de sistemas
9
Curso CommonKADSDiseño e implementación del Sistema9 Paso 1: especificar la arquitectura global r Principio: separar las cuestiones de funcionalidad de la interfase r Arquitectura MVC: ä Desarrollado para el Smaltalk-80 ä Se distingue entre los objetos de la aplicación y su visualización ä Unidad de control central con un régimen dirigido por eventos
10
Curso CommonKADSDiseño e implementación del Sistema10 Arquitectura del Sistemas: Componentes principales
11
Curso CommonKADSDiseño e implementación del Sistema11 Subsistema: modelo de la aplicación r Contiene los datos y las funciones de la aplicación = objetos del modelo de conocimiento r Datos ä Bases de conocimiento ä Datos dinámicos manipulados durante el razonamiento (roles dinámicos) r Funciones ä Tareas, inferencias, funciones de transferencia
12
Curso CommonKADSDiseño e implementación del Sistema12 Subsistema: vistas r Visualizaciones de los datos de la aplicación y de sus funciones r Posibilidad de que existan múltiples visualizaciones r Visualización por agregación de múltiples objetos de la aplicación r Requiere de mecanismos de actualización /integridad de la arquitectura ä Tabla de mapeo ä Protocolo de mensajes para cambios en los estados de los objetos
13
Curso CommonKADSDiseño e implementación del Sistema13 Subsistema: controlador r Unidad central de ‘mando y control’ r Proporciona manipuladores para los eventos internos y externos r Posibilita la activación de funciones de la aplicación r Puede definir sus propias vistas de control r Puede tener un reloj y una agenda interna ä Comportamiento por ‘demonios’
14
Curso CommonKADSDiseño e implementación del Sistema14 Puntualizaciones sobre la arquitectura MVC r Desarrollo en un contexto orientado a objetos r Es de hecho una descomposición funcional de objetos r Su utilización no está necesariamente limitada a aproximaciones O-O ä Aunque el paradigma de paso de mensajes se ajusta bien con las características de esas arquitecturas
15
Curso CommonKADSDiseño e implementación del Sistema15 Descomposición del subsistema del modelo de la aplicación r Criterio ä Debe permitir un diseño que preserve la estructura del análisis ä Debe posibilitar la integración con otras aproximaciones r Opciones ä Descomposición funcional o por objetos r Elección: descomposición basada en objetos ä Se ajusta bien con el carácter declarativo de las especificaciones de los objetos en el modelo de conocimiento (tarea => objeto) ä Simplifica la traducción (mapeo) en la implementaciones O-O
16
Curso CommonKADSDiseño e implementación del Sistema16 Arquitectura del sistema: Subsistema del modelo de la aplicación
17
Curso CommonKADSDiseño e implementación del Sistema17 Paso 2: Identificar la plataforma de implementación r Los requisitos específicos del cliente suelen restringir esta elección = es necesario considerar esto desde el principio r Hoy día es más importante la elección del software que la del hardware ä Excepto en aplicaciones de control en tiempo real r Si la elección no está limitada, considerar retrasar la elección hasta la finalización del paso 3
18
Curso CommonKADSDiseño e implementación del Sistema18 Criterios de selección de la plataforma r Librería de visualización de clases de objetos ä Su desarrollo puede ser muy costoso r Formalismo de representación del conocimiento declarativo r Interfaces estándar a otro software ä Ej. ODBC, CORBA ä Suele ser un requisito r Facilidades de tipado en el lenguaje ä El tipado débil implica usualmente más trabajo en mapeo del modelo de análisis (ver paso 4a) r Control de las facilidades/protocolos
19
Curso CommonKADSDiseño e implementación del Sistema19 Entorno ejemplo: Prolog r Librería de visualización: dependiente del vendedor r Representación del conocimiento declarativa r Interfaces con BD: depende del vendedor r Tipado débil del lenguaje r No existen protocolos estándar para el control de eventos o paso de mensajes
20
Curso CommonKADSDiseño e implementación del Sistema20 Entornos ejemplo: Java r Librería de vistas r No tiene una representación del conocimiento declarativa r Posee interfases con BD r Facilidades de tipado similares a C++ r Facilidades de control: ä Ej. Multi-threading
21
Curso CommonKADSDiseño e implementación del Sistema21 Paso 3: especificar los componentes de la arquitectura r Especificar las interfases de los componentes r Diseñar las utilidades/facilidades generales de la arquitectura ä Mecanismo de actualización de las vistas
22
Curso CommonKADSDiseño e implementación del Sistema22 Facilidades del controlador r Activación/terminación de las funciones de la aplicación r Interrupciones de usuario para trazar o editar información de background r Aborto de funciones r Gestión de las funciones de transferencia
23
Curso CommonKADSDiseño e implementación del Sistema23 Facilidades del modelo de la Aplicación (1) r Tarea: ä Métodos de inicialización y ejecución r Método de la tarea: ä Elementos de control del lenguaje ä ‘Declaratividad’ del lenguaje de control r Inferencia: ä Ejecutar, ¿más soluciones?, ¿tiene solución? ä Enlace con los métodos de inferencia
24
Curso CommonKADSDiseño e implementación del Sistema24 Facilidades del modelo de la Aplicación (2) r Método de Inferencia ä ¿existe un catálogo de métodos? ä Posibilitar relaciones muchos a muchos entre las inferencias y los métodos r Funciones de transferencia ä Implementarlas mediante envío de mensajes r Roles dinámicos ä Tipos de datos permitidos: elemento, conjunto, lista ¿?¡ ä Operaciones de actualización y acceso: seleccionar, eliminar, añadir,...
25
Curso CommonKADSDiseño e implementación del Sistema25 Facilidades del modelo de la Aplicación (3) r Roles estáticos ä Funciones de acceso y de query r Modelos del Dominio ä Formato representacional ä Funciones de acceso y query ä Funciones de modificación y análisis r Construcciones del Dominio ä (Sólo revisarlas)
26
Curso CommonKADSDiseño e implementación del Sistema26 Facilidades de las vistas r Visualizaciones gráficas standard r Generación de formatos externos ä e.j. SQL query r Facilidades de actualización de vistas ä Tabla de mapeo ä Protocolos basados en mensajes
27
Curso CommonKADSDiseño e implementación del Sistema27 Interfases de usuario r Interfase de usuario final ä Considerar utilidades específicas como la generación de lenguaje natural. ä Utilizar visualizaciones características del Dominio r Interfase Experta ä Interfase de traza ä Interfase para editar o refinar las bases de conocimiento
28
Curso CommonKADSDiseño e implementación del Sistema28 Ejemplo de trazador
29
Curso CommonKADSDiseño e implementación del Sistema29 Paso 4: especificar la aplicación en la arquitectura Paso 4a: “mapear el análisis en la arquitectura” ä Es un proceso engorroso Paso 4b: “añadir detalles de diseño” ä Listar los detalles de diseño que necesiten añadirse para completar la operacionalización del modelo de análisis
30
Curso CommonKADSDiseño e implementación del Sistema30 Paso 4a: mapear la información del análisis en la arquitectura r Existen herramientas de mapeo en desarrollo ä ejemplo: VOID API ä Ver el web de CommonKADS r El alcance del mapeo va a depender de algunas decisiones de diseño
31
Curso CommonKADSDiseño e implementación del Sistema31 Diseño de la aplicación para el controlador r Entrada: modelo de comunicación r Mínimo: procedimiento de arranque r Otras funciones: ä Requerimientos de gestión de justificaciones ä Control del usuario sobre el proceso de razonamiento ä Interrupciones del razonamiento / estrategia de control ä Posibilitar escenarios “what-if”
32
Curso CommonKADSDiseño e implementación del Sistema32 Diseño del modelo de la aplicación Conjunto mínimo de actividades para el diseño de la aplicación: r Para cada método de tarea: ä Construir la estructura de control operacional r Para cada role dinámico: ä Elegir un tipo de datos r Para cada inferencia ä Identificar un mapeo ä Escribir un método de invocación para la inferencia
33
Curso CommonKADSDiseño e implementación del Sistema33 Diseño de la aplicación para las vistas r Si fuera necesario, seleccionar una vista para cada objeto de la aplicación r Consejo: utilizar vistas lo más parecidas a los formatos utilizados en el dominio para la interfase de usuario ä Demasiado a menudo los diseñadores imponen a los usuarios sus preferencias ä Cada dominio tiene sus propias tradiciones a la hora de representar la información (y normalmente por buenos motivos)
34
Curso CommonKADSDiseño e implementación del Sistema34 Prototipado: subsistema de razonamiento r ¿Cuándo se necesita? ä Para elementos de conocimiento novedosos o sin precedentes ä Cuando se detecten ‘vacíos’ en el conocimiento del dominio ä En general: para verificar y validar el modelo de conocimiento –verificación: “is the system right” –validación: “is it the right system” r La plataforma de implementación debe ser capaz de facilitar este proceso ä La construcción del prototipo debe ser cuestión de días
35
Curso CommonKADSDiseño e implementación del Sistema35 Elementos Clave r Se considera al diseño como un proceso de refinamiento en el que se mantiene la estructura del análisis r Cuatro pasos para el proceso de diseño r Se puede recibir apoyo de: ä Arquitectura CommonKADS ä Herramientas de transformación de los modelos de conocimiento y comunicación ä Plataformas específicas con paquetes CommonKADS r “diseño racional: cómo y porqué imitarlo” (Parnas & Clements)
36
Curso CommonKADSDiseño e implementación del Sistema36 Prototype: mock-up agent interface r Test mock-up interface without full application functionality r When needed: ä complex external interaction (e.g.; HOMEBOTS) ä complex view formats ä complex view aggregations
37
Curso CommonKADSDiseño e implementación del Sistema37 Sistemas de conocimiento distribuidos r Servicios de Razonamiento ä El modelo de la aplicación actúa como un servicio ä Sin interfase de usuario r Servidor de bases de conocimiento /ontologías r Servicio de métodos ä Sistemas distribuidos implementados mediante un conjunto de métodos r Combinaciones
38
Curso CommonKADSDiseño e implementación del Sistema38 Sample implementations r Housing application r Source code at web-site r “Academic” implementation ä public-domain Prolog r “Business” implementation ä Aion8 r Experiences show that prototypes of “running knowledge models” can be built within days
39
Curso CommonKADSDiseño e implementación del Sistema39 Architecture Prolog system
40
Curso CommonKADSDiseño e implementación del Sistema40 Trace Prolog system (1)
41
Curso CommonKADSDiseño e implementación del Sistema41 Trace Prolog system (2)
42
Curso CommonKADSDiseño e implementación del Sistema42 Trace Prolog system (3)
43
Curso CommonKADSDiseño e implementación del Sistema43 Trace Prolog system (4)
44
Curso CommonKADSDiseño e implementación del Sistema44 Aion8 system for “housing” r Realized as O-O “framework” ä roles, interfaces => multiple inheritance ä Hollywood principle r Includes task-template library facility r Default implementation of inferences
45
Curso CommonKADSDiseño e implementación del Sistema45 Aion8 system architecture
46
Curso CommonKADSDiseño e implementación del Sistema46 Aion8 CommonKADS classes
47
Curso CommonKADSDiseño e implementación del Sistema47 Aion8 assessment library
48
Curso CommonKADSDiseño e implementación del Sistema48 Trace Aion8 system (1)
49
Curso CommonKADSDiseño e implementación del Sistema49 Trace Aion8 system (2)
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.