Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
Our Milestone 1 was provided by Michel Mansour. I know what you are thinking, he's Candian how can you trust him with such a critical part of the project? Well the truth is he had some groundbreaking ideas which laid the foundation for what has become the pinnacle of Genealogy programs(pretty much he had the least amount of things to fix and he got the highest grade).
At this point in the project, our program contained three classes:
In our design Genealogy knew about family and person, but family and person are unaware of Genealogy. Family is aware of Person, because it contains a husband, wife and children. In Milestone 2 we updated Person making it aware of the families that is contained in.
- Person: Object that stores the name, gender and birth and death info (p := Person new).
- Family: Object that stores the husband, wife, children and marital data for a family (f := Family new).
- Genealogy: Object that contains an OrderedCollection of both families and persons (g := Genealogy new).
Our project also contained SUnit tests for each of these classes. These tests would become very helpful once we started implementing the checks in Milestone 2.
Pitfalls and Updates
Even before the merger of our group into a single unit, it was apparent our project was headed in the direction of greatness. There was only one error worth noting, which dealt with the printGedcom method being a god-function. We later split this method up and had each Person and Family return a string containing its GEDCOM information.
Best of M1
Probably the greatest achievement during Milestone 1 was the creation of a hobbits genealogy using workspace code. This would prove to be an invaluable testing resource in later Milestones.
An epic GEDCOM file: hobbits.ged
Link to this Page