Body

MCS@RICE

Course Curriculum

Body

MCS@RICE

Online Master of Computer Science Course Curriculum

The MCS@Rice curriculum has been designed to meet the interests of our students and the demands of employers. The topics and courses were carefully selected not only to span important areas of computer science but also to focus on the data science skills that are highly sought after in the modern industry.

APPLY ONLINE

Body

PROGRAM HIGHLIGHTS

Quick Facts About the Online MDS Program

Image
10 Courses

ACADEMIC
RIGOR

Intellectual challenge met with unquestioning support.

Image
Holistic Approach

HOLISTIC
APPROACH

Obtain comprehensive knowledge in how to apply core methods of data science to areas of specialization.

Image
Same Degree As In-Person

SAME DEGREE AS
IN-PERSON

The same curriculum offered on-campus with the added flexibility of an online program.

Image
Leading Faculty

LEADING
FACULTY

World-class faculty that provide hands-on education and thoughtful interactions with students.

Image
Real-World Application

REAL-WORLD
APPLICATION

Coursework designed to enable students to solve real-world problems with data science theory and techniques.

Image
RICE’S 35-YEAR COMPUTER SCIENCE HISTORY

CUSTOMIZABLE
PROGRAM

Work at your own pace and tailor course specializations to meet your goals and interests.

COURSEWORK OVERVIEW

10 Prescriptive Courses

Body

Our program has 10 thoughtfully selected courses. Students graduating from the program will have the foundational and practical knowledge to work in a variety of fields. We’re not just here to teach you a single programming language, we teach you how to solve problems, develop skills for real-life applications, and become a well-versed computer scientist. The algorithms, software, and systems classes will provide a solid foundation that will prepare students to grow, learn, and adapt to the changing demands of careers in computer science and data science.

VIEW EACH COURSE DESCRIPTION

Body

WHAT YOU'LL GAIN

Program Outcomes & Experience

Image
#1

ADVANCED PROBLEM SOLVING

Solve advanced Computer Science problems in the most efficient way. Students will acquire and apply a graduate-level understanding of material in sub areas of Computer science.

Image
#2

ACCELERATED UNDERSTANDING OF MULTIPLE PROGRAMMING LANGUAGES

Learn the fundamental concepts that appear in one form or another in almost every programming language. See how these concepts “fit together” to provide what programmers need in a language making you a better software developer, in any language.

Image
#3

MODERN WORKPLACE APPLICATION

Experience hands-on application of complex software systems that will translate to your current or future work environments.

CURRICULUM DETAILS

Core Required Courses

The online masters of computer science program includes 10 core classes. Most if not all of these courses are offered during each semester (spring, summer, and fall). Students are free to choose how many courses to take each semester so they can make the program fit their lifestyle and work schedule. Students typically take one to two classes each semester.

Computer Systems

COMP 621 - SYSTEM SOFTWARE [3 HOURS]

Modern computer systems are designed and implemented in a layered fashion; each layer builds upon those beneath it. This provides abstracts for processing, memory, and I/O that are progressively more abstracted from the hardware and easier to use than those of the underlying layers. In this course, students will learn the fundamental characteristics of the abstractions for processing, memory, and I/O at each layer of a modern computer system. Students will learn to understand the functionality provided by each layer and the use of modern debugging, profiling, and tracing tools.

COMP 628 - CYBER SECURITY [3 HOURS]

In this introductory course, students will learn core components of cybersecurity technologies, processes, and practices designed to protect networks, computers, and data from attack, damage, and unauthorized damage. Students will be able to identify, protect, detect, respond, and recover from cybersecurity threats. Course topics include threat landscape, cryptography, malware, networking security, and cloud security.

Data

COMP 630 - DATABASES [3 HOURS]

This course included five learning objectives:

Big picture: Understand the trade-offs of relational and non-relational databases
Queries: Manage data and understand the costs of doing s
Design: Build complex databases and understand design trade-offs
Real-world data: Curate and merge data from real-world sources
Communication: Explain concepts and implementation and design decisions

COMP 642 - MACHINE LEARNING [3 HOURS]

Machine learning is the process of automatically inferring a function from a data set. Machine learning techniques seek to automate the inductive learning process. This process is important in a number of applications including robotics, medicine, speech and facial recognition, and driving autonomous vehicles. In this course, students will gain a foundational understanding of modern algorithms in machine learning, focusing on practical applications.

COMP 643 - BIG DATA [3 HOURS]

Big Data refers to tools and techniques for extracting useful information from very large datasets. A dataset is considered very large if it cannot be stored in the memory of a single computer. Students will learn set theory (specifically, the relational algebra and calculus, which serve as the theoretical basis for modern Big Data systems), the use of relational systems for data analytics, and mathematical programming for Big Data analytics.

COMP 665 - DATA VISUALIZATION [3 HOURS]

This course covers the basic ways various data types can be visualized and which properties distinguish useful visualizations from not so useful ones. Students will use Python as both the primary tool for processing the data as well as creating data visualizations. This class will also cover some of the geometric algorithms used to create advanced visualizations.

COMP 680 - STATISTICS FOR COMPUTING AND DATA SCIENCE [3 HOURS]

Students will learn the fundamentals of probability, statistics, and data science. This course prepares students for more advanced

Principles of Algorithms and Software

COMP 610 - SOFTWARE CONSTRUCTION

This course focuses on modern principles for the construction of large-scale programs, with an emphasis on design patterns, modern programming tools, and team management. The material will be applied in a substantial software design/construction project. The course has a significant oral and written communication component where students will be required to document and present their software design.

COMP 613 - PROGRAMMING LANGUAGES AND DESIGN

Students will use ML, Racket, Ruby and Java to learn various paradigms and concepts. This course goes beyond learning to use these platforms and delves into the fundamental concepts that appear in almost every programming language. This course will make students better software developers, in any language.

COMP 682 - PRINCIPLES OF ALGORITHMS AND SOFTWARE AREA

This course covers the fundamental algorithms and data structures that all masters of computer science students should know. Students will master classic algorithm design methods and understand fundamental algorithms to serve as a starting point for solving more complex problems.

Total Credit Hours30 Hours

Ready to apply? Contact us today for more information.

CONTACT ENROLLMENT COACH

Body

Request Information

Send us your information and a Rice Enrollment Coach will follow up with you.

Loading...
Body
Body