1 4.11.2002 juha-pekka tolvanen metacase consulting domain-specific modeling languages and...
TRANSCRIPT
1
4.11.2002
Juha-Pekka Tolvanen
MetaCase Consulting
Domain-Specific Modeling Languages and Generators
-Examples
2
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
3
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
6
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
9
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
12
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
15
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
18
Juha-Pekka TolvanenMetaCase Consulting
Ylistönmäentie 31FIN - 40500 Jyväskylä, Finland
Phone +358 14 4451 400, Fax +358 14 4451 405email: [email protected] http://www.metacase.com
Thank you, questions please