Computer Science

School

School of Science, Engineering and Technology

School Dean

Teresa Beam, Ph.D.

Department

Computer Science

The Department of Computer Science at St. Mary’s University offers master’s degree programs with a special focus on the software development process. The programs are intended for students, professionals and managers who are interested in advancing their career by gaining knowledge and skills into the problems and solutions of developing practical software systems. The programs include an MS in Computer Science, Computer Information Systems, and Cybersecurity. The Cybersecurity degree provides students with knowledge, skills and best practices on how to monitor, secure and safeguard an organization’s digital assets, and combines technical rigor with sound ethics and implications to the law.

In general, students develop or deepen skills to analyze, design, implement and test stand-alone and embedded software systems. The department also offers a combined Bachelor of Arts/Science and Master of Science in Computer Science that can be completed in as little as five years. An intensive course of study, undergraduate students can begin graduate course work during their senior year. Students can also pursue a joint Master of Science and Juris Doctorate degree.

Admission is granted to those with high promise for success in graduate study. Applicants can demonstrate this potential through previous academic records, testing, certification and work performance. Some talented undergraduates may want to apply to our combined BA/BS+MS program where a student can take graduate work while completing an undergraduate degree. Those students may take the GRE anytime before the first semester after completing the undergraduate degree.

Admission Requirements for Computer Information Systems

To be considered for admission to this master's program, applicants should have:

  • College algebra or higher, with a C or better
  • Programming classes including data structures and object oriented programming
  • One other computer-related class such as computer architecture or operating systems.
  • Minimum grade point average (GPA) of 2.8 out of a possible 4.0 in a bachelor's degree
  • For international students, minimum TOEFL score of at least 80 on the Internet-based test, 6.0 on IELTS, or 115 on Duolingo. Some students may be required to take an English class for graduate international students as part of their degree plan.
  • Completed application form to include the following:
    • written statement of purpose indicating interest and objective
    • two letters of recommendation
    • official transcripts of all college-level work

Applicants for other disciplines or those lacking specific classes may be admitted with the provision that they take the prerequisite courses selected by the graduate program director on an individual basis. Some of these prerequisites may be fulfilled by work certification or previous experience. Applicants that fail to meet any of the above standard may be admitted on a conditional basis.

Admission Requirements for Computer Science

To be considered for admission to this master's program, applicants should have:

  • Calculus I or higher, with a C or better.
  • Programming classes including data structures and object oriented programming.
  • One other computer-related class such as computer architecture or operating systems.
  • Minimum grade point average (GPA) of 3.0 out of a possible 4.0 in a bachelor's degree.
  • For international students, minimum TOEFL score of at least 80 on the Internet-based test, 6.0 on IELTS, or 115 on Duolingo. Some students may be required to take an English class for graduate international students as part of their degree plan.
  • Completed application form to include the following:
    • written statement of purpose indicating interest and objective
    • two letters of recommendation
    • official transcripts of all college-level work

Applicants for other disciplines or those lacking specific classes may be admitted with the provision that they take the prerequisite courses selected by the graduate program director on an individual basis. Some of these prerequisites may be fulfilled by work certification or previous experience. Applicants that fail to meet any of the above standard may be admitted on a conditional basis.

Admission Requirements for Cybersecurity

Admission is granted only to those with high promise for success in graduate study. Applicants demonstrate this potential through previous academic records and testing.

To be considered for admission to the Master of Science in Cybersecurity program, applicants must:

  • Have a bachelor’s degree in Computer Science, Computer Engineering, Information Technology, Software Engineering, or a related discipline. Applicants who earned a bachelor’s degree in a closely related discipline, such as Electrical Engineering, Mathematics, or Physics can be admitted with the provision that they take the prerequisite courses listed below. The program director will evaluate applicants from other disciplines on an individual basis.
  • Have a minimum Grade Point Average (GPA) of 3.00 for their bachelor’s degree.
  • For international students, minimum TOEFL score of at least 80 on the Internet-based test, 6.0 on IELTS, or 115 on Duolingo. Some students may be required to take an English class for graduate international students as part of their degree plan.
  • Submit a completed application form, a written statement of purpose indicating the applicant’s interests and objectives, two letters of recommendation concerning the applicant’s potential for succeeding in the graduate program, and official transcripts of all college-level work.

Applicants who fail to meet any of the above standards may be admitted on a conditional basis.  The Program Director evaluates these cases on an individual basis.

Prerequisites

Applicants whose Bachelor of Science degree is not in Computer Science, Computer Engineering, Software Engineering or a closely related discipline are required to demonstrate proficiency or take the following prerequisite courses: Object Oriented Programming, Data Structures and Algorithms, and Discrete Math.

Applicants from other disciplines or those lacking specific classes may be admitted with the provision that they take the prerequisite courses selected by the graduate program director on an individual basis. Some of these prerequisites may be fulfilled by work certification or previous experience.

CS 6000X. Continuous Graduate Enrollment. 0 Semester Hours.

Available to students who do not need to register into regular courses but still must be registered at the University such as those who are graduating in the semester and do not need more credit hours.

CS 6185. Internship. 1 Semester Hour.

Experiential, practical applications approach to advanced computer science topics, typically through work in a computer company or organization. Consent of the Graduate Program Director is required.

CS 6285. Internship. 2 Semester Hours.

Experiential, practical applications approach to advanced computer science topics, typically through work in a computer company or organization. Consent of the Graduate Program Director is required.

CS 6310. Systems Analysis and Design. 3 Semester Hours.

Advanced study in the use of current methodologies for project planning, analysis, and design of various types of computer software systems. Methodologies studied include both the traditional and object-oriented approaches, including Universal Markup Language (UML).

CS 6315. Artificial Intelligence & Machine Learning. 3 Semester Hours.

Advanced study into the area of artificial intelligence including topics such as expert systems, intelligent tutoring systems, search and gaming, predicate calculus, learning theories, and natural language processing.

CS 6320. Files and Database. 3 Semester Hours.

Advanced study of database system concepts, relational data model and relational database, SQL, relational algebra, entity relationship model, UML diagrams, database programming techniques, functional dependencies and database normalization, database security; file structures, XML files, indexing, hashing, B trees, B+ trees, distributed databases, NoSQL databases, and big data.

CS 6325. Computer Graphics. 3 Semester Hours.

Advanced study into the development and implementation of computer graphics. The course includes topics such as branding, windowing, shearing, transformations, shading, and animation.

CS 6330. Advanced Computer Networks. 3 Semester Hours.

Advanced study of data communications, network architectures and protocols, placing emphasis on protocols used in the Internet. TCP/IP protocol architecture, application layer, network programming, transport layer, network layer, routing, multicast, data link layer issues, encoding, error detection and handling, network management.

CS 6335. Game Development. 3 Semester Hours.

Advanced study of computer games and computer game development including evaluating, designing, and developing a computer video game with appropriate documentation.

CS 6340. Advanced Software Engineering. 3 Semester Hours.

Advanced study of an engineering approach to software development focusing on product development in a team with appropriate documentation. Prerequisite: CS 6310, and proficiency in high level programming language. Class is usually offered in the Fall semester.

CS 6345. eLearning and Gamification. 3 Semester Hours.

Advanced study of computer based tutoring systems, intelligent tutoring systems, and the gamification of instruction. Students evaluate computer tutors and make a tutor.

CS 6350. Hardware & Operating Systems. 3 Semester Hours.

Advanced study of the logical organization and design of digital computer hardware and several operating systems concepts. Topics include advanced digital logic design, memory architectures, microprogramming, instruction set architecture (ISA), assembly language programming, parallel processing, and operating system virtual memory management, process management, parallel programming, and device management. Class is usually offered in the Fall semester.

CS 6361. Computer Network Security. 3 Semester Hours.

Overview of network architecture and protocols. Network specific threats and attack types. Hacking methodologies used to assess and attack a target computer system. Security for wireless networks. Introduction to cryptography. Using security tools and techniques to find and fix vulnerabilities. Network protection systems. Additional fee associated with this course. See fee schedule for details at https://www.stmarytx.edu/admission/financial-aid/tuition/.

CS 6362. Computer Security and Privacy. 3 Semester Hours.

Introduction to security and privacy issues. Cryptographic tools, authentication, access control; database security; malicious software, DoS, intrusion detection, firewalls and intrusion prevision systems; software security, buffer overflow, operating system security; end-to-end system security, trusted computing, multilevel security, cloud security. Additional fee associated with this course. See fee schedule for details at https://www.stmarytx.edu/admission/financial-aid/tuition/.

CS 6363. Cloud Computing Security. 3 Semester Hours.

Overview of cloud computing, cloud services and platforms, Hadoop and MapReduce, cloud application development. Cloud security, architecture, authentication, authorization, access control, data confidentiality, key management; provable data possession for static data, provable data possession for dynamic data; integrity verification for multiple static/dynamic data copies over cloud servers, dynamic data and mutual trust. Additional fee associated with this course. See fee schedule for details at https://www.stmarytx.edu/admission/financial-aid/tuition/.

CS 6364. Digital Forensics and Cyber Crime. 3 Semester Hours.

Overview of digital forensics and cybercrime, digital forensics methods and procedures, legal issues in digital forensics, disk structures, file systems, evidence acquisition and processing, OS registry and artifacts, reporting and testimony, mobile forensics, network forensics. Additional fee associated with this course. See fee schedule for details at https://www.stmarytx.edu/admission/financial-aid/tuition/.

CS 6365. Preparation for Security Certification. 3 Semester Hours.

Security trends and general security concepts, information security and risk management, change management, privilege management, access control, security architecture and design, physical and environment security, telecommunications and network security, cryptography, public key infrastructure, standards and protocols, business continuity and disaster recovery, legal, regulations, compliance, and investigations, application security, operations security, authentication and remote access, wireless security, intrusion detection systems, security baselines, types of attacks and malicious software, e-mail and instant messaging, web components, computer forensics.

CS 6366. Mathematics for Cryptography. 3 Semester Hours.

Basics of linear algebra, groups, rings, modular arithmetic, polynomials, finite fields; elementary number theory, divisibility, prime numbers, discrete logarithms; elliptic curve arithmetic, point representation, point arithmetic.

CS 6367. Cybersecurity Risk Management. 3 Semester Hours.

Risk management fundamentals, risk management frameworks, categorize information and information systems, security controls, implement security controls, assess security controls, preparing the information system for use, monitor security state, practical applications of the NIST and technology risk management framework, physical and human resources security, security auditing, legal and ethical aspects.

CS 6368. Cybersecurity Policy and Law. 3 Semester Hours.

An overview of basic legal concepts emanating from the U.S. Constitution, federal statutes, case law, administrative regulations and treaties as they address domestic cyber law with a brief introduction to emerging international cyber warfare.

CS 6369. Cryptography Principles and Practice. 3 Semester Hours.

Basic concepts of cryptography, symmetric encryption schemes, review of finite fields, number theory, and elliptic curves, advanced cryptographic schemes, public-key cryptography, MAC, hash functions, digital signature, key management and distribution, user authentication, and different applications.

CS 6375. Special Topics. 3 Semester Hours.

Advanced topics in computer science. Topics may include areas such as modeling and simulation, Internet programming and mobile programming. May be repeated for credit with different topic names. Consent of the Graduate Program Director is required for the Research section.

CS 6385. Internship. 3 Semester Hours.

Experiential, practical applications approach to advanced computer science topics, typically through work in a computer company or organization. Consent of the Graduate Program Director is required.

CS 6391. Thesis I. 3 Semester Hours.

Thesis requires research leading to the discovery or creation of new knowledge or enhancement of existing knowledge in the field of interest. The thesis is a complete documentation of the research study, including the theoretical background, description of the problem, the method used to investigate or solve the problem, presentation of results, interpretation of results, and explanation of the significance of the results.

CS 6392. Thesis II. 3 Semester Hours.

Continuation of Thesis I.

CS 6395. Project. 3 Semester Hours.

Capstone experience for the master's program. Students work on their comprehensive project for a master's degree, typically taken the semester before graduation. Deliverables include a written report and an oral presentation about their completed project before a committee of professors and/or industry experts. Permission of instructor and submitted project proposal are required.

Ayad Barsoum, Ph.D.
Associate Professor

Arthur Hanna, Ph.D.
Professor

Carol Luckhardt Redfield, Ph.D.
Professor