Computer Science Course Descriptions

Faculty | Major | Minors | Mathematics Course Descriptions
Statistics Course Descriptions | Computer Science Course Descriptions
Other Departments

CSCI 101   Fundamentals of Computing
Required: Computer Science and Mathematics majors. Recommended for science majors.
The computer is examined as a machine, problem solving tool, and an information depository. An overview of the disciplines of computer science and information science will be presented. Students will receive hands-on experience with the various computing facilities at The Citadel.
Students may not receive credit for this course and CSCI 110.

CSCI 110   Microcomputer Applications    3 Credit Hours
Required for all business administration majors.
This course is intended for students having little or no computer experience.
An introduction to computer systems and computer applications is presented in an IBM environment. Available software packages in the areas of word processing, database management, spreadsheets, and communications are introduced with applications in management and social sciences.
Credit not allowed for both CSCI 110 and CSCI 115.

CSCI 201   Introduction to Computer Science I    4 Credit Hours
Prerequisite: CSCI 101 or approval of department head.
Required of all mathematics and computer science majors.
No previous computer programming experience is needed for this course.
An introduction to problem solving and algorithm development using C++.
Topics include computer organization, operating systems, structured programming, and program modularization. Assignments involve designing, coding, debugging, and documenting computer programs.
Lecture: three hours; laboratory: two hours.

CSCI 202   Introduction to Computer Science II    4 Credit Hours
Prerequisite: CSCI 201; prerequisite or corequisite MATH 206.
Required for B.S. degree in computer science.
A continuation of the material covered in CSCI 201. Emphasis is placed on the development of a disciplined approach to program development and the enhancement of problem solving skills. Topics include data abstraction, recursion, linked data structures, stacks and queues, and top-down development of programs.
Lecture: Three hours; laboratory: two hours.

CSCI 208   Introduction to COBOL   3 Credit Hours
Prerequisite: CSCI 216
The fundamentals of COBOL programming with emphasis on file manipulation. Assignments involve designing, writing, and debugging programs with application in business or other data processing environments. The course includes the organization, management, and development of a large scale group project.

CSCI 216   Management Information System    3 Credit Hours
Prerequisite: CSCI 110 or approval of the instructor
Computer-oriented information systems. Program construction in dBASE with applications in the management and social sciences is presented in a microcomputer environment on the IBM computer. Topics include data organization and collection, file organization, sort and search techniques, and on-line information retrieval methods and processes.
The course is designed as a follow-up to CSCI 110.

CSCI 217   Internet Services and Information Resources   3 Credit Hours
This course introduces the student to the Internet, its services and the basic utilities for finding, retrieving, sending, storing, requesting, and generating network information. Topics include electronic mail, ftp, internet discussion groups, how to use the World Wide Web to locate resources, and how to create Web documents.

CSCI 223   Data Structures   3 Credit Hours
Prerequisites: CSCI 202 and MATH 206
Required for B.S. degree in computer science.
Formal specification of abstract data types, implementation of these and analysis of algorithms. Topics include list and set representation methods, trees and graphs. Data structures used include arrays, queues, binary trees, hash tables, priority queues, search trees, balanced trees.

CSCI 305   Computer Organization and Programming    3 Credit Hours
Prerequisites: CSCI 202 and MATH 206
Required for a B.S. degree in computer science.
An introduction to computer architecture and assembly language programming with an emphasis on the latter. Relationship of the conventional machine level of a modern computer system with its other layers. Topics are chosen from addressing; machine instructions; I/O; subroutines; parameters; recursion; stacks; coroutines; exceptions; interrupts; number systems and arithmetic; and the physical, digital, and the microprogramming levels.

CSCI 320   Database Design and File Structures    3 Credit Hours
Prerequisites: CSCI 202 and MATH 206
Required for B.S. degree in computer science.
An introduction to the logical and physical structures of computer database systems. Topics include data models, query languages, relational database design, database constraints, and file structure.

CSCI 355   Programming Languages   3 Credit Hours
Prerequisite: CSCI 315 and CSCI 262
Required for B.S. degree in computer science.
Programming language concepts and constructs with emphasis on the run-time behavior of programs. Topics include imperative, functional, logic and object-oriented programming paradigms, language syntax and semantics, and global properties of programming languages including scope, parameter passing, storage allocation and the binding time of constituents.

CSCI 365   Object Oriented Programming Using C++   3 Credit Hours
Prerequisite: CSCI 315
An introduction to the object oriented programming philosophy and a detailed coverage of programming in C++.

CSCI 386   Applied Operations Research    3 Credit Hours
Prerequisites: One of CSCI 110 or CSCI 115, one semester of calculus, and one of STAT 160 or BADM 205
An introduction to the application of quantitative techniques to the managerial decision-making process. The major mathematical models associated with operations research are presented. Topics include linear programming, the transportation problem, network analysis, queuing theory, inventory theory, and forecasting.
The course is applications oriented, and the model building process is emphasized. Students use applications software to solve realistic problems.

CSCI 405   Operating Systems and Computer Architecture    3 Credit Hours
Prerequisites: CSCI 315 and CSCI 262
Required for B.S. degree in computer science.
An introduction to the concepts of modern operating system design and the architectural features of modern computer systems and a study of the implementations of these components in actual operating systems. Topics include data structures and algorithms to support process control, concurrency, and scheduling; memory management, including virtual memory architectures; I/O and file management; and networks and distributed systems.

CSCI 412   Principles of Compiler Design    3 Credit Hours
Prerequisite: CSCI 355
A study of the component operations of a compiler, including lexical analysis, syntax analysis, scope analysis, and code generation, and a discussion of related implementation issues. A significant part of the course will be a project to develop a compiler for a simplified programming language.

CSCI 420   Software Engineering   3 Credit Hours
Prerequisite: CSCI 315
An introduction to current techniques used in large-scale software development. Topics include requirements analysis, functional specification, systems design, implementation testing, and maintenance.
The course includes the organization, management, and development of a large scale software group project.

CSCI 450   Formal Languages and Automata    3 Credit Hours
Prerequisites: MATH 206 and CSCI 202
An introduction to analytical methods and techniques used in the study of computer science. Topics include languages and operations, finite automata and regular sets, context-free grammars, pushdown automata, Turing machines and the languages corresponding to them, other classes of languages (linearly bounded, context-sensitive), and the Chomsky hierarchy.

CSCI 455   Artificial Intelligence Techniques    3 Credit Hours
Prerequisite: CSCI 355
A survey of artificial intelligence concepts. Topics include knowledge representation, search strategies, logical and probabilistic reasoning, learning, natural language understanding, expert systems, and computer vision.
LISP and PROLOG are used to illustrate implementation of the concepts.

CSCI 490   Topics in Computer Science    3 Credit Hours
Prerequisite: Permission of the instructor
Selected topics in computer science. The offering of this course will depend upon the interest of the students, the availability of an instructor, and approval of the department head. Since the content of the course may change, a student may repeat the course for credit with the consent of the department head.

CSCI 491   Internship   3 Credit Hours
Prerequisite: Senior standing
Open to senior computer science majors with a CSCI GPA of at least 2.500.
This course gives senior students real-world work experience to complement the classroom education they have already received. Interns will learn about the variety of issues involved in developing, implementing, and managing computing resources in a real-world setting. Interns will spend ten to twelve hours per week in an area business working alongside an experienced computing professional or as part of a development team.

CSCI 492   Senior Seminar in Computer Science    1 Credit Hour
Required of all computer science majors. Open only to seniors.
Important topics in computer science will be studied and the results presented.

CSCI 499   Senior Research Project   3 Credit Hours
Prerequisite: Approval of department head
A research project with a required formal paper. Recommended for students planning graduate work. Enrollment based upon a written proposal accepted by the instructor and approved by the department head.
 

Faculty | Major | Minors | Mathematics Course Descriptions
Statistics Course Descriptions | Computer Science Course Descriptions
Other Departments

  Home
THE CITADEL
171 Moultrie Street • Charleston, SC 29409 • 843-953-5000


Copyright ©2000 by The Citadel
Please send comments and suggestions about this site to webmaster@citadel.edu