Computer & Info Science (CIS)
CIS 100 Selected Topics (1-6 Credits)
Engineering & Comp Sci
Exploration of a topic (to be determined) not covered by the standard curriculum but of interest to faculty and students in a particular semester.
Repeatable
CIS 151 Fundamentals of Computing and Programming (3 Credits)
Engineering & Comp Sci
Principles and practice of programming. Computing fundamentals: variables, types, scope, objects, classes, functions, parameter passing, input/output, conditionals, and iteration. Defensive programming techniques, including exceptions. Program testing and debugging. Includes programming laboratory.
Shared Competencies: Information Literacy and Technological Agility
CIS 180 International Course (1-12 Credits)
Engineering & Comp Sci
Offered through SUAbroad by educational institution outside the United States. Student registers for the course at the foreign institution and is graded according to that institution's practice. SUAbroad works with the SU academic department to assign the appropriate course level, title, and grade for the student's transcript.
Repeatable
CIS 182 Intro to Comput Prog:Apl (1-2 Credits)
Engineering & Comp Sci
CIS 183 Intr to Comp Prog:Fortran (1 Credit)
Engineering & Comp Sci
CIS 187 Intro to Comp Prog:Pascal (1 Credit)
Engineering & Comp Sci
CIS 200 Selected Topics (1-6 Credits)
Engineering & Comp Sci
Exploration of a topic (to be determined) not covered by the standard curriculum but of interest to faculty and students in a particular semester.
Repeatable
CIS 205 Survey of Comp & Info Sci (0-3 Credits)
Engineering & Comp Sci
CIS 223 Statistical Reasoning and Practice (3 Credits)
Engineering & Comp Sci
Methods for exploratory data analysis. Graphical and numerical summaries of numerical and categorical data. Drawing conclusions from data. Basic probability, correlation, estimation and testing. Concepts of study design.
Prereq: MAT 194
CIS 252 Elements of Computer Science (4 Credits)
Engineering & Comp Sci
Introduction to key computer-science concepts through functional programming. Recursion, data representation, data abstraction, and computational patterns. Algebraic data types and higher-order functions. Models of computation. Three hours of lecture and one hour of computer laboratory.
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 270 Experience Credit (1-6 Credits)
Engineering & Comp Sci
Participation in a discipline or subject related experience. Student must be evaluated by written or oral reports or an examination. Permission in advance with the consent of the department chairperson, instructor, and dean. Limited to those in good academic standing.
Repeatable
CIS 280 International Course (1-12 Credits)
Engineering & Comp Sci
Offered through SUAbroad by educational institution outside the United States. Student registers for the course at the foreign institution and is graded according to that institution's practice. SUAbroad works with the S.U. academic department to assign the appropriate course level, title, and grade for the student's transcript.
Repeatable
CIS 285 Computer Applications (0 Credits)
Engineering & Comp Sci
CIS 290 Independent Study (1-6 Credits)
Engineering & Comp Sci
Exploration of a problem, or problems, in depth. Individual independent study upon a plan submitted by the student. Admission by consent of supervising instructor(s) and the department.
Repeatable
CIS 300 Selected Topics (1-6 Credits)
Engineering & Comp Sci
Exploration of a topic (to be determined) not covered by the standard curriculum but of interest to faculty and students in a particular semester.
Repeatable
CIS 321 Introduction to Probability and Statistics (4 Credits)
Engineering & Comp Sci
Double-numbered with CPS 621
Programming-oriented introduction to fundamentals in statistics and probability; elementary statistics, graphical and numerical representation; probability distributions; tests and confidence intervals; regression, and correlation. CPS 621 adds Journalism applications of statistical methods.
Prereq: MAT 295
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 341 Computer Organization & Programming Systems (3 Credits)
Engineering & Comp Sci
Digital logic, data types and their representations, instruction set architecture, assembly language, program construction, processors, memory hierarchy, traps and interrupts, privilege and security, input-output subsystems.
Prereq: CIS 351
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 342 Introduction to Systems Programming (1 Credit)
Engineering & Comp Sci
Input and output, including error handling, file descriptors and interface to OS. Pointers and pointer arithmetic. Structures. Memory functions and storage allocation. Makefiles, header files, libraries, compilation, and linking.
CIS 351 Data Structures (3 Credits)
Engineering & Comp Sci
Abstract data structures including arrays, lists, trees, binary search trees, priority queues, graphs. Algorithm analysis. Examples include data structures used for security-related applications.
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 352 Programming Language: Theory & Practice (3 Credits)
Engineering & Comp Sci
Environments, stores, scoping, functional and imperative languages, modules, classes, data encapsulation, types, and polymorphism. Implementation of these constructs in a definitional interpreter.
CIS 355 Intrm Prog/High Levl Lang (0 Credits)
Engineering & Comp Sci
CIS 370 Experience Credit (1-6 Credits)
Engineering & Comp Sci
Participation in a discipline or subject related experience. Student must be evaluated by written or oral reports or an examination. Permission in advance with the consent of the department chairperson, instructor, and dean. Limited to those in good academic standing.
Repeatable
CIS 375 Introduction to Discrete Mathematics (3 Credits)
Engineering & Comp Sci
Prereq: PHI 251
Shared Competencies: Critical and Creative Thinking
CIS 380 International Course (1-12 Credits)
Engineering & Comp Sci
Offered through SUAbroad by educational institution outside the United States. Student registers for the course at the foreign institution and is graded according to that institution's practice. SUAbroad works with the S.U. academic department to assign the appropriate course level, title, and grade for the student's transcript.
Repeatable
CIS 381 Programming Systems (3 Credits)
Engineering & Comp Sci
CIS 383 Cmp Appl & Prog/Soc Rsrch (3 Credits)
Engineering & Comp Sci
CIS 386 Principles of Computer System Design (3 Credits)
Engineering & Comp Sci
Fundamental design principles for computer and information systems. Concurrency, race conditions, complexity, modularity, abstraction, layering, hierarchy, iteration, emergent properties, organization, virtualization, performance, atomicity, fault tolerance, consistency, and security.
CIS 390 Honors Seminar in Computer & Information Science (3 Credits)
Engineering & Comp Sci
Specific topics in computer and information science suitable for honors-thesis research.
Repeatable
CIS 400 Selected Topics (1-6 Credits)
Engineering & Comp Sci
Exploration of a topic (to be determined) not covered by the standard curriculum but of interest to faculty and students in a particular semester.
Repeatable
CIS 415 Intro Comp Linguistics (0 Credits)
Engineering & Comp Sci
CIS 425 Introduction to Computer Graphics (3 Credits)
Engineering & Comp Sci
Graphics programming. User interfaces. Modeling and viewing transformations. Shading techniques. Representations of three-dimensional models. Curves and non-planar surfaces. Ray tracing and radiosity. Antialiasing.
Shared Competencies: Communication Skills; Information Literacy and Technological Agility
CIS 428 Introduction to Cryptography (3 Credits)
Engineering & Comp Sci
Classical cryptosystems and their cryptanalysis, RSA and other public-key cryptosystems, pseudo-random sequences, zero-knowledge protocols, related ethical and social concerns.
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 437 Multiagent Systems: Concepts and Programming (3 Credits)
Engineering & Comp Sci
Double-numbered with CIS 637
Algorithms for multiagent systems. Environment types for agent systems. Communications, game theoretical models, automatic auctions, utility and decision theory for multiagent systems, relationships between distributed systems and multiagent systems, Belief-Desire-Intention architecture, logic-based agent models, and agent simulations. Additional work required for graduate students.
Shared Competencies: Information Literacy and Technological Agility
CIS 440 Topics in Mobile Programming (3 Credits)
Engineering & Comp Sci
A variety of subjects surveyed or a particular subject in depth. Additional coursework required of graduate students.
Repeatable 3 times for 9 credits maximum
Prereq: CIS 351
CIS 442 Introduction to Virtual Reality (3 Credits)
Engineering & Comp Sci
Fundamental aspects of virtual environments: applications, methods, and technologies. Development of 3D applications such as games, animations, and immersive virtual worlds. Aspects of 3D graphics (3D transformations and physics) and interactive systems (human perception and motion tracking).
CIS 444 Mobile Application Programming (3 Credits)
Engineering & Comp Sci
Cross-listed with CSE 444
Development of applications for different mobile devices. Creating effective user interfaces, efficient use of persistent storage, network services, GPS, maps and sensors. Additional work required of graduate students.
CIS 445 Finite Mathematics (3 Credits)
Engineering & Comp Sci
CIS 451 Modern Programming in Java (3 Credits)
Engineering & Comp Sci
Programming in Java with generic classes. Defining generic classes. Specifying types and inheritance. Verifying correctness of Java methods and classes. Managing concurrency, remote method invocation, and performance considerations.
CIS 453 Software Specification and Design (3 Credits)
Engineering & Comp Sci
Software engineering process models. Software requirements analysis, including object-oriented methodology. Behavioral and nonbehavioral requirements. Development of specification documents. Unified Modeling Language. High-level design and software architecture. Team projects.
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 454 Software Implementation (3 Credits)
Engineering & Comp Sci
Detailed design of software. Implementation and software testing. Developing software implementations from UML specifications and design documents. Software development methodologies, including agile development. Ethics and social responsibility. Team projects.
Prereq: CIS 453
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 458 Data Networks: Basic Principles (3 Credits)
Engineering & Comp Sci
Data communication networks, multilayer network architecture, data transmission fundamentals, network protocols, local and wide area networks, transport and application protocols.
CIS 467 Introduction to Artificial Intelligence (3 Credits)
Engineering & Comp Sci
Shared Competencies: Critical and Creative Thinking
CIS 468 Natural Language Processing (3 Credits)
Engineering & Comp Sci
Double-numbered with CIS 668
Linguistic and computational aspect of natural language processing technologies. Lectures, readings, and projects in the computational techniques required to perform all levels of linguistic processing of text. Additional work required of graduate students.
CIS 470 Experience Credit (1-6 Credits)
Engineering & Comp Sci
Participation in a discipline- or subject-related experience. Students must be evaluated by written or oral reports or an examination. Limited to those in good academic standing.
Repeatable
CIS 471 Optimization Methods (3 Credits)
Engineering & Comp Sci
Classical methods of minimum and maximum, gradient methods, conjugate direction methods, linear programming and simplex algorithm, integer programming, non-linear optimization, random search algorithms.
CIS 473 Automata and Computability (3 Credits)
Engineering & Comp Sci
Countable and uncountable sets; diagonalization proofs; finite state automata; regular, context-free, context-sensitive, recursive, and r. e. languages; Turing machines; relationships between classes of languages and machines; the halting problem; proof methods for decidability and undecidabilty.
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 477 Introduction to Analysis of Algorithms (3 Credits)
Engineering & Comp Sci
Mathematical modeling of computational problems; searching and sorting algorithms; search trees, heaps, and hash tables; divide-and-conquer, dynamic programming, and greedy choice design techniques; graph algorithms; cryptographic algorithms; NP-completeness; and selected topics.
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 478 Introduction to Quantum Computing (3 Credits)
Engineering & Comp Sci
Purpose of QC; simple Markov processes; quantum registers; quantum state transitions; classical vs quantum models of computation; measurement and superposition; no-cloning theorem; quantum teleportation; quantum logic.
CIS 480 International Course (1-6 Credits)
Engineering & Comp Sci
Offered through SUAbroad by educational institution outside the United States. Student registers for the course at the foreign institution and is graded according to that institution's practice. SUAbroad works with the S.U. academic department to assign the appropriate course level, title, and grade for the student's transcript.
Repeatable 1 times for 6 credits maximum
CIS 487 Access Control, Security and Trust (3 Credits)
Engineering & Comp Sci
Cross-listed with CSE 487
Analytical/logical basis for trusting systems. Access requests, authorizations, certificates, credentials, jurisdiction, and delegation. Applications include distributed access control, process isolation and sharing, and access policies.
Prereq: CIS 375
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 489 Mobile Systems Security (3 Credits)
Engineering & Comp Sci
Double-numbered with CIS 689
Components in Mobile OS; basic mobile app development; sandbox mechanism; permission enforcement; vulnerabilities; malware attacks. Additional work required of graduate students.
Prereq: CIS 486 or CSE 486
CIS 490 Independent Study (1-6 Credits)
Engineering & Comp Sci
In-depth exploration of a problem or problems. Individual independent study upon a plan submitted by the student. Admission by consent of supervising instructor or instructors and the department.
Repeatable
CIS 499 Honors Capstone Project (1-3 Credits)
Engineering & Comp Sci
Completion of an Honors Capstone Project under the supervision of a faculty member.
Repeatable 3 times for 3 credits maximum
CIS 500 Selected Topics (1-6 Credits)
Engineering & Comp Sci
Exploration of a topic (to be determined) not covered by the standard curriculum but of interest to faculty and students in a particular semester.
Repeatable
CIS 531 Compiler Construction (3 Credits)
Engineering & Comp Sci
Programming a small compiler. Lexical analysis, tokens, finite automata, hashing. Syntax analysis, grammars, syntax trees, error recovery. Scope and type analysis, symbol tables. Run-time stack, variable addressing, expression evaluation, procedure activation, recursion. Code generation, 0ptimization, portability.
Prereq: CIS 351
CIS 535 Assembly Language (3 Credits)
Engineering & Comp Sci
CIS 536 Comp Prog Tech (3 Credits)
Engineering & Comp Sci
CIS 543 Control of Robots (3 Credits)
Engineering & Comp Sci
Cross-listed with ELE 516
Kinematics, dynamics, and control of mobile and/or manipulator robots. Path planning, actuators, sensors, human/machine interface. Two hours lecture and two hours laboratory weekly. Design project.
CIS 545 Introduction to Combinatorics (3 Credits)
Engineering & Comp Sci
Cross-listed with MAT 545
Permutations, combinations, recurrence relations, generating functions, inclusion-exclusion and applications, introductory graph theory.
Shared Competencies: Scientific Inquiry and Research Skills
CIS 553 Software Systems Implementation (3 Credits)
Engineering & Comp Sci
Organization, analysis, and documentation of a sophisticated implementation project in a prominent high-level language, such as ADA, C, or Modular-2. Substantial programming assignments and analytical documentation. Language and project may vary from year to year.
Prereq: CIS 453
CIS 554 Object Oriented Programming in C++ (3 Credits)
Engineering & Comp Sci
Pointers, dynamic memory management, data abstraction, classes, derived classes, inheritance, types, structures and templates. Threaded programming, standard template library, interfaces. Substantial programming assignments.
Shared Competencies: Information Literacy and Technological Agility
CIS 563 Introduction to Data Science (3 Credits)
Engineering & Comp Sci
Fundamentals of the knowledge discovery and data mining process. Basics of supervised and unsupervised learning. Applications (recommendation and collaborative filtering) and computational tools for carrying out predictive/descriptive modeling. Additional work required for graduate students.
Prereq: MAT 503
Shared Competencies: Critical and Creative Thinking; Information Literacy and Technological Agility
CIS 565 Introduction to Artificial Neural Networks (3 Credits)
Engineering & Comp Sci
Perceptrons and the Perceptron Convergence Theorem; non-linear optimization, gradient descent methods; neural net architecture, conjugate-gradient and recurrent networks; Hopfield networks, Kohonen's feature maps; non-neural clustering algorithms.
CIS 567 Knowledge Representation and Reasoning (3 Credits)
Engineering & Comp Sci
Applications of mathematical methods to knowledge bases. Methods include nonclassical, fuzzy logic and statistical inference. Application topics include planning, temporal and physical reasoning, attitudes, the frame problem, preference, constraints, qualitative differential equations, situation theory.
CIS 570 Experience Credit (1-6 Credits)
Engineering & Comp Sci
Participation in a discipline or subject related experience. Student must be evaluated by written or oral reports or an examination. Permission in advance with the consent of the department chairperson, instructor, and dean. Limited to those in good academic standing.
Repeatable
CIS 573 Computability Theory (3 Credits)
Engineering & Comp Sci
CIS 580 International Course (1-12 Credits)
Engineering & Comp Sci
Offered through SUAbroad by educational institution outside the United States. Student registers for the course at the foreign institution and is graded according to that institution's practice. SUAbroad works with the S.U. academic department to assign the appropriate course level, title, and grade for the student's transcript.
Repeatable
CIS 581 Concurrent Programming (3 Credits)
Engineering & Comp Sci
Processes, events, alphabets, and trace sets. Process equivalence. Divergence, dead-lock, fairness, and termination. Message channels, buffers, pipelines, trees, rings, grids, recursive nets. Mutual exclusion, semaphores, conditional critical regions, monitors, remote procedures. Programming exercises in Joyce.
CIS 590 Independent Study (1-6 Credits)
Engineering & Comp Sci
Exploration of a problem, or problems, in depth. Individual independent study upon a plan submitted by the student. Admission by consent of supervising instructor(s) and the department.
Repeatable