CS297 Proposal

Title: A Model-Controller Interface for Struts-Based Web Applications

Name : Deepti Bhardwaj

Email : er.deeptibhardwaj@gmail.com

Advisor: Dr. Chris Pollett

Description:

Struts provides a framework for servlet and JSP applications that uses Model-View-Controller (MVC) architecture where Model is business logic/business processes such as Java Beans, View is dialogs such as JavaServer Pages and Controller is central control unit such as Java Servlets [5].

There are many Integrated Development Environment (IDE) available in the market for example JDeveloper and Eclipse which provide the environment to develop Struts applications. However, these IDEs are desktop-based applications. In the proposed project, I will be developing a web-based application which will act as an IDE for interfacing and integrating the model and controller of a MVC architecture based applications. The proposed IDE will maximize the programmer productivity and will be available across the network. A web-based IDE will eliminate the inconvenience of installing or configuring the desktop-based IDEs. Developers will be able to map the user requests to an appropriate action which implements the model in the controller by just doing some clicks and drag-drop functionality provided by the web-based IDE.

Schedule:

Week 1:

(01/25/10 - 01/29/10)

Do the basic environment setup and discuss the project in detail with the advisor.

Week 2, 3:

(02/01/10 - 02/12/10)

Learn Struts and develop a demo project in Struts.

Week 4, 5:

(02/15/10 - 02/26/10)

Study the design architecture of the web-based IDE "Aurorasdk".

Week 6, 7:

(03/01/10 - 03/12/10)

Study the Javascript frameworks for implementing the web front-end.

Week 8, 9:

(03/15/10 - 03/26/10)

Design the architecture of the IDE and develop file system to access file on remote server.

Week 10, 11:

(04/05/10 - 04/16/10)

Implement the drag and drop functionality for the files.

Week 12:

(04/19/10 - 04/23/10)

Test the application on different browsers and platform.

Week 13:

(04/26/10 - 04/30/10)

Prepare the initial draft for the report.

Week 14, 15:

(05/03/10 - 05/14/10)

Finalize report and presentation

Deliverables:

The full project will be done when CS298 is completed. The following will be done by the end of CS297:

 Deliverable 1 : Build a demo Struts application project.

 Deliverable 2 : Study the design architecture of the web-based IDE "Aurorasdk" [3].

 Deliverable 3 : Develop a user interface to create Model components.

 Deliverable 4 : Develop a user interface to provide tools for linking Model and Controller files.

 Deliverable 5 : Report of semester's work. The report will have details of the prototype model being developed and functionalities the IDE will support.

References:

1. [Dionysios G. Synodinos] Web-based IDEs to become mainstream. Retrieved from - http://www.infoq.com/news/2009/02/web-based-ide

2. [Heroku] Heroku Documentation. Retrieved from - http://docs.heroku.com/

3. [Jingwen Ou] Aurorasdk. Retrieved from - http://code.google.com/p/aurorasdk/

4. [Jacob T. Biehl] FASTDash: A Visual Dashboard for Fostering Awareness in Software Teams. Retrieved from - http://research.microsoft.com/pubs/64290/chi2007-fastdash.pdf

5. Struts. Retrieved from - http://www.ibm.com/developerworks/library/j-struts/