• Any CSC2XX, CSC3XX, CSC4XX, CSC5XX

General Requirements

  • A grade of C- or better is required in all CSC courses in a major or minor.
  • The overall GPA for CSC courses in a major must be 2.5 or better.
  • For all Computer Science majors, at least 15 credits of CSC courses must be completed at the University of Miami.
  • For the Computer Science minor, at least 9 credits of CSC courses must be completed at the University of Miami.

Students must complete the Core, a Track, and the Science & Ethics requirements. All Computer Science general requirements must also be met.

Core

Computer Science (23 credits)

  • CSC120 - Computer Programming I
  • CSC220 - Computer Programming II
  • CSC314 - Computer Organization and Architecture
  • CSC317 - Data Structures and Algorithm Analysis
  • CSC322 - C Programming and UNIX
  • CSC427 - Theory of Computing
  • CSC431 - Introduction to Software Engineering

Mathematics (17 credits)

  • MTH161 - Calculus I (or equivalent - MTH140 and MTH141, or MTH151, or MTH171)
  • MTH162 - Calculus II (or equivalent - MTH172)
  • MTH210 - Introduction to Linear Algebra
  • MTH224 - Introduction to Probability and Statistics
  • MTH309 - Discrete Mathematics

Comprehensive Track

(Available to all students) Comprehensive Track Image

  • CSC419 - Programming Languages
  • CSC421 - Principles of Computer Operating Systems
  • CSC423 - Database Systems
  • CSC424 - Computer Networks
  • At least 5 credits of approved electives

The Comprehensive Track provides coverage of the topics in Computer Science prescribed by the Association of Computing Machinery curriculum and the ABET Computing Accreditation Commission.

Flexible Track

(Available to all students) Flexible Track Image

At least 17 credits of approved electives

Computational Science Track

(Requires permission of the Director of Undergraduate Studies) Computational Track Image

  • CSC210 - Computing for Scientists
  • CSC528 - Introduction to Parallel Computing
  • CSC547 - Computational Geometry
  • CSC548 - Bioinformatics Algorithms
  • 2 credits from CSC410-CSC411 - Computer Science Project
  • MTH320 - Introduction to Numerical Analysis or
    MTH520 - Numerical Analysis
  • The courses used to meet the Science requirement must include
    • BIL150 - General Biology
    • BIL151 - General Biology Laboratory

Cryptography and Security Track

(Requires permission of the Director of Undergraduate Studies) Crytography Track Image

  • CSC421 - Principles of Computer Operating Systems
  • CSC424 - Computer Networks
  • CSC507 - Cryptography and Data Security
  • 3 credits from CSC410-CSC411 - Computer Science Project
  • MTH505 - Theory of Numbers or
    MTH528 - Combinatorics or
    MTH561 - Abstract Algebra I or
    MTH461 - Survey of Modern Algebra
  • At least 2 credits of approved electives

Graphics and Games Track

(Requires permission of the Director of Undergraduate Studies) Graphics and Game Track Image

  • CSC329 - Introduction to Game Programming
  • CSC529 - Introduction to Computer Graphics
  • CSC545 - Introduction to Artificial Intelligence
  • 3 credits from CSC410-CSC411 - Computer Science Project
  • At least 5 credits of approved electives. In addition to the generally approved electives, the following are approved for the Graphics and Games track:
    • ECE596 - Maya Animation
    • MMI504 - Audio Analysis and Synthesis
    • MMI505 - Advanced Audio Signal Processing
  • The courses used to meet the Science requirement must include either
    • PHY101 - College Physics I or
      PHY205 - University Physics I

Science & Ethics Requirements

The Computer Science major requires 13 credits of Science. The Science courses must include an approved two semester sequence of courses with laboratory. Further courses may be taken in Biology, Chemistry, Environmental Science, Geological Science, Marine Science, Physics, and Physical Science.

The Computer Science major requires completion of the Ethics course PHI115 - Social and Ethical Issues in Computing.

Approved Electives

  • Any CSC2XX, CSC3XX, CSC4XX, CSC5XX
    (maximally 6 credits from CSC40X - Computer Science Practicum, and
    maximally 6 credits from CSC481 - Undergraduate Teaching Assistant in Computer Science)
  • CIS360 - Analysis of Information Systems
  • CIS465 - Applied Software Project Development (instead of CSC410/411)
  • ECE414 - Computer Organization and Design
  • ECE514 - Computer Architecture
  • ECE537 - Principles of Artificial Intelligence
  • ECE548 - Machine Learning
  • ECE553 - Neural Networks
  • ECE572 - Object-Oriented and Distributed Database Management Systems
  • ECE574 - Agent Technology
  • ECE577 - Data Mining
  • MTH320 - Introduction to Numerical Analysis
  • MTH505 - Theory of Numbers
  • MTH520 - Numerical Analysis I
  • MTH521 - Numerical Analysis II
  • MTH524 - Introduction to Probability Theory
  • MTH525 - Introduction to Mathematics Statistics
  • MTH528 - Combinatorics

General Requirements

  • A grade of C- or better is required in all CSC courses in a major or minor.
  • The overall GPA for CSC courses in a major must be 2.5 or better.
  • For all Computer Science majors, at least 15 credits of CSC courses must be completed at the University of Miami.
  • For the Computer Science minor, at least 9 credits of CSC courses must be completed at the University of Miami.

Students must complete the Core and Electives. All Computer Science general requirements must also be met.

Core

Computer Science (17 credits)

  • CSC120 - Computer Programming I
  • CSC220 - Computer Programming II
  • CSC314 - Computer Organization and Architecture
  • CSC322 - C Programming and UNIX
  • CSC431 - Introduction to Software Engineering

Mathematics (7 credits)

  • MTH161 - Calculus I (or equivalent - MTH140 and MTH141, or MTH151, or MTH171)
  • MTH309 - Discrete Mathematics

Electives

9 approved elective credits from

  • Any CSC2XX, CSC3XX, CSC4XX, CSC5XX
  • CSC119 - Computers and Society or
    CIS320 - Introduction to Programming or
    CIS410 - Information Systems and Technology or
    CVJ341 - Web Design or
    GEG199 - Introduction to GIS or
    MSC321 - Scientific Programming for Atmospheric Sciences
  • BIL552 - Bioinformatics Tools
  • CIS360 - Analysis of Information Systems
  • CIS423 - Database Management Systems
  • CIS430 - Business Telecommunications
  • CIS465 - Applied Software Project Development (instead of CSC410/411)
  • ECE368 - Internet Computing I
  • ECE414 - Computer Organization and Design
  • ECE514 - Computer Architecture
  • ECE537 - Principles of Artificial Intelligence
  • ECE548 - Machine Learning
  • ECE553 - Neural Networks
  • ECE570 - Network Client-Server Programming
  • ECE572 - Object-Oriented and Distributed Database Management Systems
  • ECE574 - Agent Technology
  • ECE576 - Internet and Intranet Security
  • ECE577 - Data Mining
  • ECE579 - Mobile Computing
  • MTH320 - Introduction to Numerical Analysis
  • MTH505 - Theory of Numbers
  • MTH520 - Numerical Analysis I
  • MTH521 - Numerical Analysis II
  • MTH524 - Introduction to Probability Theory
  • MTH525 - Introduction to Mathematics Statistics
  • MTH528 - Combinatorics
  • MMI505 - Advanced Audio Signal Processing

Image