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.
- the home page should inform users about the features of tukker.me
- 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:
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."
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.
Now let's sort them and put them in an useful hierarchy (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.
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.