Skip to main content
eScholarship
Open Access Publications from the University of California

Adaptive Graphical User Interfaces for Custom-Tailored Applications

  • Author(s): Pareja-Lecaros, Alberto Octavio
  • Advisor(s): Taylor, Richard N
  • et al.
Creative Commons Attribution-ShareAlike 4.0 International Public License
Abstract

ABSTRACT OF THE THESIS

Adaptive Graphical User Interfaces for Custom-Tailored Applications

By

Alberto O. Pareja-Lecaros

Master of Science in Information and Computer Science

University of California, Irvine, 2016

Professor Richard N. Taylor, Chair

Building graphical user interfaces has been a continuing challenge for software developers and designers ever since graphics were introduced in computing. These days, in the world of ubiquitous and mobile computing, building user interfaces to work on every device and platform is tedious at best and requires duplicating work. To tackle this challenge, we introduce an approach which allows clients to modify a software application’s user interface without the application knowing about any of those clients beforehand. Our technique employs the use of mobile code between clients and the application in order for those clients to adapt the application’s user interface to best fit their needs. We use the ComputAtional State Transfer architectural style in order to simplify the design of the communication layer between clients and the application and to ensure secure communication between the entities.

We find that building such an application can be practical and that clients are able to introduce code to the application such that the graphical user interface is adapted to those clients. To demonstrate, we created a calculator application whose graphical user interface and related functionality is modified and then consumed by three different clients. The first client uses the application as is, the second client introduces additional functionality to the application, and the third client introduces a change to the presentation of user interface components in the application in order for it to work better on its devices. All three clients are accommodated without the application having any knowledge about what modifications the clients specifically make.

Main Content
Current View