Filling the gap between users and objects: a multichannel interactive environment Davide Carboni, Gavino Paddeu, Stefano Sanna, Andrea Piras {dcarboni,

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

Technical and design issues in implementation Dr. Mohamed Ally Director and Professor Centre for Distance Education Athabasca University Canada New Zealand.
Facts about Welcome to this video from Ozeki. In this video I will present what makes Ozeki Phone System XE the Worlds best on-site software PBX for Windows.
Fast. Forward. Wireless. Recommendations for Improving Device Independent Presentation Authoring Krishna Vedati.
Mobile Application Architectures
A Prototype Implementation of a Framework for Organising Virtual Exhibitions over the Web Ali Elbekai, Nick Rossiter School of Computing, Engineering and.
Adding Dynamic Content to your Web Site
Apache Struts Technology
Introduction to the World of Computers
Delivering the multiagent technology to end-users through the web D. Mitrović 1, M. Ivanović 1, C. Bădică 2 1 University of Novi Sad, Serbia 2 University.
Technical Architectures
Browsers and Servers CGI Processing Model ( Common Gateway Interface ) © Norman White, 2013.
AJAX Presented by: Dickson Fu Dimas Ariawan Niels Andreassen Ryan Dial Jordan Nielson CMPUT 410 University of Alberta 2006.
The Application Layer Chapter 7. Electronic Mail Architecture and Services The User Agent Message Formats Message Transfer Final Delivery.
© 2009 Research In Motion Limited Methods of application development for mobile devices.
Implementation of One Stop Search by XSLT By Dave Low University of Hong Kong 9-Dec-2003.
Interpret Application Specifications
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Object-Oriented Analysis and Design
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Introduction to Web Applications Instructor: Enoch E. Damson.
WebQuilt and Mobile Devices: A Web Usability Testing and Analysis Tool for the Mobile Internet Tara Matthews Seattle University April 5, 2001 Faculty Mentor:
UNIT-V The MVC architecture and Struts Framework.
Client/Server Architectures
Lecturer: Ghadah Aldehim
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
LAYING OUT THE FOUNDATIONS. OUTLINE Analyze the project from a technical point of view Analyze and choose the architecture for your application Decide.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
Aurora: A Conceptual Model for Web-content Adaptation to Support the Universal Accessibility of Web-based Services Anita W. Huang, Neel Sundaresan Presented.
CS378 - Mobile Computing Web - WebView and Web Services.
XForms: A case study Rajiv Shivane & Pavitar Singh.
Rich Internet Applications(RIA) for Programming e-Commerce Andrzej P.Urbański Institute of Computer Science Poznań University of Technology.
DATA COMMUNICATION DONE BY: ALVIN SAMPATH CARLVIN SAMPATH.
Mobile Topic Maps for e-Learning John McDonald & Darina Dicheva Intelligent Information Systems Group Computer Science Department Winston-Salem State University,
J2EE Structure & Definitions Catie Welsh CSE 432
All you need to know about building donation pages Marta Fornal de Seixas.
Java CGI Lecture notes by Theodoros Anagnostopoulos.
Architectures Classic Client/Server Architecture Classic Web Architecture N-tier (multi-tier) Architecture FEN Databaser og Modellering.
NAVEEN AGENT BASED SOFTWARE DEVELOPMENT. WHAT IS AN AGENT? A computer system capable of flexible, autonomous (problem-solving) action, situated in dynamic,
1 Overview of XSL. 2 Outline We will use Roger Costello’s tutorial The purpose of this presentation is  To give a quick overview of XSL  To describe.
Justin Tilton uPortal Framework and User Interface Demonstration.
A Data Access Framework for ESMF Model Outputs Roland Schweitzer Steve Hankin Jonathan Callahan Kevin O’Brien Ansley Manke.
© 2013, published by Flat World Knowledge Chapter 10 Understanding Software: A Primer for Managers 10-1.
ProActive Infrastructure Eric Brewer, David Culler, Anthony Joseph, Randy Katz Computer Science Division U.C. Berkeley ninja.cs.berkeley.edu Active Networks.
Louisa Lambregts, Louisa Lambregts
Web Server.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Presentation.
Presentation Title 1 1/27/2016 Lucent Technologies - Proprietary Voice Interface On Wireless Applications Protocol A PDA Implementation Sherif Abdou Qiru.
Mobile Service with.NET By – Sharad Varshney. Agenda What is it supposed to do? Goals Applications System Design Future Work / Enhancements.
Apache Struts Technology A MVC Framework for Java Web Applications.
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
JavaScript Invented 1995 Steve, Tony & Sharon. A Scripting Language (A scripting language is a lightweight programming language that supports the writing.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
The Holmes Platform and Applications
BUILD SECURE PRODUCTS AND SERVICES
Network Infrastructure Services Supporting WAP Clients
The Client-Server Model
Unit – 5 JAVA Web Services
GeneXus 9.0: Web applications at their higher power
UNIT 15 Webpage Creator.
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Teaching slides Chapter 6.
Choosing between Silverlight and AJAX
Presentation transcript:

Filling the gap between users and objects: a multichannel interactive environment Davide Carboni, Gavino Paddeu, Stefano Sanna, Andrea Piras {dcarboni, gavino, gerda, CRS4 – Center for Advanced Studies, Research and Development in Sardinia WOA 2003 – Villasimius (Cagliari)

Environment in evolution  Mobile computing  Pervasive computing  Domotics  Wearable technologies

WOA 2003 – Villasimius (Cagliari) Problem  An application is available only on a kind of devices.  Often developers have to re- implement it in order to reach other devices. Expensive tasks in terms of money and time.

WOA 2003 – Villasimius (Cagliari) The simplest approach  It is not necessary to re-implement the logic of the application but only to change its user interfaces.

WOA 2003 – Villasimius (Cagliari) A solution: model-based user interfaces  A model is usually defined with a tool that generates a task model.  The task model is translated in text document written following an ad-hoc declarative language.  A processor parses the text and composes the user interface.

WOA 2003 – Villasimius (Cagliari) Another solution: based on Model- View-Control  Decompose the application logic in a set of models that are strictly bound to the data.  For each model, the designer can provide one or more user interfaces, the View-Control subsystem.

WOA 2003 – Villasimius (Cagliari) Our approach  Starting from the MVC.  The model is a set of objects.  Each model is analyzed for rendering the user interface according to the features of the target device.  MORE – Multichannel Object Renderer

WOA 2003 – Villasimius (Cagliari) Model translation  Create a container for the actual channel.  Detect fields and methods of the object model.  For each field: search the coupled widget if it exists, add it to container else add a link  For each method: add widget to container

WOA 2003 – Villasimius (Cagliari) Categorization of devices  Fat Client: the device can download and execute mobile code (desktop, notebooks, tablet-PCs).  Thin Client: the device can execute local code and can download/upload data (PDA, set-top box, programmable phone).  Web-like Client: the device is equipped with 3 rd party browser.

WOA 2003 – Villasimius (Cagliari) MORE architecture

WOA 2003 – Villasimius (Cagliari) An object model: personal agenda

WOA 2003 – Villasimius (Cagliari) Personal agenda on fat clients

WOA 2003 – Villasimius (Cagliari) User interface generation on fat clients  The output of the model translation is the user interface.  The actions performed on the user interface are directly forwarded to the object model.

WOA 2003 – Villasimius (Cagliari) User interface composition on thin clients  The model translation is performed on server side and produces an XML document.  On the device, a small application is installed. It receives the XML document, parses it and generates the user interface.  Three implementations of MORE: iTV, PDA and smartphone.

WOA 2003 – Villasimius (Cagliari) Personal agenda on thin clients

WOA 2003 – Villasimius (Cagliari) User interface on web-like clients  As for thin clients, the model translation produces an XML document.  A XSLT processor takes the XML document and a selected set of XSL style sheets and returns the mark-up document for the user browser.  The processing is server side.  Four implementations of MORE: “high-end” HTML, “low-end” HTML, WML and VoiceXML.

WOA 2003 – Villasimius (Cagliari) Personal agenda on “high-end” HTML browser

WOA 2003 – Villasimius (Cagliari) Personal agenda on WML browser

WOA 2003 – Villasimius (Cagliari) Pros  The object models are ready-to-use for each category of devices with an existing implementation of MORE.  Easy to extend as new devices categories emerge.  Fast prototyping.

WOA 2003 – Villasimius (Cagliari) Cons  Limited customization of user interface.  Difficult access to peripherals connected to the user device.

WOA 2003 – Villasimius (Cagliari) Thanks for your attention Andrea Piras

WOA 2003 – Villasimius (Cagliari)

Why multichannel?  Multichannel because the 8 MORE implementations do not share the changes on an object and each one works as the others do not exist.

WOA 2003 – Villasimius (Cagliari) Updating the fields values  The value updates on the UI are update on the model too Directly on fat client Thin client sends a XML document Web-like client sends the values as parameters of the request

WOA 2003 – Villasimius (Cagliari) Result of an invoked method  If the result of the method is a complex object: it will be the next processed model a basic field: it will be encapsulated in a ad-hoc object and the object will be the next processed model null: the same object of the current UI will be the processed model

WOA 2003 – Villasimius (Cagliari)  The kind of the browser is identified analyzing the HTTP headers of the request. Standard user agent header for 3rd party browser Extended headers for thin client

WOA 2003 – Villasimius (Cagliari) MORE – agent?  MORE has the features of an intelligent agent: Capable of flexible action in some environment Reactive: responds to environment changes Proactiveness: attempt to achieve goals Social ability: can interact with other applications Veracity: communicate true information Benevolence: try to do what is asked Rationality: act in order to achieve goals