170 likes | 273 Views
The Practice of Deploying DSM. Report from a Japanese Appliance Maker Trenches http://www.dsmforum.org/events/DSM06/ Laurent Safa. Today’s Menu. Software Modeling at MEW Tool & Scope More Scope: HA Domain DSM Challenges Proposed Solutions DSM and Cognitive Dimensions
E N D
The Practice of Deploying DSM Report from a Japanese Appliance Maker Trenches http://www.dsmforum.org/events/DSM06/ Laurent Safa
Today’s Menu • Software Modeling at MEW • Tool & Scope • More Scope: HA Domain • DSM Challenges • Proposed Solutions • DSM and Cognitive Dimensions • Questionto the Workshop
We see modeling and code generation as a way to significantly reduce human-factor in embedded software Practitioner Practitioner Tool maker Software Modeling at MEW Stop Human-Factor Safe Software Embedded application Modeling Tool use produce Model-driven Development Software Risk Embedded application write human factor Traditional development
Tool & Scope App App App App Application Requirements Application Framework Framework Find solution Deploy solution Middleware Middleware OS OS Hardware 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
Total SoftwareProduction Cost Quality Assurance 50% Untapped Potentially Huge Savings 50% Application 15% SoftwareDevelopment 50% Framework 10% Middleware 20% BSP 5% More Scope: HA Domain Next DSM ? Today Productivity DSM x10 +14% Estimateimprovement Budget KLOC http://biz.national.jp/Ebox/kahs/index.html
Practitioner Practitioner Tool maker DSM Challenges Many tools to maintain Embedded software Manylanguages to master Modeling Tool 3 Framework 3 Model-driven Developmentis Viscose New tool to use Modeling Tool 2 Embedded software Who’s the tool useranyway? Modeling Tool 1 Framework 2 New (expensive) practitioner Embedded software write “C” Traditional Environmentis Fluid What happens to me? Framework 1
Practitioner Practitioner Tool maker Proposed Solutions Test-driven metamodeling Embedded software Family ofsimilar languages Modeling Tool 3 Framework 3 Model-driven Developmentis Viscose HCI Modeling Tool 2 Problem-based user selection Embedded software Modeling Tool 1 Framework 2 Configurablemetamodeling tool(DSM tool’s toolkit) Embedded software write “C” Traditional Environmentis Fluid Present DSM as a pain-killer Focus on creative developments Framework 1
DSLs and Cognitive Dimensions http://www.cl.cam.ac.uk/~afb21/CognitiveDimensions/
Question to the Workshop What are other approaches to • Foster usability • Sustain deployment • Reduce initial cost of DSM tools? Knowing • To foster usability we do escape semantics, convention over configuration, unknown, only-one-view DSL, default behaviors • To sustain deployment we do test-driven metamodeling • To Reduce initial cost we use a configurable modeling tool
C D E DSM Capsule Technologist domain Product domain Software Engineering Product Variations Framework DSM capsule Marketing “classic” designand modeling Market Evolution
C D E DSM Development Life Cycle Product Variations Product Line Research New Product Only Once Development SoftwareEngineering SoftwareEngineering Simulink, etc... Product Line Development Metamodeling Domain-Specific Modeling
Metamodeling Delay New problem range higher value Well-known problem range lower value Today’s practices Yesterday’spractices Metamodeling delay Tomorrow’s tool Today’stool Escape semanticsbridge the gap
Full2Way Escape Semantics 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. tu : bit dimmer : integer [0..127] 256 Lightingequipment dimmer : integer [0..127] 16 127 group : bit pattern 72
Testing DSLs framework build system appli. model appli. source modelingtool metamodel input executable product expected output actual output test management system test result