# Tuesday, October 12, 2004
« Back from London | Main | Golf Web Membership »

My step mother asked for a favour this weekend. She has a rather large Word document of unsorted contact details and pictures that she wants to publish on the web. She wants me to see if I can provide a solution. I should start by saying this is a classic request of a programmer similar to "will you help fix my computer" and "I can't read my e-mail". I'm happy to do this, particularly as it's a fun little project, but it can turn into a bit of a commitment.

So what is this application supposed to do? Lets review some of the requirements from Laura:

  • The application will support a membership of a virtual golf club; they meet up for social reasons and to play different courses in the US and UK
  • Manage contact details for golf club members
  • Each contact has name, address, phone, e-mail and a picture
  • Members should be able to update their own details
  • Members can search for other member's details
  • The system will only allow access to members, i.e. no public access
  • The members can add descriptions of what they are up to

After thinking about this for a while I can see that there are some additional unwritten requirements. It's usual for the customer to not fully understand what they want and as an analyst you have to use your experience and fill in the gaps. You do need to go back to the customer and check your assumptions are correct though. So what are mine?

  • Simplicity - the users of this application are in their 40's, 50's and 60's so I'm going to make a sweeping generalisation and say they aren't too comfortable around computers.
  • Manageability - Laura is a busy person with better things to do than continually login and manage the system
  • Registration - to ease the management burden on Laura, this should be as automated as possible
  • Lost passwords - this is not an every day application so the large gaps between logins will increase the chance that the members have forgotten their passwords. It also needs to be automated so Laura doesn't have to do anything.
  • Meet-ups. This was not in the original list from Laura but it's the primary reason the club exists. Would it be worth placing on the product backlog?
  • Notifications - do the members want to be notified if anything has been updated? This will save them from the burden of logging in frequently.
  • Logging - this one is for me because if anything goes wrong then I'm the one getting the call to fix it
  • Hosting - I'll need to find somewhere appropriate to host the application. Luckily we checked and a suitable domain name is free.
  • Data Storage - I don't have experience of using databases on web hosts, though I know it's possible, so I want to try and use a file based data storage mechanism

Next time I'll discuss some of the requirements in more detail with respect to some possible solutions.

Comments are closed.