Project type: Class group work
Role on project: Middleware developer
Time of work: October 2011 - December 2011
Features: Add/edit/delete classes, Add/edit/delete lessons, Manage/register/login users
This started as an idea for a group project in my Software Engineering class, which a proposal was written up on by myself and two other team members. After the proposal was approved by the class, three more team members were added, giving us our final total of six team members. We had to take the project through all the phases of the project lifecycle: from Zero-Feature release, where we had to create the architecture including the libraries we'd be using, to Beta, where we had functioning code, to Final. Through this, we had to learn to function as a team, not just program this alone and very separate.
So, what is Prodigy? Think of it like a fusion between Blackboard™ and Wikipedia, where, just like with Blackboard, information is organized into "classes" and "lessons" that you can view and optionally enroll in, and just like with Wikipedia, anyone who is logged in can edit the classes and lessons in order to make either better. Using this structure, we were able to create objects which would then be translated by a custom DRM into database-specific code, avoiding the need to make it database-dependent. In addition, we used a login system rather than making our own to make development faster.