Title: Ciclos de Vida de los Sistemas Expertos
1Ciclos de Vida de los Sistemas Expertos
- Inteligencia Artificial
- Profesor Gonzalo Villarreal Farah
2Consideraciones Previas
- Se basan principalmente en procesos heurÃsticos
antes que algorÃtmicos - Si bien los software convencionales, involucra la
representación de procedimientos algorÃtmicos
bien defibnidos y conocidos - Los SE involucran representación de conocimiento
heurÃstico (amplio, impreciso, mal definido al
alcance de pocos expertos) - Se debe utilizar técnicas de transferencia
denominada Adquisición del Conocimiento - La naturaleza y cantidad de conocimiento para
resolver sistemas convencionales puede ser bien
estimada, no asà en los SE
3Dilema del Cambio
- Durante el desarrollo, puede suceder que se
descubre que la estructura de representación del
conocimiento, la herramienta u otros aspectos de
diseño del sistema resultan inadecuados. - Sucede por falta de comprensión inicial de las
complejidades del dominio del problema o por
haber subestimado su magnitud. - Dilema continuar con la infraestructura
inadecuada, o volver a iniciar el desarrollo. - Cualquiera que sea la decisión, sin lugar a
dudas, se retardará la ejecución del proyecto. - Si el dilema del cambio aparece en las etapas
iniciales del proceso, puede ser beneficioso ya
que permitirÃa corregir los errores
identificados, antes de que se invierta demasiado
tiempo y recursos en el paradigma inicial.
4Desarrollo de prototipo
- Se desarrolla un prototipo funcional del sistema
final - Este permitirá realimentar en forma temprana
aspectos de profundidad y tipo de conocimiento,
de las necesidades de los usuarios, asà como
ayudará a verificar la validez de las decisiones
tomadas durante la etapa de diseño. Con esto, si
se presenta un dilema de cambio, su impacto será
mÃnimo debido a lo temprano de su ocurrencia.
5Ciclo de Vida de un Sistema Experto
6Desarrollo Incremental
- Al ser el prototipo del sistema evaluado, se
realiza su diseño final y se lo somete a un ciclo
continuo de modificaciones para que mejore sus
caracterÃsticas y su calidad. - La estrategia que se sigue, puede ser definida
como - Un proceso iterativo de extracción,
representación y confirmación del conocimiento en
un limitado subconjunto del dominio del problema
con el objetivo de construir en forma incremental
el SE en segmentos autocontenidos.
7Desarrollo Incremental
- Se centra en dos conceptos
- Dividir para reinar, donde un segmento de
conocimiento manejable pero completo, es
seleccionado y desarrollado. - Desarrollo iterativo, donde el concepto de
dividir para reinar es aplicado iterativamente
sobre los diferentes segmentos que conforman el
problema completo.
8Etapas en el ciclo de vida de un SE
- Análisis del problema
- Especificación requerida
- Diseño preliminar
- Prototipo inicial (rápido) y evaluación
- Diseño final
- Implementación
- Pruebas
- Ajuste de diseño
- Instalación, Implantación y Mantenimiento
9Análisis del Problema
- Evaluar el problema y los recursos disponibles
para determinar la aplicación de una solución
basada en conocimiento. - Desarrollar análisis costo-beneficio del SE
- Se puede requerir de una investigación de
mercadoo un examen profundo del propósito del
sistema pedido, para determinar la efectividad
del costo del sistema.
10Especificación de Requerimientos
- Formalizar y poner por escrito lo que fue
adquirido durante la fase de análisis. - Determinar los objetivos del proyecto, y
establece los medios para obtener dichos
objetivos. - La experiencia demuestra que sin tener
especificaciones no es posible diseñar un SE de
real utilidad. - El documento de especificaciones debe plantear
claramente y discutir los objetivos y las
caracterÃsticas del sistema, el entorno del
usuario, y las limitaciones.
11Diseño Preliminar
- Considera las decisiones de alto nivel necesarias
para preparar y desarrollar rápidamente el
prototipo inicial. - Determina la herramienta escogida para construir
el prototipo, y la selección de los expertos. - Puede ser necesaria una considerable recopilación
de conocimiento tanto de los expertos, como de
fuentes impresas/electrónicas, para poder tomar
decisiones sólidas.
12Prototipo inicial (Rápido) y evaluación
- Etapa clave debido a que todas las decisiones
tomadas en el diseño preliminar deben ser ya sea
confirmadas, rectificadas o desechadas, sobre la
base del conocimiento recopilado de los expertos
en el proceso hasta completar esta etapa. - El prototipo inicial debe verse como el sistema
completo, excepto que estará limitado en su
cobertura. - Debe incluirse una bien definida interfaz con el
usuario y un robusto subconjunto de conocimiento
de tal forma que los usuarios puedan juzgar su
aceptabilidad. - Lo anterior no significa que el prototipo debe
ser altamente robusto, simplemente debe reflejar
la forma que tendrÃa el sistema final que será
construido.
13...Prototipo inicial (Rápido) y evaluación
- Se recomienda que el prototipo inicial sea
desechado una vez que se haya completado su
evaluación. - El desarrollo del sistema final debe partir, en
lo posible desde el inicio. - La clave en la etapa del prototipo es que se debe
extraer tanto conocimiento y opiniones de
expertos y usuarios como sea posible para poder
validar satisfactoriamente las decisiones de
diseño. - Cualquier error cometido en las etapas anteriores
deberÃa ser detectado y corregido en esta etapa.
14Diseño Final
- Selección de las herramientas y de los recursos
necesarios para desarrollar el sistema a ser
entregado. - Selección del modelo para representar el
conocimiento. - Lo anterior inside en la herramienta que será
seleccionada. - Se recomienda realizar una descripción gráfica
de los diferentes módulos del sistema. - Para cada uno de estos módulos el diseño debe
incluir las especificaciones de las entradas
tÃpicas y las salidas o conclusiones esperadas. - Como es muy factible que una misma entrada se
use en más de un módulo, es primordial preparar
una descripción del subsistema de interfaces.
15Implementación
- Puede consumir la mayor parte del tiempo del
ciclo de vida de un SE, aun cuando exista un
excelente diseño. - La implementación comprende el proceso completo
de adquisición del conocimiento para todos los
módulos o subsistemas. - En esta etapa tiene lugar el desarrollo
incremental.
16Pruebas
- Se desea asegurar la calidad del SE,
especialmente a medida que el SE es más grande y
complejo, o es de aplicación crÃtica. - El Plan de Prueba debe incluir procesos de
verificación y validación. - En general, tres tipos de errores pueden
introducirse en un SE, y cada uno de ellos puede
ser detectado ya sea por la verificación o la
validación - Insatisfacción de las especificaciones dadas para
el sistema (Verificación).
17...Pruebas
- Errores semánticos y sintácticos introducidos
durante la implementación del sistema
(Verificación). - Representación incorrecta del dominio del
conocimiento, resultando en soluciones erróneas o
en inhabilidad de encontrar solución a un
problema (Validación).
18...PruebasVerificación
- La verificación puede ser definida como una ayuda
para que el sistema sea construido correctamente.
Consiste de dos procesos básicos - El chequeo de la concordancia del sistema con las
especificaciones dadas. - El chequeo de la consistencia y la solidez de la
base de conocimientos (errores semánticos y
sintácticos).
19...PruebasValidez
-  La validación se define como el proceso que nos
indica si hemos construido el sistema correcto
para las necesidades planteadas. Para ello se
debe incluir y discutir aspectos importantes
como - Que es lo que se está validando.
- La metodologÃa de validación.
- Los criterios de validación.
- Cómo y cuándo aplicar la validación.
20...Pruebas
- Â Sobre la base de los resultados de las pruebas
realizadas al sistema, el grupo responsable del
desarrollo y el usuario deberán determinar
finalmente si el sistema está listo para ser
aceptado. - Si el sistema esta listo el SE debe ser empacado
como un sistema funcional. - Además, deberá suscribir un documento de
aceptación preliminar y consignar cualquier
ajuste final que debe ser realizado, en caso de
existir alguno.
21Ajuste de diseño
- A medida que el trabajo avanza y los ingenieros
cognoscitivos o del conocimiento, tienen a la
vista los problemas detectados, deben realizar
los ajustes necesarios al inicio de cada
iteración. - Si estos ajustes cada vez son relativamente más
pequeños y no son retroactivos, se tiene una
buena medida de que se está progresando, de lo
contrario, puede representar un serio retardo al
proyecto y posiblemente requerir un cambio de
modelo.
22Instalación, Implementación y Mantenimiento
- En la etapa final del ciclo de vida de un SE se
traslada el sistema desarrollado, como un
producto operativo hacia el entorno de los
usuarios. - Se deben realizar varias actividades de
instalación, implementación y mantenimiento
similares a las de un sistema de software
convencional.
23Empacado del producto final
- Durante esta etapa, se debe completar todo el
trabajo que falte. Por ejemplo - Preparar los programas para instalación del SE.
- Completar la documentación del sistema,
especialmente el Manual del Usuario. - Identificar los cambios procedimentales que
pueden ser requisitos necesarios para que el SE
se incorpore fácilmente al flujo de trabajo de
las áreas operacionales de los usuarios. - Si es del caso, preparar la interfaces necesarias
para que el SE se comunique con otros sistemas de
la organización.
24Entrenamiento a los usuarios del producto final
- El plan de entrenamiento para los usuarios debe
incluir los siguientes aspectos - Presentación del producto final, exponiendo los
aspectos más importantes del sistema
desarrollado. - Entrega del Manual de Usuario.
- Explicación de los procedimientos
organizacionales requeridos. - Entrenamiento en el producto. En lo posible debe
realizarse con el sistema integrado dentro del
flujo de trabajo normal de la organización.
25Pruebas de aceptación de los usuarios finales
- Luego que los usuarios están debidamente
capacitados, se pueden realizar pruebas para
determinar si el sistema está operando
satisfactoriamente dentro de su ambiente normal
de trabajo. - Cualquier potencial problema que sea identificado
por el usuario, debe ser resuelto previo a la
aceptación final del sistema.
26Constancia de aceptación de los usuarios finales
- Una vez que los usuarios han completado su
entrenamiento y las pruebas realizadas los ha
convencido que el sistema está listo para
operación normal. - Se debe suscribir un documento de aceptación
final.
27Implementación y Mantenimiento
- Finalmente, el dueño del SE debe ejecutar las
acciones requeridas para que el sistema aceptado
entre en producción. - Asesoramiento y consultorÃa especializada pueden
ser necesarios para planificar y ejecutar la
implementación y el mantenimiento del sistema. A
medida que se gane en experiencia y conocimiento
acerca del problema que ayuda a resolver el SE,
debe irse incorporando en el mismo, a través de
las actividades previstas en el plan de
mantenimiento.