Spring 2014

CMPSC 111:  Introduction to Computer Science I

Instructor:  Janyl Jumadinova

Lecture:  M,W,F(1) — 9:00 AM – 9:50 AM, Th(2) — 1:30 PM – 2:20 PM, Lab:  Th — 2:30 PM – 4:20 PM

An introduction to the principles of computer science with an emphasis on algorithmic problem solving and the realization of algorithms using a modern object-oriented programming language. Topics include algorithms, problem solving, programming, classes, primitive data types and objects, control structures, arrays and vectors, principles of object-oriented design and programming, and an introduction to graphics and graphical user interfaces. The course also includes an overview of the discipline of computer science and a study of the social implications of computer use. May serve as the laboratory course in the Natural Science Division’s distribution requirement. One laboratory per week. Prerequisite: Knowledge of elementary algebra.

CMPSC 112: Introduction to Computer Science II

Instructor: Gregory Kapfhammer

Lecture: M,W,F — 11:00 AM – 11:50 AM, Lab: T — 2:30 PM – 4:20 PM

A continuation of Computer Science 111 with an emphasis on data structures, data abstraction, algorithm design, the analytical and experimental evaluation of algorithm performance, and object-oriented design and implementation techniques. Topics include stacks, queues, deques, lists, strings, trees and graphs, dictionaries, recursion, searching and sorting algorithms, and an introduction to program verification. May serve as the laboratory course in the Natural Science Division’s distribution requirement. One laboratory per week. Prerequisite: Computer Science 111 or permission of the instructor.

CMPSC 250:  Analysis of Algorithms

Instructor:  Janyl Jumadinova

Lecture:  M,W,F — 1:30 PM – 2:20 PM, Lab: T — 2:30 PM – 4:20 PM

A treatment of selected topics from the analysis of algorithms including models of computation, design of efficient algorithms, computational complexity, and NP-completeness. Students develop expertise in mathematical analysis and algorithmic programming methodology. One laboratory per week. Prerequisites: Computer Science 112 and Mathematics 205.

CMPSC 390: Visual Computing

Instructor: Robert Roos

Lecture: M,W,F — 8:00 AM – 8:50 PM, Lab: W — 2:30 PM – 4:20 PM

An introduction to the fundamentals of computer graphics, visualization, and visual computing.  Topics covered include concepts of light, color, two-and three-dimensional representations, data visualization, image processing, image rendering, and animation.  These concepts are illustrated using medical imaging, simulation, human vision processing, computer art, and other applications.  Laboratory assignments covering each major course topic provide a solid basis for advanced work in computer graphics and visualization.  One laboratory per week.  Prerequisites:  One course in programming and one course in mathematics, or permission of the instructor.

CMPSC 440: Operating Systems

Instructor:  Gregory Kapfhammer

Lecture:  T,Th — 9:30 AM – 10:45 AM, Lab:  M — 2:30 PM – 4:20 PM

A study of operating systems and their design and implementation. Topics include the evolution of modern computer operating systems, basic components of an operating system, and hardware issues of importance to operating system design and implementation. Consideration is given to processes and threads, resource (processor, memory, device, and software) management, process and device scheduling, deadlocks, input/output, file systems, and system security. A representative operating system is examined in detail. One laboratory per week. Prerequisite: Computer Science 210. Offered in alternate years.

CMPSC 580: Junior Seminar: Topics and Research Methods in
Computer Science

Instructor:  Janyl Jumadinova, Gregory Kapfhammer, Robert Roos

Lecture: T,Th — 11:00 AM – 12:15 PM, Lab: F — 2:30 PM – 4:20 PM

An advanced treatment of selected topics from various areas of computer science with an emphasis on appropriate research methods. Practical skills are acquired in technical writing, critical reading, and presentation of technical literature in preparation for the senior project. One laboratory per week. Prerequisite: Completion of the computer science core or permission of the instructor.

FS 102: Academic Discourse II

Instructor:  Robert Roos

Lecture: M,W,F — 1:30 PM – 2:20 PM

Continued study of oral and written communication with an emphasis on argument. Students consider context, audience, style, evidence, and strategies for persuasion. The topical material covered in the seminar varies from section to section. Must be taken on a letter grade basis.