Timeline

Timeline

Feb 11, 2006

Sent first e-mail about the project to Ryan Walsh and Caitlin Sullivan

Feb 14, 2006

Talked to Kernighan about feasibility of project.

Feb 16, 2006

We are now officially a group of four!

Feb 24, 2006

First Meeting. Decided on basic features

Mar 2, 2006

Met Joseph Perla to discuss implementation of SCG.

Mar 3, 2006

Discussed our upcoming meeting with Kernighan.

Mar 7, 2006

Met with Kernighan for the first official "project meeting". Installed Subversion

Mar 11, 2006

Installed Apache. Decided on Platform Level Architecture

Mar 16, 2006

Submitted Project Proposal with database structure

Mar 18, 2006

Found the Registrar's Magic Text Files

Mar 28, 2006

Experimented with various prerequisite expressions specifications. Some conceptual changes in design.

Mar 29, 2006

Met with John Grieb and got course table specifications

Mar 29, 2006

Group meeting. Discussed the use of separate pursuit codes in addition to group codes. Designed and agreed on user interface. Split up tasks based on newest block diagram.

Mar 30, 2006

Meeting with Haakon.

Apr 1, 2006

Preliminary Interface Specifications

Apr 2, 2006

Figured out (a) way to implement cross listings. Discussed the interface requirements of the GUI and the php interface of database access. Sketched preliminary class definition for database functions, and created a proof-of-concept rudimentary drag-n-drop implementation. Started coding! Work going on in import scripts, GUI and report generator

Apr 4, 2006

Created the prototype directory structure. Added a very rudimentary version of the the Pursuit.php interface as an example that we can work off of.

Apr 6, 2006

Preliminary creation script working. First database working! Database specifications updated.

Apr 7, 2006

Came up with a format for specifying groups and program requirements. Meeting with Haakon. Haakon wants back-end finished as soon as possible(?).

Apr 8, 2006

Started work on the php interfaces

Apr 9, 2006

Basic GUI template up

Apr 10, 2006

Initial version on report generator working

Apr 11, 2006

Modified interface and database specifications to allow for distinctions between pursuits and semesters. Created a new table, offerings for this purpose. Preliminary insertion script up. Built PHP backend interface framework. Got some basic drag and drop stuff working, although there's lots of bugs still. Created schedulepane.php which will draw up the semesters in a given schedule. Added searchpane.php. Now we have a basic prototype functionality. gui.js contains all the javascript for the drag n drop. Right now the Droppables are not recreated after adding a class, so you can only add once, then you have to refresh. Also no way to delete a class.

Apr 14, 2006

Initial Searching working

Apr 14, 2006

Prototype Presentation. Nearly complete database interface framework with most of the important accessor methods implemented, a basic functional set of scripts for data import, a working drag-and-drop interface to the course schedule, a basic keyword search, and a working report generator that produces so far pretty unreadable simplified prerequisite expressions.

Apr 19, 2006

GUI meeting after prototype. Discussed various design issues including the search bar.

Apr 20, 2006

Switched to POST. Database entry automated (without repetition of rows). Added crude processing indicator.

Apr 21, 2006

Met with Haakon. By now we have an extensive things-to-do list for the Alpha test next week. We explain our plans to Haakon and demonstrate a few new features (more advanced search, status indicator). Big organizational change: now the .css is broken down into three files, and javascript is beginning to be broken down. searchpane.js defines a searchPane Object that is used instead of global functions, making for MUCH cleaner javascript code.

Apr 22, 2006

GUI restructuring: now all schedulepane functions separated to schedulepane.js

Apr 23, 2006

Preliminary logging

Apr 24, 2006

Functionality in front-end modified. All the javascript is now in place to separate updating of the GUI from updating of the schedule. When you add courses to a semester, it is instantaneous, and deleting those added courses is also instantaneous. Because no AJAX update replaces HTML, drag n' drop now works in IE after adding a class. Because no AJAX updates happen anymore, nothing is saved to the MySQL database. (!)

Apr 27, 2006

Instantaneous adding and deleting of all pursuits has been implemented. Appropriate default messages for different semesters. All schedule state is stored in javascript. Schedulepane.php now only uses JSON to send data back to the client (much more efficient/cleaner). Search tabs working (this version uses db10)

Apr 29, 2006

Database structure changed so that pursuits are part of groups with their own code so each pursuit has a primary group. Decided to revise language for prerequisite expressions

Apr 30, 2006

New version of report generator uploaded in preparation for major improvements in the future. Input/output format has changed. Output format now supports subexpression groups, clean syntax error handling, display of utilized pursuits, and multi-line printing of simplified expressions. PrereqReport.php needs to be changed significantly to conform with the new standard.

May 1, 2006

Preliminary Login page up but without security. Uses cookies.

May 5, 2006

Realized Registrar's Prerequisites were very badly defined

May 11, 2006

Report Generator working!

May 11, 2006

Presentation!

May 11- 2006

Started testing with users

May 14, 2006

Tables now can have pursuits with the same code but different titles (except for groups, memberships). Fixed GUI so that it always displays two columns. People with lower resolution can just maximize their screen, and no more "pushing" of the schedulepane by the searchpane.

May 15, 2006

Work done on documentation

May 16, 2006

Project submitted!