SlideShare a Scribd company logo
1 of 16
Download to read offline
When Scientific Software Meets
(Model-Driven) Software Engineering
A Call for Actions!
Prof. Benoit Combemale
University of Rennes 1
DiverSE team (IRISA & Inria)
http://combemale.fr / @bcombemale
(Scientific) Software Is Eating the World
2
Scientific Computing
In science
○ holistic view of wicked problems
○ what-if scenarios
In industry
○ design of complex systems
○ digital twins
In society
○ decision and policy makers
○ broader engagement
○ education
3
Sound
knowledge
Innovative
system
Smart
people
● Use of advanced computing capabilities
● To understand and solve
○ scientific problems (e.g., biological, physical, and social),
○ engineering problems, and
○ humanities problems.
● And predict the behavior or the outcome of a physical system,
being natural or man-made.
Scientific Computing
4
Scientific Software
Rely on the development of mathematical models to understand
physical systems through their simulations.
● Mathematical models belong to numerical models
(continuous or discrete) and analytics.
● Simulations of mathematical models correspond to the
execution of the computer programs containing these
models, the so-called ``simulation codes''.
● Scientific software = software dedicated to scientific
computing and simulation.
5
Scientific Software Specificities
● Specific software
○ highly iterative process,
○ large dataset,
○ complex compilation chains and deployments,
○ long lifetime application,
○ usually, a means not an end.
● Specific stakeholders
○ developers: scientists (physicist, mathematicians…), engineers, numerical analyst…
○ end-users: from the developper itself to decision makers and the general public
○ funders: possibly third parties, without any background on software development
○ …
6
Scientific Software Development
7
● Scientific V-Model subsumes SE V-Model
● Multidisciplinary development
● Collaborative (time/space) development
● Highly configurable / variable mathematical models
When Scientific Software Meets Software Engineering
D. Leroy, J. Sallou, J. Bourcier and B. Combemale. Computer, vol. 54, no. 12, pp. 60-71, 2021.
Preprint: https://hal.inria.fr/hal-03318348v1
Software Languages in Scientific Computing
The more general-purpose the language is the more flexibility it will provide, but
also the more rigorous engineering principles and V&V activities it will require from
the language user
8
When Scientific Software Meets Software Engineering
D. Leroy, J. Sallou, J. Bourcier and B. Combemale. Computer, vol. 54, no. 12, pp. 60-71, 2021.
Preprint: https://hal.inria.fr/hal-03318348v1
Momentum
● Ever-increasing intrinsic complexity of mathematical models
● Broader engagement of various heterogeneous stakeholders
● Numerous scenarios to evaluate
● Ever more efficient and large simulations
⇒ It urges to establish the required software engineering
foundations, tools and methods for scientific computing
⇒ What about MDE for Scientific Computing?
9
Call For Actions!
10
Opportunities
● Increasing demand
○ Science-driven society
○ Acceleration of natural phenomena
○ Breakthroughs in engineering required innovative thinking
● Technology evolution
○ Continuous evolution on computing capabilities
○ Progresses on M&S tools and methods
○ Breakthroughs on development environments (e.g., language servers)
○ Cloud infrastructure and web-based technologies as key enablers
11
Objectives
● EU leadership within the scientific community
○ proper programming foundations
○ tools and methods for collaborative, effective and reliable development
● Competitiveness of the EU industry
● Broader engagement with decision and policy makers, and the general public
12
Roadmap (tentative)
● Programming Foundations
● Scientific Software Validation and Verification
● AI-enhanced Scientific Computing
● Scientific Computing Virtual Lab
13
Roadmap (tentative)
● Programming Foundations
○ Domain-Specific Languages for simulation processes and compilation chains
○ Sound combination of literate, exploratory, live and polyglot programming
○ Language constructs for heterogeneous model coupling
○ Variability management for input data, source code, and compilation chain
○ Reproducibility and deep variability management
● Scientific Software Validation and Verification
○ Testing framework and design-by-contract
○ Tradeoff with privacy
○ Experimental frame and correctness envelope for scientific models
○ Compiler V&V
● AI-enhanced Scientific Computing
○ AI-based simulation
○ Predictive models for design-space exploration
○ AI-based assistants/recommenders and tradeoff analysis tools
○ Transfer learning for reuse
○ Multi-fidelity and frugality
● Scientific Computing Virtual Lab
○ Programming interface (e.g., computational notebooks)
○ Web-based, cloud-native, collaborative and distributed IDE
○ Digital twin framework
14
Expected Impact
● Establish software engineering principles for engineering scientific software
● Consolidate research activities into open-source tools accessible to
scientists, engineers, decision makers and the general public
● Establish a strong leadership in the scientific, technological and industrial
communities
15
MDE for Scientific Computing: a vision / roadmap
▸ Timely and relevant
▸ Impactful
▸ Unique opportunity for the MDE community
16
Scientific Computing
▸ In science, engineering and society
▸ Complex and specific SDLC
▸ Requires proper software engineering principles
(Domain-Specific) Software Languages
▸ Domain-specific abstractions
▸ Descriptive, Prescriptive and Predictive models
▸ Support for coordination, debugging, approximation…
Take Away Messages

More Related Content

Similar to When Scientific Software Meets (Model-Driven) Software Engineering

Summer School DSL 2013 - SpreadSheet Engineering
Summer School DSL 2013 - SpreadSheet EngineeringSummer School DSL 2013 - SpreadSheet Engineering
Summer School DSL 2013 - SpreadSheet EngineeringJácome Cunha
 
You're the Engineer! Think Big!
You're the Engineer! Think Big!You're the Engineer! Think Big!
You're the Engineer! Think Big!Fatih Karatana
 
How ChatGPT and AI-assisted coding changes software engineering profoundly
How ChatGPT and AI-assisted coding changes software engineering profoundlyHow ChatGPT and AI-assisted coding changes software engineering profoundly
How ChatGPT and AI-assisted coding changes software engineering profoundlyPekka Abrahamsson / Tampere University
 
e-Business - SE trends
e-Business - SE trendse-Business - SE trends
e-Business - SE trendsVladimir Kotov
 
Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618Economic Strategy Institute
 
Inria - Software assets - Energy
Inria - Software assets - EnergyInria - Software assets - Energy
Inria - Software assets - EnergyInria
 
2014 01-ticosa
2014 01-ticosa2014 01-ticosa
2014 01-ticosaPharo
 
Information about computer engineering
Information about computer engineeringInformation about computer engineering
Information about computer engineeringgargee123
 
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptxGEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptxGeetha982072
 
Антон Кириллов, ZeptoLab
Антон Кириллов, ZeptoLabАнтон Кириллов, ZeptoLab
Антон Кириллов, ZeptoLabDiana Dymolazova
 
Software Engineering: Education and Industry in Portugal
Software Engineering: Education and Industry in PortugalSoftware Engineering: Education and Industry in Portugal
Software Engineering: Education and Industry in PortugalCarlos J. Costa
 
CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...Grigori Fursin
 
Corvalius - More about us
Corvalius - More about usCorvalius - More about us
Corvalius - More about usCorvalius
 
Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...
Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...
Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...Tomasz Bednarz
 
Rencontres Inria Industrie - Qualité logicielle - OWF13
Rencontres Inria Industrie - Qualité logicielle - OWF13Rencontres Inria Industrie - Qualité logicielle - OWF13
Rencontres Inria Industrie - Qualité logicielle - OWF13Inria
 
Why Computer Science.pptx
Why Computer Science.pptxWhy Computer Science.pptx
Why Computer Science.pptxslidecell212100
 
ModelWriter Presentation International 01-07-2015
ModelWriter Presentation International 01-07-2015ModelWriter Presentation International 01-07-2015
ModelWriter Presentation International 01-07-2015Ferhat Erata
 

Similar to When Scientific Software Meets (Model-Driven) Software Engineering (20)

Summer School DSL 2013 - SpreadSheet Engineering
Summer School DSL 2013 - SpreadSheet EngineeringSummer School DSL 2013 - SpreadSheet Engineering
Summer School DSL 2013 - SpreadSheet Engineering
 
You're the Engineer! Think Big!
You're the Engineer! Think Big!You're the Engineer! Think Big!
You're the Engineer! Think Big!
 
OA centre of excellence
OA centre of excellenceOA centre of excellence
OA centre of excellence
 
How ChatGPT and AI-assisted coding changes software engineering profoundly
How ChatGPT and AI-assisted coding changes software engineering profoundlyHow ChatGPT and AI-assisted coding changes software engineering profoundly
How ChatGPT and AI-assisted coding changes software engineering profoundly
 
e-Business - SE trends
e-Business - SE trendse-Business - SE trends
e-Business - SE trends
 
Tackling Deep Software Variability Together
Tackling Deep Software Variability TogetherTackling Deep Software Variability Together
Tackling Deep Software Variability Together
 
Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618
 
Inria - Software assets - Energy
Inria - Software assets - EnergyInria - Software assets - Energy
Inria - Software assets - Energy
 
2014 01-ticosa
2014 01-ticosa2014 01-ticosa
2014 01-ticosa
 
Information about computer engineering
Information about computer engineeringInformation about computer engineering
Information about computer engineering
 
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptxGEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
 
Антон Кириллов, ZeptoLab
Антон Кириллов, ZeptoLabАнтон Кириллов, ZeptoLab
Антон Кириллов, ZeptoLab
 
Software Engineering: Education and Industry in Portugal
Software Engineering: Education and Industry in PortugalSoftware Engineering: Education and Industry in Portugal
Software Engineering: Education and Industry in Portugal
 
CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...
 
Corvalius - More about us
Corvalius - More about usCorvalius - More about us
Corvalius - More about us
 
NUS PhD e-open day 2020
NUS PhD e-open day 2020NUS PhD e-open day 2020
NUS PhD e-open day 2020
 
Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...
Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...
Platform for Big Data Analytics and Visual Analytics: CSIRO use cases. Februa...
 
Rencontres Inria Industrie - Qualité logicielle - OWF13
Rencontres Inria Industrie - Qualité logicielle - OWF13Rencontres Inria Industrie - Qualité logicielle - OWF13
Rencontres Inria Industrie - Qualité logicielle - OWF13
 
Why Computer Science.pptx
Why Computer Science.pptxWhy Computer Science.pptx
Why Computer Science.pptx
 
ModelWriter Presentation International 01-07-2015
ModelWriter Presentation International 01-07-2015ModelWriter Presentation International 01-07-2015
ModelWriter Presentation International 01-07-2015
 

More from Benoit Combemale

Table ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciencesTable ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciencesBenoit Combemale
 
SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019Benoit Combemale
 
Breathe Life Into Your IDE
Breathe Life Into Your IDEBreathe Life Into Your IDE
Breathe Life Into Your IDEBenoit Combemale
 
Model Execution: Past, Present and Future
Model Execution: Past, Present and FutureModel Execution: Past, Present and Future
Model Execution: Past, Present and FutureBenoit Combemale
 
Execution Framework of the GEMOC Studio
Execution Framework of the GEMOC StudioExecution Framework of the GEMOC Studio
Execution Framework of the GEMOC StudioBenoit Combemale
 
Smart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering ModelsSmart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering ModelsBenoit Combemale
 
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...Benoit Combemale
 
Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?Benoit Combemale
 
Introduction of the SLE'17 conference
Introduction of the SLE'17 conferenceIntroduction of the SLE'17 conference
Introduction of the SLE'17 conferenceBenoit Combemale
 
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMSEXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMSBenoit Combemale
 
Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)Benoit Combemale
 
Sound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of ViewSound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of ViewBenoit Combemale
 
Modeling for Sustainability
Modeling for SustainabilityModeling for Sustainability
Modeling for SustainabilityBenoit Combemale
 
Dynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented ModelingDynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented ModelingBenoit Combemale
 
Model executability within the GEMOC Studio
Model executability within the GEMOC StudioModel executability within the GEMOC Studio
Model executability within the GEMOC StudioBenoit Combemale
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...Benoit Combemale
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...Benoit Combemale
 
Concurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLConcurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLBenoit Combemale
 
Experimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOCExperimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOCBenoit Combemale
 
The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)Benoit Combemale
 

More from Benoit Combemale (20)

Table ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciencesTable ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciences
 
SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019
 
Breathe Life Into Your IDE
Breathe Life Into Your IDEBreathe Life Into Your IDE
Breathe Life Into Your IDE
 
Model Execution: Past, Present and Future
Model Execution: Past, Present and FutureModel Execution: Past, Present and Future
Model Execution: Past, Present and Future
 
Execution Framework of the GEMOC Studio
Execution Framework of the GEMOC StudioExecution Framework of the GEMOC Studio
Execution Framework of the GEMOC Studio
 
Smart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering ModelsSmart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering Models
 
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
 
Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?
 
Introduction of the SLE'17 conference
Introduction of the SLE'17 conferenceIntroduction of the SLE'17 conference
Introduction of the SLE'17 conference
 
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMSEXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
 
Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)
 
Sound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of ViewSound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of View
 
Modeling for Sustainability
Modeling for SustainabilityModeling for Sustainability
Modeling for Sustainability
 
Dynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented ModelingDynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented Modeling
 
Model executability within the GEMOC Studio
Model executability within the GEMOC StudioModel executability within the GEMOC Studio
Model executability within the GEMOC Studio
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
 
Concurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLConcurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCML
 
Experimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOCExperimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOC
 
The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)
 

Recently uploaded

BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 

Recently uploaded (20)

BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 

When Scientific Software Meets (Model-Driven) Software Engineering

  • 1. When Scientific Software Meets (Model-Driven) Software Engineering A Call for Actions! Prof. Benoit Combemale University of Rennes 1 DiverSE team (IRISA & Inria) http://combemale.fr / @bcombemale
  • 2. (Scientific) Software Is Eating the World 2
  • 3. Scientific Computing In science ○ holistic view of wicked problems ○ what-if scenarios In industry ○ design of complex systems ○ digital twins In society ○ decision and policy makers ○ broader engagement ○ education 3 Sound knowledge Innovative system Smart people
  • 4. ● Use of advanced computing capabilities ● To understand and solve ○ scientific problems (e.g., biological, physical, and social), ○ engineering problems, and ○ humanities problems. ● And predict the behavior or the outcome of a physical system, being natural or man-made. Scientific Computing 4
  • 5. Scientific Software Rely on the development of mathematical models to understand physical systems through their simulations. ● Mathematical models belong to numerical models (continuous or discrete) and analytics. ● Simulations of mathematical models correspond to the execution of the computer programs containing these models, the so-called ``simulation codes''. ● Scientific software = software dedicated to scientific computing and simulation. 5
  • 6. Scientific Software Specificities ● Specific software ○ highly iterative process, ○ large dataset, ○ complex compilation chains and deployments, ○ long lifetime application, ○ usually, a means not an end. ● Specific stakeholders ○ developers: scientists (physicist, mathematicians…), engineers, numerical analyst… ○ end-users: from the developper itself to decision makers and the general public ○ funders: possibly third parties, without any background on software development ○ … 6
  • 7. Scientific Software Development 7 ● Scientific V-Model subsumes SE V-Model ● Multidisciplinary development ● Collaborative (time/space) development ● Highly configurable / variable mathematical models When Scientific Software Meets Software Engineering D. Leroy, J. Sallou, J. Bourcier and B. Combemale. Computer, vol. 54, no. 12, pp. 60-71, 2021. Preprint: https://hal.inria.fr/hal-03318348v1
  • 8. Software Languages in Scientific Computing The more general-purpose the language is the more flexibility it will provide, but also the more rigorous engineering principles and V&V activities it will require from the language user 8 When Scientific Software Meets Software Engineering D. Leroy, J. Sallou, J. Bourcier and B. Combemale. Computer, vol. 54, no. 12, pp. 60-71, 2021. Preprint: https://hal.inria.fr/hal-03318348v1
  • 9. Momentum ● Ever-increasing intrinsic complexity of mathematical models ● Broader engagement of various heterogeneous stakeholders ● Numerous scenarios to evaluate ● Ever more efficient and large simulations ⇒ It urges to establish the required software engineering foundations, tools and methods for scientific computing ⇒ What about MDE for Scientific Computing? 9
  • 11. Opportunities ● Increasing demand ○ Science-driven society ○ Acceleration of natural phenomena ○ Breakthroughs in engineering required innovative thinking ● Technology evolution ○ Continuous evolution on computing capabilities ○ Progresses on M&S tools and methods ○ Breakthroughs on development environments (e.g., language servers) ○ Cloud infrastructure and web-based technologies as key enablers 11
  • 12. Objectives ● EU leadership within the scientific community ○ proper programming foundations ○ tools and methods for collaborative, effective and reliable development ● Competitiveness of the EU industry ● Broader engagement with decision and policy makers, and the general public 12
  • 13. Roadmap (tentative) ● Programming Foundations ● Scientific Software Validation and Verification ● AI-enhanced Scientific Computing ● Scientific Computing Virtual Lab 13
  • 14. Roadmap (tentative) ● Programming Foundations ○ Domain-Specific Languages for simulation processes and compilation chains ○ Sound combination of literate, exploratory, live and polyglot programming ○ Language constructs for heterogeneous model coupling ○ Variability management for input data, source code, and compilation chain ○ Reproducibility and deep variability management ● Scientific Software Validation and Verification ○ Testing framework and design-by-contract ○ Tradeoff with privacy ○ Experimental frame and correctness envelope for scientific models ○ Compiler V&V ● AI-enhanced Scientific Computing ○ AI-based simulation ○ Predictive models for design-space exploration ○ AI-based assistants/recommenders and tradeoff analysis tools ○ Transfer learning for reuse ○ Multi-fidelity and frugality ● Scientific Computing Virtual Lab ○ Programming interface (e.g., computational notebooks) ○ Web-based, cloud-native, collaborative and distributed IDE ○ Digital twin framework 14
  • 15. Expected Impact ● Establish software engineering principles for engineering scientific software ● Consolidate research activities into open-source tools accessible to scientists, engineers, decision makers and the general public ● Establish a strong leadership in the scientific, technological and industrial communities 15
  • 16. MDE for Scientific Computing: a vision / roadmap ▸ Timely and relevant ▸ Impactful ▸ Unique opportunity for the MDE community 16 Scientific Computing ▸ In science, engineering and society ▸ Complex and specific SDLC ▸ Requires proper software engineering principles (Domain-Specific) Software Languages ▸ Domain-specific abstractions ▸ Descriptive, Prescriptive and Predictive models ▸ Support for coordination, debugging, approximation… Take Away Messages