Computer Science (CSCI)

CSCI3100 | Computer Architecture | Lec/Lab (3 Credits)

Introduction to computer architecture, processors, instruction sets, and assembly language programming.

CSCI3110 | Discrete Mathematics | Lecture (3 Credits)

Examine the logic-related mathematical background necessary for upcoming courses. Topics include: logic, sets, functions (as defined in the Mathematics domain), sequences, algorithmic complexity, number theory, matrices, proof of complexity, mathematical induction, recursion, counting, probability, and graph and tree fundamentals.

CSCI3120 | Systems Analysis Practicum | Practicum (3 Credits)

Examine the various approaches for software development from traditional systems analysis to contemporary agile methods, Unified Modeling Language (UML), and object-oriented design. Develop models and prototypes to practice the processes and techniques needed to design and build quality software systems.

CSCI3200 | Operating Systems | Lec/Lab (3 Credits)

Analyze the purpose of operating systems. Topics include: elements of operating systems, memory and process management, interactions among major components of computer systems, and an examination of the effects of computer architecture on operating systems.

Prerequisite(s): CSCI3100

CSCI3210 | Algorithms/Data Structures | Lec/Lab (3 Credits)

Investigate the creation of algorithms, the study of the running time or complexity of the proposed solution, and interesting related problems with algorithms, including some which cannot be solved by machines. Review well-known algorithms, including those in the areas of searching, sorting, scheduling, tree and graph traversal to understand algorithms and the data structures used to solve them efficiently, like linked lists, stacks, queues, and recursion structures.

CSCI3220 | Database Technologies | Lecture (3 Credits)

Analyze database technologies and the resources (hardware and software) that are necessary to implement the various database systems needed to run an organization at the management level.

CSCI4100 | Security | Lec/Lab (3 Credits)

Explore fundamental and emerging concepts of computer security. Topics include: maintaining information confidentiality, protecting information integrity, assuring information availability, physical, technical, application, and Internet security, social engineering and associated attacks.

CSCI4110 | Formal Languages & Automata | Lec/Lab (3 Credits)

Determine how proper programming languages and systems are created. Examine formal logic and models of computation including finite state automata, pushdown automata, and Turing machines. Investigate problems for which a formal solution is not possible, problems which cannot be solved by finite, or real, machines, and problems for which complete solutions are not possible but 'good enough', or heuristic solutions.

Prerequisite(s): CSCI3200

CSCI4120 | Database Technologies | Lecture (3 Credits)

Analyze database technologies and the resources (hardware and software) that are necessary to implement the various database systems needed to run an organization at the management level.

CSCI4200 | Capstone | Capstone (3 Credits)

An industry (field)-specific capstone project of student's choice. Present a comprehensive project within a field of study that draws on the relevant components of previous course work.

Prerequisite(s): CSCI3100, CSCI3110, CSCI3120, CSCI3200, CSCI3210, CSCI3220, CSCI4100, And CSCI4110

CSCI4210 | Software Engineering | Lec/Lab (2 Credits)

Introduction to software engineering as an area of computer science. Focused study of requirements and requirements engineering; overview of various modeling techniques applicable to requirements and specifications, including UML and formal modeling.

CSCI4220 | Software Engineering | Lec/Lab (2 Credits)

Introduction to software engineering as an area of computer science. Focused study of requirements and requirements engineering; overview of various modeling techniques applicable to requirements and specifications, including UML and formal modeling.

CSCI4230 | Network Architecture | Lec/Lab (2 Credits)

Examine concepts and fundamental principles in modern network design and implementation that span LAN/WAN using TCP/IP and Ethernet. Review topics related to layered models such as the OSI and TCP/IP logic models. Particular focus is on the areas of network design and optimization. Specification of a network's physical and logical components and their function related to facilitating business processes, as well as network testing and documentation for the purpose of analyzing current architectures for improved performance.