To me, the biggest issue in coming up with an initial web application design and then steering it through to completion is having a good understanding of who the user is. This is sometimes difficult to determine, for various reasons. Maybe the application is new and there is not an existing user base to think about. It could be that there is an existing application and user base, but you are tasked with creating a new application component for those users. Maybe there are several types or classes of users to think about. There are many possible combinations of factors, but whoever the user is, he or she is ultimately the one you are tasked with providing an application to.
So who is going to be using your application? I always try to ask myself a few questions at the start of a project to help me figure this out.
- Is the user computer-savvy? Websites designed to serve the general public have to consider the reality that many (most?) people don’t spend 40+ hours a week on a computer. Many people avoid them at all costs. For this reason, websites designed for use by the average citizen must be simple enough so that at a glance, he or she can figure out what needs to be done. Something I always fall back on when I think about this is a simple question:
- Could my mom figure this out? (Sorry Mom).
The reality is that most people make up their mind in a matter of seconds if it’s worth it to them to spend time figuring out what they’re supposed to do. They’d often rather walk away than deal with the frustration.
- Is the user GIS-savvy? This is an easy one for us to overlook. As GIS professionals, it’s easy for us to forget that using computer-based map applications is not something that is inherently intuitive to humans. We GIS people are so used to “Zoom to Extent”, “Identify”, “Query”, etc., that it seems natural – but in reality, most people have never really thought about this stuff. Think about it this way:
- How do you explain to people what you do for your job?
This is a question which I’m sure any GIS professional can relate to. I’ve been re-explaining my job to my dad (a smart guy) for about 15 years now. He still tells people that his son “makes maps for the railroad” – because I worked on a big railroad mapping project in 1999.
Because most people don’t “think GIS”, we have to be careful not to assume they are going to understand what a little “I” button icon does. Knowing the level of GIS knowledge of your users is key in making a good design decision.
- What, exactly, does this application need to allow the user to do? The reality of the state of GIS in 2009 is that there are dozens of ways for people to go online and print out a pretty map easily – and for free. Gone are the days when the engineering department had to call the GIS department to generate a simplistic site map. Engineers can print one that’s “good enough” from various sources without having to dip into their budgets to pay us to make one for them.
What users really need is a tool or set of tools which allow them to complete their job or a specific task. Our challenge is to provide them with core functionality that make their lives easier, their jobs simpler and more productive, and their businesses more profitable – while at the same time being usable and straightforward.
Keeping this core functionality in mind is often challenging, especially amid the glitz and glamour of all of the new technologies available to us. While everyone wants their application to look great, be bug-free, and be the pride of their organization, without this solid core functionality, what’s the point? It’s important throughout the design process to step back often and ask:
- Are we still on track for providing the core functionality to the user?
Ultimately, the success of a design can be judged on how effectively it provides core functionality to the user. Tailoring the application to cater to your user’s skill level, understanding of GIS, and functional requirements will go a long way toward ensuring a successful design. Amid the difficulties of debugging code, meeting deadlines, and balancing workloads, keep in mind that someone out there is going to be using the application you’re creating (maybe even Mom!).
Keep an eye out for follow-on posts from me about similar topics related to application design, user experience, and workflows!