Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
Four Dumb Guys Cases Page
Genealogy Project Overview
We were given the task of designing an application that would allow users to manipulate the information inside of a genealogy
they had created. This application, creatively enough, was called our Genealogy Project. Some of the functionality that was desired of this application included:
A link to the full list of project milestones will explain in detail the requirements of the project here.
- The ability to create a new person
- The ability to create a family from several people
- The ability to create a Genealogy from several previously created persons and families
- The ability to search a Genealogy by name, date of birth, and other personal information
- The ability to import a genealogy from a GEDCOM file
- The ability to search a specific web page for genealogical information
- The ability to search a locally created genealogy for specific persons
- The ability to export a created genealogy into a GEDCOM formatted file
- The ability to view genealogical data from a graphical family tree perspective
We believe that we were successful in this project because our tasks were divided fairly evenly among all of our group members and we stayed in constant contact with each other either physically, or through AIM. We felt that it was important that each member knows what he is responsible for, and that a carefully planned design was adhered to very strictly. We made it a point to plan our design out together AS A TEAM and then follow that design, letting other team members know when a design aspect had changed. For the most part, our team was separated geographically, and we met only twice a week to discuss any design changes we felt were necessary. The separation problem was solved through our use of AIM and email to talk about design issues and planning any actions needed to be taken. Our team leader, Scott was very helpful in designating responsibilities and getting our team to cohere into a working entity.
Some advice for future teams when working on large projects:
- Get to know your team early (This is very good advice to follow. Set a team milestone that is ahead of the class milestone and see how your team lives up to it. If anyone is questionable in their ability, be sure to deal with it before it is too late.)
- Design first, code later
- Make team responsibilites manageable for everybody
- Set realistic goals for your project
- Start early
- 5 things to remember: google, AIM, ECoDE, caffeine, Bob's UI
- Squeak doesn't have a good API, and nothing is commented. That being said, don't keep it that way – comment your classes and messages, please!
- Ever wanted to know if some class exists in Squeak? You can either try using the method finder (which personally I never found useful), or you can use the closest thing to an API I have found, available here. It's called "Squeak Documentation", so it's gotta have something useful in it! It doesn't have any class descriptions, but it does provide a way of looking up classes and the messages available for the classes; some messages do even have descriptions available.
A word about Bob's UI:
This is a change set that is available here that was really helpful in our GUI design. It includes numerous classes for creating text boxes, input fields, pulldown menus, graphical lists, buttons, and other gui related stuff. We also found Bob's UI to be much easier to work with than Prefab, the other Squeak UI builder of choice.
Now, on to our specific cases pages:
Our M3 Cases page Designing the whole thing
Our M4 Cases page Reading GEDCOM files and providing multi generational views
Our M5 Cases page Add search functions and automatically gather genealogical information
Link to this Page
- Cases last edited on 30 July 2011 at 2:33 am by r59h132.res.gatech.edu