Models for Language Engineering Bruno F. Barroca.

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

From Model-based to Model-driven Design of User Interfaces.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
XOWL – an Executable Modeling Language for Domain Experts Laurent WOUTERS (EADS Innovation Works, France) Marie-Pierre GERVAIS (Université Paris Ouest,
SSP Re-hosting System Development: CLBM Overview and Module Recognition SSP Team Department of ECE Stevens Institute of Technology Presented by Hongbing.
Jiannong IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML.
Barak Agiv Itamar Ben-Zaken Barak Nahum Vladislav Smolensky Academic Advisor: Yuval Elovici Professional Advisor: Mira Balaban.
No Silver Bullet Essence and Accidents of Software Engineering By Frederick P. Brooks Frederick P. Brooks Presentation by Yan Qi
CS 425/625 Software Engineering System Models
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
Chapter 1: Data Models and DBMS Architecture Title: What Goes Around Comes Around Authors: M. Stonebraker, J. Hellerstein Pages: 2-40.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
A Formal Foundation Supporting MDD --- ZOOM Approach Hongming Liu Lizhang Qin 11/08/2003.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Spectra Software Defined Radio Products Applying Model Driven Design, Generative Programming, and Agile Software Techniques to the SDR Domain OOPSLA '05.
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
OOPSLA 2003 DSM Workshop Diagram Definition Facilities Based on Metamodel Mappings Edgars Celms, Audris Kalnins, Lelde Lace University of Latvia, IMCS,
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Ontologies Reasoning Components Agents Simulations Belief Update, Planning and the Fluent Calculus Jacques Robin.
AToM 3 : A Tool for Multi- Formalism and Meta-Modelling Juan de Lara (1,2) Hans Vangheluwe (2) (1) ETS Informática Universidad Autónoma de Madrid Madrid,
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
1 MDWE'2008, Toulouse, France, September 30, 2008 A Comparative Analysis of Transformation Engines for User Interface Development Juan Manuel González.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Reviewing Recent ICSE Proceedings For:.  Defining and Continuous Checking of Structural Program Dependencies  Automatic Inference of Structural Changes.
A language to describe software texture in abstract design models and implementation.
Model Checking and Model-Based Design Bruce H. Krogh Carnegie Mellon University.
Agile Test-based Modeling 資工 聶順成. Outline  Introduction : Modeling meets Programming  Agile Modeling: Using Models in Agile Projects  Model-based.
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
XML Grammar and Parser for WSOL Kruti Patel, Vladimir Tosic, Bernard Pagurek Network Management & Artificial Intelligence Lab Department of Systems & Computer.
Sheet 1 DocEng’03, Grenoble, November 2003 Model Driven Architecture based XML Processing Ivan Kurtev, Klaas van den Berg University of Twente, the Netherlands.
Michael Schloh von Bennewitz 1. Oktober 2002 The Unified Modeling Language Overview of theory and practice of the OMG Unified Modeling.
Visual Specification of a DSL Processor Debugger Tamás Mészáros and Tihamér Levendovszky Budapest University of Technology and Economics.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Semantics for DSL Group Members: Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez, Greg Sullivan,Ximing Yu.
1 1 Overview 1.Find out why software engineering is important ■ see some software engineering failures 2.Get acquainted with – ■ the Chair of Software.
Organizing Data and Information
Ontologies Reasoning Components Agents Simulations Architectural Modeling with UML2 Composite Structures and Components Jacques Robin.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
October 1st 2015 Alexis Fouché 1, Florian Noyrit 1, Sébastien Gérard 1, Maged Elaasar 2 SYSTEMATIC GENERATION OF STANDARD COMPLIANT TOOL SUPPORT OF DIAGRAMMATIC.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: UML 2 Metamodel Note to Instructor: The material in this.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
2000 Research Overview Dr. Kim Mens Programming Technology Lab Vrije Universiteit Brussel.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Comparison of ZOOM with other Formal Methodologies Hsiu-Chien Jing SE690 Initial Presentation School of CTI, DePaul University Supervised by Dr. Jia October,
Modeling with UML – Class Diagrams
CS4222 Principles of Database System
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
SysML v2 Formalism: Requirements & Benefits
Presentation by Julie Betlach 7/02/2009
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Object Oriented Analysis and Design
Implementing Language Extensions with Model Transformations
Introduction to UML.
Chapter 20 Object-Oriented Analysis and Design
Object-Oriented Knowledge Representation
Programming Languages 2nd edition Tucker and Noonan
Overview of the ETSI Test Description Language
Implementing Language Extensions with Model Transformations
Software Architecture & Design
Presentation transcript:

Models for Language Engineering Bruno F. Barroca

Outline: ① Type Models -Conformance -Relations between models ② (Model) Representation -Self-description -Efficiency -Usability ③ Model of a Meta-Modeling Environment 2

3  Type Models: Types of Type models Linguistic  Grammars  Parsers (Strings -> Trees)  Visitor Pattern (Trees -> Graphs)  Attribute Grammars (Multi-stage programming)  Metamodels (Modelverse, ECore, KM3, etc.)  Syntax-directed modeling environments  Instantiation (Factory Pattern) Ontological (General)  Domain Models (Automotive, Bio-informatics, Pharmaceuticals)  Constraint solving  Model Checkers  Theorem provers  Description Logics / Reasoners  Orthogonal analysis

4

5

6

Conformance 7

8

 Relations between Models Models and Models Model Transformations  Match Models  Apply Models Conformance with Type Models Model elements From different models Models and Model Elements  Relations are also typed  Megamodeling  Multi-level modeling 9

10  Self-describable representations Online (live) modifications and updates  Granularity  Boundary (scope) of self-modification  Built-in functionality Heterogeneity problems  Rewrite itself onto a new platform (situation)  Based on some specification  Typically a Platform model, or  Deployment model

11  Efficient representation Match operation on Graphs is a NP-Complete Problem Match operation on Trees (Visitor pattern)  TrNET (Join operations, Construction of complex match patterns based on simple ones)  Analysis  Overlapped pattern matching  Automated redundancy check  Clone detection  Optimization (cost models) Easier to match on paths?  with proper representation  Almost constant complexity How to represent Graphs as paths?  Time complexity  Spatial complexity  Redundancy

12  Usable representation General modeling languages? (e.g., UML)  Structure  Class Diagrams  Component Diagrams  Behavior  State charts  Finite state machines  Sequence Diagrams  SCCD with ActionCode Time concept  DEVS with Neutral Action Code  DEVSPro  DEVSLang  Action Code  Programming Language agnostic  Platform independent (API/Library)

13

14

15

16  Modeling of (Meta) Modeling Environments? Variability analysis  Features  Language Engineering Domain analysis Types and Patterns  Synchronization of Abstract Syntax with Concrete Syntax  Merge/composition/weaving of arbitrary AS with CS  Notion of model and language fragments  Network language as a glue for the fragments  CS Metamodel?  Diagram/canvas graphical objects/Toolbars/Property Views  Structure  Behavior  Wizards and Tutorials  Notion of Layers  Restricted views based on User profiles

Thank you! 17