Course Descriptions
Computer Science
CSC 100
Web Design & Development
3 credits
Web design and development is an exciting field that empowers students to create dynamic and user-friendly websites. In this course, students will learn the core website basics and then develop interactive and engaging website experiences. Whether a student is a developer or someone curious about the digital world, this course will equip you with essential website development skills.
CSC 200
Computer Science Fund
3 credits
This course provides a contemporary overview of computer science. Using an algorithm-centered approach ideal for a first course, this non-language-specific approach introduces algorithms, hardware, virtual machines, software development, applications of computing, and social issues. Timely content and learning features address developing topics, such as privacy, drones, cloud computing, and net neutrality.
CSC 305
Computer Architecture
3 credits
This course explores the evolution of computer architecture and the factors influencing the design of hardware and software elements of computer systems. Topics may include instruction set design; processor micro-architecture and pipelining; cache and virtual memory organizations; protection and sharing; I/O and interrupts; in-order and out-of-order superscalar architectures; VLIW machines; vector supercomputers; multithreaded architectures; symmetric multiprocessors; memory models and synchronization; embedded systems; and parallel computers.
CSC 306
PHP Applic Development
3 credits
This course focused on developing software using PHP, a powerful server-side scripting language. Students will explore software development with PHP. Features common to all programming languages will be studied, including variables, arrays, functions, and control constructs. Application development using HTML, forms, server-side scripting will be explored, and on database connectivity to applications. CSC 310
Microsoft .NET I
3 credits
This is the first of a two-course sequence focused on developing software using the Microsoft .NET framework. In this course, students will learn how to set up the .NET development environment, including creating an ASP.NET website in Microsoft Visual Studio. Students will be introduced to the C# programming language and will learn how to use AJAX and JQuery in ASP.NET. CSC 311
Microsoft .NET II
3 credits
This is the second of a two-course sequence focused on developing software using the Microsoft .NET framework. In this course, students will learn to incorporate databases into their .NET application. In addition, students will learn how to handle errors and exceptions, and how to implement security and access controls. Lastly, students will learn how to deploy ASP.NET websites. Prerequisite(s): CSC 310 OR SDD 310
CSC 315
Fund. of O-O Programming
3 credits
In this comprehensive course, students will dive into the fundamentals of Object-Oriented Programming using C++. There are many systems that utilize C++ code, such as search engines, databases, operating systems, web browsers, and more. This course will equip students with the knowledge and tools to write efficient, robust, and elegant code.
CSC 320
Algorithms and Data Structures
3 credits
This algorithm course will introduce algorithms and data structures and show how it will bridge the gap between traditional and algorithms analysis. As the speed and power of computers increases, so does the need for effective programming and algorithm analysis. By approaching these skills in tandem, Students will develop well-constructed, maximally efficient programs using the C++ programming language.
Prerequisite(s): CSC 315
CSC 325
Java Programming I
3 credits
This course will provide students with an understanding of basic Java programming elements and data abstraction using problem representation and the object-oriented framework. Students will learn to write procedural programs using variables, arrays, control statements, loops, recursion, data abstraction and object in an integrated development environment. CSC 335
Java Programming II
3 credits
This course will expand upon knowledge learned in Java Programming I. Advanced Java concepts will be introduced, such as inheritance, polymorphism, abstract classes, exception handling, use of collections and database connectivity. Increased practical experience will be gained by students in designing and writing Java applications. Prerequisite(s): CSC 325
CSC 340
JavaScript I
3 credits
This course is designed to fill the need for front end programmers who can work comfortably with JavaScript and understand the interaction with server-side technologies. Students will acquire the requisite skills in JavaScript through a structured approach and develop a deeper understanding of its role within web development ecosystems.
CSC 345
Database Foundations
3 credits
This course covers the fundamentals of Structured Query Language (SQL) and database querying skills. This course will provide knowledge and expertise needed to master data manipulation and extraction tasks.
CSC 350
Innovative Web Development
3 credits
In this course, students will be introduced to the basics of app building. Video and text-based lessons will be used to build progressively more complex apps. Students will learn how to build many types of apps as well as programming concepts and terminology. Students will learn how to design the user interface for an app, and how to code the blocks that specify the app’s interactive behavior. Additionally, students will learn how to code blocks that specify how an app responds to events, and about conditional blocks that allow an app to make decisions.
Prerequisite(s): CSC 340 or CSC 240
CSC 370
User-Centered Design
3 credits
This course explores human-computer interaction, providing training in the basic skills of task analysis and user interface evaluation and design. Students will learn to develop designs that are usable and useful for people by using well-established heuristics. Graphical user interface (GUI) designs will be implemented and analyzed using rapid prototyping. CSC 400
System Analysis and Design
3 credits
This course explores the Software Development Life Cycle (SDLC), and Introduces the theory and practice of systems analysis and design. The focus of the study includes an emphasis on current and emerging approaches to systems analysis and requirements gathering. Various modeling techniques will be examined. Other topics covered will include testing, current development approaches, documentation of organizational processes, and configuration control and analysis of information flows.
CSC 402
Data Analysis Storytelling
3 credits
In this Computer Science course, students will learn the art and science of data storytelling. Communicating critical insights from data is essential for decision-making and problem-solving. Students will study data analysis and modeling. Students will transform raw data into visualizations: charts, graphs, and interactive dashboards.
Prerequisite(s): CSC 419 or SEC 290
CSC 407
Statistics for Data Analysis
3 credits
This course explores the fundamental principles and techniques in statistics that apply to data analysis. Students will explore statistical analysis, understanding its pivotal role in modern life and its applications. This course emphasizes critical thinking and problem-solving skills. Students gain a deep understanding of statistical concepts and their practical implications. This course underscores the importance of analyzing quantitative and categorical data, offering a balanced approach to statistical analysis for data science.
CSC 414
Ethics for Computer Science
3 credits
This course provides an overview of ways to apply ethical frameworks to initiatives in the data profession. You will compare practical approaches to data and analytics problems posed by work in Big Data, Data Science, and AI. You will also investigate data methods for ethical work to Analytics and AI.CSC 415
AI Risks & Threats
3 credits
This course examines the risks and threats associated with the development and deployment of Artificial Intelligence (AI). Students will explore ethical concerns, security vulnerabilities, and societal impacts of AI technologies. Topics include algorithmic bias, malicious uses of AI, adversarial attacks, privacy concerns, and the future challenges of AI governance. By the end of the course, students will be able to assess risks, identify vulnerabilities, and propose strategies to mitigate these threats.
Prerequisite(s): SEC 290 and CSC 419
CSC 419
Python for Data Science
3 credits
This course will introduce students to the concepts and tools involved in data science. Students will be introduced to computer programming with Python. Students will then apply understanding of Python using hands-on activities and data science examples. Students will also be introduced to data visualization and statistical philosophy in data science.CSC 420
Intro to Artificial Intelligence
3 credits
Introduction to A.I. introduces artificial intelligence and explains how it can be used to build applications that help users be more efficient. It uses a mix of engaging lessons, flash cards, quizzes, hands-on labs, practice tests, and post assessments to help you take your first steps into the exciting field of Artificial Intelligence.
Prerequisite(s): CSC 419 or SEC 290
CSC 425
Java Programming III
3 credits
This course builds upon CSC 325 Java 1 and CSC 335 Java 2 programming basics, including exception handling and event handling. CSC 425 will cover swing GUI components, exploring their intricacies and practical applications. Additionally, we introduce advanced topics such as Generics, JDBC, and threads. Students explore inheritance hierarchies, understand the nuances of polymorphism (dynamic runtime binding), and appreciate the power of crafting elegant and efficient software through object design principles.
Prerequisite(s): CSC 325 and CSC 335
CSC 430
Machine Learning Principles
3 credits
Machine Learning (ML) is important in Artificial Intelligence. This Computer Science course provides an overview of ML principles using Python with Amazon Web Services (AWS). Students will receive experience building and deriving insights from machine learning algorithms, models, and applications in Data Science. Prerequisite(s): CSC 420 with a minimum grade of C.
CSC 440
Deep Learning & Neural Networks
3 credits
This course introduces students to the fundamental principles of deep learning and neural networks. It explores the structure and functioning of artificial neural networks, key techniques in deep learning, and their applications in areas like computer vision and natural language processing. The course provides an intuitive understanding of deep learning concepts with minimal mathematical complexity, supported by visual examples and simplified code demonstrations in Python.Prerequisite(s): CSC 430
CSC 470
Computer Vision and Image Analysis
3 credits
This course reviews the fundamental techniques and tools required to train a deep learning model and learn the basics of computer vision. Students will gain experience with common deep-learning data types and model architectures. As well as enhancing datasets through data augmentation to improve model accuracy. Students will compare image segmentation with other computer vision problems. In addition, students will experiment with tools to implement effective metrics for assessing model performance.
Prerequisite(s): CSC 430 with a minimum grade of C.
CSC 475
Legal Aspects of AI
3 credits
This course explores the legal and regulatory challenges surrounding the development, deployment, and use of Artificial Intelligence (AI). Topics include intellectual property rights for AI-generated content, data privacy laws, algorithmic accountability, liability issues in AI decision-making, and ethical considerations in autonomous systems. The course also examines current AI regulations and governance frameworks across different jurisdictions, offering students an understanding of the legal landscape shaping AI’s future. By the end of the course, students will be equipped with knowledge of how legal principles apply to AI technologies and how to navigate the evolving legal frameworks.
CSC 489
Experiential Learning in Computer Science
3 credits
This course provides students with an experiential learning opportunity to engage in project-based learning within the student’s current employment context or through a simulated work experience utilizing scenario-based application assessments that align with the competencies of a Computer Science professional as identified by the program chair. The course provides students with an opportunity to define, analyze, and apply theories and models to resolve a complex organizational problem(s) and real-world experiences to strategize Computer Science related solution and opportunities. This course will also cover phases of career management including preparing for the job market, understanding the job search process, and maximizing effectiveness in career development.
Prerequisite(s): CSC 315, CSC 345, CSC 400, and CSC 325 or CSC 310
CSC 490
CSC Internship
3 credits
This course will provide students with real-world experience. The goal of this course is for the student to reflect critically and constructively on their academic internship. This includes determining how the internship relates to the Computer Science, professional skills, career goals, and what it means to have meaningful work that contributes to personal and professional development. Prerequisite(s): Program Chair Approval