Courses taught
CSCI-135 Computer Science I - This course provides an introduction to the discipline of computer programming. Closed laboratory to reinforce lecture topics and introduce new topics. Course is designed to expose students to basic programming concepts and to the use of the C++ language. This course is designed to enhance the student’s ability to design, develop and test/debug programs. Each student will increase his or her skill in writing correct and maintainable programs. Emphasis will be placed on problem analysis and on the subsequent development of algorithms. Several standard data types will be discussed and the student will gain an understanding of the issues relating to the use, design and implementation of each type in C++. A major focus of the lectures will be to provide an overview of real-world problem solving concepts and top-down software design.
Semesters taught: Fall 2020, Spring 2021, Fall 2021, Spring 2022, Fall 2022, Fall 2023, Fall 2024, Spring 2025, Fall 2025, Spring 2026
CSCI-136 Computer Science II - Course exposes students to the software development life cycle with a focus on the concepts and use of the object-oriented paradigm in problem analysis, solution design, software development and implementation. This course is designed to enhance the student’s ability to engineer software that is efficient, maintainable and cost efficient over its entire life cycle. Data abstraction is discussed in depth and students gain experience in the use of classes, object and member functions. Students gain an understanding of the development of reusable abstract data types. Software reuse is emphasized and object-oriented concepts are used throughout the course. O-notation and the complexity of algorithms are discussed at relevant points in the course.
Semesters taught: Fall 2022, Fall 2023, Fall 2025
CSCI-342 Robotics Autonomous Navigation - The course focuses on autonomous navigation algorithms for mobile robots. Students are introduced to the foundations of AI and programming by implementing algorithms for autonomous omni-drive robots.Students in the course will complete projects throughout the semester which provide exposure to foundational concepts in autonomous decision making. Students complete projects to program the robot to follow a wall and navigate to a given goal position and angle while avoiding obstacles.
Semesters taught: Fall 2024
CSCI-354 Computer Science III - The course continues the study of data structures and algorithms, focusing on algorithmic design and problem analysis and the relationships between data representation, algorithm design, and program efficiency. Topics include advanced data structures, key algorithm design techniques, analysis of the time and space requirements of algorithms, and the subsequent development of solutions of systems. Concrete examples will be drawn from a variety of domains, such as algorithms for trees and graphs, indexing and search, and real-world problems.
Semesters taught: Spring 2023, Spring 2024
CSCI-422 Game Engine Programming - The course focuses on game programming, and will receive instruction on the Unity game engine and its components such as input systems, movement and collision systems, physics, sound, and game structures. Students in the course will learn Unity and become competent using game pipeline tools. Practice the application of game design concepts to develop entertaining and intuitive interactive experiences designed for gameplay satisfaction.
Semesters taught: Spring 2025
CSCI - 454/654 Intro to Cybersecurity II(undergraduate)/Computer Security II(graduate)- These courses present security policies, models, and mechanisms for security, integrity,and availability. Topics include mandatory and discretionary controls; data models, concepts, and mechanisms for database security; basic cryptography and its applications; security in computer networks and distributed systems; control and prevention of viruses and other rogue programs; cyber-attack and defense; steganography; software security; software reverse engineering; digital rights management; secure software development; cyberwarfare; cryptographic techniques. Graduate students will complete an independent research project with greater requirements for a written and oral presentation than students at the undergraduate level.
Semesters taught: Spring 2022, Spring 2024