21:198:100
Introduction to Computers and Information Processing (3)
Covers a general knowledge of computer use; history of computers and information processing, survey of modern computer science concepts, practical instruction in the use of a variety of data processing environments, and use of available software packages and databases; introduction to the internet.
Prerequisite: Fulfillment of mathematics proficiency requirement (21:640:112, or 21:640:113 or 103, or examination). May not be used for credit by computer science or information systems majors. This course fulfills the technology course requirement in the teacher certification program.
|
21:198:101
Computers and Programming I (3)
Prerequisite: Fulfillment of mathematics proficiency requirement (21:640:112, or 21:640:113 or 103, or examination). This course fulfills the technology course requirement in the teacher certification program.
|
21:198:102
Computers and Programming II (3)
Solution of problems using recursive methods and dynamic data structures. Recursive functions, pointer variables, text processing, external files, and elementary software engineering.
Prerequisite: 21:198:101.
|
21:198:251
Computer Organization (3)
An introduction to computer system structure and organization. Topics include representation of information, circuit analysis and design, register-transfer level, processor architecture, and input/output.
Prerequisite: 21:198:102.
|
28:198:265
Information Systems and Productivity Toolware (3)
Information systems is the study of how organizations use information technology. This course is an overview of the information systems discipline, the role of information systems in organizations, and the changing nature of information technology. Computer tools for analysis and presentation are used.
Prerequisite: 21:198:101.
|
28:198:270
Multimedia Information Systems (3)
Multimedia combines text, graphics, sound, video, and animation in a single application. Preparation for creating multimedia information systems and understanding the crucial issues involving technology, design, and effectiveness of multimedia applications. Programming techniques for integrating video, sound, animation, and graphics, and design strategies for multimedia information systems.
Prerequisite: 21:198:102.
|
28:198:280
Programming Language Concepts (3)
Conceptual study of programming language syntax, semantics, and implementation. Course covers language definition structure, data types and structures, control structures and data flow, run-time consideration, and interpretative languages.
Prerequisite: CS114 or 21:198:102 or equivalent.
|
21&28:198:332
Principles of Operating Systems (3)
Organization of operating systems covering structure, process management, and scheduling; interaction of concurrent processes; interrupts; I/O, device handling; memory and virtual memory management, and file management.
Prerequisite: 21:198:335.
|
28:198:333
Introduction to UNIX Operating Systems (3)
Covers the UNIX system kernel including initialization, scheduling, context switching, process management, memory management, device management, and the file system. Also includes the organization of shells, editors, utilities, and programming tools of the UNIX operating system.
Prerequisites: 21&28:198:332 or equivalent, and knowledge of C language.
|
21:198:335
Data Structures and Algorithm Design (3)
Explores trees, paths, linear lists, strings, arrays, stacks, queues, linked structures, and algorithms for searching, sorting, and merging.
Prerequisites: 21:198:102 and 21:640:237.
|
28:198:341
Foundations of Computer Science II (3)
Provides an introduction to automata theory, computability theory, and
complexity theory. Theoretical models such as finite state machines,
push-down stack machines, and Turing machines are developed and related
to issues in programming language theory. Also covers undecidability
and complexity theory, including the classes P and NP.
Prerequisites: 21:198:101 and 21:640:237.
|
28:198:350
Computers, Society, and Ethics (3)
Examines the historical evolution of computer and information systems and explores their implications in the home, business, government, medicine, and education. Topics include automation and job impact, privacy, and legal and ethical issues.
Prerequisites: 21:198:101 and 21:350:101.
|
28:198:352
Parallel Computers and Programming (3)
Introduction to parallel computers and parallel programming. General structures and design techniques of parallel computers are described. Programming paradigms and algorithm design considerations for parallel processors also are discussed.
Prerequisites: 21:198:251 and 21&28:198:332.
|
28:198:353
Advanced Computer Organization (3)
Emphasis on the basic design principles or various components in a
computer, as well as how the components are organized to build a
computer. Topics include design methodology, arithmetic and logic unit
design, control unit design, memory hierarchy, memory system design,
input and output devices, peripheral devices, and interfacing computers
using software. A software simulation package is used to help the
learning process. By the end of the semester, students will have built a
simulated computer.
Prerequisites: 21&28:198:251 or instructor-approved equivalent.
|
28:198:356
Open Systems Networking (3)
An introduction to internetworking, including an in-depth study of the architecture of network interconnections, the internet services, and the protocols needed to provide these services. Topics include architecture of interconnected networks, internet addresses and the address resolution problem, internet protocols, the domain name system, the socket interface, the client-server model of interaction, the OSI transport and application support protocols, and the TCP/IP application protocols.
Prerequisite: 21:198:335.
|
28:198:370
Introduction to Artificial Intelligence (3)
Exploration of concepts, approaches, and techniques of artificial
intelligence. Emphasizes both underlying theory and applications.
Topics include knowledge representation, parsing language, search,
logic, adduction, uncertainty, and learning. LISP and Prolog
programming languages used extensively. Students are required to do
programming assignments, complete a programming semester project, and
review case studies.
Prerequisite: 21:198:335.
|
28:198:390
Requirements Analysis and Systems Design (3)
The information systems development life cycle, from the initial stages of information requirements analysis and determination to the ultimate activities involving systems design. Theory, methodologies, and strategies for information requirements analysis, including the assessment of transactions and decisions, fact-finding methodologies, structured analysis development tools, strategies of prototype development, and an overview of computer-aided software engineering (CASE) tools. Theory, methodologies, and strategies for systems design, including design of user-interfaces, particularly menu-driven and keyword dialogue strategies, and issues in the proper design of computer output.
Prerequisite: 21:198:102.
|
28:198:392
Text Processing, Retrieval, and Mining (3)
Text
retrieval concerns the representation, organization, storage, and
retrieval of text elements. Students will learn methods of text and
data organization, as well as numerical data storage methods in
commercial databases. Topics include techniques such as automatic
indexing, query expansion, and how to use these techniques to improve
retrieval effectiveness and efficiency.
Prerequisites: 21:198:335 and 21:640:327.
|
28:198:408
Cryptography and Internet Security (3)
Covers
security requirements for telecommunication over the internet and other
communication networks, various conventional and public-key encryption
protocols, digital encryption standard, RSA and ElGamal cryptographic
systems, digital signature algorithm and analysis of its
cryptoimmunity, and access sharing schemes.
Prerequisite: 21:640:237.
|
21&28:198:431
Database System Design and Management (3)
Database system architecture, including data modeling using the semantic object and entity-relationship model; storage of databases; the hierarchical, network, and relational data models; formal and commercial query languages; functional dependencies and normalization for relational database design; relation decomposition; concurrency control and transactions management. Student projects involve the use of a DBMS package.
Prerequisite: 21:198:335.
|
28:198:433
Electronic Commerce Requirements and Design (3)
Introduces
critical concepts emerging in the field of electronic commerce, such as
business to consumer (B2C), business to business (B2B), supply chain
management (SCM) systems, and peer to peer (P2P). Provides concepts and
practical skills for building effective, usable, and secure electronic
commerce systems, offering a conceptual framework for the study of
electronic commerce as well as hands-on skills for building systems for
electronic commerce.
Prerequisites: 21&28:431; 28:198:390 or 490.
|
28:198:434
Advanced Database Systems (3)
Covers
the basic concepts of traditional files and file processing, provides a
classic introduction to the relational data model and its languages,
and discusses database design methodology and application developments.
Students are expected to learn the design of database application
systems through a small project and to get some practical hands-on
experience with commercial database management systems (DBMS) by
writing application programs using the commercial DBMS query languages.
Prerequisite: 21&28:198:431.
|
21&28:198:435
Advanced Data Structures and Algorithm Design (3)
Advanced topics in data structures and algorithms, including mathematical induction, analysis and complexity of algorithms, and algorithms involving sequences, sets, and graphs such as searching, sorting, order statistics, sequence comparisons, and graph traversals. Optional topics include geometric, algebraic, and numeric algorithms.
Prerequisite: 21:198:335.
|
28:198:438
Interactive Computer Graphics (3)
Introduces fundamental concepts of interactive graphics oriented toward computer-aided design systems used in engineering, architecture, and manufacturing. Topics include computer data structures for representation of two- and three-dimensional objects and algorithms for definition, modification, and display of these objects in applications. Discussion of special topics in interactive graphics.
Prerequisite: 21:198:101.
|
28:198:447
Human-Computer Interfaces (3)
Design and evaluation of the human-computer interface in interactive
computer systems. Topics include approaches to interface design such as
menus, commands, direct manipulation; screen layout strategies;
metaphor models; models of human information process; evaluation
approaches such as protocol for analysis, interactive monitoring, use
of surveys; and requirements for documentation and help. Students are
expected to design interface mock-ups and evaluate them.
Prerequisite: 28:198:390.
|
28:198:451
Data Communications and Networks (3)
Fundamental concepts in data communications. Topics include circuit and packet switching, layered network architecture, ISO network protocols, performance analysis of data communication systems, flow control and alternate routing strategies and algorithms, various types of networks and their interconnections, network security, and privacy. Additional topics include systems analysis and design, traffic engineering, and planning and forecasting methodologies as applied to data communication networks.
Prerequisite: 21:198:335.
|
28:198:455
IT Policy and Strategy (3)
An overview of computing centers and their organization for accomplishing specific objectives. Includes a classification of systems, analysis of cost and size, layout of equipment, methods of accessing computer facilities, equipment selection, and facilities evaluation.
Prerequisite: 21:198:102.
|
28:198:461
Systems Simulation (3)
Introduction to computer simulation as an algorithmic problem-solving technique. Includes discrete simulation models, elementary theory, stochastic processes, use of simulation languages, random number generators, simulation of probabilistic processes, design of simulation experiments, validation of models, queuing systems, and applications to the design and analysis of operational systems. The GPSS language is studied in detail.
Prerequisites: 21:198:101 and 21:640:327.
|
28:198:465
Computer Techniques for Management Science and Information Systems (3)
Design and programming concepts presented for automation of Management Science and Information Systems. Includes the organization of files and techniques
for processing information based upon organizational requirements and
available hardware and software. Some case studies are presented.
Prerequisite: 28:198:431.
|
28:198:478
Software Tools for Solving Problems (3)
Students interact directly with industry and solve problems using various information-systems software tools. Company representatives present problems they are facing, and the students work in groups to develop a solution, which they present at the end of the semester. Presentation skills, working in groups, and using software tools for problem solving stressed.
Prerequisites: Junior or senior standing, permission of instructor.
|
28:198:482
Data Mining (3)
Covers the concepts
and principles of advanced data mining systems design; presents methods
for association and dependency analysis; classification, prediction,
and clustering analysis.
Prerequisite: 21&28:198:431.
|
21:198:481,482
Advanced Mathematics in Computer Science (3,3)
Covers one or more topics common to mathematics and computer science. Possible topics include applications of abstract algebra to data security problems, digital systems processing, automata theory, asynchronous machines and petri nets, applications of algebra to computer programming, formal language theory, advanced numerical analysis and its theory of errors.
Prerequisites: 21:198:102 and 21:640:237 or 238, or permission of instructor.
|
28:198:485
Special Topics in Computer Science (3)
The study of new and/or advanced topics in an area of computer science not regularly covered in any other CIS course. The precise topics to be covered, along with prerequisites, are announced in the semester prior to the offering of the course. A student may register for no more than two semesters of special topics courses.
Prerequisites: Junior standing and/or departmental approval.
|
28:198:486
Special Topics in Computer Science II (3)
A continuation of 28:198:485.
Prerequisites: Junior standing and/or departmental approval.
|
21&28:198:491
Computer Science Project (3)
An opportunity for students to integrate the knowledge and skills gained in previous computer science work into an individual research project. Involves investigation of current literature as well as computer implementation of either a part of a large program or the whole of a small system. Topic should be consonant with the emphasis of direction chosen by the students in their computer science studies. Before registering for this course, students must find a faculty member who agrees to act as their adviser, and students must have a written project proposal approved by their faculty adviser. The proposal must be submitted and approved in the prior semester, usually the third week of November or April.
Prerequisites: 28:198:490, senior standing, and project proposal approval.
|
28:198:491
Information Systems Project (3)
Integration of knowledge and skills gained in previous information systems courses into an individual research project. Entails investigation of current literature and the design, implementation, and evaluation of an information system.
Prerequisites: 28:198:465, senior standing, and, in a prior semester, project proposal approved by the faculty adviser.
|
21:198:493,494
Individual Studies in Computer Science (3,3)
Individual study for students interested in specialized study or research in computer sciences.
Prerequisite: Permission of instructor. No more than 3 credits may be taken from among 21:198:493,494, 495,496.
|
21:198:495,496
Internship in Computer Science or Information Systems (3,3)
Pursuit of a project of relevant educational value in an employment setting. Before registering for this course, students must find an employer and a faculty supervisor, and students must have a written internship proposal approved by the employer and faculty supervisor. Requires biweekly activity reports, a final report approved by employer and faculty supervisor, and a written evaluation by the employer.
Prerequisite: Approval of a proposal by faculty adviser. No more than 3 credits may be taken from among 21:198:493,494, 495,496.
|