Login (admins only)

You are here

Course descriptions

Introduction to Computing
3 Credits
An introduction to computing and problem solving, including software productivity tools, computing fundamentals, and an introduction to programming. Laboratory work included. Gen Ed: FM credit. Fall and Spring.
3 Credits
Variability, uncertainty, description of data, sampling, hypothesis testing, correlation and regression. Not open to students who have completed another entry-level statistics course. Gen Ed: FM credit. Prerequisite: high school algebra or equivalent. As demand warrants.
CIS-195, 295, 395, 495 — Special Topics
1-12 Credits
CIS-198, 298, 398, 498 — Tutorial 1-3 Credits
Computer Science I
3 Credits
Introduction to computer science and information systems. Data types, control structures, arrays, and objects. Introduction to software engineering. Concurrent registration in CIS 201 Laboratory is required. Gen Ed: FS credit when combined with recitation section. Corerequisite: MATH 151. Fall and Spring.
Computer Science I Laboratory
1 Credit
Laboratory activities designed to complement the topics covered in in CIS 201 Lecture. Concurrent registration in CIS 201 Lecture is required. Fall and Spring.
Computer Science II
3 Credits
Data and mathematical structures: algorithms, basic data types, arrays, linear lists, linked lists, stacks, queues, trees. Introduction to object-oriented programming. Recursion. Concurrent registration in CIS 203 Laboratory is required. Prerequisite: CIS 201. Fall and Spring.
Computer Science II Laboratory
1 Credit
Laboratory activities designed to complement the topics covered in in CIS 203 Lecture. Concurrent registration in CIS 203 Lecture is required. Fall and Spring.
Language and Symbolic Logic
3 Credits
See PHIL 217. Cross-listed with Philosophy Department. As demand warrants.
Selected Languages
1 Credit
Topics not normally covered by regular course offerings. Emphasis on selected languages. May be repeated for up to 3 credits with different languages. Prerequisite: CIS 203 or permission of instructor. As demand warrants.
Foundations of Computer Science
4 Credits
An introduction to the logical and quantitative foundations of computer science. Topics include introductions to: formal proof techniques, logic, sets, relations, partial order, number systems, combinatorics, graphs and trees, and matrix arithmetic. Prerequisites: CIS 201. Spring.
Theory of Computation
3 Credits
Regular and context-free languages, turing machines, and the halting problem. Prerequisites: CIS 203, CIS 300. Fall.
Algorithm Analysis and Design
3 Credits
Analysis and design of algorithms on data structures, including algorithms for processing graphs, trees, and strings. Introduction to the theory of algorithm complexity. Prerequisites: CIS 203 and 300. Spring.
Operating Systems
3 Credits
Principles of operating systems, concurrency, scheduling, virtual memory, device management, security and protection, deadlocks, introduction to networking. Prerequisite: CIS 203. Fall
Undecidability and Incompleteness
3 Credits
See PHIL 317. Cross-listed with Philosophy Department. As demand warrants.
Computational and Mathematical Logic
3 Credits
Logic and logical methods; syntax and semantics; software tools for logic; proof methods; functional and logical programming languages; type systems, predicate logic and untyped lambda calculii. Prerequisite: CIS 300. As demand warrants.
Computer Simulation
3 Credits
Computer sampling from probability distributions, queuing theory, data collection and manipulation, computer programming techniques and organization in simulation analysis and validation, and simulation languages. Emphasis on simulation in systems analysis. Prerequisite: CIS 203 and MATH 152. As demand warrants.
Numerical Methods
3 Credits
Solution of nonlinear equations and interpolation via polynomials and piecewise polynomials. Numerical differentiation and integration. Error analysis. Convergence criteria. Numerical techniques for ordinary differential equations. Prerequisite: MATH 152. As demand warrants.
Assembly Language and Computer Architecture
4 Credits
Principles of digital systems design, computer organization, and machine and assembly language programming; microprocessor systems and large-scale computer systems. Prerequisite: CIS 203. Fall.
Game Development and Design
3 Credits
An introduction to the theory and practice of video game design and implementation. Students will learn to critique and review games, how to program using a high-level game engine, and how to extend that game engine. The course introduces video game design, video game studies, and provides an overview of the game industry. Programming maturity and the ability to program in teams is required. Prerequisite: CIS 203. As demant warrants.
Professional Practice
3 Credits
Seminar. Influence of computer revolution on society: automation, data banks, security, moneyless economy, numeralization and individual depersonalization, privacy. Gen Ed: SI credit. Prerequisites: CIS 203 and upper-division status. Fall.
Software Engineering
3 Credits
An introduction to the creation of large, reliable software systems. Topics include: requirements and specification; formal, object-oriented, and agile methodologies; system design; validation, verification, and testing; quality, reliability, and safety; cost estimation and project metrics; management, maintenance, and reuse; software standards; software engineering tools. Gen Ed: WI credit. Prerequisite: CIS 203. Spring.
Computer Networks
3 Credits
Digital communications, computer networks, protocol families, client-server architecture, network security. Prerequisite: CIS 203. Spring.
Advanced Operating Systems
3 Credits
Design objectives of operating systems. Sequential processes, resource allocation, concurrent process control and communication, processor and memory management, virtual storage, program protection, effect of computer architecture on system design. Human factors interface. Prerequisite: CIS 310. As demand warrants.
Database Systems
3 Credits
Information storage and retrieval, data base systems, data modeling and the relational model, normalization, data description languages and SQL. Prerequisite: CIS 203. As demand warrants.
Artificial Intelligence
3 Credits
Knowledge representation, searching and heuristics. Game and goal trees; graphs. Applications to game playing, theorem proving, pattern recognition and natural language processing. Prerequisite: CIS 301. As demand warrants.
Advanced Numerical Methods
3 Credits
Advanced topics in numerical integration and solution of ordinary differential equations. Initial value problems, boundary value problems, partial differential equations, one-step and multi-step methods. Prerequisite: CIS 327. Corequisite: MATH 390. As demand warrants.
Real Time Programming
3 Credits
Techniques of interfacing real-world devices with computers and process control programming. Prerequisite: CIS 356. As demand warrants.
Documentation and Communication
3 Credits
Technical writing. Development of communication skills through computer-related writing and speaking assignments. Prerequisites: CS major, upper-division status. As demand warrants.
Programming Languages
3 Credits
Comparative study of programming languages. Functional, logic and object-oriented paradigms. Syntactic and semantic issues in language design. Prerequisites: CIS 301. Spring.
High Performance Computing
3 Credits
An introduction to the concepts, practices, and applications of High Performance Computing (HPC), focusing on programming using current HPC models used in the computer science research and education community. Students engage in HPC research projects that lead to the preparation of written and oral reports suitable for presentation at undergraduate research conferences. Prerequisites: CIS 203. As demand warrants.
Computer Graphics
3 Credits
Two- and three-dimensional computer graphics and graphics systems including command languages and system design. Prerequisites: CIS 301 and (suggested) MATH 375. As demand warrants.
Compiler Construction
3 Credits
Constructing translators for computer programming languages. Organization of a compiler, symbol tables, lexical scan, storage allocation, object code generation, error diagnostic and code optimization. Top-down and bottom-up parsing. Compiler generation tools. Prerequisites: CIS 443. As demand warrants.
Advanced Computer Organization
3 Credits
Logic devices and systems. Micro- and minicomputer architecture, software systems, peripherals and methods for interfacing microcomputers with external devices. Prerequisites: CIS 356. As demand warrants.
Computer Systems Management
3 Credits
Seminar. Management and maintenance of networked systems. Configuration installation. Security.
Introduction to Cryptography
3 Credits
Mathematical tools for modern cryptography and cryptanalysis including elemenentary number theory, algebra, and probability theory. Survey of contemporary cipher systems, their security and complexity. Work includes programming projects and mathematics problems appropriate for the subject and level of the student. Prerequisites: CIS 300 or MATH 340. As demand warrants.
Senior Project
3 Credits
Students perform a research project or substantial programming project under supervision of faculty. Project proposals, journals, and formal reports are expected. Team projects are encouraged. Prerequisites: Senior CS status. As demand warrants.
Senior Seminar
3 Credits
Current practices and future developments in the broad field of information technology. Course will be managed by students under the supervision of a faculty member. Students will be responsible for identifying and inviting presenters, for developing reading material for the class, and for summarizing and documenting information after the presentation. Prerequisites: Upper division status. As demand warrants.
Computer Science Internship
1-6 Credits
Students work in a real-world environment with business and industry or in conjunction with a member of the CS faculty. A program proposal must be prepared, regular measures of progress taken and reported upon, and a final report developed for presentation. Team projects may be undertaken. Prerequisite: Upper division status. As demand warrants.