The Knowledge Industry Survival Strategy (KISS)<br />Tony Clark, Thames Valley University, London, UK<br />Jorn Bettin, So...
DSLs: Benefits and Problems<br />Benefits: <br />express problems in a compact form that reflects the natural terminology ...
Tool Chain Scenario<br />Given:<br />A tool to support business motivation (goal) modelling.<br />A tool to design busines...
Tool Chain Requirements<br />Tools should be able to persist models. <br />A tool must be able to supply its models to ano...
Tool Definitions and Terms<br />Model<br />Abstract Syntax<br />Concrete Syntax<br />Well-formedness<br />Language Definit...
Model Weaving
Model Execution
Model Editor
Model Reader
Model Writer
Model Walker
Tool Interface
Tool Chain
Tool Framework</li></li></ul><li>Current Approaches<br />Standard-like technologies and OS :<br />UML<br />MOF<br />EMF, G...
KISS: Aims and Core Values<br />Automate software construction from domain models.<br />Work with domain specific assets<b...
Interoperability: Tool Descriptors<br />8<br />KISS @ OOPSLA 09<br />
Interoperability: Tool Chains<br />9<br />KISS @ OOPSLA 09<br />
Upcoming SlideShare
Loading in …5
×

Kiss at oopsla 09

608 views

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
608
On SlideShare
0
From Embeds
0
Number of Embeds
137
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Kiss at oopsla 09

  1. 1. The Knowledge Industry Survival Strategy (KISS)<br />Tony Clark, Thames Valley University, London, UK<br />Jorn Bettin, Sofismo, Switzerland<br />
  2. 2. DSLs: Benefits and Problems<br />Benefits: <br />express problems in a compact form that reflects the natural terminology of human domain experts<br />Raise the level of abstraction<br />Clean separation of concerns in problem space.<br />Problems:<br />Interoperability (similar to CASE tools in 90s)<br />Cannot realise tool chains.<br />No common framework, processes, terminology,...<br />2<br />KISS @ OOPSLA 09<br />
  3. 3. Tool Chain Scenario<br />Given:<br />A tool to support business motivation (goal) modelling.<br />A tool to design business components (information models + state machines)<br />A tool to design business processes (generate enterprise workflow applications)<br />How would these work together to produce a complete application?<br />3<br />KISS @ OOPSLA 09<br />
  4. 4. Tool Chain Requirements<br />Tools should be able to persist models. <br />A tool must be able to supply its models to another tool.<br />A tool must make its data format available<br />Inter-tool control<br />Precise model semantics<br />4<br />KISS @ OOPSLA 09<br />
  5. 5. Tool Definitions and Terms<br />Model<br />Abstract Syntax<br />Concrete Syntax<br />Well-formedness<br />Language Definition<br />Semantics<br />Meta-language<br />Generic Tool<br />Model Transformation<br />5<br />KISS @ OOPSLA 09<br /><ul><li>Model Persistence
  6. 6. Model Weaving
  7. 7. Model Execution
  8. 8. Model Editor
  9. 9. Model Reader
  10. 10. Model Writer
  11. 11. Model Walker
  12. 12. Tool Interface
  13. 13. Tool Chain
  14. 14. Tool Framework</li></li></ul><li>Current Approaches<br />Standard-like technologies and OS :<br />UML<br />MOF<br />EMF, GMF, Xtext, oAW,...<br />Vendor-specific technologies:<br />MS Visual Studio, Oslo<br />MetaCase, ...<br />MPS, Intensional, ...<br />Research Technologies:<br />Stratego, ...<br />6<br />KISS @ OOPSLA 09<br />
  15. 15. KISS: Aims and Core Values<br />Automate software construction from domain models.<br />Work with domain specific assets<br />Support the emergence of supply chains.<br />Open Source Infrastructure<br />Support the Agile Manifesto<br />Language Definition covers all Use Cases.<br />7<br />KISS @ OOPSLA 09<br />
  16. 16. Interoperability: Tool Descriptors<br />8<br />KISS @ OOPSLA 09<br />
  17. 17. Interoperability: Tool Chains<br />9<br />KISS @ OOPSLA 09<br />
  18. 18. Interoperability: DSML Tools<br />10<br />KISS @ OOPSLA 09<br />
  19. 19. Interoperability: Syntax<br />11<br />KISS @ OOPSLA 09<br />
  20. 20. Interoperability: Syntax<br />12<br />KISS @ OOPSLA 09<br />
  21. 21. Interoperability: Tool Interfaces<br />13<br />KISS @ OOPSLA 09<br />
  22. 22. Interoperability: Behaviour<br />14<br />KISS @ OOPSLA 09<br />
  23. 23. Interoperability: Meta-Models<br />15<br />KISS @ OOPSLA 09<br />
  24. 24. Compliance Levels<br />0. No specific features are identifiable.<br />1. DSL tools interoperate through reified interfaces, e.g. persistence.<br />2. Tools interoperate through a common serialization format (shared meta-language through translation).<br />3. Dynamically shared data (shared meta-language).<br />4. Common language/model manipulation through common service (limited shared behaviour).<br />5. Interoperable behaviour through common behaviour representation.<br />KISS @ OOPSLA 09<br />16<br />
  25. 25. Interoperability Compliance Levels<br />17<br />KISS @ OOPSLA 09<br />

×