![]() ![]() ![]() ![]() |
|
|
|
|
|
Computer ScienceComputer Science | Courses | Faculty
Degree: Bachelor of Science Contact: Jack Wileden, Undergraduate Program Director Office: 100 Computer Science Building Phone: 545-2744 E-mail: csinfo@cs.umass.edu Web site: www.cs.umass.edu Chair of Department: Distinguished University Professor W. Bruce Croft. Undergraduate Program Director: Professor Jack Wileden. Distinguished University Professors Rosenberg, Towsley; Professors Adrion, Barrington, Barto, Clarke, Cohen, Graham, Hanson, Immerman, Lehnert, Lesser, Osterweil, Ramamritham, Riseman, Rissland, Spinelli; Associate Professors Grupen, Mahadevan, Moll, Moss, Siegelmann, Sitaraman, Utgoff, Weems, Zilberstein; Assistant Professors Adler, Allan, Levine, Shenoy, Verts; Research Faculty Fagg, Jensen, Manmatha, Schultz, Woolf. The FieldThe Computer Science Department offers an undergraduate program leading to the Bachelor of Science degree (a Bachelor of Arts degree is not offered). Students admitted to the Computer Science major learn from and interact with faculty who are doing state-of-the-art research in computer science. Many Computer Science majors become involved in such research themselves during their junior and senior years. Students graduating with a Computer Science degree are well prepared to assume responsible and challenging positions in the computing profession or to continue their computer science education at the graduate level. The MajorThe Computer Science undergraduate program is intended to provide a solid foundation for students whose goals span a wide range of endeavors within the rapidly changing computing field. The Computer Science undergraduate program is built around a core of 11 computer science courses (total credits 40), 5 mathematics courses (total credits 17), and 2 physics courses (total credits 8). These courses supply the essential theory, concepts, and techniques in the major areas of computer science. To complement the breadth achieved by this core, majors must also complete at least three advanced technical elective courses in computer science or some related area. Computer Science majors also must fulfill a Junior Year Writing requirement by taking CMPSCI 305 Social Issues in Computing. This course fulfills part of the distribution course credits required by the Colleges of Arts and Sciences. Required Computer Science Courses 121 Introduction to Problem Solving with Computers 187 Programming with Data Structures 201 Architecture and Assembly Language 250 Introduction to Computation 287 Programming Language Paradigms 305 Social Issues in Computing 311 Introduction to Algorithms 320 Introduction to Software Engineering 377 Operating Systems 383 Artificial Intelligence At least two from the following: 401 Formal Language Theory 445 Information Systems 453 Computer Networks 491A Compiler Techniques Required Mathematics Courses MATH 131 or 135 Calculus I MATH 132 or 136 Calculus II MATH 233 Multivariate Calculus MATH 235 or 236 Introduction to Linear Algebra One of the following courses (or another upper-level mathematics course approved by the academic adviser). MATH 331 Ordinary Differential Equations for Scientists and Engineers MATH 411 Introduction to Abstract Algebra I MATH 421 Complex Variables MATH 451 Numerical Analysis I MATH 456 Mathematical Modelling MATH 523 Introduction to Modern Analysis STATIS 501 Methods of Applied Statistics STATIS 515 Statistics I Required Natural Sciences Courses PHYSIC 151/3, 152/4 General Physics I & II with labs Computer Science Electives Three further elective courses are required. At least one elective must be an advanced computer science course, numbered 400 or higher. Other electives from Mathematics or Electrical and Computer Engineering may be approved. Notes: Computer Science majors are not permitted to use any course taken on a Pass/Fail basis to fulfill the Computer Science core requirements (including Mathematics, Physics, and Computer Science concentration sequences). All courses used to satisfy the Computer Science Undergraduate Program requirements must be passed with a grade of C or better. Students receiving a grade of less than C in any such course must see the Computer Science Undergraduate Program Director as soon as possible. Finally, at least five courses numbered 311 or higher must be taken at the University. Admission to the Major While many freshmen are admitted directly into the Computer Science major when they apply for admission to the University, the major is restricted for students already on campus who wish to enter the program. Under these circumstances, admission criteria for the major are based principally upon the applicant's performance in five predictor courses, which are required for the Computer Science degree: CMPSCI 121, 187, 201, and MATH 131-132 or 135-136. At the present time, the requirements for joining the major do not exclude any qualified students. Any student who gets a grade of C or better in each of the predictor courses is eligible for entry into the program. An application form may be obtained from the Computer Science departmental office in room 100 Computer Science Building and should be returned there when completed. It is also necessary to include a current transcript with the completed application form. The MinorThe Computer Science Department offers a minor in Computer Science. While the minor is most appropriate for students in math, science, engineering, or business, it is open to all students at the University. The nine courses that make up the minor provide a coherent introduction to the science of computing. These courses are: MATH 131-132 (or 135-136); CMPSCI 121, 187, 201, 250, 287, and two additional regular computer science courses, numbered 300 or higher, except CMPSCI 305 or courses designated to be for non-majors. Note: A grade of C or better is required in all courses used to satisfy the minor, including the preliminary courses. For more information on the minor, contact the Computer Science Undergraduate Program Director. Career OpportunitiesStudents graduating with a Computer Science degree are well prepared for a professional career in industry or for graduate study. Most graduates of the program pursue careers in software development, networking, or information management. Such positions are available in companies spanning a wide variety of fields, including medicine, defense, and finance. Some students pursue graduate degrees in computer science after completing their undergraduate studies, and occasionally graduates go on to M.B.A. programs or to medical school. Introductory CoursesAn increasing number of undergraduates, whatever their major, are finding it necessary to have the ability to use and/or program modern computing equipment. For these students the Department offers CMPSCI 102 Computers and Society, CMPSCI 105 Computer Literacy, CMPSCI 120 Introduction to Problem Solving with the Internet, and CMPSCI 121 Introduction to Problem Solving with Computers. Students seeking a broad introduction to the use and programming of computers, with an emphasis on the social impact of computing and an overview of the uses of computers within various disciplines, will be interested in CMPSCI 102. CMPSCI 105 stresses the concepts and use of "applications programs" such as word processors, spreadsheets, and databases as well as computer programming for problem solving. CMPSCI 120 provides an introduction to practical problem solving on the Internet. This course requires some prior experience with computers. The Internet concepts and techniques that are presented in the course can be useful for students in any major. Finally, CMPSCI 121 provides the most in-depth material on problem solving and programming using the computer. CMPSCI 121 is a prerequisite to all upper-level Computer Science courses. Some students entering the University will have already done work that can be applied to the Computer Science requirements. This work may be completed in high school, at another college or university, or through private study. Exemption from Computer Science requirements may be granted by the Undergraduate Program Director, according to guidelines described below. Acceptance of credits to be applied to the University general education requirements can be granted only by the Office of Transfer Affairs. The most common exemptions are for CMPSCI 121 and 187, the introductory programming and data structures courses. Automatic exemption from both 121 and 187 is granted for a score of 4 or 5 on the AB Com-puter Science Advanced Placement exam, and in this case, 8 graduation credits are also awarded. Exemption from 121 only is granted for a score of 3 on either the AB or A exams. In this case 4 graduation credits are awarded. These exams are usually taken by students who have had several semesters of programming in high school. Students who have done well in a good high school programming course, or who have supplemented their course work with private study, may qualify to take CMPSCI 187 without taking CMPSCI 121. Some students will be able to demonstrate competence in the material of other courses, such as CMPSCI 201, Architecture and Assembly Language. Exemption for requirements such as these may be granted by the Undergraduate Program Director in consultation with the faculty. Similarly, transfer students should have their records evaluated by the Undergraduate Program Director to determine which of the Computer Science requirements they have satisfied. Computer Science | Courses | Faculty
|
|
|