MET CS 770 - Spring 2003 - Homework 1 (Due Feb. 10th, 2003)
MetPool is a non-profit organization that matches volunteers with people/groups in need of help. It maintains a list of voluntary opportunities and a list of volunteers. It matches volunteers to the right opportunities. Everyone has skills to offer and needs to be met. So, volunteers register their own needs. Recipients of help are required to offer their own skills.
Volunteers can register the skills they are offering by the telephone to a volunteer organizer, in person, or by filling out details on a web page. Once registered, they can then deposit their time by the same means.
Voluntary organizations and individuals (including volunteers) can register their needs for help by contacting a volunteer organizer. The volunteer organizer then tries to match up the people offering their time with the opportunities ---
Matching is done on a geographical basis using zip codes and by matching skills to needs. When there is a match, the volunteers are notified of the details, and if they are interested, their details are passed on by the volunteer organizer to the voluntary organization or individual that requested the help.
SA: Can you tell me more about the information you need to hold about Volunteers please? MD: Well, we need to know stuff like their name, and contact details... SA: Contact details? MD: Yes, their telephone number and email address. We also find it useful to know how old our volunteers are. SA: So, do you hold a volunteer's date of birth? MD: Yes. That can be useful if we get two people with the same name.Identify any attributes (derived or otherwise) in this transcript and allocate them appropriately to your list of classes. If there are any derived attributes, include the specification of the derivation as a note. Suggest and add to your diagram, suitable types for each attribute.
SA: So how are volunteers related to volunteering opportunities? MD: Well, volunteers will bank time with us. That is time that they are available to work on volunteering projects. Based on their availability, we can match them to suitable opportunities. SA: OK, I can see how you have banked time for volunteers, what about the projects? MD: Well, there is a similar setup there with organizations banking time on the various different projects that they need help with. SA: I see. Do you ever get projects that are set up by more than one organization? MD: No, but an organization may have several projects on our books at any one time. Volunteers with banked time can work on several different projects. Each time they do some volunteer work, it will be only for one project at a time though.From the above transcript, identify suitable associations between the classes you have identified so far. You should be able to work out the multiplicity of most of the associations as well.