Progress‎ > ‎

Deliverables and Timelines

This section lists the specific task items and expected timeline to finish them. It also includes the tentative responsibility for the implementation phase among the student team members. On the high level, Mamta is responsible for the model-view-controller aspects of the application, web service for the test bed using Django, scheduler and testbed stub and Jia is responsible for the interaction with Google calendar, email notifications and resource dependencies.

By 9/30/2010 (2 weeks): Specification and design
1) Understand manual process of resource reservation with task details.
2) Identify data structures for project, users, resources and calendar.
3) Identify resource dependencies and formulate data structure to represent dependencies.
4) Understand Google Calendar API.
5) Identify potential interaction with test bed for automation.
6) Create sample screen transition diagrams for user interface flow.
7) List use cases based on the understanding of manual reservation process.
Team responsibilities: Mamta: 5, 6, 7; Jia: 2, 3, 4; Both: 1

Deliverables:
1) Specification document containing various requirements, features, use cases, user interface flow, and system constraints for this project.
2) Design document draft containing design choices (whether we can use Google Calendar, Google App Engine, etc., and what database and programming language) and sample data structures.
Team responsibilities: Mamta: 1; Jia: 2

By 10/21/2010 (3 weeks): Implementation part 1
1) Set up development environment including VPN, version control, issue tracking, IDE, database if any, and third-party tools if any such as Google App Engine.
2) Implement calendar interaction code for add, delete, modify and view.
3) Implement email reminders and notifications to users.
4) Implement database schema (model) with sample data objects/instances.
5) Create front end (view) for user signup, authentication, and model views.
6) Implement resource management and user management forms.
7) Prepare slides for mid-term presentation.
Team responsibilities: Mamta: 4, 5, 6; Jia: 2, 3; Both: 1, 7

Deliverables:
1) checked in partial source code for this part.
2) mid-term demo of the progress.
Team responsibilities: Both: 1, 2

By 11/11/2010 (3 weeks): Implementation part 2
1) Integrate calendar software (views and model) with rest of reservation system.
2) Implement resource dependencies in both backend logic and front end display.
3) Implement resource reservation form.
4) Implement the web service for test bed to access reservation system’s data.
5) Implement stub for testbed and scheduler.
6) Write test plan.
Team responsibilities: Mamta: 3, 4, 5; Jia: 1, 2; Both: 6

Deliverables:
1) checked in source code until this part.
2) Submit test plan
Team responsibilities: Both: 1, 2

By 11/18/2010 (1 week): Implementation part 3 and Testing
1) Auto-allocation of available resources.
2) Implement shared resource concept for some resources.
3) Integrate resource reservation, web service, and scheduler.
4) Test the system according to test plan.
Team responsibilities: Mamta: 1, 2, 3; Jia: 4

Deliverables:
1) Demo of working and integrated system
Team responsibility: Both: 1

By 11/25/2010 (1 week): Clean up
1) Source code cleanup and code comments.
2) Prepare slides for final presentation to the class.
Team responsibilities: Mamta: 2;  Both: 1

Deliverables:
1) Final presentation slides
2) All the code should be committed to SVN by November 25
Team responsibility: Both: 1, 2

By 12/02/2010 (1 week): Presentation and Installation package
1) Practice for presentation on Nov 30
2) Create installation package and deploy the software to a test server
3) Update the specification document to reflect the changes
Team responsibilities: Mamta: 3; Jia: 2; Both: 1

Deliverables:
1) Software package that is deployed and is running a service to be used by ESnet's staff and testbed users.
2) Final project presentation to class
Team responsibility: Jia: 1; Both: 2

By 12/09/2010 (1 week): CS night and Documentation

1) Work on project posters for CS night.
2) Present and demonstrate the final system to ESnet staff.
3) Document installation instructions, to get started by administrator.
4) Write user manual describing how to use the system, with screen shots.
Team responsibilities: Mamta: 1, 2, 4; Jia: 3

Deliverables:
1) Installation instructions document describing how to install, deploy and get started.
2) Final project demonstration to ESnet staff on Dec 9.
3) All documents and source code should be checked-in.
Team responsibility: Mamta: 2; Jia: 1; Both: 3