Skip to Main Content

Degrees and Requirements

Computer Science Minor

A minor in Computer Science is an opportunity for students to fulfill career or personal interests, and/or to facilitate in depth study in a field of secondary interest.

Minors must be completed within the student's graduation timeline. A minimum GPA of 2.0 must be achieved in the following courses to qualify for this minor.

To complete a minor in computer science, a minimum of 23 credits must be taken in computer science.

17 credits in Required Courses and a minimum of 6 additional 2000+ level computer-science credits.

 

Summary of Requirements

Computer Science Minor: Required Courses: 14 credits

  • CSCI1002
    INTRO TO COMPUTER SCIENCE

    CSCI1002
    INTRO TO COMPUTER SCIENCE

    Credits (Min/Max): 3/3

    This course is an introduction to the field of Computer Science (CS). A scientific foundation of many aspects of CS will be developed upon which more advanced CS courses will build. Technical topics may include: computer design, information processing, algorithm concepts, operating systems, cyber security and networking and the internet. The evaluation of issues such as Artifical Intelligence & Ethics, Internet of Things (IoT), Big Data and Impact of Technology on Social Development Skills may also be included.

    PREREQUISITES:

  • CSCI1010
    PROGRAMMING I

    CSCI1010
    PROGRAMMING I

    Credits (Min/Max): 3/3

    This course introduces the art of algorithm design and problem solving in the context of computer programming. The basic structure and logic of the Java language is presented. Topics covered include data types and operators, control flow, repetition and loop statements, arrays and pointers. Good programming practices will be taught and encouraged.

    PREREQUISITES:

    CSCI1002 or SLSC1005 or SLSC1012 & Concur: CSCI1010L

  • CSCI1010L
    PROGRAMMING I - LAB

    CSCI1010L
    PROGRAMMING I - LAB

    Credits (Min/Max): 1/1

    Lab work for CSCI1010 Programming I.

    PREREQUISITES:

  • CSCI2010
    PROGRAMMING II

    CSCI2010
    PROGRAMMING II

    Credits (Min/Max): 3/3

    This course is a follow-on to Programming I. Topics covered include; data structures, file input and output, and other advanced object-oriented programming concepts found in Java.

    PREREQUISITES:

    CSCI1010

  • CSCI2010L
    PROGRAMMING II - LAB

    CSCI2010L
    PROGRAMMING II - LAB

    Credits (Min/Max): 1/1

    Lab work for CSCI2010 Programming II

    PREREQUISITES:

    CSCI1010 & CSCI1010L & Concur: CSCI2010

  • CSCI2020
    ALGORITHM ANALYSIS

    CSCI2020
    ALGORITHM ANALYSIS

    Credits (Min/Max): 3/3

    This course teaches techniques of programming utilizing data structures such as lists, stacks, and queues and algorithmic approaches such as recursion, searching and sorting. These techniques are learned through programming exercises as well as classroom study.N×

    PREREQUISITES:

    CSCI2010

Computer Science Minor: Required Course: Choose one: 3 credits

  • CSCI2017
    DISCRETE STRUCTURES FOR COMPUTER SCIENCE

    CSCI2017
    DISCRETE STRUCTURES FOR COMPUTER SCIENCE

    Credits (Min/Max): 3/3

    Discrete structures, also known as discrete mathematics, lie at the foundation of computer science. The discrete structures studied in this survey course comprise basic logic and proof techniques; sets, relations, and functions; the basics of counting; discrete probability; and graphs and trees.

    PREREQUISITES:

  • MATH2050
    DISCRETE MATHEMATICS I

    MATH2050
    DISCRETE MATHEMATICS I

    Credits (Min/Max): 3/3

    A basic course dealing with mathematics applicable to computer science. It provides an introduction to mathematical methods and covers such topics as: enumeration, set theory, mathematical logic, proof techniques, number systems, functions and relations, graphs and digraphs, trees, combinatorics, basic algebraic structures, recurrence relations, Boolean algebra, and analysis of algorithms.

    PREREQUISITES:

    MATH1032

Minor Electives: Choose 2 courses: 6 credits

  • CRIM4030
    COMPUTER FORENSICS INVESTIGATIONS

    CRIM4030
    COMPUTER FORENSICS INVESTIGATIONS

    Credits (Min/Max): 3/3

    This course provides a comprehensive examination of the application of computer security techniques to the physical evidence of a crime. Crime scene processing procedures will be utilized in the analysis of physical digital evidence. The course will also include training in report writing and courtroom testimony, to include a moot court exercise.

    PREREQUISITES:

    CRIM3043 & CSCI3042

  • CSCI2025
    SYSTEMS PROGRAMMING

    CSCI2025
    SYSTEMS PROGRAMMING

    Credits (Min/Max): 3/3

    This course will introduce the students to the important systems language,C,and to several topics related to the hardware and software environment. These are issues related to system interfaces and software synchronization provided by operating systems, the linkage of operating system services to application software, and the fundamental mechanisms for computer communications.

    PREREQUISITES:

    CSCI2010 & Concur: CSCI2025L

  • CSCI2035
    COMPUTER ORGANIZATION AND DESIGN

    CSCI2035
    COMPUTER ORGANIZATION AND DESIGN

    Credits (Min/Max): 3/3

    This course will introduce students to the function and design of digital computers. Topics covered include: Value representation, ALU structure and operation, simple digital electronics, basic assembly language programming, I/O and bus architectures, and complex processor architectures including virtual memory.

    PREREQUISITES:

    CSCI2025

  • CSCI2055
    DATABASE-SYSTEMS THEORY

    CSCI2055
    DATABASE-SYSTEMS THEORY

    Credits (Min/Max): 3/3

    This course is designed to present the essential concepts, principles, techniques, and mechanisms for the design, analysis, use, and implementation of computerized database systems. Key information management concepts and techniques are examined: database modeling and representation; information interfaces - access, query, and manipulation, implementation structures, and issues of distribution. The database and information management system technology examined in this course represents the state-of-the-art, including traditional approaches as well as recent research developments. The course should allow the student to understand, use, and build practical database systems. The course is intended to provide a basic understanding of the issues and problems involved in database systems, a knowledge of current practical techniques for satisfying the needs of such a system, and an indication of the current research approaches that are likely to provide a basis for tomorrow's solutions.

    PREREQUISITES:

    CSCI1010

  • CSCI3040
    OPERATING SYSTEMS

    CSCI3040
    OPERATING SYSTEMS

    Credits (Min/Max): 3/3

    This course is an in-depth study of modern operating systems. Students will learn about the services provided by an operating system, how to use these services and how the services are implemented. Topics covered include: Initialization (boot), Processes, Controlling shared resources, Memory, Bulk storage systems, and Network Communications (TCP/IP) as they relate to the computer operating system.

    PREREQUISITES:

    CSCI2035

  • CSCI3042
    COMPUTER SECURITY

    CSCI3042
    COMPUTER SECURITY

    Credits (Min/Max): 3/3

    This course covers fundamental issues and first principles of security and information assurance. The course will look at the security policies, models and mechanisms related to confidentiality, integrity, authentication, identification, and availability issues related to information and information systems. Other topics covered include basics of cryptography (e.g., digital signatures) and network security (e.g., intrusion detection and prevention), risk management, security assurance and secure design principles, as well as e-commerce security. Issues such as organizational security policy, legal and ethical issues in security, standards and methodologies for security evaluation and certification will also be covered.

    PREREQUISITES:

    CSCI4045 & CSCI1010 or CSCI1010 & ISTC2030

  • CSCI4040
    PRINCIPLES OF PROGRAMMING LANGUAGES

    CSCI4040
    PRINCIPLES OF PROGRAMMING LANGUAGES

    Credits (Min/Max): 3/3

    This course provides a general introduction to programming language features and design, with a focus on techniques that will help students to quickly and efficiently learn new programming languages in the future. Current trends and issues in programming languages will be discussed.

    PREREQUISITES:

    CSCI2025

  • CSCI4042
    ADVANCED COMPUTER SECURITY

    CSCI4042
    ADVANCED COMPUTER SECURITY

    Credits (Min/Max): 3/3

    This course builds upon the foundational principles students have learned in the introductory Computer Security course. It examines the underlying mechanics of the rapidly expanding and essential role that computer security plays in the digital age. Given the rapidly changing nature of this highly technical field, course topics will focus on current issues and applications. In addition, this course includes practical writing assignments and hands-on advanced technical skill building labs.

    PREREQUISITES:

    CSCI3042

  • CSCI4045
    COMPUTER NETWORKS AND DISTRIBUTED APPLICATIONS

    CSCI4045
    COMPUTER NETWORKS AND DISTRIBUTED APPLICATIONS

    Credits (Min/Max): 3/3

    This course introduces the fundamentals of computer networking for distributed applications. Topics covered include network architecture, protocols, standards, security and socket programming. The course provides students with the ability to create programs making appropriate use of networked architectures with a specific focus on the Internet.

    PREREQUISITES:

    CSCI2025

  • CSCI4XXX

    CSCI4XXX

    Credits (Min/Max): /

    PREREQUISITES:

  • MATH2051
    DISCRETE MATHEMATICS II

    MATH2051
    DISCRETE MATHEMATICS II

    Credits (Min/Max): 3/3

    A continuation of MATH1014. Topics to be covered will include some or all of the following: integers and integers Mod n; counting techniques, combinatorics, and discrete probability; graphs, trees, and relations; Boolean algebras; and models of computation such as grammars, finite-state machines, and Turing machines.

    PREREQUISITES:

    MATH2050