The Bachelor of Science program in Computer Science is designed to give a student a strong background in the fundamentals of mathematics and computer science.
The Program Educational Objectives of the B.S. degree program in Computer Science are:
1. To educate and train students in the fundamentals of computer science and mathematics, in order to analyze and solve computing problems, as demonstrated by their professional accomplishments in industry, government and graduate programs and measured within three to five years after graduation.
2. To educate students with an understanding of real-world computing needs, as demonstrated by their ability to address technical issues involving computing problems encountered in industry, government and graduate programs and measured within three to five years after graduation.
3. To train students to work effectively, professionally and ethically in computing-related professions, as demonstrated by their communications, teamwork and leadership skills in industry, government and graduate programs and measured within three to five years after graduation.
The B.S. degree program in Computer Science is accredited by the Computing Accreditation Commission of ABET, www.abet.org.
At least two technical electives for the BS in Computer Science program must come from this list of courses.
The remaining three technical electives for the BS in Computer Science program may come from this list of courses. But, a student also has the option of using these three electives to form a concentration or minor in some technical area outside CS, e. g., mechanical engineering or physics. Although there is some flexibility in the selection of courses in a concentration area, normally they are courses required for majors in the area.
Computer Science (CS) majors can use their electives to form concentrations in areas related to CS. The BS/CS program has 5 technical electives and 4 open electives and the BA/CS program has many more electives which gives the student considerable flexibility. This document lists a number of possible concentration areas together with courses in each area. Some of these courses are required for CS majors because they need at least some background in many of the listed areas. Taking additional courses in an area will give them additional background in the area. Normally a student will not take all of the courses listed for an area, but rather only those courses which best meet his/her educational objectives. Thus, this document is intended to help CS majors formulate programs of study that will meet their education objectives, recognizing that these objectives may change as students progress though the programs.
The Bachelor of Arts program in Computer Science is a combination of a liberal arts program and a computing major. It is a professional program in the sense that graduates can be employed as computer professionals, but it is much less technical than the Bachelor of Science program in Computer Science. It is particularly suitable for students with a wide variety of interests. For example, students can major in another discipline in addition to computer science and routinely complete all of the requirements for the double major in a 4 year period. This is possible because over a third of the courses in the program are open electives. Furthermore, if a student is majoring in computer science and a second technical field such as mathematics or physics many of the technical electives will be accepted for both majors. Another example of the utility of this program is that it routinely allows students to major in computer science and take all of the pre-med courses in a 4 year period.
For students pursuing a B.S. or B.S.E. degree, the following three courses are required for a minor in computer science:
A student must take an additional four credit hours of computing courses with the exclusion of ENGR 131 or EECS 132. EECS 302 (Discrete Mathematics) may be used in place of three of these credit hours because it is a prerequisite for EECS 340.
For students pursuing B.A. degrees, the following courses are required for a minor in computer science:
Two additional computing courses are also required for this minor.
The program in artificial intelligence offers an undergraduate minor. The core of the minor introduces students to the techniques of artificial intelligence programming and the basic theoretical concepts of artificial intelligence, knowledge representation, and automated reasoning. Within the minor, a student may choose a track pertaining to science and engineering or a track pertaining to artificial intelligence and cognition. Students who take the science and engineering track will have the opportunity to build significant intelligent systems. They will acquire a solid understanding of methods for knowledge representation and automated reasoning. The science and engineering track provides an opportunity for a student to acquire knowledge that is useful in areas such as management and engineering.
The artificial intelligence and cognition track will give students the opportunity to explore the relationships between computational processes and the study of mind and language. Studies of the relationships between these areas have led to developments in robotics, mathematical neuroscience, visual processing systems, parallel processing systems, mathematical and experimental psychology, and linguistics.
A minor consists of five courses. Every student who takes the minor in artificial intelligence must take the two courses, ENGR 131 (Elementary Computer Programming) and EECS 391 (Introduction to Artificial Intelligence). Students who take the artificial intelligence minor must also take one of two minor tracks:
The Technology Track requires 3 of the following courses:
The Cognitive Science Track requires 3 of the following courses:
Processing 400- and 500-level courses require the approval of the minor advisor.
Academic Representative and Contact for First Year Students/Advisors:
Professor Marc Buchner 707 Olin Bldg., 368-4096 E-mail: firstname.lastname@example.org
Minor (based on the SAGES Engineering Core) Hours: 16
The open elective in the spring of the first-year is strongly recommended to be EECS 290.
In addition, it is recommended that one additional open elective be a “content creation” course taken from the following areas: Art, English, or Music.