300

70-300 Computer Organization

This study of computer organization covers the central processor unit, memory unit and I/0 unit, number systems, character codes and I/O programming. Programming assignments provide practice working with assembly language techniques, including looping, addressing modes, arrays, subroutines, and macros. Microsoft assembler is discussed and used for programming throughout the course.
3

Prerequisites

70-210.

70-315 Scientific Computing

An introduction to developing computer applications for collecting, analyzing, and visualizing scientific and mathematical data. Students will learn how to use mathematical computing environments like Matlab, Octave, and R as well as to write journal-style papers in LaTeX.

3

Prerequisites

13-120 or 3 years of high school Mathematics, including Trigonometry.

70-330 Database Systems

File storage structures, relational database management systems, entity relationship diagrams, relational algebra, relational calculus, SQL, database security, concurrency control, distributed and cloud storage solutions, coding database-supported web sites using PHP and XML.

3

Prerequisites

Prior or concurrent registration in 70-200.

70-350 Operating Systems

A survey of concepts, facilities, and characteristics of contemporary computer operating systems that includes topics such as memory management, concurrent process control, multi-threading, security, virtualization, and parallelization.

3

Prerequisites

70-220.

70-355 Cloud Computing and Virtualization

An introduction to the concepts and techniques of implementing cloud computing through the use of virtualization and distributed data processing and storage. Topics include operating system virtualization, distributed network storage, distributed computing, cloud models (IAAS, PAAS, and SAAS), and cloud security.
3

Prerequisites

Prior or concurrent registration in 70-350.

70-360 Applied Programming Languages

This course exposes students to a variety of current programming languages that are not the focus of other courses in the major. The goal of the course is to increase students' programming skills while helping them develop good programming methodology and style. This course also gives students experience using code management systems and working on open-source programming projects.

3

Prerequisites

Prior or concurrent enrollment in 70-245.

70-396 Topics in Computer Science

This series of 300-level seminars focuses on various topics related to computer science and is usually offered on weekends.

1-3

Prerequisites

See Semester Course Schedule for prerequisites, if any.