DONALD BREN SCHOOL OF INFORMATION AND COMPUTER SCIENCES
Undergraduate Program
Concentration in Game Culture and Technology
Undergraduate Major and Courses in Information and Computer Science
Department of Computer Science
Undergraduate Major in Business Information Management
An ICS undergraduate education is a blend of scholarship, science, technology, and practical application that forms an excellent foundation for professional life in the twenty-first century and prepares a student with serviceable skills useful for a lifetime.
The basis of the undergraduate program is a set of fundamental courses in mathematics and computer science, supplemented by breadth requirements from other academic disciplines. A premium is placed on writing and quantitative skills. Students start early with hands-on experience with advanced computing systems, and intense use of computer and network technologies continues throughout the undergraduate program. Students study data organization, algorithm design and analysis, design and organization of hardware and network systems, software engineering, artificial intelligence, social aspects of system design and use, and management of technology. In the process, students work with state-of-the-art hardware and software technologies, learn several contemporary programming languages, and make extensive use of computer-based utilities such as electronic mail.
The Donald Bren School of Information and Computer Sciences offers five majors: Information and Computer Science (ICS); Business Information Management, offered jointly with The Paul Merage School of Business; Computer Science (CompSci); Computer Science and Engineering (CSE), offered jointly with The Henry Samueli School of Engineering; and Informatics. There are also programs of study leading to minors in Information and Computer Science and in Informatics.
B.S. in Information and Computer Science. The overall field of information and computer science spans a vast spectrum of topics. At the one end, it includes computer system design and networking, detailing how modern computer hardware and networks operate on a day-to-day basis. At the other end are human factors, such as how software should be structured to facilitate cooperative work among groups of people. The B.S. in Information and Computer Science (ICS) provides students with a broad introduction to these topics. Through the selection of elective courses, students may choose to specialize in one or more of six areas: artificial intelligence, computer systems, implementation and analysis of algorithms, information systems, networks and distributed systems, or software systems.
B.S. in Computer Science. Computer science as an area of study has been around for over four decades now. During that time, the field has evolved and grown considerably. The Computer Science (CS) major provides students with an education that focuses on the design and implementation of computer systems and the software that runs them as well as the application of these tools to solve complex problems. Additionally, students may take a variety of courses to broaden their knowledge and/or specialize in particular areas. For instance, the major is well-suited for a more in-depth study of topics such as artificial intelligence and machine learning, advanced data structures, computer graphics, cryptography and security, computational biology, and computer games.
B.S. in Computer Science and Engineering. This program is designed to provide students with the fundamentals of computer science, both hardware and software, and the application of engineering concepts, techniques, and methods to both computer systems engineering and software system design. The Computer Science and Engineering (CSE) major gives students access to multidisciplinary problems in engineering with a focus on total systems engineering. Students learn the computer science principles that are critical to development of software, hardware, and networking of computer systems. From that background, engineering concepts and methods are added to give students exposure to circuit design, network design, and digital signal processing. Elements of engineering practice include systems view, manufacturing and economic issues, and multidisciplinary engineering applications. The program is administered jointly by the Department of Computer Science in the Bren School of ICS and the Department of Electrical Engineering and Computer Science in The Henry Samueli School of Engineering. See in the Catalogue's Interdisciplinary Studies section.
B.S. in Informatics. Within the overall discipline of information and computer science, the Informatics major is concerned with the relationship between what is inside the computer and what is outside. The Informatics major addresses the broad set of issues surrounding design, ranging from initial requirements gathering to estimating and measuring the impact of alternative solutionsall from a multidisciplinary perspective that includes computer science, information science, organizational science, social science, and cognitive science.
B.S. in Business Information Management. The undergraduate Business Information Management major seeks to educate students to understand and apply the theories and concepts of a broad, integrated curriculum covering computing (computer science, informatics, and software); business fundamentals (accounting, finance, marketing, strategy, and operations); and analytical methods (mathematics, statistics, economics, management science, and decision analysis). The fundamentals of information and computer science provide the foundation for understanding and evaluating the technology through which most of the business information is gathered and presented, while the business fundamentals provide a background and context in which information and its analysis will be applied. The major is administered by the Donald Bren School of Information and Computer Sciences and is a collaborative, interdisciplinary degree program between the Bren School and The Paul Merage School of Business.
The major or minor in Information and Computer Science (ICS) cannot be combined with the majors in Computer Science (CS), Computer Science and Engineering (CSE), or Informatics.
The major in Computer Science (CS) cannot be combined with the major in Computer Science and Engineering (CSE).
The major in Computer Science and Engineering (CSE) cannot be combined with the major in Computer Engineering (offered by The Henry Samueli School of Engineering).
Bren School of ICS majors may not minor in Informatics.
Students who have completed both ICS 21 and 22 with grades of C or better and who wish to change majors to Informatics may use ICS 21 and 22 in satisfaction of the requirements of Informatics 41 and 42, and similarly with ICS 52 and Informatics 43.
Students who have completed both Informatics 41 and 42 with grades of C or better and who wish to change majors to Information and Computer Science or Computer Science may use Informatics 41 and 42 in satisfaction of the requirement of ICS 21 and 22, and similarly with Informatics 43 and ICS 52.
Students enrolled in other degree programs who are interested in the field of computer science may pursue the introductory course sequences (ICS 21 and 22 or Informatics 41 and 42) followed by other courses (such as ICS 23 or Informatics 43) as far as their interests require and their programs permit.
The ICS Student Affairs Office is staffed by professional academic counselors and peer advisors. These individuals are available to assist students with program planning, questions on University and School policies and procedures, progress toward graduation, and other issues that arise in the course of a student's education. Faculty also are available for advising, generally for suggestions of additional course work in the student's area of specialization and on preparation for graduate school.
To ensure admission consideration for the fall quarter, students should be sure to file their application by November 30 of the prior year. The selection criteria include grades, test scores, and other considerations.
Transfer Student Policy
Transfer requirements vary by major.
NOTE TO TRANSFER APPLICANTS: These majors require a series of lower-division courses, and prerequisites constrain the order in which they can be taken. Junior-level transfer students who must complete a significant part of this sequence may find that it will take longer than two years to complete their degree.
Change of Major
Students interested in changing their major to one offered by the School should contact the ICS Student Affairs Office for more information and assistance. Information is also available at http://www.due.uci.edu/Change_of_Major.html.
Major and minor restrictions: See this page, above.
SPECIAL PROGRAMS AND COURSES
Bren School of ICS Introductory Honors Courses
For selected incoming freshmen majoring in Information and Computer Science, Computer Science, and Computer Science and Engineering, the Bren School offers an honors introductory sequence (ICS H21-H22-H23). The courses are limited to 30 students, and provide a uniquely challenging and intimate learning environment in which to cover conventional course material in greater depth and scope. Participation is by invitation or application; information is provided during summer advising workshops.
The Bren School of ICS Honors Program
The Bren School of ICS Honors Program provides selected upper-division students an opportunity to carry out a research project under the direction of a faculty member in the School. Students who have completed the necessary course work and meet academic eligibility guidelines must submit a formal application. Eligible students participate in the ICS Honors Seminar (ICS H197), which provides an introduction to the range of current faculty research. Each student then affiliates with an ICS faculty advisor who agrees to supervise a minimum of two quarters of independent research. The Honors Program student prepares a final written report of the independent research and submits a copy for review to both the faculty advisor and the Honors Program advisor. If each advisor verifies that the conducted research was of honors quality, the student is deemed to have successfully completed the Bren School of ICS Honors Program. Successful completion of the Honors Program earns the student a certificate and medal from the School. Further, a notation of successful completion is added to the student's transcript. For more information about course requirements, application procedures, and deadlines (which may be different for students who enter UCI as freshmen or transfers), visit http://www.ics.uci.edu/ugrad/honors/index.php, or contact the Student Affairs Office at (949) 824-5156.
Other Opportunities
Bren School of ICS undergraduates may complement their educational experience by participating in other programs for which they meet the eligibility guidelines. Information about the following programs is available elsewhere in the Catalogue and via the program Web sites: Campuswide Honors Program, Undergraduate Research Opportunities Program, Education Abroad Program, Student Achievement Guided by Experience (SAGE Scholars), and the 3-2 Program for Undergraduates in The Paul Merage School of Business.
Concentration in Game Culture and Technology
The concentration in Game Culture and Technology is available to students majoring in Information and Computer Science, Informatics, Computer Science, and Studio Art. It exposes advanced students to an influential and expanding sector of media culture and contemporary art and technology practice, facilitates students' media literacy in relation to an increasingly prevalent art and entertainment form, and enables students to be more critical consumers and producers of new media art and culture.
Admission Criteria. Admission will be by review at the end of each spring quarter. Students will be notified of acceptance by the beginning of the following fall quarter at latest. Acceptance will be based on: (1) written statement of purpose; (2) portfolio; (3) prior course work; and (4) transcripts. The application packet should be sent to Professor Robert Nideffer, Studio Art Department. A maximum of 12 students will be admitted per year in an effort to ensure access to Game Culture and Technology Laboratory research and development facilities in Claire Trevor School of the Arts, Calit2, and the Institute for Software Research (ISR), all of which may be used to support student projects. The earliest students may apply for admission is at the end of their freshman year, and the latest they may apply is at the end of their junior year.
Requirements. Students must complete a total of eight courses (32 units) from within the two schools, which may also be used to satisfy existing requirements.
A. Three courses (12 units): Studio Art 135 (Gaming Studies), 166 (Advanced Collaborative Projects), and Computer Science 113/Informatics 125 (Computer Game Development).
B. Three courses (12 units) chosen from: Studio Art 106 (Interactive Digital Media), 110 (Interdisciplinary Digital Arts), 138 (World Building), 175 (Digital Art Aesthetics), Informatics 43 (Informatics Core Course III) or ICS 52 (Introduction to Software Engineering), Informatics 121 (Software Design I), 131 (Human-Computer Interaction), 132 (Project in Human-Computer Interaction and User Interfaces), Computer Science 112 (Computer Graphics), 171 (Introduction to Artificial Intelligence), 175 (Project in Artificial Intelligence).
C. Two courses (8 units) chosen from: Studio Art 197 (Internship), 199 (Independent Study), Computer Science H198 (Honors Research), 199 (Individual Study), Informatics H198 (Honors Research), and 199 (Individual Study).
Undergraduate Major in Information and Computer Science
The Information and Computer Science (ICS) major provides students with a broad introduction to topics ranging from computer system design and networking to software design and computer-supported cooperative work. Through the completion of four elective courses, students may choose to specialize in one or more of six areas (see below under Major Requirements). ICS majors may also choose to complete the Game Culture and Technology concentration, an interdisciplinary course of study requiring a total of eight courses (32 units) from the Bren School of ICS and Claire Trevor School of the Arts (Department of Studio Art); admission criteria and course requirements are described on this page.
ADMISSIONS
Freshman Applicants: See pages 36-40.
Transfer Applicants:
Junior-level applicants with the highest grades overall and who satisfactorily complete course prerequisites will be given preference for admission. Applicants must satisfy the following requirements:
1. One year of discrete mathematics if available; if not, first-year calculus. (A semester of pre-calculus and a semester of calculus may not be used to fulfill this requirement.)
2. One year of computer science courses, including a UC-transferable programming course involving concepts such as found in C++, Java*, Eiffel, or another object-oriented high-level language; programming-only courses such as Basic, Fortran, Cobol, Pascal, and C are not acceptable. Students should select UC-transferable courses that do not focus strictly on learning a programming language but instead focus on topics such as object-oriented design, data structures, algorithms, and computer architecture, if such courses are available. *Java is strongly recommended as it is used in most programming-related courses.
The lower-division requirements consist of five quarters of ICS courses and six quarters of math courses which must be taken in a certain order and which are prerequisites for upper-division courses. Students who transfer to UCI in need of completing any part of this sequence may find that it will take longer than two years to complete their degree.
REQUIREMENTS FOR THE BACHELOR'S DEGREE IN INFORMATION AND COMPUTER SCIENCE
University Requirements: See pages 57-62.
Major Requirements
Lower-division (some or all of these are prerequisites for required upper-division ICS courses):
A. Mathematics 2A-B, ICS 6B/Mathematics 6B, ICS 6D/Mathematics 6D, Mathematics 6G or 3A, Statistics 67/Mathematics 67.
B. ICS 21, 22, 23, 51, 52.
Upper-division:
A. ICS Core requirements: CSE121/Informatics 111, Informatics 161, CS 141/CSE141/Informatics 101, CS 142A/CSE142, CS 143A/CSE104, CS 151, CS 152, CS 161/CSE161, CS 171.
B. Two intermediate courses, each from a different group: CS 115; Informatics 113; Informatics 115, 123, or 131; Informatics 162; CS 131, 144, 146, or Engineering EECS113; CS 132, CS 145A, or Engineering EECS115/CSE151; CS 134, 162, 163, 164, 167, or 168; CS 172, 173, 174, 178, Engineering EECS101; CS 111, 112, or Engineering EECS104; CS 122A/Engineering EECS116.
C. Three project courses selected from Informatics 117, Informatics 118A-B, Informatics 119, Informatics 132, Informatics 163, CS 113/Informatics 125, CS 114, CS 122B, CS 133, CS 142B, CS 143B, CS 153, CS 154, CS 165, CS 175, CS 176. NOTE: Informatics 119 may not be used to satisfy any part of the project course requirement in conjunction with Informatics 118A-B.
D. Two additional courses chosen from this list that have not been used to satisfy another ICS major requirement: Mathematics 105A-B, 114A-B, 118A-B, 120A-B, 121A-B, 130B-C, 132B-C, 140A-B, 141, 150, 151, 152, 161, 162A-B, 171A-B-C, 173A-B, 180; CS 162, 163, 164, 167, 168, 177; Statistics 120B-C or Mathematics 131B-C; Philosophy 105A-B-C.
Specializations: Students may elect to complete one or more specializations within the major in Information and Computer Science. Courses taken for a specialization must be taken for a letter grade and may be used to satisfy upper-division requirements for the major. Courses may also be used to satisfy requirements of more than one specialization, subject to the following limitation: separate specializations may share at most one course.
One individual study course (CS H198 or CS 199) in the area of specialization may be substituted for one designated course (indicated by *) in the specialization requirements, upon prior approval of the Bren School Associate Dean for Student Affairs.
Artificial Intelligence: four courses* selected from CS 163 or CS 165, CS 172-179.
Computer Systems: four courses selected from Informatics 123, CS 112, CS 115, CS 131-134, CS 142B, CS 143B, CS 144, CS 145A, CS 146, CS 153-154.
Implementation and Analysis of Algorithms: two courses selected from CS 163, CS 164, CS 165; two courses* selected from Informatics 117,
CS 133, CS 142B, CS 143B, CS 175, CS 176.
Information Systems: three courses selected from Informatics 113, Informatics 117, Informatics 132, Informatics 162, Informatics 163; one course* selected from Informatics 123, Informatics 131, Informatics 153, CS 122A, CS 132, CS 176.
Networks and Distributed Systems: four courses selected from Informatics 123, CS 131, CS 132, CS 133*, CS 134, CS 143B*.
Software Systems: two courses selected from Informatics 113, Informatics 115, Informatics 123, Informatics 131, Informatics 132; two software project courses, either Informatics 117 and Informatics 119* or Informatics 118A-B.
Major and minor restrictions: See page 345.
Sample Program of Study Information and Computer Science
| FALL | WINTER | SPRING |
| Freshman | ||
| ICS 21 | ICS 22 | ICS 23 |
| Math 2A | Math 2B | ICS 6B/Math 6B |
| Writing 39A | Writing 39B | Writing 39C |
| Breadth (III/VII) | Breadth (III/VII) | |
| Sophomore | ||
| ICS 51 | ICS 52 | ICS UD Core |
| ICS 6D/Math 6D | Math 6G or 3A | ICS UD Core |
| Breadth (II/IV) | Breadth (II/IV) | Stats/Math 67 |
| Breadth (III/VII) | Breadth (III/VII) | Breadth (II/IV) |
| Junior | ||
| ICS UD Core | ICS UD Core | ICS UD Core |
| ICS UD Core | ICS UD Core | ICS UD Core |
| UD Math | UD Math | UD Writing |
| Language (VI) | Language (VI) | Language (VI) |
| Senior | ||
| ICS Project | ICS Project | ICS Project |
| ICS Intermediate | ICS Intermediate | ICS UD Core |
| Breadth (II/IV) | Breadth (II/IV) | Breadth (II/IV) |
| Breadth (III/VII) | Breadth (III/VII) | |
Minor in Information and Computer Science
Students outside the School may also pursue a minor in Information and Computer Science. The minor provides a focused study of Information and Computer Science to supplement a student's major program of study and prepares students for a profession, career, or academic pursuit in which computer science is an integral part but is not the primary focus. The ICS minor contributes to students' competence in computing technology and proficiency in programming as well as exposing them to the fundamentals of computer science. The minor allows students sufficient flexibility to pursue courses that complement their major field or address specific interests.
Requirements for the Minor: ICS 21, 22, 23; ICS 6D or Mathematics 6D; ICS 51 or 52; two upper-division courses from CS 111-144, CS 151-177, Informatics 101, Informatics 111-119, Informatics 123, Informatics 125, Informatics 131, Informatics 132, Informatics 141, Informatics 153, and Informatics 161-163. CS 190-199 and Informatics 190-199 may not be applied to the minor.
Courses in Information and Computer Science
BREADTH COURSES FOR NONMAJORS
Nonmajors may also take other Bren School of ICS courses for which they have the prerequisites.
10A Information: Presentation and Representation (4). Kinds of information, including quantitative, probabilistic, textual, graphic, audio. Locating information, evaluating reliability. Representing information on paper, in computer systems, in other media. Organization into hierarchies, networks, tables. Effectiveness and efficiency of alternative representations and organizations. Measuring information; redundancy, compression. Open to nonmajors only. Formerly ICS 10. (V)
10B Computer-Based Information Systems (4). The analysis, design, implementation, quality assurance, deployment, and ongoing management of computer-based information systems, and related software, hardware and networking issues; end-user customization of applications and interfaces, and selection of information, via query macro and scripting languages. Prerequisite: ICS 10A. Open to nonmajors only. Formerly ICS 11. (V)
10C Networked Information Discovery and Retrieval (4). Network-based communication and information resources, including electronic mail, news, and other sources. Technical, personal, and social aspects of their development, access, and use. Extensive use of a wide range of established and developing technologies. Prerequisite: ICS 10B. Open to nonmajors only. Formerly ICS 1C. (V)
LOWER-DIVISION
COURSES FOR MAJORS AND NONMAJORS
6B Boolean Algebra and Logic (4). Relations and their properties; Boolean algebras, formal languages; finite automata. Prerequisite: high school mathematics through trigonometry. Same as Mathematics 6B. (V)
6D Discrete Mathematics for Computer Science (4). Covers essential tools from discrete mathematics used in computer science with an emphasis on the process of abstracting computational problems and analyzing them mathematically. Topics include: mathematical induction, combinatorics, and recurrence relations. Prerequisite: high school mathematics through trigonometry. Same as Mathematics 6D. Formerly ICS 6A. (V)
20B Introduction to Computer Science with Applications to Biology (4). No background in computer science, programming, or biology required. Fundamental programming concepts are introduced using the language Python with a problem-oriented approach. All problems come from elementary molecular biology. May not be taken for credit after ICS 21/CSE21, ICS H21, or Informatics 41.
21 Introduction to Computer Science I (6). Introduces fundamental concepts related to computer software design and construction. Develops initial design and programming skills using a high-level language. Fundamental concepts of control structures, data structures, and object-oriented programming. Same as CSE21. Only one course from ICS 21/CSE21 and ICS H21 may be taken for credit. May not be taken for credit after Informatics 42. (V)
H21 Honors Introduction to Computer Science I (6). Introduces fundamental concepts of computer software design and construction. Develops initial design and programming skills using a high-level language. Fundamental concepts of control structures, data structures, functional and object-oriented programming. Introduces topics in computer organization and social impact of technology. Prerequisite: enrollment open to ICS, CSE, and Computer Science majors in the Campuswide Honors Program or by consent of the Bren School of ICS. Only one course from ICS H21 and ICS 21/CSE21 may be taken for credit. May not be taken for credit after Informatics 42. (V)
22 Introduction to Computer Science II (6). Abstract behavior of classic data structures (stacks, queues, sorted and unsorted maps), alternative implementations, analysis of time and space efficiency. Recursion. Object-oriented and functional programming. Prerequisite: ICS 21/CSE21 or ICS H21 with a grade of C or better. Same as CSE22. Only one course from ICS 22/CSE22, ICS H22, or Informatics 42 may be taken for credit. (V)
H22 Honors Introduction to Computer Science II (6). Abstract behavior of classic data structures (stacks, queues, sorted and unsorted maps), alternative implementations. Recursion. Mathematical analysis of time and space efficiency, program analysis and correctness, system design techniques, programming paradigms. Prerequisite: ICS H21 with a grade of B- or better or ICS 21/CSE 21 with a grade of A or better. Only one course from ICS H22, ICS 22/CSE22, or Informatics 42 may be taken for credit. (V)
23 Fundamental Data Structures (4). Focuses on implementation and mathematical analysis of fundamental data structures and algorithms. Covers storage allocation and memory management techniques. Prerequisites: ICS 22/ CSE22 or ICS H22 with a grade of C or better, or Informatics 42 with a grade of C or better, or Engineering EECS40. Same as CSE23. Only one course from ICS 23/CSE23 and ICS H23 may be taken for credit. (V)
H23 Honors Introduction to Computer Science III (4). Builds on ICS H22 with respect to mathematical tools and analysis. Focuses on fundamental algorithms in computer science, basic data structures for primary and secondary memory, storage allocation and management techniques, data description, and design techniques. Prerequisites: ICS H22 with a grade of B- or better or ICS 22/CSE 22 with a grade of A or better, or Informatics 42 with a grade of A or better. Only one course from ICS H23 and ICS 23/CSE23 may be taken for credit. (V)
51 Introductory Computer Organization (6). Multilevel view of system hardware and software. Operation and interconnection of hardware elements. Instruction sets and addressing modes. Virtual memory and operating systems. Laboratory work using low-level programming languages. Prerequisites: ICS 21 with a grade of C or better; ICS 6B/Mathematics 6B.
52 Introduction to Software Engineering (6). Introduction to the concepts, methods, and current practice of software engineering. The study of large-scale software production; software life cycle models as an organizing structure; principles and techniques appropriate for each stage of production. Laboratory work involves a project illustrating these elements. Prerequisite: ICS 23 with a grade of C or better. ICS 52 and Informatics 43 may not both be taken for credit.
80 Special Topics in Information and Computer Science (2 to 4). May be repeated for credit if title or topic varies.
92 Introduction to University Success (0). Survey of the attitudes and skills required for academic success. Designed primarily for new freshmen in technical fields who are first-generation college students, low-income students, or students with disabilities. Focus on specific tools and proven methods to improve academic performance. Study planning and independent studies. Students may receive a maximum of four units of workload credit only. Pass/Not Pass only.
93 Strategies for Success in ICS (0). Develops students' study skills for ICS and breadth requirement courses through instruction, small group activities, and application assignments. Topics include goal setting, note taking, text reading, examination preparation, memory and concentration, and problem solving. Pass/Not Pass only. Two units of workload credit only.
UPPER-DIVISION
139 Technical Writing and Communication Skills (4). Study and practice of critical and technical writing as it applies to the field of computer science. Each student writes essays of varying lengths, totaling at least 4,000 words. Prerequisite: satisfactory completion of the lower-division writing requirement; upper-division standing; Bren School of Information and Computer Sciences majors only.
H197 Honors Seminar (2). An overview of computer science and selected recent trends in research. Students attend talks on current faculty research, with opportunities for discussion. Prerequisite: participation in the Bren School of ICS Honors Program or Campuswide Honors Program. Pass/Not Pass only.