For students with BS degrees in fields other than computer science or computer engineering, we offer a preparatory program consisting of 4 online courses in computer science fundamentals. Offered through UMassD's University Extension, the preparatory program is fully online and may be completed within one year.
The program prepares you to meet the following minimum requirements to prepare you to study computer science at the graduate level:
- 2 semesters of programming
- 1 semester of data structures and algorithms
- 1 semester of computer systems (architecture and operating systems)
However, even after meeting these requirements, students without a BS in computer science will face the challenge of making up, on their own, certain undergraduate material when taking specific graduate courses.
Offered in the fall semester
- CIS 115 Computer Programming with C
Algorithm development, syntax and semantics of a high level programming language, debugging and verification of programs, concepts of structured programming, arrays, subroutines, and elementary system concepts (compilation, time-sharing). Topics covered in the course include C Compilers and Standards, Variables and Assignments, Branches (if, if-else, switch statements), input/output (read from user, print to user, read from/write to file, loops (for, while, do-while), recursion, arrays and pointers.
- CIS 183 Object-Oriented Programming with Java
Basic concepts in programming and software development using the Java programming language. The course introduces concepts of object oriented paradigm and low-level program design process. The course introduces variables, decision structures, loops, storage structures, exceptions, inheritance, and polymorphism.
Offered in the spring semester
- CIS 322 Data Structures and Fundamental Algorithms
Introduction to data structures and fundamental algorithms. This course covers the design and implementation of dynamic data structures including linked list, queue, stack, heap, trees and graphs. This course also provides comprehensive coverage of fundamental groups of algorithms, including divide-and-conquer, dynamic programming, and greedy algorithms.
- CIS 323 Fundamentals of Computer Systems
Introduction to major components of computer systems. The course introduces fundamental concepts of computing systems, such as circuit design, Boolean equations, binary arithmetic and data representation, the operation of memory, as well as design of a processor. This course also covers the use of VHDL in designing circuits. The course has a design, implementation, and analytical components.