Computer Science

School

School of Science, Engineering and Technology

School Dean

Winston F. Erevelles, 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.

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.

Our digital world is subject to various types of vulnerabilities including but not limited to: malicious software/hardware, denial of service attacks, unauthorized access, network outages, data corruption, and sensitive data being compromised by hackers. With the growing trend of digital attacks, securing our digital assets has become an increasing national priority.

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 up to 12 credit hours of 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 3.0 out of a possible 4.0 in a bachelor's degree
  • Minimum Graduate Record Exam quantitative score of 148 or better and analytical writing score of 2.5 or better, or a minimum GMAT score of 334
  • For international students, minimum TOEFL score of at least 80 on the Internet-based test or 6.0 on IELTS. 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.
  • Minimum Graduate Record Exam quantitative score of 148 or better and and analytical writing score of 2.5 or better.
  • For international students, minimum TOEFL score of at least 80 on the Internet-based test or 6.0 on IELTS. 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, Software Engineering, or a closely related discipline. Applicants who earned a bachelor’s degree in a closely related discipline, such as Electrical Engineering, Mathematics, or Physics may 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.
  • Have a minimum GRE quantitative score of 148 and analytical writing score of 2.5 or better.
  • 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.
  • International students must submit the TOEFL scores and show a minimum of 213 on the computer-based test, 550 on the paper-based test, or 80 on the Internet-based test. As an alternative, international students may take the IELTS test and show a minimum score of 6.0.
  • 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.

Prerequisites

Applicants whose Bachelor of Science degree is not in Computer Science, Computer Engineering or Software Engineering are required to demonstrate proficiency or take the following prerequisite courses: Object Oriented Programming, Data Structure and Algorithms, Discrete Math, and Calculus I and II.

Some other courses are considered a plus to excel in this program. For example, Probability Theory, Operating Systems, and Computer Architecture.

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 standards may be admitted on a conditional basis.

CS 6000X. Maintaining Matriculation. 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. 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, and B+ trees.

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 Network and Data Communications. 3 Semester Hours.

Advanced study of data communications, TCP/IP protocol architecture, media, transmission, encoding, error detection and handling, link control, flow control, multiplexing. Local area networks. WAN technology and protocols, circuit and packet switching, IP, routing; wireless networks; different applications.

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.

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.

CS 6361. Computer Network Security. 3 Semester Hours.

Overview of network architecture and protocols. Network specific threats and attack types. Lower layer security, physical layer security, network layer security, transport layer security; application layer security, e-mail security, remote access security; common network security devices; security for wireless network.

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.

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.

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

Overview of computer forensics and cybercrime, traditional computer crime, contemporary computer crime, identity theft and identity fraud, terrorism and organized crime, avenues for prosecution and government efforts, applying the first amendment to computer-related crime, the fourth amendment and other legal issues, computer forensics, searching and seizing computer related evidence, processing of evidence and report preparation.

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, managing risks, managing compliance, developing a risk management plan, security management and risk assessment; IT security controls, plans, and procedures, physical and infrastructure security, 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.

Students work on their comprehensive or a related project for the CS or CIS master's degree, typically taken the semester before graduation for full-time students. Permission of instructor required and submitted project proposal.

Ayad Barsoum, Ph.D.
Assistant Professor

Pamela Fink, Ph.D.
Associate Professor

Arthur Hanna, Ph.D.
Professor

Carol Redfield, Ph.D.
Professor