APOGEE -- Automatic Project Grading and Rapid Feedback System for Web Programming   

    People: Drs. Xiang Fu (GSW), Boris Peltsverger (GSW), Kai Qian (SPSU), Lixin Tao (Pace)
    Contact: Dr. Xiang Fu (xfu@canes.gsw.edu)
    

            Video Clip: Demo of ProtoAPOGEE . The zipped shockwave file can be downloaded here (2.5 MB).
     

Introduction: With the impact of Internet reaching every corner of the globe, Web programming has been an integral part of Computing curriculum. One big challenge of teaching Web programming is how to handle an overwhelming number of project submissions while, at the same time, guarantee the quality feedback to students. APOGEE, built upon the latest progress in automated testing, can grade student Web programming projects consistently, fairly, systematically, and more importantly providing instant feedback to students. The ideology of APOGEE is to learn from failures. A students has to not only complete the functional requirements but also ensure the quality of project, e.g., security, robustness, privacy, etc. APOGEE inspects each quality attribute of the project submission -- if there is any deficiency APOGEE will record it and playback the failed test case step by step. APOGEE consists of the following three modules:

  • APOGEE Portal. Both instructors and students can access the web portal. Instructors use it to upload project specifications, manage projects, and inspect student performance. Students use it to retrieve formal specification of projects, submit projects, and get instant feedback and guidance. The Web portal relies on Ruby and Watir testing tool to drive Internet explorer and simulates instructor's manual inspection process.

  • Testing Script Authoring Tool. If an instructor is not familiar with Ruby syntax, the GUI tool allows authoring complex testing scripts with mouse clicks. The tool also supports script recording and playback.

  • Virtual Laboratory Environment. Built upon the VMWare technology, the virtual lab environment allows students to upload and configure their project submissions. Once the project is deployed, the URL of the project can be submitted in the APOGEE Web Portal for grading and instant feedback.

         Tool Download: we have implemented a miniature prototype of the proposed system and we call it ProtoAPOGEE. The system is implemented using C# and .Net. It can be extended to other operating systems and implemented using Java in the future. You need to have a Windows server and IIS installed to play with the prototype. Simply extract the zip file and place it under the Inetpub/www folder.

  • ProtoAPOGEE.zip (20MB)

  • COPYRIGHT NOTICE AND DOWNLOAD AGREEMENT: All related materials available on this Web page are properties of Georgia Southwestern State University (GSW). You are permitted to download the source code of APOGEE solely for the purpose of academic research or evaluation. At this moment, we do not allow any derivative work based upon APOGEE and ProtoAPOGEE. Tool authors and GSW are not responsible for any damages caused by the software.