Creating a website – Part 3

Creating Lists

In the previous article I described the website idea from the point of the user – what they will be able to do on the site. Now we need to work out what we need from a developer’s point of view. I will get the idea, pull out individual parts, and create a list that will be used throughout the practical side of the development. I’ll separate them into the User (the person uploading a picture), and the Visitor (the person viewing a picture). You may (or may not) have noticed I am using the singular rather than the plural when referring to users and visitors. This is how the database will be designed and therefore will be good practise to get into. So let’s get on with that by seeing the idea again:

A site that allows users to login* and upload a maximum of one photo a day. The user can view their photos, edit descriptions, titles, keywords, and delete them. Visitors to the site can view the photographs and search for photos related to subjects they are interested in, allowing them to up/down vote each one they view.

A picture of lists/ideas brief with arrows

Now the idea is fresh in our minds again we can start our lists. This can take a while to do depending on how complex your idea is, so it is a good idea to keep looking at your brief while making them to ensure you have listed everything you want to make a record of.

USER

Login details
  • Username
  • Email address
  • Password
  • Registered date
Photo details
  • Filename
  • Title
  • Description
  • Keywords
  • Active
  • Upload date

VISITOR

Login details
  • Username
  • Email address
  • Password
  • Registered date
Photo details
  • Filename
  • Up votes
  • Down votes

That seemed simple enough, right? In a way… yes. We have a simple list of information that we want to record for both the User and the Visitor and we could use this to store the information (data) into a database BUT when it comes to designing the database and the relevant tables it is extremely messy. This may or may not be apparent depending on your current level of web development and so the next article I’ll discuss why this is ‘messy’, talk a little about database design, and rearrange the lists above to something more organised that we can proceed with.

« Creating a Website – Part 2Creating a Website – Part 4 »