Department of Computer Science
Mission Statement
The core mission is to provide an inclusive learning environment and conduct ethical and excellence-driven research in computer science to benefit departmental stakeholders including students, faculty, the university, the local community, and the society at large. To fulfill this mission, the Department will:
- Use innovative and experiential learning models and research to prepare students for careers in industry, government, and academia.
- Develop leadership in the education of underrepresented and disadvantaged groups.
- Enhance the nationally prominent research, education, outreach programs in cybersecurity, develop the cross-cutting research thrusts of data-driven intelligence and virtual reality systems, and networked and software systems.
General Information
The Department of Computer Science is engaged in cutting-edge research in cross-cutting research thrust areas of Cybersecurity, Data-driven Intelligence and Virtual Reality Systems, and Networked and Software Systems, with expertise in Artificial Intelligence, Machine Learning, Big Data, Software Engineering, Cloud Computing, Cybersecurity, Bioinformatics, Internet-of-Things, Embedded Systems, Parallel, Distributed and High-performance Computing, and Computer Graphics and Virtual and Augmented Reality. The Department of Computer Science operates dedicated classrooms, a large instructional lab, 20 research labs, and two main research units, the Center for Infrastructure Assurance and Security (CIAS) and the Institute for Cyber Security (ICS). Its faculty members are also affiliated with UTSA’s School of Data Science, National Security Collaboration Center, and AI Matrix Consortium.
The Department of Computer Science also offers research opportunities and internships to undergraduate students. Students engaged in research will be able to work with state-of-the-art computing clusters and research equipment operated by the Department of Computer Science and UTSA, such as a 113-compute node cluster, as well as AI workstations with cutting-edge GPUs.
Degrees
The Department of Computer Science (CS) offers a Bachelor of Science (B.S.) Degree in Computer Science and a Bachelor of Arts (B.A.) Degree in Computer Science with Teaching Track. The department also offers a Minor in Computer Science.
The B.S. Degree in Computer Science requires 120 credit hours (42 credit hours of university core, 42 credit hours of required CS courses, 30 credit hours of CS electives, and 6 credit hours of free electives). The B.S. degree in Computer Science also includes formal concentrations in Cybersecurity, Cloud Computing and Systems, Software Engineering, and Data Science. Students can pursue a track in Cyber Operations which is designated by the National Security Agency as a Center of Academic Excellence in Cyber Operations (Fundamentals). Concentration requirements can be fulfilled within the standard requirements, and most students elect to complete at least one concentration. This program prepares the students for a successful career in traditional, new and emerging computer and high technology businesses, government agencies, as well as research and education institutions.
The B.A. Degree in Computer Science with a Teaching Track is an interdisciplinary program and also requires 120 credit hours, (42 credit hours of university core, 39 credit hours of required CS courses, 12 credit hours of CS electives, and 30 credit hours of UTeachSA education courses). This program integrates a cohesive set of fundamental computer science courses and the UTeachSA program in pedagogy and clinical teaching, enabling students to gain solid CS foundation and a teaching certification in CS, thus preparing students for successful careers in secondary school education as well as in industry and government sectors.
Educational Objectives
Upon graduation, students in Department of Computer Science programs will be able to:
- Become successfully employed in the computing profession or actively pursue advanced degrees in computing or a related discipline.
- Apply mathematical foundations, algorithmic principles, and computer science theory in the design of computational systems.
- Use cutting-edge computing technologies and methods for the design and implementation of high-quality solutions.
- Create and collaborate in emergent computing technologies leading to innovative solutions for industry and academia.
- Work effectively in teams to accomplish shared computing design, evaluation, or implementation goals, while exhibiting professional behavior and exercising appropriate leadership within their organization.
- Engage in lifelong learning while reflecting a commitment to quality, innovation, critical thinking, and continuous improvement.
- Be responsible members of their profession and communicate effectively to a variety of audiences while upholding the highest commitment to personal integrity, behavior, ethical and professional conduct.
Admission Policy
The goal of the Department of Computer Science is to provide undergraduate students a program of study with the highest possible standards. To achieve this goal, the admission policy of the Department of Computer Science is designed to identify those students most likely to succeed in their undergraduate computer science education.
Direct Admission Criteria
Applicants entering UTSA as Freshmen will be directly admitted to the Department of Computer Science if they:
- Meet all UTSA undergraduate admission requirements,
- Are Pre-Calculus (or higher) ready
Transfer applicants will be directly admitted to the Department of Computer Science if they:
- Meet all UTSA undergraduate transfer admission requirements
- Are Pre-Calculus (or higher) ready
All applicants for admission to the Department of Computer Science must be qualified to take MAT 1093 Precalculus (or higher) and CS 1083 Programming I for Computer Scientists (or higher). Students who do not meet the requirements, but meet UTSA's general admission requirements, will be part of "Engineering, Mathematics, and Sciences Studies (XEMS)" pathway where students will be able to work towards meeting the prerequisites needed to declare Computer Science as their major.
A directly admitted computer science (CS) student who fails to complete each of the gateway courses within two attempts from the date of first admission to the Department of Computer Science will be changed from CS to undeclared (UND) in the University student record system. The student must choose a major other than computer science. A computer science minor is available to all UTSA students who seek to complement a different academic major with a strong foundation in computer science.
Bachelor of Science Degree in Computer Science
The Bachelor of Science (B.S.) Degree in Computer Science is designed to prepare students with a strong technical emphasis on modern computing and systems. The program offers students the opportunity to prepare for advanced graduate study and for careers in high-technology companies, business, government, and teaching. The department offers concentrations in Cloud and Systems, Cybersecurity, Data Science, and Software Engineering. The department also offers the B.S. in Computer Science with a Cyber Operations Track.
The B.S. degree in Computer Science requires a minimum of 120 semester credit hours, including the Core Curriculum requirements. Thirty-nine of the total semester credit hours required for the degree must be at the upper-division level. Students are encouraged to have an internship or research experience.
All majors in computer science are required to complete all required and elective computer science courses with a grade of “C-” or better.
All candidates seeking this degree must fulfill the Core Curriculum requirements and the degree requirements, which are listed below.
Program Outcomes
Graduates of the B.S. in Computer Science will be able to:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a computing-related team.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
Core Curriculum Requirements (42 semester credit hours)
Students seeking the B.S. Degree in Computer Science must fulfill University Core Curriculum requirements in the same manner as other students. The course listed below will satisfy both degree requirements and Core Curriculum requirements; however, if this course is taken to satisfy both requirements, then students may need to take an additional course in order to meet the minimum number of semester credit hours required for this degree.
MAT 1214 may be used to satisfy the core requirement in Mathematics as well as a major requirement.
For a complete listing of courses that satisfy the Core Curriculum requirements, see Core Curriculum Component Area Requirements.
Core Curriculum Component Area Requirements
First Year Experience Requirement (3 semester credit hours)
All students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AIS 1203 | Academic Inquiry and Scholarship | 3 |
AIS 1213 | AIS: Architecture, Construction, and Planning | 3 |
AIS 1223 | AIS: Arts and Humanities | 3 |
AIS 1233 | AIS: Business | 3 |
AIS 1243 | AIS: Engineering, Mathematics, and Sciences | 3 |
AIS 1253 | AIS: Interdisciplinary Education | 3 |
AIS 1263 | AIS: Life and Health Sciences | 3 |
AIS 1273 | AIS: Social Sciences and Public Policy | 3 |
Communication (6 semester credit hours)
Students must complete the following courses, for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
WRC 1013 | Freshman Composition I | 3 |
WRC 1023 | Freshman Composition II | 3 |
Mathematics (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
CS 1173 | Data Analysis and Visualization | 3 |
MAT 1023 | College Algebra with Applications | 3 |
MAT 1043 | Introduction to Mathematics | 3 |
MAT 1053 | Mathematics for Business | 3 |
MAT 1073 | Algebra for Scientists and Engineers | 3 |
MAT 1093 | Precalculus | 3 |
MAT 1133 | Calculus for Business | 3 |
MAT 1193 | Calculus for the Biosciences | 3 |
MAT 1214 | Calculus I | 4 |
STA 1053 | Basic Statistics | 3 |
Life and Physical Sciences (6 semester credit hours)
Students must complete two of the following courses for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
ANT 2033 | Introduction to Biological Anthropology | 3 |
AST 1013 | Introduction to Astronomy | 3 |
AST 1033 | Exploration of the Solar System | 3 |
BIO 1203 | Biosciences I for Science Majors | 3 |
BIO 1223 | Biosciences II for Science Majors | 3 |
BIO 1233 | Contemporary Biology I | 3 |
BIO 1243 | Contemporary Biology II | 3 |
CHE 1083 | Introduction to the Molecular Structure of Matter | 3 |
CHE 1093 | Introduction to Molecular Transformations | 3 |
ES 1113 | Environmental Botany | 3 |
ES 1123 | Environmental Zoology | 3 |
ES 1213 | Environmental Geology | 3 |
ES 2013 | Introduction to Environmental Science I | 3 |
ES 2023 | Introduction to Environmental Science II | 3 |
GEO 1013 | The Third Planet | 3 |
GEO 1033 | Geology of North American National Parks | 3 |
GEO 1123 | Life Through Time | 3 |
GES 2613 | Intro to Physical Geography | 3 |
PHY 1943 | Physics for Scientists and Engineers I | 3 |
PHY 1963 | Physics for Scientists and Engineers II | 3 |
Language, Philosophy and Culture (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AAS 2013 | Introduction to African American Studies | 3 |
AAS 2113 | African American Culture, Leadership and Social Issues | 3 |
ANT 2063 | Language, Thought, and Culture | 3 |
ARC 1113 | Introduction to the Built Environment | 3 |
ARC 2423 | Global History of Architecture and Urbanism: Renaissance to 19th Century | 3 |
CHN 1014 | Elementary Chinese I | 4 |
CLA 2013 | Introduction to Ancient Greece | 3 |
CLA 2023 | Introduction to Ancient Rome | 3 |
CLA 2323 | Classical Mythology | 3 |
CSH 1103 | Literary Masterpieces of Western Culture I | 3 |
CSH 1113 | Literary Masterpieces of Western Culture II | 3 |
CSH 1213 | Topics in World Cultures | 3 |
CSH 2113 | The Foreign Film | 3 |
ENG 2013 | Introduction to Literature | 3 |
ENG 2023 | Literature and Film | 3 |
ENG 2213 | Literary Criticism and Analysis | 3 |
ENG 2383 | Multiethnic Literatures of the United States | 3 |
ENG 2423 | Literature of Texas and the Southwest | 3 |
ENG 2443 | Persuasion and Rhetoric | 3 |
FRN 1014 | Elementary French I | 4 |
FRN 2333 | French Literature in English Translation | 3 |
GER 1014 | Elementary German I | 4 |
GER 2333 | German Literature in English Translation | 3 |
GES 1023 | World Regions & Global Change | 3 |
GLA 1013 | US in Global Context | 3 |
GRK 1114 | Introductory Classical Greek I | 4 |
HIS 2123 | Introduction to World Civilization to the Fifteenth Century | 3 |
HIS 2133 | Introduction to World Civilization since the Fifteenth Century | 3 |
HIS 2533 | Introduction to Latin American Civilization | 3 |
HIS 2543 | Introduction to Islamic Civilization | 3 |
HIS 2553 | Introduction to East Asian Civilization | 3 |
HIS 2573 | Introduction to African Civilization | 3 |
HIS 2583 | Introduction to South Asian Civilization | 3 |
HUM 2093 | World Religions | 3 |
ITL 1014 | Elementary Italian I | 4 |
ITL 2333 | Italian Literature in English Translation | 3 |
JPN 1014 | Elementary Japanese I | 4 |
LAT 1114 | Introductory Latin I | 4 |
MAS 2013 | Introduction to Chicano(a) Studies | 3 |
PHI 1043 | Critical Thinking | 3 |
PHI 2013 | Basic Philosophical Problems | 3 |
PHI 2023 | Introduction to Ancient Philosophy | 3 |
PHI 2033 | Introduction to Early Modern Philosophy | 3 |
PHI 2123 | Contemporary Moral Issues | 3 |
RUS 1014 | Elementary Russian I | 4 |
RUS 2333 | Russian Literature in English Translation | 3 |
SPN 1014 | Elementary Spanish I | 4 |
SPN 2333 | Hispanic Literature in English Translation | 3 |
WGSS 2013 | Introduction to Women’s Studies | 3 |
WGSS 2023 | Introduction to LGBTQ Studies | 3 |
Creative Arts (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AHC 1113 | Art History I | 3 |
AHC 1123 | Art History II | 3 |
ARC 1513 | Great Buildings and Cities of the World | 3 |
ARC 2413 | Global History of Architecture and Urbanism: Prehistory to Medieval | 3 |
ART 1103 | Introduction to Visual Arts | 3 |
BBL 2023 | Latino Cultural Expressions | 3 |
CLA 2033 | Introduction to Classical Literature | 3 |
DAN 2003 | Introduction to Dance | 3 |
HUM 2023 | Introduction to the Humanities I | 3 |
HUM 2033 | Introduction to the Humanities II | 3 |
HUM 2053 | History of Film | 3 |
MAS 2023 | Latino Cultural Expressions | 3 |
MUS 2243 | World Music in Society | 3 |
MUS 2633 | American Roots Music | 3 |
MUS 2653 | Music in Culture | 3 |
MUS 2663 | History and Styles of Jazz | 3 |
MUS 2673 | History and Styles of Rock | 3 |
MUS 2683 | History and Styles of Western Art Music | 3 |
MUS 2713 | History of Recorded Music | 3 |
MUS 2743 | Music and Film | 3 |
PHI 2073 | Philosophy of Art | 3 |
American History (6 semester credit hours)
Students must complete two of the following courses, for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
HIS 1043 | United States History: Pre-Columbus to Civil War Era | 3 |
HIS 1053 | United States History: Civil War Era to Present | 3 |
HIS 2053 | Texas History | 3 |
Government-Political Science (6 semester credit hours)
Students must complete two of the following courses, for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
POL 1013 | Introduction to American Politics | 3 |
and one of the following two courses: | ||
POL 1133 | Texas Politics and Society | 3 |
POL 1213 | Civil Rights in Texas and America | 3 |
Social and Behavioral Sciences (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AMS 2043 | Approaches to American Culture | 3 |
ANT 1013 | Introduction to Anthropology | 3 |
ANT 2043 | Introduction to Archaeology | 3 |
ANT 2053 | Introduction to Cultural Anthropology | 3 |
BBL 2003 | Language, Culture, and Society | 3 |
BBL 2243 | Bilingual Families, Communities, and Schools: National and Transnational Experiences | 3 |
BIO 1033 | Drugs and Society | 3 |
CRJ 1113 | The American Criminal Justice System | 3 |
ECO 2003 | Economic Principles and Issues | 3 |
ECO 2023 | Introductory Microeconomics | 3 |
EGR 1343 | The Impact of Modern Technologies on Society | 3 |
ES 1003 | Survey Topics in Environmental Studies | 3 |
GES 1013 | Fundamentals of Geography | 3 |
GES 2623 | Human Geography: People, Place, Culture | 3 |
HTH 2413 | Introduction to Community and Public Health | 3 |
HTH 2513 | Personal Health | 3 |
IDS 2113 | Society and Social Issues | 3 |
PSY 1013 | Introduction to Psychology | 3 |
SOC 1013 | Introduction to Sociology | 3 |
SOC 2013 | Social Problems | 3 |
SOC 2023 | Social Context of Drug Use | 3 |
Component Area Option (CAO) (3 semester credit hours)
Students must complete either one of the following courses or any additional Core Curriculum course not previously used to satisfy a core component area requirement, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
COM 2113 | Public Speaking | 3 |
EGR 1403 | Technical Communication | 3 |
ENG 2413 | Technical Writing | 3 |
PAD 1113 | Public Administration and Policy in American Society | 3 |
PHI 2043 | Introductory Logic | 3 |
Core Curriculum Component Area Requirements
First Year Experience Requirement | 3 | |
Communication | 6 | |
Mathematics | 3 | |
Life and Physical Sciences | 6 | |
Language, Philosophy and Culture | 3 | |
Creative Arts | 3 | |
American History | 6 | |
Government-Political Science | 6 | |
Social and Behavioral Sciences | 3 | |
Component Area Option | 3 | |
Total Credit Hours | 42 |
Gateway Courses
Students pursuing the B.S. degree in Computer Science must successfully complete each of the following Gateway Courses with a grade of “C-” or better in no more than two attempts. A student who is unable to successfully complete these courses within two attempts, including dropping a course with a grade of “W” or taking an equivalent course at another institution, will be required to change his or her major.
Code | Title | Credit Hours |
---|---|---|
CS 1714 | Computer Programming II | 4 |
CS 2124 | Data Structures | 4 |
Degree Requirements
Code | Title | Credit Hours |
---|---|---|
A. Required courses (this also satisfies the 3 hours of core curriculum requirement for Mathematics) | ||
CS 1011 | Essence of Computer Science | 1 |
CS 1083 | Programming I for Computer Scientists | 3 |
CS 1714 | Computer Programming II | 4 |
CS 2124 | Data Structures | 4 |
CS 2233 | Discrete Mathematical Structures | 3 |
CS 3333 | Mathematical Foundations of Computer Science | 3 |
CS 3343 | Analysis of Algorithms | 3 |
CS 3424 | Systems Programming | 4 |
CS 3443 | Application Programming | 3 |
CS 3733 | Operating Systems | 3 |
CS 3843 | Computer Organization | 3 |
CS 3853 | Computer Architecture | 3 |
MAT 1214 | Calculus I (The student who is not prepared for MAT 1214 must take MAT 1093 Precalculus.) | 4 |
MAT 1224 | Calculus II | 4 |
B. Upper-Division computer science courses | ||
With prior written approval of the Undergraduate Advisor of Record, students may take upper-division MAT or STA courses to satisfy up to 6 hours of this requirement. A student with a cumulative grade point average of 3.0 or better may enroll in graduate courses and apply the credits earned toward satisfying this requirement. Enrollment in graduate courses requires prior written approvals as described in chapter 1 (Bachelor’s Degree Regulations) of this catalog. | 30 | |
C. Free electives | ||
Electives | 6 | |
Total Credit Hours | 81 |
Concentration in Cloud and Systems
Students may declare a Concentration in Cloud and Systems after completing CS 3424 Systems Programming with a grade of "C-" or better. All candidates for the Concentration in Cloud and Systems must fulfill the Core Curriculum requirements and the Computer Science degree requirements including, as part of the upper-division computer science electives in item B in the degree requirements, the following course:
Code | Title | Credit Hours |
---|---|---|
CS 4843 | Cloud Computing | 3 |
plus three additional courses selected from the following (an elective can only be counted towards one concentration): | ||
CS 3873 | Computer Networks | 3 |
CS 4243 | Large-Scale Data Management | 3 |
CS 4633 | Simulation Techniques | 3 |
CS 4663 | Distributed and Cloud Systems Security | 3 |
CS 4713 | Compiler Construction | 3 |
CS 4823 | Parallel Programming | 3 |
CS 4833 | Embedded Systems | 3 |
CS 4853 | Advanced Systems Programming | 3 |
CS 4863 | Distributed Computing and Systems | 3 |
CS 4963 | Advanced Topics in Systems and Cloud | 3 |
Concentration in Cybersecurity
Students may declare a Concentration in Cybersecurity after completing CS 2124 Data Structures with a grade of "C-" or better. All candidates for the Concentration in Cybersecurity must fulfill the Core Curriculum requirements and the Computer Science degree requirements including, as part of the computer science electives in item B in the degree requirements, the following course:
Code | Title | Credit Hours |
---|---|---|
CS 3113 | Principles of Cyber Security | 3 |
plus three additional courses selected from the following (an elective can only be counted towards one concentration): | ||
CS 3433 | Computer and Information Security | 3 |
CS 4353 | Unix and Network Security | 3 |
CS 4363 | Cryptography | 3 |
CS 4453 | Penetration Testing | 3 |
CS 4463 | Steganography | 3 |
CS 4473 | Cryptocurrencies and Bitcoins | 3 |
CS 4483 | Cyber Security Foundations and Practice | 3 |
CS 4493 | Advanced Topics in Cyber Security | 3 |
CS 4643 | Mobile and Wireless Network and Technologies | 3 |
CS 4653 | Software and Malware Reverse Engineering | 3 |
CS 4663 | Distributed and Cloud Systems Security | 3 |
CS 4673 | Cyber Operations | 3 |
CS 4683 | Secure Software Development and Analysis | 3 |
Concentration in Data Science
Students may declare a Concentration in Data Science after completing CS 3343 Analysis of Algorithms with a grade of "C-" or better. All candidates for the Concentration in Data Science must fulfill the Core Curriculum requirements and the Computer Science degree requirements including, as part of the upper-division computer science electives in item B in the degree requirements, the following course:
Code | Title | Credit Hours |
---|---|---|
CS 3743 | Database Systems | 3 |
CS 3753 | Data Science | 3 |
plus two additional courses selected from the following (an elective can only be counted towards one concentration): | ||
CS 3793 | Artificial Intelligence | 3 |
CS 4223 | Bioinformatics I: Algorithms for Biological Data | 3 |
CS 4233 | Bioinformatics II: Statistical Learning for Biological Data | 3 |
CS 4243 | Large-Scale Data Management | 3 |
CS 4253 | Machine Learning | 3 |
CS 4263 | Deep Learning | 3 |
CS 4303 | Introduction to Optimization | 3 |
CS 4333 | Probability and Computing | 3 |
CS 4373 | Data Mining | 3 |
CS 4973 | Advanced Topics in Data Science | 3 |
Concentration in Software Engineering
Students may declare a Concentration in Software Engineering after completing CS 3443 Application Programming with a grade of "C-" or better. All candidates for the Concentration in Software Engineering must fulfill the Core Curriculum requirements and the Computer Science degree requirements including, as part of the upper-division computer science electives in item B in the degree requirements, the following course:
Code | Title | Credit Hours |
---|---|---|
CS 3773 | Software Engineering | 3 |
plus two additional courses selected from the following (an elective can only be counted towards one concentration): | ||
CS 3723 | Programming Languages | 3 |
CS 4393 | User Interfaces | 3 |
CS 4413 | Web Technologies | 3 |
CS 4613 | Senior Design I | 3 |
CS 4623 | Senior Design II | 3 |
CS 4683 | Secure Software Development and Analysis | 3 |
CS 4723 | Software Validation and Quality Assurance | 3 |
CS 4743 | Enterprise Software Engineering | 3 |
CS 4773 | Object-Oriented Systems | 3 |
CS 4783 | Advanced Software Engineering | 3 |
Program Requirements for Cyber Operations Track
Cyber Operations (CO) Track is a program option for students in the current B.S. in Computer Science degree. Students graduating with this option will have Cyber Operations Track indicated as part of their B.S. in Computer Science degree. The objective of the Cyber Operations Track is to provide rigorous curriculum in Cybersecurity with a focus on offensive cyber operations while balancing theoretical foundations and experiential learning.
All candidates for the Cyber Operations Track must fulfill the Core Curriculum requirements, the Computer Science degree requirements except CS 3853 Computer Architecture, which is available as an elective for this track, and the following courses:
Code | Title | Credit Hours |
---|---|---|
A. Required courses (this also satisfies the 3 hours of core curriculum requirement for Mathematics) | ||
CS 1011 | Essence of Computer Science | 1 |
CS 1083 | Programming I for Computer Scientists | 3 |
CS 1714 | Computer Programming II | 4 |
CS 2124 | Data Structures | 4 |
CS 2233 | Discrete Mathematical Structures | 3 |
CS 3333 | Mathematical Foundations of Computer Science | 3 |
CS 3343 | Analysis of Algorithms | 3 |
CS 3424 | Systems Programming | 4 |
CS 3443 | Application Programming | 3 |
CS 3733 | Operating Systems | 3 |
CS 3843 | Computer Organization | 3 |
MAT 1214 | Calculus I (The student who is not prepared for MAT 1214 must take MAT 1093 Precalculus.) | 4 |
MAT 1224 | Calculus II | 4 |
B. Required courses for Cyber Operations Track | ||
CS 3113 | Principles of Cyber Security | 3 |
CS 3433 | Computer and Information Security | 3 |
CS 3873 | Computer Networks | 3 |
CS 4353 | Unix and Network Security | 3 |
CS 4363 | Cryptography | 3 |
CS 4643 | Mobile and Wireless Network and Technologies | 3 |
CS 4653 | Software and Malware Reverse Engineering | 3 |
CS 4663 | Distributed and Cloud Systems Security | 3 |
CS 4683 | Secure Software Development and Analysis | 3 |
C. Electives | 12 | |
Choose four of the following: | ||
Computer Architecture (recommended) | ||
Cyber Operations (recommended) | ||
Advanced Systems Programming (recommended) | ||
Digital Forensic Analysis II (recommended, from Information Systems and Cybersecurity program in College of Business) | ||
Or any other CS upper division electives. | ||
Total Credit Hours | 81 |
Course Sequence Guides for B.S. Degree in Computer Science
This course sequence guide is designed to assist students in completing their UTSA undergraduate Computer Science degree requirements. This is merely a guide and students must satisfy other requirements of this catalog and meet with their academic advisor for individualized degree plans. Progress within this guide depends upon such factors as course availability, individual student academic preparation, student time management, work obligations, and individual financial considerations. Students may choose to take courses during Summer terms to reduce course loads during long semesters.
B.S. in Computer Science (no track) – Recommended Four-Year Academic Plan
First Year | ||
---|---|---|
Fall | Credit Hours | |
CS 1011 | Essence of Computer Science | 1 |
AIS 1203 | Academic Inquiry and Scholarship (core) | 3 |
CS 1083 | Programming I for Computer Scientists | 3 |
MAT 1214 | Calculus I (core and major) | 4 |
WRC 1013 | Freshman Composition I (core) | 3 |
Creative Arts (core) | 3 | |
Credit Hours | 17 | |
Spring | ||
CS 1714 | Computer Programming II | 4 |
CS 2233 | Discrete Mathematical Structures | 3 |
MAT 1224 | Calculus II | 4 |
POL 1133 or POL 1213 | Texas Politics and Society (core) or Civil Rights in Texas and America | 3 |
Credit Hours | 14 | |
Second Year | ||
Fall | ||
CS 2124 | Data Structures | 4 |
CS 3333 | Mathematical Foundations of Computer Science | 3 |
POL 1013 | Introduction to American Politics (core) | 3 |
WRC 1023 | Freshman Composition II (core) | 3 |
Life & Physical Sciences (core) | 3 | |
Credit Hours | 16 | |
Spring | ||
CS 3424 | Systems Programming | 4 |
CS 3443 | Application Programming | 3 |
CS 3843 | Computer Organization | 3 |
Social & Behavioral Sciences (core) | 3 | |
Credit Hours | 13 | |
Third Year | ||
Fall | ||
CS 3343 | Analysis of Algorithms | 3 |
Life & Physical Sciences (core) | 3 | |
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
Free Elective | 3 | |
Credit Hours | 15 | |
Spring | ||
CS 3733 | Operating Systems | 3 |
CS 3853 | Computer Architecture | 3 |
Free Elective | 3 | |
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
Credit Hours | 15 | |
Fourth Year | ||
Fall | ||
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
Component Area Option (core) | 3 | |
American History (core) | 3 | |
Credit Hours | 15 | |
Spring | ||
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
Language, Philosophy & Culture (core) | 3 | |
American History (core) | 3 | |
Credit Hours | 15 | |
Total Credit Hours | 120 |
Note: Some courses are only offered once a year: Fall or Spring. Check with the Department of Computer Science for scheduling of courses.
B.S. in Computer Science with Cyber Operations Track – Recommended Four-Year Academic Plan
First Year | ||
---|---|---|
Fall | Credit Hours | |
AIS 1203 | Academic Inquiry and Scholarship (core) | 3 |
CS 1011 | Essence of Computer Science | 1 |
CS 1083 | Programming I for Computer Scientists | 3 |
MAT 1214 | Calculus I (core and major) | 4 |
WRC 1013 | Freshman Composition I (core) | 3 |
Life & Physical Sciences (core) | 3 | |
Credit Hours | 17 | |
Spring | ||
CS 1714 | Computer Programming II | 4 |
MAT 1224 | Calculus II | 4 |
WRC 1023 | Freshman Composition II (core) | 3 |
Life & Physical Sciences (core) | 3 | |
Credit Hours | 14 | |
Second Year | ||
Fall | ||
CS 2124 | Data Structures | 4 |
CS 2233 | Discrete Mathematical Structures | 3 |
CS 3333 | Mathematical Foundations of Computer Science | 3 |
Language, Philosophy & Culture (core) | 3 | |
Social & Behavioral Sciences (core) | 3 | |
Credit Hours | 16 | |
Spring | ||
CS 3113 | Principles of Cyber Security | 3 |
CS 3424 | Systems Programming | 4 |
CS 3443 | Application Programming | 3 |
CS 3843 | Computer Organization | 3 |
Credit Hours | 13 | |
Third Year | ||
Fall | ||
CS 3343 | Analysis of Algorithms | 3 |
CS 3433 | Computer and Information Security | 3 |
CS 3733 | Operating Systems | 3 |
CS 3873 | Computer Networks | 3 |
American History (core) | 3 | |
Credit Hours | 15 | |
Spring | ||
CS 4353 | Unix and Network Security | 3 |
CS 4363 | Cryptography | 3 |
American History (core) | 3 | |
Upper-division CS elective (see recommended courses in degree requirements) | 3 | |
Upper-division CS elective (see recommended courses in degree requirements) | 3 | |
Credit Hours | 15 | |
Fourth Year | ||
Fall | ||
CS 4643 | Mobile and Wireless Network and Technologies | 3 |
CS 4653 | Software and Malware Reverse Engineering | 3 |
CS 4663 | Distributed and Cloud Systems Security | 3 |
Creative Arts (core) | 3 | |
Government-Political Science (core) | 3 | |
Credit Hours | 15 | |
Spring | ||
CS 4683 | Secure Software Development and Analysis | 3 |
Upper-division CS elective (see recommended courses in degree requirements) | 3 | |
Upper-division CS elective (see recommended courses in degree requirements) | 3 | |
Component Area Option (core) | 3 | |
Government-Political Science (core) | 3 | |
Credit Hours | 15 | |
Total Credit Hours | 120 |
Note: Some courses are only offered once a year: Fall or Spring. Check with the Department of Computer Science for scheduling of courses.
Bachelor of Arts Degree in Computer Science with Teaching Track
The Bachelor of Arts (B.A.) Degree in Computer Science with Teaching Track is an interdisciplinary program designed for students who are interested in teaching computer science at the middle school or high school level as a certified teacher. This program integrates a cohesive set of fundamental computer science courses from the Bachelor of Science degree in Computer Science as well as the UTeachSA program so that students can gain solid foundations in the computer science and education fields to obtain the Computer Science teaching certification, thus preparing students for successful careers in secondary school education as well as in industry and government sectors.
The B.A. degree in Computer Science requires a minimum of 120 semester credit hours, including the Core Curriculum requirements. Thirty-nine of the total semester credit hours required for the degree must be at the upper-division level.
Students are encouraged to have an internship or research experience. All majors in computer science are required to complete all required and elective computer science courses with a grade of “C-” or better.
Program Outcomes
Graduates of the B.A. in Computer Science with Teaching Track will be able to:
- Evaluate computing-based solutions to assess whether a given set of computing requirements have been appropriately satisfied.
- Explain computer science and software development fundamentals to produce computing-based solutions.
- Integrate skills and knowledge acquired over the course of an undergraduate education for the purpose of effectively teaching computer science in the public schools in compliance with the established competencies, as well as prepare students for career options with industry/government sectors.
- Integrate varied educational opportunities to create distinctive learning experiences oriented to students' specific needs and interests.
- Effectively communicate in writing on topics in the field of computer science through the purposeful use of analysis, insightful reasoning, and supporting details.
Criminal Background Check
Teacher preparation programs at UTSA requires fieldwork in public schools. This requires that a student be able to pass a criminal background check conducted by the school districts. It is the responsibility of the student to determine if their criminal history background will present a problem before applying for admission to the teacher preparation program. Students with a problematic criminal history will encounter difficulty in completing any fieldwork requirements and may not be able to complete the program.
All candidates seeking this degree must fulfill the Core Curriculum requirements and the degree requirements, which are listed below.
Core Curriculum Requirements (42 semester credit hours)
Students seeking the B.A. degree in Computer Science must fulfill University Core Curriculum requirements in the same manner as other students. The course listed below will satisfy both degree requirements and Core Curriculum requirements; however, if this course is taken to satisfy both requirements, then students may need to take an additional course in order to meet the minimum number of semester credit hours required for this degree.
MAT 1214 may be used to satisfy the core requirement in Mathematics as well as a major requirement.
For a complete listing of courses that satisfy the Core Curriculum requirements, see Core Curriculum Component Area Requirements.
Core Curriculum Component Area Requirements
First Year Experience Requirement (3 semester credit hours)
All students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AIS 1203 | Academic Inquiry and Scholarship | 3 |
AIS 1213 | AIS: Architecture, Construction, and Planning | 3 |
AIS 1223 | AIS: Arts and Humanities | 3 |
AIS 1233 | AIS: Business | 3 |
AIS 1243 | AIS: Engineering, Mathematics, and Sciences | 3 |
AIS 1253 | AIS: Interdisciplinary Education | 3 |
AIS 1263 | AIS: Life and Health Sciences | 3 |
AIS 1273 | AIS: Social Sciences and Public Policy | 3 |
Communication (6 semester credit hours)
Students must complete the following courses, for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
WRC 1013 | Freshman Composition I | 3 |
WRC 1023 | Freshman Composition II | 3 |
Mathematics (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
CS 1173 | Data Analysis and Visualization | 3 |
MAT 1023 | College Algebra with Applications | 3 |
MAT 1043 | Introduction to Mathematics | 3 |
MAT 1053 | Mathematics for Business | 3 |
MAT 1073 | Algebra for Scientists and Engineers | 3 |
MAT 1093 | Precalculus | 3 |
MAT 1133 | Calculus for Business | 3 |
MAT 1193 | Calculus for the Biosciences | 3 |
MAT 1214 | Calculus I | 4 |
STA 1053 | Basic Statistics | 3 |
Life and Physical Sciences (6 semester credit hours)
Students must complete two of the following courses for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
ANT 2033 | Introduction to Biological Anthropology | 3 |
AST 1013 | Introduction to Astronomy | 3 |
AST 1033 | Exploration of the Solar System | 3 |
BIO 1203 | Biosciences I for Science Majors | 3 |
BIO 1223 | Biosciences II for Science Majors | 3 |
BIO 1233 | Contemporary Biology I | 3 |
BIO 1243 | Contemporary Biology II | 3 |
CHE 1083 | Introduction to the Molecular Structure of Matter | 3 |
CHE 1093 | Introduction to Molecular Transformations | 3 |
ES 1113 | Environmental Botany | 3 |
ES 1123 | Environmental Zoology | 3 |
ES 1213 | Environmental Geology | 3 |
ES 2013 | Introduction to Environmental Science I | 3 |
ES 2023 | Introduction to Environmental Science II | 3 |
GEO 1013 | The Third Planet | 3 |
GEO 1033 | Geology of North American National Parks | 3 |
GEO 1123 | Life Through Time | 3 |
GES 2613 | Intro to Physical Geography | 3 |
PHY 1943 | Physics for Scientists and Engineers I | 3 |
PHY 1963 | Physics for Scientists and Engineers II | 3 |
Language, Philosophy and Culture (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AAS 2013 | Introduction to African American Studies | 3 |
AAS 2113 | African American Culture, Leadership and Social Issues | 3 |
ANT 2063 | Language, Thought, and Culture | 3 |
ARC 1113 | Introduction to the Built Environment | 3 |
ARC 2423 | Global History of Architecture and Urbanism: Renaissance to 19th Century | 3 |
CHN 1014 | Elementary Chinese I | 4 |
CLA 2013 | Introduction to Ancient Greece | 3 |
CLA 2023 | Introduction to Ancient Rome | 3 |
CLA 2323 | Classical Mythology | 3 |
CSH 1103 | Literary Masterpieces of Western Culture I | 3 |
CSH 1113 | Literary Masterpieces of Western Culture II | 3 |
CSH 1213 | Topics in World Cultures | 3 |
CSH 2113 | The Foreign Film | 3 |
ENG 2013 | Introduction to Literature | 3 |
ENG 2023 | Literature and Film | 3 |
ENG 2213 | Literary Criticism and Analysis | 3 |
ENG 2383 | Multiethnic Literatures of the United States | 3 |
ENG 2423 | Literature of Texas and the Southwest | 3 |
ENG 2443 | Persuasion and Rhetoric | 3 |
FRN 1014 | Elementary French I | 4 |
FRN 2333 | French Literature in English Translation | 3 |
GER 1014 | Elementary German I | 4 |
GER 2333 | German Literature in English Translation | 3 |
GES 1023 | World Regions & Global Change | 3 |
GLA 1013 | US in Global Context | 3 |
GRK 1114 | Introductory Classical Greek I | 4 |
HIS 2123 | Introduction to World Civilization to the Fifteenth Century | 3 |
HIS 2133 | Introduction to World Civilization since the Fifteenth Century | 3 |
HIS 2533 | Introduction to Latin American Civilization | 3 |
HIS 2543 | Introduction to Islamic Civilization | 3 |
HIS 2553 | Introduction to East Asian Civilization | 3 |
HIS 2573 | Introduction to African Civilization | 3 |
HIS 2583 | Introduction to South Asian Civilization | 3 |
HUM 2093 | World Religions | 3 |
ITL 1014 | Elementary Italian I | 4 |
ITL 2333 | Italian Literature in English Translation | 3 |
JPN 1014 | Elementary Japanese I | 4 |
LAT 1114 | Introductory Latin I | 4 |
MAS 2013 | Introduction to Chicano(a) Studies | 3 |
PHI 1043 | Critical Thinking | 3 |
PHI 2013 | Basic Philosophical Problems | 3 |
PHI 2023 | Introduction to Ancient Philosophy | 3 |
PHI 2033 | Introduction to Early Modern Philosophy | 3 |
PHI 2123 | Contemporary Moral Issues | 3 |
RUS 1014 | Elementary Russian I | 4 |
RUS 2333 | Russian Literature in English Translation | 3 |
SPN 1014 | Elementary Spanish I | 4 |
SPN 2333 | Hispanic Literature in English Translation | 3 |
WGSS 2013 | Introduction to Women’s Studies | 3 |
WGSS 2023 | Introduction to LGBTQ Studies | 3 |
Creative Arts (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AHC 1113 | Art History I | 3 |
AHC 1123 | Art History II | 3 |
ARC 1513 | Great Buildings and Cities of the World | 3 |
ARC 2413 | Global History of Architecture and Urbanism: Prehistory to Medieval | 3 |
ART 1103 | Introduction to Visual Arts | 3 |
BBL 2023 | Latino Cultural Expressions | 3 |
CLA 2033 | Introduction to Classical Literature | 3 |
DAN 2003 | Introduction to Dance | 3 |
HUM 2023 | Introduction to the Humanities I | 3 |
HUM 2033 | Introduction to the Humanities II | 3 |
HUM 2053 | History of Film | 3 |
MAS 2023 | Latino Cultural Expressions | 3 |
MUS 2243 | World Music in Society | 3 |
MUS 2633 | American Roots Music | 3 |
MUS 2653 | Music in Culture | 3 |
MUS 2663 | History and Styles of Jazz | 3 |
MUS 2673 | History and Styles of Rock | 3 |
MUS 2683 | History and Styles of Western Art Music | 3 |
MUS 2713 | History of Recorded Music | 3 |
MUS 2743 | Music and Film | 3 |
PHI 2073 | Philosophy of Art | 3 |
American History (6 semester credit hours)
Students must complete two of the following courses, for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
HIS 1043 | United States History: Pre-Columbus to Civil War Era | 3 |
HIS 1053 | United States History: Civil War Era to Present | 3 |
HIS 2053 | Texas History | 3 |
Government-Political Science (6 semester credit hours)
Students must complete two of the following courses, for a total of 6 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
POL 1013 | Introduction to American Politics | 3 |
and one of the following two courses: | ||
POL 1133 | Texas Politics and Society | 3 |
POL 1213 | Civil Rights in Texas and America | 3 |
Social and Behavioral Sciences (3 semester credit hours)
Students must complete one of the following courses, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
AMS 2043 | Approaches to American Culture | 3 |
ANT 1013 | Introduction to Anthropology | 3 |
ANT 2043 | Introduction to Archaeology | 3 |
ANT 2053 | Introduction to Cultural Anthropology | 3 |
BBL 2003 | Language, Culture, and Society | 3 |
BBL 2243 | Bilingual Families, Communities, and Schools: National and Transnational Experiences | 3 |
BIO 1033 | Drugs and Society | 3 |
CRJ 1113 | The American Criminal Justice System | 3 |
ECO 2003 | Economic Principles and Issues | 3 |
ECO 2023 | Introductory Microeconomics | 3 |
EGR 1343 | The Impact of Modern Technologies on Society | 3 |
ES 1003 | Survey Topics in Environmental Studies | 3 |
GES 1013 | Fundamentals of Geography | 3 |
GES 2623 | Human Geography: People, Place, Culture | 3 |
HTH 2413 | Introduction to Community and Public Health | 3 |
HTH 2513 | Personal Health | 3 |
IDS 2113 | Society and Social Issues | 3 |
PSY 1013 | Introduction to Psychology | 3 |
SOC 1013 | Introduction to Sociology | 3 |
SOC 2013 | Social Problems | 3 |
SOC 2023 | Social Context of Drug Use | 3 |
Component Area Option (CAO) (3 semester credit hours)
Students must complete either one of the following courses or any additional Core Curriculum course not previously used to satisfy a core component area requirement, for a total of 3 semester credit hours:
Code | Title | Credit Hours |
---|---|---|
COM 2113 | Public Speaking | 3 |
EGR 1403 | Technical Communication | 3 |
ENG 2413 | Technical Writing | 3 |
PAD 1113 | Public Administration and Policy in American Society | 3 |
PHI 2043 | Introductory Logic | 3 |
Core Curriculum Component Area Requirements
First Year Experience Requirement | 3 | |
Communication | 6 | |
Mathematics | 3 | |
Life and Physical Sciences | 6 | |
Language, Philosophy and Culture | 3 | |
Creative Arts | 3 | |
American History | 6 | |
Government-Political Science | 6 | |
Social and Behavioral Sciences | 3 | |
Component Area Option | 3 | |
Total Credit Hours | 42 |
Gateway Courses
Students pursuing the B.A. Degree in Computer Science must successfully complete each of the following Gateway Courses with a grade of “C-” or better in no more than two attempts. A student who is unable to successfully complete these courses within two attempts, including dropping a course with a grade of “W” or taking an equivalent course at another institution, will be required to change his or her major.
Code | Title | Credit Hours |
---|---|---|
CS 1714 | Computer Programming II | 4 |
CS 2124 | Data Structures | 4 |
Degree Requirements
Code | Title | Credit Hours |
---|---|---|
A. Required courses (this also satisfies the 3 hours of core curriculum requirement for Mathematics) | ||
CS 1011 | Essence of Computer Science | 1 |
CS 1083 | Programming I for Computer Scientists | 3 |
CS 1714 | Computer Programming II | 4 |
CS 2124 | Data Structures | 4 |
CS 2233 | Discrete Mathematical Structures | 3 |
CS 3333 | Mathematical Foundations of Computer Science | 3 |
CS 3343 | Analysis of Algorithms | 3 |
CS 3424 | Systems Programming | 4 |
CS 3443 | Application Programming | 3 |
CS 3843 | Computer Organization | 3 |
MAT 1214 | Calculus I (The student who is not prepared for MAT 1214 must take MAT 1093 Precalculus.) | 4 |
MAT 1224 | Calculus II | 4 |
B. Upper-Division computer science electives | 12 | |
Any of upper division computer science electives in the B.S. in Computer Science program | ||
C. Education Courses | ||
30 semester credit hours of UTeachSA and education courses | ||
UTE 1111 | Introduction to STEM Teaching Step 1 | 1 |
UTE 1122 | Introduction to STEM Teaching Step 2 | 2 |
UTE 3023 | Perspectives on Science and Mathematics | 3 |
UTE 3203 | Knowing and Learning in Mathematics and Science | 3 |
UTE 3213 | Classroom Interactions | 3 |
UTE 4203 | Project-Based Instruction | 3 |
ESL 3083 | Second Language Teaching and Learning for Grades 7-12 | 3 |
LTED 3773 | Reading and Writing Across the Disciplines-Grades 7–12 | 3 |
SPE 3603 | Introduction to Special Education | 3 |
UTE 4646 | Clinical Teaching | 6 |
Total Credit Hours | 81 |
Course Sequence Guide for B.A. Degree in Computer Science with Teaching Track
This course sequence guide is designed to assist students in completing their UTSA undergraduate B.A. in Computer Science degree requirements. This is merely a guide and students must satisfy other requirements of this catalog and meet with their academic advisor for individualized degree plans. Progress within this guide depends upon such factors as course availability, individual student academic preparation, student time management, work obligations, and individual financial considerations. Students may choose to take courses during Summer terms to reduce course loads during long semesters.
B.A. in Computer Science with Teaching Track - Recommended Four-Year Academic Plan
First Year | ||
---|---|---|
Fall | Credit Hours | |
AIS 1203 | Academic Inquiry and Scholarship (core) | 3 |
CS 1011 | Essence of Computer Science | 1 |
CS 1083 | Programming I for Computer Scientists | 3 |
MAT 1214 | Calculus I (core and major) | 4 |
WRC 1013 | Freshman Composition I (core) | 3 |
UTE 1111 | Introduction to STEM Teaching Step 1 | 1 |
Credit Hours | 15 | |
Spring | ||
CS 1714 | Computer Programming II | 4 |
MAT 1224 | Calculus II | 4 |
POL 1133 or POL 1213 | Texas Politics and Society (core) or Civil Rights in Texas and America | 3 |
WRC 1023 | Freshman Composition II (core) | 3 |
UTE 1122 | Introduction to STEM Teaching Step 2 | 2 |
Credit Hours | 16 | |
Second Year | ||
Fall | ||
CS 2124 | Data Structures | 4 |
CS 2233 | Discrete Mathematical Structures | 3 |
POL 1013 | Introduction to American Politics (core) | 3 |
UTE 3203 | Knowing and Learning in Mathematics and Science | 3 |
Life & Physical Sciences (core) | 3 | |
Credit Hours | 16 | |
Spring | ||
CS 3333 | Mathematical Foundations of Computer Science | 3 |
CS 3443 | Application Programming | 3 |
UTE 3023 | Perspectives on Science and Mathematics | 3 |
Life & Physical Sciences (core) | 3 | |
Social & Behavioral Sciences (core) | 3 | |
Credit Hours | 15 | |
Third Year | ||
Fall | ||
CS 3424 | Systems Programming | 4 |
CS 3843 | Computer Organization | 3 |
ESL 3083 | Second Language Teaching and Learning for Grades 7-12 | 3 |
Component Area Option (core) | 3 | |
Creative Arts (core) | 3 | |
Credit Hours | 16 | |
Spring | ||
CS 3343 | Analysis of Algorithms | 3 |
SPE 3603 | Introduction to Special Education | 3 |
UTE 3213 | Classroom Interactions | 3 |
American History (core) | 3 | |
Language, Philosophy & Culture (core) | 3 | |
Credit Hours | 15 | |
Fourth Year | ||
Fall | ||
LTED 3773 | Reading and Writing Across the Disciplines-Grades 7–12 | 3 |
UTE 4203 | Project-Based Instruction | 3 |
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
American History (core) | 3 | |
Credit Hours | 15 | |
Spring | ||
UTE 4646 | Clinical Teaching | 6 |
Upper-division CS elective | 3 | |
Upper-division CS elective | 3 | |
Credit Hours | 12 | |
Total Credit Hours | 120 |
Minor in Computer Science
All students pursuing the Minor in Computer Science must complete 20 semester credit hours. The purpose of the minor in Computer Science is to provide students with strong computational thinking and software development skills that can help them solve problems from their major program of study and better collaborate with interdisciplinary teams when working on computationally-intensive projects.
All required and elective courses must be completed with a grade of "C-" or better.
Code | Title | Credit Hours |
---|---|---|
A. Required courses | ||
CS 1083 | Programming I for Computer Scientists | 3 |
CS 1714 | Computer Programming II | 4 |
CS 2124 | Data Structures | 4 |
B. CS core courses or approved CS electives | ||
Select 9 hours of additional CS core courses or approved CS electives, at least 6 hours of which must be at the upper-division level. The "CS electives" should be organized CS courses other than internship or independent study. | 9 | |
Total Credit Hours | 20 |
To declare a Minor in Computer Science, obtain advice, or seek approval of substitutions for course requirements, students should consult with their academic advisor.
Computer Science (CS) Courses
CS 1011. Essence of Computer Science. (1-0) 1 Credit Hour.
An exploration of the essential ideas of Computer Science with emphasis on computers, computational thinking, and problem solving. This course also offers a brief examination of the modern information society and the influences of technological advances on society and culture. Generally offered: Fall, Spring. Course Fees: LRS1 $15.40; STSI $7.20; IUCS: $15.
CS 1063. Introduction to Computer Programming I. (3-0) 3 Credit Hours.
Prerequisite: MAT 1073 or the equivalent.
An introduction to computer programming using a modern object-oriented computer language. Topics include assignment, decisions, loops, methods and arrays using objects. Generally offered: Fall, Spring, Summer. Course Fees: IUCS $45; LRS1 $46.20; STSI $21.60; DL01 $75.
CS 1083. Programming I for Computer Scientists. (3-0) 3 Credit Hours. (TCCN = COSC 1336)
Prerequisite: MAT 1073 or the equivalent.
An introduction to computer programming emphasizing structured programming, problem solving, and algorithmic thinking. Topics include assignment, decisions, loops, methods, arrays, and use of objects. Students intending to major or minor in Computer Science should take this course instead of CS 1063. Generally offered: Fall, Spring, Summer. Course Fees: IUCS $45; LRS1 $46.20; STSI $21.60; DL01 $75.
CS 1153. Game Programming. (3-0) 3 Credit Hours.
Prerequisite: Computer literacy.
Introduction to game design and programming. Common practices used in the video game industry today will also be introduced. Students will learn the basics of creating a PC game through lecture material, hands-on laboratories, and a final project in which the students will build a simple game. Generally offered: Fall. Course Fees: IUCS $45; LRS1 $46.20; STSI $21.60.
CS 1173. Data Analysis and Visualization. (3-0) 3 Credit Hours.
Prerequisite: MAT 1023.
Introduction to computation for data analysis and visualization in a programming language such as MATLAB or R. Programming concepts including functions, scripting, loops and logic, handling of vectors and structured data are explored in the context of working with and plotting real data. May be applied toward the Mathematics Core Curriculum requirement. (Formerly titled "Computation for Scientists and Engineers.") Generally offered: Fall, Spring, Summer. Course Fees: DL01 $75; IUCS $45; LRC1 $12; LRS1 $46.20; STSI $21.60.
CS 1714. Computer Programming II. (4-0) 4 Credit Hours. (TCCN = COSC 1437)
Prerequisite: CS 1083. Extended programming concepts including multidimensional arrays, pointers, dynamic memory allocation/deallocation and recursion. Problem solving methods, algorithm development and implementation. The course includes 3 hours of lecture and a mandatory 1-hour recitation per week. (Formerly CS 1713. Credit cannot be earned for both CS 1714 and CS 1713.) Generally offered: Fall, Spring, Summer. Course Fees: IUCS $60; LRS1 $61.60; STSI $28.80; DL01 $100.
CS 2073. Computer Programming with Engineering Applications. (3-0) 3 Credit Hours. (TCCN = ENGR 2304)
Prerequisites: MAT 1214 and completion of or concurrent enrollment in MAT 1224.
Algorithmic approaches to problem solving and computer program design for engineers. Engineering and mathematically-oriented problem sets will be emphasized, including nonnumeric applications. Searching, sorting, linked lists, and data typing will be introduced. May not be applied toward a major in computer science. Generally offered: Fall, Spring. Course Fees: IUCS $45; LRS1 $46.20; STSI $21.60.
CS 2124. Data Structures. (4-0) 4 Credit Hours.
Prerequisites: CS 1714 and completion of or concurrent enrollment in MAT 1214.
Abstract data structures (stacks, queues, lists, trees), recursion, sorting, and searching. Implementation of data structures using explicit memory management, and introduction to abstract data type design and encapsulation. The course includes 3 hours of lecture and a mandatory 1-hour recitation per week. (Formerly CS 1723 and CS 2123. Credit can only be earned for one of the following courses: CS 2124, CS 1723, or CS 2123.) Generally offered: Fall, Spring, Summer. Course Fees: IUCS $60; LRS1 $61.60; STSI $28.80; DL01 $100.
CS 2233. Discrete Mathematical Structures. (3-0) 3 Credit Hours. (TCCN = MATH 2305)
Prerequisites: MAT 1093 and one of the following: CS 1083, CS 1063, CS 2073, CPE 2073.
Survey and development of theoretical tools suitable for describing algorithmic applications. Propositional and predicate calculus, proofs, induction, order notation, recurrences, and discrete structures. (Formerly CS 3233. Credit cannot be earned for both CS 2233 and CS 3233.) Generally offered: Fall, Spring. Course Fees: IUCS $45; LRS1 $46.20; STSI $21.60; DL01 $75.
CS 3113. Principles of Cybersecurity. (3-0) 3 Credit Hours.
Prerequisite: Completion of or concurrent enrollment in CS 2124.
An introductory course in Cybersecurity, including an examination of the fundamental principles underlying cybersecurity, how these principles interrelate, and how they are typically employed to secure computer systems and networks. The course will also examine how failures in fundamental security design principles can lead to system vulnerabilities that can be exploited and will also examine the legal issues governing cyber law and cyber operations. (Formerly CS 2433. Credit cannot be earned for both CS 3113 and CS 2433.) Generally offered: Fall, Spring. Course Fees: DL01 $75; IUCS $45. Differential Tuition: $150.
CS 3333. Mathematical Foundations of Computer Science. (3-0) 3 Credit Hours.
Prerequisites: CS 1714 and MAT 1224.
Survey and development of mathematical and statistical tools suitable for describing algorithmic applications. Vectors, matrices, combinatorics, probability and statistical models. Generally offered: Fall, Spring, Summer. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3343. Analysis of Algorithms. (3-0) 3 Credit Hours.
Prerequisites: CS 2124, CS 2233, and CS 3333.
Analysis of the performance of algorithms; discussion of programming techniques and data structures used in the writing of effective algorithms. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3424. Systems Programming. (4-0) 4 Credit Hours.
Prerequisite: CS 2124.
A study of systems-level programming in a specific system (at present, Unix). Focus on concepts and tools to support the construction of systems programs. The course includes 3 hours of lecture and a mandatory 1-hour recitation per week. (Formerly CS 2413 and CS 3423. Credit can only be earned for one of the following courses: CS 3424, CS 2413, and CS 3423.) Generally offered: Fall, Spring, Summer. Differential Tuition: $200. Course Fees: IUCS $60; DL01 $100.
CS 3433. Computer and Information Security. (3-0) 3 Credit Hours.
Prerequisites: CS 3424 and consent of instructor.
An introduction to the protection of computer systems and networks. Topics will include authentication, access controls, malicious software, formal security methods, firewalls, intrusion detection, cryptography and information hiding, risk management, computer forensics, and ethics. Generally offered: Fall. Differential Tuition: $150. Course Fee: IUCS $45.
CS 3443. Application Programming. (3-0) 3 Credit Hours.
Prerequisite: CS 2124.
Advanced application development in a current object-oriented language. Introduction to the software life cycle, best programming practices, and modern development tools. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3523. Windows Systems Programming. (3-0) 3 Credit Hours.
Prerequisite: CS 2124.
A study of systems-level programming in the Windows Operating System. Focus on concepts and tools to support the construction of Windows systems programs. Learn and use tools like Powershell, Python, and command prompt. Understand in detail how the registry works, how to audit and log system changes, how to create new users, how to manipulate access control lists, etc. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 3723. Programming Languages. (3-0) 3 Credit Hours.
Prerequisites: CS 2233 and CS 3443.
An introduction to high-level procedural, functional, and object-oriented programming languages, their theoretical foundations, organization, and implementation. Topics include formal syntax, compilers and interpreters, type systems, scoping and activation records, control structures, and data abstraction. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3733. Operating Systems. (3-0) 3 Credit Hours.
Prerequisites: CS 3424, CS 3443, and CS 3843 (Formerly CS 3844).
An introduction to the functions and major techniques of a modern multiprogramming operating system. Includes exposure to the fundamentals of processor management, process synchronization, memory management, and peripheral management. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3743. Database Systems. (3-0) 3 Credit Hours.
Prerequisites: CS 2233 and CS 3424.
Study of fundamentals of database systems. Topics include basic concepts, various data models, database design, storage systems, indexing and hashing, database application design and implementation, and commercially available database systems. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3753. Data Science. (3-0) 3 Credit Hours.
Prerequisites: CS 2124 and CS 3333.
Study of fundamental methods and models of data science. Topics include data management, Extract-Transform-Loading methods, machine learning models, and data visualization. Use of a specialized programming language is emphasized. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3773. Software Engineering. (3-0) 3 Credit Hours.
Prerequisite: CS 3443.
Introduction to different aspects of software engineering with the concentration on processes, methods, and tools for developing reliable software-centered systems. Study of software development process models, project management, a variety of modeling notations, requirement analysis, architecture design methods, and testing techniques. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 3793. Artificial Intelligence. (3-0) 3 Credit Hours.
Prerequisite: CS 3343.
This course covers the construction of programs that use knowledge representation and reasoning to solve problems. Major topics include informed search, logical and probabilistic inference, machine learning, planning, and natural language processing. Generally offered: Fall, Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 3843. Computer Organization. (3-0) 3 Credit Hours.
Prerequisite: CS 1714.
Organization of a computer system is introduced at block diagram level. Programming in assembly language and understanding the macroarchitecture of a computer is emphasized. Fundamentals of digital systems are introduced, and the designs of various components used are investigated. (Formerly CS 2733 and CS 3844. Credit can only be earned for one of the following: CS 2733, CS 3844, or CS 3843.) Generally offered: Fall, Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 3853. Computer Architecture. (3-0) 3 Credit Hours.
Prerequisites: CS 3843 and CS 2124.
Instruction set architecture, datapath and control unit design, advanced computer arithmetic, pipelining, memory hierarchy and I/O subsystem, performance issues. (Formerly CS 4753. Credit cannot be earned for both CS 3853 and CS 4753.) Generally offered: Fall, Spring. Course Fees: IUCS $45; DL01 $75. Differential Tuition: $150.
CS 3873. Computer Networks. (3-0) 3 Credit Hours.
Prerequisites: CS 3424 and CS 3443.
Network architecture, TCP/IP protocol suite, routing, data-link layer protocols, medium access control protocols, error detection and recovery, local area networks, wireless and mobile networks. (Formerly CS 4873. Credit cannot be earned for both CS 3873 and CS 4873.) Generally offered: Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 4013. Fundamentals of Software. (3-0) 3 Credit Hours.
Prerequisite: Consent of instructor.
This course is a bridge course for non-Computer Science students. It cannot be applied to the undergraduate degrees in computer science. Topics include discrete math, advanced data structure and basic algorithms, such as binary tree and stack, as well as system programming basics and concepts of compilation. Generally offered: Fall, Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4023. Fundamentals of Systems. (3-0) 3 Credit Hours.
Prerequisite: Consent of instructor.
This course is a bridge course for non-Computer Science students. It cannot be applied to the undergraduate degrees in computer science. Topics include basic concepts and knowledge in computer organization, architecture, operating systems, and compilers. Generally offered: Fall, Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4223. Bioinformatics I: Algorithms for Biological Data. (3-0) 3 Credit Hours.
Prerequisites: CS 3343.
Study of algorithmic techniques in modeling and analyzing large-scale biological data such as biological sequences, gene expression, and biological networks. Topics include, but are not limited to, dynamic programming and string pre-processing for sequence comparison, heuristic search algorithms for pattern discovery, and graph algorithms for biological network analysis. Some fundamental concepts of molecular biology will also be introduced. Generally offered: Fall. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4233. Bioinformatics II: Statistical Learning for Biological Data. (3-0) 3 Credit Hours.
Prerequisites: CS 3753 or CS 4223.
Study of statistical techniques in modeling and analyzing large-scale biological data with emphasis on integrating information and tools from publicly available biological databases to address complex problems. Topics include, but are not limited to, statistical significance testing, clustering, classification, and dimension reduction. Basic biological concepts related to the applications will also be covered. Generally offered: Spring. Course Fees: IUCS: $45. Differential Tuition: $150.
CS 4243. Large-Scale Data Management. (3-0) 3 Credit Hours.
Prerequisites: CS 3424.
This course presents an introduction to research and enterprise data management. Students will learn about scalable approaches to managing large-scale datasets. Application of High-Performance Computing, High-Throughput Computing, and AI for managing large-scale datasets will be covered. An overview of the SQL and NoSQL database management systems will also be included. Generally offered: Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4253. Machine Learning. (3-0) 3 Credit Hours.
Prerequisite: CS 3343 and CS 3753.
Study of fundamental concepts and methods of machine learning. Topics include unsupervised learning, supervised learning, reinforcement learning, and other advanced topics selected by instructor. Generally offered: Fall. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4263. Deep Learning. (3-0) 3 Credit Hours.
Prerequisite: One of the following: CS 3753, CS 3793, CS 4233, or CS 4253.
Study of advanced techniques for learning models. Algorithmic and hands-on introduction to deep neural networks and adversarial learning. Topics include convolutional models, generative networks, neural network vulnerabilities, and attention models, with applications in natural language understanding and computer vision. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4303. Introduction to Optimization. (3-0) 3 Credit Hours.
Prerequisites: (MAT 2214 and MAT 2233) or EGR 3323 or (MAT 1224 and CS 3333).
May include Discrete, Continuous, Linear, and non-Linear optimization. Optimality conditions, Lagrange multipliers, duality theory. Applications of linear programming in computer science and discrete optimization. Gradient descent and Newton iteration (i.e., RST and second order methods), trust region methods, and conjugate gradient. Applications of RST and second order methods to engineering. Same as MAT 4343. Credit cannot be earned for both CS 4303 and MAT 4343. Generally offered in Fall. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4313. Automata, Computability, and Formal Languages. (3-0) 3 Credit Hours.
Prerequisite: CS 3343.
Discussion of abstract machines (finite state automata, pushdown automata, and Turing machines), formal grammars (regular, context-free, and type 0), and the relationship among them. Generally Offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4333. Probability and Computing. (3-0) 3 Credit Hours.
Prerequisites: CS 3333 or MAT 2313.
May include moments of random variables: randomized mincut algorithm, Chebyshev and Markov inequalities, sampling estimator for mean. Basic Concentration Inequalities: Chernoff and Hoeffding inequalities; parameter estimation and set balancing. Discrete probabilistic structures: Bucket sort algorithm, Poisson approximation, Lovasz local Lemma, independent set search. The Gaussian: Moment Generating Functions, Central Limit Theorem, JL dimensionality reduction lemma. Markov Chains and Random Walks: Stationary Distributions, and randomized 3-SAT algorithm, Entropy Function: Information and Compression. Same as with MAT 4333. Credit cannot be earned for both CS 4333 and MAT 4333. Generally offered in Springs. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4353. Unix and Network Security. (3-0) 3 Credit Hours.
Prerequisite: CS 3433.
A technical survey of the fundamentals of computer and information security. Issues include cryptography, authentication, attack techniques at both the OS and network level, defense techniques, intrusion detection, scan techniques and detection, forensics, denial of service techniques and defenses, libpcap, libdnet and libnet programming. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4363. Cryptography. (3-0) 3 Credit Hours.
Prerequisites: CS 3343, and CS 3113 or CS 3433.
A course in pure and applied cryptography, with emphasis on theory. Topics may include conventional and public-key cryptosystems, signatures, pseudo-random sequences, hash functions, key management, and threshold schemes. Generally offered: Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 4373. Data Mining. (3-0) 3 Credit Hours.
Prerequisites: CS 3343 and CS 3753.
Principles, techniques, systems, and evaluation of data mining. Topics may include data preprocessing, frequent pattern mining, association mining, classification and prediction, cluster analysis, and advanced topics such as mining streams, time-Series, texts, and graphs. Generally offered: Fall. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4383. Computer Graphics. (3-0) 3 Credit Hours.
Prerequisites: CS 2124 and CS 3343.
An introduction to two- and three-dimensional generative computer graphics. Display devices, data structures, mathematical transformations, and algorithms used in picture generation, manipulation, and display. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4393. User Interfaces. (3-0) 3 Credit Hours.
Prerequisite: CS 3443.
Study of advanced user interface issues. User interface design, human factors, usability, GUI programming models, and the psychological aspects of human-computer interaction. Generally offered: Fall. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 4413. Web Technologies. (3-0) 3 Credit Hours.
Prerequisite: CS 3424.
Fundamentals of Web and component technology: markup languages, layout design, client and server side programming, database and Web integration. Generally offered: Fall. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4423. Game Development. (3-0) 3 Credit Hours.
Prerequisite: CS 3443.
A study of the major topics in game development, such as game mechanics, rendering, scripting, user interfaces, animation, asset management, and physics, with a focus on team-based development practices. By the end of the course, students will have developed a full game with a group and several mini-games individually. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 4453. Penetration Testing. (3-0) 3 Credit Hours.
Prerequisite: CS 3873.
Introduction to the principles and techniques associated with the cyber security practice known as penetration testing or ethical hacking. The course covers planning, reconnaissance, scanning, exploitation, post-exploitation, and result reporting. Students learn how to use penetration testing tools, how to discover system vulnerabilities and how to avoid exploitation of vulnerabilities. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4463. Steganography. (3-0) 3 Credit Hours.
Prerequisite: CS 3424.
Steganography literally means "covered writing" and is the science of hiding secret data within innocuous data. This course covers a broad set of background topics including data compression, encryption, hashing, number theory, and human perception. Then we delve into the aspects and techniques for data hiding using image and audio files for data hiding. This includes bitmaps, jpegs, and wave files. We also explore steganalysis—the detection of hidden data—in the various file types. We also discuss the use of steganography in practice, particularly use by malware. There is a course project where a team of students develop and test their own steganography program. Generally offered: Spring, Summer. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4473. Cryptocurrencies and Bitcoins. (3-0) 3 Credit Hours.
Prerequisite: CS 3113.
This course introduces the concept of public permission-less blockchains and discusses the various applications that it enables. It specifically focuses on the cryptocurrency application of such distributed systems, with an emphasis on Bitcoins. This course will cover the following topics: blockchain fundamentals, operation of the Bitcoin cryptocurrency, Bitcoin security, user privacy and anonymity in Bitcoin, Bitcoin as a distributed application platform, Bitcoin and cryptocurrency regulation, future of Bitcoins and cryptocurrencies, Ethereum and Smart Contracts. Generally offered: Fall. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4483. Cyber Security Foundations and Practice. (3-0) 3 Credit Hours.
Prerequisite: CS 3113.
Advanced study of fundamental cyber security and privacy technologies and their applications in modern and emerging cyber systems such as social media, cloud computing, internet of things, cyber-physical systems and cryptocurrencies. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4493. Advanced Topics in Cyber Security. (3-0) 3 Credit Hours.
Prerequisite: Consent of instructor.
Advanced topics in an area of systems and cloud. May be repeated for credit when topics vary. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4593. Topics in Computer Science. (3-0) 3 Credit Hours.
Prerequisite: Consent of instructor.
Advanced topics in an area of computer science. May be repeated for credit when topics vary. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4613. Senior Design I. (3-0) 3 Credit Hours.
Prerequisites: CS 3443 and CS 3773.
Students will self-organize into teams, prepare/propose project scope, gather requirements, produce specifications, analyze security and other risk factors, and present their designs. Industrial collaboration and/or faculty sponsorship of these projects is encouraged. Not more than a total of 6 semester credit hours of Internship, Independent Study, Senior Design, and Senior Thesis courses may count toward the Bachelor of Science degree in Computer Science. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4623. Senior Design II. (3-0) 3 Credit Hours.
Prerequisite: CS 4613.
Students continue the development of an instructor-approved design project, testing of the design project, and present their findings, along with social and ethical impact considerations. Students who own their intellectual property are required to compete in CITE. Industrial collaboration and/or faculty sponsorship of these projects is encouraged. Not more than a total of 6 semester credit hours of Internship, Independent Study, Senior Design, and Senior Thesis courses may count toward the Bachelor of Science degree in Computer Science. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4633. Simulation Techniques. (3-0) 3 Credit Hours.
Prerequisite: CS 3343.
Design, execution, and analysis of simulation models, discrete event simulation techniques, input and output analysis, random numbers, and simulation tools and languages. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4643. Mobile and Wireless Network and Technologies. (3-0) 3 Credit Hours.
Prerequisites: CS 3873 or Consent of Instructor.
Introduces the latest mobile and wireless networking technologies and network software architectures as well as the application of IoT fundamentals for mobile/wireless computing systems. Students will be able to describe user associations and traffic routing in a mobile/wireless network, interaction of elements within the mobile/wireless core, and end-to-end delivery of a packet and/or signal and what happens with the hand-off at each step along the communications path. They will be able to explain architecture differences between different generations of mobile/wireless network technologies and design and build a mobile/wireless IoT application from ground up to demonstrate their understandings. Generally offered: Spring. Course Fees: IUCS $45; DL01 $75. Differential Tuition: $150.
CS 4653. Software and Malware Reverse Engineering. (3-0) 3 Credit Hours.
Prerequisites: CS 3843 (Formerly CS 3844), and CS 3113 or CS 3433. An introduction to the basic procedures to reverse engineering of software, hardware and malware. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4663. Distributed and Cloud Systems Security. (3-0) 3 Credit Hours.
Prerequisite: CS 3733.
A study of the uses and security issues of virtualization, distributed systems and cloud systems. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4673. Cyber Operations. (3-0) 3 Credit Hours.
Prerequisite: CS 3113 or CS 3433.
A study of both offensive and defensive cyber operations, risk management, social engineering, perception management, and the international legal issues and considerations surrounding cyber operations, conflict, and war. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 4683. Secure Software Development and Analysis. (3-0) 3 Credit Hours.
Prerequisite: CS 3443.
Analysis of software for vulnerabilities. Development of robust, secure software. Topics include source and binary code analysis, static and dynamic code analysis techniques, testing methodologies, secure programming principles and practices. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4713. Compiler Construction. (3-0) 3 Credit Hours.
Prerequisites: CS 3723 and CS 3843 (Formerly CS 3844).
An introduction to implementation of translators. Topics include formal grammars, scanners, parsing techniques, syntax-directed translation, symbol table management, code generation, and code optimization. (Formerly titled "Compiler Writing."). Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4723. Software Validation and Quality Assurance. (3-0) 3 Credit Hours.
Prerequisite: CS 3773.
Study of software validation techniques. Introduction to static analysis and software testing approaches (functional testing, structural testing, integration testing and regression testing). Overview of test planning and test case design. Review of topics in quality assurance. Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4743. Enterprise Software Engineering. (3-0) 3 Credit Hours.
Prerequisites: CS 3743 and CS 3773.
Providing a hands-on introduction to principles and best practices for the development of enterprise-level software systems. Topics include architectural patterns, database models, remote deployment and execution, and concurrency management. (Formerly titled "Applied Software Engineering.") Generally offered: Fall. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4773. Object-Oriented Systems. (3-0) 3 Credit Hours.
Prerequisite: CS 3773.
An introduction of principles and methodologies of good software design. Study of object-oriented concepts and techniques, encapsulation, inheritance mechanisms, polymorphism, and programming in one or more object-oriented languages. Examination of design patterns that provide reusable solutions to problems in object-oriented design. Generally offered: Fall. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4783. Advanced Software Engineering. (3-0) 3 Credit Hours.
Prerequisites: CS 3743 and CS 3773.
This course covers modern software development technology. Students utilize Swagger and JavaScript or Python to build a database-enabled RESTful web service component. Using a DevOps pipeline, students test and deploy their project using tools like Gitlab, CI/CD, OWASP ZAP, Docker, and Kubernetes. Generally offered: Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4823. Parallel Programming. (3-0) 3 Credit Hours.
Prerequisites: CS 3343 and CS 3424.
Parallel programming concepts (partitioning, synchronization and communication, programming models-shared memory based and message based), programming tools and languages, performance issues. Generally offered: Fall. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4833. Embedded Systems. (3-0) 3 Credit Hours.
Prerequisite: CS 3843 (Formerly CS 3844).
Concepts and design principles of embedded systems. Microprocessor and hardware architecture, sensors and actuators, basic feedback control theory. Real-time scheduling, programming in embedded systems. Generally offered: Fall. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4843. Cloud Computing. (3-0) 3 Credit Hours.
Prerequisite: CS 3424.
The general trend of modern computing in cloud. Cloud computing paradigm and associate key technologies. Programming in cloud environment (e.g., Hadoop, MapReduce, and OpenStack APIs). Privacy and security in Cloud. Generally offered: Fall, Spring, Summer. Differential Tuition: $150. Course Fees: IUCS $45; DL01 $75.
CS 4853. Advanced Systems Programming. (3-0) 3 Credit Hours.
Prerequisite: CS 3733. Concepts and knowledge on system booting, memory management, process and scheduling, interrupt handling, system calls, file systems, networking, device drivers and module programming. Runtime systems. Programming kernel modules in Linux. (Formerly titled "Systems Development and Programming.") Generally offered: Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4863. Distributed Computing and Systems. (3-0) 3 Credit Hours.
Prerequisite: CS 3733.
A distributed system comprises computers working together as a single unit. These systems are essential to the understanding of present and future computer applications. This course will include the following topics: concurrent processing, threads, network programming, distributed file systems, remote procedure calls, distributed objects, client-server models, and Internet protocols. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4883. Senior Thesis I. (3-0) 3 Credit Hours.
Prerequisite: Consent of Instructor.
The student learns how to conduct independent research. He/she selects a thesis topic, conducts a literature review, plans and executes an experiment, and gathers and analyzes data. Faculty sponsorship of the thesis is required and a faculty member should agree to sponsor the student before Senior Thesis I begins. Not more than a total of 6 semester credit hours of Internship, Independent Study, Senior Design; and Senior Thesis courses may count toward the Bachelor of Science degree in Computer Science. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4893. Senior Thesis II. (3-0) 3 Credit Hours.
Prerequisite: Consent of Instructor.
The student writes the thesis through a series of assignments. The student also prepares a presentation of his/her research and presents the thesis to the public during a Computer Science undergraduate research symposium. Faculty sponsorship of the thesis is required and should be the same faculty member from Thesis I (special exceptions are possible). Not more than a total of 6 semester credit hours of Internship, Independent Study, Senior Design, and Senior Thesis courses may count toward the Bachelor of Science degree in Computer Science. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4911. Independent Study. (0-0) 1 Credit Hour.
Prerequisites: Permission in writing (form available) from the instructor, the student’s advisor, the Department Chair, and the Dean of the College in which the course is offered.
Independent reading, research, discussion, and/or writing under the direction of a faculty member. May be repeated for credit, but not more than 6 semester credit hours of Independent Studies (CS 4911, CS 4912, CS 4913), Undergraduate Research (CS 4923), Senior Designs (CS 4613, CS 4623), and Internship (CS 4933), regardless of discipline, will apply to a bachelor’s degree. Generally offered: Fall, Spring. Course Fees: IUCS $15. Differential Tuition: $50.
CS 4912. Independent Study. (0-0) 2 Credit Hours.
Prerequisites: Permission in writing (form available) from the instructor, the student’s advisor, the Department Chair, and the Dean of the College in which the course is offered.
Independent reading, research, discussion, and/or writing under the direction of a faculty member. May be repeated for credit, but not more than 6 semester credit hours of Independent Studies (CS 4911, CS 4912, CS 4913), Undergraduate Research (CS 4923), Senior Designs (CS 4613, CS 4623), and Internship (CS 4933), regardless of discipline, will apply to a bachelor’s degree. Generally offered: Fall, Spring. Course Fees: IUCS $30. Differential Tuition: $100.
CS 4913. Independent Study. (0-0) 3 Credit Hours.
Prerequisites: Permission in writing (form available) from the instructor, the student’s advisor, the Department Chair, and the Dean of the College in which the course is offered.
Independent reading, research, discussion, and/or writing under the direction of a faculty member. May be repeated for credit, but not more than 6 semester credit hours of Independent Studies (CS 4911, CS 4912, CS 4913), Undergraduate Research (CS 4923), Senior Designs (CS 4613, CS 4623), and Internship (CS 4933), regardless of discipline, will apply to a bachelor’s degree. Generally offered: Fall, Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4923. Undergraduate Research. (0-0) 3 Credit Hours.
Prerequisites: Undergraduate standing in Computer Science and permission in writing (form available) from the instructor, the student’s advisor, the Department Chair, and the Dean of the College in which the course is offered.
The undergraduate research course should involve a laboratory, experimental and/or a theoretical problem. May be repeated for credit, but not more than 6 semester credit hours of Independent Studies (CS 4911, CS 4912, CS 4913), Undergraduate Research (CS 4923), Senior Designs (CS 4613, CS 4623), and Internship (CS 4933), regardless of discipline, will apply to a bachelor’s degree. Generally offered: Fall, Spring. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4933. Internship in Computer Science. (0-0) 3 Credit Hours.
Prerequisites: Junior or senior standing, an overall 2.5 grade point average, and permission in writing from the instructor, the Department Chair, and the Dean of the College of Sciences.
The opportunity for a semester-long work experience in a private business or public agency in a computer science-related position. Not more than 3 semester credit hours of CS 4933, and not more than 6 semester credit hours of Independent Studies (CS 4911, CS 4912, CS 4913), Undergraduate Research (CS 4923), Senior Designs (CS 4613, CS 4623), and Internship (CS 4933) may count toward the Bachelor of Science degree in Computer Science. Generally offered: Fall, Summer. Course Fees: IUCS $45. Differential Tuition: $150.
CS 4953. Special Studies in Computer Science. (3-0) 3 Credit Hours.
Prerequisite: Consent of instructor.
An organized course offering the opportunity for specialized study not normally or not often available as part of the regular course offerings. Special Studies may be repeated for credit when topics vary, but not more than 6 semester credit hours, regardless of discipline, will apply to a bachelor’s degree. Generally offered: Summer. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4963. Advanced Topics in Systems and Cloud. (3-0) 3 Credit Hours.
Prerequisite: Consent of instructor.
Advanced topics in an area of systems and cloud. May be repeated for credit when topics vary. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4973. Advanced Topics in Data Science. (3-0) 3 Credit Hours.
Prerequisite: Consent of instructor.
Advanced topics in an area of data science. May be repeated for credit when topics vary. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.
CS 4993. Honors Research. (0-0) 3 Credit Hours.
Prerequisites: Enrollment limited to candidates for College Honors during their last two semesters; approval by the College Honors Committee.
Supervised research and preparation of an honors thesis. May be repeated once with approval. Generally offered: Fall, Spring. Differential Tuition: $150. Course Fee: IUCS $45.