Computer Science Courses
Updated: 25 April 2008


     Computer Science courses are incorporated into such other majors as Biology, Criminal Justice, Mathematics, Operations Management/ Management Information Systems, Political Science, Psychology, and Sociology, and may be taken as free electives by students in any discipline. 

    Computer Science courses may not be used to satisfy the College's laboratory science sequence requirement.  However, for non-CSC majors, either of the courses CSC 200A or CSC 201J may be used as a Division II Distribution elective.   The course CSC 200A may also be used to satisfy the College's Computer Literacy Competency-Based Skills Core requirement. 

    Many Computer Science courses have scheduled and supervised laboratory sessions in addition to the three hours per week in scheduled lectures.  Even those courses without formally scheduled laboratory sessions may require the completion of assignments in one of the Department's computer laboratories.  In the latter case, students will arrange this laboratory time to fit their individual schedules. 

    All but one of the former CSC courses with numbers below 200 were relabeled with the prefix ITC ("Information Technology") and are found in a separate list.   These are are service courses, and may not be used as part of the Computer and Information Studies Major or Minor.   The course CSC184 also may not be used as part of the Computer Science major or minor.

    Courses marked (*) in the list below are required in the Computer and Information Studies major.  One of the following courses dealing with a high-level programming language other than the one used in the CSC 201J-202J sequence must be taken: CSC 245A, CSC 273, CSC 311 or CSC 312A.  In addition, one of seven possible two-course options (see the Computer and Information Studies Major description) and two CSC electives must be chosen. 
    For a summary of prerequisites and possible course sequences, see the Course Sequence Diagram. 
    For several of the following courses, the current implementation language(s) used in the course are indicated in (italics) after the course title.

    Effective as of September 2002, the former sequence CSC 201-202 was renumbered CSC 201J-202J and now includes regularly scheduled twice-weekly laboratory sessions.   As of January 2003, several other CSC courses in the following list were retitled and/or renumbered, and several have had the credits increased because of the addition of scheduled laboratories.   In September 2003 a new required course, CSC 215 (Survey of Computer Science II) was added to the curriculum.   (Note: For the Fall 2003 semester only, this course was offered under a different number: CSC 430 Topics in Computer Science.)   All of these changes are summarized in the table at the bottom of this page. In the main list, all courses are designated by their current numbers.
    * Courses marked with an asterisk in the following list are required in the Computer and Information Studies major.


CSC 200A* Introduction to Computer Networks 3 cr.
CSC 200A* Survey of Computer Science I 3 cr.
CSC 201J* Software Design and Programming I  (Java) 4 cr.
CSC 202J* Software Design and Programming II  (Java) 4 cr.
CSC 215* Survey of Computer Science II 4 cr.
CSC 221 Theory of Computer Graphics   (Visual Basic) 3 cr.
CSC 230 Real-Time Computer Interfaces 3 cr.
CSC 245A Computer Applications in Science and Mathematics  (Fortran 90) 4 cr.
CSC 260* Data Structures and Algorithms   (Java) 4 cr.
CSC 263 Database Systems  (Oracle) 4 cr.
CSC 267 Internship in Computer Science 1-6 cr.
CSC 271
 
Introduction to Computer Systems
   (SPARC assembly language (© Sun Microsystems),
   Linux, Perl)
4 cr.
 
CSC 273 Advanced Applications of C 4 cr.
CSC 280* Operating System Principles 3 cr.
CSC 290 Theory of Computation 3 cr.
CSC 295* Computer Architecture and Organization 3 cr.
CSC 300* Software Engineering I 4 cr.
CSC 301 Software Engineering II 4 cr.
CSC 311 Object Orientation and Problem Solving Strategies  (C++) 4 cr.
CSC 312A
 
Human-Computer Interfaces
    (Visual Basic, C++, and/or Java)
4 cr.
 
CSC 315A Principles of Data Comunications 4 cr.
CSC 320 Advanced File Structures   (Java) 4 cr.
CSC 325 Advanced Programming Techniques   4 cr.
CSC 330A Microcomputing Systems 4 cr.
CSC 340 Artificial Intelligence 3 cr.
CSC 390 Compiler Construction 4 cr.
CSC 415 Analysis of Algorithms 3 cr.
CSC 430 Topics in Computer Science 3 cr.
CSC 445 Parallel Processing 4 cr.
CSC 475 Distributed Systems 4 cr.
CSC 498* Project Design/Specification Practicum 1 cr.
CSC 500* Directed Study in Computer Science I 3 cr.
CSC 501 Directed Study in Computer Science II  3 cr.


Current course numbers, titles, and/or credits:
Old number New number    New title(if changed) New credits
(if changed)
CSC 200 CSC 200A Survey of Computer Science I  
CSC 201 CSC 201J Software Design and Programming I  
CSC 202 CSC 202J Software Design and Programming II  
(new course) CSC 215 Survey of Computer Science II    4 cr.
CSC 245 CSC 245A      4 cr.
CSC 266 CSC 300 Software Engineering I    4 cr.
CSC 312 CSC 312A      4 cr.
CSC 315 CSC 315A      4 cr.
CSC 330 CSC 330A      4 cr.
CSC 405 CSC 263      4 cr.
CSC 498   Project Design/Specification Practicum  



Salem State HomeComputer Science HomeFacultyComputer Studies MajorFlow Sheet
Computer Studies MinorCoursesCourse Sequence DiagramComputer Laboratories