Software Engineering
The master's in Software Engineering provides students with skills that are widely applicable, highly in demand, and richly rewarded. Software engineering is a discipline concerned with the processes, methodologies, techniques, and tools of developing high-quality software systems in a cost-effective manner. The Software Engineering program emphasizes the best software engineering practices, current methodologies, emerging technologies, and their applications in various industries. It also emphasizes the development of communication and presentation skills in a team-based software development environment. The curriculum encompasses all important aspects of software engineering, including: requirements engineering, software architecture and design, software construction, software testing and quality assurance, software maintenance, and software project management.
click to show Degree Requirements
Concentrations
- current tab:Entrepreneurship & Technology Leadership
- Real Time Game Systems
- Software Architecture
- Software Development
Entrepreneurship & Technology Leadership
Entrepreneurship & Technology Leadership
This concentration offers students with strong background in software development and a keen interest in business the opportunity to become entrepreneurs or business leaders in the software development industry. This concentration addresses the foundations and methodologies of software development combined with knowledge of business environment and finance to prepare for career paths in entrepreneurship or senior technology leadership positions in businesses.
Real Time Game Systems
Software Architecture
Software Development
Learning Outcomes
Students will be able to:
- Correctly create a model of the structure and behavior of a software system.
- Design and implement, in a programming language, an executable solution to a given problem using common software principles and best practices.
- Apply appropriate software testing techniques and evaluate the quality of a software product at module, integration, and system granularity levels.
- Select and adapt suitable elements from among conventional and evolving software development life-cycle processes and apply the resulting process to a software project.
- Collaborate in teams to develop a significantly sized software system from conceptualization to completion.
- Communicate effectively design and development decisions through written and graphical demonstration.
Career Outcomes
90%of reporting School of Computing master’s graduates were employed, continuing education, or not seeking employment within six months of graduation
$85,000median salary reported by School of Computing master’s graduates six months after degree completion
Curriculum Requirements
Introductory Courses
No Introductory Course may be substituted for any other course at any level.
Introductory courses may be waived for any of the following conditions based on faculty review:
- The student has the appropriate course work to satisfy an Introductory Course based on an official transcript review by faculty and successful grades, typically B or better.
- The student has appropriate and verified professional experience to satisfy an Introductory Course which is demonstrated through successful completion of a GAE exam.
- If a Graduate Assessment Examination (GAE) is available for the Introductory Courses, upon successfully completion of a GAE, a waiver will be issued.
- CSC 400 Discrete Structures for Computer Science
- CSC 401 Introduction to Programming
- CSC 402 Data Structures I
- CSC 403 Data Structures II
- CSC 406 Systems I
- CSC 407 Systems II
CDM Foundation Courses
- SE 430 Object Oriented Modeling
- SE 450 Object-Oriented Software Development
- SE 477 Software and Systems Project Management
Business (Kellstadt) Foundation Courses
- MGT 500 Leading Effective and Ethical Organizations
- MGT 570 Entrepreneurship and New Venture Management*
* Course is not currently offered online. Consult faculty advisor for determining suidiv alternative coursework.
Major Elective Courses
Students must take 16 credit hours from courses from the list of CDM electives below and 8 credit hours courses from the list of Kellstadt courses listed below.
CDM Electives Students may select any SE elective or the following courses:
- CSC 453 Principles of Database Management Systems
- HCI 440 Introduction to User-Centered Design
- The following courses are recommended:
- SE 433 Software Testing and Quality Assurance
- SE 452 Object-Oriented Enterprise Computing
- SE 475 Managing Globally Distributed Software Development
- SE 482 Requirements Engineering
- SE 529 Software Risk Management
- SE 554 Enterprise Component Architecture
- SE 579 Analytics and Data Mining in Software Engineering
Software Engineering Research
Students also have an option of pursuing Master's research projects to fulfill their CDM elective requirements.
- SE 695 Master's Research (4 credits) and SE 696 Master's Project (4 credits)
or SE 695 Master's Research (8 credits) and SE 698 Master's Thesis (0 credits)The Master's Project or Thesis 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. Information and requirements for students pursuing the thesis option can be found at the SoC Master's Thesis Guideline page.
Business (Kellstadt) Elective Courses
- ACC 502 Financial Accounting for Managerial Decision Making
- ACC 555 Management Accounting for Decision-Making
- IS 535 Information Technology Investment Financial Analysis
- IS 570 Managing Change for Digital Transformation
- MGT 502 Operations Management
- MGT 530 Leadership in Organizations
- MGT 535 Change Management and Consulting
- MKT 555 Marketing Management
CDM Open Elective Courses
Students must complete 4 credit hours from CDM Open Elective Course. Any CSEC, CSC, ECT, GAM, GPH, HCI, HIT, IS, IT, NET, PM, or SE course in the 421-699 range qualifies. Credit for courses taken outside of the school will only be given if approved by a faculty advisor.
Capstone
Students must complete the following course.
- SE 491 Software Engineering Studio
Studio Sequence Substitution Policy
Software Engineering (SE) Studio is a requirement for MS SE students. It can only be substituted for students who have had industrial experience in team software development projects. For those students with sufficient experience, they must complete a MS Project or Thesis in lieu of SE Studio.
Substitution of SE Studio must be approved in advance. Student should seek such approval no later than the second quarter after starting the Foundation phase of the program. The request for substitution should be submitted to Software Engineering Program Committee (SE-PC) and the decision will be made by the SE-PC in consultation with the student’s advisor.
Each applicant should provide supporting materials of his/her experience in software development, including resume, and letter(s) from the project manager describing the applicant's role in the projects.
All approvals of substitution will be contingent upon the applicant's completion of a MS Project or Thesis for eight (8) credit hours. Any deviation from that must be approved by the SE-PC as well.
Degree Requirements
Students in this degree program must meet the following requirements:
- Complete a minimum of 52 graduate credit hours in addition to any required introductory courses of the designated degree program.
- Complete all graduate courses and requirements listed in the designated degree program.
- Earn a grade of C- or better in all courses of the designated degree program.
- Maintain a cumulative GPA of 2.5 or higher.
- Students pursuing a second (or more) graduate degree may not double count or retake any course that applied toward the completion of a prior graduate degree. If a required course in the second degree was already completed and applied toward a previous degree, the student must meet with a faculty advisor to discuss a new course to be completed and substituted in the new degree. This rule also applies to cross-listed courses, which are considered to be the same course but offered under different subjects.
- Students pursuing a second master's degree must complete a minimum of 52 graduate credit hours beyond their first designated degree program in addition to any required introductory courses in their second designated degree program.
Students with a GPA of 3.9 or higher will graduate with distinction.
For DePaul's policy on repeat graduate courses and a complete list of academic policies see the DePaul Graduate Handbook in the Course Catalog.