‹‹ Back to list
2013-2017, PhD thesis project

The openness, flexibility, and common standards of the Internet give great possibilities of end-user programming on the Web (WebEUP). There exist a large number of WebEUP tools focusing on narrow use cases with predefined interactivity and templates. However our formative study found that end-user needs are complicated and dynamic, and they cannot be fully supported by existing tools. VESPY enables end-users to freely compose common functionalities (extraction, transformation, integration, automation, and customization) of WebEUP with novel interplay of grid-based dataflow UI, domain-specific language (DSL), and programming-by-example (PBE). VESPY not only supports customization on the fly, but also allows end-users to package and deploy their enhancements with flexible interactivity as self-contained browser plug-ins for other end-users.

Thus far, VESPY’s capabilities have been demonstrated with four example enhancements. I also have conducted a controlled experiment that compared user’s experience of using the dataflow UI and PBE. The result indicates that end-users can effectively use both techniques for simple to complex tasks, but usability issues still remain.

I propose to complete the dissertation with work in four areas. First, I will improve the usability of VESPY by addressing the issues found. Second, I will extend VESPY’s functionality to support advanced program structures (e.g. complex data types, and nested sub-routines). Third, I will build an online repository for storing and managing VESPY enhancements. Finally, I will conduct a set of long-term in-situ case studies to assess VESPY’s efficacy for end-user needs in real world.

The expected contributions of this dissertation are: