logo MyCDM DePaul University Homepage
blank
 

M.S. in Software Engineering 2003

 
Home
Course Information
Course Syllabi
Schedule
Faculty
Undergraduate Degrees
Graduate Degrees
 
News and Events
Calendar
 
MSDNAA
TechSupport Guide
 
MyCDM
Prerequisite Knowledge Videos

2003 2002

For transition plans and course equivalency tables, please click here

Download the PDF version of this degree

Software Engineering is a discipline concerned with the practical problems of developing large-scale software systems. Software engineers are the architects of the software component of a computer-based system, providing several levels of representations or blueprints leading to specifications through which programmers build the subsystems and modules of the system. Software development methodologies and management techniques combine with theories from mathematics and computer science in a cost-effective manner to solve real-world system development problems. This degree provides students with the theoretical foundations of software engineering, experience in team projects involving software development and management, hands-on experience with state-of-the-art tools, an understanding of advanced software development and management techniques, and exposure to the most recent developments and emerging technologies in SE.

All students complete any necessary prerequisite courses plus 13 graduate courses. All students are required to participate in an extensive team software development project using cutting edge technologies and the Software Engineering Research Seminar to keep them abreast of this rapidly changing field. For this reason, they are not required to take a Core Knowledge Examination. However, to be admitted into the program, they need to have demonstrated through their prior coursework that they can consistently perform at a B level or higher. Students complete the requirements of one of the three concentrations: Project Management, Software Development, or Software Systems. Admission to the Project Management concentration requires two or more years of experience in software development or a closely related field.

The Project Management Concentration of the Master of Science in Software Engineering addresses the management of the quality of software products and processes and provides coursework in management and measurement techniques.

The Software Development Concentration of the Master of Science in Software Engineering addresses the foundations, methodologies, and tools for developing high quality large-scale software systems, with an emphasis on the technical issues of software development.

The Software Systems Concentration of the Master of Science in Software Engineering addresses the foundations and theories in designing and developing system software and tools for programming languages and software development.

The Software Engineering program has two phases:

The Prerequisite Phase ensures that all students acquire the necessary background prior to enrolling in graduate courses. All or part of the Prerequisite Phase may be waived if a student has the equivalent academic background. In the Graduate Phase, students develop as software engineering professionals by completing required courses that provide a common body of knowledge for their concentration as well as advanced courses that complement and add depth to the common body of knowledge. All students also participate in an extensive team software development project and the Software Engineering Research Seminar. Individual needs are addressed through elective courses chosen in consultation with a faculty advisor.

Prerequisite Phase

The following courses are required for all concentrations:

CSC 211 Programming in Java I
CSC 212 Programming in Java II
or CSC 224 Java for Programmers
(CSC 224 is equivalent to both CSC 211 and CSC 212.Only students with experience in programming languages should take CSC 224.)
CSC 415 Foundations of Computer Science
CSC 416 Foundations of Computer Science II

Also required for the Project Management Concentration and the Software Development Concentration:

CSC 309 Object-Oriented Programming in C++
or CSC 343 Introduction to Operating Systems
or CSC 345 Computer Architecture

Also required for the Software Systems Concentration

CSC 309 Object-Oriented Programming in C++
CSC 343 Introduction to Operating Systems

By taking these courses and receiving a grade of a B- or better in each,
the student will have completed the requirements of the Prerequisite Phase.
All or part of the Prerequisite Phase may be waived if a student has the
equivalent academic background. Alternatively, students with practical
experience may complete a Graduate Assessment Examination (GAE) to show
competency in a prerequisite. All students are blocked from enrolling in
Core Knowledge Phase courses prior to completing their prerequisites.
The student must submit an online Change of Status request when the Prerequisite
Phase is completed to inform the Student Services offices that the block
can be removed. The online request must be submitted two weeks before the student
intends to register for graduate level classes. The student will then be
considered a fully admitted student, and may pass to the GraduatePhase
of the program. Students may submit the Change of Status request by logging in to
MyCTI at www.cti.depaul.edu/myCTI.

 

Degree Requirements

Students in this degree program must complete 13 courses (52 hours) beyond the Prerequisite Phase. Successful completion of the Software Engineering Program consists of:

  • Completion of required courses with a grade of B or better. Students with prior coursework equivalent to any required courses may be allowed by a Software Engineering counselor to take other related advanced courses as substitutes.

  • Completion of advanced courses.

Graduate Phase

Students may register for graduate courses only after meeting all Prerequisite Phase requirements. The graduate phase consists of the following components:

  • Required courses

  • Advanced courses

  • Software engineering studio

  • Research

Required Courses

Software Development Concentration

SE 430 Object Oriented Modeling
SE 431 Model-Driven Software Development
SE 450 Object-Oriented Software Development
SE 452 Object-Oriented Enterprise Computing
SE 550 Distributed Software Development

Software Systems Concentration

CSC 447 Concepts of Programming Languages
CSC 491 Applied Algorithms and Structures
SE 450 Object-Oriented Software Development
CSC 448 Compiler Design
or SE 431 Model-Driven Software Development
SE 550 Distributed Software Development

Project Management Concentration

SE 430 Object Oriented Modeling
SE 450 Object-Oriented Software Development
SE 452 Object-Oriented Enterprise Computing
SE 477 Software and Systems Project Management
SE 468 Software Measurement/Project Estimation
or SE 470 Software Development Processes

Software Engineering Studio

Students in all concentrations are required to complete the following:

SE 491 Software Engineering Studio
SE 591 Software Engineering Studio II

These two courses must be taken as a sequence in consecutive quarters. Students will be working on a large, real project in a team. The project  will be carried out from conceptualization to completion using the current technologies.

Advanced Courses

Two courses from the following list. One must be 500 level.

SE 420 Object-Oriented Design
SE 427 Software Quality Management
SE 433 Software Testing
SE 450 Object-Oriented Software Development
SE 452 Object-Oriented Enterprise Computing
SE 466 Software Engineering Projects
SE 468 Software Measurement/Project Estimation
SE 469 Software Safety
SE 470 Software Development Processes
SE 477 Software and Systems Project Management
SE 480 Software Architecture
SE 529 Software Risk Management
SE 533 Software Validation and Verification
SE 540 Software Development for Mobile and Wireless Systems
SE 542 Software Development for Limited and Embedded Devices
SE 550 Distributed Software Development
SE 552 Concurrent Software Development
SE 554 Enterprise Component Architecture
SE 558 Architecture and Design for Multiplayer Games
SE 560 Structured Document Interchange and Processing
SE 567 Software Reliability
SE 570 Design and Architecture of Secure Software Systems
SE 571 Software Maintenance
SE 580 Design of Object-Oriented Languages
SE 590 Advanced Topics in Object Oriented Technology

Two electives. See elective course restrictions below.

Research

SE 690 Research Seminar

Student must also complete one of the following:

SE 696 Master's Project
SE 698 Master's Thesis

or any 500-level SE course that is not part of the required courses. Software engineering studio courses (e.g. SE 491 and SE 591) may not be used to satisfy this requirement.

SE 698 Master’s Thesis is a two-credit hour course. Students must register for this course a minimum of two times and must continue to enroll in the course in every quarter after the first quarter until the thesis is completed to the satisfaction of their advisor. A maximum of four credit hours will apply for degree credit.

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.

Elective Course Restrictions

Elective courses are in the range of 420-699 and must be from the school of CTI. Credit for courses taken outside of the school will only be given if approved by a faculty advisor. Courses suggested for any Prerequisite Phase in any concentration do not count for elective credit. Any course required for the student’s concentration but taken as part of the requirements of another degree earned by the student may be waived, but cannot be used for elective credit.

Last Modified: Wednesday December 19, 2007