Teaching

Advanced Algorithms

Graduate course, University of West Florida, Department of Computer Science, 2022

A comprehensive overview of the most commonly used approaches for approximate solution of NP-Hard problems, including linear programming, dynamic programming, and greedy algorithms. A survey of common algorithms including cache-aware algorithms, randomized algorithms, network flow algorithms, and online algorithms. This course takes an ‘experimental algorithms’ approach to educating students on augmenting theoretical results with empirical methods for the design of algorithms that are effective in practice.

Data Structures and Algorithms I

Undergraduate course, University of West Florida, Department of Computer Science, 2022

A first course in Data Structures and Algorithms. Topics will include traditional data structures with a major focus on design and analysis of algorithms and will include projects that stress mathematics and science.

Software Engineering Foundations - Java Programming

Graduate course, University of West Florida, Department of Computer Science, 2021

A course in the Accelerated Software Engineering Foundations Series in which students will gain a comprehensive understanding of principles/concepts of Java programming and how to apply those principles/concepts in conjunction with principles of software engineering to design and develop object- oriented software systems. Students taking this course should have an understanding of programming language fundamentals including variables, constants, selection, iteration, arrays, and functions or methods.

Computer Science Project

Graduate course, University of West Florida, Department of Computer Science, 2021

Capstone course for Masters students who do not elect the thesis option. Students will define and carry out a project that shows mastery of some topic in computing and produces some concrete product such as a report or a computer program.

Intermediate Computer Programming - Java

Undergraduate course, University of West Florida, Department of Computer Science, 2020

An intermediate course in object-oriented programming. Topics include object-oriented modeling, algorithms, inheritance, polymorphism, input/output. Emphasis will be on issues of object-oriented design and good programming practices. Students entering this course are expected to have a solid knowledge of programming in the object-oriented paradigm. The focus will be on developing skills in program design as a necessary prerequisite to effective implementation.

Capstone Systems Project

Undergraduate course, University of West Florida, Department of Computer Science, 2020

Develop a software system for a real-world client while working in small teams. Develop and deliver relevant artifacts such as a project proposal, design, test plan, code, user’s manual, and project log with metrics as the software system evolves throughout the course. A final presentation and evaluation of the project experience will be prepared.

Advanced Database Systems

Graduate course, University of West Florida, Department of Computer Science, 2018

Advanced topics in database management systems will be covered, for example, further dependencies and higher normal forms, transaction processing, concurrency control, backup and recovery, indexing, replication, managing large databases, and contemporary issues and topics in databases.