Revision as of 22:46, 8 April 2010 by Dlamba (Talk | contribs)

Project ROAR: Rhea Online Testing Resource

Introduction

Project ROAR was initiated in the Spring semester of 2010, as an attempt to provide students and professors the ability to create online tests; a forum for academic interaction, where professors could test students, and students in turn could post their own questions. The inspiration for this project came from the evident lack of an open source testing platform. Freshmen in the school of engineering, physics and math for example, are required to pay as much as $25 for similar testing software, simply to have access to pre-existing quizzes and tests. The RHEA Development team decided to overcome this problem by conceptualizing an open source web-app based on the Rhea server, that would give students and professors the same ability without the need for these expensive third party software.

The ROAR Team

Documentation

  • Project ROAR is intended to be a long-term project that starts off with a concept and basic functionality, which can then be expanded by future teams.
  • This page will serve as the ROAR development team project log, wherein all the documentation and project details may be accessed by future development teams.


The initial thought process: how ROAR was born

This section includes a preview of what the development team initially came up with for how ROAR should look and feel, as well as its functionality. The following PDF includes the thinking behind the name ROAR, as well as a mock web page showing its intended features.

Media:roar_concept.pdf


Tools

  • Since the eventual goal for ROAR is to be integrated into the MediaWiki platform where RHEA lives, what is needed is a php or javascript based web app that communicated with the RHEA database.
  • Therefore, for those interested in the project, a working knowledge of the following tools is recommended:
    • HTML
    • PHP
    • CSS
    • SQL
  • In addition knowing how to set up and work on a LAMP/WAMP server is very useful.


Code Repository

  • Rather than making individual form handling pages, it is much cleaner to organize the web app using functions.

Here is how a well organized php file ends up looking like

*****************************************
<?php


function basic_html(){

   $html = <<<page_html
              <!--------SOME HTML---------------->
           page_html;
   return $html;
}

function1(){
}
function2(){
}

if{(some action required) 
     $html .= functioncall1();
}elseif{(some other action)
     $html .= functioncall2();
}else{
     $html .= basic_html;
}

echo $html;
?>
***********************************************
  • Thus, the entire program is extremely easy to manage and various actions can be handled separately to display certain html code that can be neatly tucked away within functions.
  • Now what was given above was a very top level design of how to make a web app.

The following section provides code snippets that explain the process in more detail.

Alumni Liaison

Correspondence Chess Grandmaster and Purdue Alumni

Prof. Dan Fleetwood