logo MyCDM DePaul CDM Homepage
blank
 

M.S. in Computer Science 2004

 
Home
Course Information
Course Syllabi
Schedule
Faculty
Undergraduate Degrees
Graduate Degrees
 
News and Events
Calendar
 
MSDNAA
 
MyCDM
Prerequisite Knowledge Videos

2003 2002

For transition plans and course equivalency tables, please click here

Printable version

The Master of Science in Computer Science is the most technical of CTI's master’s programs. The courses in the Prerequisite Phase and Core Knowledge Phase focus on the foundations and fundamentals of programming languages, and the theoretical underpinnings of computer science. As part of the Advanced Phase, students get a breadth of training in traditional areas of computer science by taking one course each in Foundations, Computer Systems, and Database Systems. The remainder of the Advanced Phase gives students a great deal of flexibility. A student may choose to focus in a specific area by taking many courses in one area of computer science or from one of the other degree programs in CTI. Or, they may achieve a breadth of knowledge across many areas by selecting courses from a variety of areas. This degree is appropriate for students who wish to pursue a technical career in any of a number of areas of computer science, or for students who may wish to pursue a Ph.D. degree in the future.

The program follows a three-phase sequence, with each phase preparing the student for the subsequent phase. The master's degree program consists of:

Upon acceptance into the masters degree program, the student will meet with their faculty advisor to discuss required courses for the Prerequisite Phase. The Prerequisite Phase is intended to ensure that all students enter graduate courses with an equivalent background. While completing this phase, a student is considered a conditionally admitted masters student. In the Core Knowledge phase, a student will follow a sequence of courses to acquire an understanding of the technological and theoretical foundations for the particular degree. In the Advanced Phase of the program, the fundamental information learned previously allows a student to study advanced topics within their chosen degree. This phase adds depth to the work completed in the Core Knowledge Phase. Individual interests and needs are also addressed through a series of elective courses chosen in consultation with the student's faculty advisor.

Grade and GPA requirements

Grades: Students must receive a grade of B- or better in each prerequisite course and a C- or better in all other courses. 

GPA: Students must maintain a graduate level GPA of 2.50 or higher while pursuing their degree. Students will not be approved for graduation with less than a 2.50 GPA. Students with a GPA of 3.75 or higher and a designation of distinction on at least two core examinations and no failed core examination will graduate with distinction.

Prerequisite Phase

The courses in the Prerequisite Phase for the MS in Computer Science are:

CSC 211 Programming in Java I
and CSC 212 Programming in Java II
or CSC 224 Java for Programmers
CSC 309 Object-Oriented Programming in C++
CSC 343 Introduction to Operating Systems
CSC 345 Computer Architecture
CSC 415 Foundations of Computer Science
CSC 416 Foundations of Computer Science II
*CSC 224 is equivalent to both CSC 211 and CSC 212. Only students with experience in programming languages should take CSC 224.

By taking these courses and receiving a grade of a B- or better in each, the student will have completed the requirements of the Prerequisite Phase. All or part of the Prerequisite Phase may be waived if a student has the equivalent academic background. Alternatively, students with practical experience may complete a Graduate Assessment Examination (GAE) to show competency in a prerequisite.  All students are blocked from enrolling in Core Knowledge Phase courses prior to completing their prerequisites. The student must submit an online Change of Status request when the Prerequisite Phase is completed to inform the Student Services offices that the block can be removed. The online request must be submitted two weeks before the student intends to register for graduate level classes. The student will then be considered a fully admitted student, and may pass to the Graduate Phase of the program. Students may submit the Change of Status request by logging in to MyCTI.

Core Knowledge Phase

Core Knowledge Courses

Fully admitted students in the Core Knowledge phase may register for a maximum of four Advanced phase courses.  The Core Knowledge Phase courses for the MS in Computer Science are:

CSC 447 Concepts of Programming Languages
CSC 491 Applied Algorithms and Structures
SE 450 Object-Oriented Software Development

Core Knowledge Examination

These examinations cover the subject matter of the Core Knowledge Phase courses. Students have the option of taking one, two, or three core exams at one time after completion of the applicable course or courses. Possible grades on the Core Examinations are; Pass with Distinction, Pass, and Fail. Students are allowed at most two attempts at each exam. Two failures on one exam results in dismissal from the graduate program.

To be eligible for core exam application, a student must have completed all prerequisite courses or be registered for the final prerequisite course in the quarter before the core exam for which the student is applying. Additionally, a student must successfully complete all prerequisite courses (B- or better required) before being allowed to sit for any core exam. Failure to successfully complete a core class (grade of C- or better required) may result in an administrative cancellation of the student's core exam(s).

Advanced Phase

One course in each of the following areas: Foundations, Computer Systems, Database Systems

Four additional courses from the areas above or Artificial Intelligence, Computer Vision, Data Analysis, Computer Graphics, Software Engineering, Security, Network Technologies, two of which must be 500-level. Courses are grouped into different areas below for your convenience. A student may concentrate in one area by taking all 4 courses from the same area, or may wish to take courses from a variety of areas.

Three elective courses. Students must choose three graduate level elective courses from the School of CTI. Elective courses are in the range of 420-699.

Overall, at least four 500-level courses.

There is a research option for this degree as well.

Database Systems Area

CSC 449 Database Technologies
CSC 451 Database Design
CSC 452 Database Programming
CSC 454 Database Administration and Management
CSC 549 Database System Implementation
CSC 550 Object-Oriented Databases
CSC 551 Distributed Database Systems
CSC 553 Advanced Database Concepts
CSC 589 Topics in Database
DS 575 Intelligent Information Retrieval

Foundations Area

CSC 444 Automata Theory and Formal Grammars
CSC 448 Compiler Design
CSC 503 Parallel Algorithms
CSC 504 Parallel Processing
CSC 535 Formal Semantics of Programming Languages
CSC 544 Theory of Computation
CSC 547 Advanced Topics in Program Languages
CSC 548 Advanced Compiler Design
CSC 599 Topics in Computer Science
DS 591 Distributed Algorithms
SE 580 Design of Object-Oriented Languages
SE 590 Advanced Topics in Object Oriented Technology

Computer Systems Area

CSC 545 Advanced Computer Organization
CSC 546 Operating Systems Design
DS 420 Distributed Systems I
DS 421 Distributed Systems II
DS 513 Client/Server Technologies
DS 520 System Design and Implementation with Distributed Object Frameworks
DS 594 Distributed Systems Project
DS 599 Topics in Distributed Systems
SE 540 Software Development for Mobile and Wireless Systems
SE 542 Software Development for Limited and Embedded Devices
SE 550 Distributed Software Development
SE 552 Concurrent Software Development
TDC 561 Network Programming

Artificial Intelligence Area

CSC 457 Expert Systems
CSC 458 Symbolic Programming
CSC 480 Foundations of Artificial Intelligence
CSC 578 Neural Networks and Machine Learning
CSC 587 Cognitive Science
CSC 594 Topics in Artificial Intelligence
DS 575 Intelligent Information Retrieval

Computer Vision Area

CSC 481 Introduction to Image Processing
CSC 498 Digital Signal Processing
CSC 538 Vision Systems
CSC 581 Knowledge-Based Systems
CSC 584 Computer Vision
CSC 592 Topics in Computer Vision and Pattern Recognition

Data Analysis Area

CSC 423 Data Analysis and Regression
CSC 424 Advanced Data Analysis
CSC 428 Data Analysis for Experimenters
CSC 521 Monte Carlo Algorithms
CSC 578 Neural Networks and Machine Learning
CSC 598 Topics in Data Analysis
ECT 584 Web Data Mining for Business Intelligence
SE 468 Software Measurement/Project Estimation
SE 567 Software Reliability

Computer Graphics Area

GPH 436 Fundamentals of Computer Graphics
GPH 438 Computer Animation Survey
GPH 448 Computer Graphics Scripting
GPH 469 Computer Graphics Development
GPH 470 Survey of Computer Graphics
GPH 536 Smooth Surface Modeling for Graphics and Animation
GPH 539 Advanced Rendering Techniques
GPH 560 Modeling Spaces
GPH 570 Visualization
GPH 572 Principles of Computer Animation
GPH 574 Computer Games
GPH 575 Advanced Graphics Development
GPH 595 Topics in Graphics

Software Engineering Area

SE 427 Software Quality Management
SE 430 Object Oriented Modeling
SE 431 Model-Driven Software Development
SE 433 Software Testing and Quality Assurance
SE 452 Object-Oriented Enterprise Computing
SE 465 Software Engineering Principles
SE 468 Software Measurement/Project Estimation
SE 469 Software Safety
SE 470 Software Development Processes
SE 472 Personal Software Process
SE 477 Software and Systems Project Management
SE 480 Software Architecture
SE 482 Requirements Engineering
SE 529 Software Risk Management
SE 531 Formal Software Specifications and Development II
SE 533 Software Validation and Verification
SE 546 Software Architecture and Design for Desktop Applications
SE 554 Enterprise Component Architecture
SE 558 Architecture and Design for Multiplayer Games
SE 560 Structured Document Interchange and Processing
SE 571 Software Maintenance

Security Area

CSC 440 Cryptology
DS 420 Distributed Systems I
DS 421 Distributed Systems II
ECT 582 Secure Electronic Commerce
IS 511 Social Issues of Computing
IS 572 Information Security Management
SE 473 Security Architecture I
SE 547 Foundations of Computer Security
SE 573 Security Architecture II
TDC 511 Telecommunications Practicum
TDC 562 Computer-Communication Network Design and Analysis
TDC 563 Protocols and Techniques for Data Networks
TDC 572 Network Security

Network Technologies Area

TDC 432 Computer and Information Systems Modeling
TDC 460 Foundations of Communications Systems
TDC 463 Computer Networks and Data Systems
TDC 464 Voice Communication Networks
TDC 489 Queuing Theory with Computer Application
TDC 511 Telecommunications Practicum
TDC 512 Cellular and Wireless Telecommunications
TDC 513 Client/Server Technologies
TDC 514 Computer Telephony
TDC 561 Network Programming
TDC 562 Computer-Communication Network Design and Analysis
TDC 563 Protocols and Techniques for Data Networks
TDC 564 Local Area Networks
TDC 565 Voice and Data Integration
TDC 566 Broadband Access Technologies
TDC 568 Network Management
TDC 572 Network Security
TDC 573 Multimedia Networking

Masters Research Option

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 a research project. This option can be satisfied by taking the course CSC 696 (Masters Project) at least twice, each time for 4 credits. The Masters research option will replace one elective and one of the 4 required area courses. Students who choose this option must successfully complete the core exams prior to their first enrollment in CSC 696. The research project must represent an original contribution to the area, and may include system development, empirical studies, or theoretical work. The scope and the details of the research project will be determined by the research supervisor, and must be approved by the student's academic advisor. At the end of the two quarters, the student must submit a technical report detailing the results of the research project. This report must be approved by the student's research supervisor and the faculty advisor, at which point it will be made available to the public as a CTI Departmental Technical Report.

Last Modified on: Tuesday, May 26, 2009

Valid HTML 4.01!