Tuesday, May 25, 2010

Fighting the good fight (aka hiding behind the user)

In a recent conference call, I was accused of 'hiding' behind the user. During the call, it was demanded that we go ahead and make assumptions about the user to ensure the project time line was met. My response was that 'this is dangerous at best' because as a user expert, I was trained that I am not my user and any assumption may inject bias.

This is symptomatic of the gap between the status quo of the software development life cycle and the iterative approach of the user centered design process. Where the SDLC fails, is that it doesn't account for iterations... in other words, you repeat the SDLC in versions. UCD assumes that you will pass through it several times and is designed that way. So, the challenge lies in assimilating an iterative and qualitative approach within a quantitative serial cycle.

Some solutions are to integrate a system of user based checks and balances within the current SDLC. This maintains the process that the development organization requires to function while not being solely dependent on UAT findings to fill the need.

Tuesday, May 18, 2010

Focus on what you are solving for

Competitive analysis can be a critical tool in aligning the goals you are trying to achieve with the opportunities that exist in the market you are looking towards. Often this simple sheet can easily describe your roadmap to success through highlighting the gaps in where your competition and even yourself exist.

I often recommend partnering this information with a 'skunk works' best case approach. In some cases, you can actually roadmap to your best case using the offsets between what you are developing and what you would like to see as optimal.

Tuesday, May 4, 2010

On Usability

It has been quite some time since I last posted. So, please forgive me.

Working recently at a major media site, I still see the maturity of the customer voice having gaps. For me, the concept of user feedback avoidance, deprecating or eliminating task analysis, can be fatal to any project.

For a task analysis, you are looking at why the user wants to do something and the steps they may encounter when trying to complete that 'something'. Without this understanding, application solutions can become 'Swiss army knives'. This means they won't necessarily solve the problem at hand, but hope to be able to solve whatever problem may arise. For this particular knife, that makes sense. In the eCommerce world however, this can lead to diminished value of the product. In other words, you don't do one thing well, you do a bunch of things adequately. In the web world, adequate does not translate well to cash flow.

User input helps provide the evidence that the approach you are taking is the right one and will be used correctly. As in the 'Swiss Army Knife' example, if a user realizes that during use they really needed an all-in-one, then this reinforces the approach. However, if the user only needed to open a wine bottle, there are better cork screws than the one that comes with a 'stock' army knife. The point here is that placing the knife in the user's hand and allowing them to give you feedback and how they think it will be used gives you clarity on the solution. Without that clarity, you are not affirming your direction and could be traveling the wrong way.

Using these simple ingredients, you can increase productivity by understanding the task/tasks that you are solving (or making easier). Moreover, you can then reaffirm the approach you are taking by following up with the end-user.

Unfortunately, in a large media organization there is still a focus on what is visually stunning and eye catching. This dependence on emotional design can create some stunning solutions. However, without the task analysis and user feedback the solution is created to meet the needs of the designer and their leadership. As Norman said,
"An object that is beautiful to the core is no better than one that is only pretty if they both lack usability."[1]

1. http://www.jnd.org/dn.mss/emotion_design.html