Jessica Ancillotti
Lecturer, Computer Science
Department of Computer Science
Golisano College of Computing and Information Sciences
Office Hours
Monday/Tuesday/Wednesday: 11:00 AM - 12:00 PM
or by appointment
Office Location
Jessica Ancillotti
Lecturer, Computer Science
Department of Computer Science
Golisano College of Computing and Information Sciences
Currently Teaching
CSCI-141
Computer Science I
4 Credits
This course serves as an introduction to computational thinking using a problem-centered approach. Specific topics covered include: expression of algorithms in pseudo code and a programming language; functional and imperative programming techniques; control structures; problem solving using recursion; basic searching and sorting; elementary data structures such as lists, trees, and graphs; and correctness, testing and debugging. Assignments (both in class and for homework) requiring a pseudo code solution and an implementation are an integral part of the course. An end-of-term project is also required.
CSCI-142
Computer Science II
4 Credits
This course delves further into problem solving by continuing the discussion of data structure use and design, but now from an object-oriented perspective. Key topics include more information on tree and graph structures, nested data structures, objects, classes, inheritance, interfaces, object-oriented collection class libraries for abstract data types (e.g. stacks, queues, maps, and trees), and static vs. dynamic data types. Concepts of object-oriented design are a large part of the course. Software qualities related to object orientation, namely cohesion, minimal coupling, modifiability, and extensibility, are all introduced in this course, as well as a few elementary object-oriented design patterns. Input and output streams, graphical user interfaces, and exception handling are covered. Students will also be introduced to a modern integrated software development environment (IDE). Programming projects will be required.
CSCI-262
Introduction to Computer Science Theory
3 Credits
This course provides an introduction to the theory of computation, including formal languages, grammars, auto-mata theory, computability, and complexity.
CSCI-603
Computational Problem Solving
3 Credits
This course focuses on the application of computational thinking using a problem-centered approach. Specific topics include: expression of algorithms in pseudo-code and a programming language; elementary data structures such as lists, trees and graphs; problem solving using recursion; and debugging and testing. Assignments (both in class and homework) requiring a pseudo-code solution and implementation in a programming language are an integral part of the course. Note: This course serves as a bridge course for graduate students and cannot be taken by undergraduate students without permission from the CS Undergraduate Program Coordinator.
CSCI-661
Foundations of Computer Science Theory
3 Credits
This course provides an introduction to the theory of computation, including formal languages, grammars, automata theory, computability, and complexity. This course serves as a bridge course for graduate students and cannot be taken by undergraduate students without permission from the CS Undergraduate Program Coordinator. Note: Students who complete CSCI 262 or CSCI 263 may not take CSCI 661 for credit.
IDAI-202
Problem Solving in Artificial Intelligence
3 Credits
This course will introduce students to the types of problems typically encountered in the field of artificial intelligence through the discussion of foundational results in the field. Students will explore how to define problems so that AI approaches can be applied to them. Students will also learn various qualitative and quantitative ways to evaluate AI solutions. Different domains will be used as example problem domains. Programming projects and written reports will be required.