Introduction to properties of algorithmic computation, modules of computation, Turing computability, recursive functions, computability, and decidability. A study of various aspects of the human computer interface. Methods for designing and evaluating computer systems increased usability and efficiency. Design of a sample system of moderate complexity. Lectures in topics of current interest.
Topics vary according to the needs and interests of students.
CIS 471, 472. Participation in a group project with extensive programming in high level programming language. A study of parallel hardware and software systems and programming. Software systems topics include synchronization, primitives, scheduling and resource sharing. Topics vary according to the needs and interests of students.