SlideShare a Scribd company logo
Université catholique de Louvain (UCL) 
Louvain Interaction Lab (LiLab) 
Place des Doyens, 1 
B-1348 Louvain-la-Neuve (Belgium) 
Model-based Approches to 
Reengineering Web Pages 
by 
Laurent Bouillon, Jean Vanderdonckt & 
Jacob Eisenstein
Introduction: the needs (1/2) 
 Need to access the 
same web site from 
different HTML access 
devices 
=> other presentations 
 A presentation model 
of a web page can be 
reverse engineered to 
migrate it to another 
environment
Introduction: the needs (2/2) 
 Need to adapt Web contents to different 
appliances 
– Tag-based language: WML, cHTML, VoiceXML 
– Programming language: C, C++, Java 
– Design time vs Run-time 
 Need to migrate legacy systems from old 
platforms to new platforms without loosing 
effort 
 Wish to support context-sensitivity
Traditional approaches used 
 Forward engineering 
Interactive 
application 
Domain 
model 
Semantic 
core code 
User inter-face 
code 
UI Integration 
Application modeling and development 
Application 
model 
Data 
model 
Semantic core 
component 
Presentation 
model 
Dialog 
model 
Domain modeling User interface modeling and generation 
Application modeling and development 
Scenario Interactive 
application 
Task 
model 
Domain 
model 
User 
model 
Semantic 
core code 
User inter-face 
code 
UI Integration 
Application 
model 
Data 
model 
Semantic core 
component 
Presentation 
model 
Dialog 
model 
User-task elicitation User interface modeling and generation
Example of forward engineering 
 Multiple UI model-based approach 
- Atomica
Reverse engineering 
Interactive 
application 
Semantic 
core code 
UI Extraction 
User inter-face 
code 
Presentation 
model 
Dialog 
model 
User interface reverse engineering
Reengineering 
 Combination of reverse and forward 
Interactive 
application 
Semantic 
core code 
UI Extraction 
User inter-face 
code 
Presentation 
model 
Dialog 
model 
New UI 
code 
User interface reverse engineering and forward engineering 
New UI Integration 
New interactive 
application
Redocumentation 
 Same as re-engineering with platform 
Interactive 
application 
Semantic 
core code 
UI Extraction 
User inter-face 
code 
Presentation 
model 
Dialog 
model 
New UI 
code 
User interface reverse engineering and redocumentation 
New UI Integration 
New interactive 
application 
Platform 
model 
(1) (2)
Design recovery 
 More « intelligence » required 
Interactive 
application 
Semantic 
core code 
UI Extraction 
User inter-face 
code 
Application reverse engineering 
User interface reverse engineering 
Task 
model 
Domain 
model 
User 
model 
Application 
model 
Data 
model 
Semantic core 
component 
Presentation 
model 
Dialog 
model 
User, task, and domain 
reverse engineering 
Log files 
Predictive models 
Design heuristics 
Usability guidelines
Vaquita 
VAQUITA (reVerse engineering of 
Applications by Questions, Information 
Selection, and Transformation 
Alternatives) 
http://www.isys.ucl.ac.be/ 
bchi/research/vaquita.htm
The algorithm 
 Presentation 
and dialog 
Inclusion/exclusion of presentation elements 
Initialization of the Web pages pool 
Web pages pool empty? 
Selection of an individual Web page 
Identification of Concrete Interaction Objects 
Transformation of Concrete Interaction Objects 
into Abstract Interaction Objects 
Selection of Logical Window 
Hierarchy building for LWs and PUs 
Update vectors of links and Web pages pool 
Identification of links 
Abstraction of links into Windows Transitions 
Identification of Navigation Structures 
Building 
of 
presentation 
model 
Building 
of 
dialog 
model 
yes 
no
The RE process in Vaquita 
Web page extraction 
HTML Page 
Tidy 
Msxml3.dll 
XML File 
XIML Presentation 
model 
.RES 
Resource file 
Detection 
Structuration 
Manual modification 
VAQUITA 
Translation 
New DOM writing User Interface Generator 
WML, VoiceXML, 
HTM files 
Reverse 
Engineering 
Forward 
Engineering
The Target : a presentation model 
Presentation Unit 
1-n 
Logical Window 
1-n 
Composite AIO 
1-n 
Simple AIO 
= can be composed 
= is-a 
0-n 
0-n 
0-n 
1-n 1-n 
0-n 
Presentation AIO Control AIO
The Means : RE options 
Flexible usage of mapping tables 
2 types of options: 
- Objects and attributes options 
- Alternative heuristic options (folding, 
Table mapping …)
XIML 
* Presentation stored in XIML 
(http://www.ximl.org) 
* Two types of relationships: 
- hierarchical relationship 
- spatial relationships (layout)
Options
Presentation Model
Conclusion 
 Vaquita allows flexible reverse engineering 
and so permits multiple presentation models. 
 Part of a larger migration process, results will 
be used with other tools. 
 Can be used for iterative redesigning of a web 
page. 
 The reverse engineering is limited to a static 
analysis. A dynamic analysis may improve the 
redesign of a web page for another context of 
use.

More Related Content

Similar to Model-Based Approaches to Reengineering Web Pages

IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
Marco Brambilla
 
WebML for OMG
WebML for OMGWebML for OMG
WebML for OMG
Marco Brambilla
 
WebML and WebRatio 5 - TOOLS conference, Zurich 2008
WebML and WebRatio 5 - TOOLS conference, Zurich 2008WebML and WebRatio 5 - TOOLS conference, Zurich 2008
WebML and WebRatio 5 - TOOLS conference, Zurich 2008
Marco Brambilla
 
Multi-Dimensional Context-Aware Adaptation of Service Front-ends
Multi-Dimensional Context-Aware Adaptation of Service Front-endsMulti-Dimensional Context-Aware Adaptation of Service Front-ends
Multi-Dimensional Context-Aware Adaptation of Service Front-ends
Jean Vanderdonckt
 
TopMod3d - Texas Open Source Symposium
TopMod3d - Texas Open Source SymposiumTopMod3d - Texas Open Source Symposium
TopMod3d - Texas Open Source Symposium
David Morris
 
"A Highly Decoupled Front-end Framework for High Trafficked Web Applications"...
"A Highly Decoupled Front-end Framework for High Trafficked Web Applications"..."A Highly Decoupled Front-end Framework for High Trafficked Web Applications"...
"A Highly Decoupled Front-end Framework for High Trafficked Web Applications"...
Prem Gurbani
 
Yemo_Capstone_MS_Fairfield University
Yemo_Capstone_MS_Fairfield UniversityYemo_Capstone_MS_Fairfield University
Yemo_Capstone_MS_Fairfield UniversityGuillermo Julca
 
Source-to-source transformations: Supporting tools and infrastructure
Source-to-source transformations: Supporting tools and infrastructureSource-to-source transformations: Supporting tools and infrastructure
Source-to-source transformations: Supporting tools and infrastructure
kaveirious
 
13 si(systems analysis and design )
13 si(systems analysis and design )13 si(systems analysis and design )
13 si(systems analysis and design )
Nurdin Al-Azies
 
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
Jean Vanderdonckt
 
PhD thesis
PhD thesisPhD thesis
MyMobileWeb Certification Part II
MyMobileWeb Certification Part IIMyMobileWeb Certification Part II
MyMobileWeb Certification Part II
crdlc
 
Front-End Web Development
Front-End Web DevelopmentFront-End Web Development
Front-End Web Development
Yash Sati
 
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
 
Directions on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentDirections on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentTakeshi Shinmura
 
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
Amit Sheth
 
The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015
Jonathan Challener
 
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the WebWebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
Marco Brambilla
 
Webhouse
WebhouseWebhouse
XML Sapiens unified site-building concept in focus of XML/PHP
XML Sapiens unified site-building concept in focus of XML/PHPXML Sapiens unified site-building concept in focus of XML/PHP
XML Sapiens unified site-building concept in focus of XML/PHP
rglab
 

Similar to Model-Based Approaches to Reengineering Web Pages (20)

IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
 
WebML for OMG
WebML for OMGWebML for OMG
WebML for OMG
 
WebML and WebRatio 5 - TOOLS conference, Zurich 2008
WebML and WebRatio 5 - TOOLS conference, Zurich 2008WebML and WebRatio 5 - TOOLS conference, Zurich 2008
WebML and WebRatio 5 - TOOLS conference, Zurich 2008
 
Multi-Dimensional Context-Aware Adaptation of Service Front-ends
Multi-Dimensional Context-Aware Adaptation of Service Front-endsMulti-Dimensional Context-Aware Adaptation of Service Front-ends
Multi-Dimensional Context-Aware Adaptation of Service Front-ends
 
TopMod3d - Texas Open Source Symposium
TopMod3d - Texas Open Source SymposiumTopMod3d - Texas Open Source Symposium
TopMod3d - Texas Open Source Symposium
 
"A Highly Decoupled Front-end Framework for High Trafficked Web Applications"...
"A Highly Decoupled Front-end Framework for High Trafficked Web Applications"..."A Highly Decoupled Front-end Framework for High Trafficked Web Applications"...
"A Highly Decoupled Front-end Framework for High Trafficked Web Applications"...
 
Yemo_Capstone_MS_Fairfield University
Yemo_Capstone_MS_Fairfield UniversityYemo_Capstone_MS_Fairfield University
Yemo_Capstone_MS_Fairfield University
 
Source-to-source transformations: Supporting tools and infrastructure
Source-to-source transformations: Supporting tools and infrastructureSource-to-source transformations: Supporting tools and infrastructure
Source-to-source transformations: Supporting tools and infrastructure
 
13 si(systems analysis and design )
13 si(systems analysis and design )13 si(systems analysis and design )
13 si(systems analysis and design )
 
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
 
PhD thesis
PhD thesisPhD thesis
PhD thesis
 
MyMobileWeb Certification Part II
MyMobileWeb Certification Part IIMyMobileWeb Certification Part II
MyMobileWeb Certification Part II
 
Front-End Web Development
Front-End Web DevelopmentFront-End Web Development
Front-End Web Development
 
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...
 
Directions on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentDirections on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_development
 
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
 
The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015
 
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the WebWebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
 
Webhouse
WebhouseWebhouse
Webhouse
 
XML Sapiens unified site-building concept in focus of XML/PHP
XML Sapiens unified site-building concept in focus of XML/PHPXML Sapiens unified site-building concept in focus of XML/PHP
XML Sapiens unified site-building concept in focus of XML/PHP
 

More from 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 Interfaces
Jean 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 DevOps
Jean Vanderdonckt
 
Engineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeEngineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with Slime
Jean 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 Measures
Jean 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 Pitfalls
Jean Vanderdonckt
 
Fundamentals of Gestural Interaction
Fundamentals of Gestural InteractionFundamentals of Gestural Interaction
Fundamentals of Gestural Interaction
Jean 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
 
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
Jean 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 Gestures
Jean 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 Body
Jean 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 Smartphones
Jean 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 Recognition
Jean 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 gestures
Jean Vanderdonckt
 
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesAB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
Jean Vanderdonckt
 

More from 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...
 
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
 
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesAB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
 

Recently uploaded

Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
abdulrafaychaudhry
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Game Development with Unity3D (Game Development lecture 3)
Game Development  with Unity3D (Game Development lecture 3)Game Development  with Unity3D (Game Development lecture 3)
Game Development with Unity3D (Game Development lecture 3)
abdulrafaychaudhry
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 

Recently uploaded (20)

Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Game Development with Unity3D (Game Development lecture 3)
Game Development  with Unity3D (Game Development lecture 3)Game Development  with Unity3D (Game Development lecture 3)
Game Development with Unity3D (Game Development lecture 3)
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 

Model-Based Approaches to Reengineering Web Pages

  • 1. Université catholique de Louvain (UCL) Louvain Interaction Lab (LiLab) Place des Doyens, 1 B-1348 Louvain-la-Neuve (Belgium) Model-based Approches to Reengineering Web Pages by Laurent Bouillon, Jean Vanderdonckt & Jacob Eisenstein
  • 2. Introduction: the needs (1/2)  Need to access the same web site from different HTML access devices => other presentations  A presentation model of a web page can be reverse engineered to migrate it to another environment
  • 3. Introduction: the needs (2/2)  Need to adapt Web contents to different appliances – Tag-based language: WML, cHTML, VoiceXML – Programming language: C, C++, Java – Design time vs Run-time  Need to migrate legacy systems from old platforms to new platforms without loosing effort  Wish to support context-sensitivity
  • 4. Traditional approaches used  Forward engineering Interactive application Domain model Semantic core code User inter-face code UI Integration Application modeling and development Application model Data model Semantic core component Presentation model Dialog model Domain modeling User interface modeling and generation Application modeling and development Scenario Interactive application Task model Domain model User model Semantic core code User inter-face code UI Integration Application model Data model Semantic core component Presentation model Dialog model User-task elicitation User interface modeling and generation
  • 5. Example of forward engineering  Multiple UI model-based approach - Atomica
  • 6. Reverse engineering Interactive application Semantic core code UI Extraction User inter-face code Presentation model Dialog model User interface reverse engineering
  • 7. Reengineering  Combination of reverse and forward Interactive application Semantic core code UI Extraction User inter-face code Presentation model Dialog model New UI code User interface reverse engineering and forward engineering New UI Integration New interactive application
  • 8. Redocumentation  Same as re-engineering with platform Interactive application Semantic core code UI Extraction User inter-face code Presentation model Dialog model New UI code User interface reverse engineering and redocumentation New UI Integration New interactive application Platform model (1) (2)
  • 9. Design recovery  More « intelligence » required Interactive application Semantic core code UI Extraction User inter-face code Application reverse engineering User interface reverse engineering Task model Domain model User model Application model Data model Semantic core component Presentation model Dialog model User, task, and domain reverse engineering Log files Predictive models Design heuristics Usability guidelines
  • 10. Vaquita VAQUITA (reVerse engineering of Applications by Questions, Information Selection, and Transformation Alternatives) http://www.isys.ucl.ac.be/ bchi/research/vaquita.htm
  • 11. The algorithm  Presentation and dialog Inclusion/exclusion of presentation elements Initialization of the Web pages pool Web pages pool empty? Selection of an individual Web page Identification of Concrete Interaction Objects Transformation of Concrete Interaction Objects into Abstract Interaction Objects Selection of Logical Window Hierarchy building for LWs and PUs Update vectors of links and Web pages pool Identification of links Abstraction of links into Windows Transitions Identification of Navigation Structures Building of presentation model Building of dialog model yes no
  • 12. The RE process in Vaquita Web page extraction HTML Page Tidy Msxml3.dll XML File XIML Presentation model .RES Resource file Detection Structuration Manual modification VAQUITA Translation New DOM writing User Interface Generator WML, VoiceXML, HTM files Reverse Engineering Forward Engineering
  • 13. The Target : a presentation model Presentation Unit 1-n Logical Window 1-n Composite AIO 1-n Simple AIO = can be composed = is-a 0-n 0-n 0-n 1-n 1-n 0-n Presentation AIO Control AIO
  • 14. The Means : RE options Flexible usage of mapping tables 2 types of options: - Objects and attributes options - Alternative heuristic options (folding, Table mapping …)
  • 15. XIML * Presentation stored in XIML (http://www.ximl.org) * Two types of relationships: - hierarchical relationship - spatial relationships (layout)
  • 18. Conclusion  Vaquita allows flexible reverse engineering and so permits multiple presentation models.  Part of a larger migration process, results will be used with other tools.  Can be used for iterative redesigning of a web page.  The reverse engineering is limited to a static analysis. A dynamic analysis may improve the redesign of a web page for another context of use.