May 03, 2024  
ARCHIVED 2022-2023 Undergraduate Catalog 
    
ARCHIVED 2022-2023 Undergraduate Catalog [ARCHIVED CATALOG]

Course Descriptions


The courses listed herein  have been approved by the faculty as authorized by the Board of Trustees.  Prerequisites (if any) and the General Education Requirement(s) which each course fulfills (if any) are noted following each course description.

Current course offerings are available in Merlin.

 

Computer Science

  
  • CSCE 160 - Introduction to Computer Programming

    4.00 credit hours
    An introduction to computer science and programming, emphasizing the development of algorithms and problem solving skills using both procedural and object-oriented approaches. Topics include data types; I/O; arithmetic, relational and logical operators; control structures; functions; simple data structures; different computing environments such as the Linux operating system are also explored. Integrated laboratory.


    Click here for the schedule of classes.


  
  • CSCE 210 - Data Structures

    4.00 credit hours
    Elementary data structures and algorithms. Topics include the design, implementation, application and variations of the following: linked lists, stacks and queues, different types of trees, searching and sorting algorithms, graphs, and introduction to analysis of algorithms. Extensive programming required. Integrated laboratory.

    Prerequisite(s): Minimum grade of C- in CSCE 160 .


    Click here for the schedule of classes.


  
  • CSCE 220 - Computer Organization and Design

    4.00 credit hours
    Basic computer architecture including combinational circuits, instruction sets, microprogramming, assembly language, I/O (devices, busses and interrupts) and memory systems and organization. Integrated laboratory.

    Prerequisite(s): Minimum grade of C- in CSCE 160 .


    Click here for the schedule of classes.


  
  • CSCE 230 - Discrete Structures

    4.00 credit hours
    Fundamental topics in mathematics and computer science including: formal logic, proof techniques, sets, relations and functions, combinatorics and counting techniques, induction and recursion, discrete probability, number theory and cryptography, graphs, Boolean algebra, finite state machines and modeling computation, program verification and algorithm analysis. Programming may be required.

    Prerequisite(s): CSCE 160 .


    Click here for the schedule of classes.


  
  • CSCE 297 - Internship

    0.00-12.00 credit hours
    Valuable professional experiences supplement classroom instruction and allow students to apply theories and concepts to broader issues and system. Students explore career options within a specific area of study and critically reflect on the experience in a structured manner. May be repeated with different professional experience.

    Prerequisite(s): Sophomore standing.


    Click here for the schedule of classes.


  
  
  • CSCE 306 - Object-Oriented Software Development

    4.00 credit hours
    Object-oriented design and implementation of large scale software. Topics include object-oriented modeling and design, such as the use of UML and software design patterns, object-oriented language features, such as inheritance, polymorphism, encapsulation and overloading, and using existing class libraries. Extensive programming required. Integrated laboratory.

    Prerequisite(s): Minimum grade of C- in CSCE 210 .


    Click here for the schedule of classes.


  
  • CSCE 315 - Web Applications

    4.00 credit hours
    Development of web applications. Topics include HTTP, the Browser and Document Object Models, Server-side technologies such as Java Servlets, ASP.NET MVC and Node JS/Express; Client-side technologies JavaScript, AJAX and JQuery, and server-side database access. Introduction to Single Page Apps and Restful services using JAXRS and ASP.NET Web API. Extensive programming required.

    Prerequisite(s): CSCE 210 .


    Click here for the schedule of classes.


  
  • CSCE 320 - Computer Architecture

    4.00 credit hours
    Introduction to digital computer architecture. Topics include performance metrics and evaluation, instruction set architecture, data representation, processor design, memory hierarchy and cache, I/O, data path and control, pipelining, branching, multiprocessors and (review of) assembly language programming. Integrated laboratory.

    Prerequisite(s): CSCE 220 .


    Click here for the schedule of classes.


  
  • CSCE 327 - Linux Programming

    4.00 credit hours
    Fundamental concepts, library facilities and programming techniques that provide the foundation for application, systems, network and Internet programming on Linux and Unix systems. Course topics include the operating system kernel, process management, I/O, pipes, signals, sockets and shell programming. The course does not cover system administration. Extensive programming required in C/C++.

    Prerequisite(s): CSCE 220  and CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 330 - Mobile Applications Development

    4.00 credit hours
    An introduction to creating applications that run on mobile devices such as smartphones, tablets and smart watches. Topics include device hardware and development platforms, interface design, interactivity, SQLite database, multimedia and monetization. Extensive programming required. Integrated laboratory.

    Prerequisite(s): CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 335 - Introduction to Game Design and Development

    4.00 credit hours
    Project-based course. The design and development of computer games, with an introduction to a modern game engine such as Unity or Unreal Engine. Extensive programming and major project required. Integrated laboratory.

    Prerequisite(s): CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 336 - Human Computer Interaction

    4.00 credit hours
    Fundamental principles in the design, implementation and evaluation of human-machine interfaces with emphasis on human computer interaction. Topics include user psychology, theories of human learning and perception, audio and visual physiology, graphical user interfaces, task analysis and usability heuristics.

    Prerequisite(s): CSCE 210 .


    Click here for the schedule of classes.


  
  • CSCE 340 - Design and Analysis of Algorithms

    4.00 credit hours
    Design and analysis of algorithms. Classification of algorithms by time and space complexity. Algorithm design techniques such as divide and conquer, the greedy method and dynamic programming. NP-complete problems and approximation algorithms. Introduction to parallel algorithms.

    Prerequisite(s): CSCE 210  and CSCE 230 .


    Click here for the schedule of classes.


  
  • CSCE 370 - Principles of Programming Languages

    4.00 credit hours
    Design principles behind modern programming languages, analysis of languages, language implementation, formal specification, semantics and parsing, and comparative study of programming paradigms. Programming required.

    Prerequisite(s): CSCE 210  and CSCE 230 .


    Click here for the schedule of classes.


  
  • CSCE 390 - Special Topics

    4.00 credit hours
    A course covering a topic of current interest, such as game development, e-Business, social analytics, virtual/augmented reality or mobile computing.


    Click here for the schedule of classes.


  
  • CSCE 397 - Internship

    0.00-12.00 credit hours
    Valuable professional experiences supplement classroom instruction and allow students to apply theories and concepts to broader issues and system. Students explore career options within a specific area of study and critically reflect on the experience in a structured manner. May be repeated with different professional experience.

    Prerequisite(s): Junior standing.


    Click here for the schedule of classes.


  
  
  • CSCE 420 - Operating Systems

    4.00 credit hours
    An examination of approaches to computer system resource management. Topics include scheduling, memory management, file systems, I/O management, multiprocessing, security, and protection. Research literature is used to introduce systems research topics. Extensive programming required. Integrated laboratory.

    Prerequisite(s): CSCE 220  and CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 455 - Windows and .NET Programming

    4.00 credit hours
    System and application programming on Windows and the .NET platform using C#. Topics include Windows Forms and the Windows Presentation Foundation, inter-process communication, .NET network programming, ADO.NET and security.

    Prerequisite(s): CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 460 - Database Systems

    4.00 credit hours
    Introduction to data modeling, database design and implementation, SQL, transaction processing, concurrency and recovery with emphasis on the relational model. Database connectivity APIs, such as JDBC are also covered. Programming required.

    Prerequisite(s): CSCE 210  and Junior standing.


    Click here for the schedule of classes.


  
  • CSCE 464 - Data Mining and Machine Learning

    4.00 credit hours
    Introduction to the data mining process and its application to real-world problems. Topics include data preparation techniques, supervised and unsupervised machine learning algorithms and post-processing metrics to identify information of interest. Programming required.

    Prerequisite(s): CSCE 210 ; CSCE 230 , MATH 280  or MATH 340 .


    Click here for the schedule of classes.


  
  • CSCE 469 - Computer Networks

    4.00 credit hours
    Exploration of the theory and design issues in data communications and computer networks. Topics include network architecture, TCP/IP protocols, wireless and mobile networks and network security. Extensive programming required. Integrated laboratory.

    Prerequisite(s): CSCE 220  and CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 479 - Computer and Network Security

    4.00 credit hours
    Introduction to the theory and methods for developing and maintaining secure systems and applications. Topics include secure infrastructures, intrusion prevention and detection, viruses and anti-virus software, software security, authentication, cryptography and legal and ethical issues. Modern topics, such as cryptocurrency, cyber physical systems, cloud computing, etc., are covered through a survey of research and technical literature. Programming required. Integrated laboratory.

    Prerequisite(s): CSCE 220  and CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 480 - Introduction to Artificial Intelligence

    4.00 credit hours
    Foundational concepts in artificial intelligence (AI); definitions, survey of AI topics, problem solving and searching, heuristics, knowledge representation, reasoning, learning, programming languages for AI; study of applications areas and the research literature. Programming required.

    Prerequisite(s): CSCE 230  and CSCE 306 .


    Click here for the schedule of classes.


  
  • CSCE 487 - Parallel and Concurrent Programming

    4.00 credit hours
    A course in hardware, software and language aspects of parallel computing, focusing on the development of effective parallel algorithms and their implementation on a variety of parallel architectures and interconnection networks.

    Prerequisite(s): CSCE 420 .


    Click here for the schedule of classes.


  
  • CSCE 490 - Special Topics

    4.00 credit hours
    A course covering a topic of current interest, such as cloud computing, e-Business, machine intelligence, social analytics, video design, virtual/augmented reality or mobile computing.


    Click here for the schedule of classes.


  
  • CSCE 494 - Senior Capstone

    4.00 credit hours
    Students apply the many skills they have acquired during their undergraduate studies by participating as a member of a team to design, develop and present a computing solution (software/hardware) to a substantive problem. Group process and leadership skills are addressed as well as ethical considerations important to computer science professionals. Formal project proposal, progress report and technical report writing are emphasized.

    Prerequisite(s): CSCE 420  and Senior standing.
    Cardinal Directions Designation(s): Career Preparation, Career Experiential.


    Click here for the schedule of classes.


  
  • CSCE 497 - Internship

    0.00-12.00 credit hours
    Valuable professional experiences supplement classroom instruction and allow students to apply theories and concepts to broader issues and system. Students explore career options within a specific area of study and critically reflect on the experience in a structured manner. May be repeated with different professional experience.

    Prerequisite(s): Junior standing.


    Click here for the schedule of classes.