Computer Science

CSC 101- Introduction to Computer Science

  • Implement the steps involved in the design, development, compile, execute, debug and software application projects in Python.
  • Utilize pseudocode, flowchart and algorithm to develop, test and debug a program.
  • Define how to use variables, constants, user-defined functions and procedures.
  • Identify and distinguish between sequential processing, repetition processing, and selection processing in Python programming.
  • Give an effective presentation to communicate aspects of program development.

CSC 111- Introduction to Generative AI

  • Utilize prompt engineering strategies to optimize AI input and output.
  • Identify appropriate generative art tools for creative projects.
  • Recognize use cases and implementation strategies for AI in business contexts.
  • Build a simple generative AI prototype with PowerApps.

CSC 151- Programming I

  • Develop effective, logical algorithms and implement in cleanly-compiled C++ programs.
  • Identify and distinguish control structures between sequential processing, repetition, processing, and selection processing in C++ program.
  • Define and identify the use of input and output stream in C++.
  • Declare and manipulate arrays, pointers and dynamic memory allocation in C++.

CSC 156- Operating Systems Basic and Security

  • Compare and contrast Linux and Windows operating systems.
  • Explain the function of the Linux File-system Hierarchy standard.
  • Identify and use standard Linux commands and utilities.
  • Define and change Linux file and directory permissions.
  • describe the purpose and nature of shell script, create and execute basic shell script.
  • Collaborate on a team project and present in a professional manner.

CSC 170- Digital Forensics I

  • Discuss the legal and ethical issues related to the acquisition and analysis of digital evidence, particularly as it relates to evidentiary and constitutional requirements.
  • Properly conduct a digital forensic investigation.
  • Describe a variety of digital forensic analysis tools
  • Write reports and prepare digital evidence to assure admissibility in court.
  • Set up a digital forensics lab.

CSC 188- Introduction to Computer Security

  • Identify security levels, access control models and compartments, as well as typical software, system vulnerabilities and their root causes.
  • Describe and apply basic security policies, analysis tools and techniques.
  • Define and describe security requirements, secure software development lifecycle, proper patching and updating process.
  • Describe and apply basic network security controls such as firewalls and intrusion Detection Systems.
  • Define the threat modeling process, mitigation strategies and enumerate a few typical threat models.

CSC 202- Computer Organization/Assembly Language

  • Describe major components of computer processor architecture and representation of data in memory.
  • Implement arithmetic, comparison, branching, repetition, I/O, and bit operations and procedures in assembly language programs.
  • Convert numbers between decimal, binary, octal, and hexadecimal representations, and represent negative numbers using common formats.
  • Apply digital logic components including gates, circuits, flip-flops, and a finite state machine.

CSC 252- Programming II

  • Develop algorithms through the interpreted and executable program in JAVA.
  • Define and identify the fundamental knowledge about object-oriented programming.
  • Declare and describe the concepts of abstraction, encapsulation, inheritance and polymorphism.
  • Demonstrate employability skills through the development of programming projects.

CSC 255- Programming III

  • Apply Object Oriented Design and Programming concepts to program development using Java and C++, including encapsulation, inheritance, polymorphism, data abstraction.
  • Distinguish between and implement abstract classes, concrete classes and interfaces.
  • Implement exception handling, event handlers, multithreading, and the use of advanced GUI components.
  • Describe the differences and similarities between the Java and C++ programming languages.

CSC 258- Data Structures

  • Describe, implement and recognize data structures including stacks, queues, linked lists, trees and graphs.
  • Describe, implement and recognize algorithms, including sorting, searching, and the use of hash functions.
  • Analyze the use of different data structures and algorithm performance.
  • Design and write large multi-module, multi-level programs that implement data structures directly.

CSC 272- Digital Forensics II

  • Analyze digital evidence using FTK Imager, FTK Toolkit and Registry Viewer.
  • Appropriately use Linux tools such as SleuthKit, Autopsy and Volatility.
  • Define and describe components of different operating systems and file systems.
  • Prepare digital evidence reports for both civil and criminal cases.
  • Take the ACE (Access Data) certification exam.

CSC 273- Digital Forensics III

  • Students will become proficient with Access Data Mobile Phone Examiner.
  • Students will be able to describe how to investigate e-mail crimes and violations.
  • Students will be able to explain the basic concepts of handhelds device forensics
  • Students will be able to explain the basic concepts of mobile device forensics
  • Students will be able to describe procedures for acquiring data from cell phones and mobile devices.
  • Students will learn how to communicate effectively through verbal presentations and written reports.
  • Students will be offered the opportunity to sit for the Access Data MPE certification exam.
  • Students will be introduced to tools such as network sniffers and packet capture software

CSC 289- Secure Programming

  • Describe major secure software development principles such as simplicity, minimization, and fail safe design.
  • Develop an implement the secure software lifecycle.
  • Describe and define typical software flaws, vulnerabilities, and unsafe standard library functions.
  • Perform sufficient testing procedures and vulnerabilities analysis.

CSC 290- Information Assurance

  • Describe and implement basic cryptographic primitives and information security concepts.
  • Develop and configure basic data protection and obfuscation methods.
  • Describe and deploy asset identification, risk management techniques and various authentication techniques.
  • Describe compliance requirements and verification and develop proper incident response procedures.
Last Modified: 4/16/24