MS in Computer Science

Displaying Spring 2024-2025 Course Availability
  • In-Class
  • In-Class and Online
  • Online Only
  • Not Offered This Quarter
Untitled 1

Curriculum Requirements

Introductory Courses

No Introductory Course may be substituted for any other course at any level.

Introductory courses may be waived for any of the following conditions based on faculty review:

  • The student has the appropriate course work to satisfy an Introductory Course.
  • The student has appropriate and verified professional experience to satisfy an Introductory Course.
  • If an exam is available, the student passes a Graduate Assessment Examination (GAE) in the Introductory Course area.

Foundation Courses

  • CSC 421 Applied Algorithms and Structures
  • CSC 435 Distributed Systems I
  • CSC 447 Concepts of Programming Languages
  • CSC 453 Principles of Database Management Systems
  • SE 450 Object-Oriented Software Development
    OR SE 456 Architecture of Real-Time Systems

Major Elective Courses

Twenty-eight credit hours of Major Electives are required. Graduates of the MS in Computer Science program must be proficient in at least one broad area of Computer Science listed below. For this reason students will take the remaining twenty-eight credit hours as follows:

  • Twelve credit hours (typically taken as three 4-credit courses) from one area.
  • SIxteen credit hours (typically taken as four 4-credit courses) from any area, including the option to take the SE Studio Capstone, the 2-course GAM studio sequence, the 1-course CS capstone, the Research Colloquium course, or write an MS Thesis, or develop an MS Research Project.

The courses in each area are listed below. The Independent Study courses (CSC 695) may be taken for up to 8 credits and at most 4 credit hours of CSC 695 can count towards the chosen area.

Areas

Software and Systems Development
  • CSC 436 Web Applications
  • CSC 438 Framework for Web Application Development
  • CSC 439 Computer Security
  • CSC 443 Introduction to Operating Systems
  • CSC 448 Compiler Design
  • CSC 461 Optimized C++
  • CSC 463 Theory and Practice of Safe Systems Programming
  • CSC 464 Virtualization and Cloud Computing
  • CSC 466 Program Analysis
  • CSC 471 Mobile Application Development for iOS
  • CSC 472 Mobile Application Development for Android
  • CSC 491 Mobile Application Development for iOS II
  • CSC 492 Mobile Application Development for Android II
  • CSC 534 Software Development for Limited and Embedded Devices
  • CSC 536 Distributed Systems II
  • CSC 540 Mobile Application Development II
  • CSC 548 Advanced Compiler Design
  • CSC 549 Database System Implementation
  • CSC 551 Distributed Database Systems
  • CSC 552 Concurrent Software Development
  • CSC 553 Advanced Database Concepts
  • CSC 562 Optimized C++ Multithreading
  • CSC 588 Real-Time Multithreaded Architecture
  • CSC 595 Topics in Computer Science
  • CSE 451 Embedded Systems I
  • CSE 452 Embedded Systems II
  • CSE 475 Introduction to Robotics (Formerly CSC 475)
  • CSEC 450 Digital Forensic Techniques
  • CSEC 488 Security Testing and Assessment
  • CSEC 489 Advanced Cyber Attack Responses and Defenses
  • GAM 690 Game Development Studio I
  • GAM 691 Game Development Studio II
  • SE 441 Continuous Delivery and Devops
  • SE 452 Object-Oriented Enterprise Computing
  • SE 459 Agile Software Development
  • SE 488 Ai-Driven Software Development
  • SE 489 Machine Learning Engineering for Production (Mlops)
  • SE 491 Software Engineering Studio (Capstone)
  • SE 525 Software Security Architecture
  • SE 526 Software Security Assessment
  • SE 554 Enterprise Component Architecture
  • SE 560 Structured Document Interchange and Processing
  • SE 591 Software Engineering Studio II (Capstone)
  • NET 478 Information Storage and Management
  • NET 484 Scripting for Network Management
  • NET 568 Network Management
Theory
  • CSC 431 Scientific Computing
  • CSC 440 Cryptology
  • CSC 444 Automata Theory and Formal Grammars
  • CSC 489 Theory of Computation
  • CSC 503 Parallel Algorithms
  • CSC 521 Monte Carlo Algorithms
  • CSC 525 Combinatorial Optimization
  • CSC 531 Introduction to Bioinformatics
  • CSC 535 Formal Semantics of Programming Languages
  • CSC 547 Advanced Topics in Program Languages
  • CSC 557 Foundations of Computer Security
  • CSC 591 Topics in Algorithms
  • SE 533 Software Validation and Verification
Data Science
  • CSC 468 Programming Interactive Data Visualization for the Web
  • CSC 481 Introduction to Image Processing
  • CSC 482 Applied Image Analysis
  • CSC 555 Mining Big Data
  • CSC 575 Intelligent Information Retrieval
  • CSC 578 Neural Networks and Deep Learning
  • CSC 594 Topics in Artificial Intelligence
  • CSC 598 Topics in Data Analysis
  • DSC 423 Data Analysis and Regression
  • DSC 424 Advanced Modeling and Analysis Techniques
  • DSC 425 Time Series Analysis and Forecasting
  • DSC 433 Scripting for Data Analysis
  • DSC 441 Fundamentals of Data Science
  • DSC 465 Data Visualization
  • DSC 478 Programming Machine Learning Applications
  • DSC 480 Social Network Analysis
  • DSC 484 Web Data Mining
  • DSC 540 Advanced Machine Learning
  • DSC 672 Data Science Capstone
Database Systems
  • CSC 452 Database Programming
  • CSC 454 Database Administration and Management
  • CSC 543 Spatial Databases and Geographic Information Systems
  • CSC 549 Database System Implementation
  • CSC 551 Distributed Database Systems
  • CSC 553 Advanced Database Concepts
  • CSC 554 Advanced Database Management
  • CSC 555 Mining Big Data
  • CSC 575 Intelligent Information Retrieval
  • CSC 589 Topics in Database
  • DSC 433 Scripting for Data Analysis
  • DSC 478 Programming Machine Learning Applications
  • DSC 540 Advanced Machine Learning
Artificial Intelligence
  • CSC 457 Expert Systems
  • CSC 458 Symbolic Programming
  • CSC 480 Artificial Intelligence I
  • CSC 481 Introduction to Image Processing
  • CSC 482 Applied Image Analysis
  • CSC 484 Ethics in Artificial Intelligence
  • CSC 528 Computer Vision
  • CSC 538 Vision Systems
  • CSC 575 Intelligent Information Retrieval
  • CSC 576 Computational Advertising
  • CSC 577 Recommender Systems
  • CSC 578 Neural Networks and Deep Learning
  • CSC 580 Artificial Intelligence II
  • CSC 583 Natural Language Processing
  • CSC 587 Cognitive Science
  • CSC 592 Topics in Computer Vision and Pattern Recognition
  • CSC 594 Topics in Artificial Intelligence
  • DSC 441 Fundamentals of Data Science
  • DSC 478 Programming Machine Learning Applications
  • DSC 480 Social Network Analysis
  • DSC 484 Web Data Mining
  • DSC 540 Advanced Machine Learning
  • GEO 441 Geographic Information Systems (Gis) for Community Development
  • GEO 442 Geographical Information Systems (Gis) for Sustainable Urban Development
Software Engineering
  • SE 430 Object Oriented Modeling
  • SE 433 Software Testing and Quality Assurance
  • SE 441 Continuous Delivery and Devops
  • SE 452 Object-Oriented Enterprise Computing
  • SE 453 Architecture and Frameworks for Developing Client Applications
  • SE 456 Architecture of Real-Time Systems
  • SE 457 Service-Oriented Architecture
  • SE 459 Agile Software Development
  • SE 475 Managing Globally Distributed Software Development
  • SE 477 Software and Systems Project Management
  • SE 480 Software Architecture I
  • SE 482 Requirements Engineering
  • SE 485 Real-Time Software Development I
  • SE 491 Software Engineering Studio
  • SE 525 Software Security Architecture
  • SE 526 Software Security Assessment
  • SE 529 Software Risk Management
  • SE 533 Software Validation and Verification
  • SE 546 Software Architecture and Design for Desktop Applications
  • SE 549 Model-Driven Software Development
  • SE 554 Enterprise Component Architecture
  • SE 556 Advanced Architecture of Computer Games
  • SE 560 Structured Document Interchange and Processing
  • SE 576 Gpu Architecture
  • SE 579 Analytics and Data Mining in Software Engineering
  • SE 581 Software Architecture II
  • SE 582 Software-Intensive Systems Engineering and Management
  • SE 585 Real-Time Software Development II
Game and Real-Time Systems
  • CSC 461 Optimized C++
  • CSC 486 Real-Time Networking (Formerly GAM 490)
  • CSC 562 Optimized C++ Multithreading
  • CSC 588 Real-Time Multithreaded Architecture
  • GAM 425 Applied 3D Geometry
  • GAM 450 Physics for Game Developers
  • GAM 453 Tool Programming for Game Development
  • GAM 470 Rendering and Graphics Programming
  • GAM 475 Real - Time Software Development
  • GAM 476 Artificial Intelligence for Computer Games
  • GAM 486 Game Programming for Mobile Devices
  • GAM 575 Real-Time Software Development II
  • GAM 576 Gpu Architecture
  • GAM 690 Game Development Studio I
  • GAM 691 Game Development Studio II
  • GPH 436 Fundamentals of Computer Graphics
  • GPH 469 Computer Graphics Development
  • GPH 570 Visualization
  • GPH 572 Principles of Computer Animation
  • GPH 580 Hardware Shading Techniques
  • SE 456 Architecture of Real-Time Systems
Human-Computer Interaction
  • CSC 436 Web Applications
  • CSC 438 Framework for Web Application Development
  • CSC 471 Mobile Application Development for iOS
  • CSC 472 Mobile Application Development for Android
  • CSC 491 Mobile Application Development for iOS II
  • CSC 492 Mobile Application Development for Android II
  • DSC 465 Data Visualization
  • HCI 440 Introduction to User-Centered Design
  • HCI 430 Prototyping and Implementation
  • HCI 457 Information Architecture and Content Strategy

Research and Thesis Options

As part of their electives, students have the option of signing up for the Research Colloquium, or completing a Research Project, or writing a Master Thesis, or participating in a Graduate Internship.

Research Colloquium

The research colloquium consists of weekly talks by a variety of speakers including faculty, students, and guests from the academic and business communities. The lectures feature new creative and scholarly work that encompasses the disciplines and areas of interest of the school of computing. Students interested in attending the colloquium and receiving credit should sign up for the CSC 500 Research Colloquium course (NOTE: this course carries only 2 credits; it may be taken twice for credit.) Student evaluation is based on attendance as well as an online journal with reflections on each of the presentations. The educational objectives are to expose students to creative and scholarly research at DePaul and elsewhere, and to engage students in the thought process of identifying and solving challenging research problems.
 

Master's Research

Students interested in a more in-depth study of a particular area can choose to work with a faculty member (not necessarily their academic advisor) on an independent study or research project. The work involved may include system development, empirical studies, or theoretical work. The student will register for up to 4 credit hours of CSC 695 Master's Research. 4 credit hours of CSC 695 replaces one 500 level major elective course in the M.S. in Computer Science program. CSC 695 can be taken multiple times for up to 8 credit hours. Students must successfully complete the Foundation courses prior to their first enrollment in CSC 695. Students interested in the Master's Thesis option will typically take 8 credits of CSC 695.          

Master's Thesis

A student who is working on a research project and has made an original contribution to their area of study may choose to complete a Master's Thesis. Additional information and requirements for School of Computing students pursuing the thesis option can be found on the SoC Master's Thesis Guideline page.          

Graduate Internship

In cooperation with local employers, the graduate program offers students the opportunity to integrate their academic experience with on-the-job training in computer related work areas. Students may take CSC 697 Graduate Internship for up to four credits. Admission to the internship program requires consent of the Instructor and a Student Services Advisor. International students may complete curricular practical training (CPT) through this class provided they first obtain CPT authorization from the International Student and Scholar Services (ISS) before beginning the internship.          


Degree Requirements

Students in this degree program must meet the following requirements:

  • Complete a minimum of 48 graduate credit hours in addition to any required introductory courses of the designated degree program.
  • Complete all graduate courses and requirements listed in the designated degree program.
  • Earn a grade of C- or better in all courses of the designated degree program.
  • Maintain a cumulative GPA of 2.5 or higher.
  • Students pursuing a second (or more) graduate degree may not double count or retake any course that applied toward the completion of a prior graduate degree. If a required course in the second degree was already completed and applied toward a previous degree, the student must meet with a faculty advisor to discuss a new course to be completed and substituted in the new degree. This rule also applies to cross-listed courses, which are considered to be the same course but offered under different subjects.
  • Students pursuing a second master's degree must complete a minimum of 48 graduate credit hours beyond their first designated degree program in addition to any required introductory courses in their second designated degree program.

Students with a GPA of 3.9 or higher will graduate with distinction.

For DePaul's policy on repeat graduate courses and a complete list of academic policies see the DePaul Graduate Handbook in the Course Catalog.