The 5-year Bachelor of Science + Master of Science program in Computer Science provides research training for students who wish to work in a computing research lab, or possibly continue to PhD studies.
Students enter the "MS-phase" of the program when they have met the following requirements:
- They have achieved senior status, i.e., earned 89 credit hours towards their Bachelor of Science in Computer Science.
- Within the requirements for a Bachelor of Science in Computer Science, they have completed the prerequisites for entry into the regular Master of Science program, i.e.:
Course List Code Title Credit Hours Pre-Requisites for entry to Regular MS in Computer Science Program CSC 120 Computer Programming I 4 CSC 220 Computer Programming II 4 CSC 314 Computer Organization and Architecture 3 CSC 317 Data Structures and Algorithm Analysis 3 CSC 427 Theory of Computing 3 MTH 161 Calculus I 4 MTH 224 Introduction to Probability and Statistics 3 MTH 309 Discrete Mathematics I 3 - They have completed 3 credit hours of CSC 410 and/or CSC 411 in a research-oriented project.
- They have an overall GPA of at least 3.0.
- They have a GPA of at least 3.3 in the CSC courses taken towards their BS in Computer Science.
- They have advised the Director of Graduate Studies of their eligibility for the MS-phase.
Students in the MS-phase must complete 3 further credit hours of CSC 410 and/or CSC 411 in a research-oriented project, as part of their Bachelor of Science in Computer Science (this project will normally be the starting point for the Master of Science research). Students in the MS-phase may take up to 12 credits of courses, including 600 level courses, that count towards completing the requirements for the Master of Science in Computer Science. When students have completed the requirements for a Bachelor of Science in Computer Science they will be awarded that degree, and when they have completed the requirements for the Master of Science in Computer Science they will be awarded that degree.
Incoming students can be admitted to the program if their mathematics placement is MTH 108 or higher. Existing Bachelor of Science in Computer Science students can switch into the program when they have met the requirements for entering the MS-phase of the program. Students can be removed from the program if they have not met the prerequisites for admission to the MS-phase by the time they have achieved senior status. If a student is removed or decides to withdraw from the program, any 600 level courses taken may be used to fulfill the requirements for a Bachelor of Science in Computer Science.
B.S. Curriculum Requirements
Code | Title | Credit Hours |
---|---|---|
Core Computer Science Courses | ||
CSC 120 | Computer Programming I | 4 |
CSC 220 | Computer Programming II | 4 |
CSC 314 | Computer Organization and Architecture | 3 |
CSC 317 | Data Structures and Algorithm Analysis | 3 |
CSC 322 | System Programming | 3 |
CSC 427 | Theory of Computing | 3 |
CSC 431 | Introduction to Software Engineering | 3 |
Core Mathematics Courses 1 | ||
MTH 161 | Calculus I (or equivalent - MTH 140 and MTH 141, MTH 151, or MTH 171) | 4 |
MTH 162 | Calculus II (or equivalent - MTH 172) | 4 |
MTH 210 | Introduction to Linear Algebra | 3 |
MTH 224 | Introduction to Probability and Statistics | 3 |
MTH 309 | Discrete Mathematics I | 3 |
Tracks | ||
Select one of the following Tracks: | 17 | |
Comprehensive Track: 2,3 | ||
Programming Languages | ||
Principles of Computer Operating Systems | ||
Database Systems | ||
Computer Networks | ||
Select a minimum of 5 credit hours of approved electives | ||
Flexible Track: 2 | ||
Select a minimum of 17 credit hours of approved electives | ||
Computational Science Track: 4 | ||
Computing for Scientists | ||
Introduction to Parallel Computing | ||
Computational Geometry | ||
Bioinformatics Algorithms | ||
Computer Science Project Planning | ||
or CSC 411 | Computer Science Project Implementation | |
Introduction to Numerical Analysis | ||
or MTH 520 | Numerical Linear Algebra | |
General Biology 5 | ||
General Biology Laboratory 5 | ||
Cryptography and Security Track: 4 | ||
Principles of Computer Operating Systems | ||
Computer Networks | ||
Data Security and Cryptography | ||
Computer Science Project Planning | ||
or CSC 411 | Computer Science Project Implementation | |
Survey of Modern Algebra | ||
or MTH 505 | Theory of Numbers | |
or MTH 561 | Abstract Algebra I | |
Select a minimum of 2 credit hours of approved electives | ||
Graphics and Games Track: 4 | ||
Introduction to Game Programming | ||
Introduction to Computer Graphics | ||
Introduction to Artificial Intelligence | ||
Computer Science Project Planning | ||
or CSC 411 | Computer Science Project Implementation | |
Select a minimum of 5 credit hours of approved electives 5 | ||
University Physics I for the Sciences 6 | ||
or PHY 221 | University Physics I | |
Science & Ethics Requirement | ||
An approved two semester sequence of courses with laboratory in Biology, Chemistry, Physics, or Geological Sciences | 8-11 | |
PHI 115 | Social and Ethical Issues in Computing | 3 |
Approved Electives | ||
Any CSC 2XX, CSC 3XX, CSC 4XX, CSC 5XX 7, 8 | ||
Information Security | ||
Mobile to Cloud: Developing Distributed Applications | ||
Computer Organization and Design | ||
Computer Architecture | ||
Machine Learning | ||
Neural Networks | ||
Network Client-Server Programming | ||
Object-Oriented and Distributed Database Management Systems | ||
Agent Technology | ||
Internet and Intranet Security | ||
Data Mining | ||
Senior Project I 9 | ||
Senior Project II 9 | ||
Introduction to Numerical Analysis | ||
Theory of Numbers | ||
Numerical Linear Algebra | ||
Numerical Methods in Differential Equations | ||
Introduction to Probability | ||
Introduction to Mathematical Statistics | ||
Statistical Analysis | ||
Additional Requirements for the B.S. 10 | ||
ENG 105 | English Composition I | 3 |
ENG 106 | English Composition II | 3 |
Language Requirement | 3-9 | |
Arts and Humanities Cognate | 9 | |
People and Society Cognate | 9 | |
Electives | 25-16 | |
Total Credit Hours | 120 |
1 | These mathematics courses can also fulfill the requirements for a Minor in Mathematics (see here for details). |
2 | Available to all students. |
3 | The Comprehensive Track provides coverage of the topics in Computer Science prescribed by the Association of Computing Machinery curriculum and the ABET Computing Accreditation Commission. |
4 | Requires permission of the Director of Undergraduate Studies. |
5 | In addition to the generally approved electives, CIM 423, CIM 433, MMI 504, and MMI 505 are approved for the Graphics and Games track. |
6 | This course may also be applied towards the Science requirement. |
7 | CSC 40X - Computer Science Practicum must be taken at the same time as host course. |
8 | Maximally 6 credit hours from CSC 481 - Computer Science Teaching Assistant. |
9 | ECE 481 and ECE 482 may be used to replace any requirement for CSC 410 and CSC411. |
10 | For the Additional Major in Computer Science, with Tracks, students not in the College of Arts and Sciences should use the requirements of their school or college's degree in place of the additional requirements listed here. |
M.S. Curriculum Requirements
Students must complete the Graduate School requirements, and the Departmental requirements described here.
Code | Title | Credit Hours |
---|---|---|
Select either the Thesis Option or the Coursework Option 1 | 24-30 | |
Thesis Option | ||
CSC 810 | Master's Thesis | 6 |
24 credits from approved courses, including at least 9 credits from CSC7XX courses. | ||
Coursework Option | ||
30 credits from approved courses, including at least 12 credits from CSC7XX courses. | ||
Total Credit Hours | 30-36 |
1 | For both options, at least 18 credit hours must be from CSC 6XX and CSC 7XX courses, and may not include more than 6 credit hours from CSC 670. |
Each program must include both theoretical and experimental topics. By graduation students will have knowledge in the areas of Programming Languages, Algorithm Design and Analysis, Theory of Computing, Operating Systems, Computer Networks, and Software Engineering. Each program is approved by the CSGC and the Department Chairman or designate. Programs may be individually tailored to meet varied backgrounds and objectives. It is recognized that there are individuals with undergraduate degrees in other fields wishing to pursue graduate work in Computer Science, and individuals with work experience in the field wishing to advance their formal training in Computer Science.
All Computer Science graduate TAs and RAs must complete Responsible Conduct of Research (RCR) training during their first semester in the department. All other Computer Science graduate students must complete RCR training before starting research work. Information about RCR training can be found from UM ethics programs: http://www.miami.edu/index.php/ethics/projects/rcr/.
Suggested Plan of Study
Year One | ||
---|---|---|
Fall | Credit Hours | |
CSC 120 | Computer Programming I | 4 |
MTH 161 | Calculus I | 4 |
ENG 105 | English Composition I | 3 |
Language Course | 3 | |
Elective | 3 | |
Credit Hours | 17 | |
Spring | ||
CSC 220 | Computer Programming II | 4 |
MTH 162 | Calculus II | 4 |
ENG 106 | English Composition II | 3 |
Language Course | 3 | |
Elective | 3 | |
Credit Hours | 17 | |
Year Two | ||
Fall | ||
CSC 314 | Computer Organization and Architecture | 3 |
CSC 322 | System Programming | 3 |
MTH 309 | Discrete Mathematics I | 3 |
BIL or CHM or PHY Course I | 4 | |
BIL or CHM or PHY Associated Lab I | 1 | |
Language Course | 3 | |
Credit Hours | 17 | |
Spring | ||
CSC 317 | Data Structures and Algorithm Analysis | 3 |
CSC 427 | Theory of Computing | 3 |
MTH 210 | Introduction to Linear Algebra | 3 |
BIL or CHM or PHY Course II | 4 | |
BIL or CHM or PHY Associated Lab Course II | 1 | |
PHI 115 | Social and Ethical Issues in Computing | 3 |
Credit Hours | 17 | |
Year Three | ||
Fall | ||
CSC 421 | Principles of Computer Operating Systems | 3 |
CSC 423 | Database Systems | 3 |
MTH 224 | Introduction to Probability and Statistics | 3 |
People and Society Cognate Course | 3 | |
Writing Intensive Course | 3 | |
Credit Hours | 15 | |
Spring | ||
CSC 410 | Computer Science Project Planning | 3 |
CSC 424 | Computer Networks | 3 |
ENG 233 | Advanced Writing for STEM | 3 |
Arts and Humanities Cognate Course | 3 | |
People and Society Cognate Course | 3 | |
Credit Hours | 15 | |
Year Four | ||
Fall | ||
CSC 405 | Computer Science Seminars | 1 |
CSC 411 | Computer Science Project Implementation | 3 |
600 Level CSC Course | 3 | |
600 Level CSC Course | 3 | |
Arts and Humanities Cognate Course | 3 | |
People and Society Cognate Course | 3 | |
Credit Hours | 16 | |
Spring | ||
CSC 419 | Programming Languages | 3 |
CSC 431 | Introduction to Software Engineering | 3 |
600 Level CSC Course | 3 | |
Arts and Humanities Cognate Course | 3 | |
Elective | 3 | |
Credit Hours | 15 | |
Year Five | ||
Fall | ||
600 Level CSC Course | 3 | |
600 Level CSC Course | 3 | |
700 Level CSC Course | 3 | |
CSC 810 | Master's Thesis | 3 |
Elective | 3 | |
Credit Hours | 15 | |
Spring | ||
700 Level CSC Course | 3 | |
700 Level CSC Course | 3 | |
CSC 810 | Master's Thesis | 3 |
Elective | 3 | |
Elective | 3 | |
Credit Hours | 15 | |
Total Credit Hours | 159 |