Software Engineering
This degree program is available both on campus and online.
Admission
Applicants for the MS in Software Engineering are required to meet the following requirements:
- A bachelor’s degree from an accredited institution with a grade point average of B or better. An applicant with a lower GPA may be granted conditional. Preference will be given to applicants with backgrounds in computing, engineering, mathematics, or science.
- Satisfactory completion of the following:
- Calculus I & II
- One course in probability and statistics or linear algebra)
- Programming Language (Preferably C/C++ I & II)
- One course in data structures with algorithm analysis
- One course in microprocessors
- One course in computer architecture
- One course in operating systems
Note: Students may be admitted conditionally to make up deficiencies in 2( A-G). above. The software engineering prerequisites may be completed after admission into the program on a “conditional lack of preparation” basis or substituted by two or more years of full-time professional experience in sizeable software development projects. The program committee will determine any decision on substitutions. The applicant will be required to complete the appropriate courses within two years from the date of entrance. Prerequisite courses will not earn credit towards the MS – Software Engineering degree.
3.Two letters of recommendation, with at least one from a person familiar with the candidate’s academic performance, are required. Copies of the applicant’s undergraduate transcripts and degree must be submitted.
Degree Requirements
The MS degree in Software Engineering is a 30-credit hour graduate program. Students admitted to the program are required to complete the approved graduate courses with a cumulative grade point average of B or better. The program of study consists of core courses, concentration courses, and the thesis/project/coursework option.
Minimum Grade Requirement in addition to maintaining a minimum cumulative GPA of 3.0 or higher every semester:
- Courses in which grades of C- or below are earned cannot be used to fulfill degree requirements.
- A minimum of a 3.0 cumulative GPA or higher is required at the time of graduation.
Advanced Standing
Up to six graduate credit hours (grade of B or better) may be transferred from another accredited institution. Students may transfer up to one-half (1/2) the minimum number of credit hours required for their master's or professional degree from University of Michigan campuses (including Dearborn, Ann Arbor, Flint).
A student is expected to complete all work within five years from the date of first enrollment in the master’s program. A student who fails to complete requirements within five years may be withdrawn and required to apply for readmission. Students exceeding this limit must submit a petition requesting additional time to complete the program. Petitions must describe in detail the amount of work remaining and a timeline for completion. You can review this policy and more on the Graduate Academic Policies page.
Program Requirements
The 30 semester hours of required coursework are distributed as follows:
Code | Title | Credit Hours |
---|---|---|
Core Courses | 15 | |
Application Courses | 9 | |
Coursework/Project/Thesis | 6 | |
Total Credit Hours | 30 |
Code | Title | Credit Hours |
---|---|---|
Core Courses | ||
All of the following ECE courses: | ||
ECE 554 | Embedded Systems | 3 |
ECE 574 | Adv Sftwr Technq in Eng Appl | 3 |
Three (3) out of the following six (6) CIS courses: | 9 | |
Software Security | ||
Software Engineering | ||
Software Quality Assurance | ||
Software Architecture and Design Patterns | ||
Software Engineering Mgmt | ||
Data Analytics in Software Engineering | ||
Application Courses | ||
Choose three courses from one of the following application areas: | 9 | |
Web Engineering: | ||
Web Technology | ||
Semantic Web | ||
Text Mining and Information Retrieval | ||
Foundation of Information Security | ||
Computer and Network Security | ||
Software Security | ||
Principles of Social Network Science | ||
Web Information Management | ||
Software Quality Assurance | ||
Software Architecture and Design Patterns | ||
Web Services | ||
S/W User Interface Dsgn&Analys | ||
Data Analytics in Software Engineering | ||
Advanced Computer and Network Security | ||
Edge Computing | ||
Research Advances in Software Engineering | ||
Cloud Computing | ||
Computer Networks | ||
Game Engineering: | ||
Introduction to Quantum Computing | ||
Computer Graphics | ||
Information Visualization and Virtualization | ||
Software Engineering | ||
Software Engineering Mgmt | ||
S/W User Interface Dsgn&Analys | ||
Artificial Intelligence | ||
Data Analytics in Software Engineering | ||
Computer Game Design and Implementation | ||
Computer Game Design II | ||
Advanced Information Visualization and Virtualization | ||
Research Advances in Software Engineering | ||
Interactive Media | ||
Intelligent Systems | ||
MM Design Tools I | ||
MM Design Tools II | ||
Data Engineering and Analytics: | ||
Text Mining and Information Retrieval | ||
Foundation of Information Security | ||
Data Security and Privacy | ||
Software Security | ||
Database Systems | ||
Introduction to Big Data | ||
Web Information Management | ||
Data Mining | ||
Artificial Intelligence | ||
Advanced Data Mining | ||
Data Analytics in Software Engineering | ||
Trustworthy Artificial Intelligence | ||
Deep Learning | ||
Advanced Artificial Intelligence | ||
Advanced Data Management | ||
Research Advances in Data Management | ||
Research Advances in Software Engineering | ||
Multimedia Data Stor & Retr | ||
Information Engineering | ||
Intelligent Systems | ||
Information and Knowledge Engineering: | ||
Introduction to Natural Language Processing | ||
Text Mining and Information Retrieval | ||
Foundation of Information Security | ||
Software Security | ||
Introduction to Big Data | ||
Principles of Social Network Science | ||
Web Information Management | ||
Data Mining | ||
Advanced Data Mining | ||
Compiler Design | ||
Artificial Intelligence | ||
Data Analytics in Software Engineering | ||
Computational Learning | ||
Deep Learning | ||
Advanced Artificial Intelligence | ||
Advanced Data Management | ||
Research Advances in Software Engineering | ||
Research Advances in Computational Game Theory and Economics | ||
MM Design Tools I | ||
Multimedia Secur & Forensics | ||
Intelligent Vehicle Systems | ||
Data Mining | ||
Fuzzy Systems | ||
Information Engineering | ||
Engineering in Virtual World | ||
Intelligent Systems | ||
Artificial Neural Networks | ||
Robot Vision | ||
Mobile and Cloud Computing: | ||
Wireless Technologies and Pervasive Computing | ||
Advanced Networking and Distributed Systems | ||
Security and Privacy in Wireless Networks | ||
Security and Privacy in Cloud Computing | ||
Object-Oriented Programming and Its Applications | ||
Software Engineering | ||
Software Quality Assurance | ||
Software Architecture and Design Patterns | ||
Edge Computing | ||
Research Advances in Networking and Distributed Systems | ||
Soft Arch Des & Analysis | ||
Cloud Computing | ||
Mob Dev & Ubiqys Comp Sys | ||
Computer Networks | ||
Intro to Wireless Comm | ||
Embedded Systems | ||
Web Technology | ||
Computer Networks | ||
Wireless Technologies and Pervasive Computing | ||
Advanced Networking and Distributed Systems | ||
Security and Privacy in Wireless Networks | ||
Software Architecture and Design Patterns | ||
Wireless Sensor Networks and IoT | ||
Software Engineering Mgmt | ||
Edge Computing | ||
Intro to Embedded Systems | ||
Mob Dev & Ubiqys Comp Sys | ||
Embedded Networks | ||
Embedded Sig Proc and Control | ||
Reconfigurable Computing | ||
Coursework/Project/Thesis Option | ||
Select six credit hours | 6 | |
Total Credit Hours | 30 |
A student may elect the application area of his or her choice from CIS or ECE courses with the approval of the advisor. A course cannot be used as both core and application courses.
A student must choose one of the three options:
Option 1: Coursework. Students desiring to obtain deep/broad knowledge are encouraged to take two elective courses (6 credits) listed above that are not used to satisfy your core or application requirements.
Option 2: Project. Students desiring to obtain project experience are encouraged to elect the directed studies ECE 591/CIS 591 (3 credit hours), or Project Course ECE 695/CIS 695 (3 credit hours) to work under the supervision of a faculty advisor, and take one additional 3-credit course listed in the Core Courses section and the Application Courses section , or any other CIS/ECE course related to the students’ project and approved by the graduate program advisor.
Option 3: Thesis. Students desiring to obtain research experience are encouraged to elect the thesisECE 699/CIS 699 (6 hours) and work under the supervision of a faculty advisor.
Master’s Thesis Committee
A Master’s thesis committee consists of three full-time CIS or ECE faculty members, one of whom is the thesis advisor and requires the approval of the Software Engineering graduate committee. When deemed appropriate, the chair of the graduate committee may request the presence of an additional member from outside CIS or ECE.
Preparatory Courses
Students with inadequate background in CIS or CE may be required to meet with the department graduate advisor to determine the need for preparatory courses and to determine what courses to take prior to consideration into the Masters program.
For further information contact:
Department of Computer and Information Science
University of Michigan-Dearborn, 4901 Evergreen Road
Room 105 CIS, Dearborn, MI 48128-2406
Tel: 313-436-9145 Fax: 313-593-4256
E-mail: umd-cisgrad@umich.edu
Software Engineering provides a systematic, disciplined, and quantifiable approach to the development, operation, and maintenance of software. The program includes core engineering courses plus electives chosen from a graduate introduction to software engineering, software reliability, management, interface design, and case studies. (12 credit hours)
Certificate offered on Campus and via Distance Learning
Program Requirements
Core Courses
Code | Title | Credit Hours |
---|---|---|
CIS 553 | Software Engineering | 3 |
ECE 554 | Embedded Systems | 3 |
Additional Coursework
Code | Title | Credit Hours |
---|---|---|
Complete 2 courses from the following (6 credits): | ||
CIS 505 | Algorithm Analysis and Design | 3 |
CIS 565 | Software Quality Assurance | 3 |
CIS 575 | Software Engineering Mgmt | 3 |
CIS 577 | S/W User Interface Dsgn&Analys | 3 |
CIS 580 | Data Analytics in Software Engineering | 3 |
ECE 537 | Data Mining | 3 |
ECE 552 | Fuzzy Systems | 3 |
ECE 574 | Adv Sftwr Technq in Eng Appl | 3 |
ECE 576 | Information Engineering | 3 |
ECE 5831 | Pat Rec & Neural Netwks | 3 |
Learning Goals
- Students will be able to use mathematical and scientific techniques to solve software engineering problems.
- Students will be able to formulate problems, design experiments, collect, verify, validate, analyze, and interpret data and use this knowledge to design a reliable system, component, or process to meet requirements.
- Students will be able to use the techniques, skills, and modern software tools necessary for reliable and robust software engineering practice.
- Students will be able to recognize a problem, evaluate different methods and use software engineering principles to derive a feasible solution.