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. | ||
|
Statistics
|
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: FM credit. 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. | ||
|
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. Spring. | ||
|
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. Prerequisite: CIS 203. As demand warrants. | ||
|
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. 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 301 or 356. 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. | ||
