Master of Science in Computer Science - Software Engineering Concentration

The Master of Science in Computer Science program centers on a set of core courses which are designed to provide the student with an understanding of operating systems and networking, as well as knowledge of computer system architecture and the software system engineering process. The MSCS program is designed for Computer Science professionals seeking to advance their careers in a broad range of computer fields.

Building on the MSCS program core, the concentration courses provide the foundation and focused knowledge for those interested in the software engineering field. The continued explosive impact of computers and information technology on our everyday lives has generated a need to design and develop new computer software systems and to incorporate new technologies in a rapidly growing range of applications. The tasks performed by software engineers evolve quickly, reflecting new areas of specialization or changes in technology, as well as the preferences and practices of employers. Software engineers apply the principles and techniques of computer science, engineering and mathematical analysis to the design, development, testing and evaluation of the software and systems that enable computers to perform their many applications. The Software Engineering concentration provides the opportunity to attain education competencies in the organization and control of software development and the use of industry-recognized software engineering techniques to successfully deliver software systems requiring a multi-person effort.

MSCS Program Outcomes: Core

  • Apply effective leadership strategies and skills
  • Critically evaluate the issues that affect the development and modification of complex software systems
  • Conduct a professional, scholarly, applied research report.
  • Demonstrate a breadth of knowledge and understanding of the field of computer science
  • Select analytical and critical thinking skills for effective decision analysis and problem solving in a specific situation

Outcomes: Concentration

  • Perform at the project lead level concerning software systems
  • Formulate an approach for the organization and control of software development efforts
  • Compose state-of-the-practice software engineering techniques requiring a multi-person effort
  • Analyze the effective use of project management tools to provide for resource optimization to meet product delivery challenges
  • Critically evaluate the software process improvement, quality assurance and risk management practices throughout the software development process

MSCS Program Competencies:

  • Critically evaluate the issues that impact the development and modification of complex software systems
  • Apply analytical, critical thinking, and problem solving skills in diverse, appropriate situations
  • Construct domain-specific computing or information system solutions
  • Identify gaps in the body of knowledge
  • Conduct professional, scholarly, applied research

Degree Requirements

Courses: Core

CS627Design and Analysis of Algorithms


CS630Modern Operating Systems


CS635Computer Networking


CS651Computer Systems Security Foundations


CS660Database Systems


CS672Systems Engineering Methods


CS698Computer Science Capstone


Total Credit Hours:28

Courses: Concentration

CS641Software Requirements Engineering


CS644Computer Systems Architecture


CS649Software Design


CS671Software Systems Engineering Process


ELEAny 600 level course


Total Credit Hours:20

Total Credit Hours: 48

Preparatory Requirements

The CTU Master of Science in Computer Science degree program is designed to provide technical depth in computer science and in the three concentration areas—software engineering, security and database management systems. In order to achieve this depth a solid foundation in mathematics, computer science, and the student’s concentration area is required. In addition, the student must have an intermediate level of ability to program in a current object-oriented programming language such as C++ or Java, such as is provided by CS215 or IT215. Students who have the required background but need to refresh their mathematics skills are highly encouraged to take MATH501. Students who have the required background but need to refresh some of their computer science skills are highly encouraged to take CS500. Students who do not have the required background in mathematics, computer science, and the concentration or current object oriented programming skills should consult with an Admissions Advisor to design an undergraduate foundation program in preparation for this degree. A resume and entrance essay stating why the student wants to attend graduate school are required in order to successfully assess the student’s preparation for entrance into the MSCS program.


  • Colorado Springs
  • Aurora (Denver Area)
  • Virtual Campus