In Fall, 2000 a number
of changes will occur within the Computer Science Program. Most courses
will be converted to four credits and will include a laboratory. The
requirements for the major will be changed to reflect the changes
in various courses.
There will be two types
of laboratories - traditional scheduled laboratories and consulting
laboratories. The former will be similar to laboratories associated
with most science courses. CMSC 150 already has such a laboratory.
The traditional laboratory will meet for about 120 minutes per week.
A consulting laboratory will be scheduled after the initial meeting
of the class. It may vary in format from week to week and may meet
at different times from week to week. Typically a consulting laboratory
will be about 100 minutes in length. An instructor may elect to use
an additional 50 minute lecture in place of the laboratory.
The major and minor will
require fewer courses as the courses require more time and provide
more depth.
The Computer
Science Major Core
All computer science
majors whether seeking a B.S. or B.A. degree must complete the following
courses.
- CMSC 150 Introduction
to Computing, with a formal laboratory, 4 credits (may be waived
if the student can successfully start in CMSC 221)
- CMSC 221 Data
Structures, with a formal laboratory, 4 credits
- CMSC 222 Discrete
Structures, 3 credits (no change in format or credit)
- CMSC 301 Computer
Organization, with a consulting laboratory, 4 credits
- CMSC 315 Algorithms,
with a consulting laboratory, 4 credits
- CMSC 323 Design
and Implementation of Programming Languages, with a consulting
laboratory, 4 credits
Availability of
the Core Courses
CMSC 150, 221, 222,
301, and 315 will be offered every semester. CMSC 323 will be available
every fall semester.
Additional
Courses for the Major
In addition to the core
courses a student must take sufficient additional courses in 300-level
computer science to earn 10 hours of credit. These may be 3 or 4
credit courses.
This brings the total
number of credit hours in computer science courses to 33, counting
CMSC 150 which may be skipped by qualified students.
The B.A.
and B.S. Requirements
The B.A. and B.S. degree
requirements are the same for computer science courses. They differ
only in requirements for work in related fields.
B.A. Related-Field
Requirements
- Math 211 Calculus
I (Math 111 is allowed)
- Math 245 Linear
Algebra
B.S. Related-Field
Requirements
- Math 212 Calculus
II
- Math 245 Linear
Algebra
Then one of the following
options:
- 2 3-hour, 300-level
courses in Mathematics, or
- 2 3-hour courses
in one of Physics, Chemistry, or Biology beyond the introductory
level. Both courses must be in the same field. The introductory
level in Biology is 211-212. Courses considered beyond the introductory
level in Physics and Chemistry are numbered 200 and above.
The Computer
Science Minor
- CMSC 150 Introduction
to Computing, with a formal laboratory, 4 credits (may be waived
if the student can successfully start in CMSC 221)
- CMSC 221 Data
Structures, with a formal laboratory, 4 credits
- CMSC 222 Discrete
Structures, 3 credits (no change in format or credit)
- CMSC 301 Computer
Organization, with a consulting laboratory, 4 credits
- One 300-level
course (either 3 or 4 credits)
Revised
Upper-Level Electives
These six courses will
all have a consulting laboratory and be given 4 credits.
- CMSC 321 Operating
Systems
- CMSC 322 Software
Engineering Practicum
- CMSC 325 Databases
- CMSC 332 Computer
Networks
- CMSC 333 Parallel
Programming (new course)
- CMSC 335 Computer
Graphics
Unchanged
Upper-Level Electives
The following will remain
as 3-credit courses.
- CMSC 328 Numerical
Analysis (cross-listed as Math 323)
- CMSC 330 Theory
of Computation
Courses
Deleted from Regular Offerings
Two courses will be
deleted from the catalog as regular offerings but will be available
from time-to-time as special topics classes.
- CMSC 302 Computer
Organization and Architecture II
- CMSC 331 Theory
of Compilers
Special
Topics
We will continue to
offer special topics courses in either a 3-credit or 4-credit format.
Implications
for Current Majors
Effective with the 2000-2001
academic year all computer science majors must complete the core
classes (either in their old or new formats) plus sufficient 300-level
computer science classes to total at least 33 hours. If CMSC 150
was skipped, then the total may be 30 hours. Only 3-credit or 4-credit
courses may count.
The related-field requirements
are unchanged.
SUMMARY
- Many courses
in computer science are now 4 credits and have a laboratory of
one form or another associated with them.
- Some courses
like CMSC 301 and 315 will now be available every semester.
- Whereas it used
to take 11 computer science courses to complete the major, it
now will take 9 courses.
- The minor is
reduced by a single course although the total number of hours
remains at 18.
WHY?
Computer science involves
both theory and practice. Its introductory classes must provide
a basic foundation in the use of tools as well as providing fundamental
intellectual ideas. Nationally, all quality programs have moved
to incorporating a laboratory experience in the computer science
courses. The only courses without a laboratory are those that are
primarily theoretical and mathematical.
After offering CMSC
150 in Fall, 1999 with a formal laboratory and seeing how much better
was the educational experience, we decided to extend the formal
lab to CMSC 221 and use consulting labs in most other classes.
The changes bring the
Computer Science Program at UR in line with other programs across
the country.