Skip to Main Content
Navigation

400 Level Courses

COSC 402 - Software and Operating System Security (Spring only)

3 Credits

Prerequisite: COSC 330 or Consent of Instructor.

This course will examine security principles and practices important to operating systems and programming. Topics include: OS security architecture; memory security; authentication, including account and password protection mechanisms; assessing OS vulnerabilities; programming security and attacks such as buffer overflow attacks and writing secure code; application interaction; module control; auditing host security, including operational logs; malicious logic including viruses and virus protection; and security applications 

 

COSC 404 - Software Design and Development  (Fall only)

3 Credits

Prerequisites: Graduate Status.

Fundamental techniques of computer program development using a high-level language. Topics include assignment, expression, declarations, control statements, arrays, structures, functions and subroutines, block structure, string handling, and programming methodology, including top-down design, structured programming, programming style, and debugging.

 

COSC 409 - Gaming IV (Periodically)

3 Credits

Prerequisites: COSC 309.

This course will provide an introduction to current and future techniques for electronic game design and programming. Topics will include graphics game engines, motion generation, behavioral control for autonomous characters, interaction structure, and social and interface issues of multi-user play. The course will emphasize hands-on development of games

 

COSC 414 - Operating Systems (Spring only)

3 Credits

Prerequisite: COSC 214 and COSC 330.  

This course is a study of batch systems, interactive systems, spooling systems, multiprogramming systems, I/O processors and techniques, intra-system communication, deadlocks, indefinite postponement, microprogramming, parallelism, and pipelining.  Dynamic procedure activation, system structure, memory management, process management, and recovery procedures, and case studies of recent operating systems also will be covered.

 

COSC 418 - Principles of Computer Graphics (Fall only)

3 Credits

Prerequisite: COSC 214 and MATH 228.  

This course introduces students to basic concepts and essential principles of computer graphics from a programming perspective. It includes topics such as geometric modeling, lighting/shading, subdivision of curves and surfaces, mesh parameterization, texture mapping, morphing, and animation. Students will use a standard computer graphics library and develop simple algorithms of computer graphics to reinforce the concepts.

 

COSC 431 - Database Management (Fall only)

3 Credits

Prerequisite: COSC 214.  

This course is an introduction to concepts, design objectives, tools, and principles database management system software.  Descriptors, structures, database system architectures, entities, relationships, and data models.  The relational, network and hierarchical database models, normal forms, and canonical data structures will be studied as a basis for logical organization.  Relational algebra and calculus, introduction to concurrency, and transaction management are studied.

 

COSC 423 - Automata & Computation Theory (Periodically)

3 Credits

Prerequisite: COSC 208.  

This course is a study of finite-state machines, push-down automata, and Turing machines.  The Resolution Principle as applied to propositional first-order logic, and aspects of mathematical logic with emphasis on applications to computing machines are discussed.

 

COSC 428 - Design And Analysis of Algorithms (Spring only)

3 Credits

Prerequisite: COSC 214.  

This course will include the design and analysis of algorithms.  Algorithms that manipulate data structures such as lists, stacks, queues, trees, and graphs are discussed in terms of efficiency and existence.  Algorithms for data compression, memory management, and advanced hashing techniques will be studied.  Topics also include balancing algorithms, divide-and-conquer algorithms, dynamic programming, the greedy approach, backtracking, branch-and-bound,  advanced search/sort techniques, the P=NP problem, parallel algorithms, and newly promoted algorithms will be studied and researched.

 

COSC 430 - System Programming II (Spring only)

3 Credits

Prerequisite: COSC 330.  

This course is a study of Basic Systems software (assemblers, loaders and linkers, macro processors, etc.).  Basic constructs of the C/C++ language are reviewed with special emphasis on developing software using C/C++ in UNIX environment.  Also covered are UNIX file access primitives: open, creat, close, read, write, copyfile, lseek, fentl; files in multi-user environment: Call umask, commands access, chmod, chown, system calls link, unlink, rename, stat, fstat; directories, file systems and special files; process: fork, exec, wait, waitpid; process attributes; signals and signal handling; inter-process communication techniques; the terminal; sockets; I/O library; and library routines.

 

COSC 445 - Fundamentals of Cryptography & Applications (Spring only)

3 Credits

Prerequisite: COSC 208.

This course will examine the details of how some of the typical security protection measures work.  Topics include: Certificate Authorities (CA), Public Key Infrastructure, Rivest-Shamir-Adleman (RSA) architectures, Data Encryption Standard, Pretty Good Privacy, steganography, and security standards. In addition, key cryptologic terms, concepts, and principles will be defined and explained as well as authentication, access control, non-repudiation, data integrity, and confidentiality issues.

 

COSC 450 - Case Studies in Computer Security (Spring only)

3 Credits

Prerequisite: COSC 345

This course is an in-depth study of the practical aspects of computer security, including the study of common computer security vulnerabilities in a laboratory setting.

 

COSC 454 - Embedded System Design (Spring only)

3 Credits

Prerequisite: COSC 354.

This course explores the design of circuitry and single-purpose processors. The emphasis is on hardware/software codesign, using high-level tools to implement circuitry and program microprocessors. Topics covered are: digital circuitry, software development for general-purpose processors, single-purpose processors, memory systems, communication interfaces, finite state machines, concurrent processing models, control theory, integrated circuitry, synthesis level and verification.

 

COSC 461 - Compilers (Spring only)

3 Credits

Prerequisite: COSC 214.  

Grammars, lexical analyses, parsing algorithms, intermediate languages, storage assignment, code generation, global and peep-hole optimization, push-down stacks and run-time organizations are discussed.  A significant programming project is required.

 

COSC 465 - Software Engineering  (Fall only)  

3 Credits

Prerequisite: COSC 214.

This course introduces the student to major topics in software engineering such as: requirements specification, analysis and design, testing, project management, and implementation. Additional topics such as software life cycle models, the Unified Modeling Language (UML), agile software development techniques, configuration management, change control, and project documentation will be discussed.

COSC 473 - Artificial Intelligence (Fall only)

3 Credits

Prerequisite: COSC 214.  

This course is an introduction to basic concepts and techniques of artificial intelligence.  Topics include:  knowledge representation, search strategies, fuzzy and probabilistic reasoning, and theorem proving.  Applications of AI languages and the design and construction of Expert Systems are discussed.

 

COSC 474 - Machine Learning and Discover (Spring only)

3 Credits

Prerequisite: COSC 214.  

Artificial intelligence techniques for knowledge acquisition by computers. Fundamental problems in machine learning and discovery. Systems that learn from examples, analogies, and solved problems. Systems that discover numerical laws and qualitative relationships. Projects centering on implementation and evaluation.

 

 

COSC 477 - Virtual Reality and its Principles (Spring only)

3 Credits

Prerequisite: COSC 113 or concurrent registration or consent of Instructor.

This course introduces students to Virtual Reality (VR) hardware and software. it provides an opportunity for them to apply this knowledge to applications for education and games. This course applies cutting-edge virtual reality technology currently available in academia and industry. Students will design, model, and script the VR environment by developing a complete VR application as a group project.

 

COSC 480 - Senior Capstone (Spring only)

3 Credits

Prerequisite: COSC 350, COSC 354, COSC 414.  

This is a capstone course which integrates the material covered in core courses, namely Data Structures and Algorithms, Computer Organization, Systems Programming, Programming Languages, Computer Architecture and Operating Systems.  The emphasis is on solving problems which require concepts from more than one area.  Selected problems integrating the topics covered in these courses will be formulated, discussed, and solved.

 

COSC 485 - Data Communications and Networks (Fall only)

3 Credits

Prerequisite: COSC 214 and COSC 254.  

This course explores the fundamentals of data communication and computer networking: common carrier implications, tariffs, exchanges, concentrators, multiplexors, and buffering; circuit, message, and packet switching; network architectures and protocols; protocol standards, modeling, and analysis; cost and design; software considerations are emphasized.

 

COSC 490, 491, 492 - Selected Topics in Computer Science (Fall, Spring)

3 Credits

Prerequisite:  Consent of Instructor.  

(Note: COSC 492 may be offered for Cooperative Education credits.  Check class schedule or contact the Computer Science Department for more information).  These courses are presentations of selected modern developments, advanced topics, and problem solving in computer science.

 

COSC 495 - Senior Seminar In Computer Science (Fall only)

3 Credits

Prerequisite:  ENGL 361 or ENGL 362 and a minimum of one 400-level COSC course.  

Students research topics of interest including issues on professional ethics and responsibilities (ACM Code of Ethics and Computer Ethics).  Written reports and presentations of complete projects are required.


The Doctorate of Educational Leadership consists of a 60-semester-hour program. Candidates are required to complete the following courses: