Online Master's in Software Engineering
Master of Science in Computer Science - Software Engineering
In Colorado Technical University’s Master of Science in Computer Science -Software Engineering concentration, explore operating systems, networking, system architecture, and the software system engineering process. The job growth in the field of software development is projected to grow 25 percent from 2021 to 2031, much faster than the average for all occupations, reports the Bureau of Labor Statistics.1
This program is designed to provide you with the opportunity to evaluate issues that affect the complex software systems, and compare domain-specific computing or information system solutions. You will also have the opportunity to analyze software requirements in engineering. Explore how to apply architectural strategies to address technical challenges associated with web services, mobile computing, virtualization, cloud computing, and security in computing systems. Review the principles behind software process improvement. You also have the opportunity to create a software design for a real-world software application.
For the ninth consecutive year, CTU’s online Master of Science in Computer Science degree programs are ranked among the Best Online Master's in Computer Information Technology Programs by U.S. News & World Report.*
CTU aims to make it easy to manage your education with your smartphone or tablet anytime, anywhere with CTU Mobile. Our online and mobile-friendly classes run 5 weeks long and you can choose from 9 start dates a year.
* CTU programs are ranked among U.S. News & World Report’s 2023 Best Online Programs.
Relevant Institutional/Programmatic Accreditation
CTU is institutionally accredited by the Higher Learning Commission www.hlcommission.org
- January 02, 2024
- February 06, 2024
- March 19, 2024
Estimate Tuition and Grad Date
Total tuition for this degree program will vary depending on your educational needs, existing experience, and other factors.Estimate your costs, potential savings and graduation date
Effective April 3, 2018, this program is no longer available for future enrollments at the Colorado Springs campus.
The MSCS program is designed to provide students with a strong and broad Computer Science related technical background as well as systematic, analytical, critical-thinking, and problem-solving skills that enable them to contribute as a professional or a subject expert to a variety of Computer Science or Software Engineering related technical roles, including but not limited to Computer and Information Research Scientists, Information Security Analysts, Computer Programmers, Software Developers, Software Quality Assurance Engineers and Testers, Computer Systems Engineers/Architects, and Computer Science Teachers.
The Master of Science in Computer Science (MSCS) degree program includes core courses which are designed to provide relevant and advanced instruction in a set of Computer Science’s most important subjects such as computer algorithm, operating system, database, security, and networking, as well as software engineering. In addition, the MSCS degree program has a General Track as well as two concentrations: Software Engineering and Cybersecurity Engineering. Each concentration provides a set of courses which are designed to equip students with additional domain knowledge such as principles, processes and methodologies, as well as best practice on how to apply relevant computer software or other computing technologies in the concentration subjects.
This program does not lead to additional licensure or certification. As such, CTU has made no determination regarding prerequisites for licensure or certification in any state or jurisdiction.
College of Computer Science, Engineering and Technology Mission Statement
Through innovative industry-current curricula and technology-enabled student-centered teaching, the College of Computer Science, Engineering and Technology empowers students to become motivated, creative, ethical, and skillful professionals who can resolve challenges in Computer Science, Computer/Electrical Engineering, and Information Technology in order to meet the needs of the digital economy.
Course Title Course Description Credit Hours CS627
This course involves both the design and analysis of classic and other useful algorithms which includes the necessary treatment of graph theory and algorithm complexity analysis. Students will design and code many of the algorithms and measure their performance to compare them to one another and to analyze the effect of scale.
Design and Analysis of Algorithms 4 CS630
This is an advanced (OS) course to present the current progress of modern OS. Internal structure and mechanisms as well as the design principles of multi-processor and multi-core OS are evaluated. Technologies of extending the kernel OS functions to solve technical challenges associated with concurrency, synchronization, virtualization, scheduling, clustering, security, client-server, service-orientation, communication and distribution, etc. are discussed. Students will also conduct an applied research or a case study on extending OS to support various types of computing technologies, such as grid computing, cloud computing, embedded computing, distributed and network computing, and/or any new type of computer system architecture.
Modern Operating Systems 4 CS635
Emerging technologies continuously change the way we network. This course analyzes the foundational concepts in computer networking along with the current state of the practice and assesses the changes required by new technologies. The layers of the OSI Reference Model are compared and contrasted with the TCP/IP protocol suite. Network issues, such as addressing and routing, security, and reliability are appraised. Emerging technologies, such as Voice over IP, Multimedia on Demand, Cloud Computing and Virtualization will be evaluated and incorporated into design projects.
Computer Networking 4 CS651
This course introduces the overall foundations required for the understanding of, and further study in, information systems security. It reviews the history of security and computer systems security in particular to develop a set of models to guide the approach to realizing computer systems security. An overview of current security technologies is presented. A research project and formal paper are required.
Computer Systems Security Foundations 4 CS660
This course explores current database systems and provides a foundation for future study. Techniques for the design and implementation of relational databases are presented and applied using SQL and a DBMS. Other data models such as the object-oriented and object-relational models are examined and compared to the relational model. Database systems using data warehouses and data marts, distributed databases, and web-based databases are discussed.
Database Systems 4 CS672
Systems engineering methods provides a robust focus on functionality, design, creation, operational performance and operating systems that address the needs and requirements of customers. SEM provides an overview of techniques, methodologies, and approaches to system engineering. Topics include SE foundational models and the newest concepts, evaluation methods, and key tools. Focus also includes key stages in SEM such as system processes, eliciting customer requirements, system design, system quality, system integration, and deployment, maintenance, and system disposal.
Systems Engineering Methods 4 CS698
The Capstone course demonstrates mastery and critical knowledge from the MSCS program. The content, concepts, and knowledge from the MSCS is critically applied by completing an in-depth project focusing on a major technical problem or major issue that impacts the student’s own organization or in a desired area of study. The course gives the student the opportunity to perform a comprehensive analysis and study in a selected area of interest. The student will prepare a formal technical report of the detailed research and application of prior course concepts.
Computer Science Capstone 4 Total Credit Hours: 28
Course Title Course Description Credit Hours CS641
With the continued demand to develop software applications faster and for more emerging media environments, requirements engineering is essential to the overall software development process. Software Requirements Engineering focuses on the elicitation, analysis, and specification of software requirements with the end goal of developing a quality product with high customer satisfaction. Topics include requirements traceability, requirements management, software validation and verification, use case scenario development, software quality, configuration management and quality control.
Software Requirements Engineering 4 CS644
This is an advanced computer software architecture course. The course presents the current progress of the architectural paradigms for various types of software systems. In addition to the fundamentals of software architecture, the course will discuss the impact of a software architecture on the software development process, teach various principles, methods and techniques commonly used in software architecture analysis, design and validation, such as architectural styles, frameworks, and patterns. Students will also be required to explore how to apply architectural strategies to address technical challenges associated with web services, mobile computing, virtualization, cloud computing, security and trust in computing systems.
Computer Systems Architecture 4 CS649
This course provides in-depth knowledge to analyze and transform functional and nonfunctional requirements into well-designed, scalable and cost-effective workable software. It evaluates software design processes, design principles, design methods, design patterns, design tools, design quality and metrics, software verification and validation, software architecture, software framework, and modeling languages. Students will apply this knowledge to create a software design for a real world software application.
Software Design 4 CS671
This course presents the current research and application of the principles of the software development process and process improvement. The in-depth analysis of the basic principles behind software process improvement provides a framework for further investigation. The software engineering integrated approach focuses on the concepts of software development, configuration management, quality assurance, metrics and risk management.
Software Systems Engineering Process 4 ELE Any 600 level course 4 Total Credit Hours: 20
Total Credit Hours: 48
Compare Related Areas of Study
Compare up to three additional degrees
Ways to Save
MSCS Foundation Requirements
The Master of Science in Computer Science (MSCS) is built upon the expectation that students will enter the program with a solid computer science background. Therefore, the MSCS program requires students to have prior foundational knowledge in all core computer science disciplines to be successful.
Students entering into the MSCS program without a bachelor’s degree in either computer science or computer engineering will be required to successfully complete two MSCS foundation courses (CS503 and CS505) covering the following discipline areas of computer science: discrete math; programming language; object-oriented programming; data structure; algorithms; and algorithm analysis.
If a student can show evidence of satisfying the foundation course objectives through coursework from an accredited institution, the foundation requirement can be waived.
The foundation courses are also available to students with an undergraduate computer science degree who wish to refresh their knowledge in these subject areas.
The MSCS foundation course CS503 must be completed and passed prior to beginning courses in the MSCS program. Students will need to complete and pass CS505 prior to the end of the first quarter.
Students must be able to exhibit proficiency by successfully completing the foundation course with a minimum 70% passing score. If after 5 attempts (applies to each course separately) students do not pass the foundation course, students are encouraged to work with the Student Success department if they have questions regarding these foundation courses, timeframes for completion, or for alternative programs of study as needed.
Students who do not meet the MSCS foundation requirements will be withdrawn, canceled or transferred from the MSCS program.
Cost of this degree may be reduced based on one or more of the following:
Where do I go from here?
Choosing to continue your education with is a big decision and we're here to help. Choose one of the options below to get started.
Start the conversation
Submit your details and speak to an admissions advisor within the next day:Request Information
Chat or call an Admissions Advisor today.1-855-230-0555
Program details are provided lower on the page.
Classes start January 2, 2024 *
*Start dates may vary by program and location.
CTU’s Master of Science in Computer Science (MSCS) with a concentration in Software Engineering Degree Program is designed to provide knowledge, skills, and abilities relevant for pursuing potential opportunities in the workforce. This concentration of MSCS degree program explores a broad computer science subjects including those related to software engineering, as well as systematic, analytical, critical-thinking, and problem-solving skills that may enable students to contribute as a professional or a subject expert to a variety of technical roles requiring the knowledge and skills of both computer science and software engineering.
As you work to complete your Master of Science in Computer Science with a concentration in Software Engineering, you will be immersed in courses where you will study these topics and much more: elicitation, analysis, and specification of software requirements; current progress of the architectural paradigms for various types of software systems; and functional and nonfunctional requirements into well-designed, scalable, and cost-effective workable software.
Courses for the Master of Science in Computer Science with a concentration in Software Engineering start online approximately every five weeks. Completion of the CTU admissions process will depend on how quickly you complete the steps in the CTU online application process. You may complete the application process over the phone with an advisor or you may go online. Once you’ve completed the online application, you may hear from an advisor within the following 24 hours to discuss the next steps toward starting your degree program. Master’s programs may have additional entrance requirements that take additional processing time.
The Master of Science in Computer Science with a concentration in Software Engineering degree program consists of 48 credits. You may be eligible for transfer credit, which is evaluated on an individual basis. Not all credits are eligible to transfer.
As you study topics in computer science and software engineering that are always being evaluated and updated to reflect industry-relevant trends, you will experience a curriculum through classroom learning and hands-on experience that aligns to industry standards and helps you work to develop skills that are applicable to the needs of the digital economy.
The Master of Science in Computer Science with a concentration in Software Engineering is built upon the expectation that students will enter the program with a solid computer science background. Therefore, the MSCS program requires students to have prior foundational knowledge in all core computer science disciplines. Students without a bachelor’s degree in either computer science or computer engineering will be required to successfully complete two MSCS foundation courses (CS503 and CS505)—CS503 must be completed and passed prior to beginning courses in the MSCS program. Students will need to complete and pass CS505 prior to the end of the first quarter.
1 Bureau of Labor Statistics, U.S. Department of Labor, Occupational Outlook Handbook, Software Developers, at https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm (visited February 15, 2023).