1 / 84

WYSIWYG Development of Data Driven Web Applications

WYSIWYG Development of Data Driven Web Applications. Fan Yang, Nitin Gupta, Chavdar Botev Cornell University, Ithaca, NY Elizabeth F Churchill, George Levchenko , Jayavel Shanmugasundaram Yahoo! Research , Santa Clara, CA. Abstract.

bill
Download Presentation

WYSIWYG Development of Data Driven Web Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. WYSIWYG Development of Data Driven Web Applications Fan Yang, Nitin Gupta, ChavdarBotev Cornell University, Ithaca, NY Elizabeth F Churchill, George Levchenko, JayavelShanmugasundaram Yahoo! Research, Santa Clara, CA

  2. Abstract • Social Networking sites and Web portals have opened up their APIs • External developers can design their own tools and share it with others • Targeted towards developers with programming expertise and database knowledge • Solution • AppForge , a WYSIWYG application development platform

  3. AppForge • WYSIWYG application development platform • Users graphically specify the components of web pages • The database schema and application logic are automatically generated • Provides instantaneous feedback • Not yet open to the public

  4. Solution Space Users WYSIWYG development General relationships AppForge Yahoo! Pipes Microsoft PopFly Power users JotSpot Oracle Forms App2You CogHead ZohoCreator DabbleDB WyaWorks Target Audience Developers Ning Ruby-on-Rails WebML Hilda Sophisticated Developers J2EE .NET Stateless Simple State Relationships … Data Complexity of Applications

  5. Trends • Web pages are turning into computing platforms • So websites have opened up their API’s for users • But beyond the reach of majority of users • Current solutions: • Yahoo! Pipes, Microsoft Popfly, App2You, CogHead • Zoho Creator, Ning, Dabble DB, WyaWorks, JotSpot, SaleForce

  6. Drawbacks • Non-WYSIWYG development environment • Two modes • Development mode • Execution mode • Developer has to visualize while in development mode • E.g. LaTex and Microsoft Word

  7. Drawbacks (contd..) • Limited support for creating stateful applications with complex structures • Support stateless web applications • Predefined structure • Support sophisticated stateful applications • But require developer background

  8. Drawbacks (contd..) • Limited support for publishing views over multiple related entities • Current systems don’t support views • Require database knowledge

  9. AppForge • WYSIWYG environment • Integrates design, deployment and testing • Instantaneous feedback • Generates database schema and application logic • WYSIWYG to target the general user

  10. AppForge (contd..) • Users can create sophisticated stateful applications • Developers focus on display items • Entities and relationships are inferred • Algorithm translates developer actions into database schema

  11. AppForge (contd..) • Users create complex views over multiple entities • Schema Navigation Menu • Hierarchical graph • Algorithm to convert E-R graph to Schema Navigation Menu • Algorithm to translate developers actions on Menu into views

  12. System Architecture

  13. System Components • Application Creation System • Creates and updates the application model • Page View Creation module • Interface for creating and updating web pages • Automatic Schema Generation module • Generates the relational database schema from page views • Application model stored in the file system • Application state is stored in a relational database system

  14. System Components (contd..) • Application Runtime System • Loads the application model • Interprets the model • Issues SQL queries over the database

  15. AppForge GUI

  16. Abstractions • Application • Create and manage multiple applications • Role • Users are divided into multiple roles • Page • Each page can contain one or more Forms and Views • Form • Used to enter new data • View • View and update the application state • Container • Entities in an application

More Related