Overview
This proposal is about building and connecting the required modules to enable drupal to be used for and easily deployed by school and universities to manage and facilitate associations between room, course, lecturer and student type entities. Most important capabilities: room booking, degree programmes, course assignment, course specific files, timetable/room schedule generation, management of grades and performance records, course feedback coupled with a customizable notification system.

Description
At my university, a campus management software called CAS campus, and a learning material platform based on M$ sharepoint were introduced. To my experience, there's a lot of functionality and - worse yet: sane defaults - missing. I always thought, man - drupal is meant to do this, and could do a much better job at it too, for obvious reasons.
Alas, it seems some things are missing, especially a reliable room management module, several different entity/content types and a ready-made set of views.
So this project consists of an installation profile (similar to open atrium, probably) and possibly two to-be-created modules. I am just reviewing what the state of these Modules that i am looking to use for D7 is:
- panels, cck, views
- messaging / notifications framework
- new classroom module seems to be promising, just looking at the code..
- nodequeue
- file api (..)
- workflow? actions?
- webform
D7?
Because it would of course be a lot cooler to do it on the shiny bling D7 ;)
| Module | last updated (D6) | last updated (D7) |
|---|---|---|
| CCK | 26-Jan-2010 | 03-Mar-2010 |
| Classroom | 16-Mar-2010 | not yet |
| Features | 06-Mar-2010 | not yet |
| Messaging | 03-Apr-2010 | not yet |
| Nodequeue | 24-Mar-2010 | not yet |
| Notifications | 08-Apr-2010 | not yet |
| Panels | 26-Mar-2010 | 22-Jan-2010 |
| 12-Jan-2010 | 12-Jan-2010 | |
| Webform | 08-Apr-2010 | 08-Apr-2010 |
| Workflow | 15-Mar-2010 | not yet |
| Views | 08-Apr-2010 | 09-Apr-2010 |
As one can tell, this is a last minute proposal, sorry to procrastinate again ^^
I have quite a bit of experience with Drupal, have contributed fixes for contrib and core D6 and D7.. my greatest masterpiece lol The most complex thing i've coded yet is the graphviz filter thing i submitted as GSOC proposal in 2008 and 2009.. it's finally almost completed, although i have yet to clean up the code and feed it upstream..
Check out the AJAX styling interface at http://hfopi.org/admin/build/graphviz_styles and a javascript-rendered graphviz view that uses these styles @ http://hfopi.org/topicgraph
The module contains the canviz javascript graphviz_filter renderer, mentioned views plugin and cck fields, the styles live in the db.. the AJAX stuff doesn't work in IE6 but that one is going away finally ^^
Timeline
From previous experience with my 2007 SOC project, and actually implementing the graphviz project, timelines remain volatile. So this is rather a TODO step by step kind of list...
- Pre-coding: Review to-be-used Modules and their available D7 versions, possible assist porting
- Pre-coding: Decision D6/D7
- Pre-coding: Do a survey on common management workflows with the friendly secretaries from the students department ;)
- Pre-coding: draft structure of room management module
- May 24th: Begin Coding!!
- Implement **Room management module** (respectively expand classroom module?)
- plug all the modules together so basic institutional education management can be done with drupal (see above for core functionality)
- Mid-Term: Drupal setup which can handle basic room/course/management with permissions and notifications
- Refine generation of timetables and room schedules
- Implement **Performance record management module**
- Considering safety: management log, archiving, preconfigured backup
- AUTOTEST COVERAGE!
- Enrichment : Improve visual coherence / usability
- August 17th: have a deployable, tested, reliable package which provides all reasonable functionality of our CampusOffice student web service and L2P learning portal
Mentors
Someone to review design decisions would be very helpful.
Contact Details
mpartap@gmx.net
Difficulty
There are surely some interesting challenges to surmount here - let's say medium ;)
Comments from outside users:
This sounds like a great proposal!
Please consider one improvement - your proposal shares a lot with a normal event boking system and that is a missing feature (as a module) in Drupal. Shure you can use Signup but you dont get all the functions that you expect, for example the possibility to hava a event there you have X seats and Y reserves. Therefore it would be great if your proposal was build with a "event management core" and the rest as a addon. The ide is that you can set X (for example 10) ordinary seats and Y (for example 5) reserve seats. So:
if someone tries to book and there are 5 reservs the user is offered a seat.
if someone tries to book and there are 12 reservs the user is offered a reserve seat.
if someone tries to book and there are 15 reservs the user is told that booth all ordinary and all reserv seats are taken.
Anyway, this is just an ide I wanted to threw out - good luck and I will shure trie anything you make.