Bachelor of Science in Computer Science - Thread: Devices & Systems and Architecture

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.

APPH 1040Scientific Foundations of Health2
or APPH 1050 The Science of Physical Activity and Health
Core A - Essential Skills
ENGL 1101English Composition I3
ENGL 1102English Composition II3
MATH 1552Integral Calculus4
Core B - Institutional Options
CS 1301Introduction to Computing 13
Core C - Humanities
Any HUM6
Core D - Science, Math, & Technology
PHYS 2211Introductory Physics I 24
Lab Science 24
MATH 1551Differential Calculus2
MATH 1554Linear Algebra 44
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 SS9
Core F - Courses Related to Major
Lab Science 24
CS 1100Freshman Leap Seminar1
CS 1331Introduction to Object Oriented Programming 13
CS 1332Data Structures and Algorithms for Applications 13
CS 2050Introduction to Discrete Mathematics for Computer Science 13
or CS 2051 Honors - Induction to Discrete Mathematics for Computer Science
MATH 2550Introduction to Multivariable Calculus 42
Major Requirements
CS 2340Objects and Design 13
CS 4001Computing, Society, and Professionalism 13
or CS 4002 Robots and Society
Junior Design Options (Capstone)
Junior Design Option 1,36
CS 2110Computer Organization and Programming 14
CS 2200Computer Systems and Networks 14
CS 3210Design of Operating Systems 13
CS 3220Computer Structures: Hardware/Software Codesign of a Processor 13
CS 3251Computer Networking I 13
CS 3510Design and Analysis of Algorithms 13
or CS 3511 Design and Analysis of Algorithms, Honors
ECE 2031Digital Design Laboratory 12
Select one of the following for Building Devices: 14
Prototyping Intelligence Appliances
Embedded Systems Design
Select one of the following for Devices in the Real World: 13
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 Systems Software Tools: 13
Introduction to Software Engineering
Compilers, Interpreters, and Program Analyzers
Select one of the following for Advanced Systems Architectures: 13
Advanced Operating Systems
Programming Embedded Systems
Advanced Computer Organization
Other Required Courses
MATH 3012Applied Combinatorics3
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 Electives10
Total Credit Hours126

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


Minimum grade of C required.


Two of three labs MUST be a sequence.


Junior Design Options are as follows (students must pick one option and may not change):

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. 


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:

  1. Complete at least nine units of undergraduate research
    1. Over at least two, preferably three terms
    2. Research may be for either pay or credit;
  2. Write an undergraduate thesis/report of research on their findings;
  3. Take
    1. LMC 4701: Undergraduate Research Proposal Writing (taken during the first or second semester of research)
    2. LMC 4702: Undergraduate Research Thesis Writing (taken during the thesis writing semester).

Research Classes

The following classes count toward fulfillment of the Research Option:

Research for Credit

CS 2699Undergraduate Research (Freshman and Sophomore)1-12
CS 4699Undergraduate Research (Junior and Senior)1-12
CS 4980Research Capstone Project1-21

Research for Pay (Audit only)

CS 2698Undergraduate Research Assistantship (Freshman and Sophomore)1-12
CS 4698Undergraduate 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

Contact Us