Reglas de traducción de restricciones entre OCL y LN
Material type:
Browsing Biblioteca de la Facultad de Informática shelves Close shelf browser (Hides shelf browser)
Tesina (Licenciatura en Sistemas) - Universidad Nacional de La Plata. Facultad de Informática, 2017.
Capítulo 1: Introducción -- 1.1 - Objetivo -- 1.2 - Motivación -- 1.3 - Desarrollos propuestos -- 1.4 - Resultados esperados -- 1.5 - Organización de la tesina -- Capítulo 2: Desarrollo de Software dirigido por modelos -- 2.1- Desarrollo de software dirigido por modelos (MDD) -- 2.2.1 - Elementos clave -- 2.2.1.1 - Abstracción -- 2.2.1.2 - Automatización -- 2.2.1.3 - Estándares -- 2.2 - Problemas que el MDD viene a resolver -- 2.3 - Tipos de modelos -- 2.3.1 - Modelo independiente de la computación (CIM) -- 2.3.2 - Modelo independiente de la plataforma (PIM) -- 2.3.3 - Modelo específico de la plataforma (PSM) -- 2.3.4 - El modelo de implementación (Código) -- 2.3.5 - Ciclo de vida -- 2.3.6 - Otras clasificaciones -- 2.4 - Metamodelos -- 2.4.1 - Qué es un metamodelo? -- 2.4.2 - Transformaciones -- 2.4.3 - Arquitectura de 4 capas -- 2.4.4 - MOF -- 2.4.4.1 - ECORE -- 2.4.4.2 - EMF -- Capítulo 3: Lenguajes -- 3.1 - Definición -- 3.2 - Clasificación -- 3.2.1 - Lenguaje Natural -- 3.2.2 - Lenguaje Formal -- 3.2.3 - Diferencias entre Lenguaje Natural y Lenguaje Formal -- 3.3 - Gramática -- 3.4 - Jerarquía de Chomsky -- 3.5 - Representación de gramáticas libres de contexto -- 3.5.1 - BNF -- 3.5.2 - EBNF -- 3.5.2.1 - Reglas en EBNF -- 3.5.2.2 - Recursión en EBNF -- 3.5.2.3 - Validación de reglas EBNF -- 3.6 - Lenguaje Natural -- 3.6.1 - Castellano -- 3.6.2 - Lenguaje natural limitado o reducido -- Capítulo 4: Lenguaje Formal, OCL -- 4.1 - Definición -- 4.2 - Descripción de OCL -- 4.3 - Restricciones en OCL -- 4.3.1 - Precondición -- 4.3.2 - Postcondición -- 4.3.3 - Body -- 4.3.4 - Definición -- 4.4 - Expresión de valor inicial -- 4.5 - Valores básicos y tipos -- 4.5.1 - Valores indefinidos -- 4.5.2 - Ajustes de tipos -- 4.5.3 - Uso de operadores infijos -- 4.5.4 - Expresiones Let -- 4.6 - Colecciones -- 4.6.1 - Operaciones en colecciones -- 4.7 - Tipos predefinidos en OCL -- 4.8 - Propiedades y Objetos -- 4.8.1 - Propiedades -- 4.8.2 - Atributos -- 4.8.3 - Operaciones -- 4.8.4 - Asociaciones y navegación -- 4.8.5 - Características de clases -- 4.8.6 - Propiedades predefinidas en todos los objetos -- 4.9 - Package Context -- Capítulo 5: Transformación de modelos -- 5.1 - Transformaciones de modelos -- 5.2 - Tipos de transformaciones -- 5.2.1 - Nivel de abstracción de los modelos de entrada y salida -- 5.2.2 - Tipo de lenguaje que se utiliza para especificar las reglas -- 5.2.3 - Direccionalidad en las transformaciones -- 5.2.4 - Dependiendo de los modelos origen y destino -- 5.2.5 - Tipo de modelo destino -- 5.3 - M2M -- 5.3.1 - Manipulación Directa -- 5.3.2 - Relacional -- 5.3.3 - Grafos -- 5.3.4 - Enfoques basados en la estructura -- 5.3.5 - Híbridos -- 5.3.6 - Herramientas -- 5.3.6.1 - ATL -- 5.3.6.2 - QVT -- 5.3.6.3 - Viatra -- 5.3.6.4 - Epsilon -- 5.4 – M2T -- 5.4.1 - Visitante -- 5.4.2 - Plantilla -- 5.4.3 - Herramientas -- 5.4.3.1 - MOFScript -- 5.4.3.2 - Acceleo -- 5.4.3.3 - XPAND -- 5.5 – Conclusiones -- Capítulo 6: Herramientas -- 6.1 - Transformación de Modelos en ATL -- 6.1.1 - Visión general de las transformaciones ATL -- 6.1.2 - Estructura de las transformaciones ATL, Modules -- 6.1.2.1 - Header -- 6.1.2.2 - Import -- 6.1.2.2 - Helpers -- 6.1.2.3 - Tipo de dato, ATL Module -- 6.1.3 - Reglas de transformación -- 6.1.3.1 - Tipos de reglas -- 6.1.3.2 - Semántica de la ejecución de reglas -- 6.1.3.3 - Características imperativas de ATL -- 6.2 - Xtext -- 6.2.1 - Introducción -- 6.2.2 - Estructura Xtext -- 6.2.3 - Gramática -- 6.2.3.1 - Generar artefactos del lenguaje -- 6.2.3.2 - Ejecutar el plug-in generado -- 6.2.4 - El generador -- 6.2.4.1 - Arquitectura General -- 6.2.5 - Serialización -- 6.2.5.1 - Parse Tree Constructor -- 6.3 - Plugin OCL -- 6.3.1 - Classic OCL -- 6.3.2 - Complete OCL -- 6.3.3 - Metamodelo Unificado o Pivot -- Capítulo 7: Traducción -- 7.1 - Modelo Ecore - Biblioteca -- 7.2 - Reglas de traducción - ATL -- 7.3 - Gramática - Lenguaje Natural Reducido -- 7.4 - Invariante simple -- 7.5 - Invariante compuesta -- 7.6 - Invariante operación de colección (size, isEmpty, notEmpty) -- 7.7 - Invariante con iterador -- 7.7.1 - Valor booleano como salida -- 7.7.2 - Nueva Colección como salida -- Capítulo 8: Herramienta Desarrollada -- 8.1 - Diseño -- 8.2 - Implementación -- 8.3 - Manual de uso -- Capítulo 9: Trabajos Relacionados -- 9.1 - UML/OCL a especificaciones SBVR: Transformación desafiante -- 9.2 - Parafraseando expresiones OCL con SBVR -- 9.3 - Verbalización de reglas: Aplicación a restricciones OCL en el dominio Utility -- 9.4 - De especificaciones de software de lenguaje natural a modelos de clase UML -- 9.5 - Generación de restricciones OCL a partir de una especificación en LN -- 9.6 - Usabilidad de OCL: un gran desafío en la adopción de UML 1 -- 9.7 – Conclusiones -- Capítulo 10: Conclusiones y Trabajos Futuros -- 10.1 - Conclusiones -- 10.2 - Trabajos Futuros -- Referencias Bibliográficas -- Glosario