Por favor, use este identificador para citar o enlazar este ítem: http://repositoriodigital.ipn.mx/handle/123456789/6874
Título : Sistema basado en conocimiento como herramienta de apoyo para la administración de proyectos de ingeniería de software - HIS
Autor : De Albornoz Bueno, Alvaro
Juárez Rodríguez, Felipe
Palabras clave : Software engineering
Expert systems (Computer science)
Fecha de publicación : 2003
Editorial : Instituto Politécnico Nacional. Centro de Investigación en Computación
Resumen : En este trabajo de tesis se presenta un Sistema Basado en Conocimiento como Herramienta de Ingeniería de Software HIS, que servirá de apoyo a la Administración de Proyectos de Ingeniería de Software, y que denominaremos a lo largo del trabajo de tesis con el nombre de SE-APIS, para diferenciarlo de una HIS integral. El SE-APIS permite realizar consultas y reportes acerca de metodologías, etapas y actividades de Ingeniería de Software. Asimismo se crean en forma automática las estructuras prototipo de Proyectos para Ingeniería de Software, que permiten al equipo de desarrollo de sistemas contar con una herramienta de Administración de Proyectos de Software y del ciclo de vida de los sistemas de información. El SE-APIS es un sistema experto basado en conocimientos (Knowledge Based Expert System), estructurado con Marcos (Minsky, 1975 [MIN75]) u objetos (Grady Booch, 1995, [POO98]) que tiene varios niveles de conocimiento relacionados por niveles de clases; iniciando desde el primer nivel con la superclase Procedimientos, que contiene una estructura de conocimientos para información general de encabezados de procedimientos de metodologías y de Administración de Proyectos de Ingeniería de Software. Esta superclase se divide a su vez en dos ramas de clases de conocimiento denominadas Metodologías y Proyectos. La clase Metodologías se encuentra ubicada en el segundo nivel contiendo una estructura para conocimiento general de cada tipo de Metodología, y ramificándose en un tercer nivel relacionado con la clase Fases, la cual almacena conocimientos de distintas etapas de Metodologías. En el cuarto nivel se encuentra relacionada la clase Actividades con conocimiento de los detalles que se realizan dentro de cada etapa de las Metodologías. De la misma forma, en la otra rama de segundo nivel se encuentra la clase Proyectos, en la que se tienen conocimientos sobre definiciones de Administración de Proyectos. En el tercer nivel de esta rama se tiene relacionada la clase WBS (Work Breakdown Structure). En el cuarto nivel se tiene relacionada la clase Operaciones de los proyectos que sirve para determinar la ruta crítica de los Proyectos de Software en conjunto con un Marco llamado REDES del mismo nivel de conocimiento, y en un quinto nivel de esta rama se tiene incorporado en el modelo una clase para Recursos con los requerimientos humanos, materiales y servicios para el desarrollo de los Proyectos (PMI Project Management Institute, 1996, [PMI96]). Existe también dentro del modelo de conocimientos del SE-APIS, en un quinto y sexto nivel las estructuras de las clases Modelos y Métodos que están relacionadas de forma dependiente con las ramas de Metodologias y Proyectos, y que servirán para almacenar conocimientos como: análisis de requerimientos, métodos de bases de datos relacionales (Korth Silberschatz [FBD93]), modelos contextuales y de flujo de datos (Edward Yourdon [EDY93]), que pueden formar parte de los estándares para el desarrollo de software dentro del Instituto Mexicano del Petróleo. Si bien, las estructuras de Marcos de los Modelos y Métodos se encuentran definidos en la base de conocimientos, las reglas de inferencia de estos, no están desarrollados dentro del trabajo de esta tesis. La información del dominio del SE-APIS almacenada en los Marcos de la Base de Conocimientos, está basada en conceptos de Ingeniería de Software [RPE02] y [RPE90] así como en la Metodología para desarrollo de aplicaciones CASE-CADM (Computer Aided Software Engineering – CASE Application Development Method [DES00]) de la compañía Oracle, a la cual se le han adicionado factores de ponderación, obtenidos estadísticamente para cada una de las etapas y actividades del proyecto de acuerdo con los métodos PMI para la Administración de Proyectos, y que se utilizan para calcular automáticamente el tiempo, recursos en horas y costos requeridos para cada una de las fases de los Proyectos de Ingeniería de Software. Asociadas a las estructuras de Marcos se desarrollaron reglas de inferencia para consultar y realizar reportes de la Base de Conocimientos, así como reglas para la generación automática de Proyectos de Ingeniería de Software y programación de su ruta crítica. Algunas de las reglas construidas, son para el cálculo de los esfuerzos humanos requeridos para el desarrollo de software utilizando el Método de la ecuación de Putnam [PUT78] y [PUT92]. Adicionalmente para la Interfaz con el Usuario se desarrollaron reglas de inferencia para la interpretación de una gramática en Lenguaje Natural. Finalmente para el correcto funcionamiento del SE-APIS se construyeron reglas de control para la activación de los mecanismos de inferencia. Las técnicas para la construcción del SE-APIS pertenecen al dominio de la Inteligencia Artificial y son entre otra técnicas: estructuras de ranura y relleno débiles Marcos (Minsky, 1975[MIN75]), estructuras de ranura y relleno fuertes Dependencias Conceptuales CD (Schank, 1975 [SHA75]) así como gramáticas de contexto libre mediante declarativas de Lenguaje Natural LN (Allen 1987 [ALL87] y Grosz 1986 [GRO86] ) las cuales son convertidas en CD de consulta y reportes de Metodologías, y en CD para la generación automática y programación de Proyectos de Ingeniería de Software. La metodología utilizada para el desarrollo del Modelo del SE-APIS recibe el nombre de KAMET (Knowledge Acquisition from Multiple Sources, Cairo, 1998 [CAI98]), con la cual fue posible guiar cada una de las etapas de desarrollo, iniciando desde la detección de la problemática, el diseño de la arquitectura del Modelo, hasta la construcción de un PROTOTIPO operable del SE-APIS y la definición de un Modelo Final para la construcción de un Sistema Experto Integral como Herramienta para la Ingeniería de Software (HIS). La programación del SE-APIS se realizó con el software para desarrollo de Sistemas Expertos CLIPS [CLI97] (C Language Integrated Production System) de la NASA/Lyndon B. Jhonson Space Center, aprovechando su facilidad de lenguaje de programación orientado a objetos (COOL) para diseñar marcos de conocimiento, su potencialidad para definir hechos y reglas de conocimiento para procesar declarativas en Lenguaje Natural, y su flexibilidad para construir CD que puedan ser fácilmente procesadas con las reglas de inferencia. El SE-APIS fue evaluado de forma cuantitativa y cualitativa con varias consultas y reportes por medio de oraciones en lenguaje natural limitado así como con la generación automática y cálculo de la ruta crítica de varios Proyectos de Ingeniería de Software. Incluso con el SE-APIS se realizó su propia evaluación para las etapas de análisis, diseño y construcción, obteniéndose resultados satisfactorios. Se deja el planteamiento para desarrollar en trabajos futuros de tesis, un Sistema Experto como Herramienta Integral para la Ingeniería de Software (HIS), que debe incluir facilidades de interconexión con otras herramientas de soluciones específicas CASE, software de métricas de excelencia de desarrollo, y su operación en ambiente Internet.
Descripción : Maestría en Ciencias de la Computación
URI : http://www.repositoriodigital.ipn.mx/handle/123456789/6874
Aparece en las colecciones: Maestría

Ficheros en este ítem:
Fichero Descripción Tamaño Formato  
Tesis 9265.pdf3.17 MBAdobe PDFVisualizar/Abrir


Los ítems de DSpace están protegidos por copyright, con todos los derechos reservados, a menos que se indique lo contrario.