SlideShare a Scribd company logo
1 of 14
Download to read offline
Kilix: Heterogeneous Modeling of
 Gesture-Based 3D Applications


             R. Deshayes and T. Mens
 Institut COMPLEXYS, University of Mons, Belgium

    C. Jacquet, C. Hardebolle, F. Boulanger
  Supelec E3S – Computer Science Dept., France
Goals of our research

                                        •  Reduce complexity of developing HCI applications
MoDELS 2012 – MPM workshop, Innsbruck




                                           •  By using visual modeling instead of programming


                                        •  Assess the usability of heterogeneous modeling for
                                           this purpose
                                        •  Evaluate the strengths and shortcomings of
                                           ModHel’X, a heterogeneous modeling environment
                                           •  Explore and improve its notions of semantic adaptation

                                           wwwdi.supelec.fr/software/ModHelX
                                           wwwdi.supelec.fr/software/ModHelX/Kilix



               2
Case study

                                        •  Gestural interaction with a graphical 3D
MoDELS 2012 – MPM workshop, Innsbruck




                                           application
                                           •  Using the Kinect controller
                                              to interact with virtual books
                                              using hands only




               3
Proposed architecture

                                        •  Client-server architecture
MoDELS 2012 – MPM workshop, Innsbruck




                                           •  Low coupling between I/O devices
                                              and user interaction models




                                        •  Combining different models of computation (MoC)
                                           •  choose the most appropriate formalism for the task at hand
                                               •  discrete events (DE)
                                               •  synchronous data flow (SDF)
                                               •  timed finite state machines (TFSM)
               4
Proposed architecture

                                        •  Client-server architecture
MoDELS 2012 – MPM workshop, Innsbruck




                                           •  Low coupling between I/O devices
                                              and user interaction models




                                        •  Combining different models of computation (MoC)
                                           •  choose the most appropriate formalism for the task at hand
                                               •  discrete events (DE)
                                               •  synchronous data flow (SDF)
                                               •  timed finite state machines (TFSM)
               5
Heterogenous modeling

                                        •  Hierarchical architecture
MoDELS 2012 – MPM workshop, Innsbruck




                                        •  Top-level model contains 4 blocks
                                          •  MoC is discrete events (DE)
                                          •  communication through timestamped events
                                             containing data




               6
Semantic adaptation

                                        •  Interface blocks adapt the semantics between
MoDELS 2012 – MPM workshop, Innsbruck




                                           outer and inner models using different models
                                           of computation
                                        •  Adaptation can be made to
                                          •  Data (which may be represented differently)
                                          •  Time (e.g. different time units, different time scales,
                                             continuous vs discrete time)
                                          •  Control (trigger observations of the internal model at
                                             instants requested by the internal MoC)




               7
Sensing block

                                        •  Receives data from Kinect and converts it into
MoDELS 2012 – MPM workshop, Innsbruck




                                           hand gesture events
                                        •  MoC = synchronous data flow (SDF)
                                          •  Processes a chain of sampled signals received from
                                             Kinect at a fixed rate
                                          •  Semantic adapter generates DE events when non-
                                             null SDF tokens are produced

                                                                                          DE




               8
Application Logic block

                                        •  Interprets and converts hand gestures into
MoDELS 2012 – MPM workshop, Innsbruck




                                           meaningful actions for 3D object manipulation
                                          •  MoC = timed finite state machines (TFSM)
                                          •  DE/TFSM adapter converts between DE events and
                                             symbols for the state machine



                                                                                           DE




               9
Virtual Scene block

                                        •  Represents graphical 3D objects (e.g., book)
MoDELS 2012 – MPM workshop, Innsbruck




                                           that interpret the actions as object-specific
                                           behaviour (e.g. opening or closing the book)
                                          •  MoC = TFSM

                                                                                   DE




        10
Heterogenous modeling

                                        •  General overview revisited
MoDELS 2012 – MPM workshop, Innsbruck




        11
Discussion

                                        •  Heterogeneous modeling is useful for HCI
MoDELS 2012 – MPM workshop, Innsbruck




                                           applications

                                        •  Semantic adaptation can be used
                                           •  To adapt between models of computation
                                           •  To map application actions (e.g., swipe) to object
                                              behaviors (e.g., open or close)
                                           •  To use the same component differently in different
                                              applications
                                              •  Leads to less coupling and higher component reusability

                                        •  Dynamic modeling is difficult to achieve
                                           •  e.g. variable number of users and books at runtime
        12
Future work

                                        •  Compare strengths and weaknesses of
MoDELS 2012 – MPM workshop, Innsbruck




                                           homogenous and heterogenous modeling
                                          •  Based on common case study
                                          •  Expressed using statecharts only
                                          •  Expressed using high-level Petri nets
                                             •  Joint work with Ph. Palanque, Toulouse (PetShop tool)
                                          •  Expressed using ModHel’X

                                        •  ModHel’X improvements
                                          •  Performance issues
                                          •  Add support for visual editing of models
                                          •  Support domain-specific languages to match the
                                             application domain better (work in progress)
                                          •  Extend existing MoC (TFSM++)
        13
References

                                        •  For homogeneous modeling	

MoDELS 2012 – MPM workshop, Innsbruck




                                           •  R. Deshayes and T. Mens. Statechart modelling of interactive
                                              gesture-based applications. In ComDeisMoto satellite event of
                                              INTERACT 2011. 	

                                           •  D. Navarre, et al. ICOs: A model-based user interface description
                                              technique dedicated to interactive systems addressing usability,
                                              reliability and scalability. ACM Trans. Comput.-Hum. Interact.,
                                              16(4), 2009.	


                                        •  For heterogeneous modeling	

                                           •  J. Eker et al. Taming heterogeneity - the Ptolemy approach. Proc.
                                              IEEE, 91(1):127–144, 2003. 	

                                           •  C. Hardebolle, F. Boulanger. Exploring multi-paradigm modeling
                                              techniques. SIMULATION: Trans. Society for Modeling and
                                              Simulation International, 85(11/12):688–708, 2009. 	

                                           •  F. Boulanger et al. Semantic Adaptation for Models of Computation.
                                              ACSD 2011: 153-162	

                                           •  B. Baudry et al. Bridging the Chasm between Executable
                                              Metamodeling and Models of Computation. SLE 2012	

        14

More Related Content

Similar to Kilix: Heterogeneous Modeling of Gesture-Based 3D Applications

A DSL for the visualization of Multi-Robot Systems
A DSL for the visualization of Multi-Robot SystemsA DSL for the visualization of Multi-Robot Systems
A DSL for the visualization of Multi-Robot SystemsSerge Stinckwich
 
Reifying the concurrency concern into xDSML specifications
Reifying the concurrency concern into xDSML specificationsReifying the concurrency concern into xDSML specifications
Reifying the concurrency concern into xDSML specificationsBenoit Combemale
 
Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...
Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...
Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...Serge Stinckwich
 
Close encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet CodeClose encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet Codelbergmans
 
Close Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet codeClose Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet codelbergmans
 
From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012
From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012
From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012Marc Dutoo
 
Model-Driven Cloud Data Storage
Model-Driven Cloud Data StorageModel-Driven Cloud Data Storage
Model-Driven Cloud Data Storagejccastrejon
 
Ectel nods v2
Ectel nods v2Ectel nods v2
Ectel nods v2nodenot
 
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...Till Riedel
 
OpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite MechanicsOpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite MechanicsOpenTravel Alliance
 
DME for ZYNQ FPGA - A new way to design your SOC
DME for ZYNQ FPGA - A new way to design your SOCDME for ZYNQ FPGA - A new way to design your SOC
DME for ZYNQ FPGA - A new way to design your SOCBengt Edlund
 
Ukd2008 18-9-08 andrea
Ukd2008 18-9-08 andreaUkd2008 18-9-08 andrea
Ukd2008 18-9-08 andreaAndrea Zaza
 
Chemistry in Your Pocket (Dr. Alex M. Clark)
Chemistry in Your Pocket (Dr. Alex M. Clark)Chemistry in Your Pocket (Dr. Alex M. Clark)
Chemistry in Your Pocket (Dr. Alex M. Clark)Alex Clark
 
Modelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at IcineticModelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at IcineticIcinetic
 
Modelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at IcineticModelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at IcineticPedro J. Molina
 
Presentation date -20-nov-2012 for prof. chen
Presentation date -20-nov-2012 for prof. chenPresentation date -20-nov-2012 for prof. chen
Presentation date -20-nov-2012 for prof. chenTAIWAN
 
Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...
Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...
Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...Open Source Experience
 
MODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in PracticeMODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in PracticeHussein Alshkhir
 
Effective Application Development with WebSphere Message Broker
Effective Application Development with WebSphere Message BrokerEffective Application Development with WebSphere Message Broker
Effective Application Development with WebSphere Message BrokerAnt Phillips
 

Similar to Kilix: Heterogeneous Modeling of Gesture-Based 3D Applications (20)

A DSL for the visualization of Multi-Robot Systems
A DSL for the visualization of Multi-Robot SystemsA DSL for the visualization of Multi-Robot Systems
A DSL for the visualization of Multi-Robot Systems
 
Reifying the concurrency concern into xDSML specifications
Reifying the concurrency concern into xDSML specificationsReifying the concurrency concern into xDSML specifications
Reifying the concurrency concern into xDSML specifications
 
Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...
Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...
Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-...
 
Close encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet CodeClose encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet Code
 
Close Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet codeClose Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet code
 
From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012
From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012
From Eclipse to Document Management - Eclipse DemoCamp Grenoble 2012
 
Model-Driven Cloud Data Storage
Model-Driven Cloud Data StorageModel-Driven Cloud Data Storage
Model-Driven Cloud Data Storage
 
Ectel nods v2
Ectel nods v2Ectel nods v2
Ectel nods v2
 
Introduction to MDA
Introduction to MDAIntroduction to MDA
Introduction to MDA
 
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
 
OpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite MechanicsOpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite Mechanics
 
DME for ZYNQ FPGA - A new way to design your SOC
DME for ZYNQ FPGA - A new way to design your SOCDME for ZYNQ FPGA - A new way to design your SOC
DME for ZYNQ FPGA - A new way to design your SOC
 
Ukd2008 18-9-08 andrea
Ukd2008 18-9-08 andreaUkd2008 18-9-08 andrea
Ukd2008 18-9-08 andrea
 
Chemistry in Your Pocket (Dr. Alex M. Clark)
Chemistry in Your Pocket (Dr. Alex M. Clark)Chemistry in Your Pocket (Dr. Alex M. Clark)
Chemistry in Your Pocket (Dr. Alex M. Clark)
 
Modelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at IcineticModelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at Icinetic
 
Modelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at IcineticModelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at Icinetic
 
Presentation date -20-nov-2012 for prof. chen
Presentation date -20-nov-2012 for prof. chenPresentation date -20-nov-2012 for prof. chen
Presentation date -20-nov-2012 for prof. chen
 
Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...
Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...
Le projet MORPHEMIC – Adaptation des ressources de cloud computing selon une ...
 
MODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in PracticeMODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in Practice
 
Effective Application Development with WebSphere Message Broker
Effective Application Development with WebSphere Message BrokerEffective Application Development with WebSphere Message Broker
Effective Application Development with WebSphere Message Broker
 

More from Tom Mens

How to be(come) a successful PhD student
How to be(come) a successful PhD studentHow to be(come) a successful PhD student
How to be(come) a successful PhD studentTom Mens
 
Recognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentRecognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentTom Mens
 
A Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubA Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubTom Mens
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHubTom Mens
 
Nurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureNurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureTom Mens
 
Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Tom Mens
 
On the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubOn the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubTom Mens
 
On backporting practices in package dependency networks
On backporting practices in package dependency networksOn backporting practices in package dependency networks
On backporting practices in package dependency networksTom Mens
 
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsTom Mens
 
Lost in Zero Space
Lost in Zero SpaceLost in Zero Space
Lost in Zero SpaceTom Mens
 
Evaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesEvaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesTom Mens
 
Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Tom Mens
 
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Tom Mens
 
On the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsOn the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsTom Mens
 
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...Tom Mens
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Tom Mens
 
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Tom Mens
 
SecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsSecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsTom Mens
 
SECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarSECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarTom Mens
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersTom Mens
 

More from Tom Mens (20)

How to be(come) a successful PhD student
How to be(come) a successful PhD studentHow to be(come) a successful PhD student
How to be(come) a successful PhD student
 
Recognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentRecognising bot activity in collaborative software development
Recognising bot activity in collaborative software development
 
A Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubA Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHub
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHub
 
Nurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureNurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the Future
 
Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?
 
On the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubOn the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHub
 
On backporting practices in package dependency networks
On backporting practices in package dependency networksOn backporting practices in package dependency networks
On backporting practices in package dependency networks
 
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
 
Lost in Zero Space
Lost in Zero SpaceLost in Zero Space
Lost in Zero Space
 
Evaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesEvaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messages
 
Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!
 
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
 
On the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsOn the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystems
 
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)
 
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
 
SecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsSecoHealth 2019 Research Achievements
SecoHealth 2019 Research Achievements
 
SECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarSECO-Assist 2019 research seminar
SECO-Assist 2019 research seminar
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package Managers
 

Recently uploaded

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 

Recently uploaded (20)

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 

Kilix: Heterogeneous Modeling of Gesture-Based 3D Applications

  • 1. Kilix: Heterogeneous Modeling of Gesture-Based 3D Applications R. Deshayes and T. Mens Institut COMPLEXYS, University of Mons, Belgium C. Jacquet, C. Hardebolle, F. Boulanger Supelec E3S – Computer Science Dept., France
  • 2. Goals of our research •  Reduce complexity of developing HCI applications MoDELS 2012 – MPM workshop, Innsbruck •  By using visual modeling instead of programming •  Assess the usability of heterogeneous modeling for this purpose •  Evaluate the strengths and shortcomings of ModHel’X, a heterogeneous modeling environment •  Explore and improve its notions of semantic adaptation wwwdi.supelec.fr/software/ModHelX wwwdi.supelec.fr/software/ModHelX/Kilix 2
  • 3. Case study •  Gestural interaction with a graphical 3D MoDELS 2012 – MPM workshop, Innsbruck application •  Using the Kinect controller to interact with virtual books using hands only 3
  • 4. Proposed architecture •  Client-server architecture MoDELS 2012 – MPM workshop, Innsbruck •  Low coupling between I/O devices and user interaction models •  Combining different models of computation (MoC) •  choose the most appropriate formalism for the task at hand •  discrete events (DE) •  synchronous data flow (SDF) •  timed finite state machines (TFSM) 4
  • 5. Proposed architecture •  Client-server architecture MoDELS 2012 – MPM workshop, Innsbruck •  Low coupling between I/O devices and user interaction models •  Combining different models of computation (MoC) •  choose the most appropriate formalism for the task at hand •  discrete events (DE) •  synchronous data flow (SDF) •  timed finite state machines (TFSM) 5
  • 6. Heterogenous modeling •  Hierarchical architecture MoDELS 2012 – MPM workshop, Innsbruck •  Top-level model contains 4 blocks •  MoC is discrete events (DE) •  communication through timestamped events containing data 6
  • 7. Semantic adaptation •  Interface blocks adapt the semantics between MoDELS 2012 – MPM workshop, Innsbruck outer and inner models using different models of computation •  Adaptation can be made to •  Data (which may be represented differently) •  Time (e.g. different time units, different time scales, continuous vs discrete time) •  Control (trigger observations of the internal model at instants requested by the internal MoC) 7
  • 8. Sensing block •  Receives data from Kinect and converts it into MoDELS 2012 – MPM workshop, Innsbruck hand gesture events •  MoC = synchronous data flow (SDF) •  Processes a chain of sampled signals received from Kinect at a fixed rate •  Semantic adapter generates DE events when non- null SDF tokens are produced DE 8
  • 9. Application Logic block •  Interprets and converts hand gestures into MoDELS 2012 – MPM workshop, Innsbruck meaningful actions for 3D object manipulation •  MoC = timed finite state machines (TFSM) •  DE/TFSM adapter converts between DE events and symbols for the state machine DE 9
  • 10. Virtual Scene block •  Represents graphical 3D objects (e.g., book) MoDELS 2012 – MPM workshop, Innsbruck that interpret the actions as object-specific behaviour (e.g. opening or closing the book) •  MoC = TFSM DE 10
  • 11. Heterogenous modeling •  General overview revisited MoDELS 2012 – MPM workshop, Innsbruck 11
  • 12. Discussion •  Heterogeneous modeling is useful for HCI MoDELS 2012 – MPM workshop, Innsbruck applications •  Semantic adaptation can be used •  To adapt between models of computation •  To map application actions (e.g., swipe) to object behaviors (e.g., open or close) •  To use the same component differently in different applications •  Leads to less coupling and higher component reusability •  Dynamic modeling is difficult to achieve •  e.g. variable number of users and books at runtime 12
  • 13. Future work •  Compare strengths and weaknesses of MoDELS 2012 – MPM workshop, Innsbruck homogenous and heterogenous modeling •  Based on common case study •  Expressed using statecharts only •  Expressed using high-level Petri nets •  Joint work with Ph. Palanque, Toulouse (PetShop tool) •  Expressed using ModHel’X •  ModHel’X improvements •  Performance issues •  Add support for visual editing of models •  Support domain-specific languages to match the application domain better (work in progress) •  Extend existing MoC (TFSM++) 13
  • 14. References •  For homogeneous modeling MoDELS 2012 – MPM workshop, Innsbruck •  R. Deshayes and T. Mens. Statechart modelling of interactive gesture-based applications. In ComDeisMoto satellite event of INTERACT 2011. •  D. Navarre, et al. ICOs: A model-based user interface description technique dedicated to interactive systems addressing usability, reliability and scalability. ACM Trans. Comput.-Hum. Interact., 16(4), 2009. •  For heterogeneous modeling •  J. Eker et al. Taming heterogeneity - the Ptolemy approach. Proc. IEEE, 91(1):127–144, 2003. •  C. Hardebolle, F. Boulanger. Exploring multi-paradigm modeling techniques. SIMULATION: Trans. Society for Modeling and Simulation International, 85(11/12):688–708, 2009. •  F. Boulanger et al. Semantic Adaptation for Models of Computation. ACSD 2011: 153-162 •  B. Baudry et al. Bridging the Chasm between Executable Metamodeling and Models of Computation. SLE 2012 14