BSU Catalog Home | Graduate Computer Science Program | All-University Courses and Descriptions
NOTE: Please see your advisor regarding course sequencing and any expected preparation.
5280 PROGRAMMING LANGUAGE STRUCTURES (3 credits) Uses historical perspectives and several modern high level languages to examine principles and paradigms supported by programming languages. Prerequisite: CS 5528.
5298 COMPILER CONSTRUCTION (3 credits) The theory, design, and construction of a compiler. Prerequisite: CS 5528.
5350 EVENT-DRIVEN PROGRAMMING IN A WINDOWS ENVIRONMENT (3 credits) Use of a language suitable for creating even-driven programs while focusing on methodology suitable for developing event handlers in windows-oriented programs.
5361 SOFTWARE ENGINEERING I (2 credits) A project-based course that focuses on software design issues. Prerequisite: Consent of instructor.
5362 SOFTWARE ENGINEERING II (2 credits) A project-based course that focuses on software implementation issues and uses a design document created in CS 5361. Prerequisite: CS 5361.
5390 SOCIAL, ETHICAL, AND PROFESSIONAL ISSUES IN COMPUTING (3 credits) Features topics related to standards for computing professionals. Prerequisites: At least one 5000- or 6000-level CS course.
5507 FILE PROCESSING AND DATABASE SYSTEMS (3 credits) An examination and analysis of algorithms and file structures used by computer systems including sequential, direct (random) access, and keyed (indexed) files. Covers the creation, deletion, modification, and maintenance of files and their use in databases.
5528 DATA STRUCTURES AND ALGORITHMS (3 credits) Study of advanced abstract information storage structures, including priority queues, binary trees, generalized trees, and graphs. Study of algorithm development techniques, including divide and conquer, greedy algorithms, and dynamic programming. Prerequisite: Consent of instructor.
5560 DATA COMMUNICATION AND NETWORKS (3 credits) Principles of data communications as applied to modern computer networks.
5610 INTRODUCTION TO OPERATIONS RESEARCH (3 credits) A computer-oriented survey of linear programming, integer programming, dynamic programming, network analysis, queuing systems, inventory control, game theory, and discrete system simulation.
5627 THEORY OF COMPUTATION (3 credits) Explores the theoretic roots and limits of computing. Prerequisite: MATH 5210.
5718 COMPUTER GRAPHICS (3 credits) Fundamental concepts of computer graphics with emphasis on understanding underlying principles. Topics include line and curve drawing, windowing, clipping, shading, geometric transformations, and 3-dimensional viewing.
5840 OPERATING SYSTEMS (3 credits) Fundamentals of operating system design with emphasis on at least one modern operating system. Topics include scheduling, memory management, paging, file management, and mutual exclusion. Required work will include programming investigations. Prerequisite: CS 5528.
6240 COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE (3 credits) Examines the architecture of and assembly language for a microcomputer. Machine language coding, binary and hexadecimal arithmetic, microcomputer architecture, and an instruction set are covered.
6350 FILE MANAGEMENT TECHNIQUES (3 credits) An in-depth examination of files and file management. Sequential and random (direct) access files are discussed and implemented in a high level language. Prerequisite: CS 6240.
6420 CLASSROOM INTEGRATION OF COMPUTER SOFTWARE (3 credits) An investigation of the current research and literature dealing with the integration of software into the classroom curriculum. Includes software review and evaluation and provides hands-on experience using educational software.
6470 AUTHORING CAI SOFTWARE (3 credits) An introduction to authoring languages and the creation of CAI packages. Designed to be a project oriented course in which the student produces a CAI package. Prerequisite: CS 6420.
6800 CURRENT ISSUES IN COMPUTER SCIENCE EDUCATION (3 credits) Guided readings and a review of the current literature dealing with applications, implications, and problems of computer science education. Students will be expected to make class presentations and lead discussions concerning the readings. Prerequisite: CS 6420.