Está en la página 1de 35

Herramientas Case

Objetivo

Conocer la evolucin que ha tenido el desarrollo de software Comprender la importancia del uso de las herramientas CASE

Conocer los requisitos que debe cumplir una herramienta de software y aprender a evaluar su calidad Conocer las caractersticas ms importantes que deben tener los CASE

Evolucin del Software


Reducir el costo de procesamiento y almacenamiento de datos. Reducir costos
Tres dcadas!

Mejorar la calidad del Software

Desarrollar Software
El software no se rompe

Pero no hay piezas de repuesto, por lo tanto, el mantenimiento incluye normalmente la correccin o modificacin del diseo

Se reemplazan las partes defectuosas durante el mantenimiento

Fallos del software


Proporcin de fallas

Deterioro temprano

Deterioro en el tiempo

Tiempo

Crisis del Software


La planificacin y estimacin

Qu hacer?

de costos es muy imprecisa La productividad no se corresponde con la demanda La calidad del software no llega a ser la adecuada

Solucin
SE NECESITA UNA DISCIPLINA PARA EL DESARROLLO DE SOFTWARE

La disciplina Ingeniera de software

Beneficios de la Ingeniera de Software


Aumenta la productividad Aumenta la eficiencia Aumenta la calidad del sistema obtenido

Debe resolver los problemas de la crisis del software

Los Problemas de los Desarrolladores


Costo: necesidad de mejorar la efectividad del
trabajo de los programadores y disminuir el costo

Sistematizacin: para proyectos largos donde


intervienen varios programadores es necesario poder mezclar el trabajo de todos ellos

Repetitividad: acomodarse a las modificaciones


que se pueden producir por el cambio

Claridad: para entender y leer los programas

Ejemplos
La realizacin de un proyecto sigue demorando

mucho tiempo y los analistas no utilizan los mtodos bien, por lo que no explotan todas sus posibilidades para mejorar la calidad por lo tanto los sistemas siguen siendo muy costosos (Costo)

Ejemplos
Varias personas intervienen en la programacin

y cada uno tiene su estilo propio por lo que el programa se hace muy difcil de entender y leer an cuando se fijen principios generales de codificacin (Claridad)

CASE - Computer-Aided Software Engineering


Ingeniera de software asistida por computadora
Ingeniera de sistemas asistida por computadora,

es ms precisa ya que el objetivo a largo plazo de los CASE es automatizar los aspectos claves de todo el ciclo de vida del proyecto desde el principio hasta el final

CASE
Ingeniera
CASE Asistida por computadora Los CASE fueron la ltima innovacin.

Asistida por computadora


La ayuda de la propia computadora en la

realizacin de estas tcnicas supone la aceptacin de sta como elemento de productividad para las tareas de anlisis, diseo e implementacin de los nuevos programas

Caractersticas de las herramientas Case


Permiten que los propios usuarios definan su metodologa, reglas y estndares
Soportan una metodologa

Soportan las metodologas ms dismiles

La informtica sale del estado artesanal

Ventajas Cuantificables
Ahorra un 30% de los costos de desarrollo y un 50% de los costos de mantenimiento
Incrementa la productividad de 8:1 durante el

desarrollo

Ventajas Cuantificables
Hace poco ms de 10 aos se dedicaba un 30% de los recursos a actividades de mantenimiento, hoy es de un 60 a 80% y la mitad de los profesionales de software de todo el mundo estn

ocupados manteniendo los sistemas


El esfuerzo necesario con el uso de CASE es el

20% del necesario para mantener sistemas de desarrollo con mtodos tradicionales.

Ventajas no Cuantificables
Involucra ms a los usuarios finales en el desarrollo del proceso Usan poderosos grficos para describir y documentar los sistemas y mejorar la interfaz

Ventajas no Cuantificables
Consistencia de los procedimientos
Generacin de cdigo ms consistente Captura de los datos de los sistemas, es la capacidad para capturar, almacenar, procesar y recuperar los detalles del sistema bajo elaboracin

Ventajas no Cuantificables
Posibilidad de realizar anlisis para comprobar la correccin, consistencia y completitud Automatizacin de tareas tediosas. No se requiere de mucho tiempo de entrenamiento

Desventajas de los CASE


Muy caros
Alcance limitado En general un uso obligado de diagramas

grficos para la especificacin de los sistemas y alguna organizacin puede preferir el uso de un lenguaje de especificacin
Son muy inflexibles

Herramientas de Metodologa
De la misma forma que un constructor necesita una pala para excavar los cimientos, antes que utilizar un martillo y una sierra para construir una casa, la ingeniera de software necesita de herramientas de metodologa para disear y analizar, antes de codificar.

Upper Case
Altos (UPPER CASE): Frecuentemente llamada

planeamiento asistido por computadora, poseen componentes para representar la planificacin colectiva
las metas de la Compaa y sus departamentos. la influencia de las operaciones en el logro de estas metas. la ubicacin de los recursos las funciones de c/u de los

departamentos Se representan grficamente aspectos importantes de la empresa.

El Upper CASE Permite Entender


Las metas de la compaa y sus departamentos, La influencia de las operaciones en las metas,

Ejemplos
WORKBENCH: Planificacin en tiempo de los sistemas

utilizando diagramas de Gantt Planificacin de recursos y personal Existen herramientas automatizadas de estimacin que permiten al planificador estimar costos y esfuerzos as como llevar anlisis del tipo "que pasa s" con importantes variables del proyecto tales como la fecha de entrega o la seleccin del personal

Middle CASE
Medios (Middle CASE): se analiza el problema con la

informacin que se tiene y se disean soluciones Abarca las etapas de anlisis y diseo del sistema El uso de los Middle CASE
Proporciona mtodos fciles para disear sistemas Es fcil determinar que quieren que se haga y cmo resolver

los problemas Facilita la unin entre el anlisis y el diseo Facilidad para incluir prototipos.

Lower CASE
A partir de un conjunto de especificaciones se genera un elevado por ciento del cdigo por lo que si se requiere modificar algo, no es necesario modificar el cdigo, solo hay que modificar las especificaciones y generar nuevamente este.

Con el uso de LOWER CASE se:


Genera del 60% al 80% del cdigo del programa. Facilidad para modificar sistemas generados por un LOWER

CASE. Facilidad para incluir prototipos.

Ventajas CASE de Anlisis


Mejora la calidad de la documentacin a travs de la estandarizacin e informes Mejor coordinacin entre los analistas a los que

est disponible la BD

Herramientas Automticas de Prueba


Auditores de cdigo:
Se trata de filtros de propsito especial usados para

comprobar la calidad del software en cuanto a que cumplan unos estndares mnimos de codificacin

Generadores de datos de prueba:


Ayudan al usuario a seleccionar datos de prueba que

hagan que el programa se comporte de una determinada forma.

Todo CASE debe Cumplir


Trasabilidad: en cualquier momento pueda saber de dnde se obtuvo algo, regresar atrs
Iteratividad: se pueda mejorar lo que se hizo

Carcter incremental: se pueda hacer la aplicacin por partes

Muchas gracias