Course Details


Enter Credentials


Please enter your Computing Sciences username/password


Enter Required Information

Account Lookup:

Please enter your information

Last Name:
University Email Address:
University R Number:

Click to Login

Master of Science in Software Engineering

Visit the University's Graduate Admissions page for information on how to apply.

Prerequisite Courses

If you are admitted to the Master of Science in Software Engineering Graduate program without a formal background in computer science, you may be asked to take some prerequisites in addition to graduate courses. On the admission letter you can find the prerequisites prescribed for you in the form of subject followed by a number. Here is a copy of the catalog description of those courses.

MATH 142 - (Q) Discrete Structures

Prerequisites:MATH 005 or MATH 102 or MATH 103 or MATH 106 or Math Placement DAT score of 13 or higher

A study of symbolic logic, sets, combinatorics, mathematical induction, recursion, graph theory, and trees. Intended for Engineering, Computer Science, and Computer Information Systems majors, but open to other qualified students.

CMPS 134 - Computer Science I

Corequisites:CMPS 134L

An introduction to programming concepts and methodology using an object-oriented programming language (currently Java). Topics include problem analysis, abstraction, modularization, the development and use of algorithms, reuse, and the use of programming constructs including data types, classes, control structures, and methods.

CMPS 134L - Computer Science I Lab

Prerequisites:CMPS 134 (with departmental permission)
Corequisites:CMPS 134

Programming-related activities are undertaken that apply essential concepts from CMPS 134, including problem decomposition, modularization, flow of control, scoping, object-orientation, and algorithm development.

CMPS 144 - Computer Science II

Prerequisites:CMPS 134, CMPS 134L, and either MATH 114 or MATH 142
Corequisites:CMPS 144L

This course emphasizes object-oriented software development, addressing both software engineering and programming. Topics include modularization, abstraction, encapsulation/information hiding, software reuse, software testing, classic data abstractions (e.g., lists, trees) and algorithms (e.g., sorting, searching), recursion, program correctness, and basic algorithm analysis.

CMPS 144L - Computer Science II Lab

Prerequisites:CMPS 134 and CMPS 134L
Corequisites:CMPS 144 is required as a co-requisite, or as a prerequisite with departmental permission.

Activities are undertaken that apply programming concepts form CMPS 144, including object-orientation, inheritance, polymorphism, iterators, generics, algorithms involving various container structures (e.g., stacks, queues, lists, trees, graphs), analysis of algorithms, and concurrency.

CMPS 240 - Data Structures and Algorithms

Prerequisites:CMPS 144

An examination of the issues of data representation, algorithm structure, and encapsulation as they pertain to the development of object-oriented software. Abstract data types studied include stacks, queues, binary trees, n-ary trees, and graphs. Various representation alternatives are analyzed and compared, trade-offs frequently encountered by software developers are discussed.

CMPS 340 - Introduction to Database

Prerequisites:CMPS 144 required, CMPS 240 recommended

File structures concepts and file processing applications. Topics include file maintenance and storage management; file searching, sorting, and merging; consequential processing; index structures; B-trees; hash tables; indexed sequential files; database concepts.

CMPS 352 - Operating Systems

Prerequisites:CMPS 240, CMPS 250

An introduction to the principles of operating systems. Topics include operating system structure, process management, scheduling and dispatching, process synchronization and interprocess communication, memory management, virtual memory, device management, I/O, and file systems.

Back to top

MS of Software Engineering

The University of Scranton's Master of Science degree in Software Engineering (MSSE) is designed to prepare professionals in the field of software development. The program provides instructions and hands-on experience in planning and analysis, design, implementation, and maintenance of computer software and documentation. You will gain experience with computer-aided software engineering (CASE) tools, object-oriented analysis and design, formal methods and models, software reuse techniques, and the role that elegant software engineering plays in the construction of integrated software solutions. Some of your work may be done in cooperation with local firms. The result is a comprehensive, practical foundation that prepares you for a successful career in the growing field of software development.

The University of Scranton is an active place when classes are in session. The department is located on the first floor of the Loyola Science Center (LSC). The departmental labs are also located in this area. When you visit, stop by the department office (LSC190). The secretary will find a faculty member to give you a tour of our facilities and answer your questions about the program. Appointments may be made by calling the department at (570) 941-7774. We can also be reached by fax at (570) 941-4250, or e-mail at or

The Master of Science in Software Engineering (MS SE) program requires 36 graduate credits, divided as follows:

Fundamentals - Four courses, 12 credits

Advanced courses - Six courses, 18 credits

Thesis project - Two courses, 6 credits

Each student is required to complete a thesis project which is normally done during his/her last year in the program. A faculty member works with the student as the project advisor and at least one other faculty member must read and approve the student's thesis report. A thesis project normally involves the development of a software system and it requires the use of tools, techniques, and theory learned from previous courses. The student is required to defend his/her thesis publicly. Six credits are awarded for the thesis project via the two-semester course sequence SE 598 and SE 599.

An undergraduate student of the University may be admitted to the combined program of their undergraduate degree and the Master of Science in Software Engineering (MS SE) graduate degree. Students majoring in Computer Science and Applied Computing in the combined may be able to complete their undergraduate degree and the master's degree in a total of five years.

Interested students should contact the director of the Master of Science in Software Engineering graduate program and the department of their undergraduate major to determine what Software Engineering graduate courses may be used to satisfy their undergraduate degree requirements and the length of their studies in the program.