Students applying for the master’s program are expected to have an undergraduate background in Computer Science. Those students who do not have such a background must satisfy the breadth requirements described below. In particular, students who have not had an undergraduate course in programming languages must take CS 424 or CS 524 as a prerequisite to the MSSE program.

Unconditional Admission

Students applying to the M.S. program will be given unconditional admission if they meet all the requirements of the School of Graduate Studies and of the Computer Science Department including the breadth requirements listed below.

Conditional Admission

Conditional admission will be recommended for students who, in the judgment of the department, have the potential for successfully completing graduate work but who do not meet all of the requirements for admission.

Degree Requirements and Restrictions

The Master of Science in Software Engineering is conferred under Plan I or Plan II.

Breadth Requirements

Applicants to graduate programs in computer science must satisfy the following breadth requirements before admission to the program.

Mathematics
MA 171CALCULUS A4
MA 172CALCULUS B4
MA 244INTRO TO LINEAR ALGEBRA3
MA 385INTRO TO PROBABILITY & STATIST3
Computer Science
CS 121COMPUTER SCIENCE I 13
CS 221COMP SCI II: DATA STRUCTURES 13
CS 321INTRO OBJECT-ORIENTED PROG JAV 13
CS 214INTRO DISCRETE STRUCTURE3
CS 317INTRO DESIGN/ANALYSIS OF ALG3
CS 490INTRO TO OPERATING SYSTEMS3
CS 309COMPUTER ORG & SWTCHNG THRY3
CS 413INTRO DIGITAL COMP ARCHITECTUR3
Total Semester Hours38
1

An Introductory sequence covering Object-Oriented Programming and Data Structures in C/C++/Java

The breadth requirements can be satisfied in one of the following ways:

  1. Completion of the course at UAH with a grade of B or better;

  2. Completion of an equivalent course at another institution with a grade of B or better;

  3. Testing out of the course, where permitted by departmental policy.

Consult a departmental advisor for additional information.

Transfer to Computer Science from other UAH Graduate Programs

Students enrolled in other graduate programs at UAH who wish to obtain a degree in Computer Science should see a Computer Science advisor for evaluation. Such a student must fulfill the Computer Science breadth requirements. Taking CS graduate courses without first checking with a departmental advisor will not eliminate the need for completing the breadth requirements.

The Program of Study

A program of study should be completed as soon as the course content of the program has been selected. The plan must be made in consultation with an advisor from the Computer Science faculty. The student’s faculty advisor, department chair, and the Dean of the School of Graduate Studies approve the program of study. After approval, student requested changes must be agreed to by the student’s advisor and submitted for approval.

Teaching Areas

The Computer Science Department offers an exceptionally broad spectrum of courses. For convenience, they are listed below by category. The teaching areas include software engineering, computer graphics and image processing, data and information technology, computer architecture and networking, artificial intelligence, languages and systems, and theoretical computer science. There is no requirement to stay within a particular area, and students may freely select from any of the areas when preparing the program of study with an advisor.

Software Engineering

Software engineering is a study of the process of large-scale software development. It includes a study of the phases of software development with emphasis on tools and practices for good software development. Any student who completes CS 650, two courses from (CS 553, CS 652, CS 655, CS 656), one statistics course (ISE 690), one management course from (MGT 601, MGT 622), and CS 585 will receive the software engineering certificate. The courses in this area include:

CS 553CLIENT/SERVER ARCHITECTURES3
CS 650SOFT'W ENGINEERING PROC3
CS 652OBJECT-ORIENTED DESIGN3
CS 655FORMAL METHODS IN SOFTWARE ENG3
CS 656SOFTWARE TESTING3

Computer Graphics and Image Processing

The creation of computer-generated graphic animations and photo-realistic images has a growing number of exciting and important applications. The inverse problem - the processing and extraction of information from visual and other patterns - also has many industrial, military, and space applications. Courses in this emphasis area include a sequence in computer graphics and a sequence in the theory, computational algorithms, and architecture for the design and development of pattern recognition and vision systems.

CS 545INTRO COMPUTER GRAPHICS3
CS 546ADVANCED COMPUTER GRAPHICS3
CS 548HUMAN-COMPUTER INTERACTION3
CS 640AUTOMATIC PATTERN RECOGN3
CS 642COMP PROC/DIGITAL IMAGES3
CS 646COMPUTER GEOMETRY MODELING3
CS 742IMAGE PROC ALGO/ARCHITEC3

Data and Information Technology

As the amount of information and data used by organizations rapidly increases, the need for techniques to manage, retrieve, process, and protect this geographically distributed data becomes critical. For very large data collections, these techniques must include methods to help users discover and select relevant data from the mass of available data. The data and information technology area focuses on the technology required to utilize effectively this rapidly growing volume of data and information. The courses in this area include the following:

CS 581MODELING & SIMULATION I3
CS 585INTRO TO COMPUTER SECURITY3
CS 543INTRO TO MULTIMEDIA SYSTEMS3
CS 685COMPUTER SECURITY3
CS 582MODELING & SIMULATION II3
CS 687DATA BASE SYSTEMS3
CS 643MULTIMEDIA SYSTEMS3

Computer Architecture and Networking

The courses offered in the area of computer architecture cover the organization, architecture and design of digital computer systems from high-level conceptual design to gate level implementation. The main concentration areas are: logic design and digital computer hardware design; parallel computer architectures; distributed processing; and networks. Courses in this area include:

CS 570INTRO TO COMPUTER NETWORKS3
CS 553CLIENT/SERVER ARCHITECTURES3
CS 670COMPUTER NETWORKS3
CS 613COMPUTER ARCHITECTURES3

Cybersecurity

The MSCBS degree is a unique, interdisciplinary program involving three colleges: Business Administration, Engineering, and Science. The program prepares graduates with the skills to secure and defend networks, recover from security failures, use computer forensics and manage data security -- leading to careers in the fast growing field of information security. The Computer Science track involves developing, documenting and maintaining secure coding practices for scripts and applications. Also the design aspects of networks ensuring a risk mitigated network in relation to confidentiality, integrity and the availability of data and devices are included. A student must complete five core courses (IS 660, IS 663, CPE 549, CS 585 and CPE/CS/IS 692 (capstone course)), two courses from (CS 565, CS 570, and CS 685) and 9 hours of elective courses approved by the department to earn MSCBS degree in computer science track.  The courses in the area include the following:

CS 553CLIENT/SERVER ARCHITECTURES3
CS 565NETWORK SECURITY3
CS 570INTRO TO COMPUTER NETWORKS3
CS 585INTRO TO COMPUTER SECURITY3
CS 670COMPUTER NETWORKS3
CS 685COMPUTER SECURITY3
 

Plan I – Master of Science with Thesis

A minimum of 24 semester hours of coursework and the writing of an acceptable thesis is required. At least six semester hours of thesis credit (CS 699) must be earned. A student must present his/her thesis and pass an oral examination based on the thesis and related coursework. Plan I students must register for CS 699 each term they receive supervision form their advisor.

Plan II – Master of Science without Thesis

A minimum of 33 semester hours of coursework is required. A Plan II student must pass a written comprehensive examination over the core courses given below. Plan II students must complete at least 18 semester hours of coursework before taking the written comprehensive examination. The examination may only be taken twice.

The following requirements apply to a student in either plan. A Plan II student must take an additional 9 hours of elective courses approved by the department.

Course Requirements

Core Courses
CS 617DES & ANALY OF ALGORITHM3
CS 650SOFT'W ENGINEERING PROC3
CS 613COMPUTER ARCHITECTURES3
or CS 690 ADVANCED OPERATING SYSTEMS
Required Courses
CS 652OBJECT-ORIENTED DESIGN3
CS 656SOFTWARE TESTING3
Total Semester Hours15

Additional Information

Students completing the M.S.S.E. under Plan II (non-thesis) must take 9 additional semester hours of general elective courses. Students completing the M.S.S.E. under Plan I (thesis) must take 3 additional semester hours of a general elective course. A general elective can be any graduate-level course that is pre-approved by the advisor.

No more than 50% of the semester hours in the program of study may be 500-level courses. No more than three semester hours of selected topics or independent study courses may be included in a program of study. Exceptions must be recommended by the student’s advisor and approved by the department chair.

Grade Requirements

A grade of B or better must be earned in each of the core courses. No grade lower than C can be counted toward a graduate degree. A 3.0 average must be maintained in all graduate work at UAH and in all work to be counted toward the degree.

Time Limit

The degree must be completed within six years. Courses older than six years may be validated according to Graduate School policy. Courses older than ten years may not be applied to the degree. 

Transfer Credit

Graduate work may be transferred from another institution according to Graduate School Rules.