Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Intro Case SA PDF
Intro Case SA PDF
Computer
Aided
Assisted
Automated
Software
Systems
Engineering
Las siguientes son algunas actividades tpicamente incluidas en el ciclo de vida del
software: planificacin del proyecto, gestin del proyecto, anlisis, diseo, codificacin,
pruebas, documentacin, mantenimiento, validacin y verificacin.
Los esfuerzos iniciales por resolver la Crisis del Software se orientaron en el mbito
de la codificacin, apareciendo las primeras tcnicas de programacin. A fines de los
60s y comienzos de los 70s surgieron gran cantidad de tcnicas para programar y
documentar programas. Un ejemplo representativo lo constituyen la Programacin
Estructurada y los Diagramas de Flujo. Sin embargo, las mejoras introducidas al
proceso de desarrollo no eran suficientes.
A fines de los 70s y comienzos de los 80s la atencin se centr en resolver problemas
de especificacin, diseo, mtricas y gestin dentro del desarrollo de software. Es decir,
el inters fue dirigido a otras actividades del desarrollo dentro del ciclo de vida del
software.
Actualmente la Ingeniera de Software como disciplina se ve plasmada en una gran
variedad de enfoques y metodologas para el desarrollo de software. Algunos enfoques
para el desarrollo de software son: Desarrollo en Cascada, Desarrollo con Prototipacin,
Desarrollo Incremental, Desarrollo en Espiral. Las metodologas se basan en algn
enfoque o combinacin de ellos.
Actualmente existe un gran nmero de metodologas tanto comerciales como en el
mbito acadmico y de investigacin. Ellas pueden ser agrupadas en dos grandes
corrientes: Metodologas Estructuradas y Metodologas Orientado a Objeto.
Metodologas Estructuradas
Aparecieron a fines de los 60s con la Programacin Estructurada, posteriormente a
mediados de los 70s extendidas con el Diseo Estructurado y a fines de los 70s con el
Anlisis Estructurado. Versiones ms recientes incorporan Diagramas Entidad-Relacin
y Diagramas de Transicin de Estados.
Ejemplos de metodologas estructuradas impulsadas por organismos gubernamentales lo
constituyen: MERISE (Francia), METRICA (Espaa), SSADM (Reino Unido).
Otras metodologas estructuradas en el mbito acadmico y comercial son: Gane &
Sarson, Ward & Mellor, Yourdon & DeMarco y Information Engineering. Esta ltima
propuesta por James Martin pone un nfasis adicional en el modelado de datos y la
incorporacin de los desarrollos informticos dentro del contexto organizacional
(planificacin, objetivos, etc.).
Metodologas Orientadas a Objeto
Su historia va unida a la evolucin de los lenguajes de programacin orientada a objeto,
los ms representativos: a fines de los 60s SIMULA, a fines de los 70s Smalltalk-80,
la primera versin de C++ por Bjarne Stroustrup en 1981 y actualmente Java. Slo a
fines de los 80s comenzaron a consolidarse algunas metodologas Orientadas a
Objetos.
Las primeras herramientas para apoyar el proceso de desarrollo de software fueron los
editores y procesadores de texto, usados para escribir programas y su documentacin.
As, tambin algunos programas de dibujo comenzaron a incorporar las notaciones
grficas de tcnicas para diseo de programas.
La consolidacin de metodologas de desarrollo integrando diferentes tcnicas impuls
la aparicin de paquetes de propsito ms amplio. Surgi la necesidad de un diccionario
de datos del sistema que almacene las definiciones usadas en las diferentes fases del
desarrollo (este diccionario es lo que comnmente se denomina repositorio). Esto
contribuy a implementar funciones de integracin y verificacin de consistencia entre
tcnicas (asociadas a distintas actividades en el desarrollo). La automatizacin de tareas
tambin ha sido un aspecto de inters. En programacin automtica esto se ha traducido
en: generadores de pantallas e informes, generadores de esquemas fsicos de bases de
datos y generadores de cdigo para prototipos o partes de programas.
Actualmente, en Ingeniera de Software todos los desafos y los correspondientes
enfoques de solucin estn normalmente concebidos y llevados a la prctica dentro del
contexto de un CASE.
1.3
Si consideramos que cada nivel debe implicar al anterior, se pone de manifiesto que la
sola utilizacin de una herramienta CASE no garantiza una mejora en el proceso de
desarrollo de software.
Por otra parte, las metodologas incluyen gran cantidad de tcnicas, y el esfuerzo de
documentacin (y actualizacin de dicha documentacin) es por lo general
considerable. Por lo tanto, es difcil aplicar una metodologa sin la ayuda de una
herramienta CASE. As, los beneficios de utilizacin de un CASE se entremezclan con
los beneficios de aplicar una metodologa con xito. El valor agregado indudable de
utilizar un CASE es el aumento en la productividad en las actividades soportadas por la
herramienta.
Mientras los costos del hardware han ido en continuo descenso, sucede todo lo contrario
con los costos del software. Las exigencias en complejidad y envergadura han
sobrepasado a las mejoras en cuanto a mtodos de desarrollo. El uso de metodologas de
desarrollo junto a herramientas CASE no es una panacea, pero sin lugar a dudas ofrece
la mejor alternativa actual para enfrentar proyectos de desarrollo de software de
complejidad y/o envergadura.
El nfasis en planificacin, anlisis y diseo promovido por una herramienta CASE
tiene un fuerte impacto y recompensa en la mejora de la calidad del producto obtenido y
en el aumento de productividad (disminucin de tiempos, costes y esfuerzos) en las
actividades de desarrollo y mantenimiento.
El beneficio adicional obtenido por la utilizacin de un CASE actual (si se compara con
la utilizacin de una metodologa sin el uso de un CASE) se representa en los siguientes
aspectos:
2.1
Aspectos Generales
La primera entrada que hay que proporcionar es el Audit Id, un identificador del usuario
para propsitos de auditora (control de cambios realizados sobre la enciclopedia). La
pantalla al inicio de sesin se presenta como lo muestra la Figura 2.2.1 en la cual se
indican las principales secciones. El Browser permite acceder a la enciclopedia, la
informacin registrada est agrupada en diagramas y definiciones. El Toolbox ofrece el
conjunto de smbolos que pueden ser dibujados en un diagrama y vara dependiendo del
tipo de diagrama que este activo. El Toolbar contiene comandos del Menu Bar que son
frecuentemente utilizados.
Menubar
Toolbar
Toolbox
Browser
rea de Dibujo
Figura 2.2.1: Secciones de una pantalla en SA
En la Figura 2.4.1 se seleccionan las tcnicas que se utilizarn. Cada tcnica tiene
asociado un conjunto de diagramas. Adems se establece el sistema gestor de bases de
datos y el lenguaje de programacin. Estas elecciones determinan ciertas propiedades
relacionadas con la generacin automtica del diseo fsico de la base de datos y de
plantillas de cdigo en el lenguaje de programacin. Con el botn Advanced se accede
a un cuadro de dilogo donde es posible modificar la lista detallada de diagramas y
propiedades disponibles.
2.5
3 Creando un Diagrama
Mediante la opcin del Menu Bar File | New Diagram o usando el correspondiente
botn en el Toolbar, se accede a la pantalla de dilogo Figura 3.1. En ella introducir el
nombre del diagrama a construir y seleccionar su tipo. Posteriormente se activar una
ventana de dibujo para el diagrama y aparecer la Toolbox asociada al tipo de diagrama.
Figura 3.1
Bsicamente, un diagrama est compuesto de smbolos (los disponibles en la Toolbox).
La forma de conectar smbolos puede ser modificada accediendo a Format | Symbol
Style | Line. Cada smbolo puede ser descrito por una definicin. Estas definiciones
constituyen parte de la enciclopedia de la herramienta y pueden ser compartidas por
diferentes diagramas. SA mantiene independencia entre las propiedades de los smbolos
dibujados y las definiciones asociadas. Es decir, al dibujar un smbolo no es obligatorio
proporcionarle propiedades (nombre y descripcin por ejemplo) ni una definicin (una
definicin de clase, si el smbolo representa a una clase). De la misma forma, el smbolo
podra tener propiedades y no tener una definicin asociada.
Figura 3.2
Para efectuar alguna operacin sobre uno o ms smbolos, estos se seleccionan
pinchando una vez (si son ms de uno se utiliza la tecla Shift). Posteriormente se debe
escoger la operacin a realizar en el Menu Bar o presionando el botn derecho del
ratn; en este caso aparece una lista de opciones similar a la que se muestra en la
Figura 3.2.
Al mismo tiempo pueden estar varios diagramas abiertos. Para cerrar un diagrama lo
ms directo es presionar el botn derecho del ratn y seleccionar la opcin Close. Para
eliminar el diagrama que est activo utilizar File | Delete Diagram. Si el diagrama que
se desea eliminar no est activo seleccionarlo en el Browser y con el botn derecho del
ratn elegir Delete.
Figura 4.1
5 Reusando definiciones
Una de las principales contribuciones de un repositorio integrado es facilitar la
verificacin de consistencia y reutilizacin de definiciones. SA permite seleccionar una
definicin asociada a un smbolo desde una lista de definiciones existentes y
arrastrarla sobre el diagrama activo, con lo cual automticamente se dibuja el smbolo
(manteniendo su definicin).
10
Figura 5.1
Una oportunidad de reutilizar definiciones se presenta cuando se est definiendo algun
elemento y debe introducirse un elemento subordinado ya definido, en este caso, existir
un botn llamado Choices ... el cual presenta un lista de definiciones del mismo tipo ya
registradas en el repositorio. Se puede seleccionar una de ellas y arrastrarla sobre el
cuadro de texto activo. En la Figura 5.1 se muestra un ejemplo de lo anterior. En la
definicin de los atributos de una clase, mediante el botn Choices... se presenta una
lista de los atributos ya definidos.
11
forma de rbol. La Figura 6.1 presenta un caso de diagramas relacionados y cmo ellos
son presentados en el Browser.
Figura 6.1
En el diagrama padre, un smbolo que tiene asociado un diagrama hijo tiene un
indicador de expansin en la parte superior. Esta situacin se ilustra en la Figura 6.2,
donde el smbolo P tiene en su parte superior el indicador de expansin por tener
asociado un diagrama hijo.
Cliente
Nmero Tarjeta
PIN
P
Cajero
Automtico
Listado Movimientos
Datos Saldo
Figura 6.2
Cuando un smbolo tiene un diagrama hijo asociado, las opciones Child Create o Child
Attach son reemplazadas por Child Detach y Child Open las cuales permiten deshacer
el vnculo o acceder al diagrama hijo. En el diagrama hijo, al presionar el botn derecho
sobre un rea sin smbolos, se ofrecen las opciones Parent y Top, con las cuales se
accede al diagrama padre o al diagrama en el tope de la jerarqua de diagramas.
12
13