6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/221 The Practice of Deploying DSM Report from a Japanese Appliance Maker Trenches

Slides:



Advertisements
Similar presentations
Week 3. Assembly Language Programming  Difficult when starting assembly programming  Have to work at low level  Use processor instructions >Requires.
Advertisements

Systems Software.
Alternate Software Development Methodologies
CSI5112 Software Engineering Team: Andrei Anisenia Margi Fumtiwala.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
DSM Workshop, October 22 OOPSLA 2006 Model-Based Workflows Leonardo Salayandía University of Texas at El Paso.
Extensible Processors. 2 ASIP Gain performance by:  Specialized hardware for the whole application (ASIC). −  Almost no flexibility. −High cost.  Use.
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.
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.
The Procedure Abstraction Part I: Basics Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412.
Ritu Varma Roshanak Roshandel Manu Prasanna
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,
On the Correctness of Model Transformations Gabor Karsai ISIS/Vanderbilt University.
1.1 Introduction to Language Processor
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
Introduction to Software Testing
Domain specific languages for Business Process Management: a Case Study Janis Barzdins, Karlis Cerans, Mikus Grasmanis, Audris Kalnins, Sergejs Kozlovics,
 ETL: Extract Transformation and Load  Term is used to describe data migration or data conversion process  ETL may be part of the business process repeated.
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.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
The Procedure Abstraction Part I: Basics Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Yu SunUniversity of Alabama at Birmingham PAR Works Jeff Gray University of Alabama Montpellier, France July 3rd, 2013 This research is supported.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
By: Md Rezaul Huda Reza 5Ps for SE Process Project Product People Problem.
Business Analysis and Essential Competencies
March 12 & 13, 2007 Practical Code Generation Peter Bell SystemsForge.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
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.
Domain-Specific Software Development Terminology: Do We All Speak the Same Language? Arturo Sánchez-Ruíz, University of North Florida, USA Motoshi Saeki,
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
1 5.1 Software Engineering Practice  Provide value to the user  KIS—keep it simple!  Maintain the product and project “vision”  What you produce,
Presenter : Ching-Hua Huang 2013/7/15 A Unified Methodology for Pre-Silicon Verification and Post-Silicon Validation Citation : 15 Adir, A., Copty, S.
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Abstract We present two Model Driven Engineering (MDE) tools, namely the Eclipse Modeling Framework (EMF) and Umple. We identify the structure and characteristic.
Slide title In CAPITALS 50 pt Slide subtitle 32 pt Model based development for the RUNES component middleware platform Gabor Batori
Implementing a Domain-Specific Modeling Environment For a Family of Thick-Client GUI Components Milosz Muszynski Tanner AG
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
Refining middleware functions for verification purpose Jérôme Hugues Laurent Pautet Fabrice Kordon
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Memory: Relocation.
INRIA - LaBRICharles Consel Jan-06 1 Domain-Specific Software Engineering Charles Consel Phoenix Research Group LaBRI /INRIA-Futurs January 2006.
DSL Classification October 21-22, 2007 Benoît Langlois / Thales-EPM Consuela-Elena Jitia / Eric Jouenne, Thales Research & Technology The 7th OOPSLA Workshop.
Roles in Software Development using Domain Specific Modelling Languages Holger Krahn, Bernhard Rumpe, Steven Völkel Software Systems Engineering Technische.
Automated Transformation of Statements Within Evolving Domain Specific Languages Peter Bell CEO/CTO, SystemsForge 7th OOPSLA Workshop on Domain-Specific.
1 Partial Domain Specific Models Jos WarmerOrdina Anneke KleppeUniversity of Twente OOPSLA Workshop on Domain Specific Modeling,
Adoption Participants in the adoption group Heiko Kern Parastoo Mohagheghi Manuel Wimmer Juha Pärssinen Juha-Pekka Tolvanen Laurent Safa Sven Braun Gerardo.
OOPSLA workshop on Domain-Specific Modeling (DSM’03) 1 Vasco Amaral, Univ. of Mannheim Steve Cook, Microsoft Daniel Dvorak, JPL/Cal Tech Lars Grunske,
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.
Weaving a Debugging Aspect into Domain-Specific Language Grammars SAC ’05 PSC Track Santa Fe, New Mexico USA March 17, 2005 Hui Wu, Jeff Gray, Marjan Mernik,
We will focus on operating system concepts What does it do? How is it implemented? Apply to Windows, Linux, Unix, Solaris, Mac OS X. Will discuss differences.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
OOPSLA workshop on Domain-Specific Visual Languages 1 Juha-Pekka Tolvanen, Steven Kelly, Jeff Gray, Kalle Lyytinen.
Parastoo Mohagheghi 1 A Multi-dimensional Framework for Characterizing Domain Specific Languages Øystein Haugen Parastoo Mohagheghi SINTEF, UiO 21 October.
Advanced Software Development Karl Lieberherr CSG 260 Fall Semester
DS(M)Ls for End-Users and Domain Experts? Panel on Creating DSLs Models in Software Engineering Workshop Zurich, Switzerland June 3, 2012 Jeff Gray University.
AUTOMATIC GENERATION OF MODEL TRAVERSALS FROM METAMODEL DEFINITIONS Authors: Tomaž Lukman, Marjan Mernik, Zekai Demirezen, Barrett Bryant, Jeff Gray ACM.
 Can access all API’s made available by OS vendor.  SDK’s are platform-specific.  Each mobile OS comes with its own unique tools and GUI toolkit.
George Edwards Computer Science Department Center for Systems and Software Engineering University of Southern California
Marco Brambilla, Jordi Cabot, Manuel Wimmer. Model-Driven Software Engineering In Practice. Morgan & Claypool Teaching material for the book Model-Driven.
MDD-Kurs / MDA Cortex Brainware Consulting & Training GmbH Copyright © 2007 Cortex Brainware GmbH Bild 1Ver.: 1.0 How does intelligent functionality implemented.
Towards a framework for architectural design decision support
Complexity Time: 2 Hours.
Modular design of domain-specific languages
Automated Analysis and Code Generation for Domain-Specific Models
Presentation transcript:

6 th OOPSLA Workshop on Domain-Specific Modeling /10/221 The Practice of Deploying DSM Report from a Japanese Appliance Maker Trenches Laurent Safa

6 th OOPSLA Workshop on Domain-Specific Modeling /10/222 Today’s Menu Software Modeling at MEW Tool & Scope More Scope: HA Domain DSM Challenges Proposed Solutions DSM and Cognitive Dimensions Question to the Workshop

6 th OOPSLA Workshop on Domain-Specific Modeling /10/223 Software Modeling at MEW We see modeling and code generation as a way to significantly reduce human-factor in embedded software Traditional development Modeling Tool Model-driven Development Embedded application Practitioner Embedded application useproduce write human factor Stop Human-Factor Safe Software Software Risk Tool maker

6 th OOPSLA Workshop on Domain-Specific Modeling /10/224 Application Requirements Tool & Scope Find solution Hardware OS Middleware Hardware OS Middleware Framework App Deploy solution Framework Application New technology First-of-a-kind application Pass-over to Product Division Technical Creativity Problem solving Functional Creativity Solution variations Classic Software Engineering Software Process Improvement Domain-Specific Modeling

6 th OOPSLA Workshop on Domain-Specific Modeling /10/225 More Scope: HA Domain BudgetKLOC Total Software Production Cost Software Development 50% BSP 5% Middleware 20% Framework 10% Application 15% Quality Assurance 50% DSM Productivity x10 +14% Estimate improvement Untapped Potentially Huge Savings 50% DSM ? Today Next

6 th OOPSLA Workshop on Domain-Specific Modeling /10/226 DSM Challenges Framework 1 Framework 2 Traditional Environment is Fluid Modeling Tool 1 Model-driven Development is Viscose Embedded software Practitioner Embedded software write “C” Tool maker Framework 3 Embedded software Modeling Tool 2 Modeling Tool 3 Practitioner Many languages to master Many tools to maintain New (expensive) practitioner New tool to use What happens to me? Who’s the tool user anyway?

6 th OOPSLA Workshop on Domain-Specific Modeling /10/227 Proposed Solutions Framework 1 Framework 2 Traditional Environment is Fluid Modeling Tool 1 Model-driven Development is Viscose Embedded software Practitioner Embedded software write “C” Tool maker Framework 3 Embedded software Modeling Tool 2 Modeling Tool 3 Practitioner Family of similar languages Test-driven metamodeling Configurable metamodeling tool (DSM tool’s toolkit) HCI Present DSM as a pain-killer Focus on creative developments Problem-based user selection

6 th OOPSLA Workshop on Domain-Specific Modeling /10/228 DSLs and Cognitive Dimensions DimensionProblem in terms of DSLProposed solution Viscosity1.Small changes in a graph-based model require cumbersome operation to modify the model layout 1.Constrained graph editor Auto-layout Hidden dependencies 2.A model made of multiple views is broken after a concept name is changed in one view but not updated in the others 3.Generated code does not compile after the target framework has been modified 2.Model refactoring Only-one-view DSL 3. Automated DSL test Premature commitment 4.The model need to be complete before the practitioner can try it (generate & run) 4.Convention over configuration, default values, special values undefined and unknown Abstraction barrier 5.The practitioner must master many abstractions before being able to write interesting models 6.Default behaviors Small concept categories Secondary notation 6.The practitioner cannot express or try new ideas with the DSL tool 6.Escape semantics Visibility7.The model is fragmented into many views which makes finding information difficult 7.Only-one-view DSL

6 th OOPSLA Workshop on Domain-Specific Modeling /10/229 Question to the Workshop What are other approaches to 1.Foster usability 2.Sustain deployment 3.Reduce initial cost of DSM tools? Knowing 1.To foster usability we do escape semantics, convention over configuration, unknown, only-one- view DSL, default behaviors 2.To sustain deployment we do test-driven metamodeling 3.To Reduce initial cost we use a configurable modeling tool

6 th OOPSLA Workshop on Domain-Specific Modeling /10/2210 More from the paper…

6 th OOPSLA Workshop on Domain-Specific Modeling /10/2211 DSM Capsule Software Engineering Framework DSM capsule Product Variations Market Evolution Marketing Technologist domain Product domain “classic” design and modeling C D E

6 th OOPSLA Workshop on Domain-Specific Modeling /10/2212 DSM Development Life Cycle Software Engineering Domain-Specific Modeling Metamodeling ResearchNew Product Product Variations Product Line Software Engineering Product Line Development Only Once Development Simulink, etc... C D E

6 th OOPSLA Workshop on Domain-Specific Modeling /10/2213 Metamodeling Delay Tomorrow’s tool Today’s practices Yesterday’ s practices Today’s tool Well-known problem range lower value New problem range higher value Metamodeling delay Escape semantics bridge the gap

6 th OOPSLA Workshop on Domain-Specific Modeling /10/2214 Escape Semantics tu : bit dimmer : integer [0..127] dimmer : integer [0..127] group : bit patter n Union by: A. Tanaka (2006/01/25 16h30) With Full2Way, the address space from 0 to 255 is shared between “tu” and “dimmer” equipment. Each address within that space can be either bit or integer[0..127]. The selection can be changed at run-time by loading a new configuration file. Lighting equipment Full2Way

6 th OOPSLA Workshop on Domain-Specific Modeling /10/2215 Testing DSLs appli. source appli. model meta model input expected output actual output modeling tool build system test management system executable product test result framework