A career in the growing field of computer sciences is attainable for all students by earning a Master’s degree in Computer Science from Ball State University. This program is an excellent fit for all students -- whether they have prior educational background in computer science or not. Students start by taking programming, data structures, and algorithms courses to have the foundational knowledge needed to succeed in their studies. Students then learn applicable skills in innovative areas such as machine learning, data analytics, cybersecurity, and software engineering. Students can apply these skills the very next day in the workplace. All courses are delivered asynchronously online.
Curriculum Overview
Through the core courses of this program, students will build an understanding of data analysis, cybersecurity, software engineering, and data management. In the advanced elective courses, students will tackle concepts such as full stack web development, machine learning, data mining, artificial intelligence, data storage, data visualization, advanced operating systems, advanced networking, graphs, and algorithms. These electives will help to develop specialized knowledge and skills to stand out to employers while pursuing careers in a chosen area of the broad field of computer science.
Traditional Standing or Advanced Standing: A customized learning track to fit your background
Students eager to learn more about computer science but do not have a prior bachelor's degree in the field, can jump right in to the Traditional Standing track. In the Traditional Standing track, students will establish the foundational skills and understanding needed to succeed in the remaining courses. Students who have previously earned a Bachelor of Science in Computer Science or Computer Engineering can start their journey on the Advanced Standing Track, and dive directly into the advanced courses in various compelling topics.
Traditional Standing Track: 36 credits
Computer Science Core Courses, 18 credit hours
CS 601 and CS 602 are specifically for students with little or no background in computer science, to prepare them with basic & necessary CS knowledge in programming, data structures, and algorithms. These classes are prerequisites for most (but not all) other classes in the program and should be taken within the first two semesters. The core courses CS 621, DSCI 604, CS 647, and CS 690 (for a total of 12 credit hours) will be required for all students. These courses offer knowledge in data analysis, database, cybersecurity, and software engineering, which are necessary and important for students to take on any specialization.
| CS 601 | Computer Programming and Data Structures | 3 |
| CS 602 | Discrete Structures and Algorithms | 3 |
| CS 621 | Data Analytics | 3 |
| CS 647 | Cybersecurity and Secure Software | 3 |
| CS 690 | Software Engineering | 3 |
| DSCI 604 | Data Storage and Management | 3 |
Research Coursework, 6 credit hours from
Students will develop an applied research project in the following courses. At least six credit hours are required from this list. (Additional courses may count as electives, and are listed in the "Elective Coursework (additional 12 credit hours from)" section below as well).
| CS 626 | Topics in Artificial Intelligence | 3 |
| CS 639 | Seminar in Computer Science | 1-6 |
| CS 668 | Graphs, Algorithms, and Applications | 3 |
| CS 679 | Research Topics in Computer Science | 3-6 |
| CS 681 | Applications of Computability | 3 |
| CS 699 | Independent Study in Computer Science | 1-6 |
Elective Coursework, additional 12 credit hours from
The advanced (specialization) elective courses provide students with deeper knowledge and skills in a chosen specialized area, which allows students to embark on a successful career in their chosen specialization area. 12 additional elective credit hours will be required from this list.
(A student may take DSCI 606, or ICS 664, but not both, as the two courses overlap in content.)
| CS 618 | Full Stack Web Development | 3 |
| CS 619 | Advanced Operating Systems and Networking | 3 |
| CS 626 | Topics in Artificial Intelligence | 3 |
| CS 639 | Seminar in Computer Science | 1-6 |
| CS 654 | Machine Learning and Data Mining | 3 |
| CS 668 | Graphs, Algorithms, and Applications | 3 |
| CS 669 | Selected Topics in Computer Science | 1-6 |
| CS 679 | Research Topics in Computer Science | 3-6 |
| CS 681 | Applications of Computability | 3 |
| CS 699 | Independent Study in Computer Science | 1-6 |
| DSCI 605 | Data Visualization | 3 |
| DSCI 606 | Introduction to Cloud Computing | 3 |
| or | |
| ICS 664 | Cloud Technologies | 3 |
Advanced Standing Track: 30 credits
Computer Science Core Courses, 12 credit hours
The core courses CS 621, DSCI 604, CS 647, and CS 690 (for a total of 12 credit hours) will be required for all students. These courses offer knowledge in data analysis, database, cybersecurity, and software engineering, which are necessary and important for students to take on any specialization.
Research Coursework, 6 credit hours from
Students will develop an applied research project in the following courses. At least six credit hours are required from this list. (Additional courses may count as electives, and are listed in the "Elective Coursework (additional 12 credit hours from)" section below as well).
| CS 626 | Topics in Artificial Intelligence | 3 |
| CS 639 | Seminar in Computer Science | 1-6 |
| CS 668 | Graphs, Algorithms, and Applications | 3 |
| CS 679 | Research Topics in Computer Science | 3-6 |
| CS 681 | Applications of Computability | 3 |
| CS 699 | Independent Study in Computer Science | 1-6 |
Elective Coursework, additional 12 credit hours from
The advanced (specialization) elective courses provide students with deeper knowledge and skills in a chosen specialized area, which allows students to embark on a successful career in their chosen specialization area. 12 additional elective credit hours will be required from this list.
(A student may take DSCI 606, or ICS 664, but not both, as the two courses overlap in content.)
| CS 618 | Full Stack Web Development | 3 |
| CS 619 | Advanced Operating Systems and Networking | 3 |
| CS 626 | Topics in Artificial Intelligence | 3 |
| CS 639 | Seminar in Computer Science | 1-6 |
| CS 654 | Machine Learning and Data Mining | 3 |
| CS 668 | Graphs, Algorithms, and Applications | 3 |
| CS 669 | Selected Topics in Computer Science | 1-6 |
| CS 679 | Research Topics in Computer Science | 3-6 |
| CS 681 | Applications of Computability | 3 |
| CS 699 | Independent Study in Computer Science | 1-6 |
| DSCI 605 | Data Visualization | 3 |
| DSCI 606 | Introduction to Cloud Computing | 3 |
| or | |
| ICS 664 | Cloud Technologies | 3 |