Select a level: Select a term:
Only show courses available to first-year students.

Click here to browse textbooks information at the bookstore's web site.

Course Schedule for COMPUTER SCIENCE - Fall 2017
Class
No.
Course ID Title Credits Type Instructor(s) Days:Times Location Permission
Required
Dist Qtr
3399 CPSC-110-01 Computing with Mobile Phones 1.00 LEC Lake,Pauline H. MWF: 10:00AM-10:50AM TBA NUM  
  Enrollment limited to 24
  NOTE: 14 seats reserved for first year students, 10 seats for sophomores
  NOTE: This course is not open to students who have received credit for CPSC 215
  App Inventor for Android is a new open source programming language for Android smart phones. App Inventor is a visual language that enables novice programmers to create powerful mobile applications that interact with the web and with other phones. In this course, students will learn how to access the world of mobile services and applications as creators, not just consumers. They will learn to create entertaining and socially useful apps that can be shared with friends and family. In addition to learning to program and how to become better problem solvers, students will also explore the exciting world of computer science from the perspective of mobile computing and its increasingly important effect on society.
1055 CPSC-115-01 Introduction to Computing 1.25 LEC Spezialetti,Madalene TR: 9:25AM-10:40AM TBA NUM  
  Enrollment limited to 48
  Prerequisite: C- or better in Computer Science 110 or mathematics skills appropriate for enrolling in a calculus class.
  NOTE: 20 seats reserved for first-year students and 20 seats are reserved for sophomores.
  A fundamental treatment of computer science topics featuring the study of the high-level programming language Python. Topics discussed will include computer architecture, programming languages, and ethical issues involved in computer use. Problem-solving techniques involved in writing programs will be studied, proper style and documentation will be required, and object-oriented program design will be introduced. A required weekly lab will involve an intensive study of programming techniques in Python.
1056 CPSC-115-20 Introduction to Computing 1.25 LAB Spezialetti,Madalene W: 1:15PM-3:55PM TBA NUM  
  Enrollment limited to 24
  Prerequisite: C- or better in Computer Science 110 or mathematics skills appropriate for enrolling in a calculus class.
  A fundamental treatment of computer science topics featuring the study of the high-level programming language Python. Topics discussed will include computer architecture, programming languages, and ethical issues involved in computer use. Problem-solving techniques involved in writing programs will be studied, proper style and documentation will be required, and object-oriented program design will be introduced. A required weekly lab will involve an intensive study of programming techniques in Python.
1057 CPSC-115-21 Introduction to Computing 1.25 LAB Syta,Ewa R: 1:30PM-4:10PM TBA NUM  
  Enrollment limited to 24
  Prerequisite: C- or better in Computer Science 110 or mathematics skills appropriate for enrolling in a calculus class.
  A fundamental treatment of computer science topics featuring the study of the high-level programming language Python. Topics discussed will include computer architecture, programming languages, and ethical issues involved in computer use. Problem-solving techniques involved in writing programs will be studied, proper style and documentation will be required, and object-oriented program design will be introduced. A required weekly lab will involve an intensive study of programming techniques in Python.
3400 CPSC-203-01 Math Foundatns of Comput 1.00 LEC Miyazaki,Takunari MWF: 10:00AM-10:50AM TBA NUM  
  Enrollment limited to 25
  Prerequisite: C- or better in Computer Science 110, or mathematics skills appropriate for enrolling in a calculus class.
  An introduction to the principles of logic and discrete mathematics required in the study of computer science. Topics covered may include: propositional and predicate logic and their relationship to general proof techniques used in computing and correctness proofs of programs; mathematical induction applied to recursion and recurrence relations; set theory with an emphasis on infinite sets used in computing; counting principles useful in analyzing graphs and trees; relations and functions and their relationship to databases and functional programming languages. Computer programs will be used to explore concepts examined in the course.
3401 CPSC-219-01 Theory of Computation 1.00 LEC Miyazaki,Takunari MW: 8:30AM-9:45AM TBA NUM  
  Enrollment limited to 25
  Prerequisite: C- or better in Computer Science 115L and Computer Science 203
  A selection of topics intended to serve as an introduction to formal languages and automata theory. The topics will be chosen from among finite state machines, pushdown automata, Turing machines, the Chomsky language hierarchy and related questions of computability.
2335 CPSC-275-01 Intro to Computer Systems 1.25 LEC Yoon,Peter A. WF: 1:15PM-2:30PM TBA NUM  
  Enrollment limited to 24
  Prerequisite: B- or better in Computer Science 115 or a C- or better in Computer Science 215L.
  This course introduces the fundamental organization and structure of modern computer systems from the perspective of a programmer. Students will become more effective programmers as they learn how computer systems compile, link, and execute programs, store information, and communicate. Topics covered will include data representations, computer arithmetic, low-level representations of programs, processor organization, the memory hierarchy and management, processes, and system-level I/O. A required weekly lab will involve a series of programming exercises related to these topics.
2336 CPSC-275-20 Intro to Computer Systems 1.25 LAB Yoon,Peter A. M: 1:15PM-3:55PM TBA NUM  
  Enrollment limited to 24
  Prerequisite: B- or better in Computer Science 115 or a C- or better in Computer Science 215L.
  This course introduces the fundamental organization and structure of modern computer systems from the perspective of a programmer. Students will become more effective programmers as they learn how computer systems compile, link, and execute programs, store information, and communicate. Topics covered will include data representations, computer arithmetic, low-level representations of programs, processor organization, the memory hierarchy and management, processes, and system-level I/O. A required weekly lab will involve a series of programming exercises related to these topics.
3049 CPSC-275-21 Intro to Computer Systems 1.25 LAB Cancelled NUM  
  Enrollment limited to 18
  Prerequisite: B- or better in Computer Science 115 or a C- or better in Computer Science 215L.
  This course introduces the fundamental organization and structure of modern computer systems from the perspective of a programmer. Students will become more effective programmers as they learn how computer systems compile, link, and execute programs, store information, and communicate. Topics covered will include data representations, computer arithmetic, low-level representations of programs, processor organization, the memory hierarchy and management, processes, and system-level I/O. A required weekly lab will involve a series of programming exercises related to these topics.
3633 CPSC-310-01 Software Design 1.00 LEC Syta,Ewa TR: 10:50AM-12:05PM TBA NUM  
  Enrollment limited to 25
  Prerequisite: C- or better in Computer Science 215.
  Object-oriented paradigm for software analysis and design using an object-oriented programming language as a means to efficient, reliable, modular, and reusable code. Topics covered will include problem solving and design processes, design patterns, object-oriented principles and language-specific techniques, and tools for object-oriented modeling.
3726 CPSC-333-01 Computer Networks 1.00 LEC Yoon,Peter A. MWF: 11:00AM-11:50AM TBA NUM  
  Enrollment limited to 25
  Prerequisite: C- or better in Computer Science 215L, 275L and 203 (or concurrent enrollment in CPSC 203)
  An introduction to the principles and practices of local area and wide area networking. Topics include the study of the layers of computer networking, network configurations, protocols, security, and reliability. Issues related to implementing networking configurations will be studied.
3402 CPSC-352-01 Artificial Intelligence 1.00 LEC Cancelled NUM  
  Enrollment limited to 25
  Prerequisite: C- or better in Computer Science 215L and Computer Science 203 (or concurrent enrollment in 203).
  A study of basic principles and research methods in artificial intelligence. The course exposes students to selected topics in the field including pattern recognition, problem solving, theorem proving, knowledge representation, and natural language understanding by computers. The course will draw on recent advances made by cognitive scientists in each of these applications. Students are expected to study the theoretical background of an application. They will also complete several programming and simulation assignments during the semester.
2189 CPSC-399-01 Independent Study 0.50 - 1.00 IND TBA TBA TBA Y  
  Enrollment limited to 15
  Independent work to develop maturity and initiative in the solution of a problem in the area of the student's special interests. This course may require concurrent registration in Computer Science 403 or 404. Submission of the special registration form, available in the Registrar's Office, and the approval of the instructor and chairperson are required for enrollment.
1058 CPSC-403-01 Computer Science Seminar 0.50 SEM Yoon,Peter A. F: 2:40PM-3:55PM TBA WEB  
  Enrollment limited to 25
  Students engaged in research (Computer Science 419) or independent study (Computer Science 399) and senior exercise students will meet with computer science faculty for oral presentations and critical discussions of journal papers, research plans, and research progress. Seniors using this course to satisfy the senior exercise requirement will be expected to complete a research or design project and make a formal presentation on its results to the seminar. The project may be an extension or revision of a project conducted in one of their other major courses.
2282 CPSC-466-01 Teaching Assistant 0.50 - 1.00 IND TBA TBA TBA Y  
  Enrollment limited to 15
  Submission of the special registration form, available in the Registrar's Office, and the approval of the instructor and chairperson are required for enrollment.
2277 CPSC-498-01 Senior Project Part 1 1.00 IND TBA TBA TBA Y  
  Enrollment limited to 15
  This course is comprised of a research or implementation project and a final written report. This course is required for all senior computer science majors. Students must locate a project advisor and must submit a preliminary proposal to the project adviser by the last day of classes in the spring semester of the junior year. In addition to the proposal, submission of the special registration form, available in the Registrar's Office, and the approval of the instructor and chairperson are required for each semester of this year-long project. The course credits are considered pending in the first semester and will be awarded upon completion of the second semester.