CS 490 Course Description

CS490 SPECIAL PROJECTS IN COMPUTER SCIENCE (1-4 Cr.)

COURSE DESCRIPTION

Prerequisite: Prior arrangement with instructor. May be repeated.

Offered: On Demand

Course Description

Development of projects of an extensive nature, working in small groups and in consultation with the instructor. The project would draw heavily upon, and substantially reinforce and extend, the student's previous work in computer science, and possibly related areas as well. Included would be the delineation of a major computer-related problem, followed by the design and implementation of a maintainable solution.

Goal/Purpose of the Course

It is anticipated that usually the projects will be done in small groups of two to four students each. It is projected that a maximum of four projects could reasonably be handled during any semester, so that the class size will be between eight and sixteen students.

Sometimes a project will consist of the development of a useful maintainable tool which will service a need in some area of the university community. It is anticipated that as the potential of computer tools begins to be realized over the coming decades, this course can sometimes serve as a valuable vehicle for the development of these tools. This course is intended to be an appropriate mechanism for us here at Northern.

The project will provide a comprehensive experience in problem formulation and solution design, implementation, and evaluation. Often the project will be multidisciplinary; some may address the local community's government or industry; or, the project may be strictly with the science of computing, involving for example a certain aspect of language design.

Course Content Outline

  1. Global and Local Objectives
    • Initial overview
    • Regular reinforcement throughout the course
  2. General Problem-Solving Considerations
    • Problem identification and clarification
    • Solution design
    • Solution implementation
    • Evaluation (including maintainability of the solution)
  3. Project Execution
  4. Evaluation