Date post: | 09-Jan-2017 |
Category: |
Software |
Upload: | benoit-combemale |
View: | 74 times |
Download: | 0 times |
Modeling for SustainabilitySeminar at Lancaster UniversityDecember 5, 2016
Benoit Combemale (Inria & Univ. Rennes 1)http://people.irisa.fr/[email protected]@bcombemale
DiverSE Research Group
DiverSE team (env. 40 people)- 8 faculty members- 1 Research Engineer- ~20 PhD students- ~6 Software Engineers- ~6 Post doc
- 2Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Complex Software-Intensive Systems
Software intensive systems
- 3
• Multi-engineering approach• Some forms of domain-specific modeling • Software as integration layer• Openness and dynamicity
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Aerodynamics
Authorities
Avionics
SafetyRegulations
Airlines
PropulsionSystem
MechanicalStructure
EnvironmentalImpact
NavigationCommunications
Human-Machine
Interaction
4
Multipleconcerns,
stakeholders, tools and methods
5
Aerodynamics
Authorities
Avionics
SafetyRegulations
Airlines
PropulsionSystem
MechanicalStructure
EnvironmentalImpact
NavigationCommunications
Human-Machine
Interaction
Heterogeneous Modeling
Model-Driven Engineering (MDE)
Distribution
« Service Provider Manager »
Notification Alternate Manager
« Recovery Block Manager »
ComplaintRecovery Block
Manager
« Service Provider
Manager »
Notification Manager
« Service Provider Manager »
Complaint Alternate Manager
« Service Provider
Manager »
Complaint Manager
« Acceptance Test Manager »
Notification Acceptance Test
Manager
« Acceptance Test Manager »
Complaint Acceptance Test
Manager
« Recovery Block Manager »
NotificationRecovery Block
Manager
« Client »
User Citizen Manager
Fault tolerance Roles
ActivitiesViews
Contexts
Security
Functional behavior
Bookstate : StringUser
borrow
return
deliver
setDamagedreserve
Use case
PlatformModel Design
ModelCode Model
Change one Aspect and Automatically Re-Weave:From Software Product Lines…..to Dynamically Adaptive Systems
- 6Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Model-Driven Engineering (MDE)
- 7
J. Whittle, J. Hutchinson, and M. Rouncefield, “The State of Practice in Model-Driven Engineering,” IEEE Software, vol. 31, no. 3, 2014, pp. 79–85.
"Perhaps surprisingly, the majority of MDE examples in our study followed domain-specific modeling paradigms"
Distribution
« Service Provider Manager »
Notification Alternate Manager
« Recovery Block Manager »
ComplaintRecovery Block
Manager
« Service Provider
Manager »
Notification Manager
« Service Provider Manager »
Complaint Alternate Manager
« Service Provider
Manager »
Complaint Manager
« Acceptance Test Manager »
Notification Acceptance Test
Manager
« Acceptance Test Manager »
Complaint Acceptance Test
Manager
« Recovery Block Manager »
NotificationRecovery Block
Manager
« Client »
User Citizen Manager
Fault tolerance Roles
ActivitiesViews
Contexts
Security
Functional behavior
Bookstate : StringUser
borrow
return
deliver
setDamagedreserve
Use case
PlatformModel Design
ModelCode Model
Change one Aspect and Automatically Re-Weave:From Software Product Lines…..to Dynamically Adaptive Systems
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Model-Driven Engineering (MDE)
- 8
Engineering Modeling Languages: Turning Domain Knowledge into Tools, by Benoit Combemale, Robert B. France, Jean-Marc Jézéquel, Bernhard Rumpe, Jim R.H. Steel, and Didier Vojtisek. Chapman and Hall/CRC, pp.398, 2016. Companion website: http://mdebook.irisa.fr
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Model-Driven Engineering (MDE)
- 9
Editors(textuals, graphicals, …)
Test generators
Simulators
Analyzers
Refactoring
Checkers(static & dynamics)
Translators
Compilers
Code generators
Etc.
Engineering Modeling Languages: Turning Domain Knowledge into Tools, by Benoit Combemale, Robert B. France, Jean-Marc Jézéquel, Bernhard Rumpe, Jim R.H. Steel, and Didier Vojtisek. Chapman and Hall/CRC, pp.398, 2016. Companion website: http://mdebook.irisa.fr
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
- 10
J-M. Favre, D. Gasevic, R. Lämmel, and E. Pek. "Empirical language analysisin software linguistics," In Software Language Engineering, volume 6563 of LNCS, pages 316–326. Springer, 2011.
"Software languages are software too"
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Software Language Engineering (SLE)
- 11
• Application of systematic, disciplined, and measurable approaches to the development, deployment, use, and maintenance of software languages
• Supported by various kind of "language workbench"• Eclipse EMF, Xtext, Sirius, Melange, GEMOC, Papyrus• Jetbrain’s MPS• Spoofax• MS DSL Tools• Etc.
• Various shapes and ways to implement software languages• External, internal or embedded DSLs, Profile, etc.• Grammar, metamodel, ontology, etc.
• More and more literature, a dedicated Intl. conference (ACM SLE, cf. http://www.sleconf.org)…
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
- 12
J. Whittle, J. Hutchinson, and M. Rouncefield, “The State of Practice in Model-Driven Engineering,” IEEE Software, vol. 31, no. 3, 2014, pp. 79–85.
"A clear challenge, then, is how to integrate
multiple DSLs."
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Globalization of Modeling Languages
- 13
Supporting coordinated use of modelinglanguages leads to what we call the globalizationof modeling languages, that is, the use of multiple modeling languages to support coordinateddevelopment of diverse aspects of a system.
Benoit Combemale, Julien DeAntoni, Benoit Baudry, Robert B. France, Jean-Marc Jezequel, Jeff Gray, "Globalizing Modeling Languages," Computer, vol. 47, no. 6, pp. 68-71, June, 2014
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Globalization of Modeling Languages
- 14
• DSMLs are developed in an independent mannerto meet the specific needs of domain experts,
• DSMLs should also have an associatedframework that regulates interactions needed to support collaboration and work coordination across different system domains.
Benoit Combemale, Julien DeAntoni, Benoit Baudry, Robert B. France, Jean-Marc Jezequel, Jeff Gray, "Globalizing Modeling Languages," Computer, vol. 47, no. 6, pp. 68-71, June, 2014
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Globalization of Modeling Language
- 15
• Context: new emerging DSML in open world⇒ impossible a priori unification⇒ require a posteriori globalization
• Objective: socio-technical coordination to support interactions across different system aspects
⇒ Language-based support for technical integration of multiples domains⇒ Language-based support for social translucence
• Community: the GEMOC initiative (cf. http://gemoc.org)
"Globalizing Domain-Specific Languages," Combemale, B., Cheng, B.H.C., France, R.B., Jézéquel, J.-M., Rumpe, B. (Eds.). Springer, Programming and Software Engineering, Vol. 9400, 2015.
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
The GEMOC Initiative
- 16
An open and international initiative to• coordinate (between members)• disseminate (on behalf the members)
worldwide R&D effortson the globalization of modeling languages
http://gemoc.org
@gemocinitiative
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
The GEMOC Studio
- 17
Design and integrate your executable DSMLs
http://gemoc.org/studioLanguageWorkbench
ModelingWorkbench
Edit, simulate and animate your heterogeneous models
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
The GEMOC Community
- 18Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
- 19
"On the unification power of models"
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
⎯ Jean Bézivin
From Software Systems
- 20
• software design models for functional and non-functional properties
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Engineers
System Models
Software
To Cyber-Physical Systems
- 21
Engineers
System Models Cyber-PhysicalSystem
sensors actuators
Physical System
Software
<<controls>><<senses>>
• multi-engineering design models for global system properties
• models @ runtime (i.e., included into the control loop) for dynamic adaptations
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
To Smart Cyber-Physical Systems
- 22
Engineers
System Models SmartCyber-Physical System
Context
sensors actuators
Physical System
Software
<<controls>><<senses>>
• analysis models (incl. large-scale simulation, constraint solver) of the surrounding context related to global phenomena (e.g. physical, economical, and social laws)
• predictive models (predictive techniques from AI, machine learning, SBSE, fuzzy logic)
• user models (incl., general public/community preferences) and regulations (political laws)
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
An MDE Approach for Smart CPS Development
- 23
• Convergence of engineering and scientific models
• A modeling framework to support the integration of data from sensors, open data, laws, regulations, scientific models (computational and data-intensive sciences), engineering models and preferences.
• Domain-specific languages for socio-technical coordination• to engage engineers, scientist, decision makers, communities
and general public• to integrate analysis/predictive/user models into the control loop
of smart CPS
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Application to Sustainability Systems
- 24
• Sustainability systems are smart-CPS for managing resource production, transport and consumption, for the sake of sustainability
• Ex: smart grids, smart city/home/farming, etc.
• Sustainability systems must balance trade-offs between the social, technological, economic, and environmental pillars of sustainability
• involve complex decision-making with heterogeneous analysis models, and large volumes of disparate data varying in temporal scale and modality
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Application to Sustainability Systems
- 25
• Scientific models are used to understand sustainability concerns and evaluate alternatives (what-if/for scenarios)
• Engineering models are used to support the development and runtime adaptation of sustainability systems.
How to integrate engineering and scientific models in a synergistic fashion to support informed decisions, broader engagement, and dynamic adaptation in sustainability systems?
B. Combemale, B. Cheng, A. Moreira, J.-M. Bruel, J. Gray, "Modeling for Sustainability," MiSE@ICSE 2016
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Using MDE in Sustainability Systems
- 26
The Sustainability Evaluation ExperienceR (SEER)⎯ 1st Modelling For Sustainability Workshop @ Bellairs, 2016
Policy makers(e.g., mayor)
Communities(e.g., farmers)
General public(e.g., individuals)
open data regulations
physical laws
explore the future
andmake it happen
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Using MDE in Sustainability Systems
- 27
• Smart Cyber-Physical Systems
Sustainability System(e.g., smart farm)
(
Context
sensors actuators
Production/Consumption
System (e.g. farm)
Software
<<controls>><<senses>>
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Using MDE in Sustainability Systems
- 28
• Based on informed decisions• with environmental, social and economic laws• with open data
Heuristics-Laws
Scientists
Open DataScientific Models / Physical Laws (economic, environmental, social)
SEER
Sustainability System(e.g., smart farm)
(
Context
sensors actuators
Production/Consumption
System (e.g. farm)
Software
<<controls>><<senses>><<supplement
field data>>
<<feed>>
<<integrate>>
<<explore model relations (tradeoff,
impact and conflict)>>
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Using MDE in Sustainability Systems
- 29
• Providing a broader engagement• with "what-if" scenarios for general public and policy makers
Heuristics-Laws
Scientists
Open Data
General Public(e.g., individuals) Policy Makers
(e.g., mayor)
MEEs("what-if" scenarios)
Scientific Models / Physical Laws (economic, environmental, social)
SEER
Sustainability System(e.g., smart farm)
(
Context
sensors actuators
Production/Consumption
System (e.g. farm)
Software
<<controls>><<senses>>Communities(e.g., farmers)
<<supplementfield data>>
<<provide configuration, preferences, questions>>
<<present possible future and variable indicators>>
<<feed>>
<<integrate>>
<<explore model relations (tradeoff,
impact and conflict)>>
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Heuristics-Laws
Scientists
Open Data
General Public(e.g., individuals) Policy Makers
(e.g., mayor)
MEEs("what-if" scenarios)
Scientific Models / Physical Laws (economic, environmental, social)
SEER
Sustainability System(e.g., smart farm)
(
Context
sensors actuators
Production/Consumption
System (e.g. farm)
Software
<<controls>><<senses>>Communities(e.g., farmers)
<<adapt>>
<<supplementfield data>>
<<provide configuration, preferences, questions>>
<<present possible future and variable indicators>>
<<feed>>
<<integrate>>
<<explore model relations (tradeoff,
impact and conflict)>>
Using MDE in Sustainability Systems
- 30
• Supporting automatic adaptation• for dynamically adaptable systems
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Using MDE in Sustainability Systems
- 31
• Application to health, farming system, smart grid…
Heuristics-Laws
Scientists
Open Data
General Public(e.g., individuals) Policy Makers
(e.g., mayor)
MEEs("what-if" scenarios)
Scientific Models / Physical Laws (economic, environmental, social)
SEER
Sustainability System(e.g., smart farm)
(
Context
sensors actuators
Production/Consumption
System (e.g. farm)
Software
<<controls>><<senses>>Communities(e.g., farmers)
<<adapt>>
<<supplementfield data>>
<<provide configuration, preferences, questions>>
<<present possible future and variable indicators>>
<<feed>>
<<integrate>>
<<explore model relations (tradeoff,
impact and conflict)>>
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Heuristics-Laws
Scientists
Open Data
General Public(e.g., individuals) Policy Makers
(e.g., mayor)
MEEs("what-if" scenarios)
Scientific Models / Physical Laws (economic, environmental, social)
SEER
Sustainability System(e.g., smart farm)
(
Context
sensors actuators
Production/Consumption
System (e.g. farm)
Software
<<controls>><<senses>>Communities(e.g., farmers)
<<adapt>>
<<supplementfield data>>
<<provide configuration, preferences, questions>>
<<present possible future and variable indicators>>
<<feed>>
<<integrate>>
<<explore model relations (tradeoff,
impact and conflict)>>
Farming System Modeling
- 32
Farmers
Agronomist
IrrigationSystem
in collaboration with
Jean-Michel Bruel, Benoit Combemale, Ileana Ober, Hélène Raynal, "MDE in Practice for Computational Science," International Conference on Computational Science (ICCS), 2015.
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
- 33
https://github.com/gemoc/farmingmodeling
Farming System Modeling
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Conclusion
- 34
• From MDE to SLE• Language workbenches support DS(M)L development
• On the globalization of modeling languages• Integrate heterogeneous models representing different
engineering concerns• Language interfaces to support structural and behavioral
relationships between domains (i.e., DSLs)
• From software systems to smart CPS• Interactions with the physical world limited to (i.e., fixed, in closed
world) control laws and data from the sensors• What about the broader context in which the system involves?
• Physical / social / economic laws • Predictive models• Regulations, user preferences
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Conclusion
- 35
• Require to integrate scientific models in the control loop of smart CPS to provide more informed decisions, a broader engagement, and eventually relevant runtime reconfigurations
• SEER is a particular instantiation of such a vision for sustainability systems
Software is eating the world, but…may the world drive software!
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
Open Challenges
- 36
• Diversity/complexity of DSL relationships• far beyond structural and behavioral alignment, refinement,
decomposition• Separation of concerns vs. Zoom-in/Zoom-out
• Live and collaborative modeling• minimize the round trip between the DSL specification, the
model, and its application (interpretation/compilation)• Model experiencing environnements• What-if/for scenarios
• Integration of analysis and predictive models into DSL semantics
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016
- 37
"If you believe that language design can significantlyaffect the quality of software systems, then it shouldfollow that language design can also affect the quality of energy systems. And if the quality of suchenergy systems will, in turn, affect the livability of our planet, then it’s critical that the languagedevelopment community give modeling languagesthe attention they deserve." − Bret Victor (Nov., 2015), http://worrydream.com/ClimateChange
Modeling for Sustainability – B. Combemale (Univ. Rennes 1) – December 4th, 2016