CS 683 Emerging Technologies
Fall Semester, 2005
Assignment
© 2005, All Rights Reserved, SDSU & Roger Whitney
San Diego State University -- This page last updated 10/13/05
Zope Assignment
ISW Conference Registration
We are to create a registration web site for the ISW (the Imaginary San Diego State Web) conference. The site allows people to register and pay for the conference. It also allows the people running the conference to access information about those that have registered. When someone has registered for the conference they get a confirmation web page and a confirmation email message. Ideally they would receive a code that in conjunction with their name would allow them to access and modify their registration data.
When a person registers for the conference some information about themselves is required and some information optional.
Required Information
First Name
Last Name
Email address
Telephone
Meal preference: Vegetarian or Meat
Optional Information
Name to appear on badge
Special health needs
When registering one can sign up for up to three of the following seminars.
Zope
SSP
ASP
JSP
Seaside
Cocoon
Struts
Flash
Plune
When one registers for the conference one pays using a credit card. While we will not be processing this information still have them enter it. For those that are interested one can create a PayPal account and let PayPal process the transaction. One can do this in two ways. First forward the person to a PayPal website to perform the actual transaction. You can pass the information about the user to PayPal so they do not have to reenter the data. One can also have your code contact PayPal directly to perform the credit card transaction. It is possible to set up a sandbox PayPal site that pretends to process credit card transactions without actually doing so to test ones code. Using PayPal is not required nor will it be graded nor will it be counted as extra credit work.
Those running the conference need to have access to the information about the people that have registered. One required way to do this is to allow them to download a comma separated file. That is a file that each row represents one person, with each field separated by a comma. Such files have the extension .csv. One can also provide access to the data on-line. Those running the conference need to be able to m odify the information on-line for any individual in case information has been entered incorrectly. Only a person logged on as doctor should have access to medical part of individuals information. Only those running the conference should be able to see the list of those registered or any information about them.
The current plan, which could change, is to use this same assignment with Ruby on Rails. Some requirements will be harder in one system than the other. Some requirements may not be possible in one or both of the web frameworks. One of the frameworks may require more work than the other one. The goal is to allow us to compare the two frameworks using the same assignment.
Customer Stories in Priority Order
Conference organizers can access attendee's data
Attendee data not visible to other attendees
Attendee can enter personal data and name on badge
Attendee sees web page notification of registration
Attendee receives email notification of registration
Attendee can sign up for seminars
Attendee can enter medical information which is hidden
Only Doctor can access medical data
Organizers can modify attendee data
Attendees can pay for conference via PayPal
Attendees can modify registration data
Due Dates
Oct 17. Turn in by email estimates of the time required to do each of the above customer stories and which stories you can implement by Oct 20 and by Oct 27.
Oct 20. An electronic copy of the implementation indicated above plus time it took to implement each story.
Oct 27. An electronic copy and hard co py of the implementation indicated above plus time it took to implement each story