Bachelor's degree programs are currently available through the College of Liberal Arts and Sciences and the Herbert Wertheim College of Engineering. A minor in computer and information science, master's degree programs and a Ph.D. program also are available.

There are strict limitations on the use of CGS and survey courses in the programs offered by the department.

College of Engineering degree program in computer engineering: Refer to the Herbert Wertheim College of Engineering section of the catalog for degree requirements; this program is offered by the CISE department.

The Herbert Wertheim College of Engineering offers two degrees in computer engineering: the CEN degree (computer engineering: software option) is offered by the CISE department and the CEE degree (computer engineering: hardware option) is offered by the ECE department.
More Info

The college also offers a computer science degree program through the CISE department.
More Info

College of Liberal Arts and Sciences degree program in computer science: refer to the College of Liberal Arts and Sciences section of the catalog for degree requirements.

Courses

CAP 3020 Theory and Practice of Multimedia Production 3 Credits

Combines the traditional media production pipeline and software engineering processes to synthesize an approach geared for the production of works incorporating both artistic and computational elements.

Prereq: CAP 3027.

CAP 3027 Introduction to Digital Arts and Sciences 3 Credits

Synergy between art and computing through a programming-oriented exploration of fundamental concepts in multimedia.

Prereq: COP 3504 or COP 3503.

CAP 3032 Interactive Modeling and Animation 1 3 Credits

Introduces programming and data structures for interactive two-dimensional multimedia applications. Representing form and transforms in two dimensions, capturing user actions and driving application behavior interactively. Graphical interfaces, image processing, automata and basic artificial intelligence.

Prereq: MAC 1147 or equivalent.

CAP 3034 Introduction to Computer-Aided Animation 3 Credits

Introduces topics related to computer-aided animation. Rigging for forward and inverse kinematics. Skin weighting. Morph targets. Expression-driven animation, rigid-body and particle simulation.

Prereq: MAC 1147 or equivalent.

CAP 3220 Introduction to Computer-Aided Modeling 3 Credits

Introduces topics related to computer-aided modeling. Polygonal mesh, NURBS and subdivision surface meshes. Materials and shading networks. Lighting, shadows and rendering.

Prereq: MAC 1147 or equivalent.

CAP 4053 Artificial Intelligence for Computer Games 3 Credits

Examines the use of A.I. in computer games. Topics include general A.I. knowledge, path finding, movement, tactics and planning, strategy, state machines, learning, dialogue, and emotions.

Prereq: COP 3530.

CAP 4621 Artificial Intelligence and Heuristics 3 Credits

Introduces artificial intelligence concepts. Heuristic search, clause form logic, knowledge representation, reasoning and inference, overview of computer vision, planning, natural language, Lisp and Prolog. (M)

Prereq: COP 3530.

MR

CAP 4680 Knowledge-Based System: Theory and Practice 3 Credits

Concepts, theory and various applications for knowledge-based (expert) systems, reasoning schemes, knowledge representation, knowledge-based system tools, building knowledge bases, knowledge acquisition, reasoning under certainty and inexact reasoning.

Prereq: COP 3530.

CAP 4730 Computational Structures in Computer Graphics 3 Credits

Studies the major topics in computer graphics: display and output technology, two and three dimensional manipulations; space curves and surfaces, hidden surface removal and shading models.

Prereq: COP 3530.

CAP 4770 Introduction to Data Science 3 Credits

Introduces the basics of data science including programming for data analytics, file management, relational databases, classification, clustering, and regression; lays the foundation for big data applications ranging from social networks to medical and business informatics.

Prereq: COP 3530.

CAP 4773 Projects Data Science 3 Credits

CDA 3101 Introduction to Computer Organization 3 Credits

Organization of computing systems. Logical basis of computer structure. Machine representation of instructions and data, flow of control, and basic machine instructions. Assembly language programming. (M)

Prereq: COP 3504 or COP 3503; and MAC 2233, MAC 2311 or MAC 3472.

MR

CDA 4102 Computer Architecture 3 Credits

Introduces computer architecture and system organization including virtual memory supports cache, pipeline, vector processing, multiprocessor and RISC architecture.

Prereq: CDA 3101 and COP 3530.

CDA 4630 Embedded Systems 3 Credits

CEN 3031 Introduction to Software Engineering 3 Credits

Topics include software planning, specifications, coding, testing and maintenance. Gain experience in the team approach to large system development. (M)

Prereq: COP 3530.

MR

CEN 3907C Computer Engineering Design 1 3 Credits

Reinforce basic computer engineering skills; design, produce, and report on a computer engineering project, meeting defined specifications and using a structured design methodology and project management.

Prereq: CEN 3031 and EEL 3744C with minimum grades of C.

CEN 3908C Computer Engineering Design 2 3 Credits

Selected capstone design projects involving engineering applications in the various areas of computer engineering. Must be taken prior to the semester of graduation .

Prereq: CEN 3907C with minimum grade of C and senior standing.

CEN 3913 Computer and Information Science and Engineering Design 1 3 Credits

Preparatory skills are developed for CISE Design 2 for Computer Engineering students. Teams design, produce and report on a software prototype, meeting defined specifications and using a structured design methodology and project management.

Prereq: CEN 3031.

CEN 4072 Software Testing and Verification 3 Credits

Concepts, principles and techniques of software testing and verification. Strengths and limitations of black-box and white-box testing methods; techniques for proving the correctness of programs.

Prereq: CEN 3031.

CEN 4721 Human-Computer Interaction 3 Credits

Studies the major topics in the study, planning and design of the interaction between people and computers. Topics include interface design (principles, theories and guidelines), virtual environments, interactive devices and collaboration.

Prereq: COP 3530.

CEN 4722 User Experience Design 3 Credits

Introduces methods and tools used in User Experience Design (UXD): the early stages of software design focused on meeting user needs. Key concepts include user research, contextual design, design thinking, ideation, iterative design, prototyping, and design documentation. Projects utilize software tools used in the industry.

Prereq: COP 3530.

CEN 4725 Natural User Interaction 3 Credits

Introduces the design, development and evaluation of Natural User Interaction (NUI) technologies (e.g., non-keyboard and mouse technologies such as touchscreen interaction, gesture interaction, speech interaction, etc.). Discussion of the hardware-to-software NUI pipeline and key considerations when developing NUI software, including existing platforms, toolkits and APIs used to create NUI software.

Prereq: COP 3530 with minimum grade of C.

CEN 4914 Computer and Information Science and Engineering Design 2 3 Credits

Involves completing a significant CEN-related project. Coordinate with the instructor and a project advisor, prepare a detailed technical report and deliver an oral presentation.

Prereq: CEN 3913.

CGS 2032 Math, Art and Computing 3 Credits

Introduces interdisciplinary computer science topics. Logic, discrete structures, algorithms and automa. Exploration of topics relating mathematics and computing to art, music and nature. (M)

Prereq: MAC 1147.

General Education - Mathematics
MR

CGS 3063 Computers and Modern Society 3 Credits

Impact of computers on society. Discussion includes specific cases from many areas, but does not include problem solution. Does not teach how to use the computer but gives an understanding of the implications of computers. (S) (WR)

General Education - Social Science
WR6

CGS 3065 Legal and Social Issues in Computing 3 Credits

Explores the history, the myth, the ethics, the law and the risks of computer-based technology in modern society. Emphasizes critical analysis of hypotheticals and case studies. Published material is supplemented with online references.

Prereq: previous experience in Unix environment.

CIS 2354 Introduction to Cybersecurity 3 Credits

Introduces many issues in cybersecurity including ubiquity of processors and communications in modern society, vulnerabilities of computers, networks, data, and embedded systems; privacy, risk management, social engineering, various attacks on computers and networked systems, attacks on user authentication systems. Expect weekly discussion of current topics.

CIS 4204 Penetration Testing: Ethical Hacking 3 Credits

Introduces principles and techniques associated with the cybersecurity practice known as penetration testing or ethical hacking. Covers planning, reconnaissance, scanning, exploitation, post-exploitation, and result reporting. Discover how system vulnerabilities can be exploited and learn to avoid such problems.

Prereq: COP 3530.

CIS 4301 Information and Database Systems 1 3 Credits

First part of a two-course sequence that studies the essential concepts, principles and techniques of modern database systems. Topics include modeling and querying of data using conceptual data models as well as the development of a database application. (M)

Prereq: COP 3504, or COP 3503 and COT 3100.

MR

CIS 4360 Computer and Information Security 3 Credits

Covers systematic threat and risk assessment; programmed threats and controls in hardware, software, and human procedures; security policies, models, and mechanisms; theoretical limitations and practical implementations; certification and accreditation standards; and case study reviews. Includes projects.

Prereq: COP 4600 or equivalent.

CIS 4362 Introduction to Cryptology 3 Credits

Introduces classical and modern cryptography and cryptanalysis, including symmetric and asymmetric (public key) ciphers. Covers cryptographic hash functions, block and stream ciphers, as well as differential and linear cryptanalysis. Reviews applications of cryptography, cryptographic standards and protocols, and analyzes case studies of failed implementations.

Prereq: COT 3100 or the equivalent.

CIS 4905 Individual Study in CISE 1-4 Credits

Problems in different areas of computer science.

CIS 4912C Integrated Product and Process Design 1 3 Credits

First part of a two-course sequence where teams of engineering and business students partner with industry sponsors to design and build authentic products and processes. Working closely with an industry liaison engineer and a faculty coach, students gain practical experience in teamwork and communication, problem solving and engineering design, and develop leadership, management and people skills. Weekly workshop activities adapt lecture topics to individual projects. Learn firsthand how to develop products and processes that meet customer requirements on time and within budget.

Prereq: CDA 3101, COP 3530, COT 3100 and instructor permission.

CIS 4913C Integrated Product and Process Design 2 3 Credits

Second part of a sequence where teams of engineering and business students partner with industry sponsors to design and build authentic products and processes.

Prereq: CIS 4912C.

CIS 4914 Senior Project 3 Credits

Involves completing a significant CISE-related project. Coordinate with the instructor and a project advisor, prepare a detailed technical report and deliver an oral presentation. (M)

Prereq: senior CISE standing and approved project proposal.

MR

CIS 4930 Special Topics in CISE 1-4 Credits

Variable content provides an opportunity for in-depth study of topics not offered elsewhere and of topics of current significance.

Prereq: departmental approval.

CIS 4940 Practical Work 1 Credit

One term practical software engineering work under industrial supervision as set forth in the Herbert Wertheim College of Engineering regulations. (S-U)

CIS 4949 Co-Op Work in CISE 1 Credit

Practical engineering work under industrial supervision, as set forth in the Herbert Wertheim College of Engineering regulations. (S-U)

CIS 4956 Overseas Studies 1 1-15 Credits

Provides a mechanism by which coursework taken as part of an approved study abroad program can be recorded on the UF transcript and counted toward graduation.

Prereq: undergraduate advisor permission.

CNT 4007C Computer Network Fundamentals 4 Credits

Fundamental concepts, principles and standards of computer networks. Topics are introduced in bottom-up approach, starting from physical layer in OSI system architecture with a stronger focus on data link, mac, network and transport layers. (M)

Prereq: COP 4600.

MR

CNT 4409 Network and System Security 3 Credits

Examines networked threats and vulnerabilities; trust, identification, authentication, and authorization in networked and distributed systems; secure network protocols and standards; certification of network products; firewall configurations, intrusion detection, and anomaly detection; security flaws in network protocols and distributed applications. Includes projects.

Prereq: CNT 4007C and COP 4600 or equivalent.

COP 2271 Computer Programming for Engineers 2 Credits

Computer programming and the use of computers to solve engineering and mathematical problems. Emphasizes applying problem solving skills; directed toward technical careers in fields employing a reasonably high degree of mathematics. The programming language used depends on the demands of the departments in the college. Several languages may be taught each semester, no more than one per section. Those required to learn a specific language must enroll in the correct section. (M)

Prereq: MAC 2312 with minimum grade of C.

MR

COP 2800 Computer Programming Using JAVA 3 Credits

In-depth treatment of computer programming using JAVA. Problems related to a variety of disciplines are solved. Introduces the basic concepts of software and hardware; develop a variety of stand-alone applications and applets. For non-CISE majors only.

Prereq: MAC 1147 or the equivalent.

COP 3229 Computer Programming Using C++ 3 Credits

In-depth treatment of the C++ programming language. Introduces Windows programming using Visual C++.

Prereq: COP 3504 or COP 3503.

COP 3275 Computer Programming Using C 3 Credits

Solve problems related to a variety of disciplines; introduces the basic concepts of software and hardware. (M)

Prereq: MAC 1147 or the equivalent.

MR

COP 3502 Programming Fundamentals 1 3 Credits

First course of a two-semester introductory sequence for those planning further study in computer science, digital arts and sciences or computer engineering. Concepts of computer science and the process of computer programming, including object-oriented programming, procedural and data abstraction and program modularity.

Coreq: MAC 2311.

COP 3503 Programming Fundamentals 2 3 Credits

Second course of a two-semester introductory sequence for those planning further study in computer science, digital arts and sciences or computer engineering. Concepts of computer science and the process of computer programming, including object-oriented programming, procedural and data abstraction and program modularity.

Prereq: COP 3502 with a minimum grade of C or an AP exam in computer science with a minimum grade of 4; and MAC 2311 with a minimum grade of C.

COP 3504 Advanced Programming Fundamentals for CIS Majors 3 Credits

Fast-paced introduction to computer science for those with prior programming experience. Explores major concepts of computer science and the process of computer programming, including object-oriented programming, procedural and data abstraction and program modularity. (M)

Prereq: MAC 2311 or MAC 3472, programming experience.

MR

COP 3530 Data Structures and Algorithm 4 Credits

Algorithm development using pseudo languages, basic program structures, program design techniques, storage and manipulation of basic data structures like arrays, stacks, queues, sorting and searching and string processing. Linked linear lists. Trees and multilinked structures. (M)

Prereq: COP 3504 or COP 3503 with minimum grade of C, COT 3100, and MAC 2234, MAC 2312, MAC 2512, or MAC 3473.

MR

COP 4020 Programming Language Concepts 3 Credits

Introduces programming language principles, including language constructs, design goals, run-time structures, implementation techniques and exposure to a wide variety of programming paradigms.

Prereq: COP 3530.

COP 4331 Object-oriented Programming 3 Credits

Fundamental conceptual models for programming languages illustrated with specific programming languages and application problems. Specific topics include class and object models, inheritance among classes, objects and static and dynamic systems and implementations.

Prereq: COP 3530.

COP 4600 Operating Systems 3 Credits

Design and implementation of various components of a modern operating system, including I/O programming, interrupt handling, process and resource management, computer networks and distributed systems. (M)

Prereq: CDA 3101 and COP 3530; knowledge of C or C++ recommended.

MR

COP 4620 Translators and Translator Writing Systems 3 Credits

Translation of languages, scanning and parsing techniques. Translator writing systems. The implementation of a compiler. (M)

Prereq: COP 3530.

MR

COP 4720 Information and Database Systems 2 3 Credits

Part two of a two-course sequence. Provides a basic understanding of the internals of a modern database system. Topics include data storage, indexing, query processing and advanced concepts such as database tuning, alternate data models and emerging applications. (M)

Prereq: CIS 4301 and COP 3530.

MR

COT 3100 Applications of Discrete Structures 3 Credits

Covers the mathematics of discrete events; i.e., events that involve distinct elements, finite structures of distinct elements or finite sampled versions of continuous phenomena (such as movement). (M)

Prereq: MAC 2233 or MAC 2311 or MAC 3472; Coreq: COP 3504 or COP 3503.

General Education - Mathematics
MR

COT 4501 Numerical Analysis: a Computational Approach 3 Credits

Numerical integration, nonlinear equations, linear and nonlinear systems of equations, differential equations and interpolation.

Prereq: COP 3504 or COP 3503 and MAS 3114.

EGN 4912 Engineering Directed Independent Research 0-3 Credits

Provides firsthand, supervised research with a faculty advisor or postdoctoral or graduate student mentor. Projects may involve inquiry, design, investigation, scholarship, discovery or application. (S-U)

EGS 1005 Prep for Success 1-4 Credits

Freshman success course that includes academic preparation in calculus, chemistry, student success and technical communications. (S-U)

Prereq: EG student.