By the end of this course, you will have completed five homework assignments, all of which involve a substantial amount of programming. Each assignment can be submitted multiple times without penalty, so you can use feedback from the automatic grader to revise your code. Note that your most recent score will be recorded as your grade.
In addition to the homework assignments, there will be 4 quizzes. You will have only one chance to take each quiz, with the exception of Quiz 1 (the diagnostic quiz). You may take Quiz 1 as many times as you want.
Each of the 5 homework assignments will be worth 16% of the final grade.
The quizzes are worth 20% of the final grade, with the lowest scoring quiz being dropped.
To earn a certificate for this class you must achieve a score of at least 65% overall.
50% of the grade from each homework assignment comes from pair programming. The pair programming is particularly important if you would like to be considered for the upcoming 169 part 3 project course, which will involve developing software in agile teams for real non-profit and charity clients. The 169 part 3 capstone gathers together all the skills from 169 parts 1 and 2 (Agile Development using Ruby on Rails basic and advanced); and allows to become certified as an Agile software developer.
The pair programming component involves submitting videos, but note that you are NOT required to use a webcam, and all that is required is that you record the screen, i.e. the editor being used to work on the code for the assignment. We encourage the use of Agile Ventures Pair Programming on Air to make it easy to record pairing sessions using Google Hangouts and YouTube unlisted videos. However, if you are unable to access YouTube and/or Google hangouts then feel free to submit a download link to a screencast recorded by other means and/or hosted somewhere else.
If you have any concerns regarding inappropriate behaviour in remote pair programming sessions please do not hesitate to contact Professor Sam Joseph at email@example.com
The recommended textbook for the class is Engineering Software as a Service (ESaaS), First edition (1.2.1; May-2016), by Fox and Patterson. While the book is recommended, it is not required, and there are many instructional materials available online for free.
Please note that the price and availability may vary based on the country that you live in. For more information on this issue, visit the textbook FAQ.
Estimated time spent on course per week: 12 hour
In a previous version of the course,
50% of the students spent 6 hours or less per week on the course
40% spent 6 to 12 hours a week
10% spent more than 12 hours a week.
All lecture sequences are released on Wednesdays.
All homework assignments and quizzes are released on Fridays. In order to be eligible for a certificate all assignments and quizzes must be turned in by July 17th 23:59 UTC. Final submission of peer review components must be completed by July 19th 23:59 UTC to be counted for certificate generation.
Note the precise details of this schedule are subject to change
|Week#||Date||Topic||Reading||Slides||Lecture Sequence||Assignment||Due (Suggested)|
|-1||May 25 (Wed)||Getting Started||-||-||
Setting Up Courseware
|Codecademy Ruby 1-10|
|0||Jun 1 (Wed)||Overview||-||-||Version Control, Command Line & Git
|Codecademy Ruby 11-19|
|1||Jun 8 (Wed)||Software Engineering and SaaS Architecture||Ch. 1||Lecture 1||Lecture 1: SOA & Cloud Computing||Quiz 1||Jun 20 (Mon)|
Ch. 10.1 - 10.2
Ch. 3.1 - 3.4
|Lecture 2||Lecture 2: Agile & Ruby Intro||HW 1||Jun 20 (Mon)|
|2||Jun 15 (Wed)||Ruby, BDD & TDD||Ch. 3.5 - 3.8||Lecture 3||Lecture 3: More Ruby||HW 2||Jun 27 (Mon)|
|Ch. 8.1 - 8.2 & Ch. 2||Lecture 4||Lecture 4: BDD & TDD Intro & SaaS Architecture/REST||Quiz 2||Jun 27 (Mon)|
|3||Jun 22 (Wed)||Rails, SaaS and REST||Ch. 2||Lecture 5||Lecture 5: SaaS Architecture & REST Cont.|
|Ch. 4||Lecture 6||Lecture 6: Rails Intro||HW 3||Jul 4 (Mon)|
|Lecture 7||Lecture 7: Rails continued|
|4||Jun 29 (Wed)||Behavior Driven Development (BDD)||
|Lecture 8||Lecture 8: Metrics, User Stories, Tracker||HW 4||Jul 11 (Mon)|
|Lecture 9||Lecture 9: Lo-Fi & Cost Estimation||Quiz 3||Jul 11 (Mon)|
|5||Jul 6 (Wed)||Test Driven Development||Ch. 8||Lecture 10||Lecture 10: Rspec & Red, Green, Refactor||HW 5||Jul 18 (Mon)|
|Lecture 11||Lecture 11: Testing Support||Quiz 4||Jul 18 (Mon)|
|6||Jul 13 (Wed)||Conclusion||N/A||N/A||Farewell||N/A|
This syllabus is subject to revision