Jump to 400 level classes
Jump to 300 level classes
level 100 and 200 classes start below
 

CS 172 Introduction to Computing. 4 hrs.; 4 crs.
Co-req: Math 115, or 121, or 184.
Not open to students with credit in Math 172.

Introduction to problem solving using the computer systems and software; fundamentals of structured as well as object oriented programming techniques in a high level programming language such as C++; applications in natural and social sciences, and finance. Students are expected to complete several laboratory assignments.

CS 261 Data Communications I. 4 hrs.; 4 crs.
Prereq: Math 141 or Math 225, and CS 172.
Not open to students with credit in Math 493.

Introduction to principles of data communication: modems, communications, software, controllers, industry protocols, and networks.


CS 291 Introduction to Data Structures. 4 hrs.; 4 crs.
Prereq: CS 172; pre/co-req: Math 141 or Math 225.
Not open to students with credit in Math 291.

Data structuring using structured variables, stacks, queues, linked lists, and trees; recursive procedures; applications to sorting and merging. Students are expected to complete several laboratory assignments.


CS 292 Introduction to Data Base Management. 4 hrs.; 4 crs.
Prereq: CS 172, and Math 141 or Math 225.
Not open to students with credit in Math 292.

Introduction to record input/output; relational database design and implementation, the entity-relationship model, tables, functional dependencies, normal forms, design criteria techniques; applications. Students are expected to complete several laboratory assignments.


CS 300-301 Guided Study of Selected Topics in Computer Science. 1 hrs.; 1 cr.
Prereq: Departmental Permission

Guided study of selected topics in computer science under supervision of department faculty.

CS 334 Computer Graphics. 3 hrs.; 3 crs.
Prereq: CS 341 and Math 225.

Basic mathematical tools and computational techniques for modeling, and displaying three-dimensional geometric objects: transformations in the plane and 3-space; representation of curves and surfaces; representation of solids; raster graphics; color; strategies for visible-surface determination; illumination and shading algorithms.

CS 341 Data Structure II. 4 hrs.; 4 crs.
Prereq: Math 141 or Math 225, and CS 291.

Analysis of algorithms, searching, fast sorting, linked structures, recursion, backtracking, priority queues, trees, graph algorithms.

CS 357 Principles of Programming Languages 4 hrs.; 4 crs.
Prereq: CS 341 and Math 225

Principles of programming language design; implementation of procedural, functional, and logic programming languages including syntax, binding of variables, type coercion and equivalence (including weakly-typed languages); scope and extent of variables, parameter passing and environments; formal semantics. Programming projects will use programming languages which illustrate in practice the theoretical foundations.


CS 361 Data Communications II. 4 hrs.; 4 crs.
Prereq: CS 261.
Not open to students with credit in Math 494.

Communication parameters, protocol analysis and support, LAN/WAN structures. Troubleshooting methods, communication interfaces, network security. Printing server setup and management. TCP/IP, SLIP/PPP Connections. Dial-up Networks. These topics will be supported by a state-of-the-art computer laboratory where students can learn to setup and configure a LAN that implements these topics.


CS 371 Business Programming. 4 hrs.; 4 crs.
Prereq: CS 291.

Concepts and methods of object oriented program development with Visual Basic as applied to modern business applications. Topics include procedures, functions, forms, ActiveX controls, files, graphical data display, Object Linking and Embedding, Dynamic Data Exchange, user interface design, and applications to spreadsheet software. Students will be expected to complete several programming assignments.


CS 377 Artificial Intelligence 3 hrs.; 3 crs.
Prereq: CS 341 and Math 225.

Major ideas and techniques of Artificial Intelligence, knowledge representation, reasoning, and machine learning schemes; issues underlying the design of intelligent computational agents; implementation using the Lisp programming language.


CS 381 Software Development. 4 hrs.; 4 crs.
Prereq: Math 141 or Math 225, and CS 291.
Not open to students with credit in Math 381.

Software portability and reuse; overview of a design language such as Ada; object-oriented programming; exceptions handling; generics, packages; tasks and concurrency; applications of data structures and algorithm analysis. Students are expected to complete several laboratory assignments and a software project.


CS 382 Software Engineering. 3 hrs.; 3 crs.
Prereq: CS 381.
Not open to students with credit in Math 382.

The software life cycle; requirements specification; software process; prototyping; use of case tools; software testing, documentation and management; social and ethical issues; written reports and oral presentation of software projects.


CS 391 Object-Oriented Programming. 4 hrs.; 4 crs.
Prereq: CS 291.

Introduction to object-oriented programming. Concepts of constructor, destructor, inheritance and polymorphism. Use of Object linking and embedding (OLE). Use of Dynamic Link Library (DLL).

CS 392 Database Systems. 4 hrs.; 4 crs.
Prereq: CS 341 and Math 225, or CS 341 and CS 292

Entity-Relationship model, relational algebra, relational calculus, SQL, integrity constraints, functional dependencies, normalization of data, storage and file structure, transactions, concurrency control.


CS 397 Machine Organization / Assembler Language Programming. 4 hrs.; 4 cr.
Prereq: CS 291, the equivalent or permission of instructor.
Not open to students with credit in Math 397.

Computer structure, number systems, registers and addressing systems; data manipulation; related topics; assembly language programming. Students are expected to complete several laboratory assignments.


CS 400-401 Independent Study of Selected Topics in Computer Science. 2 crs.
Prereq: Departmental Permission

Independent study under supervision of department faculty.

CS 451 Operating Systems. 4 hrs.; 4 crs.
Prereq: CS 397.

Introduction to the fundamental concepts and practical issues of an operating system. Introduction to topics such as concurrency, program and process, files, critical sections and semaphores, threads, and communications.


CS 452 Unix Operating Systems. 3 hrs.; 3 crs.
Prereq: CS 341 and CS 451.

An in-depth study of the design and implementation of the Unix operating system, the data structure of the Unix kernel and the Unix file system.


CS 457 Automata and Computability. 4 hrs.; 4 crs.
Prereq: CS 291 and Math 225

Propositional logic, graphs and digraphs, alphabets, languages, deterministic and non-deterministic finite automata, regular expressions, language acceptors, grammars, Turing machines and computability.


CS 461 Network Computing. 4 hrs.; 4 crs.
Prereq: CS 291.

Computing in a network environment. Intranets, the server, TCP/IP, the Internet and World Wide Web (WWW), web publishing, Hyper Text Markup Language (HTML), Java.


CS 465 Cryptography and Network Security. 3 hrs.; 3 crs.
Prereq: CS 291 and Math 225

Ciphers, public and private keys, encryption and decryption, conventional encryption algorithms, modular arithmetic, Fermat and Euler theorems, RSA algorithm, network security.


CS 471 Windows Programming. 4 hrs.; 4 crs.
Prereq: CS 391.

User interface designs. Responding to Windows Events. Creating and using DLL (Dynamic Link Library), DDE (Dynamic Data Exchange), OLE (Object Linking and Exchange). OLE Automation, Developing Active X Controls. Microsoft Foundation Class, Database Interfaces (ODBC and SOL programming).


CS 485 Computer Architecture. 4 hrs.; 4 crs.
Prereq: CS 397.

Logical devices and digital circuits, data representation, register transfer, central processor organization, microprogram control and organization.


CS 491-499 Advanced Topics in Computing / Information Systems Management. 2 hrs.; 2 crs. (CS 491-492); 3 hrs; 3 crs. (CS 493-499).
Prereq: CS 291; depending on the topic offered, additional prerequisites may be determined by the department

Study of selected topics in Computing and/or Information Systems Management which are not covered in other course offerings, such as operating systems, case studies, exotic programming languages, compilers, microcomputer systems, integrated software, database design, networking, artificial intelligence and expert systems, computer algebra systems, etc. Students are expected to complete several laboratory assignments.

Recent Topics Offered: