Skip to Main Content

Columbus State University

Compare Courses

CPSC 3121. Assembly Language Programming 1 (3-0-3) Prerequisite: CPSC 2105 with a grade of "C" or better. An introduction to assembly language for mainframes or PC's. Topics include machine architecture (registers, memory, instruction formats), character data processing, decimal arithmetic, binary arithmetic, subroutine and program linkage.


CPSC 3125. Operating Systems (3-0-3) Prerequisites: CPSC 2105 and CPSC 2108, both with grades of "C" or better. An introduction to basic operating system level software concepts. Course topics include processes, threads, symmetric multi-processing, thread synchronization and memory management techniques.


CPSC 3131. Database Systems 1 (3-0-3) Prerequisite: CPSC 1302 with a grade of "C" or better. The course covers the fundamentals of database systems. Topics to be covered include the following: file systems and database concepts, database models, relational database model, introduction to SQL, database design and implementation, database integrity, and normalization of database tables. Implementation techniques using commercial DBMS will be considered. The course includes lab work and individual database application programming projects.


CPSC 3165. Professionalism in Computing (3-0-3) Prerequisite: Junior or Senior Standing. The social impact, implications and effects of computers on society, and the responsibilities of computer professionals in directing the emerging technology. Includes the examinations of reliable, risk-free technologies, and systems which provide user friendly processes. Specific topics include an overview of the history of computing, computer applications and their impact, the computing profession, and the legal and ethical responsibilities of professionals.


CPSC 3175. Object-Oriented Design (3-0-3) Prerequisite: CPSC 2108 with a grade of "C" or better. An introduction to designing windows applications using object-oriented and component technologies. The emphasis of this course is in event-driven programming using controls and components to develop desktop windows applications. The primary focus of the course is on the full usage of the Object-Oriented Paradigm for problem-solving and software development using an object-oriented programming language and the Standard Object Modeling Language (UML).


CPSC 4175. Software Engineering (3-0-3) Prerequisites: CPSC 3175 with a grade of "C" or better. In this course, students are introduced to the basic principles of software engineering. The course focuses on the issues, methods and tools applied at every phase of the iterative development life cycle spanning from the conception of the actual requirements, through the analysis, design, development, testing, deployment and maintenance of the software product. Other subjects include project management and quality assurance. Students must complete a significant software project.


CPSC 4176. Senior Software Engineering Project (3-0-3) Prerequisite: CPSC 4175 with a "C" or better. The course encompasses a practical application of knowledge and skills mastered in the Computer Science curriculum through the development of a significant project. Students will apply a software engineering methodology in a team environment to develop a complex real-world application with an external customer under the guidance of instructor. Team members are involved in all phases of the software development life cycle.


CPSC 4505. Undergraduate Research (0-0-1) Prerequisite: CPC 2108 with a grade of "C" or better and consent of the head of the School of Computer Science. Students work in conjunction with a faculty member to select a research topic, complete a written research proposal and execute a research plan. Students will prepare both written and oral presentations of their work and present their work at one or more local, regional or professional meetings, or submit their work for publication. (Course fee required.)


CPSC 5115. Algorithm Analysis and Design (3-0-3) Prerequisites: CPSC 2108 and MATH 5125, both with grades of "C" or better. This course emphasizes the understanding of data structures and algorithms from an analytical perspective rather than from an implementation standpoint. The concepts developed allow discussion of the efficiency of an algorithm and the comparison of two or more algorithms with respect to space and run-time requirements. Analytical methods are used to describe theoretical bounds as well as practical ones. In general, this course addresses the constraints that affect problem solvability.


CPSC 5135. Programming Languages (3-0-3) Prerequisite: CPSC 2108 with a grade of "C" or better. Emphasizes the run-time behavior of programs. Languages are studied from two points of view: (1) the fundamental elements of languages and their inclusion in commercially available systems; and, (2) the difference between implementations of common elements in languages.


CPSC 5138. Advanced Database Systems (3-0-3) Prerequisite: CPSC 3131 with a grade of "C" or better. This course is intended for computer science students and professionals who have already acquired a basic background on databases. The objective of the course is to introduce the students to the most advanced concepts and recent issues in several areas of database technology, including the following: advanced database design and implementation, transaction management and concurrency control, distributed database management systems, object-oriented databases, client/server systems. The course includes lab work and individual database application projects.


CPSC 5155. Computer Architecture (3-0-3) Prerequisite: CPSC 3121 with a grade of "C" or better. Review of combinational and sequential logic. Description of computer memory. Study of the instruction set architecture and addressing modes of a simple computer. Design on the computer control unit including both hard-wired and microprogrammed CPU's. Design of Input/Output including program-controlled I/O, interrupted-driven I/O, direct memory access (DMA), and I/O channels.


CPSC 5157. Computer Networks (3-0-3) Prerequisite: CPSC 2108 with a grade of "C" or better. Local area networks, wide area networks, and internets. Protocols and the ISO Open Systems Interconnect reference model. Design, analysis, and performance evaluation. Emphasis on data link, network, and transport protocols.


MATH 2125. Introduction to Discrete Mathematics (3-0-3) Prerequisite: MATH 1113 or MATH 1131 with a grade of "C" or better or a satisfactory math placement score. Topics include logic and proof, sets, functions, algorithms, the integers, matrices, mathematical reasoning, induction, recursion, counting, discrete probability, relations, graphs, trees, and Boolean algebra. (Course fee required.)


MATH 5125. Discrete Mathematics (3-0-3) Prerequisites: MATH 1132 with a grade of "C" or better or MATH 2125 with a grade of "C" or better. Topics include enumeration, relations, graphs, trees, and modeling computation.


STAT 1127. Introductory Statistics (3-0-3) Prerequisite: Satisfactory score on math placement exam or completion of any of the following courses with a grade of "C" or better: MATH 1001, MATH 1101, MATH 1111, MATH 1113, MATH 1125, or MATH 1131. Survey of modern statistical methods applicable to behavioral, biological, health and managerial sciences, and education. Organization and analysis of data, probability distributions, sampling distributions, point estimation, confidence interval, hypothesis testing, and regression analysis. (Course fee required.)