Back to search results

UC BerkeleyX: CS169.2x: Engineering Software as a Service, Part 2




Unknown, Unknown, Armando Fox, Armando Fox, David Patterson, Sam Joseph, David J. Malan, Rob Bowden, Zamyla Chan, Jason Hirschhorn

Computer Science, Engineering, Other

6 weeks



CS 169.2x is the second half of University of California, Berkeley's semester long course on Engineering Software as a Service. In the first half of the course, CS 169.1x, students use Agile development methods to deploy a simple SaaS app in the cloud. In the second half, CS 169.2x, students create more sophisticated apps by adding relationships between models in apps and by enhancing their apps with JavaScript. They also learn about what happens after the apps are deployed to real users, including how to monitor performance, identify and fix common performance problems, and avoid compromising customer data. Finally, students learn how to apply Agile techniques to enhance and refactor legacy code, a critical skill for professional programmers. Other topics covered in CS 169.2x include: How to form, organize and manage small programming teams Introduction to design patterns: what they are and how to recognize opportunities to apply them Using Rails for more advanced features like third-party authentication and elegantly expressing design patterns that arise frequently in SaaS There will be three homework assignments: two programming assignments and one assignment about operations/deployment. There will also be several short quizzes. The videos and homeworks used in this offering of the course were revised in October 2013. Group tutorial Q&A sessions will also be held and broadcast live through Google Hangouts and YouTube. Before your course starts, try the new edX Demo where you can explore the fun, interactive learning environment and virtual labs. Learn more.