Jul 13, 2024  
2017-2018 Undergraduate Catalog 
2017-2018 Undergraduate Catalog [ARCHIVED CATALOG]

Computer Science Major, BS in Computer Science

Return to {$returnto_text} Return to: Tickle College of Engineering

Students may choose from a wide spectrum of courses covering various aspects of computer science, computer engineering, and related fields. Students must meet the design, depth, and breadth requirements in the department in their selection of these courses. Students are encouraged to discuss an appropriate program with their advisors.

uTrack Requirements (for students entering Fall 2013 or later)

Universal Tracking (uTrack) is an academic monitoring system designed to help students stay on track for timely graduation. In order to remain on track, students must complete the minimum requirements for each tracking semester, known as milestones. Milestones include successful completion of specified courses and/or attainment of a minimum GPA. uTrack requirements only affect full-time, degree-seeking students who first entered Fall 2013 or later. uTrack does not apply to transfer students who enter prior to Fall 2015.

Progression Policies and Requirements

The department requires at least a C in every computer engineering, computer science, electrical engineering, and mathematics course used for the undergraduate degrees.

Progression of departmental undergraduate students to the upper-division programs of the department is competitive and is based on the space available in the department. Factors considered in the decision include overall grade point average, grades earned in courses required in the lower-division curricula of the department and Tickle College of Engineering, and seriousness of purpose and interest in departmental programs as exemplified by regular and orderly progress through the prescribed curriculum without abuse of withdrawal and course repeat privileges.

Requirements for the Bachelor of Science in Computer Science

Term 1 Hours Milestone Notes
1COSC 102   4 MATH 130  or higher or one Arts and Humanities*, Cultures and Civilizations*, or Social Sciences* Elective
ENGL 101 * or ENGL 118  3  
MATH 141 * or MATH 147  4  
PHYS 135 * or PHYS 137  4-5  
Term 2
COSC 130   4 MATH 130  or higher
ENGL 102  3  
MATH 142 * or MATH 148  4  
PHYS 136 * or PHYS 138  4-5  
Term 3
BIOL 101 *, BIOL 150 *, BIOL 158 *, CHEM 100 *, CHEM 120 *, CHEM 128 * or PHYS 231  3-4 EF 151 * or PHYS 135 
COSC 140   4  
MATH 241  or MATH 247   4  
2Cultures and Civilizations Elective * 3  
Term 4
2Arts and Humanities Elective * 3 EF 152 * or PHYS 136 
COSC 302  or COSC 307   4  
MATH 251  or MATH 257   3  
COSC 311  or COSC 317   3  
Term 5
COSC 360  or COSC 367   4 CBE 201  or COSC 102  or ME 202  or MSE 201  
3Computer Science Upper-Division Elective 3  
COSC 312   3  
ECE 313   3  
2Social Sciences Elective * 3  
Term 6
COSC 340 COSC 361   6 No milestones
2Cultures and Civilizations Elective  3  
3Computer Science Upper-Division Elective 3  
4Unrestricted Elective 3  
Term 7
2Arts and Humanities Elective * 3 No milestones
COSC 401   2  
3Computer Science Upper-Division Electives 9  
ENGL 355 * or ENGL 360  3  
Term 8
COSC 402   3 No milestones
3Computer Science Upper-Division Electives 6  
2Social Sciences Elective * 3  
4Unrestricted Elective 3  
TOTAL 120  
* Meets University General Education Requirement .
1 Beginning students who have had high school computer science and/or who have had significant programming experience (e.g. summer institute study, special research projects, home laboratory) are invited to apply during the summer to the head of the department for permission to take a proficiency examination for COSC 102 , Introduction to Computer Science. If a satisfactory grade is made on the examination, credit will be allowed for COSC 102 . The Department of Electrical Engineering and Computer Science also gives credit in COSC 102  to students who receive a score of 5 on the Computer Science Advanced Placement Examination.
2 Chosen from University General Education list .
3 The following table lists the acceptable set of electives that may be taken to satisfy the upper-division electives for the CS major. The electives have been grouped into seven suggested tracks. The tracks group related electives that a student may wish to take in order to achieve a level of expertise in the indicated area. However, it is not mandatory to take any track and students are free to mix and match courses from different tracks to fit their specific interests. COSC 494 - Special Topics in Computer Science , and COSC 493 - Independent Study , may be taken to satisfy the upper-division electives. Up to two COSC 5XX or ECE 5XX courses may count as upper-division elections.
4 Any courses not already required for the major.
Theory Systems
COSC 440 - Formal Foundations of Software Engineering 
COSC 482 - Theory of Computation  
COSC 456 - Computer Graphics 
COSC 462 - Parallel Programming 
ECE 453 - Introduction to Computer Networks 
ECE 461 - Introduction to Computer Security  
ECE 462 - Cyber-Physical Systems Security  
ECE 463 - Introduction to Datacenters  
Software Hardware
COSC 365 - Programming Languages and Systems  
COSC 461 - Compilers 
COSC 465 - Databases and Scripting Languages  
ECE 451 - Computer Systems Architecture 
ECE 455 - Embedded Systems Design  
Scientific Computing Artificial Intelligence
COSC 370 - Introduction to Scientific Computing  or
COSC 377 - Honors: Introduction to Scientific Computing 

COSC 471 - Numerical Analysis 
COSC 472 - Numerical Algebra 
MATH 231 - Differential Equations I  or MATH 237 - Honors: Differential Equations I  
COSC 420 - Biologically-Inspired Computation  or
COSC 427 - Honors: Biologically-Inspired Computation 

COSC 425 - Introduction to Machine Learning 
ECE 471 - Introduction to Pattern Recognition  

COSC 434 - Network Security  or
COSC 534 - Network Security

COSC 445 - Fundamentals of Digital Archeology  or
COSC 545 - Fundamentals of Digital Archeology

COSC 466 - Web Security  or
COSC 566 - Web Security

COSC 483 - Applied Cryptography  or
COSC 583 - Applied Cryptography

ECE 459 - Secure and Trustworthy Computer Hardware Design  or
ECE 559 - Secure and Trustworthy Computer Hardware Design

ECE 461 - Introduction to Computer Security  
ECE 462 - Cyber-Physical Systems Security  

ECE 469 - Mobile and Embedded Systems Security  or
ECE 569 - Mobile and Embedded Systems Security

ECE 471 - Introduction to Pattern Recognition  or
ECE 571 - Pattern Recognition or
COSC 425 - Introduction to Machine Learning  or
COSC 528 - Introduction to Machine Learning

Honors Concentration – Computer Science Major

In addition to satisfying the requirements for the electrical engineering, computer engineering, or computer science major, candidates for the honors concentration must also complete the following requirements.

  • Maintain an overall GPA of 3.4.
  • Four 100- or 200-level honors courses* (14 hours minimum, at least two courses must be from engineering fundamentals, physics, math, chemistry, or biology).
  • Two upper-division honors courses in computer science or electrical and computer engineering (COSC 307 , COSC 317 , COSC 367 , COSC 377 , COSC 427  or ECE 317 , ECE 347 , ECE 357 , ECE 417 , ECE 427 , ECE 457 , ECE 477 , ECE 478 , ECE 487 ).
  • Satisfy the breadth requirements for the Engineering Honors Program as shown on the Tickle College of Engineering website.
* While most students fulfill this requirement with 100- and 200-level courses, students may substitute upper level courses on approval of the Honors faculty.

Five-Year BS/MS Program – Computer Science Major

The department offers a Five-Year BS-MS program for qualified students. The primary component of the program is that qualified students may take up to 6 hours of approved graduate courses for their senior undergraduate electives and have them count toward both their bachelor’s and master’s degrees at the University of Tennessee. This program is designed for students attending the University of Tennessee for their Master of Science degree because other universities may not accept these courses for graduate credit since they were used to satisfy requirements for the Bachelor of Science degree. Significant components of the program are: 

  • Students must have an overall GPA of at least 3.4 to be admitted to the program. Conditional admission may be granted after completing 64 hours of required coursework while full admission is granted after completing 96 hours of required coursework with a minimum overall GPA of 3.4.
  • Students must at least have conditional admission before taking graduate courses for both their bachelor’s and master’s degrees. All courses taken for graduate credit must be approved by the departmental chair of the program. Students admitted to the program must request permission from the Graduate School to take approved courses for graduate credit. 
  • Students admitted to the program must also follow the normal procedure for admission to the Graduate School. Admission of students into this program must be approved by the department and the Graduate School.
  • Students will not be eligible for graduate assistantships until they are enrolled as graduate-level students in the Graduate School.

Return to {$returnto_text} Return to: Tickle College of Engineering