I have volunteered my time to help develop a new Database system for a National Organization. This National Organization holds 3 annual meetings where the membership competes in different athletic events. Additionally, this National Organization provides an annual scholarship out of proceeds colleteced at their 3 annual meetings.
My questions deal with overall design. While I taught Database theory at the undergraduate level about 15 years ago, and I can still normalize a database (is that term even still used), I am seeking your expert help in the conceptual design of this new Database system.
1) Register all members who attend an annual meeting.
2) Provide mechanism for each team captain to rank order the participation of his team members. (Jim goes 1st, Steve 2nd, etc).
3) Import race times for each individual member
4) Calculate results.
1) Each event can have up to 700 members attending.
2) The members are divided up into about 20 teams. Some teams could have 200 members, some teams could have 1 member.
3) A central reservation point is established where all members must register.
Pros and Cons:
Pros Web Based
1) A complete Web based system would provide for the central migration of all data.
2) Team Captains would be able to access their team membership specifics from any location that had web access.
3) Multiple computers could be used for registration.
Cons Web Based
1) Not all venues will have high speed internet access.
2) The hosting server could go down.
3) The internet connection could go down.
Pros PC Based
1) Always on available data, assuming the computer does not crash.
2) Not reliant upon an internet connection. (Very important from the import of times to calculation of results - only about 4 hours available)
Cons PC Based
1) Difficult interface for team captains as they will have to go where the computer that hosts the database to input team member participation priorities.
2) Hard Drives do crash.
As a result, I believe a hybrid design is required.
Specifically, both a web based component, and a PC based component.
Web Based Component:
1) all members would register on up to 3 available computers at the central reservation site. This data would be stored on the web server database.
2) After a member registers, a hard copy of their registration is printed out, and maintained in the hard copy registration log (for that emergency that we all know WILL happen).
3) The web based registration component downloads all the registration data to a PC database (Microsoft Access) on a regular basis.
4) Members can also pre register on the web prior to going to the central registration to pay their entry fees.
5) Team Captains can access their team members that have registered to prioritize their participation.
6) As soon as the data integrity is verified, it is then downloaded to the PC based system that now handles the import of race times, and calculates the results.
My questions to members who are much more knowledgeable than myself, is this conceptual design appropriate?