200 likes | 357 Views
Domain-Specific Modeling Languages and Generators - Examples. 4.11.2002 Juha-Pekka Tolvanen MetaCase Consulting. Selected samples. Financial products Java Notes apps Notes definitions, checkings and documentation Web-application XML, Java, stylesheets
E N D
Domain-Specific Modeling Languages and Generators-Examples 4.11.2002 Juha-Pekka Tolvanen MetaCase Consulting
Selected samples Financial products Java Notes apps Notes definitions, checkings and documentation Web-application XML, Java, stylesheets Voicemenu for micro controller systems Assembler-like Embedded product Java, MIDP
Case: Insurance products & eCommerce • Developing portal for insurances and financial products • Marketplace and broker • Need to specify several hundred financial products • Insurance experts specify visually insurance products and generate code to the portal • Basic data structures and engine reflect the architecture • Capture insurance knowledge in the graphical form • Reusable component library for data structures and functionality • Code generators produces running Java (100% of the code needed) • Comparison to writing directly Java after first 30 products = DSVL at least 3 times faster
Case: Notes • Modeling method for Notes applications • Apply Notes concepts directly in designs • Documentation generators according to company standards for internal use and for customers
Case: Web application • Web application for e-commerce; product catalogs, events, press releases, and discussion forums • Core components and basic functionality available for reuse and customization needs • Each customer can specify own data content, behavioral logic and user interface • Code generators produce running Java applets, stylesheets and xml files • Generation of documents for both internal and external use
Case: VoiceMenu for micro controller app • VoiceMenu for micro controller based home automation system • Remote control for lights, heating, alarms, etc. • VoiceMenus are programmed straight to the device with assembler-like language (8bit) • Modelling language to define overall menu structure and individual voice prompts • Code generator produces 100% of menu implementation • Development time for a feature from a week to a day
Case: Wrist watches product family • Product family • Different watch models: Sport, Kid, Traveler, Diver, Luxery etc. • Common architecture of time-based applications • Time, Timer, LapTime, WorldTime, StopWatch, Alarm, etc. • Family-specific language and generators • New models specified with high-level watch concepts • Alarms, buttons, displays, icons, states, etc. • Code generators to produce 100% implementation in Java from graphical models
Thank you, questions please Juha-Pekka Tolvanen MetaCase Consulting Ylistönmäentie 31 FIN - 40500 Jyväskylä, Finland Phone +358 14 4451 400, Fax +358 14 4451 405 email: jpt@metacase.com http://www.metacase.com