SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
Statechart modeling of interactive gesture-based applications




                   Statechart modeling of interactive
                       gesture-based applications

                         Romuald Deshayes                       Tom Mens

                                       Software Engineering Lab




                                                   2010-2011
  Deshayes Romuald – UMONS                                                 1 / 20
Statechart modeling of interactive gesture-based applications




Table des matières


      1   Problem Statement

      2   Proof-of-concept application

      3   Modeling interactive behaviour

      4   Statechart models

      5   The application framework

      6   Conclusion and Future Work




  Deshayes Romuald – UMONS                                      2 / 20
Statechart modeling of interactive gesture-based applications
  Problem Statement




Outline : Problem Statement




                                Problem Statement




  Deshayes Romuald – UMONS                                      3 / 20
Statechart modeling of interactive gesture-based applications
  Problem Statement




Problem Statement

      Challenge
      Develop intuitive interactive applications that are easy to maintain

      Why is it a challenge ?
              Complex behaviour
              Nondeterministic user actions
              Same events lead to different actions

      Contributions
          Gestural user interface for 3D objects manipulation
              Modeling executable behaviour using a visual formalism
              Validation with an application framework

  Deshayes Romuald – UMONS                                                   4 / 20
Statechart modeling of interactive gesture-based applications
  Proof-of-concept application




Outline : Proof-of-concept application




                    Proof-of-concept application




  Deshayes Romuald – UMONS                                      5 / 20
Statechart modeling of interactive gesture-based applications
  Proof-of-concept application




Proof-of-concept application




              3D visual drawing tool
              Uses gestures to create and manipulate 3D objects
              OpenGL graphical library
              Microsoft Kinect + NITE




  Deshayes Romuald – UMONS                                        6 / 20
Statechart modeling of interactive gesture-based applications
  Proof-of-concept application




Small video : www.youtube.com/watch?v=lVcqzWTnpMY




  Deshayes Romuald – UMONS                                      7 / 20
Statechart modeling of interactive gesture-based applications
  Modeling interactive behaviour




Outline : Modeling interactive behaviour




                 Modeling interactive behaviour




  Deshayes Romuald – UMONS                                      8 / 20
Statechart modeling of interactive gesture-based applications
  Modeling interactive behaviour




Modeling interactive behaviour

      Context
          Highly reactive event-driven systems
              Gesture-based interaction

      Proposed solutions
              Visual modeling language
                     Statecharts
                     Petri nets
              Amenable to formal analysis
              Easier to evolve
              Reduced complexity

  Deshayes Romuald – UMONS                                      9 / 20
Statechart modeling of interactive gesture-based applications
  Statechart models




Outline : Statechart models




                                  Statechart models




  Deshayes Romuald – UMONS                                      10 / 20
Statechart modeling of interactive gesture-based applications
  Statechart models




Statechart models - Hand




  Deshayes Romuald – UMONS                                      11 / 20
Statechart modeling of interactive gesture-based applications
  Statechart models




Statechart models - Component




  Deshayes Romuald – UMONS                                      12 / 20
Statechart modeling of interactive gesture-based applications
  Statechart models




Statechart models - Scene




  Deshayes Romuald – UMONS                                      13 / 20
Statechart modeling of interactive gesture-based applications
  The application framework




Outline : The application framework




                      The application framework




  Deshayes Romuald – UMONS                                      14 / 20
Statechart modeling of interactive gesture-based applications
  The application framework




The application framework


              Framework for developing interactive applications
              Executable behaviour specified using statecharts
              Client-server architecture




  Deshayes Romuald – UMONS                                        15 / 20
Statechart modeling of interactive gesture-based applications
  The application framework




The application framework II
      Features
          Generic
                     Abstract classes
                     Observer design pattern
              Communication between statecharts
              Uses Java SwingStates library




  Deshayes Romuald – UMONS                                      16 / 20
Statechart modeling of interactive gesture-based applications
  The application framework




The application framework III

                                                                                                                                                                          <<library>>
                                                                          Framework                                                                                      SwingStates
              Server extends Thread
        -serverSocket : DatagramSocket                                                                                                                                     StateMachine

                                                          Controller                                     left   0..1
                            1..*              -machine : StateMachine                                                                Pointer
                <<Interface>>                                                                           right             -open : boolean
                                              +addComponent(c : Component)                                      0..1
            BodyListener extends                                                                                          -machine : StateMachine
                                              +addPointer(p : Pointer)
                EventListener                 +addScene(s : Scene)
                                                                                                                                   Scene
                                                                                                                                                                      Main Application
        +handMovedX(e : BodyEvent)                                                                               1..*
        +handMovedY(e : BodyEvent)                                                                                        -machine : StateMachine
                                                                                                                                                                            MainScene
        +handMovedZ(e : BodyEvent)                1
        +handClosed(e : BodyEvent)
        +handOpened(e : BodyEvent)
                                                                                                                        selectedModel
                                                                         1..*
                                                  *                                                                                   0..1
                                                                                     Component                                         Model
                            BodyAdapter                                                                                                                                      3DModel
                                                                     -boundingBox : Rectangle                           -selected : boolean
                   +addAsListenerOf(s : Server)                      -machine : StateMachine
                                                                                                                                                  1..*
                                                                                                                                               models



                      BodyAdapters                                                                        OpenGLWidgets
                             Hand                                GLButton                                 ExtendableMenu
                   -machine : StateMachine            +changeActiveTexture() : void        +extend() : void
                                                      +drawButton(gl : GL) : void          +retract() : void
                                                      +startCounter() : void               +drawMenu(gl : GL) : void


                                                                            SpawningMenu
                                                                 +addButton(button : GLButton) : void                                                          ImageMenu
                                                                 +addText(text : String) : void                       ButtonMenu
                                                                                                                                                         +drawMenu(gl : GL) : void
                                                                 +drawMenu(gl : GL) : void                +addButton(button : GLBUtton) : void           +onModel() : void
                                                                 +spawn() : void                          +drawMenu(gl : GL) : void
                                                                 +reduce() : void




  Deshayes Romuald – UMONS                                                                                                                                                                17 / 20
Statechart modeling of interactive gesture-based applications
  Conclusion and Future Work




Outline : Conclusion and Future Work




                    Conclusion and Future Work




  Deshayes Romuald – UMONS                                      18 / 20
Statechart modeling of interactive gesture-based applications
  Conclusion and Future Work




Conclusion and Future Work



      Statecharts
           Appropriate and scalable formalism for modeling the
           interactive gesture-based behaviour ?

      Improvements
              Externalise/decouple statechart representation from framework
              Compare statecharts with Petri nets




  Deshayes Romuald – UMONS                                               19 / 20
Statechart modeling of interactive gesture-based applications
  Conclusion and Future Work




Future Work II




              Apply our approach to other HCI applications
              Other types of natural interfaces
              Compare/combine with other UIML
              Controlled experiments, carry out user studies, empirical
              studies




  Deshayes Romuald – UMONS                                                20 / 20

Weitere ähnliche Inhalte

Ähnlich wie Statechart modeling of interactive gesture-based applications

Controlling Computer using Hand Gestures
Controlling Computer using Hand GesturesControlling Computer using Hand Gestures
Controlling Computer using Hand GesturesIRJET Journal
 
Android 101 Session @thejunction32
Android 101 Session @thejunction32Android 101 Session @thejunction32
Android 101 Session @thejunction32Eden Shochat
 
Mvi an architecture for reactive programming
Mvi an architecture for reactive programmingMvi an architecture for reactive programming
Mvi an architecture for reactive programmingluca mezzalira
 
Project Gesture & RealSense: gestures in a simple way!!
Project Gesture & RealSense: gestures in a simple way!!Project Gesture & RealSense: gestures in a simple way!!
Project Gesture & RealSense: gestures in a simple way!!Massimo Bonanni
 
Reactive programming with cycle.js
Reactive programming with cycle.jsReactive programming with cycle.js
Reactive programming with cycle.jsluca mezzalira
 
Ectel nods v2
Ectel nods v2Ectel nods v2
Ectel nods v2nodenot
 
Advance ui development and design
Advance ui  development and design Advance ui  development and design
Advance ui development and design Rakesh Jha
 
A Generic Framework for Executable Gestural Interaction Models
A Generic Framework for Executable Gestural Interaction ModelsA Generic Framework for Executable Gestural Interaction Models
A Generic Framework for Executable Gestural Interaction ModelsTom Mens
 
Mobile Enterprise Applications
Mobile Enterprise ApplicationsMobile Enterprise Applications
Mobile Enterprise ApplicationsJason Conger
 
Project Gesture & Real Sense: il potere nelle mani!!
Project Gesture & Real Sense: il potere nelle mani!!Project Gesture & Real Sense: il potere nelle mani!!
Project Gesture & Real Sense: il potere nelle mani!!Massimo Bonanni
 
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...Codemotion
 
Implementation
ImplementationImplementation
Implementationhcicourse
 
Prosciutto Palermo Valley Mobile Sessions - English
Prosciutto Palermo Valley Mobile Sessions - EnglishProsciutto Palermo Valley Mobile Sessions - English
Prosciutto Palermo Valley Mobile Sessions - EnglishMario Zorz
 
Develop an app for Windows 8 using HTML5
Develop an app for Windows 8 using HTML5Develop an app for Windows 8 using HTML5
Develop an app for Windows 8 using HTML5Soumow Dollon
 
MICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context EvolutionMICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context EvolutionLuca Berardinelli
 
From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...
From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...
From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...ServiceWave 2010
 

Ähnlich wie Statechart modeling of interactive gesture-based applications (20)

Controlling Computer using Hand Gestures
Controlling Computer using Hand GesturesControlling Computer using Hand Gestures
Controlling Computer using Hand Gestures
 
Windows 8.1 term paper
Windows 8.1 term paperWindows 8.1 term paper
Windows 8.1 term paper
 
Android 101 Session @thejunction32
Android 101 Session @thejunction32Android 101 Session @thejunction32
Android 101 Session @thejunction32
 
Mvi an architecture for reactive programming
Mvi an architecture for reactive programmingMvi an architecture for reactive programming
Mvi an architecture for reactive programming
 
Project Gesture & RealSense: gestures in a simple way!!
Project Gesture & RealSense: gestures in a simple way!!Project Gesture & RealSense: gestures in a simple way!!
Project Gesture & RealSense: gestures in a simple way!!
 
Reactive programming with cycle.js
Reactive programming with cycle.jsReactive programming with cycle.js
Reactive programming with cycle.js
 
Ectel nods v2
Ectel nods v2Ectel nods v2
Ectel nods v2
 
Advance ui development and design
Advance ui  development and design Advance ui  development and design
Advance ui development and design
 
Responsive app design
Responsive app designResponsive app design
Responsive app design
 
A Generic Framework for Executable Gestural Interaction Models
A Generic Framework for Executable Gestural Interaction ModelsA Generic Framework for Executable Gestural Interaction Models
A Generic Framework for Executable Gestural Interaction Models
 
Mobile Enterprise Applications
Mobile Enterprise ApplicationsMobile Enterprise Applications
Mobile Enterprise Applications
 
Project Gesture & Real Sense: il potere nelle mani!!
Project Gesture & Real Sense: il potere nelle mani!!Project Gesture & Real Sense: il potere nelle mani!!
Project Gesture & Real Sense: il potere nelle mani!!
 
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
 
Implementation
ImplementationImplementation
Implementation
 
Prosciutto Palermo Valley Mobile Sessions - English
Prosciutto Palermo Valley Mobile Sessions - EnglishProsciutto Palermo Valley Mobile Sessions - English
Prosciutto Palermo Valley Mobile Sessions - English
 
Interactive Screen
Interactive ScreenInteractive Screen
Interactive Screen
 
Develop an app for Windows 8 using HTML5
Develop an app for Windows 8 using HTML5Develop an app for Windows 8 using HTML5
Develop an app for Windows 8 using HTML5
 
Mie presentation
Mie presentationMie presentation
Mie presentation
 
MICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context EvolutionMICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context Evolution
 
From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...
From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...
From Event-Driven Business Process Management to Ubiquitous Complex Event Pr...
 

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证eeanqy
 
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样yhavx
 
Furniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxFurniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxNikhil Raut
 
Design-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora AgencyDesign-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora AgencyIsadora Agency
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement 210303105569
 
Jordan_Amanda_DMBS202404_PB1_2024-04.pdf
Jordan_Amanda_DMBS202404_PB1_2024-04.pdfJordan_Amanda_DMBS202404_PB1_2024-04.pdf
Jordan_Amanda_DMBS202404_PB1_2024-04.pdfamanda2495
 
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...nirzagarg
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...instagramfab782445
 
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for FriendshipRaebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for FriendshipNitya salvi
 
Eye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docxEye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docxMdBokhtiyarHossainNi
 
Sweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxSweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxbingyichin04
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Nitya salvi
 
Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...gajnagarg
 
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证ehyxf
 
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best ServiceIndependent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Servicemeghakumariji156
 
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...Nitya salvi
 
Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...gajnagarg
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...nirzagarg
 
Essential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideEssential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideDesign Studio UI UX
 
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEKLANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEKMarekMitek1
 

Kürzlich hochgeladen (20)

怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
 
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
 
Furniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxFurniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptx
 
Design-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora AgencyDesign-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora Agency
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement
 
Jordan_Amanda_DMBS202404_PB1_2024-04.pdf
Jordan_Amanda_DMBS202404_PB1_2024-04.pdfJordan_Amanda_DMBS202404_PB1_2024-04.pdf
Jordan_Amanda_DMBS202404_PB1_2024-04.pdf
 
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
 
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for FriendshipRaebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
 
Eye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docxEye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docx
 
Sweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxSweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptx
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
 
Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Meerut [ 7014168258 ] Call Me For Genuine Models We...
 
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
 
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best ServiceIndependent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
 
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
 
Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In fatehgarh [ 7014168258 ] Call Me For Genuine Models...
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
 
Essential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideEssential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive Guide
 
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEKLANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
LANDSCAPE ARCHITECTURE PORTFOLIO - MAREK MITACEK
 

Statechart modeling of interactive gesture-based applications

  • 1. Statechart modeling of interactive gesture-based applications Statechart modeling of interactive gesture-based applications Romuald Deshayes Tom Mens Software Engineering Lab 2010-2011 Deshayes Romuald – UMONS 1 / 20
  • 2. Statechart modeling of interactive gesture-based applications Table des matières 1 Problem Statement 2 Proof-of-concept application 3 Modeling interactive behaviour 4 Statechart models 5 The application framework 6 Conclusion and Future Work Deshayes Romuald – UMONS 2 / 20
  • 3. Statechart modeling of interactive gesture-based applications Problem Statement Outline : Problem Statement Problem Statement Deshayes Romuald – UMONS 3 / 20
  • 4. Statechart modeling of interactive gesture-based applications Problem Statement Problem Statement Challenge Develop intuitive interactive applications that are easy to maintain Why is it a challenge ? Complex behaviour Nondeterministic user actions Same events lead to different actions Contributions Gestural user interface for 3D objects manipulation Modeling executable behaviour using a visual formalism Validation with an application framework Deshayes Romuald – UMONS 4 / 20
  • 5. Statechart modeling of interactive gesture-based applications Proof-of-concept application Outline : Proof-of-concept application Proof-of-concept application Deshayes Romuald – UMONS 5 / 20
  • 6. Statechart modeling of interactive gesture-based applications Proof-of-concept application Proof-of-concept application 3D visual drawing tool Uses gestures to create and manipulate 3D objects OpenGL graphical library Microsoft Kinect + NITE Deshayes Romuald – UMONS 6 / 20
  • 7. Statechart modeling of interactive gesture-based applications Proof-of-concept application Small video : www.youtube.com/watch?v=lVcqzWTnpMY Deshayes Romuald – UMONS 7 / 20
  • 8. Statechart modeling of interactive gesture-based applications Modeling interactive behaviour Outline : Modeling interactive behaviour Modeling interactive behaviour Deshayes Romuald – UMONS 8 / 20
  • 9. Statechart modeling of interactive gesture-based applications Modeling interactive behaviour Modeling interactive behaviour Context Highly reactive event-driven systems Gesture-based interaction Proposed solutions Visual modeling language Statecharts Petri nets Amenable to formal analysis Easier to evolve Reduced complexity Deshayes Romuald – UMONS 9 / 20
  • 10. Statechart modeling of interactive gesture-based applications Statechart models Outline : Statechart models Statechart models Deshayes Romuald – UMONS 10 / 20
  • 11. Statechart modeling of interactive gesture-based applications Statechart models Statechart models - Hand Deshayes Romuald – UMONS 11 / 20
  • 12. Statechart modeling of interactive gesture-based applications Statechart models Statechart models - Component Deshayes Romuald – UMONS 12 / 20
  • 13. Statechart modeling of interactive gesture-based applications Statechart models Statechart models - Scene Deshayes Romuald – UMONS 13 / 20
  • 14. Statechart modeling of interactive gesture-based applications The application framework Outline : The application framework The application framework Deshayes Romuald – UMONS 14 / 20
  • 15. Statechart modeling of interactive gesture-based applications The application framework The application framework Framework for developing interactive applications Executable behaviour specified using statecharts Client-server architecture Deshayes Romuald – UMONS 15 / 20
  • 16. Statechart modeling of interactive gesture-based applications The application framework The application framework II Features Generic Abstract classes Observer design pattern Communication between statecharts Uses Java SwingStates library Deshayes Romuald – UMONS 16 / 20
  • 17. Statechart modeling of interactive gesture-based applications The application framework The application framework III <<library>> Framework SwingStates Server extends Thread -serverSocket : DatagramSocket StateMachine Controller left 0..1 1..* -machine : StateMachine Pointer <<Interface>> right -open : boolean +addComponent(c : Component) 0..1 BodyListener extends -machine : StateMachine +addPointer(p : Pointer) EventListener +addScene(s : Scene) Scene Main Application +handMovedX(e : BodyEvent) 1..* +handMovedY(e : BodyEvent) -machine : StateMachine MainScene +handMovedZ(e : BodyEvent) 1 +handClosed(e : BodyEvent) +handOpened(e : BodyEvent) selectedModel 1..* * 0..1 Component Model BodyAdapter 3DModel -boundingBox : Rectangle -selected : boolean +addAsListenerOf(s : Server) -machine : StateMachine 1..* models BodyAdapters OpenGLWidgets Hand GLButton ExtendableMenu -machine : StateMachine +changeActiveTexture() : void +extend() : void +drawButton(gl : GL) : void +retract() : void +startCounter() : void +drawMenu(gl : GL) : void SpawningMenu +addButton(button : GLButton) : void ImageMenu +addText(text : String) : void ButtonMenu +drawMenu(gl : GL) : void +drawMenu(gl : GL) : void +addButton(button : GLBUtton) : void +onModel() : void +spawn() : void +drawMenu(gl : GL) : void +reduce() : void Deshayes Romuald – UMONS 17 / 20
  • 18. Statechart modeling of interactive gesture-based applications Conclusion and Future Work Outline : Conclusion and Future Work Conclusion and Future Work Deshayes Romuald – UMONS 18 / 20
  • 19. Statechart modeling of interactive gesture-based applications Conclusion and Future Work Conclusion and Future Work Statecharts Appropriate and scalable formalism for modeling the interactive gesture-based behaviour ? Improvements Externalise/decouple statechart representation from framework Compare statecharts with Petri nets Deshayes Romuald – UMONS 19 / 20
  • 20. Statechart modeling of interactive gesture-based applications Conclusion and Future Work Future Work II Apply our approach to other HCI applications Other types of natural interfaces Compare/combine with other UIML Controlled experiments, carry out user studies, empirical studies Deshayes Romuald – UMONS 20 / 20