Information Architecture

Stucturing electronic information

Information architecture is the term for how information, such as the documents on a computer, is structured. Most people think about information by using mental boxes. This is similar to how documents are stored in folders on a computer. The document folders on a computer could for example be:

  • Documents
    • School
    • Work
    • Receipts
  • Pictures
    • Spain 2019
    • Housewarming 2010
    • Reunion 2015

This method will usually work fine for small amounts of information. However, as the amount of information grows, there will often be the need for overlapping folders, or boxes. This is especially true if many persons has to use the structure.

Structuring websites

On a website, all the content is usually placed in a single box. This can either be in a single folder with all the HTML document, or, for a database-driven website, in a single database. Instead of looking through folders and sub-folders, the website provides an interface to navigate the information. This interface is independent of where the documents are physically located. It allows for much more powerful and user-friendly navigation than a folder structure. At the same time, it carries the risk of creating a horribly jumbled structure.

Tree hierarchies

Using tree hierarchies

The most common way that information is structured on a website is through categories in a simple tree hierarchy. This is essentially the same as the folders on a computer, where each piece of information exists in one location.

This example shows a simple website with a front page, which points to three different categories. Each category points to three information pages.

Tree hierarchies can be strict, where each level in the hierarchy is the same type, or they can be casual, where the different levels are organized more freely.

Strict hierarchies help ensure consistency over time. They are useful when a lot of people will be creating information, and there will be many repeat users. An example that requires a strict hierarchy is a company intranet.

Casual hierarchies are easier to work with, but are best used for small amounts of information.

Overlapping categories

The problem with folders arise when categories start to overlap. It is very difficult to create categories that both capture every possible situation, and never overlaps. There may also be situation where you need to have overlapping categories.

In the structure above, where a website lists three products and three services, this structure may reflect the company’s internal organization. If Product 1 was related to Service 1, Product 2 to Service 2, and Product 3 to Service 3, the reader would have to look at two articles to get all the information they need. This is a common issue when creating a website, especially in large organizations.

In a different situation, imagine that you ask four people about their favorite types of animals, and their responses were:

  • Birds
  • Mammals
  • Animals that fly
  • Animals that swim

Now imagine we had to sort all applicable animals into categories so that any one of the four people could pick one or more boxes, and only get the animals in which they are interested:

  • Birds that fly
  • Birds that swim
  • Birds that neither swims nor flies
  • Mammals that fly
  • Mammals that don’t fly
  • Mammals that neither swims nor flies

Now imagine if a fifth person was interested in insects, and the structure breaks down completely. Instead, we can use polyhierarchies.

Polyhierarchies

What are polyhierarchies?

Polyhierarchies are an alternative to tree hierarchies. They basically allows something to exist in multiple categories at the same time.

When the Internet and HTML was created, the technology was built around storing all the information on the Internet as one big polyhierarchy. This is what links do: they allow the user to jump from one document to another, regardless of where that document is located.

The advantage of polyhierarchies allow information to be written with the reader’s needs in mind.

Once a tree hierarchy has been created, new information will usually have to be written to fit into that hierarchy. This means that information that logically should be written as one article may have to either split up into several categories, or duplicated (and maintained) in several articles.

With the polyhierarchy, information can be tagged as needed, using the same tag in several places. This allows for documents to gather all the information the reader will need in one place, and then link to that information from different locations. This can reduce the number of documents, and thereby complexity and maintenance costs.

In this situation, the same website as before has been reduced from 13 to seven pages. When maintaining the information, it is also very easy to see which pages has to be updated if for example Product 1 changes.

Using polyhierarchies on websites

Implementing a polyhierarchy can be a little tricky to wrap ones head around when it comes to ones own information. Most people already do it, however; whenever you write a #tag on Twitter or Facebook, you are categorizing information in a polyhierarchy. Instead of having someone manually maintain a folder with all the tweets about #webdesign and #usability, and a third folder for all the posts tagged with both, the tweets are categorized automatically.

For a small website, where all the links are created automatically, this is very easy to implement. A link to the same document can simply be added in multiple places, including other documents. On a database-driven website the implementation can be a bit more difficult, but many CMS solutions offer this functionality either out-of-the-box or with plug-ins.

In addition to creating the website structure, some systems also allow this tagging to improve an internal search engine. This kind of search engine optimization can be particularly helpful for very large websites.

Note that, unless your website is entirely search-based, you will still need some kind of categorization. You can’t simply create a massive list of all the categories you have thought of, and expect the user to go through them all. Grouping the categories to get the user started will look a lot like the tree hierarchies, but remember: You can add each category is as many groups as you need.

Maintaining tags

There are three main approaches to creating tags. Each has advantages and disadvantages, and you need to consider what is best for your situation.

  • Only pre-approved tags are allowed, and are maintained by someone who has both a broad and deep knowledge of the subject. This is a relatively rigid system when new tags have to be created or existing ones renamed or deletes. This is usually the best solution in large organizations where many people are creating information, especially if these people don’t have a very good technical understanding of the system.
  • Editors can create tags as they go. This is a much more flexible system, especially for organizationa and websites with many topics. The main risk is consistency. Two tags may be created that mean the same thing (for example, #gifts and #presents). Unless the tags are maintained by someone, a user looking at articles categorized with #gifts may not be aware that there is a #presents category. Even if they are, will probably find it confusing.
  • Visitors can tag articles. This can be useful on websites with a lot of visitors. By analyzing the tags can visitors submit, the website software can pick the ones that most people submit, and use these as the primary ones. The risks are of course the same as when editors submit their own tags, and there will likely need to be some level of manual editing to both maintain quality and moderate improper tags.

Grouping information and categories

Whether you are grouping information in a tree hierarchy og categories in a polyhierarchy, your groups are very important. They need to be so intuitive for the user that they find what they need in the first go and without thinking. To facilitate this, you will usually need the help of your users, for example by using card sorting.

In card sorting, you present existing or planned content titles to several users one at a time, and ask them to group the content into categories. You then look at which categories users most frequently create, and the contents they put into those categories. The card sorting method is not only helpful when creating menus, but also when deciding on polyhierarchy categories.

Example – structuring a cooking website

For more on information architecture, see this example of structuring a cooking website using a combination of a polyhierarchy and a tree hierarchy.