OOPSLA workshop on Domain-Specific Modeling (DSM’03) 1 Jeff Gray - Jonathan Sprinkle - David Oglesby - Stuart Kent - Kerry Raymond - Jean Bezivin - Paulo.

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

1 Evolution: a Grand Challenge Pennine Forum September 2004 Keith Bennett School of Engineering, Durham
Sponsored by the U.S. Department of Defense © 2005 by Carnegie Mellon University 1 Pittsburgh, PA Dennis Smith, David Carney and Ed Morris DEAS.
McGill University School of Computer Science Ph.D. Candidate in the Modelling, Simulation and Design Lab MPM’09 Explicit Transformation Modelling Thomas.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
1/18 CS 693/793 Lecture 09 Special Topics in Domain Specific Languages CS 693/793-1C Spring 2004 Mo, We, Fr 10:10 – 11:00 CH 430.
If a sparse, NP-Complete language exists => P = NP Let S be a sparse NP-Complete language Define C(n) = |S ≤n | and C a (n) = |S ≤p a (n) | Define p ℓ.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Adaptable Architecture for Meta- Programmable Modeling Tools Matt Emerson Advisor: Janos Sztipanovits The Core Layer The.
A Domain-specific Modeling Approach to the Development of Online Peer Assessment Yongwu Miao and Rob Koper Educational Technology Expertise Centre Open.
Bridging the Gap between Practitioners and E-learning Standards: A Domain-specific Modeling Approach Yongwu Miao, Tim Sodhi, Francis Brouns, Peter Sloep,
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
1 Designing an XML-based Exchange Format for Harmonia Marat Boshernitsan Susan L. Graham University of California, Berkeley, USA Exchange Formats Workshop.
Domain specific languages for Business Process Management: a Case Study Janis Barzdins, Karlis Cerans, Mikus Grasmanis, Audris Kalnins, Sergejs Kozlovics,
Problems with reuse – Increased maintenance costs; lack of tool support; not-invented- here syndrome; creating, maintaining, and using a component library.
Lynn Grande COT6930 – Semantic Web Fall  The real-time adjustment of spectrum utilization in response to changing circumstances and objectives.
28/08/2015SJF L31 F21SF Software Engineering Foundations ASSUMPTIONS AND TESTING Monica Farrow EM G30 Material available on Vision.
Lecture 18 Page 1 CS 111 Online Design Principles for Secure Systems Economy Complete mediation Open design Separation of privileges Least privilege Least.
OOPSLA 2003 DSM Workshop Diagram Definition Facilities Based on Metamodel Mappings Edgars Celms, Audris Kalnins, Lelde Lace University of Latvia, IMCS,
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 1 Jeff Gray, Juha-Pekka Tolvanen, Matti Rossi OOPSLA Workshop.
Secure Systems Research Group - FAU Aspects and mobile applications Sergio Soares Paulo Borba, “PaDA: A Pattern for Distribution Aspects” In Second Latin.
Software Engineering CS3003 Lecture 3 Software maintenance and evolution.
Chapter 6 : Software Metrics
Python File Handling. In all the programs you have made so far when program is closed all the data is lost, but what if you want to keep the data to use.
A Tooling Environment for Quality-Driven Domain- Specific Modelling Janne Merilinna.
CSCD 487/587 Human Computer Interface Winter 2013 Lecture 3 HCI and Interactive Design.
1 No Silver Bullet Brooks rides again…. 2 Essential Difficulties What are these “essential difficulties” that Brooks is referring to? Complexity Conformity.
Configuration Management (CM)
Building Tools by Model Transformations in Eclipse Oskars Vilitis, Audris Kalnins, Edgars Celms, Elina Kalnina, Agris Sostaks, Janis Barzdins Institute.
Workshop 16: An upward shift in abstraction leads to a corresponding increase in productivity. In the past this has occurred when programming languages.
OOPSLA workshop on Domain-Specific Visual Languages 1 Juha-Pekka Tolvanen, Steven Kelly, Jeff Gray, Kalle Lyytinen.
Automating Instance Migration in Response to Ontology Evolution Mark Fischer – Queen’s Juergen Dingel – Queen’s Maged Elaasar – Carleton Steven Shaw –
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
Janne Merilinna, Olli-Pekka Puolitaival, John Menke, Tihamer Levendovszky, Jonathan Sprinkle, Mika Karaila, Edgars Rencis, Hiroshi Kazato, Takashi Kopayashy.
Software Engineering Saeed Akhtar The University of Lahore Lecture 6 Originally shared for: mashhoood.webs.com.
Implementing a Domain-Specific Modeling Environment For a Family of Thick-Client GUI Components Milosz Muszynski Tanner AG
6 th OOPSLA Workshop on Domain-Specific Modeling /10/221 The Practice of Deploying DSM Report from a Japanese Appliance Maker Trenches
OOPSLA workshop on Domain-Specific Visual Languages 1 Juha-Pekka Tolvanen, Jeff Gray, Matti Rossi 2nd Workshop.
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
Aspect-Oriented Requirements Engineering David Schaefer, Joao Araujo, Isabel Brito, Awais Rashid, Claudia Mesquita.
Automated Transformation of Statements Within Evolving Domain Specific Languages Peter Bell CEO/CTO, SystemsForge 7th OOPSLA Workshop on Domain-Specific.
1 24 October 2004 Vancouver, Canada The 4th OOPSLA Workshop on Domain-Specific Modeling Group reports.
1 Partial Domain Specific Models Jos WarmerOrdina Anneke KleppeUniversity of Twente OOPSLA Workshop on Domain Specific Modeling,
1 17 October 2005 San Diego, CA The 5th OOPSLA Workshop on Domain-Specific Modeling.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
David Orchard W3C Lead BEA Systems Web service and XML Extensibility and Versioning.
Interfaces About Interfaces Interfaces and abstract classes provide more structured way to separate interface from implementation
1 24 October 2004 Vancouver, Canada The 4th OOPSLA Workshop on Domain-Specific Modeling.
Why A Software Review? Now have experience of real data and first major analysis results –What have we learned? –How should that change what we do next.
Sending large message counts (The MPI_Count issue)
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
Requirements Engineering Requirements Validation and Management Lecture-24.
Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and.
Lecture VIII: Software Architecture
Lifecycle Metadata for Digital Objects November 15, 2004 Preservation Metadata.
4 th Workshop for TAO and CIAO July 16, 2004 MOF-Compliant Modeling of Middleware Jeff Parsons & Matt Emerson ISIS Vanderbilt University Nashville, TN.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Project Information Abstract Project Objectives The objective of this project is to: Create a visual designer that will allow inexperienced end- users.
Model Transformation By Demonstration Yu Sun, Jules White, Jeff Gray This work funded in part by NSF CAREER award CCF CIS Dept. – University of.
System Development Life Cycle (SDLC). Activities Common to Software Projects Planning : Principles Principle #1. Understand the scope of the project.
Test Loads Andy Wang CIS Computer Systems Performance Analysis.
What is an object?. What Makes an Object? An object has identity (it acts as a single whole). Every object has a name that identifies what it is. Ex.
Software Development Module Code: CST 240 Chapter 6: Software Maintenance Al Khawarizmi International College, AL AIN, U.A.E Lecturer: Karamath Ateeq.
Testability.
Receiving and Reading Meaning
OOPSLA Workshop on Domain-Specific Modeling Tools Workgroup
Model Comparison: A Key Challenge for Transformation Testing and Version Control in Model Driven Software Development Yuehua Lin, Jing Zhang, Jeff Gray.
Re- engineeniering.
Presentation transcript:

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 1 Jeff Gray - Jonathan Sprinkle - David Oglesby - Stuart Kent - Kerry Raymond - Jean Bezivin - Paulo Borba - Edward Willink - Jane Lin - Krzysztof Czarnecki - Audris Kalnins OOPSLA Workshop on Domain- Specific Modeling Model Transformation Workgroup

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 2 Objectives How to handle metamodel evolution? Model & code migration, size of models, number and distribution of users, code generation Metamodel (and transformation) versioning How to divide responsibility between modeling language and transformer/ generator? Language characteristics that influence code generation/model migration success Have fun!

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 3 Correctly!! When do to have to handle it? –Problem comes with the data, not the lang. change What must you consider –Semantics, APIs, Interpreters, Training, Documents Are there really changes that don’t matter –Maybe, or maybe not What are the dimensions of change –What is being affected? What has been changed? How to handle metamodel evolution?

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 4 How to handle metamodel evolution? This isn’t a new problem, though... –w3c is much more concerned about change to schema than we are –Programming languages can evolve But not in the same way The nature of a Domain Specific model means that D-S >> Backward Compatibility Can we build metamodels that are easier to evolve? –Whose job is this anyway? –I’m glad you asked...

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 5 How to divide responsibility between modeling language and transformer/ generator Whose responsibility is it for change –Should the tool be responsible for migration after the changes are made to the metamodel –Should the tool just be more fluid to accept “problems” and allow the users to make the solutions How far along are we to finding solutions –Can we find a solution for all models, or just in certain contexts? –To what extent can we automatically generate (without any input) the transformer (and is this dangerous?) What is the QoS of the tool –How much does the tool itself aid the (user) in these efforts Understanding the intent of the metamodeler can go a long way toward making changes to any transforms that exist

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 6 Model & code migration, size of models, number and distribution of users, code generation The number and distribution of users necessarily determines how your models should be stored/archived –Source control of a large system stored in just one file? –Working on different attributes from different continents? How much of a change in the domain requires that you change the metamodel? –i.e., how long can you creak along on what you had and just change values or do “hacks” to make it work with the new domain –Consider the total cost of migration Training, education, model transforms –When the MM is a superset of the old metamodel, is it a change? What about a subset? –Just changing element names? –When you make the change, can you also provide the utilities to “import” the original models Or, can you generate these from the MM changes?

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 7 Metamodel (and transformation) versioning When you have A and change it to A’, what elements are the same? –Versioning can help here –What is the granularity of the metamodel storage? –You want to control this on the model level, not on the rendering level –It’s not the individual elements that matter, it’s the total metamodel identity –It’s difficult (impossible?) to make a change that everyone will recognize as insignificant What is the level of granularity at which we will version? –Each language should decide what its level is –Does changing the comment in a model make a difference? Could be, what if the versioning is controlled by file savetime? Always assume that something downstream is affected

OOPSLA workshop on Domain-Specific Modeling (DSM’03) 8 Language characteristics that influence code generation/model migration success There are examples in other programming paradigms –Generate your API using patterns that are receptive to change –E.g., CORBA, never use enums, only integer constants Use (or create) tools that aren’t too fussy about change –Using optional attributes to ease the process –The development and production tools should behave differently here It can (should?) be done that –You can examine the set of modeling constructs and find which ones are better for evolution in some contexts –Recommend/instruct that some methods be used in those contexts Should we have normal forms for modeling? –No optional attributes  Make a subtype