introducción a oasis 3.0 patricio letelier patricio letelier [email protected] letelier...

30
Introducción a Introducción a OASIS 3.0 OASIS 3.0 Patricio Letelier Patricio Letelier [email protected] www.dsic.upv.es/~letelier Departamento Sistemas Informáticos y Computación Departamento Sistemas Informáticos y Computación Universidad Politécnica de Valencia (España) Universidad Politécnica de Valencia (España)

Upload: maria-del-rosario-ponce-lozano

Post on 23-Jan-2016

238 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

Introducción a Introducción a OASIS 3.0OASIS 3.0

Patricio Letelier Patricio Letelier

[email protected]/~letelier

Departamento Sistemas Informáticos y ComputaciónDepartamento Sistemas Informáticos y ComputaciónUniversidad Politécnica de Valencia (España)Universidad Politécnica de Valencia (España)

Page 2: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

22 www.dsic.upv.es/~letelier/pub

ContenidoContenido

IntroducciónIntroducción OASIS: Modelado Conceptual Formal y OASIS: Modelado Conceptual Formal y

OOOO Relaciones entre ClasesRelaciones entre Clases ConclusionesConclusiones

Page 3: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

33 www.dsic.upv.es/~letelier/pub

IntroducciónIntroducciónModelado Conceptual OOModelado Conceptual OO

Un modelo conceptual de un sistema de información Un modelo conceptual de un sistema de información representa los requisitos del sistema, esencialmente representa los requisitos del sistema, esencialmente los requisitos funcionales los requisitos funcionales

El término conceptual se refiere al hecho que el El término conceptual se refiere al hecho que el modelo consiste en conceptos mediante los cuales el modelo consiste en conceptos mediante los cuales el usuario y el analista interpretan y observan el usuario y el analista interpretan y observan el espacio del problema espacio del problema

El modelado conceptual tiene sus raíces en el El modelado conceptual tiene sus raíces en el modelado semántico de datos (EER, Daplex, SDM, modelado semántico de datos (EER, Daplex, SDM, GSM) GSM)

Page 4: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

44 www.dsic.upv.es/~letelier/pub

IntroducciónIntroducción... Modelado Conceptual OO... Modelado Conceptual OO

El enfoque orientado a objeto integrado en el El enfoque orientado a objeto integrado en el modelado conceptual presenta las siguientes ventajas:modelado conceptual presenta las siguientes ventajas:

– La La encapsulación del conocimiento bajo el concepto de encapsulación del conocimiento bajo el concepto de objetoobjeto, incluyendo las perspectivas estática y dinámica , incluyendo las perspectivas estática y dinámica del sistema estudiado. del sistema estudiado.

– La La desaparición de barreras estrictas entre las distintas desaparición de barreras estrictas entre las distintas fases del ciclo de vidafases del ciclo de vida o proceso de producción de o proceso de producción de software. Esto favorece un proceso de construcción software. Esto favorece un proceso de construcción incremental a partir del modelo conceptual. incremental a partir del modelo conceptual.

– La La proximidad de sus nociones a los mecanismos proximidad de sus nociones a los mecanismos cognitivos humanoscognitivos humanos facilitando la captura y validación de facilitando la captura y validación de requisitos representados en el modelo conceptual.requisitos representados en el modelo conceptual.

Page 5: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

55 www.dsic.upv.es/~letelier/pub

IntroducciónIntroducciónMétodos Formales en Modelado Métodos Formales en Modelado

ConceptualConceptual

Los métodos formales permiten determinar y Los métodos formales permiten determinar y expresar con mayor rigor las propiedades del expresar con mayor rigor las propiedades del softwaresoftware

En la práctica, los requisitos son modelados usando En la práctica, los requisitos son modelados usando mayoritariamente modelos semiformales, incluidos mayoritariamente modelos semiformales, incluidos en los enfoques más populares en la actualidad, en los enfoques más populares en la actualidad, entre ellos los métodos no orientados a objeto entre ellos los métodos no orientados a objeto (Enfoque Estructurado, Jackson) y los orientados a (Enfoque Estructurado, Jackson) y los orientados a objeto (OMT, OOAD, OOSE, Shlaer-Mellor, ...).objeto (OMT, OOAD, OOSE, Shlaer-Mellor, ...).

Page 6: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

66 www.dsic.upv.es/~letelier/pub

IntroducciónIntroducción... Métodos Formales en Modelado ... Métodos Formales en Modelado

ConceptualConceptual UML (Unified Modeling Languaje) ha aglutinado las UML (Unified Modeling Languaje) ha aglutinado las

notaciones OO más popularesnotaciones OO más populares

Particularmente, en el modelado conceptual es Particularmente, en el modelado conceptual es interesante el uso de métodos formales. Los interesante el uso de métodos formales. Los principales aportes se centran en:principales aportes se centran en:

– Mayor rigor en la especificaciónMayor rigor en la especificación

– Mejores condiciones para realizar la verificación y Mejores condiciones para realizar la verificación y validación en forma más exhaustivavalidación en forma más exhaustiva

– Mejores condiciones para automatización de Mejores condiciones para automatización de procesos de generación automática de prototipos procesos de generación automática de prototipos y/o código finaly/o código final

Page 7: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

77 www.dsic.upv.es/~letelier/pub

OASIS, OASIS, OOpen and pen and AActive ctive SSpecification of pecification of IInformation nformation SSystems.ystems.– Pastor O. Pastor O. “Diseño y Desarrollo de un Entorno de “Diseño y Desarrollo de un Entorno de

Producción Automática de Software basado en el Modelo Producción Automática de Software basado en el Modelo OO”OO”. Tesis Doctoral, DSIC-UPV, 1992. Tesis Doctoral, DSIC-UPV, 1992

– Pastor O., Ramos I. Pastor O., Ramos I. “OASIS versión 2 (2.2) : A Class-“OASIS versión 2 (2.2) : A Class-Definition Language to Model Information Systems Using Definition Language to Model Information Systems Using an Object-Oriented Approach”an Object-Oriented Approach”. Servicio de Publicaciones . Servicio de Publicaciones Universidad Politécnica de Valencia, SPUPV-95.788, 1995Universidad Politécnica de Valencia, SPUPV-95.788, 1995

– Letelier P., Sánchez P., Ramos I., Pastor O. Letelier P., Sánchez P., Ramos I., Pastor O. “OASIS versión “OASIS versión 3.0: Un Enfoque Formal para el Modelado Conceptual 3.0: Un Enfoque Formal para el Modelado Conceptual Orientado a Objeto”Orientado a Objeto”. . Servicio de Publicaciones de la Servicio de Publicaciones de la Universidad Politécnica de Valencia, SPUPV-98.4011, Universidad Politécnica de Valencia, SPUPV-98.4011,

19981998

OASIS: Modelado Conceptual Formal y OASIS: Modelado Conceptual Formal y OOOO

Page 8: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

88 www.dsic.upv.es/~letelier/pub

Trabajos Relacionados:Trabajos Relacionados:

– OBLOGOBLOG, Universidad de Lisboa (Portugal), Universidad de Lisboa (Portugal)

http://www.oblog.pthttp://www.oblog.pt

– ALBERTALBERT, Universidad de Namur (Bélgica), Universidad de Namur (Bélgica)

http://www.info.fundp.ac.be/~phe/albert.htmlhttp://www.info.fundp.ac.be/~phe/albert.html

– TROLLTROLL, Universidad de Braunschweig (Alemania), Universidad de Braunschweig (Alemania)

http://www.cs.tu-bs.de/idb/html_d/home/ehrich/http://www.cs.tu-bs.de/idb/html_d/home/ehrich/

… … OASIS: Modelado Conceptual Formal y OASIS: Modelado Conceptual Formal y OOOO

Page 9: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

99 www.dsic.upv.es/~letelier/pub

OASIS: Una Estrategia para Modelado OASIS: Una Estrategia para Modelado de SIde SI

Herramientas Proceso

Notación

OASIS

Page 10: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1010 www.dsic.upv.es/~letelier/pub

Una especificación OASIS es una presentación de una Una especificación OASIS es una presentación de una teoría en el sistema formal usado, expresada como un teoría en el sistema formal usado, expresada como un conjunto estructurado de definiciones de clase. conjunto estructurado de definiciones de clase.

Las clases pueden ser simples o complejasLas clases pueden ser simples o complejas

Las clases complejas se definen estableciendo Las clases complejas se definen estableciendo relaciones entre clases. Éstas son agregación y relaciones entre clases. Éstas son agregación y especialización. especialización.

Una clase se compone de un nombre de clase, uno o Una clase se compone de un nombre de clase, uno o más mecanismos de identificación y un tipo o plantilla más mecanismos de identificación y un tipo o plantilla que comparten todas las instancias.que comparten todas las instancias.

OASIS como Lenguaje de ModeladoOASIS como Lenguaje de Modelado

Page 11: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1111 www.dsic.upv.es/~letelier/pub

La semántica de OASIS es dada en términos de una La semántica de OASIS es dada en términos de una estructura de Kripke (W,estructura de Kripke (W,,,). W es el conjunto de todos los ). W es el conjunto de todos los mundos posibles que un objeto puede alcanzar, mundos posibles que un objeto puede alcanzar, y y son son dos funciones que permiten establecer las transiciones dos funciones que permiten establecer las transiciones entre mundosentre mundos

W

w1

w2w3

w4

w5

w6

OASIS - Semántica AsociadaOASIS - Semántica Asociada

OASISOASIS

Page 12: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1212 www.dsic.upv.es/~letelier/pub

: F : F 2 2WW

: 2: 2AA (W (W W) W)

– asigna a una fórmula en Lógica de Primer Orden el asigna a una fórmula en Lógica de Primer Orden el conjunto de mundos en los cuales se satisfaceconjunto de mundos en los cuales se satisface

– La función La función asigna a cada paso una relación binaria asigna a cada paso una relación binaria entre mundosentre mundos

… … OASIS - Semántica AsociadaOASIS - Semántica Asociada

OASISOASIS

Page 13: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1313 www.dsic.upv.es/~letelier/pub

Plantilla de ClasePlantilla de Clase

Plantilla:Plantilla: <Atributos, Servicios, DL-Fórmulas><Atributos, Servicios, DL-Fórmulas>

Mecanismo de IdentificaciónMecanismo de Identificación

Servicios: eventos u operacionesServicios: eventos u operaciones

Interacción entre objetos Interacción entre objetos

Acción:Acción: <Cliente, Servidor, Servicio><Cliente, Servidor, Servicio>

Page 14: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1414 www.dsic.upv.es/~letelier/pub

Fórmulas en una variante de Lógica Dinámica Fórmulas en una variante de Lógica Dinámica [J.J Meyer [J.J Meyer 8888 que determinan el comportamiento de un objeto: que determinan el comportamiento de un objeto:

[[aa] ] falsefalse “La ocurrencia de “La ocurrencia de aa está prohibida está prohibida en los estados que satisfacen en los estados que satisfacen ''''

[¬[¬aa] ] falsefalse “La ocurrencia de “La ocurrencia de aa es obligatoria es obligatoria en los estados que satisfacen en los estados que satisfacen '’'’

[[aa] ] “En los estados que satisfacen “En los estados que satisfacen ,, inmediatamente después de la inmediatamente después de la

ocurrencia de la acción a, ocurrencia de la acción a, debe debe satisfacerse'' satisfacerse''

Comportamiento de un ObjetoComportamiento de un Objeto

Page 15: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1515 www.dsic.upv.es/~letelier/pub

Comportamiento Basado en EstadoComportamiento Basado en Estado

Evaluaciones

bloqueada=true [ingresar(cantidad)] saldo:=saldo + cantidadbloqueada=true [ingresar(cantidad)] saldo:=saldo + cantidad

Precondiciones

reintegro(cantidad) if {saldo>= cantidad}reintegro(cantidad) if {saldo>= cantidad}

Disparos

usuario(everyone)::aviso(“disco lleno”) when {espacio_libre=0}usuario(everyone)::aviso(“disco lleno”) when {espacio_libre=0}

[a]

¬ [a] false

[¬ a] false

Page 16: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1616 www.dsic.upv.es/~letelier/pub

Comportamiento basado en Comportamiento basado en secuencias de accionessecuencias de acciones

ProtocolosProtocolos

socio: socio:

SOCIO = alta.SOCIO1;SOCIO = alta.SOCIO1;

SOCIO1 = baja + prestar_libro.SOCIO2;SOCIO1 = baja + prestar_libro.SOCIO2;

SOCIO2 = prestar_libro.SOCIO2 +SOCIO2 = prestar_libro.SOCIO2 +

{num_libros>1} devolver_libro.SOCIO2 +{num_libros>1} devolver_libro.SOCIO2 +

{num_libros=1} devolver_libro.SOCIO1;{num_libros=1} devolver_libro.SOCIO1; Interpretación en DL: Interpretación en DL:

{ }{ } [a] + ¬ [a] false

Page 17: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1717 www.dsic.upv.es/~letelier/pub

OperacionesOperaciones

cancelar: cancelar:

CANCELAR = {credito>1}::devolver_moneda.CANCELAR +CANCELAR = {credito>1}::devolver_moneda.CANCELAR +

{credito=1}::devolver_moneda;{credito=1}::devolver_moneda;

Interpretación en DL: {Interpretación en DL: { } } [a] + [¬a] false

… … Comportamiento basado en Comportamiento basado en secuencias de accionessecuencias de acciones

Page 18: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1818 www.dsic.upv.es/~letelier/pub

AgregaciónAgregación

Multiplicidad de la relación Multiplicidad de la relación

Tipo de relación entre agregado y componenteTipo de relación entre agregado y componente Relacional / InclusivaRelacional / Inclusiva Estática / DinámicaEstática / Dinámica

Comunicación síncrona entre agregado y Comunicación síncrona entre agregado y componentescomponentes

Atributos derivados en base a atributos de Atributos derivados en base a atributos de componentescomponentes

Page 19: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

1919 www.dsic.upv.es/~letelier/pub

… … AgregaciónAgregación

EjemploEjemplo

cochecoche aggregation of

static inclusive chasischasis towards(1,1) from (1,1)

static inclusive motormotor towards(1,1) from(0,1)

dynamic inclusive ruedarueda towards(4,5) from(0,1)

Page 20: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2020 www.dsic.upv.es/~letelier/pub

class class cochecochederived attributesderived attributes

temperatura : int;temperatura : int;presion_media : real;presion_media : real;

derivationsderivationstemperatura := motor.temperatura;temperatura := motor.temperatura;presion_media := avg(rueda.presion) where presion_media := avg(rueda.presion) where

{{rueda.rueda.instalada=true};instalada=true};eventsevents

encender encender calling to memberscalling to members motor.arrancar; motor.arrancar;girar_izqda girar_izqda calling to memberscalling to members

rueda[“adelante_izqda”].girar_izqda,rueda[“adelante_izqda”].girar_izqda,rueda[“adelante_decha”].girar_izqdarueda[“adelante_decha”].girar_izqda

......

… … AgregaciónAgregación

Page 21: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2121 www.dsic.upv.es/~letelier/pub

¿Agregación y su interpretación en Lógica ¿Agregación y su interpretación en Lógica Dinámica?Dinámica?

Sincronización de servicios mediante Sincronización de servicios mediante sincronizaciones sincronizaciones calling to memberscalling to members o o sharing sharing with memberswith members

… … AgregaciónAgregación

Page 22: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2222 www.dsic.upv.es/~letelier/pub

Particiones Estáticas y Dinámicas, Grupos de RolParticiones Estáticas y Dinámicas, Grupos de Rol

Particiones Estáticas y DinámicasParticiones Estáticas y Dinámicas Establecen subclases disjuntas y completasEstablecen subclases disjuntas y completas El objeto es el mismo desde la raíz hasta las hojas, El objeto es el mismo desde la raíz hasta las hojas,

(tiene el mismo (tiene el mismo oid)oid). Debe existir Compatibilidad de . Debe existir Compatibilidad de ComportamientoComportamiento

EspecializaciónEspecialización

Page 23: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2323 www.dsic.upv.es/~letelier/pub

Particiones EstáticasParticiones Estáticas Particionamos el espacio de objetosParticionamos el espacio de objetos Un objeto pertenece siempre a la misma subclase en la Un objeto pertenece siempre a la misma subclase en la

particiónpartición

Particiones DinámicasParticiones Dinámicas Particionamos el espacio de estados de los objetosParticionamos el espacio de estados de los objetos Un objeto puede migrar entre distintas subclases en la Un objeto puede migrar entre distintas subclases en la

partición.partición. Migración definida mediante un proceso de migración Migración definida mediante un proceso de migración Migración en función de valores de atributosMigración en función de valores de atributos

… … EspecializaciónEspecialización

Page 24: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2424 www.dsic.upv.es/~letelier/pub

... Especialización... Especialización

RolesRoles Se relacionan dos objetos (distintos Se relacionan dos objetos (distintos oidsoids): el ): el playerplayer en la en la

superclase y el rol en la subclase. En este caso la superclase y el rol en la subclase. En este caso la compatibilidad puede ser de signaturacompatibilidad puede ser de signatura

Un objeto puede desempeñar varias roles Un objeto puede desempeñar varias roles simultáneamentesimultáneamente

Puede dejar de existir el rol y no destruirse el objeto Puede dejar de existir el rol y no destruirse el objeto playerplayer

Page 25: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2525 www.dsic.upv.es/~letelier/pub

Ejemplo: Particiones EstáticasEjemplo: Particiones Estáticas

camión, coche, otro*camión, coche, otro*static specializationstatic specialization of of vehículo;vehículo;

gasolina, diesel, otro**gasolina, diesel, otro**static specializationstatic specialization of of vehículo;vehículo;

vehículo

camióncocheotro*

gasolina

diesel

otro**static

static

Page 26: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2626 www.dsic.upv.es/~letelier/pub

Ejemplo: Particiones DinámicasEjemplo: Particiones Dinámicas

funcionando, estropeadofuncionando, estropeadodynamic specialization of vehículodynamic specialization of vehículo

migration relation ismigration relation is

COCHE = crear_coche.FUNCIONANDO;COCHE = crear_coche.FUNCIONANDO;

FUNCIONANDO = FUNCIONANDO = estropear.ESTROPEADO;estropear.ESTROPEADO;

ESTROPEADO = ESTROPEADO = reparar.FUNCIONANDO;reparar.FUNCIONANDO;

funcionando

estropeado

dynamicvehículo

camióncocheotro*

gasolina

diesel

otro**static

static

Page 27: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2727 www.dsic.upv.es/~letelier/pub

Ejemplo: Ejemplo: RolesRoles

estudiante estudiante towards(0,1)towards(0,1) matricular, matricular,empleado empleado towards(0,10)towards(0,10) contratar contratar

role ofrole of persona persona

persona

empleadoestudiante

role

contratarmatricular

Page 28: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2828 www.dsic.upv.es/~letelier/pub

Ejemplo: Herencia Múltiple, EspeciesEjemplo: Herencia Múltiple, Especies

vehículo

camióncocheotro*

gasolina

diesel

otro**static

staticfuncionando

estropeado

dynamic

A-6065-CK

Page 29: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

2929 www.dsic.upv.es/~letelier/pub

EspecializaciónEspecialización en Lógica Dinámica en Lógica Dinámica

¿Especialización y su interpretación en Lógica ¿Especialización y su interpretación en Lógica Dinámica?Dinámica?

Herencia de fórmulas dinámicasHerencia de fórmulas dinámicas

Ver detalles en:Ver detalles en:P. Sánchez, P. Letelier, I. Ramos. Animating formal P. Sánchez, P. Letelier, I. Ramos. Animating formal specifications with Inheritance in a DL-based specifications with Inheritance in a DL-based framework. Requirements Engineering Journal, framework. Requirements Engineering Journal, Springer-Verlag,  Vol 4 Núm. 4, páginas 198-209, Springer-Verlag,  Vol 4 Núm. 4, páginas 198-209, 1999. 1999.

Page 30: Introducción a OASIS 3.0 Patricio Letelier Patricio Letelier letelier@dsic.upv.es letelier Departamento Sistemas Informáticos y Computación

3030 www.dsic.upv.es/~letelier/pub

ConclusionesConclusiones

Uso de Uso de OASIS como modelo OASIS como modelo formal formal subyacentesubyacente

TrabajoTrabajos asociadoss asociados Captura de Captura de rrequisitosequisitos y modelado conceptual y modelado conceptual Validación de especificaciones mediante animaciónValidación de especificaciones mediante animación Evolución de esquemas conceptualesEvolución de esquemas conceptuales Generación automática de código en entornos de Generación automática de código en entornos de

imperativosimperativos Integración de los aspectos anteriores en un Integración de los aspectos anteriores en un

entorno CASE que abarque todo el ciclo de vidaentorno CASE que abarque todo el ciclo de vida ......