Web Machines : a new platform for application construction and execution
Author(s)
Bryant, Robert A., M. Eng. Massachusetts Institute of Technology
DownloadFull printable version (30.84Mb)
Alternative title
New platform for application construction and execution
Other Contributors
Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science.
Advisor
David L. Brock.
Terms of use
Metadata
Show full item recordAbstract
In today's world, computer application platforms are becoming increasingly important in providing positive application end-user and developer experiences. While there are many successful application platforms available, none are perfect or ideal. In this thesis, I describe the architecture, design and implementation of a new application platform I have developed called Web Machines which attempts to achieve exactly this goal: to be the ideal platform for application construction and execution. In order to better define an ideal application platform, I develop a set of 20 different specific goal criteria for platform end-user experience, developer experience, and administrator experience, and analyze how five different currently successful application platforms achieve those goals. These goals and platform analyses help motivate the architecture and design of Web Machines. The end result is a hybrid remote server/local client application platform that supports construction and execution of applications called Machines. Machine backend logic can be executed either remotely on registered Machine servers, or locally on a user's own computer, and Machine frontend interfaces are rendered and used in a rich, desktop-like MDI web application called the Web Machines environment. Web Machines also provides several different powerful methods for constructing Machines, including both traditional programming code-based approaches, and novel, totally visual approaches which center around drawing applications together as graphs of other applications and components. (cont.) This design, in addition to meeting almost all of the defined ideal application platform goals, makes significant novel and innovative contributions to the application platform field with some exciting new platform concepts: the ability to visually compose and program together arbitrary user-generated applications, components, and other compositions; implicit, high-level parallelization of composed application components, each of which may be running remotely at different locations across the internet; support for both remote and local application execution; semantic definition and understanding of application inputs and outputs; and the ability to drive one application's control input ("clicks and keypresses") with the data output of another.
Description
Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2009. Includes bibliographical references (p. 155-158).
Date issued
2009Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology
Keywords
Electrical Engineering and Computer Science.