SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Model-Driven Engineering
                of Behaviors in User Interfaces

                                  Efrem Mbaki & Jean Vanderdonckt


                               Université catholique de Louvain (UCL)
                               Louvain School of Management (LSM)
       Pole of Research on Information and Services Management and Engineering (PRISME)
                                          http://www.lilab.be




IHCI'2011 - Rome, July 26, 2011
Objective


   • Our goal: build a methodology for model-based
     approach for behavior:

                                  Foundation

                       MODELS              METHOD           SOFTWARE

                                                   Exploitation




IHCI'2011 - Rome, July 26, 2011
Why behavior in user interfaces?


   • Two dimensions in UI development: presentation (look) vs
     behavior (feel)
        – Behavior is often left out for the profit of the presentation
        – Behavior is more complex
        – Behavior is often programmed, not frequently modeled nor
          represented
        – When behavior is represented, many different techniques exist
        – Behavior is hard to abstract from computing platform and from
          interaction modality
        – Behavior is hard to generate in a way that remains independent
          from any technology




IHCI'2011 - Rome, July 26, 2011
What is a behavior model?


   • A behavior model defines how users can interact with the presentation
     in order to carry out a given interactive task
        – Thus, behavior is intertwined with task and presentation
   • It represents
        – the actions that a user may initiate via CIO
        – the reactions that the UI communicates via CIOs
            • Same
   •   Different
        – It tries to relate task to presentation




IHCI'2011 - Rome, July 26, 2011
Models: Conceptual Model




IHCI'2011 - Rome, July 26, 2011
Main Classes : ToolKit (1/3)


       In the modern graphical environments of design or development,
       Toolkits are represented as an objects box in which the developer can
       drag and drop items.

       A toolkit is characterized by its name, its level (abstract, concrete and
       Final) and a series of templates, functions and events describing
       particular behaviors.

       With this view, we consider a toolkit as a Model




IHCI'2011 - Rome, July 26, 2011
Main Classes : ToolKit (1/3)




IHCI'2011 - Rome, July 26, 2011
Main Classes : Mapping (2/3)


       Mechanism which makes it possible to define rules of transformation
       from a Toolkit towards another, possibly the same one

       Applying mapping, a given object can change to another or several
       others. In this second case, rules of transformations are necessary.

       A mapping is based primarily on two toolkits; a source and a
       destination. Its application requires presence of a user interface
       relating to the source Toolkit to lead to an interface in the destination
       Toolkit.

       It’s possible to apply the same mapping into to several interfaces.



IHCI'2011 - Rome, July 26, 2011
Main Classes : Mapping (2/3)




IHCI'2011 - Rome, July 26, 2011
Main Classes : Behavior Script (3/3)




       A sequential text furnished with the logic and conditional elements.

       It describes the desired actions according to a given interaction
       scenario.

       An action can be the change of an attribute value; the call of a
       mathematical function, the opening or the closing of a user interface,
       etc.




IHCI'2011 - Rome, July 26, 2011
Main Classes : Behavior Script (3/3)




IHCI'2011 - Rome, July 26, 2011
Method: Global View



          Strategy : Level X Model X Project X Mapping




IHCI'2011 - Rome, July 26, 2011
Method: Data Flow


         Strategy : Level X Model X Project X Mapping




IHCI'2011 - Rome, July 26, 2011
Software: Global View


   To support our model and method, we exploit MDA to build a graphic
      Dialog Editor




IHCI'2011 - Rome, July 26, 2011
Software: Object Tree


   To support our model and method, we exploit MDA to build a graphic
      Dialog Editor




IHCI'2011 - Rome, July 26, 2011
Software: characteristics


   This Dialog Editor is Implemented with Visual Basic 6 (VB6) and VBA

   1. It’s based primarily on the concept of objects Box. Developer has the
      choice between creating his own objects, using existing interactive
      objects or making both;

   2. It Gives freedom concerning the level of specification. The user can
      choose to specify his project at the abstract, concrete or final level;

   3. It generates the user interface at final level according to the platform
      toolkit. The resulting executable proposes architecture with three
      layers: The user interface, the functional machine and, the dialog
      controller;

   4. It Provides reification and concretization functionalities by skews of the
      mappings.


IHCI'2011 - Rome, July 26, 2011
Software: Architecture


   The Dialog Editor architecture is composed of four components




IHCI'2011 - Rome, July 26, 2011
Case Study: CTI Application


       With our dialog editor, we developed a software intended to cover the
       activities of a company which is specialized in the international transfer
       of money and import express worldwide services




IHCI'2011 - Rome, July 26, 2011
Case Study: CTI Application


       Percentage indicating the parts carried out manually and those
       generated automatically




IHCI'2011 - Rome, July 26, 2011
Conclusion


   • We introduce a particular method for supporting model-driven
     engineering of UI behaviors that are compliant with the Cameleon
     Reference Framework (CRF).

   • For this purpose, a UI Dialog Editor has been implemented;

   • Three target contexts of user are supported: HTML for Applications
     (HTA) in a mobile context, Microsoft Visual Basic 6 and Microsoft Visual
     Basic for Applications (VBA) in a stationary context;

   • Two operating systems are equally addressed: Microsoft Windows and
     Mac OS X;

   • A Case Study, CTI Application, is implemented using Dialog Editor
IHCI'2011 - Rome, July 26, 2011
Thank you very much!




FP7 Serenoa project
http://www.serenoa-fp7.eu


User Interface eXtensible Markup Language
http://www.usixml.org



For more information and downloading,
http://www.lilab.be

Weitere ähnliche Inhalte

Ähnlich wie MODEL-DRIVEN ENGINEERING OF BEHAVIORS FOR USER INTERFACES IN MULTIPLE CONTEXTS OF USE

Analysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodologyAnalysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodologyStanley Karouw
 
UML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionUML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionRamakant Soni
 
The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...
The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...
The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...Alessandra Bagnato
 
Publication Non Visual Components
Publication Non Visual ComponentsPublication Non Visual Components
Publication Non Visual Componentssatyres
 
Improving Quality and Cost-effectiveness in Enterprise Software Application ...
Improving Quality and Cost-effectiveness in  Enterprise Software Application ...Improving Quality and Cost-effectiveness in  Enterprise Software Application ...
Improving Quality and Cost-effectiveness in Enterprise Software Application ...Luigi Buglione
 
An Application of Business Process Modeling System Ilnet.pdf
An Application of Business Process Modeling System Ilnet.pdfAn Application of Business Process Modeling System Ilnet.pdf
An Application of Business Process Modeling System Ilnet.pdfJennifer Holmes
 
Various Approaches Of System Analysis
Various Approaches Of System AnalysisVarious Approaches Of System Analysis
Various Approaches Of System AnalysisLaura Torres
 
Towards Model-Based AHMI Development
Towards Model-Based AHMI DevelopmentTowards Model-Based AHMI Development
Towards Model-Based AHMI DevelopmentJean Vanderdonckt
 
2. uml-methodology_hypermedia_design_2000
2.  uml-methodology_hypermedia_design_20002.  uml-methodology_hypermedia_design_2000
2. uml-methodology_hypermedia_design_2000eudal
 
Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...
Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...
Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...WTHS
 
MK_MSc_Degree_Project_Report ver 5_updated
MK_MSc_Degree_Project_Report ver 5_updatedMK_MSc_Degree_Project_Report ver 5_updated
MK_MSc_Degree_Project_Report ver 5_updatedMohammed Ali Khan
 
Fourth Serenoa Newsletter
Fourth Serenoa NewsletterFourth Serenoa Newsletter
Fourth Serenoa NewsletterSerenoa Project
 

Ähnlich wie MODEL-DRIVEN ENGINEERING OF BEHAVIORS FOR USER INTERFACES IN MULTIPLE CONTEXTS OF USE (20)

Analysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodologyAnalysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodology
 
UML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language IntroductionUML Diagrams- Unified Modeling Language Introduction
UML Diagrams- Unified Modeling Language Introduction
 
The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...
The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...
The OMG UML Testing Profile in Use--An Industrial Case Study for the Future I...
 
Publication Non Visual Components
Publication Non Visual ComponentsPublication Non Visual Components
Publication Non Visual Components
 
Accessible project newsletter 5
Accessible project newsletter 5Accessible project newsletter 5
Accessible project newsletter 5
 
Improving Quality and Cost-effectiveness in Enterprise Software Application ...
Improving Quality and Cost-effectiveness in  Enterprise Software Application ...Improving Quality and Cost-effectiveness in  Enterprise Software Application ...
Improving Quality and Cost-effectiveness in Enterprise Software Application ...
 
Hse mda bpmn_210410
Hse mda bpmn_210410Hse mda bpmn_210410
Hse mda bpmn_210410
 
An Application of Business Process Modeling System Ilnet.pdf
An Application of Business Process Modeling System Ilnet.pdfAn Application of Business Process Modeling System Ilnet.pdf
An Application of Business Process Modeling System Ilnet.pdf
 
Framework
FrameworkFramework
Framework
 
Various Approaches Of System Analysis
Various Approaches Of System AnalysisVarious Approaches Of System Analysis
Various Approaches Of System Analysis
 
Towards Model-Based AHMI Development
Towards Model-Based AHMI DevelopmentTowards Model-Based AHMI Development
Towards Model-Based AHMI Development
 
Identification Criteria in Task Modeling
Identification Criteria in Task ModelingIdentification Criteria in Task Modeling
Identification Criteria in Task Modeling
 
2. uml-methodology_hypermedia_design_2000
2.  uml-methodology_hypermedia_design_20002.  uml-methodology_hypermedia_design_2000
2. uml-methodology_hypermedia_design_2000
 
3a5 accessible eu project use cases
3a5 accessible eu project use cases3a5 accessible eu project use cases
3a5 accessible eu project use cases
 
Ad upresentation
Ad upresentationAd upresentation
Ad upresentation
 
Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...
Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...
Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...
 
Hci practices-in-agile-software-development
Hci practices-in-agile-software-developmentHci practices-in-agile-software-development
Hci practices-in-agile-software-development
 
MK_MSc_Degree_Project_Report ver 5_updated
MK_MSc_Degree_Project_Report ver 5_updatedMK_MSc_Degree_Project_Report ver 5_updated
MK_MSc_Degree_Project_Report ver 5_updated
 
Fourth Serenoa Newsletter
Fourth Serenoa NewsletterFourth Serenoa Newsletter
Fourth Serenoa Newsletter
 
Jar chapter 1
Jar chapter 1Jar chapter 1
Jar chapter 1
 

Mehr von Jean Vanderdonckt

To the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User InterfacesTo the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User InterfacesJean Vanderdonckt
 
Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...Jean Vanderdonckt
 
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...Jean Vanderdonckt
 
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...Jean Vanderdonckt
 
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...Jean Vanderdonckt
 
Gesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsGesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsJean Vanderdonckt
 
Engineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeEngineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeJean Vanderdonckt
 
Evaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresEvaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresJean Vanderdonckt
 
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Jean Vanderdonckt
 
Designing Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsDesigning Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsJean Vanderdonckt
 
Fundamentals of Gestural Interaction
Fundamentals of Gestural InteractionFundamentals of Gestural Interaction
Fundamentals of Gestural InteractionJean Vanderdonckt
 
Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Jean Vanderdonckt
 
User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...Jean Vanderdonckt
 
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...Jean Vanderdonckt
 
Attach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkAttach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkJean Vanderdonckt
 
The Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesThe Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesJean Vanderdonckt
 
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-Defined Gestures with Upper BodyHead and Shoulders Gestures: Exploring User-Defined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper BodyJean Vanderdonckt
 
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesG-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesJean Vanderdonckt
 
Vector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionVector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionJean Vanderdonckt
 
An ontology for reasoning on body-based gestures
 An ontology for reasoning on body-based gestures An ontology for reasoning on body-based gestures
An ontology for reasoning on body-based gesturesJean Vanderdonckt
 

Mehr von Jean Vanderdonckt (20)

To the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User InterfacesTo the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User Interfaces
 
Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...
 
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
 
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
 
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
 
Gesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsGesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOps
 
Engineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeEngineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with Slime
 
Evaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresEvaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and Measures
 
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
 
Designing Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsDesigning Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and Pitfalls
 
Fundamentals of Gestural Interaction
Fundamentals of Gestural InteractionFundamentals of Gestural Interaction
Fundamentals of Gestural Interaction
 
Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?
 
User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...
 
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
 
Attach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkAttach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you Work
 
The Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesThe Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV Gestures
 
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-Defined Gestures with Upper BodyHead and Shoulders Gestures: Exploring User-Defined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
 
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesG-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
 
Vector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionVector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture Recognition
 
An ontology for reasoning on body-based gestures
 An ontology for reasoning on body-based gestures An ontology for reasoning on body-based gestures
An ontology for reasoning on body-based gestures
 

Kürzlich hochgeladen

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 

Kürzlich hochgeladen (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

MODEL-DRIVEN ENGINEERING OF BEHAVIORS FOR USER INTERFACES IN MULTIPLE CONTEXTS OF USE

  • 1. Model-Driven Engineering of Behaviors in User Interfaces Efrem Mbaki & Jean Vanderdonckt Université catholique de Louvain (UCL) Louvain School of Management (LSM) Pole of Research on Information and Services Management and Engineering (PRISME) http://www.lilab.be IHCI'2011 - Rome, July 26, 2011
  • 2. Objective • Our goal: build a methodology for model-based approach for behavior: Foundation MODELS METHOD SOFTWARE Exploitation IHCI'2011 - Rome, July 26, 2011
  • 3. Why behavior in user interfaces? • Two dimensions in UI development: presentation (look) vs behavior (feel) – Behavior is often left out for the profit of the presentation – Behavior is more complex – Behavior is often programmed, not frequently modeled nor represented – When behavior is represented, many different techniques exist – Behavior is hard to abstract from computing platform and from interaction modality – Behavior is hard to generate in a way that remains independent from any technology IHCI'2011 - Rome, July 26, 2011
  • 4. What is a behavior model? • A behavior model defines how users can interact with the presentation in order to carry out a given interactive task – Thus, behavior is intertwined with task and presentation • It represents – the actions that a user may initiate via CIO – the reactions that the UI communicates via CIOs • Same • Different – It tries to relate task to presentation IHCI'2011 - Rome, July 26, 2011
  • 5. Models: Conceptual Model IHCI'2011 - Rome, July 26, 2011
  • 6. Main Classes : ToolKit (1/3) In the modern graphical environments of design or development, Toolkits are represented as an objects box in which the developer can drag and drop items. A toolkit is characterized by its name, its level (abstract, concrete and Final) and a series of templates, functions and events describing particular behaviors. With this view, we consider a toolkit as a Model IHCI'2011 - Rome, July 26, 2011
  • 7. Main Classes : ToolKit (1/3) IHCI'2011 - Rome, July 26, 2011
  • 8. Main Classes : Mapping (2/3) Mechanism which makes it possible to define rules of transformation from a Toolkit towards another, possibly the same one Applying mapping, a given object can change to another or several others. In this second case, rules of transformations are necessary. A mapping is based primarily on two toolkits; a source and a destination. Its application requires presence of a user interface relating to the source Toolkit to lead to an interface in the destination Toolkit. It’s possible to apply the same mapping into to several interfaces. IHCI'2011 - Rome, July 26, 2011
  • 9. Main Classes : Mapping (2/3) IHCI'2011 - Rome, July 26, 2011
  • 10. Main Classes : Behavior Script (3/3) A sequential text furnished with the logic and conditional elements. It describes the desired actions according to a given interaction scenario. An action can be the change of an attribute value; the call of a mathematical function, the opening or the closing of a user interface, etc. IHCI'2011 - Rome, July 26, 2011
  • 11. Main Classes : Behavior Script (3/3) IHCI'2011 - Rome, July 26, 2011
  • 12. Method: Global View Strategy : Level X Model X Project X Mapping IHCI'2011 - Rome, July 26, 2011
  • 13. Method: Data Flow Strategy : Level X Model X Project X Mapping IHCI'2011 - Rome, July 26, 2011
  • 14. Software: Global View To support our model and method, we exploit MDA to build a graphic Dialog Editor IHCI'2011 - Rome, July 26, 2011
  • 15. Software: Object Tree To support our model and method, we exploit MDA to build a graphic Dialog Editor IHCI'2011 - Rome, July 26, 2011
  • 16. Software: characteristics This Dialog Editor is Implemented with Visual Basic 6 (VB6) and VBA 1. It’s based primarily on the concept of objects Box. Developer has the choice between creating his own objects, using existing interactive objects or making both; 2. It Gives freedom concerning the level of specification. The user can choose to specify his project at the abstract, concrete or final level; 3. It generates the user interface at final level according to the platform toolkit. The resulting executable proposes architecture with three layers: The user interface, the functional machine and, the dialog controller; 4. It Provides reification and concretization functionalities by skews of the mappings. IHCI'2011 - Rome, July 26, 2011
  • 17. Software: Architecture The Dialog Editor architecture is composed of four components IHCI'2011 - Rome, July 26, 2011
  • 18. Case Study: CTI Application With our dialog editor, we developed a software intended to cover the activities of a company which is specialized in the international transfer of money and import express worldwide services IHCI'2011 - Rome, July 26, 2011
  • 19. Case Study: CTI Application Percentage indicating the parts carried out manually and those generated automatically IHCI'2011 - Rome, July 26, 2011
  • 20. Conclusion • We introduce a particular method for supporting model-driven engineering of UI behaviors that are compliant with the Cameleon Reference Framework (CRF). • For this purpose, a UI Dialog Editor has been implemented; • Three target contexts of user are supported: HTML for Applications (HTA) in a mobile context, Microsoft Visual Basic 6 and Microsoft Visual Basic for Applications (VBA) in a stationary context; • Two operating systems are equally addressed: Microsoft Windows and Mac OS X; • A Case Study, CTI Application, is implemented using Dialog Editor IHCI'2011 - Rome, July 26, 2011
  • 21. Thank you very much! FP7 Serenoa project http://www.serenoa-fp7.eu User Interface eXtensible Markup Language http://www.usixml.org For more information and downloading, http://www.lilab.be