Department Information - Computer Science (CSE)
Computer science is the study of computer systems, including the architecture of computers, development of computer software, information processing, computer applications, algorithmic problem-solving, and the mathematical foundations of the discipline.
The Computer Science major provides professional education in computer science to prepare the student for graduate study or for a career in the computing field. Students learn concepts and skills needed for designing, programming, and applying computer systems while also learning the theoretical and mathematical foundations of computer science. They have sufficient freedom in the program to pursue other academic interests in the liberal arts, sciences, and engineering to complement their study of computer science. The Computer Science program is accredited by the Computing Accreditation Commission of ABET, http://www.abet.org.
Many students prepare for their professional careers through internships at local companies. Computer science graduates are recruited heavily, and career opportunities include developing software systems for a diverse range of applications such as: user interfaces; networks; databases; forecasting; web technologies; and medical, communications, satellite, and embedded systems. Many are employed in the telecommunication and financial industries, and some are self-employed as heads of software consulting companies.
The Department of Computer Science offers two undergraduate majors: Computer Science and Information Systems. Requirements and courses for the latter appear under the program title in the alphabetical listings of Approved Majors, Minors, and Programs. The two programs of study share a number of courses, particularly in the first two years, so that it is possible to follow a program that permits a student to select either major by the start of the junior year. The Department also offers a minor in computer science, a joint B.S./M.S. program, and an honors program.
Program Educational Objectives
The graduates of the computer science program will, within 3-5 years after graduation:
- Establish themselves as practicing professionals or engage in advanced study and
- Advance professionally through organized training or self-learning.
The students will demonstrate the following:
- An ability to apply knowledge of computing and mathematics appropriate to the program’s student outcomes and to the discipline;
- An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;
- An ability to design, implement, and evaluate, a computer-based system, process, component or program to meet desired needs;
- An ability to function effectively on teams to accomplish a common goal;
- An understanding of professional, ethical, legal, security and social issues and responsibilities.
- An ability to communicate effectively with a range of audiences;
- An ability to analyze the local and global impact of computing on individuals, organizations, and society;
- Recognition of the need for and an ability to engage in continuing professional development;
- An ability to use current techniques, skills, and tools necessary for computing practice;
- An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices;
- An ability to apply design and development principles in the construction of software systems of varying complexity.
Computing facilities for undergraduates are maintained by both the University Computing Center and the Department of Computer Science. For a description of the computing services provided by the University Computing Center, see the Student Services section of this Bulletin.
The Department of Computer Science provides additional laboratories to support undergraduate instruction and research. The laboratory facilities are regularly upgraded to keep pace with advances in technology. Current computing facilities include the Computer Science Undergraduate Computing Laboratory; the Programming Techniques Teaching Laboratory with facilities for classroom instruction; the Computer Associates Transactions Laboratory, used primarily for upper-level courses on databases, transaction processes, and Web applications; the Computer Science Advanced Programming Laboratory, also donated by Computer Associates, Inc., which provides computing support for upper-level courses on such topics as operating systems and user interfaces; and the Computer Science Multimedia Laboratory, used for courses on multimedia design. Most of the laboratories are connected to the Internet via the campus network and are easily accessible by students from campus residences or from off-campus via modem.
The Departmental research laboratories are available to undergraduate students working on supervised projects with computer science faculty.
Students who wish to transfer credits for courses equivalent to CSE 114, 214, or CSE 215 in order to use them as prerequisites for other CSE courses or toward the requirements for acceptance into the major must demonstrate proficiency in the course material by passing a proficiency examination, given during the first week of each semester.