Course Descriptions
Click on the course number/title for a full catalog description
CS 110 - Introduction to Internet Programming and Applications
CS 113 - Introduction to Computers
CS 115 - Workshop in Computer Science
CS 207 - Introduction to Computer Graphics
CS 210 - Computing and Culture
CS 213 - Applications of Computer Programming
CS 253 - Data and File Structures
CS 254 - Computer Organization & Assembly Language Programming
CS 290 - Topics in Computer Science
CS 300 - Computer Science Work Experience I
CS 301 - Computer Science Work Experience II
CS 354 - Digital Systems Design
CS 355 - Introduction to Systems Programming
CS 385 - Computer Architecture
CS 398 - Independent Study in Computer Science
CS 407 - Advanced Topics in Computer Science
CS 410 - Introduction to Software Engineering
CS 462 - Artificial Intelligence
CS 464 - Programming Languages
CS 473 - Simulation Techniques
CS 481 - Operating Systems Design
CS 483 - Theory of Computation
CS 490 - Computer Communications Networks & Distributed Processing
CS 491 - Wireless Communication Networks
CS 495 - Legal, Social, Ethical, and Economic Issues in Computing
CS 499 - Seminar in Computer Science
CS 500 - Computer Science for Computer Information Technology
CS 501 - Foundations of Computer Science I
CS 502 - Computing and Communications Technology
CS 530 - Advanced Software Engineering
CS 550 - Topics in Human-Computer Interaction
CS 570 - Topics in Artificial Intelligence
CS 580 - Topics in Database Systems and Applications
CS 590 - Topics in High Performance Computing and Communications
- CS 110 - Introduction to Internet Programming and Applications
-
[c] Skill Area II Examination of physical infrastructure of local and wide area networks, internet protocol implementation, world-wide web interface programming, interactive Java applet, and Visual Basic web programming.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: Mathematics Requirement - SK2 - CS 113 - Introduction to Computers
-
[c] Skill Area II Introduction to computer programming together with the consideration of the impact of computers on society. Emphasis on logical problem-solving and algorithms. No credit given to students with credit for CS 151, CS 213 or MATH 446, 471.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: Mathematics Requirement - SK2 - CS 115 - Workshop in Computer Science
-
[c] Skill Area IV Prereq.: MATH 099 or placement test. Topics vary and include application-oriented languages, computer literacy-oriented software packages, and human-computer interface procedures.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: University Requirement - SK4 - CS 151 - Computer Science I
-
[c] Skill Area II Prereq.: MATH 119 or MATH 121 or placement test. First course in Computer Science. Introduces the fundamental concepts of computer programming with an object-oriented language with an emphasis on analysis and design. Topics include data types, selection and iteration, instance variables and methods, arrays, files, and the mechanics of running, testing and debugging.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: Mathematics Requirement - SK2 - CS 152 - Computer Science II
-
[c] Prereq.: CS 151 and MATH 152 (formerly MATH 122). Further topics in object-oriented programming: enhancing classes (inheritance, polymorphism) and using Application Programmer Interface. Event-driven programming. Elementary searching and sorting techniques. Introduction to software engineering issues. Recursion.
3.000 Credit Hours 3.000 Lecture hours - CS 153 - Computer Science III
-
[c] Formerly CS 161. Prereq.: CS 152. Fundamental data structures: linked lists, stacks, queues. Introduction to binary search trees. Advanced sorting: quick and merge sorts. Study of a second programming language. Alternative implementations of linked lists. Basics of algorithmic analysis.
3.000 Credit Hours 3.000 Lecture hours - CS 207 - Introduction to Computer Graphics
-
Spring. [c] Skill Area II Prereq.: ART 110, 112 or 113 and either MATH 099 or placement test. This course will use the computer facilities to produce abstract designs and images, with special emphasis on color forms, shapes, texture, and basic design.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: Mathematics Requirement - SK2 - CS 210 - Computing and Culture
-
[c] Skill Area IV Evolution of computing from early data processing to global networking. Examination of how society has accepted and transformed role of digital technology within its cultures and institutions. Emphasis on human-computer interaction, electronic communities, and examples of their applications. Online resources will be used.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: University Requirement - SK4 - CS 213 - Applications of Computer Programming
-
[c] Skill Area II Prereq.: MATH 119 or 121 or 125 or placement test. Focuses on the use of programming techniques to solve problems encountered in the areas of mathematics, life science, physical science, engineering, education, and social science. No credit given to students with credit for CS 151.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: Mathematics Requirement - SK2 - CS 253 - Data and File Structures
-
[c] Prereq.: CS 152 and MATH 218. A software design course which develops concepts and techniques for structuring and manipulating data, both in the computer and on external storage devices. Topics include a review of basic data structures, balanced tree structure, graphs, sequential and direct access files, external sorting. An introduction to data base systems is also provided.
3.000 Credit Hours 3.000 Lecture hours - CS 254 - Computer Organization and Assembly Language Programming
-
[c] Prereq.: CS 151 or MATH 471. Concepts of assembler language, machine language, macro-instructions, subroutines, program checkout, interrupt structure of assemblers, and use of operating system. No credit given to students with credit for MATH 472.
3.000 Credit Hours 3.000 Lecture hours - CS 290 - Topics in Computer Science
-
Irregular. [c] Prereq.: CS 151 or equivalent, and permission of instructor. This course will provide an opportunity to introduce into the curriculum elementary topics of current interest. May be repeated with different topics for up to 6 credits.
1.000 TO 3.000 Credit Hours 1.000 TO 3.000 Lecture hours - CS 300 - Computer Science Work Experience I
-
[c] Prereq.: Permission of department. Students must go through Co-op office prior to receiving credit. A six-month employment experience relevant to the Computer Science program. No more than 6 credits of other course work may be taken concurrently.
3.000 Credit Hours 3.000 Other hours - CS 301 - Computer Science Work Experience II
-
[c] Prereq.: CS 300 and permission of department. Students must have a job which is different from their CS 300 job. Students must go through the Co-op office prior to receiving credit. A six-month employment experience relevant to the Computer Science program. No more than 6 credits of other course work may be taken concurrently.
3.000 Credit Hours 3.000 Other hours - CS 354 - Digital Systems Design
-
[c] Prereq.: CS 254 and MATH 218. PHYS 338 must be taken concurrently by those students whose program requires PHYS 338. An introduction to the analysis and design of digital systems in terms of logical and sequential networks. Various minimization techniques are studied.
3.000 Credit Hours 3.000 Lecture hours - CS 355 - Introduction to Systems Programming
-
[c] Prereq.: CS 161, CS 253 and CS 254 or MATH 472. Introduction to the design of systems software. Topics include comparative machine organizations, the design of assemblers and loaders, an introduction to operating systems and an introduction to compiler design.
3.000 Credit Hours 3.000 Lecture hours - CS 385 - Computer Architecture
-
Spring. [c] Prereq.: CS 354. The architecture of the computer is explored by studying its various levels: physical level, operating system level, conventional machine level and higher levels. An introduction to microprogramming and computer networking is provided.
3.000 Credit Hours 3.000 Lecture hours - CS 398 - Independent Study in Computer Science
-
On demand. [c] Prereq.: CS 152 and CS 254. Special independent work to meet individual interest in areas not covered by regular curriculum. Work will be under the supervision of a faculty member and in an area and for an amount of credit agreed upon prior to registration for the course.
1.000 TO 3.000 Credit Hours 1.000 TO 3.000 Other hours - CS 407 - Advanced Topics in Computer Science
-
[c] Prereq.: CS 152 and CS 254 and permission of instructor. This course provides an opportunity to introduce into the curriculum topics of interest and new courses on an experimental basis. May be repeated with different topics for up to 6 credits.
1.000 TO 3.000 Credit Hours 1.000 TO 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 410 - Introduction to Software Engineering
-
Irregular. [c] Prereq.: CS 253 or (for graduates) CS 501. An examination of the software development process from the initial requirement analysis to the operation and maintenance of the final system. The scope of the course includes the organization of software development projects, the verification and validation of systems, the problems of security and privacy, and the legal aspects of software development, including software protection and software liability.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 423 - Computer Graphics
-
Fall. [c] Prereq.: CS 253 or (for graduates) CS 501. Wire frame and solid graphics in two and three dimensions, data structure for computer graphics, geometrical transformations in computer graphics, raster, and vector display device technologies.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 425 - Image Processing
-
Spring. [c] Prereq.: CS 253. Theory and algorithms of image processing and their implementation in computer programs. Image representation, sampling theory, image transforms, image enhancement, texture analysis, feature extraction, and computer vision.
3.000 Credit Hours 3.000 Lecture hours - CS 460 - Database Concepts
-
Irregular. [c] Prereq.: CS 253 or (for graduates) CS 501. Data base systems are considered from both the designer's and user's point of view. Physical implementation and data access techniques are studied.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 462 - Artificial Intelligence
-
Spring. [c] Prereq.: CS 253 or (for graduates) CS 501. Presentation of artificial intelligence as a coherent body of ideas and methods to acquaint the student with the classic programs in the field and their underlying theory. Students will explore this through problem-solving paradigms, logic and theorem proving, language and image understanding, search and control methods, and learning.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 463 - Algorithms
-
Irregular. [c] Prereq.: CS 253 or (for graduates) CS 501. Topics include algorithms in combinatorics, integer and real arithmetic, pattern matching, list processing, and artificial intelligence. Algorithmic analysis and domain-independent techniques are also considered.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 464 - Programming Languages
-
Irregular. [c] Prereq.: CS 253 or (for graduates) CS 501. Emphasis on programming languages as one of many tools in the software development effort. Comparison of different language usages of data types, information hiding, control structures, block structure, sub-programs, re-entrance, and recursion.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 465 - Compiler Design
Fall. [c] Prereq.: CS 355. Current techniques of compiler writing. Introduction to formal grammar and parsing techniques is given. Problems of semantic phase are discussed and some solutions are given. Optimization techniques are discussed.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program- CS 473 - Simulation Techniques
-
Irregular. [c] Prereq.: CS 152 or CS 213, and STAT 315. Basic principles of simulation methods using digital computers. Topics covered include random number generators, stochastic variate generators, computer models, and simulation languages.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 481 - Operating Systems Design
-
Spring. [c] Prereq.: CS 355. Theory and design of computer operating systems. Topics include machine and interrupt structure, memory, processor, device, and information management.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 483 - Theory of Computation
-
Irregular. [c] Prereq.: MATH 218 and CS 463. The concept of algorithm, correctness and efficiency of algorithm, decidable vs. undecidable problems, recursion, halting problem, formal languages, context free and context-sensitive grammars, and introduction to automata and parallel algorithms.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 490 - Computer Communications Networks & Distributed Processing
-
Irregular. [c] Prereq.: CS 253 and CS 254. Study of networks of interacting computers. The problems, rationale, and possible solution for both distributed processing and distributed data bases will be examined.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 491 - Wireless Communication Networks
Irregular. [c] Prereq.: CS 253 and CS 254. Theory and analysis of wireless and mobile computing, and wireless communication networks. Topics include wireless network architectures, mobile Internet protocols, mobility management algorithms, performance and optimization issues, and emerging technologies.
3.000 Credit Hours 3.000 Lecture hours- CS 492 - Computer Security
-
Irregular. [c] Prereq.: CS 253 and CS 254 and [CS 490 or permission of instructor]. The fundamentals of computer and network security issues are explored. Topics include classical and modern techniques of conventional encryption; algorithms; public-key encryption, and hash functions; network security, with regard to e-mail, IP, and the Web; and system security intruders, viruses, worms, and firewalls.
3.000 Credit Hours 3.000 Lecture hours - CS 495 - Legal, Social, Ethical, and Economic Issues in Computing
-
Spring. [c] Prereq.: Permission of instructor. Topics include privacy, security, law of torts in computing, and legal protection of software.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 498 - Senior Project
-
[c] Prereq.: Senior standing, 21 credits toward major including one advanced course. Opportunity for student to participate in design and implementation of large problem with small group of people. Problem will be chosen in consultation with instructor.
1.000 TO 3.000 Credit Hours 1.000 TO 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 499 - Seminar in Computer Science
-
Irregular. [c] Opportunity for student to explore topics of current interest not covered in normal curriculum. Majors only.
3.000 Credit Hours 3.000 Lecture hours
Course Attributes: 400 level crs-Graduate Program - CS 500 - Computer Science for Computer Information Technology
-
Prereq.: Permission of department chair or C.I.T. program coordinator. Concepts of computer science, including software analysis and design, inheritance, polymorphism, recursion, elementary sorting, and programming using arrays, sequential files, and linked lists.
3.000 Credit Hours 3.000 Lecture hours - CS 501 - Foundations of Computer Science I
-
Spring. [c] Prereq.: CS 152 or permission of instructor. Software design for structuring and manipulating data. Topics include stacks, queues, hash tables, trees, graphs, advanced sorting, and analysis of algorithms.
3.000 Credit Hours 3.000 Lecture hours - CS 502 - Computing and Communications Technology
-
Spring. [c] Prereq.: CS 501. Comprehensive coverage of the concepts of computer networking, and computer architecture and organization required to enable students to understand and efficiently utilize computing and communication resources. Development of distributed computer applications.
3.000 Credit Hours 3.000 Lecture hours - CS 530 - Advanced Software Engineering
-
Spring. (O) [c] Prereq.: CS 501, CS 502. Study of the software lifecycle including requirements analysis, specification, design, coding, testing, and maintenance. Includes proofs of correctness and techniques of formal specification.
3.000 Credit Hours 3.000 Lecture hours - CS 550 - Topics in Human-Computer Interaction
-
Irregular. [c] Prereq.: CS 501, CS 502. Study of the design, evaluation and implementation of interactive computing systems for the joint performances of tasks by humans and machines, algorithms and programming of the interface, and engineering concerns and design tradeoffs. Topics include computer- supported cooperative work, modeling intelligence, multimedia systems, and user interface design.
3.000 Credit Hours 3.000 Lecture hours - CS 570 - Topics in Artificial Intelligence
-
Irregular. [c] Prereq.: CS 501, CS 502. Topics include advanced techniques for symbolic processing, knowledge engineering, and building problem solvers.
3.000 Credit Hours 3.000 Lecture hours - CS 580 - Topics in Database Systems and Applications
-
Irregular. [c] Prereq.: CS 501, CS 502. Database technology needed to develop and manage sophisticated database systems. Topics include design of database management systems, advanced database applications, hypermedia, and object-oriented database management systems.
3.000 Credit Hours 3.000 Lecture hours - CS 590 - Topics in High Performance Computing and Communications
-
Irregular. [c] Prereq.: CS 481, CS 501, CS 502. Design, implementation, and evaluation of high performance computing and communications technologies for the development of distributed multimedia systems. Topics include distributed systems, parallel computing, modern operating systems, and network administration.
3.000 Credit Hours 3.000 Lecture hours