# Bachelor of Science in Computer Science - Thread: Devices & Theory

The Threads™ represent partial paths through the curriculum. Thus, a student weaves a degree from these Threads. Students are not forced to make Thread decisions very early in their academic careers; however, they may if they want. We define the Threads so they are flexible enough to allow for a variety of technical and creative experiences. Threads are coherent enough that students develop computing skills even if their focus shifts as they go along.

The Devices thread is concerned with embedded computational artifacts that interact with people or the physical world. In this thread, one learns how to create and evaluate devices that operate under physical constraints such as size, power, and bandwidth. Examples include PDAs, cell phones, robots, jet engines, and intelligent appliances.

The Theory thread is where computing meets itself. Theory teaches students the theoretical and mathematical foundations underlying a wide range of computational disciplines. Early preparation includes discrete mathematics, algorithms, and complexity. Knowledge goals are for students to mature in development and analysis of abstract models for applications ranging from theoretical computer science to computational physics, biology, mathematics, economics, and optimization.

Code | Title | Credit Hours |
---|---|---|

Wellness | ||

APPH 1040 | Scientific Foundations of Health | 2 |

or APPH 1050 | The Science of Physical Activity and Health | |

Core A - Essential Skills | ||

ENGL 1101 | English Composition I | 3 |

ENGL 1102 | English Composition II | 3 |

MATH 1552 | Integral Calculus | 4 |

Core B - Institutional Options | ||

CS 1301 | Introduction to Computing ^{1} | 3 |

Core C - Humanities | ||

Any HUM | 6 | |

Core D - Science, Math, & Technology | ||

PHYS 2211 | Introductory Physics I ^{2} | 4 |

Lab Science ^{2} | 4 | |

MATH 1551 | Differential Calculus | 2 |

MATH 1554 | Linear Algebra ^{4} | 4 |

or MATH 1564 | Linear Algebra with Abstract Vector Spaces | |

Core E - Social Sciences | ||

Select one of the following: | 3 | |

The United States to 1877 | ||

The United States since 1877 | ||

American Government in Comparative Perspective | ||

Government of the United States | ||

American Constitutional Issues | ||

Any SS | 9 | |

Core F - Courses Related to Major | ||

Lab Science ^{2} | 4 | |

CS 1100 | Freshman Leap Seminar | 1 |

CS 1331 | Introduction to Object Oriented Programming ^{1} | 3 |

CS 1332 | Data Structures and Algorithms for Applications ^{1} | 3 |

CS 2050 | Introduction to Discrete Mathematics for Computer Science ^{1} | 3 |

or CS 2051 | Honors - Induction to Discrete Mathematics for Computer Science | |

MATH 2550 | Introduction to Multivariable Calculus ^{4} | 2 |

Major Requirements | ||

CS 2340 | Objects and Design ^{1} | 3 |

CS 4001 | Computing, Society, and Professionalism ^{1} | 3 |

or CS 4002 | Robots and Society | |

or CS 4726 | Privacy, Technology, Policy, and Law | |

or SLS 3110 | Technology and Sustainable Community Development | |

Junior Design Options (Capstone) | ||

Junior Design Option ^{1,3} | 6 | |

Concentration | ||

CS 2110 | Computer Organization and Programming ^{1} | 4 |

CS 2200 | Computer Systems and Networks ^{1} | 4 |

CS 3251 | Computer Networking I ^{1} | 3 |

CS 3510 | Design and Analysis of Algorithms ^{1} | 3 |

or CS 3511 | Design and Analysis of Algorithms, Honors | |

CS 4510 | Automata and Complexity Theory ^{1} | 3 |

CS 4540 | Advanced Algorithms ^{1} | 3 |

ECE 2031 | Digital Design Laboratory ^{1} | 2 |

Select one of the following for Building Devices: ^{1} | 4 | |

Prototyping Intelligence Appliances | ||

Embedded Systems Design | ||

MATH 3406 | A Second Course in Linear Algebra ^{1} | 3 |

Select one of the following for Devices in the Real World: ^{1} | 3 | |

Introduction to Perception and Robotics | ||

Mobile Applications and Services for Converged Networks | ||

Mobile and Ubiquitous Computing | ||

Introduction to Computer Vision | ||

Select one of the following for Advanced Mathematics: ^{1} | 3 | |

Introduction to Graph Theory | ||

Introduction to Number Theory | ||

Combinatorial Analysis | ||

Other Required Courses | ||

MATH 3012 | Applied Combinatorics | 3 |

Select one of the following: | 3 | |

Introduction to Probability and Statistics | ||

Probability and Statistics with Applications | ||

Statistics and Applications | ||

Statistics and Applications | ||

Probability with Applications and Basic Statistical Methods | ||

Free Electives | ||

Free Electives | 10 | |

Total Credit Hours | 126 |

Pass-fail only allowed for Free Electives (max 6 credit hours), CS 1100, and CS 1171 (if required)

^{1} | Minimum grade of C required. |

^{2} | Two of three labs MUST be a sequence. |

^{3} | Junior Design Options are as follows (students must pick one option and may not change): - Option 1 - LMC 3432, LMC 3431, CS 3311,CS 3312.
- Option 2 - ECE VIP courses and LMC 3403.
- Option 3 - Satisfy Georgia Tech Research Option.
- Option 4- CS 2701 (3 hours), CS 4699-I2P (3 hours), LMC 3403 (3 hours) = 9 hours OR CS 4699- I2P (6 hours), LMC 3403 (3 hours) = 9 hours
Six credits of the Junior Design option are used as Major Requirements and the overage credits of research/VIP (5 credit hours/2 credit hours) may be used as free electives. Students completing VIP for their junior design requirement will be required to complete at least three semesters of VIP. (VIP 1 + VIP 2 + VIP 3) (for a total of 5 credit hours) + LMC 3403 = 8 hours of VIP credit. Students using CREATE-X for junior design take at least 6 hours of CREATE-X Start-ip Lab and Idea 2 Prototype (I2P) and 3 of the 6 hours must be I2P. Students take these 6 hours with LMC 3403 (3 hours) for a total of 9 hours. Extra three hours for CREATE-X option can be used in free electives. |

^{4} | Two credit hours of MATH 1554 may count along with MATH 2550 to give Area F 18 credit hours. |

## Cooperative Programs

The College of Computing participates in the undergraduate and graduate Cooperative Programs. See links below for further Information:

## International Plan

The College of Computing has an approved BS CS International Plan that accommodates the unique requirements of this option discussed in the International Plan section of the catalog.

However, due to the flexible nature of the Threads curriculum, the International Plan designation may not be available with all of the Thread combinations. Efforts will be made to work with interested students to accommodate their individual circumstances with regard to the International Plan designator for the Bachelor of Science in Computer Science.

## Research Option

To complete the Research Option in the College of Computing, students must:

- Complete at least nine units of undergraduate research
- Over at least two, preferably three terms
- Research may be for either pay or credit;

- Write an undergraduate thesis/report of research on their findings;
- Take

### Research Classes

The following classes count toward fulfillment of the Research Option:

#### Research for Credit

Code | Title | Credit Hours |
---|---|---|

CS 2699 | Undergraduate Research (Freshman and Sophomore) | 1-12 |

CS 4699 | Undergraduate Research (Junior and Senior) | 1-12 |

CS 4980 | Research Capstone Project | 1-21 |

#### Research for Pay (Audit only)

Code | Title | Credit Hours |
---|---|---|

CS 2698 | Undergraduate Research Assistantship (Freshman and Sophomore) | 1-12 |

CS 4698 | Undergraduate Research Assistantship (Junior and Senior) | 1-12 |

To get credit toward completion of the Research Option for research for pay, students must be registered for the appropriate audit-only, research for pay class (CS 2698 or 4698). If work on research for pay begins after the close of registration and the student has not signed up for the appropriate class, unfortunately it is not possible to get credit toward the Research Option for work that term.

A research project will also fulfill the capstone design requirement if the student registers for CS 4980 for one of the research terms. This is typically done the last semester of research, while taking LMC 4702.

Completion of the Research Option is noted on the student's transcript. For more information, see www.urop.gatech.edu.

## BS/MS in Computer Science

Students who want to pursue

the BS/MS option must apply to the MSCS program after completing at least 60 hours of work towards the BSCS degree. Applicants should have a cumulative GPA of at least 3.4. This GPA must be maintained for the student to take graduate level courses.

Students admitted to the program will take 6 hours during their final undergraduate year to double count in both their BSCS and MSCS degrees; they should choose 3 hours of MS Core or Elective hours their fall semester and 3 hours of MS Core or Elective hours their spring semester that can count toward their thread hours and CS Specialization hours.

Visit College of Computing for more information.