2023-2024 Course Catalog
Welcome to Virginia Tech! We are excited that you are here planning your time as a Hokie.
Welcome to Virginia Tech! We are excited that you are here planning your time as a Hokie.
Code | Title | Credits |
---|---|---|
Degree Core Requirements | ||
CS 1114 | Introduction to Software Design (C) | 3 |
MATH 2204 | Introduction to Multivariable Calculus | 3 |
or CMDA 2005 | Integrated Quantitative Sciences | |
MATH 2534 | Introduction to Discrete Mathematics | 3 |
MATH 2114 | Introduction to Linear Algebra | 3 |
CS 2505 | Introduction to Computer Organization (C) | 3 |
CS 2506 | Introduction to Computer Organization (C) | 3 |
CS 3214 | Computer Systems | 3 |
CS 3604 | Professionalism in Computing | 3 |
Subtotal | 24 | |
Major Requirements | ||
BIT/CS/PSCI 2164 | Foundations of Contemporary Security Environments | 3 |
Secure Computing Elective | 3 | |
CS 4264 | Principles of Computer Security | 3 |
Secure Computing Elective | 3 | |
CS 4XXX | Secure Computing Capstone | 3 |
Secure Computing Elective | 3 | |
Subtotal | 18 | |
Additional Course Requirements | ||
CS 2114 | Software Design and Data Structures (C) | 3 |
CS 1944 | Computer Science First Year Seminar | 1 |
MATH 3134 | Applied Combinatorics and Graph Theory | 3 |
CS 3314 | Programming Language Theory and Practice | 3 |
CS 4944 | Seminar | 1 |
Subtotal | 11 | |
Elective Courses | ||
Natural Science Elective | 4 | |
Professional Writing Elective | 3 | |
Statistics Elective | 3 | |
CS Technical Elective | 3 | |
CS 3/4/5XXX Elective | 3 | |
Subtotal | 16 | |
Free Electives | ||
Select two Free Elective courses | 4 | |
Subtotal | 4 | |
Pathways to General Education | ||
Pathways Concept 1 - Discourse | ||
ENGL 1105 | First-Year Writing (1F) | 3 |
ENGL 1106 | First-Year Writing (1F) | 3 |
Select three hours in Pathway 1a | 3 | |
Pathways Concept 2 - Critical Thinking in the Humanities | ||
Select six hours in Pathway 2 | 6 | |
Pathways Concept 3 - Reasoning in the Social Sciences | ||
Select six hours in Pathway 3 | 6 | |
Pathways Concept 4 - Reasoning in the Natural Sciences | ||
CHEM 1035 & CHEM 1045 | General Chemistry and General Chemistry Laboratory | 4 |
PHYS 2305 | Foundations of Physics | 4 |
Pathways Concept 5 - Quantitative and Computational Thinking | ||
MATH 1225 | Calculus of a Single Variable (5F) | 4 |
MATH 1226 | Calculus of a Single Variable (5F) | 4 |
CS 3114 | Data Structures and Algorithms (5A) | 3 |
Pathways Concept 6 - Critique and Practice in Design and the Arts | ||
Select three hours in Pathway 6a | 3 | |
ENGE 1215 & ENGE 1216 | Foundations of Engineering and Foundations of Engineering | 4 |
Pathways Concept 7 - Critical Analysis of Identity and Equity in the United States | ||
Pathways Concept 7 should be double counted with another core concept. In this case, additional free elective credits must be taken to maintain a minimum of 123 credits. | 3 | |
Subtotal | 50 | |
Total Credits | 123 |
Course offerings are subject to change and the availability of sufficient resources. Students should confirm course offerings in advance with their department.
Consult the pathways courses table: https://www.pathways.prov.vt.edu/about/table.html. Pathways courses need to be completed prior to graduation.
Please see http://www.enge.vt.edu/em
Students must have had 2 years of a foreign language in high school or one year at the college level (6 credit hours) of the same language. College-level credits used to meet this requirement do not count towards the degree.
University Policy 91 outlines university-wide minimum criteria to determine if students are making satisfactory progress towards the completion of their degrees. The CS Department fully supports this policy. Specific expectations for satisfactory progress for Computer Science majors are as follows:
Pre-requisites for each course are listed after the course title. The (letter grade) notation, such as (C), indicates the minimum grade students must earn in the pre-requisite course. There are no hidden pre-requisites in the program of study. Prerequisites may change from what is indicated. Be sure to consult the University Catalog or check with your advisor for the most current pre-requisites.
Note: Some elective courses may include prerequisites not required by this checksheet. It is the student’s responsibility to be aware of prerequisites and to ensure that all prerequisites are completed prior to enrolling in the chosen course. Some courses may be restricted to majors other than CS in some semesters. Check the Undergraduate Course Catalog and consult with an academic advisor to confirm your eligibility for specific electives. Actual course offerings are subject to availability of sufficient resources, including faculty availability and student demand.
Code | Title | Credits |
---|---|---|
COMM 2004 | Public Speaking | 3 |
COMM 2014 | Communication Principles of Teamwork | 3 |
Code | Title | Credits |
---|---|---|
ENGL 3764 | Technical Writing | 3 |
ENGL 3804 | Technical Editing and Style | 3 |
ENGL 3814 | Creating User Documentation | 3 |
ENGL 3824 | Visual Rhetoric and Document Design | 3 |
ENGL 3834 | Intercultural Issues in Professional Writing | 3 |
ENGL 3844 | Writing and Digital Media | 3 |
ENGL 4824 | Science Writing | 3 |
Code | Title | Credits |
---|---|---|
STAT 4705 | Probability and Statistics for Engineers | 3 |
STAT 4105 | Theoretical Statistics | 3 |
STAT 4714 | Probability and Statistics for Electrical Engineers | 3 |
STAT 4604 | Statistical Methods for Engineers | 3 |
STAT 3704 | Statistics for Engineering Applications | 2 |
CMDA 2006 | Integrated Quantitative Sciences | 6 |
Code | Title | Credits |
---|---|---|
CS 5040 | Intermediate Data Structures and Algorithm Analysis | 3 |
CS 5044 | Object-Oriented Programming with Java | 3 |
CS 5045 | Computation for the Data Sciences | 3 |
CS 5046 | Computation for the Data Sciences | 3 |
CS 5644 | Machine Learning with Big Data | 3 |
CS 5664 | Social Media Analytics | 3 |
CS 5904 | Project and Report | 1-19 |
CS 5944 | Graduate Seminar | 1 |
CS 5974 | Independent Study | 1-19 |
CS 5994 | Research and Thesis | 1-19 |
Code | Title | Credits |
---|---|---|
BIT 4604 | Data Governance, Privacy and Ethics | 3 |
BIT 4614 | Information Security | 3 |
BIT 4624 | Cybersecurity Analytics for Business | 3 |
CS 3274 | Software Reverse Engineering | 3 |
CS 3754 | Cloud Software Development | 3 |
CS 4254 | Computer Network Architecture and Programming | 3 |
ECE 4560 | Computer and Network Security Fundamentals | 3 |
FIN 4014 | Cyberlaw and Policy | 3 |
MATH 4175 | Cryptography | 3 |
MATH 4176 | Cryptography | 3 |
CS 5264 | Advanced Linux Kernel Programming | 3 |
CS 5580 | Cryptographic Engineering | 3 |
CS 5584 | Network Security | 3 |
CS 5590 | System and Software Security | 3 |
CS 5594 | Blockchain Technologies | 3 |
Code | Title | Credits |
---|---|---|
CS 4284 | Systems & Networking Capstone | 3 |
CS 4274 | Secure Computing Capstone | 3 |
Code | Title | Credits |
---|---|---|
ACIS/BIT 4554 | 3 | |
AOE 4434 | Introduction to Computational Fluid Dynamics | 3 |
ART 3704 | Topics in Computer Animation | 3 |
BIT 4424 | Business Information Visualization and Analytics | 3 |
BIT 4434 | Computer Simulation in Business | 3 |
BIT 4444 | Web-Based Decision Support Systems | 3 |
BIT 4514 | 3 | |
BIT 4544 | Advanced Methods in Business Analytics | 3 |
BIT 4604 | Data Governance, Privacy and Ethics | 3 |
BIT 4614 | Information Security | 3 |
BIT 4624 | Cybersecurity Analytics for Business | 3 |
CMDA 3606 | Mathematical Modeling: Methods and Tools | 3 |
COMM 4374 | 3 | |
ECE 3544 | Digital Design I | 4 |
ECE 3574 | Applied Software Design | 3 |
ECE 4524 | Artificial Intelligence and Engineering Applications | 4 |
ECE 4550 | Real-Time Systems | 3 |
ECE 4560 | Computer and Network Security Fundamentals | 3 |
ECE 4564 | Network Application Design | 3 |
ECE 4580 | Digital Image Processing | 3 |
ECE 4704 | Principles of Robotics Systems | 3 |
GEOG/GEOS 4084 | Modeling with Geographic Information Systems | 3 |
GEOG 4314 | Spatial Analysis in Geographic Information Systems | 3 |
GEOG 4324 | Algotrithms in Geographic Information Systems | 4 |
MATH 4175 | Cryptography | 3 |
MATH 4176 | Cryptography | 3 |
MATH 4445 | Introduction to Numerical Analysis | 3 |
MATH 4454 | Applied Mathematical Modeling | 3 |
ME 4524 | Introduction to Robotics and Automation | 3 |
MUS 3064 | Digital Sound Manipulation | 3 |
MUS 3065 | Computer Music and Multimedia Design | 3 |
MUS 3066 | Computer Music and Multimedia Design | 3 |
PHYS 4755 | Introduction to Computational Physics | 3 |
To qualify for a B.S. degree in CS, a student must:
First Year | ||
---|---|---|
Fall Semester | Credits | |
CHEM 1035 | General Chemistry | 3 |
CHEM 1045 | General Chemistry Laboratory | 1 |
ENGL 1105 | First-Year Writing | 3 |
MATH 1225 | Calculus of a Single Variable (C-) | 4 |
ENGE 1215 | Foundations of Engineering (C-) | 2 |
Pathways | 3 | |
Credits | 16 | |
Spring Semester | ||
PHYS 2305 | Foundations of Physics | 4 |
ENGL 1106 | First-Year Writing | 3 |
MATH 1226 | Calculus of a Single Variable | 4 |
ENGE 1216 | Foundations of Engineering (C-) | 2 |
CS 1114 or CS 2064 |
Introduction to Software Design (C) or Intermediate Programming in Python |
3 |
Credits | 16 | |
Second Year | ||
Fall Semester | ||
MATH 2204 or CMDA 2005 |
Introduction to Multivariable Calculus or Integrated Quantitative Sciences |
3 |
MATH 2534 | Introduction to Discrete Mathematics | 3 |
CS 2114 | Software Design and Data Structures (C) | 3 |
CS 1944 | Computer Science First Year Seminar | 1 |
BIT/CS/PSCI 2164 | Foundations of Contemporary Security Environments | 3 |
Natural Science Elective | 4 | |
Credits | 17 | |
Spring Semester | ||
Communications Elective | 3 | |
MATH 2214 | Introduction to Differential Equations | 3 |
CS 2505 | Introduction to Computer Organization (C) | 3 |
Pathways | 3 | |
Pathways | 3 | |
Credits | 15 | |
Third Year | ||
Fall Semester | ||
MATH 3134 | Applied Combinatorics and Graph Theory | 3 |
CS 2506 | Introduction to Computer Organization (C) | 3 |
CS 3114 | Data Structures and Algorithms (C) | 3 |
Professional Writing Elective | 3 | |
Pathways | 3 | |
Credits | 15 | |
Spring Semester | ||
Statistics Elective | 3 | |
CS 3214 | Computer Systems | 3 |
CS 3604 | Professionalism in Computing | 3 |
Secure Computing Elective | 3 | |
Pathways | 3 | |
Credits | 15 | |
Fourth Year | ||
Fall Semester | ||
CS 4264 | Principles of Computer Security | 3 |
Secure Computing Elective | 3 | |
CS 3314 | Programming Language Theory and Practice | 3 |
CS Technical Elective | 3 | |
Free Elective | 3 | |
Credits | 15 | |
Spring Semester | ||
CS 4944 | Seminar | 1 |
CS 4XXX | Secure Computing Capstone | 3 |
Secure Computing Elective | 3 | |
CS 3/4/5XXX Elective | 3 | |
Pathways | 3 | |
Free Elective | 1 | |
Credits | 14 | |
Total Credits | 123 |
Print this page.
The PDF will include all information unique to this page.