Announcements
- Welcome to CS48!
The authoritative class web site is on GitHub: https://ucsb-cs48.github.io/w20/ - Sign up for Piazza and post there to ask for help or to help others.
- Sign up on Slack (you should have received an invite in your email listed on GOLD)
- We also have a GauchoSpace course page
Course Description
CS 48 is about "programming in the large" - how to design, implement and test large programs. The emphasis is on learning by doing, and students will spend most of their time on problems related to their group projects (and less time on traditional homework assignments). Along the way, CS 48 will help you learn: the phases of a software project, and experience working in teams, basics of object-oriented analysis and design, including design patterns user interface principles and tips for satisfying clients automated system build and testing strategies, UML, version control and more ...
Pre-requisite
Computer Science 32 with a grade of C or better.
Course Goals
- Students gain personal experience with each of the typical phases of a large-scale programming project, including requirements and domain analysis, system design, implementation, and testing.
- Students gain experience working in groups to develop a reasonably complex software system.
- Students learn object-oriented analysis and design principles and techniques.
- Students learn to effectively implement and test object-oriented software systems.
Course Specifics
- Class Times
- Monday/Wednesday 2-3:15pm, Phelps 3526
- Discussion (Team/Tutor meetings)
- Thursday 4-4:50pm (sec 07971), 5-5:50 (sec 07989) and 6-6:50pm (sec 07997), Phelps 3525. Note that your assigned section may change once we select teams...
- Instructor:
- Tobias Höllerer
- Office: Department of Computer Science, HFH 2155
- Office Hours: Tue, 11-12:30pm, and by appointment
- Teaching Assistant and Reader:
- TA: Harlan Kringen (kringen@ucsb.edu)
- Office hours: Thu, 11:30am-12:30pm or on-demand (send email), location: CSIL
- TA: Richa Wadaskar (richa_wadaskar@ucsb.edu)
- Office hours: Wed, 3:30-4:30 or on-demand (send email), location: CSIL
- Tutors (Team mentors): Ekta Shahani, Anu Polishetty, Connor Daly, Terrell Marshall, JingJing Yu
Mentoring during section and by appointment
Required Text
Handouts in Class
Schedule of Lecture Topics
- Software development processes
- Software requirements (user stories and use cases)
- Software design
- Implementation, testing, and SWE Ethics