Monday, September 3, 2007

Week 1 - 08/27/07 - 09/03/07 ( 8 hrs)

One of the first steps in defining a common interchange Meta-data format is to study the feature sets of the automatic grading tools available in the market. The candidates included Web-CAT, Marmoset and SJSU Prof. Beeson's home grown grading tool.

Studying Web-CAT(installation,configuration,usage)

Before installation of this tool, I had a chance to go through the various tutorial videos embedded within the installation package. Those proved to be useful, especially when dealing with WebObjects.

This tool is built around Apple's WebObjects. The installation went through fine and pre-requisites were installation of Tomcat 5 and MySQL server and yes, one has to download Web-CAT_1.3.1.war from sourceforge and drop it in the web applications folder.

The steps included to have a course offering and assignments running are

  • The first steps are to configure the Web-CAT tool instace. It includes crearing a root user, setting up the MySQL configuration and adding courses offered by the concerned institution.

In Web-CAT there is a clear distinction between courses offered and course offerings for a particular course in a semester by an instructor. It has the same relationships as between a Class and Objects of type Class. Course offerings are instances of the particular course. This is mentioned here as it may play a part in defining an interchangeable meta-data format for a Learning Object.

  • The next step is to create a course offering. The properties that make up a course offering are

Course, CRN(unqiue course offering identifier), Course Label( description),URL(location)

There are other properties which may not form part of the meta data, such as instructors and graders for that course offering.

  • The next step is to create an assignment for the course offering. These have properties which could be relevant to be part of a meta-data for a course.

Name, Title, URL(location), Upload Instructions

Each specific assignment can have different submission rules. These rules would be unique to a system, hence may not be relevant as part of the meta-data in describing a course.

Each specific assignment also has a plugin configuration. Each plugin configuration has re-suable properties and assignment specific properties

Java Plugin Configuration

This plugin has two types of configutation options: Re-usable and Assignment specific.

  • The properties of a re-usable configuration are

Java settings(Java source version compatibility,pre-defined classes or jars in the classpath)

Scoring Settings(Test code submissions, test coverage)

Static Analysis(Check Style Configuration, PMD)

Feedback settings

  • Assignment specific settings are related to

Junit Reference test classes(These junit test classes are executed against the submitted code)

Supplemental Classes for Assignment(Any jar file or directory of java class files to be put in the class-path when compiling or running submissions for an assignment.)

Data files(Any data files that may be needed when running reference tests)

The properties of any specific Java or C++ plugin configuration may form part of the meta-data information for a course, specifically the files that are included or needed to submit and execute test cases in an automatic grading system.

Studying Marmoset(installation,configuration,usage)

Marmoset is an automated snapshot, submission and testing system developed at the University of Maryland.

Much of the information that is blogged here are got from the demo server which is hosted at

https://marmoset-demo.cs.umd.edu/view/course.jsp?coursePK=1

This gives access to a demo-course but doesn't allow the user to create courses or assignments.

This system seems to be similar to Web-CAT in the sense that it has

  1. Automated Testing - Submissions are graded based on the number of tests that pass.

This system also has the following capabilities

  1. Collecting snapshots - There is an Eclipse plugin called the Course Project Manager to capture snapshots of students' projects to a centralized CVS repository whenever they save their files.


No comments: