Erik Jonsson School of Engineering and Computer Science
Bachelor of Science in Computer Science (B.S.C.S.)
Goals for the Computer Science Program
The undergraduate Computer Science program is committed to provide students with a high-quality education and prepare them for long and successful careers in industry and government.
Our graduates, while eminently ready for immediate employment, will also be fully ready for focused training as required for specific positions in Computer Science and closely related areas. Graduates interested in highly technical careers, research, and/or academia will be fully prepared to further their education in graduate school.
Educational Objectives for the Computer Science Program
Graduates of the Computer Science program should:
- Have a successful, long-lived, computer science based career path
- Meet the needs of industry or academia
- Contribute to, and/or lead, computer science based teams
- Actively pursue continuing (lifelong) learning
Bachelor of Science in Computer Science Degree Requirements (125 hours)
I. Core Curriculum Requirements1: 42 hours
- Communication (6 hours)
- Social and Behavioral Sciences (15 hours)
- Humanities and Fine Arts (6 hours)
- Mathematics and Quantitative Reasoning (6 hours)
- Science (9 hours)
1 Curriculum Requirements can be fulfilled by other approved courses from accredited institutions of higher education. The courses listed in parentheses are recommended as the most efficient way to satisfy both Core Curriculum and Major Requirements at UT Dallas.
II. Major Requirements: 67 hours
Major Preparatory Courses (20 hours beyond Core Curriculum)
- ECS 1200 Introduction to Engineering and Computer Science
- CS 1337 Computer Science I
- CS 2305 Discrete Mathematics for Computing I
- CS 2336 Computer Science II
- MATH 2413 Differential Calculus or MATH 2417 Calculus I3
- MATH 2418 Linear Algebra
- MATH 2414 Integral Calculus or MATH 2419 Calculus II3
- PHYS 2125 Physics Laboratory I4
- PHYS 2126 Physics Laboratory II4
- PHYS 2325 Mechanics4
- PHYS 2326 Electromagnetism and Waves4
- 4 hours Science Elective4
Major Core Courses (38 hours beyond Core Curriculum)
- CS 3305 Discrete Mathematics for Computing II
- CS 3340 Computer Architecture
- CS 3341 Probability and Statistics in Computer Science and Software Engineering
- CS 3345 Data Structures and Introduction to Algorithmic Analysis
- CS 3354 Software Engineering
- CS 3376 C/C++ Programming in a UNIX Environment
- ECS 3361 Social Issues and Ethics in Computer Science and Engineering5
- ECS 3390 Professional and Technical Communication2
- CS 4141 Digital Systems Laboratory
- CS 4337 Organization of Programming Languages
- CS 4341 Digital Logic and Computer Design
- CS 4348 Operating Systems Concepts
- CS 4349 Advanced Algorithm Design and Analysis
- CS 4384 Automata Theory
- CS 4485 Computer Science Project
Major Guided Electives (9 hours)
CS guided electives are 4000 level CS courses approved by the student’s CS advisor. The following courses may be used as guided electives without the explicit approval of an advisor:
- CS 4314 Intelligent Systems Analysis
- CS 4315 Intelligent Systems Design
- CS 4334 Numerical Analysis
- CS 4336 Advanced Java
- CS/SE 4347 Database Systems
- CS 4352 Human Computer Interactions I
- CS 4353 Human Computer Interactions II
- CS 4361 Computer Graphics
- CS 4365 Artificial Intelligence
- CS 4375 Introduction to Machine Learning
- CS 4376 Object-Oriented Programming Systems
- CS 4386 Compiler Design
- CS 4389 Data and Applications Security
- CS 4390 Computer Networks
- CS 4391 Introduction to Computer Vision
- CS 4392 Computer Animation
- CS 4393 Computer and Network Security
- CS 4394 Implementation of Modern Operating Systems
- CS 4395 Human Language Technologies
- CS 4396 Networking Laboratory
- CS 4397 Embedded Computer Systems
- CS 4398 Digital Forensics
- CS 4399 Senior Honors in Computer Science/Software Engineering
- EE 4325 Introduction to VLSI Design
- SE 4351 Requirements Engineering
- SE 4352 Software Architecture and Design
- SE 4367 Software Testing, Verification, Validation and Quality Assurance
- SE 4381 Software Project Planning and Management
- SE 4485 Software Engineering Project
2 Hours fulfill the communication elective of the Core Curriculum.
3 Six hours of Calculus are counted under Mathematics Core, and two hours of Calculus are counted as Major Preparatory Courses.
4 Nine hours of Science are counted under Science Core. Three hours are counted under Major Preparatory Courses. Students should consult an advisor for specific classes that satisfy this requirement.
5 Hours contribute to the Social and Behavioral Sciences component of the Core Curriculum.
III. Elective Requirements: 16 hours
Advanced Electives (6 hours) All students are required to take at least six hours of advanced electives outside their major field of study. These must be either upper-division classes or lower-division classes that have prerequisites. Four of these hours may be satisfied with MATH 2418 counted under Major Preparatory Courses.
Free Electives (14 hours) Both lower- and upper-division courses may count as free electives but students must complete at least 51 hours of upper-division credit to qualify for graduation.
Degree programs in the Erik Jonsson School of Engineering and Computer Science are governed by various accreditation boards that place restrictions on classes used to meet the curricular requirements of degrees they certify. For this reason, not all classes offered by the University can be used to meet elective requirements. Please check with your academic advisor before enrolling in classes you hope to use as free electives.
Fast Track Baccalaureate/Master’s Degrees
In response to the need for post-baccalaureate education in the exciting field of computer science, a Fast Track program is available to exceptionally well-qualified students who choose their courses carefully. At the end of five years of successful study, it is possible to earn both the B.S. and the M.S. degrees in Computer Science (or M.S. in Computer Science with Major in Software Engineering). Being within 30 hours of graduation, a student admitted to the graduate program and accepted into the Fast Track program may, during the senior year, take 15 graduate hours that may be used to complete the baccalaureate degree and also to satisfy requirements for the master's degree.
Interested students should see the Associate Dean of Undergraduate Education (ADU) for specific admission requirements to the Fast Track program.
Honors Programs
The Department of Computer Science offers upper-division Honors for outstanding students in both the B.S. in Computer Science and B.S. in Software Engineering degree programs. These programs offer special sections of designated classes and other activities designed to enhance the educational experience of exceptional students. Admission to the Honors programs requires a 3.50 or better GPA in at least 30 hours of coursework. Graduation with Honors requires a 3.50 or better GPA and completion of at least 6 honors classes, including a Senior Thesis or Senior Design Project class. For more details, contact the Office of Undergraduate Advising (ECS South 2.502; 972-883-2004).
Departmental Honors with Distinction may be awarded to students whose Senior Thesis or Senior Design Project is judged by a faculty committee to be of exemplary quality. Only students graduating with Departmental Honors are eligible. Thesis/projects must be submitted by the deadline that applies to M.S. Theses and Ph.D. Dissertations in the graduating semester to allow for proper evaluation. Students interested in Honors with Distinction are encouraged to start working on their thesis/project a year prior to graduation.
Minors
A minor in Computer Science requires 21 credit hours earned through the following courses:
- CS 1337 Computer Science I
- CS 2305 Discrete Mathematics for Computing I
- CS 2336 Computer Science II
- CS 3305 Discrete Mathematics for Computing II
- CS 3345 Data Structures and Introduction to Algorithmic Analysis
- CS 3354 Software Engineering
- CS 43XX Elective (any 4000-level organized CS class or CS 4390)
A minor in Information Assurance requires 30 credit hours earned through the following courses:
- CS 1337 Computer Science I
- CS 2305 Discrete Mathematics for Computing I
- CS 2336 Computer Science II
- CS 3305 Discrete Mathematics for Computing II
- CS 3345 Data Structures and Introduction to Algorithmic Analysis
- CS 4347 Database Systems
- CS 4348 Operating Systems Concepts
- CS 4389 Data and Applications Security
- CS 4393 Computer and Network Security
- CS 4398 Digital Forensics
Certificates
A Certificate in Information Assurance can be obtained by completing the following (as well as any required prerequisites):
- CS 4389 Data and Applications Security
- CS 4393 Computer and Network Security
- CS 4398 Digital Forensics
The certificate is intended for those individuals who are working in the industry and who already have background similar to a BS-CS degree. CS and SE majors that complete the required classes, as well as students that complete the Minor in Information Assurance will be awarded certificates in Information Assurance.


