Home - Syllabus - Schedule - Project
The most important part of this course is the project, in which you'll gain experience with the tools and topics presented in lecture and reading. The project is completed in teams of approximately 6 members.
The main goal of the course is to give you experience working with a team of software engineers on a significant project, beyond the limited scope of a single course assignment. We'll introduce and use several software engineering tools designed to facilitate this process. Generally the larger the project, the more these tools are valuable for the coordination, automation, and other assistance they provide.
Starting from a base code, you will develop an Internet Relay Chat protocol (IRC) client or a bot, depending on whether you want to put more emphasis on the graphical user interface (GUI) or on the automation of a service. More details here... .
Your team and individual performance on the project will be evaluated weekly and at the end of the course. The largest portion of the weekly assessments will be based on the commitments made in the customer meeting.
Individual performance and internal team coordination will be evaluated based on details in your Trac project. For this reason it is important that you keep your milestones and tickets complete and up to date, and also include detailed comments with each commit to the repository including:
Also update the ticket with a reference to each changeset (produced by a commit). Make references between tickets, changesets, and other entities using TracLinks.
Remember of course that you should work in small increments, and commit and update frequently. It's good practice to commit only when all the tests pass. Working with your partner, you'll add a few tests that fail at first, then make them pass, commit your work (with good comments), and repeat the cycle. Expect a cycle to take between 15 minutes and a few hours.
Here is the breakdown for the weekly assessments (100 points total):
The project terminates on week 5 with a 10-15 minutes demo. During the demo, each team will show off the implemented features. The assessment on week 5 will count for 200 points broken down with the same ratio and criteria.