Courses Taught

CSCI 1300 - Computer Science 1: Starting Computing

Teaches techniques for writing computer programs in higher level programming languages to solve problems of interest in a range of application domains. Appropriate for students with little to no experience in computing or programming.

Taught in Fall 2019, Spring 2020, Spring 2021, Summer 2023

CSCI 2270 - Computer Science 2: Data Structures

Studies data abstractions (e.g., stacks, queues, lists, trees, graphs) and their representation techniques (e.g., linking, arrays). Introduces concepts used in algorithm design and analysis including criteria for selecting data structures to fit their applications.

Taught in Spring 2020, Summer 2020, Fall 2020, Summer 2021, Fall 2021, Spring 2022, Summer 2022, Fall 2022, Spring 2023, Summer 2023, Fall 2023, Spring 2024

CSCI 3287 - Design and Analysis of Database Systems

Introduces the fundamental concepts of database requirements analysis, database design, and database implementation with emphasis on the relational model and the SQL programming language. Introduces the concepts of Big Data and NoSQL systems.

Taught in Summer 2024

CSCI 3308 - Software Development Methods and Tools

Covers tools and techniques for successful software development with a strong focus on best practices used in industry. ÀÖ²¥´«Ã½ work in small teams to complete a semester-long application development project. ÀÖ²¥´«Ã½ learn front-end design and construction using HTML & CSS, back-end database design and construction, and full-stack integration. ÀÖ²¥´«Ã½ gain exposure to agile methodologies, web services, distributed version control, requirements definition, automated integration testing, and cloud-based application deployment.

Taught in Fall 2020, Spring 2021, Summer 2021, Spring 2022

CSCI 5817Ìý- Database Systems

This course provides an advanced treatment of database management system concepts. The course is primarily focused on advanced concepts associated with design, implementation, and operations. The first part of the discussion of these topics is framed with the relational model, advanced SQL queries, and database operations such as indexing, query processing, transactions, and concurrency control. The second part of the course introduces students to Big Data, where they will learn about Apache Hadoop and Apache Spark. Finally, students are providedÌýan introduction to design elements associated with contemporary database design models including NoSQL key-value stores, graph databases, document stores, and distributed databases.

Taught in Fall 2021, Fall 2022, Fall 2023