The following table shows the class schedule, by week, and the topics for the classes. While there may be some adjustment in the schedule as the term progresses, I will try to stick to the schedule as much as possible.
|
Date
|
Topics | Assignment | Reading |
| Course introduction, spikes, teams, iterative development |
Form teams. There should be three teams. Each should have the same number of members, ideally. However, if there are not enough to make this come out even, there should be no more than one team member difference. You can use myWPI for a discussion to find team members. When the teams are formed, post the member names on the myWPI discussion board. Every student should get an account on the WPI SourceForge system. One member from each team should request a new project on SourceForge and then add the other project team members. (Due 18-Mar) |
Introduction, Ch. 1 | |
| 17-Mar | Tools, Eclipse, CVS, SourceForge, pair programming |
Students will work in pairs for this assignment. If there are an odd number of students, there may be one group that can have 3 students, but you need to make sure that you all get a chance to pair program. Try an XP spike as described in Chapter 2 of the text. You should, at the minimum, pair program, estimate your work by writing simple user stories, and, if possible, try test-first programming. You will write a program that does the following:
Submit your Eclipse project as a zipped file. You must have some sort of tests and include a description of how to run the tests. Use the attached report format to describe how to run your tests and assess your experience. Include it as part of your zipped file. Replace the blue text in the report with your information. (Due 21-March) /cs/bin/turnin submit cs3733 hw2 homework2.zip |
Ch. 2, 3, 4 |
| 18-Mar | Introduction to the project, team selection, iterative and incremental development | Ch. 5, 6 | |
| 21-Mar | Requirements: use cases, user stories | Ch. 7, 8 | |
| 22-Mar | Project planning: the planning game, estimation | Ch. 9, 10 | |
| 24-Mar | Software lifecycle, agile methods, XP | Slides are here. | Ch. 11, 12 |
| 25-Mar | Team meetings, exercises, iteration reports |
You are to write user stories that describe the requirements for the following The school bookstore has asked you to write a system that keeps track of textbooks. It is essentially an inventory system. Books can be removed from inventory and added to inventory. When a book hits some specified level of stock, it's time to reorder the title. When books arrive they are added to the inventory. Your user stories should only describe the system in the above paragraph. You should not try to include any purchasing or sales information, just describe as completely as possible what is necessary to implement the above actions. (Due 29-March) /cs/bin/turnin submit cs3733 hw3 homework3.{doc, xls, txt} |
Ch. 13 |
| 28-Mar | Pair programming, Test-first programming, JUnit |
Ch. 14 Optional reading: |
|
| 29-Mar | People, Process, Tools, generating trust, team behavior | Slides from this class are here. | |
| 31-Mar | Unit testing, mock objects, CVS |
Modify the code we looked at in class on Monday. The assignment is in the README file. You should turn in a zipped Eclipse project that has all of the JUnit tests set up to run. Provide a README file that tells the grader how to run the tests. If your project does not load, or the tests do not run without change, you will be penalized, or possibly receive a zero for the assignment. (Due 4-Apr) /cs/bin/turnin submit cs3733 hw4 homework4.zip |
|
| 1-Apr | Team meetings, exercises, iteration reports | Ch. 15 | |
| 4-Apr | Analysis: finding domain classes, interactions, introduction to UML | ||
| 5-Apr | Analysis methods: CRC cards, textual analysis | ||
| 7-Apr | Midterm exam | ||
| 8-Apr | Team meetings, exercises, iteration reports | ||
| 11-Apr | Design: architecture | ||
| 12-Apr | Design: class design | ||
| 14-Apr | Design: design patterns | ||
| 15-Apr | Team meetings, exercises, iteration reports | ||
| 18-Apr | Design: design patterns |
Construct a sequence diagram on the following use case scenario. Show boundary, entity, and control classes. Insert classes as appropriate for performing good domain analysis.
This is to be turned in at the beginning of class on Friday, April 22. It may be done using a UML program or hand drawn (neatly). |
|
| 21-Apr | Testing: fundamentals, test cases | ||
| 22-Apr | Team meetings, exercises, iteration reports | ||
| 25-Apr | Testing: integration and system tests | Parnas and Clements article | |
| 26-Apr | Testing | Complete the individual project report form and email it to me by May 1. | |
| 28-Apr | Exam review, IDEA forms | ||
| 29-Apr | Final exam | ||
| 2-May | Project presentations | ||
| 3-May | Project presentations |
Modified:
28-Apr-2005
Gary Pollice