1. UNIVERSIDAD AUTONOMA DE LOS ANDES
”UNIANDES”
NOMBRE: DIEGO SANCHEZ
NIVEL: CUARTO SITEMAS
FECHA: 19-07-2012
TUTOR: JHON TOASA
TEMA: ANALISTA DE SISTEMAS, ASÍ COMO DE LOS
SISTEMAS EXPERTOS Y HERRAMIENTAS CASE.
2. ORÍGEN
En sus inicios, la industria del software adoptó un enfoque
organizativo tayloriano, al igual que la mayoría de las industrias del momento. Este
enfoque propugna la especialización de funciones como método organizativo. Bajo
tal enfoque, el proceso de construcción de software se concibe como un conjunto
de tareas altamente especializadas donde está claramente definido el papel de cada
categoría profesional:
El analista tiene como cometido analizar un problema y describirlo con el
propósito de ser solucionado mediante un sistema informático.
El diseñador realiza, con base en el análisis, el diseño de la solución
El analista tiene que delimitar el análisis para ver lo que se quiere hacer
inicialmente y después darle al usuario nuevas opciones de uso.
3. EVOLUCIÓN
Hoy en día, estas funciones han quedado claramente obsoletas a pesar de que la
categoría profesional sigue existiendo como tal. Los avances de la ingeniería del
software en su corta vida han puesto de manifiesto que estas funciones no son
suficientes para lograr un mínimo éxito en el desarrollo de software.
Las funciones más relevantes que faltan son:
Dirección (de proyectos), para dirigir los recursos hacia el resultado deseado.
Educción de requisitos, para determinar el comportamiento que se espera del
software.
Garantía de calidad, para garantizar las expectativas del cliente.
Diseño, para que exista una mínima certeza de que el software es viable y eficaz con
la tecnología existente.
Gestión de configuración, para controlar el caos a medida que el software crece.
4. PERFIL DEL ANALISTA
Analizar Las cualidades que se esperan de un analista son esencialmente
la capacidad de abstracción y de análisis. Los conocimientos que requiere
son aquellos relacionados con las técnicas de análisis de sistemas de
información:
Conocimiento del paradigma tradicional de la ingeniería del
software y del tradicional ciclo de vida del software en cascada.
Modelado funcional: Diagrama de flujo de datos, diagrama de
estado, etc.
Modelado de datos y sus técnicas: Diagrama entidad-relación, modelo
relacional, etc.
Conocimiento de la tecnología: arquitectura de software, bases de
datos, etc.
5. SISTEMA EXPERTO
Los sistemas expertos son llamados así porque emulan el razonamiento de un
experto en un dominio concreto y en ocasiones son usados por éstos. Con los
sistemas expertos se busca una mejor calidad y rapidez en las respuestas dando
así lugar a una mejora de la productividad del experto.
Es una aplicación informática capaz de solucionar un conjunto de problemas que
exigen un gran conocimiento sobre un determinado tema. Un sistema experto es
un conjunto de programas que, sobre una base de conocimientos, posee
información de uno o más expertos en un área específica. Se puede entender
como una rama de la inteligencia artificial, donde el poder de resolución de un
problema en un programa de computadora viene del conocimiento de un
dominio específico. Estos sistemas imitan las actividades de un humano para
resolver problemas de distinta índole (no necesariamente tiene que ser de
inteligencia artificial).
6. ESTRUCTURA BÁSICA DE UN SE
Un Sistema Experto está conformado por:
Base de conocimientos (BC): Contiene conocimiento modelado extraído del
diálogo con un experto.
Base de hechos (Memoria de trabajo): contiene los hechos sobre un problema
que se ha descubierto durante el análisis.
Motor de inferencia: Modela el proceso de razonamiento humano.
Módulos de justificación: Explica el razonamiento utilizado por el sistema para
llegar a una determinada conclusión.
Interfaz de usuario: es la interacción entre el SE y el usuario, y se realiza
mediante el lenguaje natural.
7. TIPOS DE SE
Principalmente existen tres tipos de sistemas expertos:
Basados en reglas previamente establecidas.
Basados en casos o CBR (Case Based Reasoning).
Basados en redes bayesianas.
En cada uno de ellos, la solución a un problema planteado se obtiene:
Aplicando reglas heurísticas apoyadas generalmente en lógica difusa para su
evaluación y aplicación.
Aplicando el razonamiento basado en casos, donde la solución a un problema
similar planteado con anterioridad se adapta al nuevo problema.
Aplicando redes bayesianas, basadas en estadística y el teorema de Bayes.
8. HERRAMIENTAS CASE
Las herramientas CASE (Computer Aided Software Engineering, Ingeniería de
Software Asistida por Computadora) son diversas aplicaciones informáticas
destinadas a aumentar la productividad en el desarrollo de software reduciendo el
costo de las mismas en términos de tiempo y de dinero. Estas herramientas nos
pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del software en
tareas como el proceso de realizar un diseño del proyecto, cálculo de
costos, implementación de parte del código automáticamente con el diseño
dado, compilación automática, documentación o detección de errores entre
otras, que analizaba la relación existente entre los requisitos de un problema y las
necesidades que éstos generaban, el lenguaje en cuestión se denominaba PSL
(Problem Statement Language) y la aplicación que ayudaba a buscar las
necesidades de los diseñadores PSA (Problem Statement Analyzer).
9. OBJETIVOS
Mejorar la productividad en el desarrollo y mantenimiento del software.
Aumentar la calidad del software.
Reducir el tiempo y coste de desarrollo y mantenimiento de los sistemas
informáticos.
Mejorar la planificación de un proyecto
Aumentar la biblioteca de conocimiento informático de una empresa ayudando a
la búsqueda de soluciones para los requisitos.
Automatizar el desarrollo del software, la documentación, la generación de
código, las pruebas de errores y la gestión del proyecto.
Ayuda a la reutilización del software, portabilidad y estandarización de la
documentación
Gestión global en todas las fases de desarrollo de software con una misma
herramienta.
Facilitar el uso de las distintas metodologías propias de la ingeniería del software.
10. CLASIFICACIÓN
Aunque no es fácil y no existe una forma única de clasificarlas, las
herramientas CASE se pueden clasificar teniendo en cuenta los siguientes
parámetros:
1. Las plataformas que soportan.
2. Las fases del ciclo de vida del desarrollo de sistemas que cubren.
3. La arquitectura de las aplicaciones que producen.
Su funcionalidad.