Killer Web Development

by Marco Laspe

4.1 Defining the applications structure

John has a strong vision of how the tukker app should look like and what users should be able to do with the tukker app.

website requirements web aplication

  • the home page should inform users about the features of
  • users should be able to register
  • users should be able to sign-in
  • users can post messages that can have up to 300 characters (mind blowing eh)
  • users can follow other users and see their messages in their home feed
  • We need some legal information

Based on John's infos we will now decide which webpages we need for our application. Let's write down the webpages on Postit notes:

defining the pages of your website: Home,About,Help,Terms,Privacy,Contact 

On every note we write now an user story. An user story describes what the user should be able to do on this certain webpage. It should be a short sentence about what she does. For the Login page the user story could be: "The user does log-in and gets directed to his status page."

Wikipedia says

User Story

In computer programming a user story is one or more sentences in the everyday or business language of the end user that captures what the user wants to achieve. User stories are used with Agile software development methodologies for the basis of what features that can be implemented. Each user story is limited, and should fit on a small paper note/card to ensure that it does not grow too large. The user stories should be written by or for the customers of a software project and are their main instrument to influence the development of the software. User stories could also be written by developers to express non-functional requirements (security, performance, quality, etc.).

User stories are a quick way of handling customer requirements without having to create formalized requirement documents and without performing administrative tasks related to maintaining them. The intention of the user story is to be able to respond faster and with less overhead to rapidly changing real-world requirements.

The user stories for a website based on the customers needs: Home - User get the key advantages of and what to do next to get a member of If he is already logged in, he will be redirected to his status page. About - The user can learn more about us. This way we want to win his trust. Help - The user gets help, how to use Terms - Not a real user story :). Privacy - Same here. Contact - The user can leave us a message via a message form. Register/Change Profile - An user can register and add his profile or change his profile entries. Profile - Members can view the timeline of other members and can follow these members. Timeline - A member sees all status updates of the people he follows and can post his own updates. Following - The member can view the people he is following and can remove people from this list. Follower - The member can view the people which are following him. Login - The user can login and get's redirected to the page before or by default his timeline

Now let's sort them and put them in an useful hierarchy (Information Architecture)

Wikipedia says

Information architecture

Information architecture (IA) is the art of expressing a model or concept of information used in activities that require explicit details of complex systems. Among these activities are library systems, Content Management Systems, web development, user interactions, database development, programming, technical writing, enterprise architecture, and critical system software design. Information architecture has somewhat different meanings in these different branches of IS or IT architecture. Most definitions have common qualities: a structural design of shared environments, methods of organizing and labeling websites, intranets, and online communities, and ways of bringing the principles of design and architecture to the digital landscape.

Create an information architecture based on the customers needs: 
- Home
-- About
-- Help
-- Terms
-- Privacy
-- Contact 
- Register/Change Profile
- Timeline
-- Login
-- Following
-- Follower
-- Profile

Our information architecture helps us later with decisions regarding our menu (beware the IA doesn't equals the menu), link structure and code structure of our tukker app.

Books often read by web2py and Python experts:


Leave a Reply

Required fields are marked *.