Untitled Document

100 Level

200 Level

300 Level

400 Level

Current Courses

   

 

Computer Science Courses

152 LISP, 1 hour
An introduction to the LISP programming language. Prerequisites: CPSC 171 and CPSC 172 or permission.

153 C, 1 hour
An introduction to the C programming language. Prerequisites: CPSC 171 and CPSC 172 or permission.

154 FORTRAN, 1 hour
An introduction to the FORTRAN programming language. Prerequisites: CPSC 171 and CPSC 172 or permission.

165 The Information Age and Computers, 3 hours
In today's world, being able to find, organize, and display information in a myriad of ways is becoming increasingly important. This course introduces students to the use of computers and the Internet for browsing, locating, obtaining, creating, and managing computer-based documents that include, in addition to text, pictures, sound, and animation. Students taking this course early in their college career will find it will enrich their learning experiences in many courses.

171 Introduction to Computer Science, 4 hours
The introduction to the computer science discipline which establishes a scientific foundation for a variety of topics, including computer programming, computer design, information processing, the algorithmic solution of problems, and the study of the algorithmic process itself. The course will have a formal laboratory each week that satisfies the laboratory requirement in science.

172 Introduction to Programming Java, 4 hours
An introduction to the process of program creation. Students will learn to use the principal facilities of a high-level programming language and to transform algorithms into correct programs. Abstract data types will be stressed. Prerequisite: CPSC 171 or permission.

201 Data Structures, 4 hours
A study of a broad spectrum of algorithms and the use of advanced language facilities and programming techniques for implementing them. Prerequisites: CPSC 171 and CPSC 172 or permission.

202 Problem-Solving and Programming Practicum, 3 hours
Successful computer problem-solving relies not only on the development of appropriate algorithms, but also on the recognition of instances of well-defined problem classes for which algorithms already exist. In addition, excellence in computer programming cannot be developed without significant practice in implementing and debugging solutions. This course will provide students with a guided programming practicum, in which they will program solutions to carefully chosen problems that exemplify common problem classes. Many problems will be chosen from recent programming contests. Prerequisites: CPSC 171 and CPSC 172 or permission.

205 Systems Programming, 3 hours
Systems programming concentrates on an in-depth study of one operating system, such as UNIX, and how to write system programs in that operating system. The course will concentrate on the operating system's history, file system structure, commands, utilities, multitasking capabilities, communication, security, and shell-type programming. Theory is presented in the context of how the operating system implements the ideas. By the end of the course, students should be able to determine how most of the commands are implemented and how to use operating system properties to create tools and applications. Prerequisites: CPSC 171 or permission.

222 Interface Design, 3 hours
User interface design is complicated by the wide variety of choices and approaches that are possible today. Students will study and apply human factor research to the design of various types of interfaces. Designs will be implemented using software toolkits, and formal usability testing will be performed. Prerequisites: CPSC 171 and CPSC 172 or permission.

224 Internet Administration, 3 hours
A study of the structuring of Internet services and of the client/server model for providing resources and information in a distributed environment. Students will learn how to design, configure, program, and maintain the major types of services. A special emphasis will be placed on security issues and ethical questions concerning those issues. Prerequisites: CPSC 171 and CPSC 172 or permission. CPSC 165 or comparable background would be desirable but not required.

227 Software Evaluation, 3 hours
An introduction to the design and evaluation of software, particularly business software. Students will learn to choose, test, and evaluate commercial software packages designed for specific business applications and support the use of the packages. Prerequisites: CPSC 171 and CPSC 172 or permission. Computer Science 160 or comparable background would be desirable but not required.

240 Computer Ethics, 3 hours
A consideration of some of the major controversies, key value conflicts, ethical dilemmas, and social choices that drive and shape the computerization of our society. Representative areas of concern will include personal information and privacy, the effect of introducing the computer into the work place, computer crime and fraud, relationships in electronic communities, security and reliability issues, and the use of the information highway. May not be used to satisfy a distribution requirement in the sciences.

252 Computer Organization, 4 hours
An introduction to the design, functioning, and control of the subsystems of a computer system: processors, memory, storage, and input/output. Topics include digital logic, combinatorial, sequential, and register-transfer circuits, control unit, interrupt processing, microprogramming, and assembly language. Prerequisites: CPSC 171 and CPSC 172 or permission.

280 Seminar, 1 - 4 hours

281 Independent Study, 1 - 4 hours

320 Computer Vision, 4 hours
An introduction to the theory and algorithms needed for automatic interpretation of images. Topics include: image formation, segmentation, stereo, motion and other geometric reasoning techniques, object recognition, and applications. Sources of uncertainty and techniques for recognition in the presence of uncertainty will also be discussed. Students will implement significant parts of a complete object recognition system. Prerequisites: CPSC 171 and 172 or permission.

345 Operating Systems, 4 hours
An introduction to operating systems that explores the design principles, internal algorithms, and the abstract data types of operating systems. Topics include concurrent programming principles, storage management techniques, scheduling algorithms, and file management schemes. Students will write parts of an operating system in a language that simulates direct control of hardware. Prerequisites: CPSC 171 and CPSC 172 or permission.

351 Programming Languages, 4 hours
A study of a variety of specialized and general-purpose programming languages. Students will learn to describe the syntax and semantics of programming languages in a formal manner, to analyze a programming language with respect to its capabilities and limitations for the solution of particular classes of problems, to approach the task of learning a new programming language in an effective manner, and to specify desirable characteristics in a language. Prerequisites: CPSC 171 and CPSC 172 or permission.

352 Computer Security, 4 hours
An introduction to secure computer systems and a study of their most important responsibilities, including authenticating users, protecting user privacy, and ensuring the privacy, integrity, and availability of the system's data. The student will gain an understanding of techniques and procedures that are being used as well as challenges that still remain to attain secure computer systems, networks, and the Internet. Prerequisites: CPSC 171 and CPSC 172 or permission.

354 Systems Administration, 4 hours
An introduction to the many tasks of a system administrator. Students will learn to design, implement, install, and maintain systems software as well as establish and monitor system performance, security, and integrity. Prerequisites: CPSC 171 and CPSC 172 or permission.

356 Database Design, 4 hours
A study of the principles and concepts relevant to the management of complex data systems, especially the relational database model. Students design and implement a complete database system, from requirements analysis through documentation, using a generic database engine. Prerequisites: CPSC 171 and 172 or permission.

361 Computer Simulation, 4 hours
An introduction to simulation as a modeling tool to solve real-world system problems. The emphasis will be on discrete event simulation. Topics covered will include event graphs and other system modeling techniques, simulation languages, techniques for running simulation models, and the analysis of simulation output. Prerequisites: CPSC 171 and CPSC 172 or permission.

363 Computer Networks, 4 hours
A study of the fundamentals of the field of data and computer communication. Key topics include the layered architecture, network protocols, and algorithms for accurate and reliable message delivery in both local- and wide-area networks. Current networking standards will be studied. Prerequisites: CPSC 171 and CPSC 172 or permission.

367 Parallel Computing, 4 hours
An introduction to parallel architectures, programming languages, operating systems, and algorithms. Students will explore parallel algorithm design and programming by using PRAM, SIMD, and MIMD simulators. Prerequisites: CPSC 171 and CPSC 172 or permission.

375 Software Engineering, 4 hours
Students will study both the theoretical and practical aspects of designing and developing large, complex software systems. Readings will emphasize research results and case studies of all phases of the software lifecycle - requirements, specifications, design, resource allocation, implementation, integration, and testing. Principles will be applied by the class to various projects. Prerequisites: CPSC 171 and CPSC 172 or permission.

381 Topics in Computer Science, 1 - 4 hours
Various advanced topics are offered when need and sufficient interest are demonstrated. Credit hours and prerequisites are established for each offering. May be taken more than once with department consent.

386 Artificial Intelligence, 4 hours
A study of the goals, problems, concepts, and methods of artificial intelligence are explored. The emphasis is on computer problem solving paradigms and knowledge representations. Examples of techniques and systems are chosen from the areas of image recognition, human-machine interfacing, game playing, natural language understanding, robotics, expert systems, and automatic reasoning. Students will design and implement relevant algorithms Prerequisites: CPSC 152, CPSC 171, and CPSC 172 or permission.

387 Computer Graphics, 4 hours
A study of the algorithms and techniques of computer graphics and animation. Topics include display devices, geometric algorithms for displays, interaction methods, hierarchical modeling, and hidden edge and surface algorithms. Students will design and implement various three-dimensional algorithms to produce displays in an interactive environment. Prerequisites: CPSC 171 and CPSC 172 or permission.

388 Compiler Design and Construction, 4 hours
An intense treatment of the theoretical and practical considerations involved in implementing translators for high-level programming languages. Students will design and implement parts of a compiler for a high level language. Prerequisites: CPSC 171 and CPSC 172 or permission.

400/401 Independent Research Component, 1 - 4hours
Prerepuisite: CPSC 201 or permission.

465 Design and Analysis of Algorithms, 4 hours
An advanced course in the theory of computation. Students will learn to apply important results of computability and complexity theory to problems of program design and to interpret measurements of program performance. Topics will include a selection from the areas of tree and list traversals, sorting and searching, matrix manipulations, linear programming, set operations, shortest-path algorithms, pattern matching, operations of polynomials, and fast Fourier transforms. Mathematical sophistication is expected. Prerequisites: CPSC 171, CPSC 172, CPSC 201, and Mathematics 217, or permission.

466 Theory of Computation, 4 hours
An introduction to the classical and contemporary theory of computation. The topics covered are the theory of automata and formal languages, computability by Turing machines and recursive functions, unsolvability, computational complexity, and mathematical logic. Mathematical sophistication is expected. Prerequisites: CPSC 171, CPSC 172, CPSC 201, and Mathematics 217, or permission.

481 Independent Research, 1 - 4 hours

498 Internship, 1 - 4 hours

 
 
 

Current site design by Adam Busony
Based off of the design by Brent J. Pliskow
Send questions or comments to the webmaster.