TEMAS SELECT. DE ING. DE S.W 2
REESTRUCTURACION DE DATOS
se lleva a cabo para conseguir un diseño que produzca la misma función pero con mayor calidad que el programa original
HERRAMIENTAS CASE
Conjunto de métodos, utilidades y técnicas que facilitan la automatización del ciclo de vida del desarrollo de sistemas de información
VENTAJAS
Facilidad para la revisión de aplicaciones
Soporte para el desarrollo de prototipos de sistemas
Mejora en la habilidad para satisfacer los requerimientos del usuario
Soporte interactivo para el proceso de desarrollo
DESVENTAJAS
Confiabilidad en los métodos estructurados
Falta de niveles estándar para el soporte de la metodología
Conflictos en el uso de los diagramas
Diagramas no utilizados
Definición de objetivos
Función limitada
Alcance limitado
CICLO DE VIDA
describe el desarrollo de software, desde la fase inicial hasta la fase final
FASES DEL CICLO DE VIDA
Análisis de los requisitos y su viabilidad
Diseño general
Diseño en detalle
Programación
ING. DIRECTA PARA ARQUITEC. CLIENTE SERVIDOR
CARACTERISTICAS
La funcionalidad de la aplicación migra hacia todas las computadoras cliente.
Se implementan nuevas interfaces IGU en los centros clientes.
Las funciones de bases de datos se le asignan al servidor
La funcionalidad especializada (por ejemplo, los análisis de computación intensiva) pueden permanecer en el centro del servidor.
Los nuevos requisitos de comunicaciones, seguridad, archivado y control deberán establecerse tanto en el centro cliente, como en el centro servidor.
La reingeniería de aplicaciones C/S comienza con un análisis exhaustivo del entorno de negocios
Se pueden identificar tres capas de abstracción
OBJETIVOS DE UNA HERRAMIENTA CASE
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.
REESTRUCTURACION DE CODIGO
se lleva a cabo para conseguir un diseño que produzca la misma función pero con mayor calidad que el programa original
RECONSTRUCCION DE S.W DE DATOS
Modifica el código fuente y/o los datos en un intento de adecuarlo a futuros cambios
Beneficios de la reestructuración
Programas de mayor calidad
Reduce la frustración entre ingenieros del software que deban trabajar con el programa
Reduce el esfuerzo requerido para llevar a cabo las actividades de mantenimiento
Hace que el software se mas sencillo de comprobar y depurar
ING. INV. PARA COMPRENDER EL PROCESAMIENTO
La ingeniería inversa comienza con un intento de comprender y extraer abstracciones de procesamientos después de ser presentados por código fuente
DISTINTOS NIVELES DE ABSTRACCION
Sistema
Programa
Componentes
Configuración
Sentencia
NOTACION DE MODELADO DE COMPORTAMIENTO
para crear un modelo de comportamiento se puede obtener mediante la observación de la manifestación externa de la interfaz existente
ING. INV. DE INTERFACES DE USUARIO
Antes de que se pueda reconstruir una interfaz de usuario, deberá tener lugar una actividad de ingeniería inversa
CARACT. DE UN REPOSITORIO
Tipo de información
contiene alguna metodología concreta, datos, gráficos, procesos, informes, modelos o reglas
Tipo de controles
incorpora algún módulo de gestión de cambios, de mantenimiento de versiones, de acceso por clave
Tipo de actualización
los elementos de análisis o diseño se ven reflejados en el repositorio en tiempo real o mediante un proceso por lotes
Reutilización de módulos para otros diseños
repositorio es la clave para identificar, localizar y extraer código para su reutilización
ING. HACIA ADELANTE
INGENIERIA INVERSA
Extrae información de diseño a partir del código fuente
Es trabajar con un software para crear modelos adecuados de datos
La ingenieria hacia adelante para arquitectura orientada a objetos la utilizamos para modificar ciertas ventanas del SW cuando el usuario no esta conforme con los resultados
COMPONENTES DE UNA HERRAMIENTA CASE
Repositorio (diccionario) donde se almacenan los elementos definidos o creados por la herramienta
CARACTERISTICAS DE UNA HERRAMIENTA CASE
*Proporcionar topologías de aplicación flexibles.
*Proporcionar aplicaciones portátiles.
*Control de Versión.
*Crear código compilado en el servidor.