Computer Science BSCS
Minimum hours required for the degree: 125.
Admission to major: Admission to the Washkewicz College of Engineering.
Hours required for minor: There is no authorized minor in the Computer Science program.
Evening program: There is no evening program in Computer Science.
Advising: All students are advised by the faculty in the Department of Electrical Engineering and Computer Science.
Student organizations: Association for Computing Machinery.
Additional information: Students in the Computer Science program choose areas of interest from the technical electives in the senior year.
The Bachelor of Science in Computer Science program is a program in the Department of Electrical Engineering and Computer Science. The Computer Science program prepares engineers to enter and make contributions to the field of computing. The program showcases the various roles computing plays in significant aspects of the world.
The program includes a spectrum of courses and considerable laboratory experience. In addition, depth in computer engineering is provided by technical electives.
Program Objectives
The Computer Science program is designed to produce graduates who are able to:
- Practice computer science
- Define and diagnose problems, and provide and implement computing solutions in industry, business, and government
- Observe engineering ethics in the practice of computer science
- Communicate effectively with technically diverse audiences
- Collaborate with others as a member or as a leader in an engineering team
- Develop their knowledge beyond the undergraduate level and keep current with advances in computer science.
Computer Science students are limited to two grades of D in CS courses. Technical electives must be chosen from the available CS courses.
Major Field Requirements
The following list is a guide to the academic requirements for the Computer Science major. Each student's specific program requires approval of the student's advisor.
Mathematics, Science, and Engineering Core – 35 credits
- ESC 100 New Student Orientation (1)
- ESC 120 Intro to Engineering Design (2)
- CSC 121 Career Orientation (1)
- MTH 181 Calculus I (4)
- MTH 182 Calculus II (4)
- MTH 288 Linear Algebra (3)
- ESC 310 Engineering Probability and Statistics (3)
- MTH 220 Intro to Discrete Mathematics (3)
- CHM 261 General Chemistry (3)
- CHM 266 General Chemistry Lab (1)
- PHY 243 University Physics I (Writing) (5)
- PHY 244 University Physics II (Writing) (5)
General Education Core – 14 credits
- ENG 101 English I (3)
- ENG 102 English II (3)
- PHL 215 Engineering Ethics (3)
- EEC 414 Writing in ECE (2)
- ESC 282 Engineering Economy (3)
Required Computer Science Courses –40 credits
- CIS 151 Invitation to Computing (3)
- CIS 260 Introduction to Programming (4)
- CIS 265 Data Structures (4)
- CIS 335 Language Processors (3)
- CIS 340 Systems Programming (3)
- CIS 345 Operating Systems (3)
- CIS 390 Introduction to Algorithms (3)
- CIS 424 Programming Languages (3)
- CIS 430 Database Concepts (3)
- CIS 434 Software Engineering (3)
- CIS 480 Intro. Computer Architecture (3)
- EEC 493 & 494 Senior Design I & II (5)
Computer Science Core Choices – 12 credits
- EEC 383 Digital Systems and EEC 384 Digital Systems Lab (5)
- CIS 368 Object Oriented Design and Programming (3)
- CIS 454 Data Communication and Networking (3)
- CIS 457 Computer Graphics (3)
- CIS 467 Artificial Intelligence (3)
- CIS 475 Introduction to Computer Security (3)
- CIS 490 Foundations of Computing (3)
Computer Science Technical Electives – 12 credits
Students should work with their academic advisor to select technical electives from among the department's offerings.
General Education Electives – 12 credits
Students should work with their academic advisor to select general education.
Honors Program Requirements
CS honors students are required to take a minimum of 16 credit hours of upper division (300 and 400 level) honors courses in the ECE Department. General guidelines for these credit hours are given below. However, the specific courses that each student takes will be agreed upon by the student, the department's undergraduate advisor, and the student's honors advisor. The student's regular undergraduate advisor is responsible for finding an honors advisor who is mutually agreeable to the undergraduate advisor, the honors advisor, and the honors student.
- Honors Courses
The honors credits (16 hours minimum) will be taken from the following:
- Honors Thesis (required) (EEC 499H, credit as arranged). Each honors student conducts research and writes a thesis under the supervision of an ECE faculty member.
- The following honors courses are optional:
Honors Research- (EEC 495H, credit as arranged). This is research conducted jointly with an ECE faculty, similar to an independent study. This can be repeated for credit.
Graduate Course- Any 500 level ECE graduate course for which the student has the prerequisites.
Junior Honors, Senior Honors- Any 300 level or 400 level ECE course can be modified to become an honors course. This is referred to by the Honors Program as a "contract course." This is done with the collaboration of the undergraduate advisor, the honors advisor, and the course instructor.
- Replaced Credit Hours
Honors credits can be used to replace a maximum of 20 credit hours of normally required courses. For BEE students, the replaced credits can include any 400 level EEC course except for Senior Design (EEC 493 and EEC 494). For BCE students, the replaced credits can include any 400 level EEC course except for Senior Design (EEC 493 and EEC 494) and Computer Organization (EEC 483). For BSCS students, the replaced credits can include any 400 level EEC course except for Senior Design (EEC 493 and EEC 494) and Computer Organization (EEC 483).
University Scholars Requirements
Scholars students who are majoring in Computer Science are required to take a minimum of 12 credit hours of upper division (300 or 400 level) honors courses in the ECE Department. General guidelines for these credit hours are given below. However, the specific courses that each student takes will be agreed upon by the student, the department's undergraduate advisor, and the student's scholars advisor. The student's regular undergraduate advisor is responsible for finding a scholars advisor who is mutually agreeable to the undergraduate advisor, the scholars advisor, and the student.
- Scholars Courses
The honors credits (12 hours minimum) will be taken from the following:
- Honors Thesis- (EEC 499H, credit as arranged, 8 hours total maximum). This can be repeated for credit. The student conducts research and writes a thesis under the supervision of an ECE faculty member.
- Honors Research- (EEC 495H, credit as arranged, 8 hours total maximum). This is research conducted jointly with an ECE faculty, similar to an independent study. This can be repeated for credit.
- Graduate Course- Any 500 level EEC graduate course for which the student has the prerequisites.
- Junior Honors, Senior Honors- Any 300 level or 400 level EEC course can be modified to become an honors course. This is referred to by the Honors Program as a "contract course." This is done with the collaboration of the undergraduate advisor, the scholars advisor, and the course instructor.
- Replaced Credit Hours
Honors credits can be used to replace a maximum of 20 credit hours of normally required courses. For BEE students, the replaced credits can include any 400 level EEC course except for Senior Design (EEC 493 and EEC 494). For BCE students, the replaced credits can include any 400 level EEC course except for Senior Design (EEC 493 and EEC 494) and Computer Organization (EEC 483). For BSCS students, the replaced credits can include any 400 level EEC course except for Senior Design (EEC 493 and EEC 494) and Computer Organization (EEC 483).
Computer Science Minor
Students minoring in Computer Science are required to take a minimum of 17 credits of Computer Science in the Electrical Engineering and Computer Science Department.
Required Courses (8 Credit Hours)
CIS 260 - Introduction to Programming
CIS 265 - Data Structures & Algorithms
ADDIONAL 9 CREDIT HOURS OF CIS COURSES AT OR ABOVE THE 300 LEVEL
Exception: No more than one course (3 credit hours) in the student's discipline with substantial computing content can be counted with the CS Program Advisor's approval. Pre-approved courses include MTH 311 Numerical Analysis and PHY 320 Introduction to Computational Physics.
SUGGESTED ELECTIVES
- Web development - CIS 368, CIS 465, CIS 340, CIS 454, CIS 408, CIS 457
- Big data - CIS 430, CIS 493 (Special topic on Big Data Analytics), CIS 340, CIS 390, CIS 434
- Cybersecurity - CIS 340, CIS 345, CIS 475, CIS 493 (Special topic on Information Assurance), CIS 493 (Special topic on Blockchain Technology), CIS 493 (Special topic on Hardware-oriented Security and Trust)
- Computer systems - CIS 335, CIS 480, CIS 340, CIS 345
- Mobile computing - CIS 340, CIS 345, CIS 454, CIS 470, CIS 478, CIS 408
- Artificial intelligence - CIS 390, CIS 467, CIS 340, CIS 458, CIS 493 (Special topic on Big Data Analytics)
- Theory - CIS 390, CIS 335, CIS 490, CIS 424