CSC 308 Projects
CSC 308 Projects
Introduction
Listed below are capsule descriptions of the five projects we will work on this
quarter in 308, and continue to work on next quarter in 309. The theme for the
projects is classroom tools for instructors and students. You can think of
these as replacements for the cumbersome products provided by the PolyLearn
system, and in preceding years by Blackboard.
Your primary team activity for CSC 308 is to produce a requirements
specification for one of these projects. This requirements spec is at the
level a customer should define when contracting for a piece of software.
Accordingly, your requirements spec will be based on extensive customer
interviews, with your instructor and possibly others acting as customers. When
developing this requirements spec, your team will play the role of software
system analysts.
Given the initial estimate of class size, there will most likely be six project
teams of six members each. With five different projects to choose from, there
will be two teams per project in at least one case. As described in the
Milestone 1 writeup, we will choose the teams and projects on the first day of
class.
In terms of grading, all project evaluation will be done on a team-by-team
basis. Some degree of "healthy competition" may develop between teams working
on the same project. However, we will not choose specific winners and losers
in any kind of development contests.
One final introductory note - you should be creative and
ambitious with your project requirements. In particular, do not worry
about specifying a project that will be too hard to implement. Your job this
quarter is to specify the software, not to implement it.
Project Capsule Descriptions
-
Grader -- Grade Manager and Browser
Maintains grading information for a course, computes statistics, and manages
electronic submission of graded work. Advanced features include graphical
input and customizable grading schemes. Grades are enterable only by
privileged instructor users. Individual students may browse their own grades
given proper identity confirmation. Students may also browse overall grade
statistics for a class, ask "what if" questions, and browse historical grade
trends. Other noteworthy customer requests include easy set-up of extra credit
grading, different late policy schemes, interface with campus grade servers,
and electronic submission of student graded work.
-
Test Tool -- Test Generator
Manages a repository of course examinations and generates different forms of
tests. Test forms include t/f, multiple choice, fill-in, short-answer, long-
answer, and program code. Automatic test generation is available using a wide
range of selectable test criteria. Online delivery and collection of tests to
students is provided. Automatic grading is provided where feasible, including
automatic execution and analysis of answers that involve program code. Other
noteworthy customer requests include full support for text and graphics in test
questions, centralized shared question bank, and integration with grading
program for submission of graded tests.
-
Electric Classroom -- Integrated Classroom Presentation Tool
Manages a repository of classroom materials and allows students to view them
electronically inside and outside of class. Instructors prepare lecture
material for in-class presentation and use a specialized presentation tool to
present lectures via a network of workstations rather than a single projected
laptop. Provides features for electronic interaction between instructor and
students. Noteworthy customer requests include fully integrated electronic
whiteboard, different modes of student/teacher integration, zooming in and out
to different levels of lecture detail, automatic lecture attendance taking, and
support for off-campus lecture viewing.
-
Scheduler -- Electronic Class Scheduler
Manages a database of instructors, classes, and rooms. Allows information
about instructor preferences to be entered to guide scheduling. Allows
students to query the schedules for upcoming quarters. Interfaces to campus-
level class database for information downloading. Provides for customizable
scheduling constraints based on the needs of particular departments.
Noteworthy customer requests include support for student input to the
scheduling process, archiving of past schedules, and interface to campus
scheduling service.
-
CS Tutor -- Intelligent Tutor for Computer Science Classes
Provides a form of online manual and help aid for topics covered in CS classes,
particularly introductory classes. The help should include outlines of course
material (via interface to the electronic classroom) as well as instructor-
defined tutorials to guide students on a step-by-step basis. The tool should
employ techniques of computer-aided instruction, including tuning tutorials to
individual students. Noteworthy customer requests include support for multiple
programming languages, integration of instructor-generated evaluation scripts,
integrated live communication between students and instructors.
A Note on the Forms of Project Deployment
At the outset, the customer envisions that each project will be deployed in two
forms:
-
a desktop application that provides editing and management functionality to an
individual instructor
-
a web-based application that provides access to selected information by
students
The details of these two forms of deployment vary for the different projects.
Also, which project components are application-based versus web-based is
subject to discussion between the customer and analyst teams. However, given
negative experience with purely web-based tools, the customer is very strongly
inclined to have the instructional development functionality provided by a
desktop application.
index
|
lectures
|
handouts
|
examples
|
textbook
|
doc
|
grades