Your postmortem is—as per the syllabus—a required assignment.
It is OK to deviate from your Iteration 3 design doc as long as the reason is to
In either case, the change(s) and reasons for them must be explicitly documented in both the source code and the team's post-mortem (due Wednesday). Given that making good design revisions takes time (a very limited commodity at this point), I recommend that you reserve deviations to those situations with the highest payoff.
The Iteration 3 deliverables are the same as the Iteration 1 deliverables, except that the CD should be labled COP 4331 2010 Iteration 3 <team name>.
Download the Iteration 3 peer assessment forms (PDF), print the page corresponding to your group, and fill it out. Remember:
Much simpler than for iterations past: document all deviations from your iteration 3 design document and justify them. Due Wednesday.
After you have completed your Mark IV Special Coffee Marker design, read:
The College of Engineering is participating in a trial this semester to test the new on-line faculty evaluation system that will go in effect for the entire university by this fall. The evaluations for each section will be made available to students starting April 1, 2011 and will close on April 22, 2011. [...]
PLEASE do not do evaluations for any courses you are taking with me until after that class's last meeting on Wednesday, April 20th. I never gave paper evaluations on any day but the last because I strongly believe that one should experience the entire class before evaluating it. I do want your evaluation, just not before the class is done. Thanks!
Team assignments have been mailed to your ufl.edu accounts [the message bodies are blank: see the recipients list!] Here are the...
The team names are Chiron, Kraken, Medusa, Minotaur, and Polyphemus: what is the theme?
The only things due today are the same as listed in the Iteration 1 deliverables—though the CD name should not say "Iteration 1" ;). Due on Wednesday is the first part of your Iteration 2 wrap-up. The second part is due on Friday.
Note: while your team may choose to incoporate the principles covered in these readings in your Iteration 2 design, there is no requirement to do so.
The Iteration 2 requirements are ready for your consumption. The Iteration 2 deliverables are the same as the Iteration 1 deliverables, except that the CD should be labled COP 4331 2010 Iteration 2 <team name>. Those are the only Iteration 2 related team deliverables due on or before demo day.
R.C. Martin's Engineering Notebook: The Open-Closed Principle
The Pragmatic Programmers': Tell, Don't Ask
In light of the necessity of assigning the following homework today, your team may submit the cohesion critique next Wednesday without penalty. (But I recommend you get it done by Monday).
For each of the following, does it violate TDA? LoD? Why? Why Not? (This is an individual assignment.)
SortedList thingy = someObject.getEmployeeList(); thingy.addElementWithKey( newHire.getKey(), newHire );
void printDetailsAbout( Customer c )
{
//...
Address a = c.getAddress();
System.out.println( "city: ", a.getCity() );
System.out.println( "state: ", a.getState() );
//...
}
customer.getAddress().changeZipCode( newZipCode );
void printDetailsAbout( Customer c )
{
//...
System.out.println( "ZipCode: ", c.getAddress().getZipCode() );
//...
}
Iteration 1 Cohesion Critique will require you to critically evaluate your team's Iteration 1 code base in light of principles to be covered today's lecture.
Refer to OMG Spec: UML Superstructure, v2.1.1 (which you should have already downloaded):
You may find the free Quick Sequence Diagram Editor (sdedit), a nifty and useful tool. It creates SDs from text descriptions.
The only things due today are listed in the Iteration 1 deliverables. Due on Wednesday is the first part of your Iteration 1 wrap-up. The second part is due on Friday.
The syllabus has been updated with finalized exam information.
Here is the Iteration 1 specification level UML diagrams assignment—you may not begin implementation until this has been completed.* Thus the earlier you get this done, the more time you will have for implementation; however, the better your specification, the easier your implementation experience will be (not to mention that the spec itself will be graded).
* — If you are planning to use technologies/techniques with which you are unfamiliar, you should be experimenting with them as/before you write the spec. However, all such code must be thrown away: none of it may be used in the actual project.
On the demonstration day, the Iteration 1 deliverables are due.
Don't begin implementation until given the green light; as mentioned in class, you'll be preparing a design document before implementation begins.
Due Monday, 1/24: Based on feedback from other team and from insights gained from doing a critique, revise your CRC card deck. Deliverables as before with the addition of:
Due Friday, 1/28: Prepare a set of use-cases for iteration 1.
Like Athena, who sprang fully formed from her father's head, here are the Iteration 1 requirements. Print it out. Study it. Write down any and all questions you may have (so you don't forget) and ask them on Wednesday. Enjoy!
After each iteration, you will be reporting on the amount of time you spent on term project related activities and providing documentation to support the reported figure. In case it's not clear, that means write it down(!!!) as you go and tag it based upon the deliverable/activity. Keep on top of this: estimates after the fact aren't acceptable.
Download OMG Spec: UML Superstructure, v2.1.1 and refer to:
Coming soon up we'll be covering much of:
Note #1: the term class is overloaded in this documentation: it refers to a) the entities that make up the UML notation, as well as b) the standard OO concept.
Note #2: I've listed the X.4 (Class Descriptions) section before the X.3 section. That's because X.4 is a summary of the notation, while X.3 is a technical definition of each "class" (notational element).
For those of you interested in learning more about Java's support for generics...
The dispatch table diagram from lecture 3.
Welcome to Object-Oriented Programming! Check this site regularly for the latest announcements. If you haven't done so already, please read the syllabus and course policies.
The mandatory biosketch assignment is due at the start of lecture on Monday, 1/10. If you've written one previously, take the opportunity to tell me something new about yourself. (Should you be interested in such things, you can read Dave: fact or fiction?.)