M.S. in Software and Security Engineering
Our Master of Science in Software and Security Engineering (MSSSE) program is a degree program with an emphasis on advanced security and software engineering concepts including information and computer security, software design and quality assurance methodologies, and practices in security and software production. It is designed to provide both fundamental and practical knowledge for students who want to pursue careers in industry as software engineers and/or security engineers as well as those who want to advance their knowledge in the field as researchers in security and software engineering. The MSSSE program has replaced the prior Master of Science in Software Engineering (MSSE) program, which has stopped accepting new applicants.
Students will learn issues and methodologies to help them specify, develop, test, maintain and manage complex software systems and security systems. Because security and software today are often embedded in and interacts with a variety of systems, our program also aims to broaden student knowledge in relevant fields. Specifically, the program incorporates security and software engineering concepts in the context of system requirements and system engineering that considers integrated aspects of physical artifacts, software, human factors, economic, and application domains. The program also includes important practical elements of teamwork and engineering ethics.
Applicants should have a Bachelor of Science in Computer Science degree with proficiency in probability and statistics or a Bachelor of Science in an engineering discipline with proficiency in at least one high−level programming language.
The degree plan for students pursuing a Master of Science in Software and Security Engineering must include CS 5373 and CS 5340. All students must take a seminar course CS 5120 in their first year, three courses from the Security Electives (see the course list below), two courses from the Software Engineering Electives, and one more course either from the Software Engineering Electives or from Other Electives (see the course list below). The total credit hour of CS 7000 must not be over 3 hours.
A student in this program must choose either the thesis option or the (non-thesis) project option. The thesis option requires 6 hours of CS 6000 (thesis). The non-thesis project option requires 3 hours of CS 6001 (project) and additional three courses from the Software Engineering Electives and Other Electives.
The plan for both options must include:
• CS 5373 - Software Modeling and Architecture 3 Semester Credit Hours
• CS 5340 - Introduction to Information and Computer Security 3 Semester Credit Hours
Software Engineering Electives:
• CS 5332 - Special Topics in Software Engineering 3 Semester Credit Hours
• CS 5363 - Software Project Management 3 Semester Credit Hours
• CS 5374 - Software Verification and Validation 3 Semester Credit Hours
• One software engineering elective may be replaced with CS 7000
• CS 5342 - Network Security 3 Semester Credit Hours
• CS 6343 - Cryptography 3 Semester Credit Hours
• CS 6378 - Software Security 3 Semester Credit Hours
• CS 6345 - Digital Forensics 3 Semester Credit Hours
• CS 6359 - Data Security and Privacy 3 Semester Credit Hours
• CS 5333 - Special Topics in Security 3 Semester Credit Hours
• One security elective may be replaced with CS 7000
• CS 5331 - Special Problems in Computer Science 3 Semester Credit Hours
• CS 5379 - Parallel Processing 3 Semester Credit Hours
• CS 5356 - Advanced Database Management Systems 3 Semester Credit Hours
• CS 5377 - Distributed Computing 3 Semester Credit Hours
• CS 5364 - Information Retrieval 3 Semester Credit Hours
• IE 5316 - Simulation Models for Operations Analysis 3 Semester Credit Hours
• IE 5319 - Risk Modeling and Assessment 3 Semester Credit Hours
• IE 5320 - Systems Theory 3 Semester Credit Hours
The Master's Degree Plan specifies information, such as in the case of the master's thesis plan, the Thesis Advisory Committee, the title of the thesis, and the courses to be taken. The graduate school requires the Master's Degree Plan to be submitted during the first semester of study. The Master's Degree Plan also serves as the application for Admission to Candidacy. See the Texas Tech Undergraduate & Graduate Catalog for further details about the requirements for Admission to Candidacy.
For the thesis plan, students should make every effort to find a Thesis Advisor in an area of research compatible with their interests as soon as possible. Thesis Advisors may require students to take certain courses in order to prepare the student for research; therefore, students should allow the Thesis Advisor to assist in the selection of courses for their degree plan.
Minor courses are, in general, not allowed in the degree plan of the non−thesis plan, but are allowed on a limited basis in the degree plan of the thesis plan as long as those courses would support the student's research. No minor courses will be counted if an equivalent computer science course exists. Please see the Texas Tech Undergraduate & Graduate Catalog for the details of minors at the master's level. Please see the Graduate Advisor for minor course degree plan approval before taking the minor courses.
If a student switches from the thesis to the non−thesis plan, then any CS 6000 or possibly CS 7000 courses taken will be lost and not included on the non−thesis degree plan.
The degree plan may be modified later by filling out the degree plan change form. Any changes should be submitted before the graduation semester.
Students who do not hold a bachelor's or master's degree in computer science or a related field may be required to complete undergraduate leveling work.
Without mathematics background
- Calculus I
- Discrete Math
- Data Structures
- Algorithm Analysis
- Software Engineering
With mathematics background
- Data Structures
- Algorithm Analysis
- Software Engineering
Thesis, Project, or Report Advisory
All committee members must belong to the graduate faculty. At a minimum, the committee must include:
- Chair or Co−Chair from the Department of Computer Science at the rank of Assistant, Associate, or Full Professor.
- One other committee member.
According to the Undergraduate & Graduate Catalog, the thesis should represent independent work by the student, be conducted under the supervision of an advisory committee, and be written clearly and concisely in standard English (or another language when appropriate). The thesis must be approved by the Thesis Advisory Committee and the Graduate Dean. All theses must conform to Texas Tech University's published policies.
The project should represent independent work by the student and be conducted under the supervision of an advisory committee. The project must include the development of a software system with a report written clearly and concisely in standard English (or another language when appropriate). The report on the project software system includes the problem statement, design, regime of testing, results, conclusions, and future additions/modifications. The project must be approved by the Project Advisory Committee and the Graduate Dean.
The report should represent independent work by the student and be conducted under the supervision of an advisory committee. The report must include an investigation with a report written clearly and concisely in standard English (or another language when appropriate). The report on the investigation includes an investigation area statement, background literature, investigation design, investigation results, conclusions, and future investigative work. The report must be approved by the Project Advisory Committee and the Graduate Dean.
Final Comprehensive Examination
The Final Comprehensive Examination is required for both the thesis and non−thesis plans. This exam may only be administered to students who have been admitted to candidacy and who are registered for at least 3 hours in the examination semester. The examination semester is usually the semester of graduation.
For the thesis plan, students must publicly defend their completed thesis. For the non−thesis plan, exam option, students must take an exam at a minimum covering the material they learned during their master's degree. For the non−thesis plan, project or report option, an oral examination is taken by students where they make a public presentation of the project/report and results.
A graduate course may be accepted for transfer from another university as long as:
- A "B" or above is made in the course by proof of an official transcript submitted to the Graduate School.
- The course is not taken by correspondence.
- The inclusion of the course satisfies degree plan requirements.
- The course is approved by the Graduate Advisor, as well as the Thesis Advisor in the case of the thesis−based option.
- A Texas Tech University course corresponds to the transferred course.
- The course is from a computer science or similar program.
Students should be prepared to show syllabi and example coursework from the courses they wish to transfer.
No courses are transferred until the degree plan (institutional transcripts showing the transfer courses and grades must be attached) is submitted to the Department of Computer Science and approved by the Graduate Advisor.
Up to 6 hours may be transferred.
Please see the computer science Graduate Advisor for time limits on accepting transfer courses.