Affiliation: School of Sciences & Mathematics
The goal of the bachelor’s degree program in computer science is to educate a graduate with a broad intellectual base; well-developed interpersonal, analytical and problem-solving skills; and a mastery of the appropriate elements of the discipline of computer science. Graduates should be well-qualified for advanced study in strong graduate programs or employment in a professional career requiring extensive preparation in computer science.
THE DEGREE PROGRAM
The major requirements of the BS degree program for computer science majors are based on the curriculum recommendations of the Association for Computing Machinery and the Computer Society of IEEE. In addition to the University’s Liberal Studies Program, the major requires support including two semesters of calculus, one semester of statistics, a semester of General Chemistry, College Physics, Physics with Calculus, or Introductory Biology, and an additional mathematics or science course.
The major program consists of a core of courses, followed by five elective courses. The core comprises two introductory courses that focus on concepts, programming, and simple data structures, followed by courses that examine the mathematical structures that are important in computer science, the theoretical foundation of computing, systems programming, computer architecture, data structures, and the ethics of computing. The five electives are selected from three categories to allow the student to develop expertise while following his or her interests.
A freshman seminar introduces the students to faculty in the major and to the Computer Science program. The seminar also gives freshmen opportunities for interaction with fellow majors. Graduating computer science majors take a senior seminar to assist their transition from undergraduate study to graduate study or the work force. The senior seminar includes a review for exit exams, résumé writing, and job search techniques. A capstone experience is also required of computer science majors, giving them the opportunity to integrate the areas of knowledge acquired in the major.
Overview of the Computer Science Introductory Courses
Computer science majors take CS 180 and CS 181, Foundations of Computer Science I and II, CS 191 Computing Structures, and CS 291 Models of Computation. This collection of courses is an introduction to computer science and to the mathematical foundations of computing.
Non-majors may take these courses as well, but those who want to learn the elements of programming usually take CS 170 Introduction to Computing I instead of CS 180. This course focuses on the use of computers as a tool and is suitable for mathematics or other majors who wish to take a programming course or to minor in computer science. For those who then want to take more courses, CS 172 Ada Fundamentals will give the additional material needed to bridge the difference between CS 170 and CS 180. For those wishing to complete a Computer Science major after taking CS 170 and CS 172, these two courses will substitute for CS 180.
Several opportunities are available for students to pursue their interests and become involved in learning communities, and to get acquainted with peers and faculty outside classroom settings. A student chapter of the Association for Computing Machinery, a national professional society for computer scientists, hosts guest speakers, capstone presentations and works on service projects. The Computer Gaming Association (CGA) strives to bring Truman gamers together and to enrich the gaming community on campus. CGA administers a gaming league and various gaming ladders every semester, and it hosts at least one LAN gaming convention event each year. The Free Software Club of Kirksville is a group of students and faculty that promote the use of free software including Linux. The Tru Women in Computer Science (TWiCS) is an organization of women students who have an interest in computer science. TWiCS is partially supported by a grant from the Boeing Company. TWiCS members support each other and have fun through hands-on activities, discussions, outside speakers, tutoring sessions, field trips, and social events.
A group of faculty and students from the Department of Biology and from the Department of Mathematics and Computer Science are teaming up to explore opportunities for study that exist at the intersection of the biological and mathematical sciences. This hot field is often referred to as mathematical biology, and is of growing importance to pharmaceutical, agricultural, medical, and research institutions. There is an ongoing research program in bioinformatics involving students and faculty.
There are also opportunities to work with faculty and other students in the form of employment as tutors or graders for lower-level computer science courses.
DEPARTMENTAL HONORS IN COMPUTER SCIENCE
Honors in Computer Science may be earned by:
- Maintaining an overall grade point average of 3.5,
- Maintaining a major grade point average of 3.5,
- Scoring at or above the 80th percentile on the senior exam,
- Demonstrating excellence in scholarship by producing a scholarly paper or project, and
- Receiving the approval of a majority of the regular faculty in computer science.