Courses for CS majors

Tentative Schedule

Tentative Scheduling layout on a yearly basis can be accessed from the department webpage. This gives a layout of all CS courses by time/quarter which should be the starting point for planning out your schedule. However, you should consult the GET system for an actual class listing for each quarter. Scheduling pattern for all courses is indicated below:

Required Courses : Scheduling Pattern

CS101Introduction to Higher Education
CS120Introduction to Website Development
CS122Using Relational Databases and SQL
CS201Introduction to Programming (Java)
CS202Introduction to Object Oriented Programming (Java)
CS203Programming with Data Structure (Java)
CS245Using Operating System & Network for Programmers
CS301Computer Ethics in the Information Age
CS312Data Structures & Algorithms
CS320Web and Internet Programming
CS332FFunctional Programming
CS332LLogic Programming
CS332CC++ Object Oriented Programming
CS337Software Design
CS386Introduction to Automata Theory
CS437Software Engineering
CS440Introduction to Operating System
CS490Computer Science Recapitulation
CS491ASoftware Design Laboratory
CS491BSoftware Design Laboratory

Elective Courses : Scheduling Pattern

CS340Assembly Language & Systems Programming
CS345UNIX & Shell Programming
CS350Foundations of Computer Graphics
CS370Parallel & Distributed Programming
CS420Web Applications Architecture
CS422Principles of Data Base Systems
CS447Computer Networks
CS450Computer Graphics – II
CS451Multimedia Software Systems
CS454Topics in Advanced CS (varies)
CS460Artificial Intelligence
CS461Machine Learning
CS470Computer Networking Protocols
CS480Cryptography and Information Security
CS486Computability & Intractability
CS499UG Directed Study (varies)