SlideShare a Scribd company logo
Explicit Composition
Constructs in DSLs
The case of the epidemiological language Kendrick
Bùi Thị Mai Anh, Nick Papoulias, Mikal Ziane
Serge Stinckwich
IWST 2016, Prague
Cameroon
Université de
Yaoundé 1
Vietnam
IFI-VNU & USTH
Morocco
LMDP, Université Cadi Ayyad de Marrakech
Senegal
UGB (Université Gaston Berger de Saint-
Louis)
Senegal
UCAD (Université Cheikh Anta Diop de
Dakar)
65 members + Phd Students: Professors, Researchers, Associates (26 HDR),1 research engineer, 3 admin
staff, 3 post-docts and 45 PhD students
Texte
International	Research	Unit	UMMISCO	Mathematical	and	Computational	Modeling	of	Complex	
Systems	Laboratory
3
UMMISCO’s	approach	is	based	on	the	building	of	models	that	are	abstract	
(simplified)	representation	of	a	system	which	supports	answering	questions	about	
the	system.				
question
System
Model
represents
3	Key	application	domains		:(i)	Emerging	diseases		(ii)	Climate	change	and	natural	hazards.(iii)	
Ecosystems	and	natural	resources.
Simulation
interprets/analyses
Analysis or
UMMISCO East-Central Africa Unit (Yaoundé)
Research Activities on Model-Driven Epidemiology
1 Professor (Maurice Tchuenté)
2 researchers from UMMISCO/Bondy (3 months in 2016)
6 PhD students
EPICAM KENDRICK
Epidemiological
Surveillance
System
Modeling&Simulation
of Epidemiology Models
Process
Mining
Ontologies
Domain-
Specific
Languages
and Tools
Model-
Driven
Engineering
Multi-Agent
Simulation
https://github.com/UMMISCO/EPICAM
EPICAM is a Model-Driven Engineering Platform
for Epidemiological Surveillance System
Deployed on 25 sites
around Cameroon
3 PhD students from
Yaoundé 1 University involved
Applied to Tuberculosis but adaptable to other diseases
Model-Driven Engineering
that allows automatic generation
of the platform
http://ummisco.github.io/kendrick/
Kendrick is a platform for
epidemiological modeling and analysis
Visualizations
It helps epidemiologists craft
custom analyses cheaply
BrowsersModels
2 PhD students from
Yaoundé 1 University involved
What is Epidemiology
Modeling ?
• Building mathematical
models to study
speed of a disease in
a population
• Compartmental
models
Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick
SIR Model
Models Simulations
• 3 ways to do simulations:
• Population-level: deterministic simulation (ODEs
solver)
• Individual-Level: stochastic simulation (Gillepsie
simulation)
• Agent-based level
Multi-concerns Models of
Epidemiology
• Seasonality
• Multi-hosts
• Multi-strains
• Age/Risk structure
• Spatial aspect
• Control strategies
Multi-hosts concerns
Multi-strains concerns
Spatial concerns
Control Strategies
concerns
How epidemiologists
are building their
models ?
SEIRS model
Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick
Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick
Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick
Concerns are scattered
Concerns are scattered
Concerns are tangled
Concerns are scattered
Concerns are tangled
Not modular, not reusable
Separation of Concerns in
Epidemiology Modeling
• Decompose highly-coupled monolithic models into
modular concerns
• define concerns with as few dependencies as
possible
• Combine concerns as freely as possible
Solution
• Generic mathematical meta-model that provides
abstractions to define epidemiological concerns
• Models are expressed as Stochastic Automata
• Composition operator (tensor sum)
• Transforms concerns to modify automata
Tensor Composition of a
spatial concern with SIR model
Kendrick DSL
• Implemented the generic mathematical meta-
models in Smalltalk
• Embedded DSL in Pharo
• Allows definition and composition of concerns
• https://github.com/UMMISCO/kendrick
Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick
Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick
Kendrick
Demo
If you want to try Kendrick
download a MOOSE 6.0 image from
http://agilevisualization.com/
Participants
• Fabrice Atrevi (IFI-VN)
• Bui Thi Mai Anh (UMMISCO-VN)
• Ho Tuong Vinh (UMMISCO-VN)
• Cheikhou Oumar Ka (UMMISCO-Senegal)
• Nick Papoulias (UMMISCO-France)
• Benjamin Roche (UMMISCO-France)
• Aboubakar Sidiki (UMMISCO-Cameroon)
• Serge Stinckwich (UMMISCO-France)
• Mikal Ziane (LIP6, UPMC)
Conclusions
• Kendrick is an embedded DSL for epidemiology
modeling/simulations that promote separation of
concerns
• Chapter 15 in “Agile Visualisation Book”: http://
agilevisualization.com/
• We rely a lot on the Pharo community: PolyMath,
Roassal, PetitParser, Moose, STon, SmalltalkCI
Ongoing Work
• GPU (VirtualGPU) implementation of stochastic
algorithms - Cheik Oumar Ka
• Network concerns - Aboubakar Sidiki (April-May
2016)
• Metamorphic tests of Epi models - Herman
Mekontso Tchinda
• User eXperiments (in collaboration with Nick
Papoulias during 2017)

More Related Content

PDF
Maher_Selim_Resume
PDF
012517 ResumeJH Amex DS-ML
PPTX
Brain Network - Thalamocortical Motif
PPTX
A global integrative ecosystem for digital pathology: how can we get there?
PDF
eNanoMapper - A Database and Ontology Framework for Nanomaterials Design and ...
DOC
Mahesh Joshi
PPT
Digital Pathology Information Web Services (DPIWS): Convergence in Digital Pa...
PDF
Neural Network and Applications An Overview
Maher_Selim_Resume
012517 ResumeJH Amex DS-ML
Brain Network - Thalamocortical Motif
A global integrative ecosystem for digital pathology: how can we get there?
eNanoMapper - A Database and Ontology Framework for Nanomaterials Design and ...
Mahesh Joshi
Digital Pathology Information Web Services (DPIWS): Convergence in Digital Pa...
Neural Network and Applications An Overview

What's hot (20)

PPTX
Exploring Complex Networks
PDF
An Open Source Tool for Game Theoretic Health Data De-Identification
PPTX
Brain Networks
DOC
ICMLDA_poster.doc
PPTX
Branch: An interactive, web-based tool for building decision tree classifiers
PDF
PPTX
Bayesian network-based predictive analytics applied to invasive species distr...
PDF
Ontology-Based Word Sense Disambiguation for Scientific Literature
PDF
List of publications january 13th 2015
PPTX
Nicolay Lyfenko - Conceptual scheme for text classification system
PDF
道具としての機械学習:直感的概要とその実際
PDF
AN EFFICIENT PSO BASED ENSEMBLE CLASSIFICATION MODEL ON HIGH DIMENSIONAL DATA...
PDF
Getting started with CitNetExplorer
PPT
Using Simulations to Evaluated the Effects of Recommender Systems for Learner...
PPTX
A Prototype of Brain Network Simulator for Spatiotemporal Dynamics of Alzheim...
PPTX
OpenAIRE at Workshop on CRIS and OAR, May 2010
PPTX
Acceleration of XML Parsing through Prefetching
PPTX
Virginia Cha_Inside 3D Printing HK
PDF
Multi-Channel ConvNet Approach to Predict the Risk of In-Hospital Mortality f...
Exploring Complex Networks
An Open Source Tool for Game Theoretic Health Data De-Identification
Brain Networks
ICMLDA_poster.doc
Branch: An interactive, web-based tool for building decision tree classifiers
Bayesian network-based predictive analytics applied to invasive species distr...
Ontology-Based Word Sense Disambiguation for Scientific Literature
List of publications january 13th 2015
Nicolay Lyfenko - Conceptual scheme for text classification system
道具としての機械学習:直感的概要とその実際
AN EFFICIENT PSO BASED ENSEMBLE CLASSIFICATION MODEL ON HIGH DIMENSIONAL DATA...
Getting started with CitNetExplorer
Using Simulations to Evaluated the Effects of Recommender Systems for Learner...
A Prototype of Brain Network Simulator for Spatiotemporal Dynamics of Alzheim...
OpenAIRE at Workshop on CRIS and OAR, May 2010
Acceleration of XML Parsing through Prefetching
Virginia Cha_Inside 3D Printing HK
Multi-Channel ConvNet Approach to Predict the Risk of In-Hospital Mortality f...
Ad

Viewers also liked (8)

PDF
OpenPonk (formerly DynaCASE). The open modeling platform
PDF
How to Build a High-Performance VM for Squeak/Smalltalk in Your Spare Time: A...
PDF
CommunityExplorer: A Framework for Visualizing Collaboration Networks
PDF
Optimizing Parser Combinators
PDF
Code Transformation by Direct Transformation of ASTs
PDF
Mocks, Proxies, and Transpilation as Development Strategies for Web Development
PDF
Lub: a DSL for Dynamic Context Oriented Programming
PDF
PharoJS
OpenPonk (formerly DynaCASE). The open modeling platform
How to Build a High-Performance VM for Squeak/Smalltalk in Your Spare Time: A...
CommunityExplorer: A Framework for Visualizing Collaboration Networks
Optimizing Parser Combinators
Code Transformation by Direct Transformation of ASTs
Mocks, Proxies, and Transpilation as Development Strategies for Web Development
Lub: a DSL for Dynamic Context Oriented Programming
PharoJS
Ad

Similar to Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick (20)

PDF
On the Use of Component-Based Principles and Practices for Architecting Cyber...
PDF
On the Use of Component-Based Principles and Practices for Architecting Cyber...
PDF
Model Management in Systems Biology: Challenges – Approaches – Solutions
PDF
Collaborative Model-Driven Software Engineering: a Classification Framework a...
PDF
Description and Composition of Bio-Inspired Design Patterns: The Gradient Case
PDF
1. Introduction_Physiological Modeling.pdf
PPTX
CORBEL West-Life webinar slides
PPTX
Introduction to Systemics with focus on Systems Biology
PDF
Model repositories and standard formats for model reusability
PPTX
Model Manipulation for End-User Modelers
PPT
OMICS Publishing Group | Journal of Applied & Computational Mathematics
PDF
Opening, 1st International Workshop on Patterns and Practices of Reliable AI ...
PDF
International Journal of Image Processing (IJIP) Volume (4) Issue (1)
PDF
Angelo Susi' s presentation at PMI Academic Workshop 2016
PDF
RISCOSS platform: evaluation results
PDF
RISCOSS platform: evaluation results
PPTX
Software Ecosystem Evolution. It's complex!
PDF
FAIR data management in biomedicine
PDF
FoCAS Newsletter Issue 1: Septemeber 2013
PDF
Whole Cell Volkswagen Summer School - a SEMS Project
On the Use of Component-Based Principles and Practices for Architecting Cyber...
On the Use of Component-Based Principles and Practices for Architecting Cyber...
Model Management in Systems Biology: Challenges – Approaches – Solutions
Collaborative Model-Driven Software Engineering: a Classification Framework a...
Description and Composition of Bio-Inspired Design Patterns: The Gradient Case
1. Introduction_Physiological Modeling.pdf
CORBEL West-Life webinar slides
Introduction to Systemics with focus on Systems Biology
Model repositories and standard formats for model reusability
Model Manipulation for End-User Modelers
OMICS Publishing Group | Journal of Applied & Computational Mathematics
Opening, 1st International Workshop on Patterns and Practices of Reliable AI ...
International Journal of Image Processing (IJIP) Volume (4) Issue (1)
Angelo Susi' s presentation at PMI Academic Workshop 2016
RISCOSS platform: evaluation results
RISCOSS platform: evaluation results
Software Ecosystem Evolution. It's complex!
FAIR data management in biomedicine
FoCAS Newsletter Issue 1: Septemeber 2013
Whole Cell Volkswagen Summer School - a SEMS Project

More from ESUG (20)

PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
PDF
Micromaid: A simple Mermaid-like chart generator for Pharo
PDF
Directing Generative AI for Pharo Documentation
PDF
Even Lighter Than Lightweiht: Augmenting Type Inference with Primitive Heuris...
PDF
Composing and Performing Electronic Music on-the-Fly with Pharo and Coypu
PDF
Gamifying Agent-Based Models in Cormas: Towards the Playable Architecture for...
PDF
Analysing Python Machine Learning Notebooks with Moose
PDF
FASTTypeScript metamodel generation using FAST traits and TreeSitter project
PDF
Migrating Katalon Studio Tests to Playwright with Model Driven Engineering
PDF
Package-Aware Approach for Repository-Level Code Completion in Pharo
PDF
Evaluating Benchmark Quality: a Mutation-Testing- Based Methodology
PDF
An Analysis of Inline Method Refactoring
PDF
Identification of unnecessary object allocations using static escape analysis
PDF
Control flow-sensitive optimizations In the Druid Meta-Compiler
PDF
Clean Blocks (IWST 2025, Gdansk, Poland)
PDF
Encoding for Objects Matters (IWST 2025)
PDF
Challenges of Transpiling Smalltalk to JavaScript
PDF
Immersive experiences: what Pharo users do!
PDF
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
PDF
Cavrois - an Organic Window Management (ESUG 2025)
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
Micromaid: A simple Mermaid-like chart generator for Pharo
Directing Generative AI for Pharo Documentation
Even Lighter Than Lightweiht: Augmenting Type Inference with Primitive Heuris...
Composing and Performing Electronic Music on-the-Fly with Pharo and Coypu
Gamifying Agent-Based Models in Cormas: Towards the Playable Architecture for...
Analysing Python Machine Learning Notebooks with Moose
FASTTypeScript metamodel generation using FAST traits and TreeSitter project
Migrating Katalon Studio Tests to Playwright with Model Driven Engineering
Package-Aware Approach for Repository-Level Code Completion in Pharo
Evaluating Benchmark Quality: a Mutation-Testing- Based Methodology
An Analysis of Inline Method Refactoring
Identification of unnecessary object allocations using static escape analysis
Control flow-sensitive optimizations In the Druid Meta-Compiler
Clean Blocks (IWST 2025, Gdansk, Poland)
Encoding for Objects Matters (IWST 2025)
Challenges of Transpiling Smalltalk to JavaScript
Immersive experiences: what Pharo users do!
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
Cavrois - an Organic Window Management (ESUG 2025)

Recently uploaded (20)

PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
L1 - Introduction to python Backend.pptx
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
AI in Product Development-omnex systems
PDF
Digital Strategies for Manufacturing Companies
PDF
How Creative Agencies Leverage Project Management Software.pdf
PPTX
Reimagine Home Health with the Power of Agentic AI​
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
history of c programming in notes for students .pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
Which alternative to Crystal Reports is best for small or large businesses.pdf
2025 Textile ERP Trends: SAP, Odoo & Oracle
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
L1 - Introduction to python Backend.pptx
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
AI in Product Development-omnex systems
Digital Strategies for Manufacturing Companies
How Creative Agencies Leverage Project Management Software.pdf
Reimagine Home Health with the Power of Agentic AI​
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Upgrade and Innovation Strategies for SAP ERP Customers
Adobe Illustrator 28.6 Crack My Vision of Vector Design
history of c programming in notes for students .pptx
CHAPTER 2 - PM Management and IT Context
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
wealthsignaloriginal-com-DS-text-... (1).pdf
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development

Explicit Composition Constructs in DSLs - The case of the epidemiological language Kendrick