
Bachelor of Science (BSc) in Computer Science
Total Credits: ~120-130 credits
Lower Division Courses
1. CSCI1101 - Introduction to Computing
- Credits: 3
- Prerequisites: None
- Description: Overview of computer systems, basic hardware and software concepts, and foundational computing principles.
2. CSCI1201 - Programming I
- Credits: 4
- Prerequisites: None (or basic math skills)
- Description: Introduction to programming using a high-level language (e.g., Python, Java), covering syntax, control structures, and basic algorithms.
3. CSCI1202 - Programming II
- Credits: 4
- Prerequisites: CSCI1201
- Description: Advanced programming concepts, data structures, and problem-solving techniques.
4. CSCI1301 - Discrete Mathematics
- Credits: 3
- Prerequisites: None
- Description: Mathematical foundations for computer science, including logic, set theory, combinatorics, and graph theory.
5. CSCI1401 - Computer Organization
- Credits: 3
- Prerequisites: None
- Description: Basic computer architecture, memory hierarchy, and hardware-software interface.
Upper Division Courses
6. CSCI2101 - Data Structures
- Credits: 3
- Prerequisites: CSCI1202, CSCI1301
- Description: Design and analysis of data structures such as lists, trees, hash tables, and graphs.
7. CSCI2201 - Algorithms
- Credits: 3
- Prerequisites: CSCI2101, CSCI1301
- Description: Algorithm design techniques, complexity analysis, and problem-solving strategies.
8. CSCI2301 - Operating Systems
- Credits: 3
- Prerequisites: CSCI1401, CSCI2101
- Description: Concepts of process management, memory management, file systems, and concurrency.
9. CSCI2401 - Database Systems
- Credits: 3
- Prerequisites: CSCI2101
- Description: Database design, SQL, data modeling, and database management systems.
10. CSCI2501 - Software Engineering
- Credits: 3
- Prerequisites: CSCI2201, CSCI2101
- Description: Software development lifecycle, project management, version control, and testing.
11. CSCI2601 - Computer Networks
- Credits: 3
- Prerequisites: CSCI2301
- Description: Networking protocols, architecture, security, and communication models.
12. CSCI2701 - Artificial Intelligence
- Credits: 3
- Prerequisites: CSCI2201, CSCI1301
- Description: Foundations of AI, machine learning, search algorithms, and intelligent systems.
13. CSCI2801 - Cybersecurity Fundamentals
- Credits: 3
- Prerequisites: CSCI2301
- Description: Basic principles of cybersecurity, threat modeling, cryptography, and protection mechanisms.
14. CSCI2901 - Capstone Project
- Credits: 4
- Prerequisites: Senior standing, completion of core courses
- Description: Team or individual project integrating coursework into a real-world software solution, including planning, implementation, and presentation.
Prerequisites & Electives
Prerequisites Overview:
- Foundational courses in programming, discrete math, and computer organization are required before advanced courses.
- Progression depends on passing core courses and maintaining GPA standards.
Elective Courses (Sample options):
- Machine Learning & Data Mining
- Mobile App Development
- Cloud Computing
- Human-Computer Interaction
- Blockchain & Distributed Ledgers
- Game Development
- Advanced Cybersecurity
- Data Science & Big Data
Electives enable specialization in areas like AI, cybersecurity, data analysis, or software development.
Summary of Program Structure
- Lower Division (Foundational): CSCI1101–CSCI1401
- Upper Division (Specialized & Advanced): CSCI2101–CSCI2901
- Capstone: Final project demonstrating integrated knowledge and practical skills.