Department: Computer Science

CodeNameDescription
COSC14L5Foundations of Computer Science I LabLab component of COSC 1405 Foundations of Computer Science I.
COSC14L8Foundations of Computer Science II LabLab component of COSC 1408 Foundations of Computer Science II.
COSC24L3Object Oriented Analysis andDesign LabLab component of COSC 2403 Object Oriented Analysis and Design.
COSC34L0Web Site Developing & Programming LabLab component of COSC 3410 Web Site Development and Programming.
COSC34L3Software Security LabLab component of COSC 3403 Software Security.
COSC44L1Operating Systems LaboratoryLab component of COSC 4401 Operating Systems.
COSC44L2Software Engineering LabLab component of COSC 4401 Software Engineering.
COSC44L3Mobile Cloud Computing LabLab component of COSC 4403 Mobile Cloud Computing.
COSC44L5Network Security and Cryptography LabLab component of COSC 4415 Network Security and Cryptography.
COSC44L9Big Data Technologies LabLab component of COSC 4409 Big Data Technologies.
COSC1302Introduction to Computer Science and ProgrammingAn introduction to the discipline of computer science. Topics include algorithms, data representation and storage, hardware and software organization, networking, the Internet, computer security, ethical and social issues, and fundamental problem sol...
COSC1405Foundations of Computer Science IComputer programming in a high-level, block structured language. Basic concepts: the role of algorithms in the problem-solving process, basic data types and variables, memory usage, control structure (sequential, selection, repetition, functions and...
COSC1408Foundations of Computer Science IIIntroduction to object-oriented programming. Basic concepts: abstract data types; encapsulation; classes; inheritance, polymorphism, dynamic function binding, strings, stacks, queues, lists, and trees, event handling in modern languages, introduction...
COSC2306Data Structures and Introductions to AlgorithmsDesign and analysis of algorithms with an emphasis on data structures. Basic concepts including: identifying differences among best, average, and worst case behaviors; algorithmic strategies such as brute-force and divide-and-conquer; fundamental c...
COSC2403Object Oriented Analysis and DesignProvides practical skills in the latest object-oriented analysis and design methods using the Unified Modeling Language (UML) and Java programming language. Basic concepts: Use case diagrams, object models, packages and subsystems, classes, object be...
COSC3301Database Management SystemsIntroduction to the design and implementation of database systems. Topics include data modeling, database normalization, SQL database definition/manipulation language, stored procedures, transaction management, database applications, and database sec...
COSC3305Computer Organization and ArchitectureBasic structure of digital computer hardware and hardware-software interface. Computer organization, including simple digital logic building blocks, such as logic gates, flip-flops, registers, logic expressions, and computer arithmetic. Fundamentals...
COSC3306Networks and TelecommunicationDesign and analysis of computer networks. Basic concepts: background and architecture of the Internet; five-layer and seven-layer reference models; TCIP/IP; packet switching; transport protocols; flow control; congestion control; local area networks;...
COSC3310Introduction to Machine LearningThe Introduction to Machine Learning course offers an overview of the fundamental principles, techniques, and applications of machine learning with an emphasis on applying Machine Learning techniques. This course introduces different types of machine...
COSC3312Information AssuranceThis course provides the basic concepts of information assurance. The topics covered include Goals of Cybersecurity, Compliance with Regulations, Threats and Adversaries, Vulnerabilities and Risks, Basic Risk Assessment, Security Life-Cycle, Intrusio...
COSC3395Independent Study in Computer ScienceIndependent Study courses are devised by professors to permit students to explore material not offered in regularly scheduled courses (juniors or seniors only).
COSC3403Software SecurityThis course provides students with the knowledge of the importance of software security to the development of secure systems, the characteristics of secure programs, and the ability to implement programs that are free from vulnerabilities, the method...
COSC3410Website Development and ProgrammingHands-on experience in the design and development of professional Web content. Basic concepts: Web site design considerations (user profiles, user platforms, design concepts) HTML, DHTML and XML fundamentals; Cascading Style Sheets (CSS); JavaScript...
COSC3492Independent Study in Computer ScienceIndependent Study courses are devised by professors to permit students to explore material not offered in regularly scheduled courses (juniors or seniors only).
COSC4190Independent Study in Computer ScienceIndependent Study courses are devised by professors to permit students to explore material not offered in regularly scheduled courses (juniors or seniors only).
COSC4290Independent Study in COSCIndependent Study courses are devised by professors to permit students to explore material not offered in regularly scheduled courses (juniors or seniors only).
COSC4291Independent Study in Computer ScienceIndependent Study courses are devised by professors to permit students to explore material not offered in regularly scheduled courses (juniors or seniors only).
COSC4308Senior Project in Computer ScienceDetailed design, implementation, and testing of a system or component under the guidance of a faculty member. Specific technical requirements will be set up by the individual faculty member teaching/supervising the course. All students must submit a...
COSC4316Ethical Hacking and System DefenseThe course combines an ethical hacking methodology with the hands-on application of security tools to better help students secure systems. Students are introduced to common countermeasures that effectively reduce and/or mitigate attacks. Topics inclu...
COSC4317Digital ForensicsThis course provides students with the skills to apply forensics techniques throughout an invenstigation life cycle with a focus on complying with legal requirements. Topics include Techniques and Processes of Digitial Investigation, modern Forensic...
COSC4351Quantum Information ProcessingThis course lays the foundations for understanding and utilizing quantum computing, as well as writing quantum computing programs. Topics covered include the history of quantum computing; current state of the field; potential future applications; qua...
COSC4352Quantum Computing AlgorithmsThis course focuses on understanding and implementing the major algorithms of quantum computing, including analysis of their use cases, as well as error correction. In this course, students will get hands-on experience coding quantum algorithms. Topi...
COSC4391Independent Study in Computer ScienceIndependent Study courses are devised by professors to permit students to explore material not offered in regularly scheduled courses (juniors or seniors only).
COSC4401Operating SystemsAn introduction to fundamental concepts in operating systems, their design, implementation, and usage. Basic concepts: process management - concurrency and scheduling; main memory management; virtual memory; input/output and device drivers; file syst...
COSC4402Software EngineeringIntroduction to software life cycle models, software requirements engineering, formal specification and validation. Basic concepts: software metrics (product and process metrics); introduction to software standards and documentation; software qualit...
COSC4403Mobile Cloud ComputingIntroduction to the mobile and cloud computing technologies. Topics include mobile device apps development, basic concepts and service models of cloud computing technologies including Infrastructure as a Service (IaaS), Platform as a Service (PaaS),...
COSC4409Big Data TechnologiesThis course explores data mining methodologies and algorithms for big data analytics including introduction of Big Data, Association Rules, Classification, Clustering, and PageRank. The primary tools introduced and used in this course include MongoDB...
COSC4415Network Security and CryptographyThis course equips students with techniques that can be taken to protect a network and communication assets from cyber threats. This course also provides students with the ability to understand Cryptography and how cryptography is used for network se...