ACM Home Page
Please provide us with feedback. Feedback
Automatic client-server partitioning of data-driven web applications
Full text PdfPdf (347 KB)
Source International Conference on Management of Data archive
Proceedings of the 2006 ACM SIGMOD international conference on Management of data table of contents
Chicago, IL, USA
DEMONSTRATION SESSION: Group B table of contents
Pages: 760 - 762  
Year of Publication: 2006
ISBN:1-59593-434-0
Authors
Nicholas Gerner  Cornell University, Ithaca, New York
Fan Yang  Cornell University, Ithaca, New York
Alan Demers  Cornell University, Ithaca, New York
Johannes Gehrke  Cornell University, Ithaca, New York
Mirek Riedewald  Cornell University, Ithaca, New York
Jayavel Shanmugasundaram  Cornell University, Ithaca, New York
Sponsors
ACM: Association for Computing Machinery
SIGMOD: ACM Special Interest Group on Management of Data
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 62,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1142473.1142580
What is a DOI?

ABSTRACT

Current application development tools provide completely different programming models for the application server (e.g., Java and J2EE) and the client web browser (e.g., JavaScript and HTML). Consequently, the application developer is forced to partition the application code between the server and client at the time of writing the application. However, the partitioning of the code between the client and server may have to be changed during the evolution of the application for performance reasons (it may be better to push more functionality to the client), for correctness reasons (data that conflicts with multiple clients cannot always be pushed to clients), and for supporting clients with different computing power (browsers on desktops vs. PDAs). Since the client and server use different programming models, moving application code from client to server (and vice versa) reduces programmer productivity and also has the potential to introduce concurrency bugs. In this demonstration, we advocate an alternative solution to this problem: we propose developing applications using a unified declarative high-level language called Hilda, and show how a Hilda compiler can automatically (and correctly) partition Hilda code between the client and the server using a real Course Management System application. We illustrate our techniques using two clients: a powerful laptop machine and a less powerful PDA.




Collaborative Colleagues:
Nicholas Gerner: colleagues
Fan Yang: colleagues
Alan Demers: colleagues
Johannes Gehrke: colleagues
Mirek Riedewald: colleagues
Jayavel Shanmugasundaram: colleagues