Computer Science Course Descriptions
Please note that the provided information is presented as a
convenience for the student.
If any of the information differs from that of the current catalog,
the catalog takes precedence.
Please consult your academic advisor or any mathematics faculty
member if you have any questions about the information presented
here:
CSC
1010
VISUAL BASIC PROGRAMMING (for non-majors)
Two hours.
Introduction to design and development of computer programs using Visual BASIC. Topics include design of visual human-computer interfaces, calculations, decision making, and loops. Does not count towards the Computer Science major or minor or the Computer Science/Mathematics major.
CSC
1020
BITS BOTS AND GAMES (for non-majors)
Two hours.
An introduction to current computer science topics such as human-computer interaction, robotics, computer games, and societal issues. Does not count towards the Computer Science major or minor or the Computer Science/Mathematics major.
CSC
2100
DISCRETE STRUCTURES
Four hours.
Same as MAT 2100. Mathematical topics fundamental to the study of theoretical computer science such as algorithms, Boolean algebras, counting techniques, combinatorics, graph theory, languages and recurrence relations.
Gen Ed: Qn
CSC
2231
PROGRAMMING AND DATA STRUCTURES I
Four hours.
Concepts, terminology, and methods of object-oriented programming, algorithms and problem-solving, fundamental data structures. Java Programming.
CSC
2232
PROGRAMMING AND DATA STRUCTURES II
Four hours.
Prerequisite: CSC 2231. Event-driven programming, fundamental algorithms, algorithmic analysis and complexity, C++ programming with pointers and memory management.
CSC
3310
COMPUTER ORGANIZATION AND ARCHITECTURE
Four hours.
Prerequisite: CSC 1010 or CSC 2231 or sophomore standing. Introduces students to digital systems, logic circuits, and the organization and architecture of computer systems, beginning with the standard von Neumann model and then moving forward to more recent architectural concepts.
CSC
3335
DATABASE ANALYSIS AND DESIGN
Two hours.
Prerequisite: CSC 1010 or CSC 2231 or sophomore standing. Introduction to the theory and practice of database systems. Focus on analysis and design of relational databases, including distributed systems and large business and scientific databases.
CSC
3350
COMPUTER GAME DESIGN
Four hours.
Prerequisites: CSC 2231 and CSC 2232. Storyboarding, technology, science, and graphics involved in the creation of computer games. Emphasis on hands-on design and development of games.
CSC
3370
PROGRAMMING LANGUAGE CONCEPTS
Four hours.
Prerequisites: CSC 2231 and CSC 2232 and CSC/MAT 2100. Study of the fundamental concepts of modern programming languages. Comparison of programming language design, implementation, and use in different programming language paradigms. Design and implementation of simple programming languages.
CSC
3951
COMPUTER SCIENCE RESEARCH I
Two or three hours.
Prerequisites: CSC 2231 and CSC 2232 and permission of the instructor and minimum 3.0 grade point average. Directed research in a computer science topic to be selected in consultation with the faculty. Semester-long project culminating in a formal presentation and detailed technical documentation of the research process and results.
CSC
4400
SOFTWARE ENGINEERING
Four hours.
Prerequisites: CSC 2232 and successful completion of coursework that satisfies Effective Communication SLOs A and B. Concepts and methods of large-scale software development. Requirements analysis, specification, design, implementation, testing, and documentation. Professional and ethical responsibilities. Risks and liabilities of computer-based systems. Individual responsibility, teamwork, professionalism, and effective written and oral technical communication are emphasized in a semester-long project.
Gen Ed: EC-C
CSC
4410
OPERATING SYSTEMS AND CONCURRENCY
Four hours.
Prerequisite: CSC 2232. Components of an operating system, processes, scheduling, memory management, and file systems. Concurrent programming and synchronization.
CSC
4640
SELECTED TOPICS IN COMPUTER SCIENCE
Four hours.
Prerequisite: CSC 2232 or permission of the instructor. Covers contemporary topics in computer science. (For example: Artificial intelligence, robotics.) Course may be repeated for credit with a different topic.
CSC
4645
SELECTED TOPICS IN COMPUTER SCIENCE AND MATHEMATICS
Two or four hours.
Same as MAT 4645. Prerequisite: Permission of instructor. Covers contemporary topics at an advanced level in applied mathematics and computer science. (For example: numerical methods, graph theory.) Course may be repeated for credit with a different topic.
CSC
4952
COMPUTER SCIENCE RESEARCH II
Two or three hours.
Prerequisites: Senior standing and CSC 3951 and permission of the instructor, and minimum 3.0 grade point average. Directed research in a computer science topic to be selected in consultation with the instructor. Semester-long project culminating in a formal presentation and detailed technical documentation of the research process and results.
CSC
4960
INTERNSHIP
Three hours.
Prerequisites: Senior standing and permission of the instructor and minimum 2.5 grade point average. Correlating theory and practice in an operating setting; supervision by cooperating practitioners and faculty in several areas of application. Does not count towards the Computer Science/Mathematics major.
CSC
4999
COMPUTER SCIENCE SENIOR SEMINAR
Two hours.
Prerequisite: Senior standing. Presentation and delivery of papers from the current computer science literature. In-depth study of a computer science topic culminating in a formal presentation and paper.