Introducci - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

Introducci

Description:

Departamento Sistemas Inform ticos y Computaci n. Universidad Polit cnica de Valencia (Espa a) ... derivations. temperatura := motor.temperatura; ... – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 31
Provided by: Pato74
Category:

less

Transcript and Presenter's Notes

Title: Introducci


1
Introducción a OASIS 3.0
  • Patricio Letelier
  • letelier_at_dsic.upv.es
  • www.dsic.upv.es/letelier
  • Departamento Sistemas Informáticos y
    ComputaciónUniversidad Politécnica de Valencia
    (España)

2
Contenido
  • Introducción
  • OASIS Modelado Conceptual Formal y OO
  • Relaciones entre Clases
  • Conclusiones

3
IntroducciónModelado Conceptual OO
  • Un modelo conceptual de un sistema de información
    representa los requisitos del sistema,
    esencialmente los requisitos funcionales
  • El término conceptual se refiere al hecho que el
    modelo consiste en conceptos mediante los cuales
    el usuario y el analista interpretan y observan
    el espacio del problema
  • El modelado conceptual tiene sus raíces en el
    modelado semántico de datos (EER, Daplex, SDM,
    GSM)

4
Introducción... Modelado Conceptual OO
  • El enfoque orientado a objeto integrado en el
    modelado conceptual presenta las siguientes
    ventajas
  • La encapsulación del conocimiento bajo el
    concepto de objeto, incluyendo las perspectivas
    estática y dinámica del sistema estudiado.
  • La desaparición de barreras estrictas entre las
    distintas fases del ciclo de vida o proceso de
    producción de software. Esto favorece un proceso
    de construcción incremental a partir del modelo
    conceptual.
  • La proximidad de sus nociones a los mecanismos
    cognitivos humanos facilitando la captura y
    validación de requisitos representados en el
    modelo conceptual.

5
IntroducciónMétodos Formales en Modelado
Conceptual
  • Los métodos formales permiten determinar y
    expresar con mayor rigor las propiedades del
    software
  • En la práctica, los requisitos son modelados
    usando mayoritariamente modelos semiformales,
    incluidos en los enfoques más populares en la
    actualidad, entre ellos los métodos no orientados
    a objeto (Enfoque Estructurado, Jackson) y los
    orientados a objeto (OMT, OOAD, OOSE,
    Shlaer-Mellor, ...).

6
Introducción... Métodos Formales en Modelado
Conceptual
  • UML (Unified Modeling Languaje) ha aglutinado las
    notaciones OO más populares
  • Particularmente, en el modelado conceptual es
    interesante el uso de métodos formales. Los
    principales aportes se centran en
  • Mayor rigor en la especificación
  • Mejores condiciones para realizar la verificación
    y validación en forma más exhaustiva
  • Mejores condiciones para automatización de
    procesos de generación automática de prototipos
    y/o código final

7
OASIS Modelado Conceptual Formal y OO
  • OASIS, Open and Active Specification of
    Information Systems.
  • Pastor O. Diseño y Desarrollo de un Entorno de
    Producción Automática de Software basado en el
    Modelo OO. Tesis Doctoral, DSIC-UPV, 1992
  • Pastor O., Ramos I. OASIS versión 2 (2.2) A
    Class-Definition Language to Model Information
    Systems Using an Object-Oriented Approach.
    Servicio de Publicaciones Universidad Politécnica
    de Valencia, SPUPV-95.788, 1995
  • Letelier P., Sánchez P., Ramos I., Pastor O.
    OASIS versión 3.0 Un Enfoque Formal para el
    Modelado Conceptual Orientado a Objeto. Servicio
    de Publicaciones de la Universidad Politécnica de
    Valencia, SPUPV-98.4011, 1998

8
OASIS Modelado Conceptual Formal y OO
  • Trabajos Relacionados
  • OBLOG, Universidad de Lisboa (Portugal)
  • http//www.oblog.pt
  • ALBERT, Universidad de Namur (Bélgica)
  • http//www.info.fundp.ac.be/phe/albert.html
  • TROLL, Universidad de Braunschweig (Alemania)
  • http//www.cs.tu-bs.de/idb/html_d/home/ehrich/

9
OASIS Una Estrategia para Modelado de SI
OASIS
Notación
Proceso
Herramientas
10
OASIS como Lenguaje de Modelado
  • Una especificación OASIS es una presentación de
    una teoría en el sistema formal usado, expresada
    como un conjunto estructurado de definiciones de
    clase.
  • Las clases pueden ser simples o complejas
  • Las clases complejas se definen estableciendo
    relaciones entre clases. Éstas son agregación y
    especialización.
  • Una clase se compone de un nombre de clase, uno o
    más mecanismos de identificación y un tipo o
    plantilla que comparten todas las instancias.

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

12
OASIS
OASIS - Semántica Asociada
  • t F 2W
  • r 2A (W W)
  • t asigna a una fórmula en Lógica de Primer Orden
    el conjunto de mundos en los cuales se satisface
  • La función r asigna a cada paso una relación
    binaria entre mundos

13
Plantilla de Clase
  • Plantilla ltAtributos, Servicios, DL-Fórmulasgt
  • Mecanismo de Identificación
  • Servicios eventos u operaciones
  • Interacción entre objetos
  • Acción ltCliente, Servidor, Serviciogt

14
Comportamiento de un Objeto
  • Fórmulas en una variante de Lógica Dinámica J.J
    Meyer 88? que determinan el comportamiento de un
    objeto
  • y a false La ocurrencia de a está
    prohibida
  • en los estados que satisfacen y''
  • y a false La ocurrencia de a es
    obligatoria
  • en los estados que satisfacen y'
  • y a f En los estados que satisfacen y,
  • inmediatamente después de la
  • ocurrencia de la acción a, f debe
  • satisfacerse''

15
Comportamiento Basado en Estado
? a ?
  • Evaluaciones
  • bloqueadatrue ingresar(cantidad) saldosaldo
    cantidad
  • Precondiciones
  • reintegro(cantidad) if saldogt cantidad
  • Disparos
  • usuario(everyone)aviso(disco lleno) when
    espacio_libre0

? a false
? a false
16
Comportamiento basado en secuencias de acciones
  • Protocolos
  • socio
  • SOCIO alta.SOCIO1
  • SOCIO1 baja prestar_libro.SOCIO2
  • SOCIO2 prestar_libro.SOCIO2
  • num_librosgt1 devolver_libro.SOCIO2
  • num_libros1 devolver_libro.SOCIO1
  • Interpretación en DL


? a false
? a ?
17
Comportamiento basado en secuencias de acciones
  • Operaciones
  • cancelar
  • CANCELAR creditogt1devolver_moneda.CANCELA
    R
  • credito1devolver_moneda
  • Interpretación en DL

? a ?

? a false
18
Agregación
  • Multiplicidad de la relación
  • Tipo de relación entre agregado y componente
  • Relacional / Inclusiva
  • Estática / Dinámica
  • Comunicación síncrona entre agregado y
    componentes
  • Atributos derivados en base a atributos de
    componentes

19
Agregación
  • Ejemplo

coche aggregation of static inclusive chasis
towards(1,1) from (1,1) static inclusive motor
towards(1,1) from(0,1) dynamic inclusive rueda
towards(4,5) from(0,1)
20
Agregación
  • class coche
  • derived attributes
  • temperatura int
  • presion_media real
  • derivations
  • temperatura motor.temperatura
  • presion_media avg(rueda.presion) where
    rueda.instaladatrue
  • events
  • encender calling to members motor.arrancar
  • girar_izqda calling to members
  • ruedaadelante_izqda.girar_izqda,
  • ruedaadelante_decha.girar_izqda
  • ...

21
Agregación
  • Agregación y su interpretación en Lógica
    Dinámica?
  • ? Sincronización de servicios mediante
    sincronizaciones calling to members o sharing
    with members

22
Especialización
  • Particiones Estáticas y Dinámicas, Grupos de Rol
  • Particiones Estáticas y Dinámicas
  • Establecen subclases disjuntas y completas
  • El objeto es el mismo desde la raíz hasta las
    hojas, (tiene el mismo oid). Debe existir
    Compatibilidad de Comportamiento

23
Especialización
  • Particiones Estáticas
  • Particionamos el espacio de objetos
  • Un objeto pertenece siempre a la misma subclase
    en la partición
  • Particiones Dinámicas
  • Particionamos el espacio de estados de los
    objetos
  • Un objeto puede migrar entre distintas subclases
    en la partición.
  • Migración definida mediante un proceso de
    migración
  • Migración en función de valores de atributos

24
... Especialización
  • Roles
  • Se relacionan dos objetos (distintos oids) el
    player en la superclase y el rol en la subclase.
    En este caso la compatibilidad puede ser de
    signatura
  • Un objeto puede desempeñar varias roles
    simultáneamente
  • Puede dejar de existir el rol y no destruirse el
    objeto player

25
Ejemplo Particiones Estáticas
  • camión, coche, otro
  • static specialization of vehículo
  • gasolina, diesel, otro
  • static specialization of vehículo

26
Ejemplo Particiones Dinámicas
  • funcionando, estropeado
  • dynamic specialization of vehículo
  • migration relation is
  • COCHE crear_coche.FUNCIONANDO
  • FUNCIONANDO estropear.ESTROPEADO
  • ESTROPEADO reparar.FUNCIONANDO

gasolina
funcionando
static
dynamic
vehículo
diesel
estropeado
otro
static
camión
coche
otro
27
Ejemplo Roles
  • estudiante towards(0,1) matricular,
  • empleado towards(0,10) contratar
  • role of persona

28
Ejemplo Herencia Múltiple, Especies
gasolina
funcionando
static
dynamic
vehículo
diesel
estropeado
otro
static
camión
coche
otro
A-6065-CK
29
Especialización en Lógica Dinámica
  • Especialización y su interpretación en Lógica
    Dinámica?
  • Herencia de fórmulas dinámicas
  • Ver detalles en
  • P. Sánchez, P. Letelier, I. Ramos. Animating
    formal specifications with Inheritance in a
    DL-based framework. Requirements Engineering
    Journal, Springer-Verlag,  Vol 4 Núm. 4, páginas
    198-209, 1999.

30
Conclusiones
  • Uso de OASIS como modelo formal subyacente
  • Trabajos asociados
  • Captura de requisitos y modelado conceptual
  • Validación de especificaciones mediante animación
  • Evolución de esquemas conceptuales
  • Generación automática de código en entornos de
    imperativos
  • Integración de los aspectos anteriores en un
    entorno CASE que abarque todo el ciclo de vida
  • ...
Write a Comment
User Comments (0)
About PowerShow.com