cd2448db1be4dfce796bed0e2c4de54a.ppt
- Количество слайдов: 15
The Practice of Deploying DSM Report from a Japanese Appliance Maker Trenches http: //www. dsmforum. org/events/DSM 06/ Laurent Safa 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 1
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 - 2006/10/22 2
Software Modeling at MEW We see modeling and code generation as a way to significantly reduce human-factor in embedded software Stop Human-Factor Model-driven Development use Safe Software Modeling Tool produce Practitioner Tool maker Traditional development Embedded application write human factor Software Risk Embedded application Practitioner 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 3
Application Requirements Framework Find solution App App Tool & Scope Framework Middleware OS Hardware Deploy solution Middleware OS Hardware 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 - 2006/10/22 4
More Scope: HA Domain Quality Assurance Untapped Potentially Huge Savings Next DSM ? 50% Total Software Production Cost Application 15% Software Development 50% http: //biz. national. jp/Ebox/kahs/index. html Framework 10% Middleware 20% Budget Today DSM Productivity x 10 +14% Estimate improvement BSP 5% KLOC 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 5
DSM Challenges Many languages to master Model-driven Development is Viscose Practitioner Who’s the tool user anyway? Traditional Environment is Fluid Many tools to maintain Modeling Tool 3 New tool Modeling to use Tool 2 Modeling Tool 1 New (expensive) practitioner Tool maker write “C” What happens Practitioner to me? Embedded software Framework 3 Embedded software Framework 2 Embedded software Framework 1 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 6
Proposed Solutions Family of similar languages Model-driven Development is Viscose Practitioner Problem-based user selection Test-driven metamodeling Modeling Tool 3 HCI Modeling Tool 2 Modeling Tool 1 Configurable metamodeling tool (DSM tool’s toolkit) Tool maker Traditional Environment is Fluid write “C” Present DSM as a pain-killer Practitioner Focus on creative developments Embedded software Framework 3 Embedded software Framework 2 Embedded software Framework 1 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 7
DSLs and Cognitive Dimensions http: //www. cl. cam. ac. uk/~afb 21/Cognitive. Dimensions/ Dimension Problem in terms of DSL Proposed solution Viscosity 1. Small changes in a graph-based model 1. Constrained graph editor require cumbersome operation to modify the Auto-layout model layout Hidden dependencies 2. A model made of multiple views is broken 2. Model refactoring after a concept name is changed in one view Only-one-view DSL but not updated in the others 3. Generated code does not compile after the 3. Automated DSL test target framework has been modified 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 Visibility 7. 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 - 2006/10/22 8
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-oneview 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 - 2006/10/22 9
More from the paper… 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 10
DSM Capsule Technologist Product domain Software Engineering C Framework “classic” design and modeling DSM capsule E D Product Variations Marketing Market Evolution 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 11
DSM Development Life Cycle Only Once Development Product Line Development Software Engineering Metamodeling Domain-Specific D Modeling Simulink, etc. . . Research New Product Variations Product Line C E 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 12
Metamodeling Delay New problem range higher value Well-known problem range lower value Yesterday’ s practices Today’s practices Metamodeling delay Tomorrow’s tool Today’s tool Escape semantics bridge the gap 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 13
Escape Semantics Union by: A. Tanaka (2006/01/25 16 h 30) With Full 2 Way, 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. tu : bit dimmer : integer [0. . 127] 256 dimmer : integer [0. . 127] group : bit patter n 16 Full 2 Way Lighting equipment 127 72 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 14
Testing DSLs framework appli. modeling tool appli. source build system meta model input executable product expected output actual output test management system test result 6 th OOPSLA Workshop on Domain-Specific Modeling - 2006/10/22 15