<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tyner Blain &#187; UX</title>
	<atom:link href="http://tynerblain.com/blog/category/software-development/hci/feed/" rel="self" type="application/rss+xml" />
	<link>http://tynerblain.com/blog</link>
	<description>Software product success.</description>
	<lastBuildDate>Wed, 17 Mar 2010 04:31:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Measuring Great Design &#8211; Mad Libs Input Form</title>
		<link>http://tynerblain.com/blog/2010/03/01/measuring-interaction-design/</link>
		<comments>http://tynerblain.com/blog/2010/03/01/measuring-interaction-design/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 05:20:02 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[ROI]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[User Stories]]></category>
		<category><![CDATA[measuring ux]]></category>
		<category><![CDATA[return on investment]]></category>
		<category><![CDATA[user experience]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1174</guid>
		<description><![CDATA[
I came across a really interesting article LukeW.com, showing how making changes to the way an input form on a website increased interaction by 25 to 40%.  The changes reflect the value of thinking outside-in, investing in user experience, and performance measurement.
Bonus: the idea is cool.

Mad Libs Input Form
[full size image available in Luke's [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="mad libs pads" src="http://sehlhorst.smugmug.com/Other/blog/mad-libs-on-table/800579804_irVsp-O.jpg" alt="image of mad libs pads" width="250" height="187" /></p>
<p>I came across a really interesting article <a title="LukeW" href="http://www.lukew.com/">LukeW.com</a>, showing how making changes to the way an input form on a website increased interaction by 25 to 40%.  The changes reflect the value of thinking outside-in, investing in user experience, and performance measurement.</p>
<p>Bonus: the idea is cool.</p>
<p><span id="more-1174"></span></p>
<h2>Mad Libs Input Form</h2>
<p><img class="alignnone" title="mad libs form example" src="http://sehlhorst.smugmug.com/Other/blog/mad-libs-small/800576580_TZurw-O.png" alt="before and after screenshot of mad libs input form redesign" width="250" height="237" />[<a title="luke's article on mad libs input form" href="http://www.lukew.com/ff/entry.asp?1007">full size image available in Luke's article</a>]</p>
<p>The idea being presented is to replace the old boring web input form designed for a computer.  The new, fun form is a fill-in-the-blank (aka Mad Libs) layout.  The <a title="mad libs web form" href="http://www.lukew.com/ff/entry.asp?1007">article </a>is on <a title="About Luke" href="http://www.lukew.com/about/index.asp">Luke Wroblewski&#8217;s</a> site.  The team at Vast.com created and tested a version of this form for the Kelly Blue Book site.  [Luke cites Huffduffer.com as the first place where he saw this technique.] Thanks, Luke for sharing this with all of us!</p>
<h2>Outside-In Development</h2>
<p>Product managers are acutely aware of the need to solve market problems.  We are regularly reminded that we&#8217;re creating solutions for people in our markets who use our products to solve their problems. When we write requirements, we avoid writing design specifications, and thereby lose the ability to enforce that the proposed solutions also take an outside-in approach.  We <a title="prioritization example from an outside-in perspective" href="http://tynerblain.com/blog/2009/10/19/agile-prioritization/">maintain an outside-in perspective</a>, but we lost the ability to influence an outside-in aesthetic.</p>
<p>Note: Outside-In Software Development is a great book, <a title="outside-in software development book review" href="http://tynerblain.com/blog/2007/09/27/outside-in/">you should read it</a>.</p>
<p>That&#8217;s one area where user experience works well in concert with product management &#8211; assuring that the same drivers of <em>what</em> to build are informing the design of <em>how</em> it is built.</p>
<p>The genius (or at least elegance) of this Mad Libs form from Vast  / Kelly Blue Book is that it humanizes the experience of requesting that a nearby dealer contact you to discuss a possible purchase of a car from them.  The forms we&#8217;ve all had to fill out on countless web sites are very <em>inside-out</em>.  They expose the inner workings of the program &#8211; &#8220;gather this info, and that info, and this other info.&#8221;  Those forms force users to do what the program wants.  Blech.  The form that Ron Kurti designed, however, forces the program to do what the users want.  Huzzah!</p>
<h2>Bad Requirements Prevent Elegance</h2>
<p>I&#8217;ve written about the importance of <a title="writing requirements without design" href="http://tynerblain.com/blog/2009/11/03/design-free-requirements/">writing design-free requirements</a> several times.  Avoiding design constraints in your requirements is even one of the pillars of the <a title="twelve rules of writing good requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">big 10 rules of writing requirements</a>.</p>
<p>If you had written the requirements for this <em>contact the dealer</em> page, would you have specified the design of the form?</p>
<p>Most of the requirements analysts I&#8217;ve worked with would have.  I&#8217;ve even worked with companies that have developed templates / stencils defining <em>how</em> these interface specifications must be documented &#8211; requiring that all the fields be aligned, with specific pixel gaps, etc.</p>
<p>If you had specified the design (read: limited the choices of the designer), you would have prevented this solution.</p>
<p>Mr. Kurti&#8217;s elegant solution is clearly better.</p>
<p>One way to write the requirements that would not have prevented this solution would be with a <a title="user stories compared to use cases" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/">user story and acceptance criteria</a>:</p>
<blockquote><p>As a car-shopper, I want to engage a car dealer, once every few years, so that I can purchase the car I selected.</p>
<ul>
<li>The car-shopper can provide his contact info (name, email, phone) for the car dealer.</li>
<li>The system will display the information identifying the selected vehicle.</li>
<li>The system will display the information identifying the dealer being contacted.</li>
<li>The system will include an opt-in newsletter-subscription option.</li>
<li>The system will notify the specified dealer when the car-shopper indicates.</li>
</ul>
</blockquote>
<p>The user story nudges the developers into an outside-in perspective by emphasizing the <a title="user goals vs corporate goals" href="http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/">user&#8217;s goal</a>.  The <a title="acceptance criteria can be testable, non-functional requirements" href="http://tynerblain.com/blog/2009/02/10/agile-non-functional-reqs/">acceptance criteria</a> make it clear that <em>any</em> solution that meets those criteria is acceptable to the product manager.  It allows the interaction designer to create a compelling solution, rather than forcing him to recreate a boring experience.</p>
<h2>Measurement Rocks</h2>
<p>The Vast team measured the impact of making this change to their form, and saw between a 25% and 40% increase in conversion (people contacting dealers versus people abandoning the process when they see the form).  That&#8217;s <strong>a</strong> <em><strong>lot</strong></em><strong> more leads</strong> for the dealers, and presumably a lot more money for Kelly Blue Book and Vast.  This is a great example of how you can <a title="measuring the ROI of design" href="http://tynerblain.com/blog/2007/07/30/measuring-the-roi-of-design/">measure the impact of investing in user experience</a>, because it should spark ideas for you.</p>
<p><strong>What can you measure and test and improve?</strong></p>
<p><strong><span style="font-weight: normal;">Now <em>that&#8217;s </em><a title="definition of return on investment" href="http://tynerblain.com/blog/2006/02/01/definition-of-roi-return-on-investment/">ROI</a> for you.</span></strong></p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Measuring+Great+Design+%E2%80%93+Mad+Libs+Input+Form+http://bit.ly/9nBLX9+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2010/03/01/measuring-interaction-design/&amp;t=Measuring+Great+Design+%E2%80%93+Mad+Libs+Input+Form" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2010/03/01/measuring-interaction-design/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Design-Free Requirements</title>
		<link>http://tynerblain.com/blog/2009/11/03/design-free-requirements/</link>
		<comments>http://tynerblain.com/blog/2009/11/03/design-free-requirements/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 16:16:06 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Use Cases]]></category>
		<category><![CDATA[User Stories]]></category>
		<category><![CDATA[big ten rules]]></category>
		<category><![CDATA[product management and design]]></category>
		<category><![CDATA[rules of requirements]]></category>
		<category><![CDATA[rules of writing requirements]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1106</guid>
		<description><![CDATA[
Design-Free requirements are important for two reasons, and hard for two other reasons.
Design-free requirements are hard because you &#8220;know what you want&#8221; when you should be documenting &#8220;why you want it.&#8221;  Writing design-free requirements can be hard when you don&#8217;t trust your development team to &#8220;do the right thing&#8221; even though it is not your [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="Design-Free Requirements Logo" src="http://sehlhorst.smugmug.com/photos/128628560-M.png" alt="" width="250" height="250" /></p>
<p>Design-Free requirements are important for two reasons, and hard for two other reasons.</p>
<p>Design-free requirements are hard because you &#8220;know what you want&#8221; when you should be documenting &#8220;why you want it.&#8221;  Writing design-free requirements can be hard when you don&#8217;t trust your development team to &#8220;do the right thing&#8221; even though it is not your job to design the solution.</p>
<h2><span id="more-1106"></span>Design-Free Requirements &#8211; Revisiting</h2>
<p><img class="alignnone" title="alphabet soup" src="http://sehlhorst.smugmug.com/photos/89784885-M.jpg" alt="" width="250" height="187" /></p>
<p>It has been three years since I wrote <em><a title="Separating Requirements from Design" href="http://tynerblain.com/blog/2006/06/02/writing-design-free-requirements/">Writing Design-Free Requirements</a></em> as part of <em><a title="The rules of writing requirements" href="http://tynerblain.com/blog/2006/05/25/writing-good-requirements-the-big-ten-rules/">The Big Ten Rules of Writing Requirements</a></em>.  In that time, agile development practices have moved from being an esoteric development methodology to being the topic on the tips of everyone&#8217;s tongues as executives and organizations try to either (1) get the benefits of the state of the art in software-development process or (2) do something shiny and fashionable.</p>
<p>The previous article centered on elements of designs within MRD, PRD, and SRS artifacts.  A regular <a title="Alphabet Soup of Requirements Artifacts" href="http://tynerblain.com/blog/2006/08/24/alphabet-soup/">alphabet soup of artifacts</a>.  Honoring the <a title="agile manifesto - Alistair Cockburn speaks" href="http://tynerblain.com/blog/2006/05/10/agile-values-alistair-cockburn-on-the-agile-manifesto/">values behind the agile manifesto</a> encourages us to emphasize <em>working software</em> over <em>comprehensive documentation</em>.  In that light, we&#8217;ll take a &#8220;what is needed&#8221; approach to talking about how requirements, design, and implementation are all needed &#8211; rather than issue an edict about where that information should be captured.</p>
<h2>Agile Development Inputs</h2>
<p><strong>When creating software, someone needs to know:</strong></p>
<ul>
<li>What <a title="solve problems, don't address problem manifestations" href="http://tynerblain.com/blog/2008/05/12/your-problem-statement/">problems are being solved</a>, and how important (valuable) they are to be solved.</li>
<li><a title="defining personas" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">Who has the problems</a> and who is using the software to (help) solve those problems.</li>
<li><a title="defining constraints" href="http://tynerblain.com/blog/2007/11/08/abilene-paradox/">What constraints limit the space</a> that defines the universe of possible viable solutions.</li>
<li>What <a title="nonfunctional requirements and acceptance criteria in agile" href="http://tynerblain.com/blog/2009/02/10/agile-non-functional-reqs/">acceptance criteria</a> define if the delivered solution will be acceptable.</li>
</ul>
<p><strong>Subject to those inputs, someone needs to make design decisions:</strong></p>
<ul>
<li>User experience design -<a title="user interaction design" href="http://tynerblain.com/blog/2006/03/07/interaction-design-explained-by-alan-cooper/"> what interactions</a> will a user of our solution love?</li>
<li>Program design &#8211; how (in a nuts and bolts way) will our solution <a title="feature-driven design explained" href="http://tynerblain.com/blog/2006/03/27/foundation-series-feature-driven-development-fdd-explained/">function</a>?</li>
</ul>
<p>When talking about agile and talking about design, we should take a look at how Kent Beck and Alan Cooper, as respective though leaders in each space, view this.</p>
<blockquote><p>Cooper doesn’t talk much about creating the requirements to support the daily use scenarios – he proposes moving directly into design of the solution. This differs from the more traditional technique of <a style="color: #0000aa; text-decoration: none; padding: 0px; margin: 0px;" title="Use cases are supported with functional requirements" href="http://tynerblain.com/blog/2006/02/10/writing-functional-requirements-to-support-use-cases/">writing functional requirements to support use cases</a>. Cooper also breaks down design into two components – program design and interaction design. Program design is everything you don’t see. Interaction design is everything you do see.</p>
<p>[...]</p>
<p>Cooper argues that designing the interaction should happen before any code is written. He uses a construction analogy to drive home his perspective – you can’t pour the concrete before you build the forms. Kent Beck, founder of the XP programming philosophy disagrees with the premise. Beck believes that the cost of changing software is low, and the imagery Cooper uses is hyperbole. We touch on, and <a style="color: #0000aa; text-decoration: none; padding: 0px; margin: 0px;" title="Cooper vs Beck" href="http://tynerblain.com/blog/2006/03/07/interaction-design-explained-by-alan-cooper/">link to that debate in this post</a>.</p>
<p><cite><a title="Overview of the interaction design process" href="http://tynerblain.com/blog/2006/03/21/interaction-design-process-overview/">Interaction Design Process Overview</a></cite></p></blockquote>
<p>I don&#8217;t believe that Beck is arguing for &#8220;don&#8217;t do design&#8221; &#8211; I believe he is arguing for &#8220;don&#8217;t do <em>big upfront design</em> that would delay implementation.&#8221;  He&#8217;s championing the agile values that emphasize creating working software and responding to change.  I can imagine him saying &#8220;no one will buy a design, they want a solution.&#8221;  Cooper&#8217;s point is that create a solution without first understanding how someone will use it, you can&#8217;t create a great product.</p>
<p>Program design has many <em>hidden</em> impacts &#8211; cost of maintenance, cost to change, and the performance of the solution.  You can have a design (or architecture) that makes everything easier to do in the future &#8211; at the cost of delaying the delivery of anything.  Or you can have a design that minimizes the time to deliver the first thing, while increasing the cost to deliver any particular next thing.  Or you can design a solution that falls somewhere between those extremes.</p>
<p>If you say &#8220;we don&#8217;t do design&#8221; you&#8217;re lying.  Every solution includes design.  Your team&#8217;s design process may be &#8220;big and upfront&#8221; or it could be a couple sketches on a whiteboard, or some email exchanges.  You may create storyboards and wireframes.  Or design may be the thing that happens right before the programmer&#8217;s fingers strike the keys.  Design may be explicit or it may be implicit &#8211; but it never &#8220;doesn&#8217;t happen.&#8221;</p>
<p>In the movie Amadeus, Salieri is astounded that there are no rough drafts of Mozart&#8217;s compositions.  That&#8217;s because Mozart did the design in his head, not because he didn&#8217;t do design.  I&#8217;ve worked with programmers who&#8217;s &#8220;implicit designs&#8221; were great, but that is the <em>exception</em>, not the rule.</p>
<h2>Who Owns Design?</h2>
<p>Since design happens <em>sometime before fingers strike the keyboard</em>, the real question is &#8211; &#8220;who owns the design?&#8221;</p>
<ul>
<li>You have a product manager developing an understanding of market problems, and prioritizing the problems that should be solved with your product.</li>
<li>You may have a product owner managing the backlog and clarifying those requirements (problems) for the development team.</li>
<li>You may have an interface (or interaction) designer or team of designers who are broadly responsible for &#8220;how users interact with our products.&#8221;</li>
<li>You may have an architect or lead engineer who is responsible for the &#8220;big picture design&#8221; of how your product works.</li>
<li>You have developers and testers who are responsible for delivering your product. [Note: coding without testing is like typing code without compiling - <em>maybe</em> it works, but probably not.]</li>
</ul>
<p>You may not have distinct individuals with each of these titles &#8211; every small team I&#8217;ve worked with has people wearing multiple hats.  This is especially true when you have an agile team full of <a title="specialized generalists and stagging an agile team" href="http://tynerblain.com/blog/2008/02/14/specializing-generalists/">specializing generalists</a> &#8211; any given story (or task) may have a different architect and different implementer.  I&#8217;ve only worked with one company where the architects are NOT part of the development team.  If your team is set up that way, please comment below &#8211; I had never seen that before, and I&#8217;m not convinced that it is the best way to organize &#8211; what have your experiences been?</p>
<p>Generally, &#8220;program design&#8221; is clearly owned by the development team &#8211; and product managers (and product owners) know better than to specify program design in their requirements.  Neither the lead engineer nor the product manager believes that the product manager is a <em>better</em> programmer &#8211; so the product manager better not be <a title="requirements versus design" href="http://tynerblain.com/blog/2006/02/11/requirements-vs-design-which-is-which-and-why/">specifying program design and mislabeling it as requirements</a>.  Coincidentally, Steve Johnson, at Pragmatic Marketing has a post running right now with a bit of a <a title="requirement or design?  a quiz" href="http://pragmaticmarketing.typepad.com/productmarketing/2009/11/lets-play-req-or-spec-duplicate-images.html">quiz &#8211; is this a req(uirment) or a spec (design)</a>?</p>
<p>Where the line is more blurred is around interface and/or interaction design.  Some development teams have interface designers as part of the team.  Some companies organize with interface design as a &#8220;shared service&#8221; within the company.  Either approach can be the &#8220;right one&#8221; &#8211; it depends on too many details to make a sweeping generalization.  When the designers are members of the development team, the solution (from a product management perspective) is the same &#8211; the &#8220;team&#8221; is responsible for all design.  When the designers are not part of the development team, the developers have to consume two sets of guidance &#8211; &#8220;solve this problem&#8221; from product management, and &#8220;the solution needs to look like / act like this&#8221; from the designers.</p>
<p><a title="ux and product management collaboration" href="http://tynerblain.com/blog/2007/03/05/product-management-and-ux/">Collaboration between product management and user experience</a> people is the ideal solution.  The &#8220;requirements&#8221; and &#8220;design&#8221; inputs to the development team are comprehensive and consistent.</p>
<h2>Design-Free Requirements</h2>
<p>There are benefits &#8211; especially when being agile and <em>minimizing</em> documentation &#8211; to delivering requirements and design <em>at the same time</em>.  Just don&#8217;t do it by embedding design constraints within the requirements.</p>
<ul>
<li>When people on your team misinterpret design as requirements, they are unnecessarily constrained.</li>
<li>As a product manager &#8211; are you the best designer on your team?  If you&#8217;re busy designing, who&#8217;s product managing?</li>
</ul>
<p>This is trickiest when writing use cases &#8211; sequencing a set of interactions <em>is</em> interaction design.  That is one benefit of<a title="user stories vs use cases" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/"> writing a user story instead of a use case</a>.  An approach that has worked well for me with multiple teams is to deliver user stories (requirements) combined with storyboards (interaction design) and wireframes (interface design).  When details are needed (usually when &#8220;changing&#8221; versus &#8220;creating&#8221; an interface), screenshots can replace wireframes.  When business processes are complicated, process flows can replace storyboards.</p>
<p>Just don&#8217;t embed the designs within the requirements.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Design-Free+Requirements+http://bit.ly/3BuFst+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/11/03/design-free-requirements/&amp;t=Design-Free+Requirements" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/11/03/design-free-requirements/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Agile Prioritization: Which Widget?</title>
		<link>http://tynerblain.com/blog/2009/10/19/agile-prioritization/</link>
		<comments>http://tynerblain.com/blog/2009/10/19/agile-prioritization/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 03:54:46 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[product management and user experience]]></category>
		<category><![CDATA[ux and product management]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1093</guid>
		<description><![CDATA[
Your company is building out a toolkit to support third-party developers.  You&#8217;ll need a bunch of different types of widgets &#8211; combo-boxes, text entry fields, domain-specific controls, etc.  You&#8217;ve got a long list of desired controls from your customers.  You&#8217;re agile.  What do you build first?
Agile In A Soundbite
Being agile is about delivering incremental value, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="agile combobox" src="http://sehlhorst.smugmug.com/photos/686509239_2Y8GV-O.png" alt="" width="205" height="194" /></p>
<p>Your company is building out a toolkit to support third-party developers.  You&#8217;ll need a bunch of different types of widgets &#8211; combo-boxes, text entry fields, domain-specific controls, etc.  You&#8217;ve got a long list of desired controls from your customers.  You&#8217;re agile.  What do you build first?</p>
<h2><span id="more-1093"></span>Agile In A Soundbite</h2>
<p>Being <a title="agile explained" href="http://tynerblain.com/blog/2007/03/16/explaining-agile-development/">agile is about delivering incremental value</a>, quickly, getting feedback, and then delivering more incremental value.  Repeat until &#8220;done.&#8221;  <em>Good</em> agile adds a qualifier &#8211; do the <em>most valuable</em> thing quickly, get feedback, do the <em>most valuable</em> thing (that has not already been done) quickly. <em>Better</em> <a title="value optimization and prioritization" href="http://tynerblain.com/blog/2007/07/31/prioritization-and-value-maximization/">agile optimizes the rate at which you deliver value</a> by taking into account both benefit and cost.  <em>Great</em> agile overlays a focus on getting better at doing all of these things while you do them &#8211; becoming a learning organization.</p>
<h2>Boiling the Ocean</h2>
<p><img class="alignnone" title="boiling the ocean" src="http://sehlhorst.smugmug.com/photos/686571065_y35xb-O.jpg" alt="" width="250" height="166" /></p>
<p>A product manager I was coaching was faced with a challenge commonly referred to as <em>boiling the ocean</em>. His team was tasked with solving a market problem, and they were constrained to doing it with a service-oriented architecture that exposed a set of widgets (user interface controls) that customers could easily integrate into their products.  This approach was designed to provide competitive differentiation by reducing the time and cost to deploy solutions that allowed customers to integrate his product into their existing platforms.</p>
<p>In initial conversations with customers, technologists, and architects, this product manager quickly amassed a list of desired widgets (controls) and scenarios (stories) in which they could be used.  The product manager&#8217;s team had recently switched to an agile development methodology.  The internal stakeholders, not yet accustomed to agile development, wanted &#8220;all of the widgets,&#8221; now.</p>
<p>This product manager was able to convince them that the team would deliver the widgets incrementally, following agile principles.</p>
<p>His question was &#8211; <em>How do I sequence the widgets in the backlog</em>?</p>
<h2>Defining Widget Priority</h2>
<p>The product manager had a list of widgets, combo-boxes, data-grids, text fields, radio buttons, etc., and for each widget, he had a real-world scenario showing how the widget could be used.  Most of the scenarios involved customers using multiple widgets.  He wondered if he should do some sort of analysis that detailed the frequency of use of each widget.  &#8221;This widget is used in 7 scenarios, so it should be done first; this widget is used in 5 scenarios&#8230;&#8221;</p>
<p>There was a strong temptation to add several &#8220;Create a widget&#8221; tasks to his backlog.  It would be easy for his development team to estimate the effort required to deliver each widget.  His team wanted to deliver incrementally, and &#8220;one widget at a time&#8221; felt like logical, discrete chunks of work to them.  They could easily sink their teeth into estimating, building, and testing each widget.</p>
<p>A quick reminder of a main tenet of agile, delivering incremental value, illuminated the flaw in this approach.  This approach would have been an <em>inside-out</em> prioritization, when <a title="outside-in software development" href="http://tynerblain.com/blog/2007/09/27/outside-in/">value delivery requires an outside-in perspective.</a> (See the &#8216;recommended reading&#8217; suggestions on this page to check out Kessler and Sweitzer&#8217;s great book.)</p>
<p>If the team used this approach, after the first widget was complete, they would be able to deliver exactly 1 task, and 0 stories.  Development teams don&#8217;t deliver tasks, however.  The team&#8217;s customers would not be able to get incremental value from having a single widget.  The team would have delivered seven incomplete stories &#8211; so they would have delivered no stories at all!</p>
<p>We reworked his approach as follows:</p>
<ol>
<li><strong>Assess a value for each story</strong>, making sure that<a title="writing complete user stories" href="http://tynerblain.com/blog/2009/07/06/writing-complete-user-stories/"> each story would enable his customers to accomplish something valuable</a>.</li>
<li>Engage their user interface /<a title="definition of user experience" href="http://tynerblain.com/blog/2006/03/03/foundation-series-user-experience-disciplines/"> user experience</a> designer to <em><strong>design</strong></em><strong> a solution for the most valuable story</strong>.  This design was constrained to use widgets in the user interface.  The suggested way to communicate this design was with a storyboard and low-fidelity wireframes.</li>
<li><strong>Identify the widgets needed</strong> to be built to deliver that story, <em>using the designer&#8217;s design</em>.</li>
<li><strong>Deliver the story</strong> to the development team, including the storyboard, wireframes, and list of widgets to be used as acceptance criteria.</li>
<li>Get the development team to <strong>size (estimate) the effort to complete each story</strong>.</li>
<li>Where stories were too big (epics), <strong>collaborate </strong>to identify good ways to <a title="agile story decomposition" href="http://tynerblain.com/blog/2007/06/27/benefits-of-agile-stories/">break up the stories</a> into manageable chunks.</li>
<li><strong>Repeat steps 2 through 6</strong> until the amount of identified effort was likely to fill the release (keep the dev team busy delivering value).</li>
<li>As the team delivers each story, get feedback from the market, revisit the prioritization, and revise the &#8220;next&#8221; story.</li>
</ol>
<p>What we discovered was that a scenario like the following (modified for this article) played out:</p>
<ul>
<li>The first story required two widgets.  As no widgets existed, both had to be built.</li>
<li>The second story required three widgets, but two of them had been built to support the first story &#8211; only one <em>incremental</em> widget had to be created.</li>
<li>The third story used one of the widgets from the first story, but required additional behaviors.  The original widget was modified to provide <em>incremental</em> capabilities (and value).</li>
</ul>
<h2>A Note On Team Structure</h2>
<p>Astute readers will notice that there was a <em>design step</em> &#8220;inside the requirements process&#8221; &#8211; before the stories were delivered to the development team.  Technically, that is true, for the way this particular company was organized.  The user experience designer was not a member of the scrum team, but rather, an external consultant who supported multiple teams.  The product manager engaged the designer prior to engaging the development teams.</p>
<p>This just as easily could have happened as follows:</p>
<ol>
<li>Product manager identifies, values, and prioritizes stories to be added to the backlog.</li>
<li>Development team, as part of sizing the stories, engages their user experience designer to select the appropriate widgets, and those <em>design decisions</em> inform the estimation process.</li>
<li>Everything else is the same.</li>
</ol>
<p>This <em>procedural variation</em> does not have design &#8220;inside the requirements process.&#8221;  The same people do the same things, in the same sequence in this scenario.  The only difference is that the interface / interaction designer is a member of the development team.  That would be ideal, but that was not how the company was organized.</p>
<p>In this particular example, <a title="product managers and UX designers" href="http://tynerblain.com/blog/2007/03/05/product-management-and-ux/">having the product manager collaborate with the UX designer</a> made the most sense.  It introduced less complexity for the product manager to accept responsibility for this activity than it would have for the development team (who was still new to using an agile delivery cadence) to do it.</p>
<h2>Conclusion</h2>
<p>The key ideas at play here:</p>
<ul>
<li>Focus on <em>realizable</em> <strong>value to the customer</strong> (outside-in development), not <em>tractable</em> tasks (inside-out development).</li>
<li><strong>Collaboration with a UX</strong> professional is key to driving &#8220;interface requirements.&#8221;</li>
<li><strong>Deliver frequently and valuably</strong>, get feedback (learn), and incorporate that knowledge into whatever is next.</li>
</ul>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Agile+Prioritization%3A+Which+Widget%3F+http://bit.ly/1ejwKo+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/10/19/agile-prioritization/&amp;t=Agile+Prioritization%3A+Which+Widget%3F" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/10/19/agile-prioritization/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Modeling User Competency</title>
		<link>http://tynerblain.com/blog/2009/10/13/modeling-user-competency/</link>
		<comments>http://tynerblain.com/blog/2009/10/13/modeling-user-competency/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 04:40:50 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[ROI]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[competency model]]></category>
		<category><![CDATA[experience curves]]></category>
		<category><![CDATA[learning curves]]></category>
		<category><![CDATA[user competency]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=1084</guid>
		<description><![CDATA[
Perpetually intermediate (competent) users.  Users who briefly exist as novice users and never become experts. Most of your users are competent, and you should design for them.  Competent users have different needs and different expectations than novice or expert users.  How do you know your user&#8217;s competency levels, so you can design for them?

User Competency
User [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="measuring competence" src="http://sehlhorst.smugmug.com/photos/680267147_f9DUM-O.png" alt="" width="250" height="181" /></p>
<p>Perpetually intermediate (competent) users.  Users who briefly exist as novice users and never become experts. Most of your users are competent, and you should design for them.  Competent users have different needs and different expectations than novice or expert users.  How do you know your user&#8217;s competency levels, so you can design for them?</p>
<p><span id="more-1084"></span></p>
<h2>User Competency</h2>
<p>User competency is a concept I first read about in Alan Cooper&#8217;s <em><a title="The Inmates are Running the Asylum, by Alan Cooper" href="http://www.amazon.com/dp/0672326140?tag=tbrb-20&amp;link_code=as3&amp;creativeASIN=0672326140&amp;creative=373489&amp;camp=211189">The Inmates Are Running The Asylum</a></em>.  Cooper&#8217;s contention is that the level of expertise of your users follows a bell curve, or <a title="normal distribution" href="http://en.wikipedia.org/wiki/Normal_distribution">normal distribution</a>.</p>
<blockquote><p>When we’re designing software we need to keep in mind that most of our users will be competent – neither experts nor beginners. Alan Cooper’s studies tell us that user skill levels follow a bell curve. He talks about competent users as perpetual intermediates. Some users drop out of the bell curve when they stop using our software. The rare user becomes an expert. Most users only learn enough to get their real job done.<br />
<cite><a title="competent users" href="http://tynerblain.com/blog/2006/04/02/competent-users-and-software-design/">Competent Users and Software Requirements</a></cite></p></blockquote>
<p>Cooper contends that the combination of <a title="usability learning curves" href="http://tynerblain.com/blog/2007/03/12/software-usability-learning-curves/">learning curves</a> and natural user tendencies to stop learning or abandon a software application are the sources of this distribution of user competency.</p>
<h2>Experience Curves</h2>
<p><a title="experience curves" href="http://en.wikipedia.org/wiki/Experience_curve_effects">Experience curves</a> represent the diminishing costs over time of manufacturing something repeatedly.  The process of manufacturing something gets more efficient as you get smarter about the process.  The process of using software is at least analogous to, if not a specific example of a manufacturing process.  If you&#8217;re using an email application, you are manufacturing email messages.  In a CRM system, you are manufacturing contacts, or contact reports, etc.</p>
<p>By treating any &#8220;using the software to do something&#8221; interactions as a process, you can measure the cost (how long it takes) of the user&#8217;s interactions.  Applying the math behind experience curves, you can predict the reduction in cost (to your users) over time, for any set of interactions.  Experience curves take into account that some processes are inherently more learnable than others.  This property of learnability is reflected as an efficiency coefficient &#8211; how efficiently someone can learn ways to reduce the cost (time) needed to perform the interactions.</p>
<p>This gives us an approach to quantitatively model user competency.  Having a definition allows us to model competence.  And measuring competence allows us to manage product design in the context of user competency -<a title="design for competent users" href="http://tynerblain.com/blog/2007/03/23/dont-make-products-too-simple/"> designing for competent users</a>.</p>
<h2>Defining Competence</h2>
<p>The first step to measuring competency is to define the model.  I am proposing a definition in this article that I suspect will yield insights (to help us manage our products). I was unable to find any quantified definitions of competence, when researching it as part of a client engagement.  If you have, or know of a model, please share it in the discussion below this article.</p>
<ul>
<li>A competent user is someone who learns to perform a task in half the time it initially took them.</li>
<li>An expert user is someone who can complete a task in 10% of the initial time.</li>
</ul>
<p>This definition is guided by an expectation that Alan Cooper&#8217;s premise about perpetually intermediate users is true.  Being a novice user is a very transient state, and becoming an expert is very infrequent.  The goal of the definition is to be able to segment your users and make well-informed design decisions.</p>
<h2>A Proposal, Not a Doctrine</h2>
<p>This is a proposal that doubling performance reflects competence, and achieving a ten-times improvement represents expertise.  It may be that some different measure of performance improvement more accurately reflects competence and expertise.  We have to test it to know.</p>
<p>The experience curve is defined mathematically by <em>Henderson&#8217;s Law</em>.  It states that the time to complete a task is a function of the number of times you have previously done that task, adjusted by the &#8220;elasticity&#8221; of the cost of that task.  In other words, some tasks are easier to improve than others.  If you populate a table with the results of applying Henderson&#8217;s Law, you get the following:</p>
<p><img class="alignnone" title="experience curves" src="http://sehlhorst.smugmug.com/photos/680267101_QEofx-O.png" alt="" width="450" height="247" /> [<a title="experience curve data" href="http://sehlhorst.smugmug.com/photos/680267134_VUcpL-O.png">larger image</a>]</p>
<ul>
<li>Each row in the table represents the Nth repetition of a task.</li>
<li>Each column represents how easy that task is to learn &#8211; progressing from &#8220;hard to improve&#8221; on the left, to &#8220;easy to improve&#8221; on the right.</li>
<li>Each cell in the table represents how long it would take to perform the Nth repetition of the task, as a function of how easy it is to improve your performance at the task.</li>
</ul>
<p>The above definitions represent what experience curves predict mathematically, when the task initially takes 60 seconds.  The following definitions reflect the proposed user competency model:</p>
<ul>
<li>A user is a <em>novice</em> user until she has learned enough to cut the time-on-task in half.  These cells have a white background (and are in the upper left area of the table).</li>
<li>A user is a <em>competent</em> user when the time needed to complete the task is between one half and one tenth of the initial time.  These cells are shown with a yellow background (and are in the central area of the table).</li>
<li>A user is an <em>expert</em> user when she can complete the task in less than one tenth of the time required to initially complete the task.  Theses cells are shown with a red background (and are in the lower right area of the table).</li>
</ul>
<p>In the absence of empirical data, I used my intuition to suggest that a representative experience curve for a typical task performed in software would be one with an &#8220;elasticity&#8221; of 50%.  For a task with those learning characteristics:</p>
<ul>
<li>A novice user would cut the needed time in half on the 4th repetition of the task, and would be considered to be a competent user.</li>
<li>A competent user would further reduce the time needed to one tenth of the initial time on the 100th repetition of the task, and would be considered an expert user.</li>
<li>The 50% elasticity column is surrounded by a black border, and the number of repetitions required to advance to <em>competent</em> or <em>expert</em> status is also highlighted with a black border.</li>
</ul>
<h2>Inferring Competence</h2>
<p>Since different processes have different learning characteristics, you have to figure out how easy it is for your users to improve at your processes.  To do that, you have to study (or at least measure) your users&#8217; interactions with your software.  In the 50% curve highlighted above, a user is capable of cutting their time-on-task in half by the fourth time they perform the task.</p>
<p>If data from your initial testing (or measurement) reveals this to be true, then you have selected the correct curve (the correct column in the table).  If it takes more or less time to reach this level of improvement, shift to the left or right to find the appropriate curve.  If software-interactions are reasonable analogs to manufacturing processes, then the experience curve projects an expected rate of improvement on task.</p>
<p>The following graph isolates the time-on-task data for a user who is learning to improve when repeating a task (process) that matches the 50% elasticity curve.</p>
<p><img class="alignnone" title="rate of learning on a 50% curve" src="http://sehlhorst.smugmug.com/photos/680267141_hukQA-O.png" alt="" width="450" height="327" /> [<a title="larger 50% experience curve time-on-task graph" href="http://sehlhorst.smugmug.com/photos/680267164_phQRh-O.png">larger image</a>]</p>
<p>Note that the number of repetitions of the task (the X axis) is represented as a logarithmic scale.  The data points along the curve correspond to the cell values in the table above (for the 50% column).</p>
<p><strong>Shades of Gray</strong></p>
<p>One nice thing about this quantitative approach to inferring competency by measuring usage is that your measurements are per-process.  Users are not &#8220;purely novice&#8221; or &#8220;purely expert&#8221; &#8211; they can be experts at some processes, while remaining neophytes at other.  There is also awareness, for any particular process, of &#8220;how much competency&#8221; a user has.  This allows you to refine your assumptions of the steepness of the learning curve, and of the thresholds (doubled performance and ten-times performance improvements).</p>
<h2>Improvement Over Time</h2>
<p>Any particular learning curve can be considered relative to calendar time, to see how quickly a user will progress along the curve (as a function of frequency of use).  This can be useful for determining the <a title="definition of ROI" href="http://tynerblain.com/blog/2006/02/01/definition-of-roi-return-on-investment/">ROI </a>of improvement in a particular process.</p>
<blockquote><p>The following graph shows how an 80% learning curve overlays a calendar for tasks that happen daily, weekly, and hourly.<br />
<img title="calendar overlay of competency curve" src="http://sehlhorst.smugmug.com/photos/135449754-M.jpg" alt="" /><br />
[<a title="larger improvement over time" href="http://sehlhorst.smugmug.com/photos/135449796-O.jpg">larger image</a>]</p>
<p>The graph shows that for a weekly frequency, after 16 weeks, the task time has reduced from 300 seconds to 100 seconds. With a daily frequency, the task time is even lower – about 60 seconds. This graph shows nothing other than converting the academic learning curve graph into one that incorporates calendar time and frequency of occurrence.</p>
<p><cite><a title="software usability and learning curves" href="http://tynerblain.com/blog/2007/03/12/software-usability-learning-curves/">Software Usability and Learning Curves</a></cite></p></blockquote>
<p>One approach to inferring user competency would be to measure how long a user has been using your software.  The variation in how frequently different users perform the same task will introduce an error into that inference.  You can avoid introducing that error into your modeling by counting the number of times a user has performed a task.</p>
<h2>Applying the User Competency Model</h2>
<p>The advice in previous articles, and from Cooper&#8217;s book, and from this <a title="perpetual intermediacy" href="http://www.codinghorror.com/blog/archives/000098.html">great article on the  Coding Horror site</a>, encourages us to focus on the competent users.</p>
<p>I&#8217;m working with a client who needs to prioritize a set of capabilities and establish design principles for a product.  We will incorporate this user competency model as part of our analysis.</p>
<p>Hopefully we&#8217;ll have an opportunity to collect data to validate and / or refine the model.  I&#8217;m proposing that we first gain some insight into the which users (novice, competent, expert) drive the most revenue and profit from use of the product &#8211; to establish the importance of each category of user.</p>
<p>For this product, I suspect that we will find many more <em>novice</em> users than a normal distribution would predict.  If that is true, the next question will be to understand if we are dealing with a normal behavioral dynamic, or if characteristics of the current product &#8220;force&#8221; novice users to abandon it before they achieve competence.</p>
<p>Either way, we will have a framework for prioritizing the goals of the novice, competent, and expert users.</p>
<p>How would you apply a model like this to improving your product?</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Modeling+User+Competency+http://bit.ly/ZYSig+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/10/13/modeling-user-competency/&amp;t=Modeling+User+Competency" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/10/13/modeling-user-competency/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>User Goals and Corporate Goals</title>
		<link>http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/</link>
		<comments>http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 04:59:02 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Prioritization]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[corporate goals]]></category>
		<category><![CDATA[requirements management]]></category>
		<category><![CDATA[user goals]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=973</guid>
		<description><![CDATA[
When defining requirements, you always start in the context of a goal &#8211; either a user goal or a corporate goal.  You need to be aware of both.  Having a positive user experience is important, and requires a user-centered understanding.  Achieving your corporate goals might be in conflict with some user goals.
User Goals
A user centered, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="vending machine as user interface" src="http://sehlhorst.smugmug.com/photos/571470636_NcRaS-L.jpg" alt="" width="163" height="250" /></p>
<p>When defining requirements, you always start in the context of a goal &#8211; either a user goal or a corporate goal.  You need to be aware of both.  Having a positive user experience is important, and <em>requires</em> a user-centered understanding.  Achieving your corporate goals <em>might</em> be in conflict with some user goals.</p>
<h2><span id="more-973"></span>User Goals</h2>
<p>A user centered, or user-centric approach to developing software is one where you start by <a title="developing persona for goal driven development" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">identifying the key persona</a> in your target market.  For each of those personas, you identify their most important goals.  You then identify the <a title="user stories and use cases" href="http://tynerblain.com/blog/2009/02/02/user-stories-and-use-cases/">user stories or use cases</a> that represent the things these people do in order to achieve their goals.  These &#8220;things&#8221; are manifested as practical goals.  For these activities, you design user interfaces (process, layout, architecture, look and feel, etc) that <a title="customer delight in requirements prioritization" href="http://tynerblain.com/blog/2006/02/27/prioritizing-software-requirements-kano-take-two/">create customer delight</a> for those users, doing those things.  This is how your product <a title="designing to exceed the suck threshold" href="http://tynerblain.com/blog/2005/12/14/getting-past-the-suck-threshold/">exceeds the suck-threshold</a> (good enough that it doesn&#8217;t suck to use your product).</p>
<h2>Corporate Goals</h2>
<p>There&#8217;s a reason your company is creating or improving a product.  It may be to gain market share, or improve profitability, or increase sales.  Whatever it is, there&#8217;s a corporate goal that your decisions should be supporting.  The (subset of) corporate goals that are relevant to your product could be communicated in a vision and scope document, that constrains the domain of problems to be solved, and provides nuanced insights into viable approaches to solving them (<a title="vision and scope docs for apr" href="http://tynerblain.com/blog/2007/04/18/apr-scope-and-vision/">example vision and scope</a>).</p>
<p>Corporate goals are achieved when customers do things with the products.  These &#8220;things&#8221; are manifested as practical goals.  For those activities, you document what should be accomplishable and why.</p>
<h2>Alignment and Conflict of Goals</h2>
<p>Notice that both the user goals and corporate goals manifest in terms of people doing things.  When the person (user) wants to do the same things that your company wants them to do, you&#8217;re in alignment.  When the user goals and corporate goals suggest different activities, you&#8217;re in conflict.</p>
<p>You can see visually that these worlds collide at the &#8220;practical goals&#8221; stage  in the following diagram, from an article on <a title="interaction design and structured requirements" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/">combining interaction design and structured requirements principles</a>.</p>
<p><img class="alignnone" title="interaction design and structured requirements" src="http://sehlhorst.smugmug.com/photos/61228367-O.png" alt="" width="461" height="525" /></p>
<p>It may be great &#8211; when the user and corporate goals are in alignment, the practical goal and associated scenario (activity) are easily defined.  What about when the goals are in conflict?</p>
<h2>Vending Machine Example</h2>
<p>Last Thursday morning, as I interacted with a vending machine, the idea for this article was dispensed along with my Diet Mountain Dew.  Yes, I know that&#8217;s odd.  Move on.</p>
<p>It occured to me that the process of buying a cold, caffeinated beverage can be both aligned and unaligned from the perspective of user and corporate goals.  If you imagine writing a use case for purchasing a beverage from the vending machine, your most important scenario is the one where a person wants to purchase a beverage that is available in the machine.</p>
<ul>
<li>User Goal: Get refreshed and vitalized.</li>
<li>Corporate Goal: Sell a beverage.</li>
</ul>
<p>I want to buy a Diet Mountain Dew, as a means to realize my personal goal.  The owner of the vending machine wants to realize her corporate goal of selling me the beverage I want to buy.  We&#8217;re in alignment.  Our requirements definitions and design decisions will be pretty easy &#8211; everything that increases the likelihood of and improves the experience of purchasing that beverage is good.  I put my money in the machine and push the button.</p>
<p>Then it occurs to me &#8211; there&#8217;s a situation where my personal goals are clearly not aligned with the corporate goals of the vending machine owner.  When there is no Diet Mountain Dew available to be purchased.</p>
<p>Consider the following procedure I&#8217;m forced to endure:</p>
<ol>
<li>I view the available beverages that this machine dispenses &#8211; Diet Mountain Dew is one of them.</li>
<li>I put my money in the machine.</li>
<li>I push the button for Diet Mountain Dew.</li>
<li>The tiny display on the machine presents a message in taunting, scrolling red LED lights: SOLD OUT.</li>
</ol>
<p>At this point, I&#8217;m faced with a choice &#8211; select a less desireable beverage, or request my money back and try to satisfy my user goal in some other way.</p>
<p>Consider an alternate procedure:</p>
<ol>
<li>I view the available beverages that this machine dispenses &#8211; Diet Mountain Dew is one of them.</li>
<li>I view the &#8216;current availability&#8217; of Diet Mountain Dew and see that this machine is currently sold out of Diet Mountain Dew.</li>
</ol>
<p>At this point, I&#8217;m faced with a choice &#8211; select a less desireable beverage, or request my money back and try to satisfy my user goal in some other way.</p>
<p>The differences in these two possible procedures indicate that there is a conflict between the corporate goal and the user goal.  With the first procedure, the &#8220;Sell a beverage&#8221; goal is given more importance, because it makes me more likely to purchase a beverage that I don&#8217;t particularly want.  My utility is potentially sacrificed, while the owner of the vending machine is just as satisfied.</p>
<p>By failing to tell me that I can&#8217;t get what I want, until I&#8217;m further invested in the process, I am more likely to purchase something else.  That purchase creates just as much value for the owner of the vending machine, but less value for me.</p>
<p>If the vending machine owner had allowed me to use the second procedure, it would demonstrate that the  owner believed the improved customer experience, while risking the loss of this sale, would encourage me to purchase more over time.  The owner would have been prioritizing the requirements and design that supported the user goal ahead of those supporting the corporate goal &#8211; in hopes that my user loyalty would result in <a title="how word of mouth works" href="http://tynerblain.com/blog/2007/09/18/dynamics-of-word-of-mouth/">better word of mouth</a> (more business from other people) and <a title="usability sells software" href="http://tynerblain.com/blog/2007/01/10/usability-sells-software/">more business from me</a> over time.</p>
<h2>Generalizing User and Corporate Goal Conflicts</h2>
<p>In this vending machine example, the annoying procedure is <em>probably</em> the right one &#8211; I&#8217;m going to treat the &#8220;point of use vending of cold, caffeinated beverages&#8221; as a commodity product.  This market has a very low barrier to entry, and relatively small problem being solved.  I&#8217;m not going to tell my friends about how much I love the vending machines from Joey&#8217;s Vending and encourage them to go out of their way to find and use those machines.  Nor will I purchase more Diet Mountain Dew because the emotional cost of the occasional &#8220;sold out&#8221; scenario is trivially smaller with Joey&#8217;s machines.  I would, however, be more likely to buy a Diet Pepsi when I&#8217;ve already invested time in the process and put my money in the machine &#8211; especially when the alternative is to find a water fountain.  I&#8217;m emotionally invested at this point.</p>
<p>However, this experience did jump out at me as one that is worth explicit consideration when defining requirements and designing solutions.  It does come up regularly.</p>
<p>The new iPhone 3GS hardware allows tethering (using the phone as an internet-connection device for your laptop).  ATT (the exclusive carrier for iPhones in the USA) is indicating that they will charge customers an extra monthly fee for this capability, when they eventually allow it on their network.  The user already has a data plan, and the traffic that ATT would have to carry is just &#8220;data.&#8221;  The user just wants it to work.  ATT, however, may want more money, or may want to limit data traffic on its network &#8211; perhaps to improve the quality of service to all customers.  This could be ATT&#8217;s corporate goal of &#8220;provide better service quality&#8221; conflicting with the user&#8217;s &#8220;increase the flexibilty of how I use my data plan.&#8221;  The former would likely influence customer satisfaction (and abandonment) over time, while the latter would influence customer acquisition rates.  Another conflict in goals.</p>
<p>Think about how different goals can lead to conflicting solutions, requirements, and designs.  And tell me when you&#8217;re out of Diet Mountain Dew before I&#8217;m emotionally invested in the purchase.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+User+Goals+and+Corporate+Goals+http://bit.ly/df3j0+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/&amp;t=User+Goals+and+Corporate+Goals" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/06/22/user-goals-and-corporate-goals/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Personas Make Blue Ocean Strategy Proactive</title>
		<link>http://tynerblain.com/blog/2009/04/29/personas-and-blue-oceans/</link>
		<comments>http://tynerblain.com/blog/2009/04/29/personas-and-blue-oceans/#comments</comments>
		<pubDate>Wed, 29 Apr 2009 15:57:34 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Book Reviews]]></category>
		<category><![CDATA[Communication]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Prioritization]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[analysis]]></category>
		<category><![CDATA[blue ocean]]></category>
		<category><![CDATA[blue ocean persona]]></category>
		<category><![CDATA[blue ocean strategy]]></category>
		<category><![CDATA[persona]]></category>
		<category><![CDATA[personas]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=912</guid>
		<description><![CDATA[
Blue Ocean Strategy provides an interesting reactive analysis of companies and markets.  Personas are used to understand your customer&#8217;s needs.  Combining the two provides powerful proactive insights when positioning your product for market success.
Blue Ocean Strategy
The book, Blue Ocean Strategy: How to Create Uncontested Market Space and Make Competition Irrelevant, by Kim and Mauborgne, was [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="personas in the blue ocean" src="http://sehlhorst.smugmug.com/photos/524127888_QioQj-L.jpg" alt="" width="187" height="250" /></p>
<p>Blue Ocean Strategy provides an interesting reactive analysis of companies and markets.  Personas are used to understand your customer&#8217;s needs.  Combining the two provides powerful proactive insights when positioning your product for market success.</p>
<h2><span id="more-912"></span>Blue Ocean Strategy</h2>
<p>The book, <a title="Blue Ocean Strategy at Amazon" href="http://www.amazon.com/exec/obidos/ASIN/1591396190/tbrb-20">Blue Ocean Strategy: How to Create Uncontested Market Space and Make Competition Irrelevant</a>, by Kim and Mauborgne, was written in 2005.  The book presents a very compelling way to visualize competition in your market by contrasting the emphasis (or effectiveness) of each company at solving particular problems.  The authors argue that <em>red oceans</em> are competitive markets where companies compete to solve the same problems for the same customers.  Their main idea is that by identifying (and solving) unaddressed problems, you can define a new market &#8211; a <em>blue ocean</em> with no relevant competitors.  The &#8220;red&#8221; in their metaphor implies blood in the water, caused by cut-throat competition.  Their position &#8211; by defining a new market boundaries with no competition, you eliminate the blood in the water and give yourself a calm, blue ocean in which to navigate your company.</p>
<p>This is a compelling idea, and has a lot of merit.  The <a title="smarter product managers book club" href="http://www.booksprouts.com/club/show/426?show_all=false">Smarter Product Managers book club</a> (started by <a title="The Experience is the Product - Cindy's great blog" href="http://www.cindyalvarez.com/">Cindy Alvarez</a>) reviewed this book last month, and one conclusion we reached during the discussion is that the examples in the book felt &#8220;reverse-engineered.&#8221;  I feel that the lack of prescriptive advice from the authors created a sense of &#8220;<strong>that&#8217;s fine, but how do I apply these ideas proactively?</strong>&#8221;   Some of the examples in the book, like Cirque de Solei and Southwest Airlines, felt very compelling (and are often cited), while others felt a bit more contrived.  Almost as if the authors were searching for data to support their arguments &#8211; a big no-no for product managers.</p>
<h2>Creating a Blue Ocean Strategy Map</h2>
<p>The book presents examples of &#8220;mapping&#8221; markets based upon the strength of the offerings from companies, along different dimensions.  The following example was created by me (and is used throughout this article), but follows the pattern of analysis described in the book.  This is an <em><span style="text-decoration: underline;">unresearched</span>, hypothetical</em> example analysis of the market for vaccuum cleaners &#8211; or more generically, floor cleaning products.</p>
<p> </p>
<p><img class="alignnone" title="vaccuum cleaner market strategy map" src="http://sehlhorst.smugmug.com/photos/524128000_UVoCC-L.png" alt="" width="450" height="327" /> [<a title="Blue Ocean strategy for vaccuum cleaners" href="http://sehlhorst.smugmug.com/photos/524127962_nvEdU-O.png">larger image</a>]</p>
<p>The diagram above identifies seven dimensions by which you could characterize the offerings from each company.</p>
<ul>
<li>Breathe Easier / Anti-Allergen &#8211; sometimes, people vaccuum their rugs in order to reduce allergens (by sucking up dust), making it easier for them to breathe in their homes.  Vaccuum cleaners work by sucking up air through the carpet, collecting the dirt (that is sucked up along with the air), and filtering the exhaust air (that is expelled into the room).  Different vaccuum cleaners pay different levels of attention to removing allergens during this cleaning process, by (1) getting the allergens out of the carpet and (2) filtering the allergens out of the exhaust air.</li>
<li>Remove Stains &#8211; one motivation to clean your floor is to remove stains.  This is not generally a focus of vaccuum cleaners, but products like the <em>Green Machine</em> do focus on removing stains, while also &#8220;picking up dirt.&#8221;</li>
<li>Physically Easy to Use &#8211; after back surgery, one of the key pieces of advice my mother received from her doctor was &#8220;no vaccuuming.&#8221;  When you are young and healthy, you don&#8217;t expect vaccuuming to be something that is forbidden by your doctor.  Shoveling snow, climbing a mountain, running a marathon, yes &#8211; but vaccuuming?</li>
<li>Reducing Hassle &#8211; Why don&#8217;t we vaccuum every day?  Because it can be a hassle to get out the vaccuum, set up the equipment, and actually use it.  When you reduce the hassle involved in vaccuuming, you are likely to vaccuum more often, thereby realizing more benefits from vaccuuming.</li>
<li>Saving Time &#8211; Hassle is not the only barrier to vaccuuming.  If you could vaccuum your house in 5 minutes instead of 105 minutes, you would do it more often.  As a teenager, I used to jog behind the lawn mower, just to get the yard done so I could move on to other things.</li>
<li>Reliability &#8211; While reliability is not a major factor when vaccuuming your house (once), it is a key component of making purchasing decisions &#8211; because you don&#8217;t vaccuum just once.  The more you vaccuum, the more you care about reliability.  This is also an indirect cost factor &#8211; a vaccuum cleaner that has to be frequently repaired or replaced will cost more <em>per year</em> than one that has the same purchase price and is more reliable.  This is also an indirect hassle factor &#8211; you may delay vaccuuming your home until you can make time to get a broken vaccuum cleaner repaired.</li>
<li>Avoiding Cost &#8211; A direct focus on cost is primarily driven by purchase price.  Other factors (like reliability, and the cost of replacement bags or filters), but people place greater emphasis on purchase price when thinking about cost.  Consumer Reports and other &#8220;product review&#8221; companies will often &#8220;do the math&#8221; for you, taking into account all of the post-purchase costs to calculate total-cost-of-ownership.</li>
</ul>
<p> </p>
<p>The above diagram, with <em>fictitous </em>values for &#8220;Strength of Competitive Offering&#8221;, shows the competitive landscape for the vaccuum cleaner market.  One of the very powerful features of this visualization is that the Roomba faces &#8220;no competition&#8221; from the other companies in three of the seven categories &#8211; Ease of Use, Hassle, and Time.  A Blue Ocean Strategy analysis would say that the Roomba has created their own market, with an absense of competition.</p>
<p>This gets back to our insight that the examples felt &#8220;reverse engineered.&#8221;  The Roomba does have a dramatically different value-proposition, and focused on dimensions that are not addressed by their competition.  So why isn&#8217;t the Roomba in the book?  Because they still compete in the red ocean.  Unlike Southwest Airlines, they did not differentiate their offering in a <em>relevant</em> way.  And that&#8217;s the problem we found in trying to apply the principles from the book.  </p>
<p>It is not enough to be innovative and differentiated, which the Roomba certainly is, you have to be <em><a title="differentiation versus improvement" href="http://tynerblain.com/blog/2006/05/24/differentiation-vs-improvement/">valuably differentiated</a></em>.</p>
<p>So how do you differentiate valuably and proactively?  Identify the problems that your customers value, but don&#8217;t yet have solutions for.  How do you do that?  With personas.</p>
<h2>Personas</h2>
<p>Personas represent customers in your target markets.  Markets are not homogenous &#8211; different people in your markets value different things for different reasons.  You <a title="how to develop personas" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">develop personas</a> as archetypes to represent subsets of the customers in a given market who share common problems.  More concretely, <a title="persona development examples" href="http://tynerblain.com/blog/2006/04/17/persona-grata/">personas share common </a><em><a title="persona development examples" href="http://tynerblain.com/blog/2006/04/17/persona-grata/">valuations</a></em> of shared problems.</p>
<p>To combine persona development with the market-mapping concept from <em>Blue Ocean Strategy</em>, create the same map, but for personas.  Instead of identifying the strength of each company/product along each dimension, identify how much each persona cares about each particular dimension.</p>
<p><img class="alignnone" title="persona priorities in blue ocean market map" src="http://sehlhorst.smugmug.com/photos/524128075_PSzSg-L.png" alt="" width="450" height="327" /> [<a title="mapping persona prioritization to blue ocean strategy map" href="http://sehlhorst.smugmug.com/photos/524128038_Thp76-O.png">larger image</a>]</p>
<p>In the chart above, I&#8217;ve created 6 hypothetical personas who populate our market:</p>
<ul>
<li>Single Parent &#8211; the classic superman / superwoman who does everything, including keeping the house clean.</li>
<li>Housekeeper &#8211; someone employed to keep someone else&#8217;s house clean.</li>
<li>Office Cleaner &#8211; the person who vaccuums your office at 2am every night and picks up all the empty Diet Coke cans and Twinkee wrappers.</li>
<li>Kid (Doing Chores) &#8211; most kids won&#8217;t ask for a vaccuum cleaner for their birthday, but when you child is responsible for vaccuuming, do you want a battle every week because they hate it?</li>
<li>Homeowner &#8211; like the single parent, but maybe without kids, and definitely with fewer responsibilities (and more time).</li>
<li>Retiree &#8211; like the homeowner, but with a lot more time, and a less robust physical condition.</li>
</ul>
<p>[Note - the above examples are really <a title="doing personas correctly" href="http://tynerblain.com/blog/2006/12/14/overdoing-personas/">stereotypes and not personas</a> (there is no research to back them up - they are entirely fictional) - don't fall into the trap of thinking persona development is this easy.]</p>
<p>OK, now we have an understanding of how much importance each persona places on each dimension.  It looks like a mess, for this example, when you try and absorb the big picture.  If you focus on a single persona, you get great clarity about what that type of customer cares about.  Look at each curve individually, then look at them all together.  If you&#8217;re thinking ahead, you&#8217;ll suspect that the Roomba is perfect for the kid doing chores.  But wait, we&#8217;ll come back to that.</p>
<p>One insight we can gain from this <em>messy</em> view of the market is that you can&#8217;t create a product that is &#8220;perfect&#8221; for all of these personas.  You have to target a specific persona, and tailor your product for that persona.</p>
<h2>Mapping Personas to Products</h2>
<p>Now we have two views of the market, along 7 dimensions.  We have assessments of the relative strength of each competitor&#8217;s offering, and we have estimates of the relative importance to each persona &#8211; for each dimension.  What we need to do is combine the two.</p>
<p>All of this analysis runs the risk of introducing a notion of <em>false precision</em> - we have a lot of data, therefore it must be accurate.  So our inclination may be to try and do some mathematically refined, scientific analysis.  I suspect that would be wasted effort, providing no additional insights, and risking leaps to the wrong conclusions.  I propose a simpler approach.</p>
<p>The analysis we really care about &#8211; which product offering is best aligned with the needs of each persona?  A simple mathematical equivalent of &#8220;which curves match the best&#8221; is an easy analysis.  By comparing the values from each competitor curve with those of each persona curve, we can create a series of &#8220;how good a fit is it?&#8221; values.</p>
<p><img class="alignnone" title="visualizing product alignment with persona goals" src="http://sehlhorst.smugmug.com/photos/524127860_uNRbS-L.png" alt="" width="450" height="327" /> [<a title="mapping product value propositions to persona goals" href="http://sehlhorst.smugmug.com/photos/524128112_dHtNH-O.png">larger image</a>]</p>
<p>Imagine a persona saying &#8220;how well does each company&#8217;s product align with my goals?&#8221;  This &#8220;simple math mashup&#8221; takes into account both &#8220;they succeed at what I care about&#8221; and &#8220;they haven&#8217;t invested in something I don&#8217;t care about (at the expense of something I do care about).&#8221;</p>
<p>You can see that the Roomba clearly wins with kids doing chores.  The rest of offerings stand out less, but do provide insight.  Now you can easily drive strategic decisions &#8211; &#8220;we want to be <em>the</em> vaccuum of choice for housekeepers&#8221; now drives some obvious emphasis on ease of use and a reduced emphasis on reducing costs.</p>
<h2>Improving The Model</h2>
<p>My two main problems with the blue ocean strategy were lack of relevance (who cares about dimension X) and magnitude (which dimension is most important?).  The model above addresses only relevance &#8211; a focus on target personas.  We can overlay some &#8220;relative importance of each persona&#8221; data, or just manually focus our efforts on each persona in series.  </p>
<p>The other <em>magnitude</em> challenge is in understanding not just which problems are important in absolute terms (kids care a lot about saving time, but not cost), but in relative terms (kids would trade an hour of time for a modicum of ease-of-use).  Essentially, <a title="defining utility curves" href="http://tynerblain.com/blog/2007/02/06/foundation-series-intro-to-utility-curves/">defining the utility-curves</a> for each persona.  For any but the largest, most saturated markets, I would hesitate to do the utility curve analysis in detail &#8211; it feels too heavyweight and un-agile.</p>
<h2>Conclusion</h2>
<p>The <em>Blue Ocean Strategy</em> book provides us with a visceral tool for visualizing relative offerings from competitors in a given market.  Combine it with the same visualization approach for personas that participate in that market, and you gain insights into which problems to solve next to achieve product success.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Personas+Make+Blue+Ocean+Strategy+Proactive+http://bit.ly/H1WLe+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/04/29/personas-and-blue-oceans/&amp;t=Personas+Make+Blue+Ocean+Strategy+Proactive" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/04/29/personas-and-blue-oceans/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>2009 Bad Usability Calendar</title>
		<link>http://tynerblain.com/blog/2009/01/13/2009bad-usability-calendar/</link>
		<comments>http://tynerblain.com/blog/2009/01/13/2009bad-usability-calendar/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 02:14:50 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[UX]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[2009 bad usability calendar]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/?p=801</guid>
		<description><![CDATA[
Netlife Research brings us the 2009 Bad Usability calendar.  Get it while it&#8217;s hot.

Download it from the 2009 bad usability calendar page on their website.  Or check out our article from last year for the 2007-2008 bad usability calendars.  They really do have some great points to make.  Two in particular got my attention this [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="bad usability calendar thumbnail" src="http://sehlhorst.smugmug.com/photos/454515968_v6kRJ-L.png" alt="" width="237" height="315" /></p>
<p>Netlife Research brings us the 2009 <em>Bad</em> Usability calendar.  Get it while it&#8217;s hot.</p>
<p><span id="more-801"></span></p>
<p>Download it from the <a title="2009 usability calendar" href="http://www.badusability.com/">2009 bad usability calendar page</a> on their website.  Or check out our article from last year for the <a title="older bad usability calendars" href="http://tynerblain.com/blog/2008/01/31/bad-usability-calendar-2/">2007-2008 bad usability calendars</a>.  They really do have some great points to make.  Two in particular got my attention this year &#8211; any guesses which months?</p>
<p>Last year, over 100K copies were downloaded.  Act now and be on the bleeding edge of the first 2% to download for 2009.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+2009+Bad+Usability+Calendar+http://bit.ly/30EhMV+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2009/01/13/2009bad-usability-calendar/&amp;t=2009+Bad+Usability+Calendar" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2009/01/13/2009bad-usability-calendar/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Use Case Management is a Tough Balancing Act</title>
		<link>http://tynerblain.com/blog/2008/02/04/balancing-use-cases/</link>
		<comments>http://tynerblain.com/blog/2008/02/04/balancing-use-cases/#comments</comments>
		<pubDate>Tue, 05 Feb 2008 05:19:33 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Prioritization]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[ROI]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Use Cases]]></category>
		<category><![CDATA[business goals]]></category>
		<category><![CDATA[corporate goals]]></category>
		<category><![CDATA[end users]]></category>
		<category><![CDATA[goal directed use cases]]></category>
		<category><![CDATA[goal-driven use cases]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[personas]]></category>
		<category><![CDATA[principal stakeholders]]></category>
		<category><![CDATA[principle stakeholders]]></category>
		<category><![CDATA[structured requirements]]></category>
		<category><![CDATA[two tier]]></category>
		<category><![CDATA[two tier requirements]]></category>
		<category><![CDATA[two tier sales requirements]]></category>
		<category><![CDATA[two-tier business model]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2008/02/04/balancing-use-cases/</guid>
		<description><![CDATA[
Learning how to write use cases can be tough, but it is simple compared to the balancing act of determining which use cases to write and how to manage the expectations of all the stakeholders that are involved.  It can be a difficult balancing act to prioritize use cases to assure that you meet [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="balancing act" title="balancing act" src="http://www.smugmug.com/photos/250633145-L.jpg" /></p>
<p>Learning how to write use cases can be tough, but it is simple compared to the balancing act of determining which use cases to write and how to manage the expectations of all the stakeholders that are involved.  It can be a difficult balancing act to prioritize use cases to assure that you meet the goals of the business while satisfying the needs of the users.</p>
<p><span id="more-631"></span></p>
<h2>Goal Driven Use Cases</h2>
<p>In <a title="how structured requirements work" href="http://tynerblain.com/blog/2006/01/04/foundation-series-structured-requirements/">the world of structured requirements</a>, we apply an approach of top-down decomposition to determine what we need to build.</p>
<p><img alt="structured requirements" title="structured requirements" src="http://sehlhorst.smugmug.com/photos/71264266-M.jpg" /></p>
<p>In an article stressing the importance of non-functional requirements,  we summarized the relationships from the above diagram as follows:</p>
<blockquote>
<ul>
<li>Goals are achieved by enabling use cases.</li>
<li>Goals drive non-functional requirements.</li>
<li>Use cases are enabled by <a title="Writing Functional Requirements to Support Use Cases" href="http://tynerblain.com/blog/2006/02/10/writing-functional-requirements-to-support-use-cases/">implementing functional requirements</a>.</li>
<li><a title="Use Case Series Introduction" href="http://tynerblain.com/blog/2005/12/18/use-case-series-introduction/">Use cases</a> influence non-functional requirements.</li>
<li>Non-Functional Requirements define the characteristics of functional  requirements.</li>
<li>Functional requirements drive design decisions</li>
<li>Design choices are restricted by constraints</li>
<li>Design choices guide implementation</li>
<li>Implementation is product</li>
</ul>
<p><cite><a title="the importance of non-functional requirements" href="http://tynerblain.com/blog/2006/05/23/non-functional-requirements-era/">Non-Functional Requirements Equal Rights Amendment</a></cite></p></blockquote>
<p>The key element, with respect to this article, is that <strong>goals are achieved by enabling use cases</strong>.  In other words, without the use cases that people* perform, the goals of the business can not be achieved.</p>
<p>[*Sometimes the use case is performed by a system - not all actors are people]</p>
<h2>Principal Stakeholders Own Business Goals</h2>
<p>We learned a lot from <a title="outside in software development" href="http://tynerblain.com/blog/2007/09/27/outside-in/"><em>Outside-In Software Development</em></a>, by Carl Kessler and John Sweitzer.  One of the important things we learned is how to understand the goals of <em>principal</em> stakeholders.  Principal stakeholders are the &#8220;owners&#8221; of the ROI that we are attempting to achieve with our product or solution.  The business has the goals, but the business is an abstract entity.  If the goal of the business is to increase sales by 10%, we can&#8217;t call up the business and ask &#8220;did we meet your goal?&#8221;  We have to call up the vice president of sales.  The business is organized so that there are people who are responsible for the initiatives and goals of the business &#8211; they are responsible for growth, profitability, costs, strategy.  The insight we got from Kessler and Sweitzer is an appreciation that this ownership lies with one or more <em>individuals</em>.</p>
<p>When a goal has an owner, we can validate that we have met the goal.  We can validate that we have satisfied the owner of the goal.  You can&#8217;t do that validation with an abstract entity, a &#8220;business&#8221;, but you can with a person.  Certainly, we can do the math ourselves, but if we want someone to pay the bills &#8211; and more importantly &#8211; invite us back to do more projects, we have to satisfy an individual.  And that individual is our principal stakeholder.</p>
<h2>Principals Own Use Cases</h2>
<p>Our principal stakeholder owns the business goal &#8211; and therefore owns the use cases that enable that goal to be achieved.  Our <a title="completeness validation with use cases" href="http://tynerblain.com/blog/2006/07/06/requirement-completeness-validation-with-use-cases/">stakeholder will validate the completeness of our use cases</a> by answering the question, &#8220;If we enable all of these use cases, will we completely meet your goal?&#8221;</p>
<h2>End Users Own Use Cases</h2>
<p><a title="benefits of user-centered design" href="http://tynerblain.com/blog/2005/12/01/user-centric-design-yields-not-so-obvious-features/">User-centered design is also one of our </a>core principles, and an acknowledged best-practice.  For many companies, it is more than mandatory &#8211; it is a way of life.  The entire software development process is sometimes <a title="how to not suck at design" href="http://tynerblain.com/blog/2006/11/15/how-to-not-suck-at-design/">built around a focus on the end users</a>.  This approach puts the user in the center.</p>
<blockquote><p>You can identify end user goals with the following approach:</p>
<ol>
<li><a title="identifying actors " href="http://tynerblain.com/blog/2007/03/13/visualize-stakeholder-analysis/">Identify the actors</a> that interact with the software.</li>
<li><a title="persona identification" href="http://tynerblain.com/blog/2006/04/17/persona-grata/">Identify the personas</a> that represent those actors &#8211; thus avoiding the <a title="elastic user syndrome" href="http://tynerblain.com/blog/2007/07/23/elastic-users/">elastic user syndrome</a>.</li>
<li>Develop an understanding of the <a title="personas and goals" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">personal goals of the personas</a> &#8211; and by extension, the actors through <a title="types of requirements gathering" href="http://tynerblain.com/blog/2007/03/26/types-of-requirements-gathering/">ethnographic research</a>.</li>
</ol>
<p><cite><a title="end user goals" href="http://tynerblain.com/blog/2007/10/18/stakeholder-goals-2/">Stakeholder Goals: Principal vs. End User</a></cite></p></blockquote>
<p>This creates what appears to be a conflict &#8211; do principals own the use cases, or do end users own the use cases?</p>
<h2>Mixing Interaction Design With Structured Requirements</h2>
<p>One approach to resolving this conflict is to eliminate it by <a title="interaction design and structured requirements" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/">mixing interaction design with structured requirements</a>.  In this approach, the interaction design component applies <em>end user ownership</em> as an input to the design, but not the content of the use cases, as the following diagram shows:</p>
<blockquote><p><img title="interaction design and structured requirements" alt="interaction design and structured requirements" src="http://sehlhorst.smugmug.com/photos/61228367-O.png" /></p>
<p>In the diagram above, the changes (relative to the Wiegers process) are marked in blue.</p>
<p>The interaction design process starts with two parallel activities. On the left is the identification of corporate goals, which is analogous to the creation of an MRD. An MRD can be a reasonable mechanism for documenting the corporate goals. It provides more detail than “Increase profits” with statements like “Increase profits with improved pricing.” On the right side is the <a title="How to create personas" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">creation of personas</a> to represent the most important users.</p>
<p><cite><a title="interaction design and requirements" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/">Interaction Design and Structured Requirements</a> </cite></p></blockquote>
<p>This approach side-steps the issue by relegating the end users to &#8220;design input&#8221; and not allowing them to contribute to prioritization and management.  For many applications, this is a great way to approach things.  Specifically, it works very well when the user&#8217;s goals are tightly coupled or highly aligned with the principal stakeholder&#8217;s goals.</p>
<h2>When Goals Conflict</h2>
<p>User goals are not always aligned with stakeholder goals.  In <a title="conflicts in stakeholder goals" href="http://tynerblain.com/blog/2007/10/18/stakeholder-goals-2/">our earlier article on identifying these conflicts</a>, we proposed a simple grid view for identifying these conflicts.<br />
<img title="grid of goals in conflict" alt="grid of goals in conflict" src="http://sehlhorst.smugmug.com/photos/210042793-M.jpg" /></p>
<p>In that article, we looked at situations where the goals of the actor were primarily aligned with those of the principal stakeholder, and therefore the business.  We discussed using the grid to inspire solutions that removed the conflicts.  <em>Two birds with one stone</em> would be the easiest way to summarize.</p>
<p>What about when goals are <em>implicitly</em> in conflict &#8211; or even diametrically opposed?  We&#8217;ve worked on systems where that is exactly the case.  Consider a two-tier sales model, and products / websites designed for the people in the second tier.</p>
<h2>Two-Tier Sales Models</h2>
<p>Here are some common business models where the users have goals that are directly in opposition to the goals of the principal stakeholders.</p>
<ul>
<li><strong>Automotive Manufacturer and Dealer</strong>.  A website, designed by a car manufacturer, to allow dealers to improve their ability to sell cars.  The automotive manufacturer makes money by selling cars to the end customer, and the dealer makes money by causing the sale to happen.  The manufacturer is compensated by profits on the sale, whereas the dealer is compensated simply by making the sale.  In other words, the dealer is motivated to lower the price because a sale at any price generates the same profit for the dealer.  The manufacturer is motivated to raise the price because fewer sales at a higher margin generate the same profit, but higher ROA (return on assets) than more sales at a lower margin.  This is an implicit conflict.</li>
<li><strong>Book Publisher and Book Retailer</strong>.  A book publisher sets a price for sale to the retailer, and a suggested (list) price to the end customer.  The retailer will typically pay a negotiated discount, in the form of a percentage off list, for the book.  Any books not sold by the retailer are returned to the publisher or (usually) destroyed.  The retailer does not have to pay for books that are not sold.  The retailer has limited shelf-space, and makes money based upon a combination of the size of the discount and the number of books that are sold, regardless of publisher.  The retailer is therefore incented to increase the discount, and thus increase profits for a particular title &#8211; and the publisher is incented to reduce the discount, and thus increase the profits for a particular title.  Since the list prices are fixed, the retailer negotiates the discount, and as leverage over the publisher, gets to influence the placement of the book within the store.  Each publisher is forced to compete with other publishers.  These goals are also in conflict.</li>
<li><strong>High-Tech Equipment Manufacturer and Value-Added Reseller</strong>.  A value-added reseller (VAR) provides solutions to end customers.  They do this by combining products from manufacturers, and adding value &#8211; in the form of planning, custom engineering, installation services, etc.  The VAR will negotiate a price with the end customer for a solution.  The typical VAR sells products from multiple high-tech companies.  The VAR will negotiate with the manufacturers to get the lowest possible prices from the manufacturers.  The manufacturer wants the end-customer price (when it includes their equipment) to be as low as possible &#8211; to increase the number of sales that are made.  The manufacturer gets the same profit (based on the price to the VAR) regardless of the end-customer price.  Every dollar that the end-customer saves, the VAR loses in profit.  The VAR makes profit on the difference between price-to-the-VAR and the final selling price.  The VAR will also want to drive down the price it pays to the manufacturer.  Reducing the price-to-the-VAR transfers profits directly from the manufacturer to the VAR.  These goals are diametrically opposed.</li>
</ul>
<p>When goals are in conflict like this, we can&#8217;t just relegate the &#8220;end user&#8221; goals to design inputs &#8211; we have to incorporate them into the prioritization process.  In these examples, the &#8220;end users&#8221; are the VAR, the book retailer, and the automotive dealer.</p>
<p>Imagine that the high-tech equipment manufacturer sells networking hardware.  The manufacturer has an internal (direct) sales force, as well as the VAR channel (indirect) sales force.  The manufacturer identifies tools that help sales reps to close deals.  Large purchases are commonly made at as much as 80% off list price.  The list prices are irrelevant &#8211; they are not even guidelines in many cases.  So the manufacturer develops tools to help sales reps know what prices to set for end customers.</p>
<p>Internal sales reps have generally well-aligned goals with principal stakeholders.  The sales rep will be compensated based on a combination of revenue (sales) and margin (profits).  This compensation model creates implicit alignment between the user goals (get a bonus) and the company goals (make profitable sales).</p>
<p>One approach to helping the sales rep close <em>profitable</em> deals is to share an indication of the profitability of the deal with the rep.  The rep can (will!) set a price that is designed to maximize the sales rep&#8217;s bonus.  If the compensation system is well designed &#8211; this is also optimal for the business, and therefore the principal stakeholder.  The sales rep will get increased compensation for raising the price (and still closing the deal) by getting a percentage of the increase in margin.  The sales rep is motivated to increase the manufacturer&#8217;s profits.</p>
<p>The VAR, however, should not know the profitability of a particular transaction.  The VAR is motivated to lower the price (the price to the VAR) as much as possible &#8211; even at the expense of losing a &#8220;profitability bonus.&#8221;  If the VAR is given a percentage of the increased margin (to the manufacturer) it comes at the cost of losing 100% of the change in price to the VAR.  Remember, the VAR makes money on the difference between the price from the manufacturer, and the price to the customer.</p>
<p>Depending on the manufacturer&#8217;s business model, this could lower the priority of a margin-inspection capability, or dramatically raise the priority of features that restrict margin-viewing to only internal sales reps.</p>
<p>Also remember that the manufacturer and the VAR also have aligned goals &#8211; like closing the deal.  And the VAR can close the deal with the manufacturer, or with products from a competitor.  So the manufacturer is incented to provide valuable functionality to the VAR.  The manufacturer cannot ignore the VAR&#8217;s needs, or the VAR will work with a competitor and the manufacturer will lose all the business.</p>
<p>You have to determine the value <em>to the principal stakeholder</em> of the value of the feature to the end user.  In other words &#8211; even if a feature &#8220;hurts&#8221; the manufacturer, is the pain &#8220;worth it&#8221; because of the value of the relationship and expected future business that the company will do with the VAR?</p>
<p>Once the value of all of the functionality is identified, you can prioritize it.  <a title="valuing use cases for pain and gain" href="http://tynerblain.com/blog/2007/10/25/stakeholder-value-matrix/">An enlightening way to visualize this value is with a value-delivery matrix</a>.  Thanks again to Roger Burlton for inspiring our approach to prioritizing based upon a combination of pain and gain.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Use+Case+Management+is+a+Tough+Balancing+Act+http://bit.ly/binBW+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2008/02/04/balancing-use-cases/&amp;t=Use+Case+Management+is+a+Tough+Balancing+Act" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2008/02/04/balancing-use-cases/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Bad Usability Calendar 2008</title>
		<link>http://tynerblain.com/blog/2008/01/31/bad-usability-calendar-2/</link>
		<comments>http://tynerblain.com/blog/2008/01/31/bad-usability-calendar-2/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 05:35:28 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Austin TX]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[bad usability]]></category>
		<category><![CDATA[bad usabilty]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[usabilty]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2008/01/31/bad-usability-calendar-2/</guid>
		<description><![CDATA[
Netlife Research (company website in Norwegian) has done it again.  Their 2008 Bad Usability Calendar is here and it is great.  So great that it is hard to pick a favorite.  Download it here.  2007 has more great examples.
[Note: This is a short post- just got back from the Velvet Revolver [...]]]></description>
			<content:encoded><![CDATA[<p><img title="calendar" alt="calendar" style="width: 190px; height: 269px" src="http://www.smugmug.com/photos/249609356-L.jpg" /></p>
<p><a title="Netlife Research" href="http://www.badusability.com/about/">Netlife Research</a> (<a title="Netlife Research NO" href="http://www.netliferesearch.no/om_oss/kontakt_oss/netlife_research_just_another_ux_company">company website in Norwegian</a>) has done it again.  Their 2008 Bad Usability Calendar is here and it is great.  So great that it is hard to pick a favorite.  Download it <a title="bad usability calendar" href="http://www.badusability.com/">here</a>.  2007 has <a title="2007 usabilty calendar" href="http://tynerblain.com/blog/2006/11/08/bad-usability-calendar/">more great examples</a>.</p>
<p>[Note: This is a short post- just got back from the <a title="VR" href="http://www.velvetrevolver.com/">Velvet Revolver</a> concert at <a title="Stubbs" href="http://www.stubbsaustin.com/">Stubb's</a>.  Living in Austin rocks!]</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Bad+Usability+Calendar+2008+http://bit.ly/3p5M4Q+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2008/01/31/bad-usability-calendar-2/&amp;t=Bad+Usability+Calendar+2008" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2008/01/31/bad-usability-calendar-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>User Adoption ROI</title>
		<link>http://tynerblain.com/blog/2008/01/17/user-adoption-roi/</link>
		<comments>http://tynerblain.com/blog/2008/01/17/user-adoption-roi/#comments</comments>
		<pubDate>Fri, 18 Jan 2008 03:48:24 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[ROI]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[usability metrics]]></category>
		<category><![CDATA[user adoption]]></category>
		<category><![CDATA[user adoption metrics]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2008/01/17/user-adoption-roi/</guid>
		<description><![CDATA[
You want your software to be used, not to sit on the shelf.  You can&#8217;t achieve the ROI of your software if people don&#8217;t use it. And you can&#8217;t achieve the ROI of your software by forcing people to use it either.  Some will fail to achieve the benefits, and others will delay using [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="using or bypassing the software" title="using or bypassing the software" src="http://www.smugmug.com/photos/244541345-L.jpg" /></p>
<p>You want your software to be used, not to sit on the shelf.  You can&#8217;t achieve the ROI of your software if people don&#8217;t use it. And you can&#8217;t achieve the ROI of your software by forcing people to use it either.  Some will fail to achieve the benefits, and others will delay using it or refuse to use it entirely.  You have to make them want to use it, and you have to design the software for the users who must use it.  Otherwise, you won&#8217;t achieve the ROI.</p>
<p><span id="more-624"></span></p>
<h2>The ROI of User Adoption</h2>
<p>The image above is great &#8211; it shows one person choosing to use the software, and one person choosing to do the work by hand instead.  It is a classic user adoption problem.  The good thing about it is that you can talk in concrete terms about the goals of your software, and how user adoption plays a role.</p>
<p>Let&#8217;s start with a definition of return on investment (and read the full article for more details and examples)</p>
<blockquote><p>ROI is the acronym for return on investment. Another way to think of it is “How much profit will we make if we invest in this project?” Profit is revenue minus costs. Technically, the question should be “How much profit will we make, relative to our investment, if we invest in this project?”</p>
<p><cite><a title="Definition of ROI" href="http://tynerblain.com/blog/2006/02/01/definition-of-roi-return-on-investment/">Definition of ROI &#8211; Return on Investment</a></cite></p></blockquote>
<p>OK, with a definition of ROI, you have to develop a model for return, and one for investment.  The model for investment is built by looking at the cost of developing the software.  That defines how much it costs.  Assume it costs $1,000,000 to develop and deploy the solution.</p>
<p><a title="ROI calculation tips" href="http://tynerblain.com/blog/2007/02/08/five-roi-calculation-tips/">The model for return is a little more complicated</a>.</p>
<p>For our user adoption example, assume that the software saves the company $1 every time it is used, relative to whatever the company does in the absence of the software.  There are several ways to calculate the ROI of design, we&#8217;re picking one Assume we have 1000 users, each of whom would use (or not use) the software 10 times per day.  That is a <em>potential</em> savings of $10,000 per day.  Call it $2,000,000 per year once all the users are using it all the time.</p>
<p>Unfortunately, many people stop there.   They see a 6-month <a title="definition of payback period" href="http://tynerblain.com/blog/2006/03/19/definition-of-payback-period/">payback period</a>, they fund the project, and they stop thinking about it &#8211; the money is already in the bank.  But you&#8217;re not going to do that.</p>
<p>Imagine that this is your project.  You write perfect requirements, you have an excellent development team, and the software works perfectly &#8211; saving a dollar every time it is used.  The problem is, only 100 people are willing to use the software.  Now, instead of a 6-month payback period, it takes five <strong>years</strong> to recover the cost of developing the software.</p>
<h2>The False Promise of the Mandate</h2>
<p>&#8220;Not a problem <em>for us</em>,&#8221; you say.  &#8220;Everyone must use the software.  Or they&#8217;re fired!&#8221;</p>
<p>Many corporate IT departments work this way.  The business tells them what they need (&#8220;Save us a dollar!&#8221;), and the IT guys gather requirements, develop a perfect application and confirm that it saves a dollar every time someone uses it.  And then they mandate that everyone use it.  Simple.  6-month payback.</p>
<p>There are a couple problems with this approach.</p>
<ol>
<li>Not everyone uses it right away, even if everyone is required to use it.</li>
<li>Not everyone uses it <em>effectively</em>, even when required to use it.</li>
</ol>
<p>The explanation is a little less obvious, but the brutal reality of it is just as true.</p>
<h2>Delayed User Adoption</h2>
<p>You issue a mandate &#8211; all 1000 users will use the software!  The users are conveniently spread out into 10 business units, each with 100 users.  One of those business units will go first.  And your software is a disaster (we&#8217;ll get to #2 in a minute).  The plan was to pilot the software with the first 100 users, then roll it out a month later to the other 900.  No problem &#8211; 7 month payback, and less risk to the business.</p>
<p>The problem is that the people running the business units &#8211; and thereby managing the users &#8211; are smart too.  They see the train wreck that Tom&#8217;s department became, and they refuse to use the software.  They have their own financial targets, and they don&#8217;t want to jeopardize them.  These business unit directors, if they lack the power, will escalate, until their demands are heard.</p>
<p>What&#8217;s the first place in the hierarchy where there&#8217;s a common manager?  Is it the CEO?  Maybe you&#8217;re lucky, and it is only a couple VP&#8217;s arguing about it.  What conclusion do you think they will reach when presented with the following arguments:</p>
<ul>
<li>If we use the software, we will miss our numbers &#8211; it slows people down.  And that will cost <em>you</em> $X.</li>
<li>But we want them to use the software &#8211; they <em>have to</em>.  If they were smarter, it would save money</li>
</ul>
<p>Even if the argument isn&#8217;t accurate &#8211; who will win?  Best case, your roll-out is delayed.  Worst case, it is killed before it ever gets a chance to work.</p>
<h2>Ineffective User Adoption</h2>
<p>It turns out, after watching the pilot group, that <em>expert users</em> can in fact save a dollar every time.  <a title="competent users" href="http://tynerblain.com/blog/2006/04/02/competent-users-and-software-design/"><em>Competent</em> users</a> break even &#8211; there&#8217;s no savings for them.  And <em>beginners</em> were better off with the old solution.  It was less efficient, but the new way is so hard that they can&#8217;t do it well.</p>
<p>You&#8217;ve mandated that people use the software.  Since they didn&#8217;t otherwise <em>want</em> to use it, you had to spend a bunch of energy (and money, in <a title="opportunity cost definition" href="http://tynerblain.com/blog/2006/02/24/definition-of-opportunity-cost/">opportunity cost</a>) to make it happen.  The rollout was delayed, and at the end of the day, you break even.  Most users have no savings, and the few that do are offset by those that caused an increase in cost.</p>
<p>Mandating user adoption creates a false sense of confidence, and does not assure ROI &#8211; it only assures adoption.  We&#8217;ll say that again, to let it sink in.</p>
<blockquote><p><img title="handcuffs" alt="handcuffs" src="http://www.smugmug.com/photos/244554578-L.jpg" /></p>
<p>Mandating user adoption does not assure ROI &#8211; it only assures adoption.</p></blockquote>
<p>So what can you do?</p>
<h2>Measuring User Adoption</h2>
<p>As <a title="product managers and user experience" href="http://tynerblain.com/blog/2007/03/05/product-management-and-ux/">product managers who care about user adoption</a>, our first thought is &#8220;measure it!&#8221;  The biggest challenge is in measuring the right thing.</p>
<p>We can&#8217;t just measure <em>how many clicks</em>, because while that might <a title="correlation and causation explained" href="http://tynerblain.com/blog/2007/10/16/correlation-and-causality/">correlate</a> with ease of use &#8211; it does not necessarily cause increased user adoption.</p>
<p>To stay aligned with the ROI model, we have to measure, directly, that user adoption is meeting the forecast used to create the ROI model.  The only measurement that is assured to be an accurate reflection of user adoption is measurement of user adoption directly.</p>
<h2>Prevent Mistakes, Then Monitor Them</h2>
<p>If we measure poor user adoption after it has proven to be inadequate, that doesn&#8217;t help very much.  It is generally accepted that a good design leads to higher user adoption rates.  In the case of the &#8220;false mandate,&#8221; good design yields faster roll-outs and allows more users to be more effective with the software.</p>
<p>There are also other <a title="measuring the ROI of design investments" href="http://tynerblain.com/blog/2007/07/30/measuring-the-roi-of-design/">reasons to invest in good design</a>.</p>
<p>The right solution is to invest in good design &#8211; targeting <a title="usability learning curves" href="http://tynerblain.com/blog/2007/03/12/software-usability-learning-curves/">competent users</a> (<a title="products for novice users" href="http://tynerblain.com/blog/2007/03/23/dont-make-products-too-simple/">not novice users</a>) to achieve the desired ROI.  A good design is easier to learn too.  You can track the rate of improvement among users.</p>
<p>Here&#8217;s a chart from an article that goes into learning curves in more depth:</p>
<blockquote><p><img alt="80% learning curve frequencies" title="80% learning curve frequencies" src="http://sehlhorst.smugmug.com/photos/135449754-M.jpg" /></p>
<p>[<a title="larger 80% learning curve chart" href="http://sehlhorst.smugmug.com/photos/135449796-O.jpg">larger image</a>]</p>
<p>The graph shows that for a weekly frequency, after 16 weeks, the task time has reduced from 300 seconds to 100 seconds. With a daily frequency, the task time is even lower &#8211; about 60 seconds. This graph shows nothing other than converting the <em>academic</em> learning curve graph into one that incorporates calendar time and frequency of occurance.</p>
<p>Note the odd, vertical drops in task time during week 1. This is just a manifestation of looking at a weekly time scale. For a task that happens once per hour, the user will rack up 40 repetitions during the first week. From a decision-making standpoint, you don’t have time to react to that rapid rate of learning, so it is ok that it is collapsed on this graph.</p>
<p><cite>Software Usability and Learning Curves</cite></p></blockquote>
<p>Thanks, now go hire some designers and achieve your ROI!</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+User+Adoption+ROI+http://bit.ly/zUVlz+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2008/01/17/user-adoption-roi/&amp;t=User+Adoption+ROI" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2008/01/17/user-adoption-roi/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>You Are Creating Bugs In Your Software</title>
		<link>http://tynerblain.com/blog/2008/01/14/you-are-creating-bugs/</link>
		<comments>http://tynerblain.com/blog/2008/01/14/you-are-creating-bugs/#comments</comments>
		<pubDate>Tue, 15 Jan 2008 03:19:16 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements gathering]]></category>
		<category><![CDATA[Test Automation]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[good requirements techniques]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[reducing bugs]]></category>
		<category><![CDATA[requirements prevent bugs]]></category>
		<category><![CDATA[sdlc]]></category>
		<category><![CDATA[software development lifecycle]]></category>
		<category><![CDATA[source of bugs]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2008/01/14/you-are-creating-bugs/</guid>
		<description><![CDATA[
No matter how good your quality process is, you are introducing bugs.  This article reviews the places where bugs are introduced in the software development process (from stakeholders to users), and reviews ways to address those bugs.

One way to identify the sources of bugs is by listening to how people tell you about the [...]]]></description>
			<content:encoded><![CDATA[<p><img title="bug killer" alt="bug killer" src="http://www.smugmug.com/photos/243520519-L.jpg" /></p>
<p>No matter how good your quality process is, you are introducing bugs.  This article reviews the places where bugs are introduced in the software development process (from stakeholders to users), and reviews ways to address those bugs.</p>
<p><span id="more-623"></span></p>
<p>One way to identify the sources of bugs is by listening to how people tell you about the bugs.</p>
<ol>
<li>&#8220;That is not what I want&#8221;</li>
<li>&#8220;That is not what I said&#8221;</li>
<li>&#8220;That is not what I meant&#8221;</li>
<li>&#8220;That is not how it is supposed to work&#8221;</li>
<li>&#8220;That is not what they meant&#8221;</li>
<li>&#8220;That is not what I want it to do&#8221;</li>
</ol>
<p>Visually, you can think of the development process (regardless of methodology) like the following flow</p>
<p><img alt="where bugs enter the process" title="where bugs enter the process" src="http://sehlhorst.smugmug.com/photos/45965627-L.png" /></p>
<p>Each of the six sources of bugs is labeled in the above flow.  The article, <cite><a title="Where bugs come from" href="http://tynerblain.com/blog/2006/01/22/where-bugs-come-from/">Where Bugs Come From</a></cite>, goes into a detailed explanation of each source of bugs.  This article looks at what you can do to improve the ability of your process to reduce these bugs.  I have been a stakeholder, a product manager, a business analyst, a developer and a tester.  And I&#8217;ve been guilty of all of these offenses at one time or another.  When I say <em>you</em>, I also mean <em>me</em>.  So chill.</p>
<h2>&#8220;That is not what I want&#8221;</h2>
<p>Stakeholders introduce bugs into the process by being unable to define what they want.  Some agile methodology proponents argue that as a stakeholder, you <em>can&#8217;t</em> know what you want until you have something you<em> don&#8217;t want</em> in front of you.  In other words, those agilists are giving up on trying to prevent these errors &#8211; they claim it is futile.</p>
<p>You can change your mind.  The team could be dealing with &#8220;That is not what I want <em>now</em>&#8221; &#8211; and change is something that can not be prevented &#8211; although the impact of change can be mitigated.  <a title="11 iterative development models" href="http://tynerblain.com/blog/2007/03/09/agile-software-development-methods/">Iterative development</a> and course-correction through getting immediate feedback is one way to do that.  <a title="iterative specification and prototypes" href="http://tynerblain.com/blog/2006/02/21/software-requirements-specification-iteration-and-prototyping/">Prototyping</a> is another method of course correction.  Prototypes can also be used to<a title="implicit requirements" href="http://tynerblain.com/blog/2006/11/17/gathering-implicit-requirements/"> elicit <em>implicit</em> requirements</a>.</p>
<p>But that still avoids trying to directly address the issue of <em>you </em>not effectively describing what you actually want.  There are ways to improve your team&#8217;s engagement with you, so that you actually say what you want.  First, an emphasis on <a title="writing valuable requirements" href="http://tynerblain.com/blog/2006/05/30/writing-valuable-requirements/"><em>valuable</em> requirements</a> drives critical thinking about <em>why</em> you need a particular capability or feature.  One approach to achieve valuable requirements is to <a title="The reason why" href="http://tynerblain.com/blog/2006/02/21/the-reason-why/">question their justification</a>.</p>
<p>The key to making this work is to make sure you <a title="getting approval for your requirements" href="http://tynerblain.com/blog/2007/01/09/requirements-approval/">are approving your requirements</a>.  And watch out for the <a title="approval anti-patterns" href="http://tynerblain.com/blog/2007/01/09/requirements-approval/"><em>anti-patterns</em></a> in the article.</p>
<h2>&#8220;That is not what I said&#8221;</h2>
<p>Business analysts, product managers, and requirements analysts introduce bugs into the process through misunderstanding the stakeholders.  Using the techniques above to stay on top of changes in stakeholder needs is not enough.  Even when you effectively engage your stakeholders so that they are <em>self-aware</em> and can articulate exactly <a title="another use for why" href="http://tynerblain.com/2006/10/24/another-use-for-why/">what they need and why</a>, you still have a problem.</p>
<p>You can improve <a title="Ten active listening skills" href="http://tynerblain.com/blog/2007/03/15/ten-active-listening-skills/">how you listen</a>, and you can improve how you document what you heard.  Make sure that you write <a title="complete requirements" href="http://tynerblain.com/blog/2006/06/08/writing-complete-requirements/">complete</a>, <a title="consistent requirements" href="http://tynerblain.com/blog/2006/06/09/big-ten-rules-writing-consistent-requirements/">consistent</a> and <a title="unambiguous requirements" href="http://tynerblain.com/blog/2006/06/12/writing-unambiguous-requirements/">unambiguous </a>requirements.  While you&#8217;re at it &#8211; make sure you are <a title="correct requirements" href="http://tynerblain.com/blog/2006/10/30/writing-correct-requirements/">writing your requirements correctly</a>.</p>
<h2>&#8220;That is not what I meant&#8221;</h2>
<p>Developers can misinterpret requirements.  While there are situations where a requirement is adequately expressed, but the developer is not capable of understanding, that is not the norm.  Developers are smart.  The onus is on the person writing requirements to make sure that they are <a title="writing for the purpose of reading" href="http://tynerblain.com/blog/2006/10/04/writing-for-the-purpose-of-reading/">written for the audience</a>.  So, even though the source of these bugs appears to be the developers, it is actually your documentation.  If your documents need to <a title="Active listening and cultural cues" href="http://tynerblain.com/blog/2005/12/11/when-%E2%80%98no%E2%80%99-means-%E2%80%98yes%E2%80%99/">span cultural chasms</a>, then that&#8217;s your reality.</p>
<p>Make sure you write your requirements <a title="ambiguous requirements" href="http://tynerblain.com/blog/2006/06/12/writing-unambiguous-requirements/">unambiguously</a>, so that they are not misinterpreted.  Make sure that they are feasible<a title="attainable requirements" href="http://tynerblain.com/blog/2006/06/07/writing-attainable-requirements/"> requirements</a>, and that they do not <a title="don't specify design in your requirements" href="http://tynerblain.com/blog/2006/06/02/writing-design-free-requirements/">specify design</a>.  The <a title="concise requirements" href="http://tynerblain.com/blog/2006/05/31/writing-concise-requirements/">requirements also need to be concise</a> without being overly terse.</p>
<h2>&#8220;That is not how it is supposed to work&#8221;"</h2>
<p>Developers should test what they create.  Given an understanding of what you believe the code is supposed to do, you should test that it actually does it.  This is the stereotypical bug &#8211; we asked for X, and it doesn&#8217;t work.  <a title="continuous integration" href="http://tynerblain.com/blog/2006/05/08/foundation-series-continuous-integration/">Continuous integration</a> is the most effective technique for addressing bugs that are introduced at this point in the process.</p>
<p>In more complex situations, you can apply <a title="test smarter not harder part 1" href="http://tynerblain.com/blog/2007/12/25/test-smarter-not-harder-1/">more</a> <a title="test smarter not harder part 2" href="http://tynerblain.com/blog/2007/12/27/test-smarter-not-harder-2/">advanced</a> <a title="test smarter not harder part 3" href="http://tynerblain.com/blog/2008/01/02/test-smarter-not-harder-3/">techniques</a> to assure that your testing is complete.</p>
<h2>&#8220;That is not what they meant&#8221;</h2>
<p>The testing team can also misinterpret requirements.  This is a source of <em>false positive</em> bugs &#8211; even when the developers properly interpret the requirements, a bug may be lodged against their code when there is no bug.  That&#8217;s why we have the ability to mark issues as &#8220;not a bug&#8221; when closing them.  Apply the same rules for well-written requirements and you will also address this issue.  Further, make sure that your requirements can be <a title="testable requirements" href="http://tynerblain.com/blog/2005/11/30/how-to-deal-with-untestable-requirements-rewrite-them/">measurable</a>, or <a title="verifiable requirements" href="http://tynerblain.com/blog/2006/06/13/writing-verifiable-requirements/">verifiable</a>.  We recently wrote more about <a title="testing your requirements" href="http://tynerblain.com/blog/2008/01/09/testing-your-requirements/">why you should make requirements testable</a>.</p>
<h2>&#8220;That is not what I want it to do&#8221;</h2>
<p>User education is the key here.  Users should be encouraged to provide feedback about your product.  You don&#8217;t want to discourage feedback, you want to minimize the number of false positives.  False positives come from users misinterpreting how the application is behaving &#8211; a sign of poor design.  False positives also come from users not understanding what the application can (or should) do.</p>
<p>You can address design issues by focusing on <a title="designing for users" href="http://tynerblain.com/blog/2005/12/01/user-centric-design-yields-not-so-obvious-features/">design with the user in mind</a>.  And you can educate the users through a combination of training and with a novel approach to documentation.  Document the product in terms of <a title="goal driven documentation" href="http://tynerblain.com/blog/2006/10/09/goal-driven-documentation/">what users are trying to accomplish</a>, in the context of <a title="use case driven documentation" href="http://tynerblain.com/blog/2006/10/10/use-case-driven-documentation/">how they are trying to do it</a>.</p>
<ol />
<h2>Conclusion</h2>
<p>There are a lot of people involved in the software development lifecycle.  As people, we introduce bugs.  As informed software professionals, we also know how to address many of them.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+You+Are+Creating+Bugs+In+Your+Software+http://bit.ly/Cu2L2+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2008/01/14/you-are-creating-bugs/&amp;t=You+Are+Creating+Bugs+In+Your+Software" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2008/01/14/you-are-creating-bugs/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Global Actor Hierarchies and Personas</title>
		<link>http://tynerblain.com/blog/2007/12/20/global-actor-hierarchies-and-personas/</link>
		<comments>http://tynerblain.com/blog/2007/12/20/global-actor-hierarchies-and-personas/#comments</comments>
		<pubDate>Fri, 21 Dec 2007 04:34:01 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Requirements Models]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[actor hierarchies]]></category>
		<category><![CDATA[actor hierarchies and personas]]></category>
		<category><![CDATA[actor hierarchy]]></category>
		<category><![CDATA[actors]]></category>
		<category><![CDATA[actors and persona]]></category>
		<category><![CDATA[actors and personas]]></category>
		<category><![CDATA[global actor hierarchies]]></category>
		<category><![CDATA[global actors]]></category>
		<category><![CDATA[global hierarchies]]></category>
		<category><![CDATA[global personas]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[managing requirements]]></category>
		<category><![CDATA[persona]]></category>
		<category><![CDATA[personal goals]]></category>
		<category><![CDATA[personas]]></category>
		<category><![CDATA[requirements management]]></category>
		<category><![CDATA[use case to actor]]></category>
		<category><![CDATA[use cases]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/12/20/global-actor-hierarchies-and-personas/</guid>
		<description><![CDATA[
We use actor hierarchies to organize the different users of a system. Different people play different roles, and thus do different jobs. We use different actors to identify and organize those people. When deploying a system globally, we usually discover people that do the same jobs, but do them differently.  Incorporating the notion of [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="Actor Hierarchy" title="Actor Hierarchy" src="http://sehlhorst.smugmug.com/photos/116706205-M.png" /></p>
<p>We use actor hierarchies to organize the different users of a system. Different people play different roles, and thus do different jobs. We use different actors to identify and organize those people. When deploying a system globally, we usually discover people that do <em>the same</em> jobs, but do them <em>differently</em>.  Incorporating the notion of personas lets us deal with this.</p>
<p><span id="more-612"></span></p>
<h2>Why Actor Hierarchies?</h2>
<p>User-centered, or <a title="user centric design" href="http://tynerblain.com/blog/2005/12/01/user-centric-design-yields-not-so-obvious-features/">user-centric design</a> is an approach to developing software that focuses, as the name implies, on the users of the system. When designing the solution &#8211; and more importantly, when defining the requirements for the system, <a title="how to not suck at design" href="http://tynerblain.com/blog/2006/11/15/how-to-not-suck-at-design/">special attention is placed on the users</a> of the system. More specifically, center stage is devoted to developing software that helps the users accomplish their goals.</p>
<p>From a requirements perspective, the key is to acknowledge that there are different types of users, doing different types of work with the software. It is reasonable to conclude that they will have different needs. An <a title="actor hierarchies" href="http://tynerblain.com/blog/2006/12/13/actor-hierarchies/">actor hierarchy</a> provides a way to organize the different needs of the people doing different jobs.  [Note: These are the same <a title="how to read a formal use case" href="http://tynerblain.com/blog/2006/06/26/foundation-series-how-to-read-a-formal-use-case/"><em>actors</em> that are identified in use cases</a>.]</p>
<h2>A Simple Actor Hierarchy</h2>
<p>Let&#8217;s start by creating a simple actor hierarchy. We&#8217;ll build on this incrementally as we add more complexity to our user base. We&#8217;ll look at a hierarchy for sales representatives (reps) for a company that manufactures goods for sale to other businesses. Each business to which the company sells products is known as an account.</p>
<p><img title="sales rep hierarchy" alt="sales rep hierarchy" src="http://sehlhorst.smugmug.com/photos/234437216-L.jpg" /></p>
<p>The hierarchy represents an approach to classification of sales reps. Each successive level of the hierarchy is more specific than the previous level. All employees who sell products are considered to be sales reps (the top level in the hierarchy). When the company sells products to its accounts, it is not always obvious <em>which</em> products should be sold. In those cases, an engineer is brought in to help determine the exact need, and suggest the right products to sell. This engineer is known as a <em>technical sales rep</em> and the technical sales rep works with an <em>account</em> rep to determine the right products and terms to close the deal. The account rep is responsible for making the individual sale, and occasionally gets help from the technical sales rep to do it.</p>
<p>The hierarchy shows that all sales reps are either technical reps or account reps. If an employee is a sales rep, then he must be one of the two choices.</p>
<p>Account reps are further divided into two groups &#8211; representatives who work with large accounts, and reps who work with small accounts. The company currently considers accounts that make more than $500,000 in purchases per year to be large accounts, and the rest are small accounts. The main difference in behavior is that a large account rep works with only one customer &#8211; and in fact, for <em>really</em> large accounts, there may be multiple representatives for a single account. Small account reps, however, each work with more than one account, maybe even dozens of accounts.</p>
<p>You could argue, in the abstract, that large and small account reps should not be treated as different types of actors &#8211; because they all manage relationships with customers and sell products. However, there is enough of a difference (in our hypothetical example) between the jobs of the two types of reps that it is worth treating them as separate actors.</p>
<p><img title="account rep hierarchy" alt="account rep hierarchy" src="http://sehlhorst.smugmug.com/photos/234462198-L.jpg" /></p>
<p>In our example, the large account reps are focused on account retention, and maintaining relationships with a single customer. These reps are focused on account <em>retention</em> and are usually managing the upgrade cycle for their customers. The upgrade cycle is when a customer replaces their existing, worn out or obsolete equipment with new equipment. Small account reps might be working with really large <em>potential</em> customers who currently buy from the competition.  These small account reps are focused on <em>acquisition</em> and growth. They are also trying to manage and create relationships in an attempt to grow the customers until they become large accounts. Small account reps are also managing multiple customers, and have additional activities associated with managing that complexity.</p>
<h2>Global User Base</h2>
<p>The situation above describes how the company (or if you have a product management hat on &#8211; <a title="know your customer's market" href="http://tynerblain.com/blog/2006/06/27/know-thy-customers-markets/">the companies in the target market segment</a>) organizes their sales force in one region. What do you do when the the company has operations around the world? If all global operations are the same, then you don&#8217;t do anything. It is a rare company that works this way. Most global companies have grown their regional businesses (where a region might be Europe or Asia, or it might be China or India) independently. This could be do to growth by acquisition, or the parallel growth of separate regions managed separately.</p>
<p>In different regions, companies often have different business models. They also usually deal with customers in different ways. These differences may manifest from varied local business practices, different characteristics of the customers, or different levels of maturity in the market for the products being sold. There are also differences in regional regulations, policies, and laws &#8211; although you should generally manage those as variations in business rules, not business practices. We&#8217;ll side-step that layer of complexity for the purposes of this article. Pretend that the same laws, policies, and regulations are in effect in all of the regions.</p>
<p>The same general actor hierarchy can serve to represent the sales reps in multiple regions, with some modifications to account for the differences. Consider for our example, that the company sells products both in North America and in Latin America. The actor hierarchy above describes how the sales team in North America. The company&#8217;s operations are a little bit different in Latin America (for our example).</p>
<p>Latin American operations are relatively new to the company. Where the company has a well established market in North America, it has relatively low market share but very rapid growth in Latin America.  As a result of the way the company&#8217;s business has evolved in the two different regions, there are two distinct differences between the two regions in the way that sales reps are organized.</p>
<ol>
<li>Technical Sales Reps.  In North America, technical sales reps (TSRs) are salaried employees, who participate in a profit sharing program.  In Latin America, the technical sales reps have a base salary, but sales-commissions make up a large portion of their compensation.  The North American TSRs are therefore incented to propose solutions that are highly profitable (thus increasing their profit sharing bonuses).  The Latin American TSRs are incented to propose solutions that may sacrifice profitability in exchange for increased revenue (thus increasing their commissions) .</li>
<li>Small Account Reps.  In North America, small account reps, like all account reps, are employees of the company, and work on commission.  In Latin America, small account reps are <em>not</em> employees of the company.  Small account reps are third-party sales people.  The model is very similar to independent insurance agents.  The small account reps, when trying to bid on a job, can propose solutions from the company or from one of the competitors.  The third party small account rep also gets to set the price that <em>his</em> customer will pay for the products, and <em>negotiate</em> the price that the company will accept &#8211; pocketing the difference.</li>
</ol>
<p>In both situations, the user populations are different, and will behave differently.  The TSRs in both regions do fundamentally the same work &#8211; but with different motivations.  The Small account reps in Latin America, are markedly different from the ones in North America &#8211; in motivation, relationship with the company, and the work that they do.</p>
<h2>Using Personas To Express Regional Differences</h2>
<p><a title="personas" href="http://tynerblain.com/blog/2006/04/17/persona-grata/">Personas </a>provide an effective way to describe archetypes of classes of users.  Persona development is a key component of the <a title="interaction design process overview" href="http://tynerblain.com/blog/2006/03/21/interaction-design-process-overview/">interaction design process</a>, but it can be <a title="interaction design and requirements" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/">leveraged very effectively in a traditional requirements process</a> as well.  Each persona represents a homogeneous population of users.  In other words, the collection of users that are in a role represented by a single actor, and who have similar personal goals.  By defining personas, we can <a title="user goals " href="http://tynerblain.com/blog/2007/10/11/stakeholder-goals/">manage requirements in the context of those personal goals</a>.  One actor in the actor hierarchy may have multiple personas associated with it.  This makes sense when there are groups of individuals with different <a title="personal goals influence design" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/">personal goals</a>.</p>
<p>The most common example, and one that is almost always present, is built around the notion of user experience.  You can classify users of a product as <a title="competent users and design" href="http://tynerblain.com/blog/2006/04/02/competent-users-and-software-design/">novice, competent, or expert users</a>.  Novice users usually become competent users but rarely become expert users.  Those people who become expert users are usually a different breed.  Professional drivers become experts, where casual drivers rarely exceed competence.</p>
<p>These two user groups are made up of people with different goals, who use cars differently (even though they both drive, they drive differently, and with differing expectations and needs).  It is critical to separate user groups that are different, and treat them differently, to avoid the <a title="elastic users and persona" href="http://tynerblain.com/blog/2007/07/23/elastic-users/">elastic user problem</a>.</p>
<p>The two different technical sales rep (TSR) populations &#8211; in Latin America and North America &#8211; would be best represented as two different personas.  The TSRs in both regions do fundamentally the same work &#8211; provide technical support to an account rep, to help in closing a sale.  The North American TSR is profit motivated, where the Latin American TSR is motivated by increasing revenue.  These different goals make it very unlikely that the same persona would accurately describe the TSR population in both regions.  There are other factors that drive the identification of multiple personas for the same role (in the actor hierarchy), but to simplify, we are focusing just on the regional dynamic.</p>
<p>Since the TSRs in both North and Latin America are performing the same job, it does not make sense to treat them as having different roles in the actor hierarchy.</p>
<h2>Using Additional Roles in the Hierarchy to Express Regional Differences</h2>
<p>In situations like with the Small Account Reps in North and Latin America, it is better to create distinct roles in the actor hierarchy to represent them.</p>
<p><img title="small account rep hierarchy" alt="small account rep hierarchy" src="http://sehlhorst.smugmug.com/photos/234466974-L.jpg" /></p>
<p>The North American Small Account Rep works on commission and is an employee of the company.  This rep is focused on closing the deal, but only with products from the company.  This rep also may work with other reps to help them close deals &#8211; sharing intelligence about market pricing, helping with product selection, etc.  There are elements of teamwork and collaboration present because all of the reps are &#8220;on the same team.&#8221;</p>
<p>In Latin America, the Small Account Rep is also focused on closing the deal.  But this rep does not care who&#8217;s products are used to close the deal.  The rep will work to get the lowest possible price from the company, in order to maximize the difference between the company&#8217;s price (to the rep) and the rep&#8217;s price (to the customer).  100% of this difference goes to the rep, so even if the rep is handsomely rewarded or commissioned based on transaction margin, the rep will always make more money by negotiating a lower price from the company.  The rep also has additional activities associated with getting quotes from the competition and managing relationships with the company&#8217;s competitors.</p>
<p>Not only are the jobs different, but the company will treat these two reps very differently.  For example, the company would be likely to share cost or margin information with the North American rep.  That information will help the rep know how low he can price products for the customer without jeopardizing the company&#8217;s profitability.  The company knows that the rep wants to close the deal at the highest possible price, to increase margins and therefore increase the rep&#8217;s compensation.</p>
<p>The company will not want to share cost information with the Latin  American rep.  The company is still motivated to get the most profitable deals, but the company realizes that the rep is trying to get the lowest possible price &#8211; not the highest possible price.  This means that the company needs to provide low enough pricing for the rep to close the deal, and low enough pricing that the rep will resell the company&#8217;s products instead of products from the competition.</p>
<h2>Summary</h2>
<p>Actor hierarchies provide a way to differentiate groups of people who have different roles.  Personas provide a way to describe groups of people within a role who share motivation and characteristics.  The combination of the two allows for clear, yet flexible expression of requirements &#8211; both from a business perspective, and from a user perspective.</p>
<p>When dealing with user populations in different regions of the world, it makes sense to extend the actor hierarchy when the jobs, and business requirements of the user populations vary.  When the users are doing the same job, but with different motivations, using personas to describe the differences makes more sense.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Global+Actor+Hierarchies+and+Personas+http://bit.ly/1cST9f+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/12/20/global-actor-hierarchies-and-personas/&amp;t=Global+Actor+Hierarchies+and+Personas" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/12/20/global-actor-hierarchies-and-personas/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Managing Stakeholder Goals</title>
		<link>http://tynerblain.com/blog/2007/10/11/stakeholder-goals/</link>
		<comments>http://tynerblain.com/blog/2007/10/11/stakeholder-goals/#comments</comments>
		<pubDate>Fri, 12 Oct 2007 04:24:01 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Business Analysis]]></category>
		<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Requirements]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[carl kessler]]></category>
		<category><![CDATA[end users]]></category>
		<category><![CDATA[goals]]></category>
		<category><![CDATA[insiders]]></category>
		<category><![CDATA[john sweitzer]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[partners]]></category>
		<category><![CDATA[principals]]></category>
		<category><![CDATA[stake holder]]></category>
		<category><![CDATA[stakeholders]]></category>
		<category><![CDATA[steak holders]]></category>
		<category><![CDATA[steakholder]]></category>
		<category><![CDATA[user-centric]]></category>
		<category><![CDATA[users]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/10/11/stakeholder-goals/</guid>
		<description><![CDATA[
A couple weeks ago we wrote about Outside-in Software Development, by Carl Kessler and John Sweitzer.  One of their ideas about stakeholders and goals has got us thinking about traceability.

Types of Stakeholders
Carl and John present a framework for understanding stakeholders that groups them into four categories &#8211; principals, end users, partners, and insiders.


Principals - [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="steak holder" title="steak holder" src="http://sehlhorst.smugmug.com/photos/206701750-M.jpg" /><br />
A couple weeks ago we wrote about <a title="Focus on stakeholders" href="http://tynerblain.com/blog/2007/09/27/outside-in/"><em>Outside-in Software Development</em>, by Carl Kessler and John Sweitzer</a>.  One of their ideas about stakeholders and goals has got us thinking about traceability.</p>
<p><span id="more-582"></span></p>
<h2>Types of Stakeholders</h2>
<p>Carl and John present a framework for understanding stakeholders that groups them into four categories &#8211; principals, end users, partners, and insiders.</p>
<blockquote>
<ul>
<li><strong>Principals </strong>- the business sponsors for a product or project. These folks have business goals they are trying to achieve. Your mission is to understand those goals. You also need to recognize that they may be moving targets, and be prepared to adapt to those changes.  And we need to <a title="understanding intent" href="http://tynerblain.com/2006/10/24/another-use-for-why/">understand <em>why</em> they want what they want</a>.</li>
<li><strong>End Users</strong> &#8211; the people who ultimately interact with the software.  The best software development processes are <a title="user experience and product management" href="http://tynerblain.com/2007/03/05/product-management-and-ux/">focused on satisfying the end users</a>.  And a lot of authors are out there teaching us how to do that, although none perhaps as visibly as Alan Cooper.</li>
<li><strong>Partners </strong>- people who are neither principals nor end users. These are the folks who don’t directly benefit from your product, don’t use it directly, and didn’t help create it. But they are responsible for helping your product live, thrive, and interact with other products. Think IT people, keeping your system running, and keeping other systems talking to it.</li>
<li><strong>Insiders </strong>- the people who define the product. Your (internal) team. Not only product managers and developers, but business folks, marketers, testers, support staff, finance, etc. The people creating a product influence what ends up being created. And they are stakeholders in a narrow scope &#8211; they are affected by the creation and ongoing support of your product.</li>
</ul>
<p><cite><a title="outside-in software development" href="http://tynerblain.com/blog/2007/09/27/outside-in/">Outside-In Software Development: First Look</a></cite></p></blockquote>
<p>In the book, they go into more detail on the different types of stakeholders.  One interesting thing that jumped out at me is something the authors mentioned about competing agendas for different stakeholders.</p>
<h2>Support Or Not</h2>
<p>Carl and John mention that end users have goals that <em>usually, but not necessarily</em>, are aligned with the goals of the principals.  This makes sense &#8211; someone responsible for the ROI of an improved process would likely have some aligned goals with the person who uses the software within that process.  Users are represented with personas, and those <a title="personas and goals" href="http://tynerblain.com/blog/2006/03/22/how-to-create-personas-for-goal-driven-development/">personas articulate goals</a> &#8211; both personal and practical.  This is one are of stakeholder goals.  The user&#8217;s practical goals are (or should be) aligned with the goals of the principal responsible for the results of what the user does.</p>
<h2>Tracing Among Goals</h2>
<p>We use tracing to represent the <a title="structured requirements" href="http://tynerblain.com/blog/2006/01/04/foundation-series-structured-requirements/">supporting relationships</a> between requirements artifacts.</p>
<p><img alt="traceability diagram" title="traceability diagram" src="http://sehlhorst.smugmug.com/photos/71264266-M.jpg" /></p>
<p>The diagram above shows the general relationships between different types of artifacts.  The following diagram shows how this<a title="tracing and user-centric design" href="http://tynerblain.com/blog/2006/03/23/interaction-design-and-structured-requirements/"> tracing can incorporate the needs of users</a>.</p>
<p><img alt="tracing to practical goals" title="tracing to practical goals" src="http://sehlhorst.smugmug.com/photos/61228367-O.png" /></p>
<p>The top portion of this diagram accentuates that there is tracing <em>within</em> a requirement type.  That is &#8211; goals can support other goals.  From the perspective of stakeholder analysis, Carl and John describe it as alignment.</p>
<p>When we think about traceability, a good way to represent these <em>aligned</em> goals is through subordinate &#8220;supporting&#8221; relationships and traceability.  Carl and John mention that the challenge is to identify conflicting goals and adjust prioritization accordingly (not all stakeholders are created equal!).  This is great advice that resonates.  The authors also point out that you need to be careful to not ignore a user goal that is critical to the achievement of a principal&#8217;s goal.<br />
By tracking principal goals as <em>corporate goals</em>, and end user goals as <em>practical goals</em>, we can identify when goals are aligned (and supportive).  We can also identify when goals are unaligned.  This is exactly the visibility we need to address the two key elements the authors suggest we look at.  Rewording into representation-centric maxims:</p>
<ul>
<li>Don&#8217;t ignore persona practical goals that support principal (corporate) goals.</li>
<li>Question persona practical goals that are <em>not</em> aligned with principal (corporate) goals.</li>
</ul>
<h2>Conclusion</h2>
<p><em>Outside-in Software Development</em> continues to be a good read with good ideas.  Understanding the relationships between the goals of principal stakeholders and end user stakeholders is one of those good ideas.</p>
<p>Using traceability to manage and communicate our understanding of those relationships will help us to make good decisions about supporting and prioritizing those goals.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Managing+Stakeholder+Goals+http://bit.ly/7QMiV+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/10/11/stakeholder-goals/&amp;t=Managing+Stakeholder+Goals" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/10/11/stakeholder-goals/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Foundation Series: Heuristic Evaluation</title>
		<link>http://tynerblain.com/blog/2007/08/27/foundation-series-heuristic-evaluation/</link>
		<comments>http://tynerblain.com/blog/2007/08/27/foundation-series-heuristic-evaluation/#comments</comments>
		<pubDate>Tue, 28 Aug 2007 03:26:01 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[UX]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[heuristic analysis]]></category>
		<category><![CDATA[heuristic evaluation]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[user interface design]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/08/27/foundation-series-heuristic-evaluation/</guid>
		<description><![CDATA[
A heuristic evaluation (or heuristic analysis) is a quick, low-cost usability analysis of the design of a user interface.  Pareto&#8217;s rule tells us that we can get 80% of the results from 20% of the effort.  And that&#8217;s where discount usability tests like a heuristic evaluation come in to play.  Formal, and [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="usability classroom" title="usability classroom" src="http://sehlhorst.smugmug.com/photos/50445724-M.jpg" /></p>
<p>A heuristic evaluation (or heuristic analysis) is a quick, low-cost usability analysis of the design of a user interface.  Pareto&#8217;s rule tells us that we can get 80% of the results from 20% of the effort.  And that&#8217;s where discount usability tests like a heuristic evaluation come in to play.  Formal, and more detailed usability studies yield better results &#8211; but cost more and take more time.  A small investment can pay off big with a heuristic evaluation.</p>
<p><span id="more-562"></span></p>
<h2>Heuristic Evaluation</h2>
<p>The Nielsen Norman Group defines heuristic evaluation as follows:</p>
<blockquote><p>Heuristic evaluation is the most popular of the usability inspection methods. Heuristic evaluation is done as a systematic inspection of a user interface design for usability. The goal of heuristic evaluation is to find the usability problems in the design so that they can be attended to as part of an iterative design process. Heuristic evaluation involves having a small set of evaluators examine the interface and judge its compliance with recognized usability principles (the &#8220;heuristics&#8221;).</p>
<p><cite><a title="heuristic evaluation" href="http://www.useit.com/papers/heuristic/">Jakob Nielsen</a></cite></p></blockquote>
<h2>Relative Usefulness of Usability Methods</h2>
<p>In another article of Nielsen&#8217;s, we see the results of surveys about different usability methods and their usefulness.  One of the figures from that article shows this stunning graph.</p>
<p><img alt="usability graph" title="usability graph" src="http://sehlhorst.smugmug.com/photos/188756399-M.gif" /></p>
<p>[source: <a title="learning inspection" href="http://www.useit.com/papers/heuristic/learning_inspection.html">Technology Transfer of Heuristic Evaluation and Usability Inspection</a>, Jakob Nielsen]</p>
<p>While user testing is the clear winner &#8211; both in usefulness and adoption, heuristic evaluation is a close second.  The two of them are reportedly much more effective than all of the other tests.</p>
<h2>Ten Usability Heuristics</h2>
<p>Nielsen also shares with us <a title="Heuristic list" href="http://www.useit.com/papers/heuristic/heuristic_list.html">a list of ten usability heuristics</a>, or general principles to guide user interface design.  His list goes into more detail on each of the ten heuristics, essentially answering the following questions.  You can think of it as a checklist.</p>
<ol>
<li>Does the system provide information about its status?  ["Please wait while the system is updating"]</li>
<li>Does the system use <a title="software development and customer service" href="http://tynerblain.com/blog/2006/09/06/customer-service-and-sdlc/">terms and language that are familiar</a> to the user?</li>
<li>Can mistakes easily be undone? ["Undo" and "How do I get back to where I was from here?"]</li>
<li>Does the system use controls (buttons, links, words) to enable actions consistently ["Yes" vs. "OK" vs. "Apply"]</li>
<li>Does the system help prevent common user errors?</li>
<li>Is it easy for users to see what they can do, versus being forced to remember what they can do?</li>
<li>Are there ways for <a title="expert users" href="http://tynerblain.com/blog/2006/04/02/competent-users-and-software-design/">expert users</a> to be more efficient than <a title="novice users" href="http://tynerblain.com/blog/2007/02/22/user-centered-design-bridge/">novice users</a>?</li>
<li>Are users forced to filter out irrelevant information (minimalist design)?</li>
<li>Do <a title="error messages as surprise and delight" href="http://tynerblain.com/blog/2006/02/27/prioritizing-software-requirements-kano-take-two/">error messages help users</a> to resolve the errors?</li>
<li>Is the documentation searchable, <a title="use case driven documentation" href="http://tynerblain.com/blog/2006/10/10/use-case-driven-documentation/">task-centric</a>, and precise with &#8220;how to&#8221; steps?</li>
</ol>
<p>These are fantastic questions to answer (and there&#8217;s a right answer for each one).  And they also represent very easy to understand ideas &#8211; which can be <em>very</em> helpful when trying to explain it to someone who thinks that HCI folks just make applications &#8220;sexy.&#8221;</p>
<h2>Summary</h2>
<p>Really bad user interface mistakes can be avoided quickly with heuristic evaluations.  This is <a title="prioritize to maximize value" href="http://tynerblain.com/blog/2007/07/31/prioritization-and-value-maximization/">the best bang for the buck</a>, when determining <a title="measuring the ROI of HCI" href="http://tynerblain.com/blog/2007/07/30/measuring-the-roi-of-design/">how to invest in user experience</a> efforts.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Foundation+Series%3A+Heuristic+Evaluation+http://bit.ly/16XuVA+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/08/27/foundation-series-heuristic-evaluation/&amp;t=Foundation+Series%3A+Heuristic+Evaluation" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/08/27/foundation-series-heuristic-evaluation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interface Design: Visualization Methods</title>
		<link>http://tynerblain.com/blog/2007/07/25/interface-design-visualization-methods/</link>
		<comments>http://tynerblain.com/blog/2007/07/25/interface-design-visualization-methods/#comments</comments>
		<pubDate>Thu, 26 Jul 2007 02:17:56 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[data visualization]]></category>
		<category><![CDATA[data visulaization]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[visualization methods]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/07/25/interface-design-visualization-methods/</guid>
		<description><![CDATA[
Visualizing complex data can be very difficult.  There are almost as many ways to visualize data as there are data to visualize.  The Ralph Lengler and Martin J. Eppler at the Visual Literacy Organization collect many of them for us in a periodic table.

References
Hat tip to Kevin Kelly for sharing this with us [...]]]></description>
			<content:encoded><![CDATA[<p><img title="periodic table of visualization techniques" alt="periodic table of visualization techniques" src="http://sehlhorst.smugmug.com/photos/177014610-M.jpg" /></p>
<p>Visualizing complex data can be very difficult.  There are almost as many ways to visualize data as there are data to visualize.  The Ralph Lengler and Martin J. Eppler at the Visual Literacy Organization collect many of them for us in a periodic table.<br />
<span id="more-546"></span></p>
<h2>References</h2>
<p>Hat tip to <a title="visualization tools" href="http://www.kk.org/cooltools/archives/001662.php">Kevin Kelly</a> for sharing this with us in his <em>Cool Tools</em> blog.  The periodic table is available at the <a title="periodic table" href="http://www.visual-literacy.org/periodic_table/periodic_table.html">visual-literacy.org</a> website.  Hovering over each element provides an example of the type of visualization.</p>
<h2>Different Types of Visualization</h2>
<p>One of the biggest challenges in visualization of complex information is in selecting a means to visualize it.  Many approaches simply don&#8217;t fit the data &#8211; they have too few, or too many variables.  For example, a pie chart is great for showing percentages (37% of new iPhone purchasers switched carriers, 5% had no service previously, 40% were existing AT&#038;T customers, 18% did not respond) or relative proportions.  The pie chart is not effective at showing trends or changes in the data (last year 20%&#8230;).  You could have multiple pie charts, but there are more effective ways to show the trends in the data.</p>
<p>The periodic table that the Visual Literacy folks put together would otherwise be overwhelming &#8211; each element represents a way to visualize information.  When you have something to visualize, it would be difficult and tedious to hover over each element, until you saw something inspiring.  So they&#8217;ve organized it into six different categories of visualization.</p>
<ul>
<li>Data Visualization &#8211; line chart, pie chart, scatterplot, etc.</li>
<li>Information Visualization &#8211; radar chart, tree map, data flow diagram, etc.</li>
<li>Concept Visualization &#8211; mind map, layer chart, pyramid technique, etc.</li>
<li>Strategy Visualization &#8211; supply &#038; demand curve, failure tree, life cycle diagram, etc.</li>
<li>Metaphor Visualization &#8211; tree, funnel, bridge, etc.</li>
<li>Compound Visualization &#8211; cartoon, knowledge map, info-mural, etc.</li>
</ul>
<p>There is also an overlay of text color (blue versus black), where blue elements (like the timeline) represent process visualizations, and black elements (like the venn diagram) represent structure visualizations.</p>
<p>There are also symbols to indicate if the visualization technique is suited to details, overviews or both.  And more symbols to indicate if the diagram is intended to cause viewers to come up with new answers (e.g. solutions to a problem), or to indicate that the diagram is designed to clarify insights found in complex data (like the stakeholder rating map).</p>
<h2>Conclusion</h2>
<p>There are some very cool techniques presented.  What would make the site even better would be if each element were a link to a page about that particular type of visualization.  Roll-over graphics are handy for easily comparing different techniques &#8211; hopefully the authors will add detailed pages for the techniques.  Of course, that is a huge job.  If they added one per week, it would take two years!</p>
<p>Check them out &#8211; they will inspire thoughts when you&#8217;re really stuck.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Interface+Design%3A+Visualization+Methods+http://bit.ly/3emTZ+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/07/25/interface-design-visualization-methods/&amp;t=Interface+Design%3A+Visualization+Methods" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/07/25/interface-design-visualization-methods/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Humane Interface Design Philosophy &#8211; 7 Tips</title>
		<link>http://tynerblain.com/blog/2007/07/02/humane-design/</link>
		<comments>http://tynerblain.com/blog/2007/07/02/humane-design/#comments</comments>
		<pubDate>Tue, 03 Jul 2007 04:17:22 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[humane design]]></category>
		<category><![CDATA[humane interface design]]></category>
		<category><![CDATA[Interface Design]]></category>
		<category><![CDATA[managing data]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/07/02/humane-design/</guid>
		<description><![CDATA[
There are at least 7 ideals to keep in mind when designing a user interface.  Shmula tells us about them.
In his article on humane interface design, shmula lists and describes seven ideals.  After a long day of travel, I don&#8217;t have anything to add, so we&#8217;re just going to suggest you read his [...]]]></description>
			<content:encoded><![CDATA[<p><img title="thanks" alt="thanks" src="http://sehlhorst.smugmug.com/photos/168991479-M.jpg" /></p>
<p>There are at least 7 ideals to keep in mind when designing a user interface.  Shmula tells us about them.</p>
<p><span id="more-532"></span>In his article on <a title="humane interface design" href="http://www.shmula.com/408/humane-interface-ask-aza-raskin-anything">humane interface design</a>, shmula lists and describes seven ideals.  After a long day of travel, I don&#8217;t have anything to add, so we&#8217;re just going to suggest you read his article.  Here are the seven ideals that are covered in more depth:</p>
<ol>
<li>It&#8217;s not your fault.</li>
<li>Simple things should stay simple.</li>
<li>Fewer choices mean fewer worries.</li>
<li>Your data is sacred.</li>
<li>Your train of thought is sacred.</li>
<li>Good interfaces create good habits.</li>
<li>Modes cause misery.</li>
</ol>
<p>Check it out.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Humane+Interface+Design+Philosophy+%E2%80%93+7+Tips+http://bit.ly/RS16E+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/07/02/humane-design/&amp;t=Humane+Interface+Design+Philosophy+%E2%80%93+7+Tips" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/07/02/humane-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The First UX Project</title>
		<link>http://tynerblain.com/blog/2007/06/26/the-first-ux-project/</link>
		<comments>http://tynerblain.com/blog/2007/06/26/the-first-ux-project/#comments</comments>
		<pubDate>Wed, 27 Jun 2007 05:05:36 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[user experience]]></category>
		<category><![CDATA[UX ROI]]></category>
		<category><![CDATA[value of UX]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/06/26/the-first-ux-project/</guid>
		<description><![CDATA[
Amy Hilman has written an outstanding article with the boxes and arrows staff about how to get that first UX (User Experience) project started at your company.  Most companies don&#8217;t include user experience (UX) research as a key part of their product development process.  But all companies will benefit from it.

UX is Valuable
Amy&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p><img title="better ideas" alt="better ideas" src="http://sehlhorst.smugmug.com/photos/167094820-M.jpg" /></p>
<p>Amy Hilman has written an outstanding article with the boxes and arrows staff about <a title="first UX project" href="http://www.boxesandarrows.com/view/pioneering-a-user">how to get that first UX (User Experience) project started</a> at your company.  Most companies don&#8217;t include user experience (UX) research as a key part of their product development process.  But all companies will benefit from it.</p>
<p><span id="more-527"></span></p>
<h2>UX is Valuable</h2>
<p>Amy&#8217;s article doesn&#8217;t talk too much about why UX (user experience) is an important element of projects &#8211; but that&#8217;s ok.  Her audience at boxes and arrows is UX professionals, so people already know it is good.  The challenge is to convince other people that it is <em>tactically good</em>.  She does a great job of showing an ROI based approach to justifying UX investment on a particular project.</p>
<p>She summarizes that UX investments result in better products &#8211; yielding higher sales, and in improved team efficiency &#8211; yielding lower costs (and faster development).  She immediately then focuses on the <em>why is UX good for </em>my <em>project</em> angle:</p>
<blockquote><p>For example, if one of the primary initiatives company-wide is to reduce costs by reducing the number of tech support calls, make one of your primary UX goals for the next release improved usability and a higher rate of self-support. Get a current baseline for how many tech support calls are being received on the current product and at the end of your project do a comparative analysis for the reduction in tech support calls.</p></blockquote>
<p>This approach can&#8217;t be over-emphasized.  At a previous employer, we struggled with figuring out how to incorporate and justify investment in usability tests, visual and interaction design, and information architecture.  During the dot-bomb days, the qualitative arguments were sufficient to get a lot of people doing great work on many projects.  Over time, budget constraints ended up reducing staffing of UX roles &#8211; the company (my <em>former</em> employer) treated UX as a cost-center.  So cost-cutting caused a loss of the great inputs &#8211; and ultimately the great people.  We (both the UX professionals, and me, a UX-fanboy) failed to provide compelling financial arguments for internal investment.  We also failed to convince customers why they should invest in UX on custom projects.  The company never got out of the &#8220;cost center&#8221; mindset.</p>
<h2>Practical Advice</h2>
<p>Amy also points out some very practical tips for the UX professional who successfully gets the opportunity to make those products better, including:</p>
<ul>
<li>Don&#8217;t allow yourself to get stretched too thin across projects.</li>
<li>Don&#8217;t try and move too fast or push too far.</li>
<li>Set realistic expectations for yourself and your projects.</li>
</ul>
<p>Really great advice (and more in <a title="starting ux" href="http://www.boxesandarrows.com/view/pioneering-a-user">the article</a>).</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+The+First+UX+Project+http://bit.ly/cQJJS+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/06/26/the-first-ux-project/&amp;t=The+First+UX+Project" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/06/26/the-first-ux-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nexus &#8211; Drag and Drop</title>
		<link>http://tynerblain.com/blog/2007/05/30/nexus-drag-and-drop/</link>
		<comments>http://tynerblain.com/blog/2007/05/30/nexus-drag-and-drop/#comments</comments>
		<pubDate>Thu, 31 May 2007 04:16:50 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Agile Project: Ratings]]></category>
		<category><![CDATA[Interaction design]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[agile case study]]></category>
		<category><![CDATA[agile project]]></category>
		<category><![CDATA[agile requirements management]]></category>
		<category><![CDATA[agile software development]]></category>
		<category><![CDATA[design ideas]]></category>
		<category><![CDATA[drag and drop affordance]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[nexus]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/05/30/nexus-drag-and-drop/</guid>
		<description><![CDATA[
Implementation continues on nexus, and we&#8217;ve re-factored the way that items in a bundle are ordered, as mentioned in our earlier post.  We talk a little about affordance, and show a couple screen shots.

Drag and Drop Affordances
An affordance, to oversimplify, is an appearance of an object that causes users to intuitively know how to [...]]]></description>
			<content:encoded><![CDATA[<p><img title="drag" alt="drag" src="http://sehlhorst.smugmug.com/photos/157993584-M.jpg" /><img title="drop" alt="drop" src="http://sehlhorst.smugmug.com/photos/157993625-M.jpg" /></p>
<p>Implementation continues on nexus, and we&#8217;ve re-factored the way that <a title="more progress on nexus" href="http://tynerblain.com/blog/2007/05/29/nexus-more-progress/">items in a bundle are ordered</a>, as mentioned in our earlier post.  We talk a little about affordance, and show a couple screen shots.</p>
<p><span id="more-507"></span></p>
<h2>Drag and Drop Affordances</h2>
<p>An affordance, to oversimplify, is an appearance of an object that causes users to intuitively know how to interact with it.  We found a couple good articles on this challenge and posted them to <a title="nexus main page" href="http://tynerblain.com/nexus/">nexus</a>.</p>
<p>Drag and drop user interface elements are becoming more common on the web.  The challenge is that many implementations do not make it obvious to users that the elements can be dragged and dropped.  In the best case, users are missing out on powerful functionality.  In the worst case, the user interface is frustratingly unusable.  Here are the nexus links for the two articles we liked.  Please read them, rate them, and comment on them.</p>
<ul>
<li><a title="drag and drop controls" href="http://tynerblain.com/nexus/article/show/29-drag-and-drop-controls">Drag and Drop Controls</a></li>
<li><a title="Drag and drop article" href="http://tynerblain.com/nexus/article/show/28-drag-n-drop-is-invisible">Drag &#8216;n Drop is Invisible to Users</a></li>
</ul>
<h2>Nexus Design Choices</h2>
<p>The design decisions that we came away with from reading these articles were</p>
<ol>
<li>Include a text explanation like &#8220;drag to re-order&#8221; so that people would know that it was an option.</li>
<li>Create an image that conveys the ability to drag to re-order the items.</li>
</ol>
<p>Here are the screen shots of what we came up with for our first usable iteration on the task of re-ordering items in a bundle:</p>
<p>1. Two items, in order.</p>
<p><img title="before" alt="before" src="http://sehlhorst.smugmug.com/photos/157996582-M.jpg" /></p>
<p>2. Dragging one of the items to re-order them.</p>
<p><img title="during" alt="during" src="http://sehlhorst.smugmug.com/photos/157996593-M.jpg" /></p>
<p>3. The two items, in the new order.</p>
<p><img title="after" alt="after" src="http://sehlhorst.smugmug.com/photos/157996605-M.jpg" /></p>
<p>The design element we created is a double-headed arrow, with some cross-bar lines that give it a tactile feel.  When you drag one element past another, the second element moves into the space previously occupied by the first element.  Screenshots don&#8217;t do it justice.  It is really cool.  Effectiveness will be determined by you &#8211; but I believe it will work.</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+Nexus+%E2%80%93+Drag+and+Drop+http://bit.ly/12Doy1+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/05/30/nexus-drag-and-drop/&amp;t=Nexus+%E2%80%93+Drag+and+Drop" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/05/30/nexus-drag-and-drop/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>APR: Information Architecture &#8211; Faceted Navigation</title>
		<link>http://tynerblain.com/blog/2007/05/16/apr-ia-faceted-navigation/</link>
		<comments>http://tynerblain.com/blog/2007/05/16/apr-ia-faceted-navigation/#comments</comments>
		<pubDate>Thu, 17 May 2007 03:23:29 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Agile Project: Ratings]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[agile case study]]></category>
		<category><![CDATA[agile project]]></category>
		<category><![CDATA[agile requirements management]]></category>
		<category><![CDATA[agile software development]]></category>
		<category><![CDATA[ia]]></category>
		<category><![CDATA[information architecture]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[nexus]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/05/16/apr-ia-faceted-navigation/</guid>
		<description><![CDATA[
In our previous article in the series on the development of nexus, we discussed navigation and information architecture.  We identified the challenge of filtering articles by category and by level of experience (beginner / expert), while also viewing the articles along a characteristic (most-viewed, highest-rated, etc).  Between both url-creation and visible site-navigation, the [...]]]></description>
			<content:encoded><![CDATA[<p><img title="facets" alt="facets" src="http://sehlhorst.smugmug.com/photos/153425154-M.jpg" /></p>
<p>In our previous article in the series on <a title="open agile project" href="http://tynerblain.com/blog/2007/04/17/agile-software-development-experiment/">the development of nexus</a>, we discussed navigation and <a title="nexus information architecture" href="http://tynerblain.com/blog/2007/05/15/apr-information-architecture/">information architecture</a>.  We identified the challenge of filtering articles by category and by level of experience (beginner / expert), while also viewing the articles along a characteristic (most-viewed, highest-rated, etc).  Between both url-creation and visible site-navigation, the challenge we explored was how to present one facet or dimension as primary and others as secondary.</p>
<p>One of our readers presented a third alternative &#8211; faceted navigation.</p>
<p><span id="more-497"></span><a title="Scott's site" href="http://www.scottweisbrod.com/">Scott Weisbrod</a> commented:</p>
<blockquote><p>Have you considered using faceted navigation? Faceted navigation means that level of expertise, category of article, and chosen approach can all live at the same level.</p>
<p>Therefore, as a user, I can pick the facet by which I want to begin navigating the site. For some, level of expertise is the most sensible place to start. Others will want to begin their search by category or even chosen approach.</p>
<p>Why not surface all of them and let your users pick the most appropriate starting place?</p></blockquote>
<p>He also suggested looking at <a title="The Guardian" href="http://browse.guardian.co.uk/search"><em>The Guardian&#8217;s</em> search page</a>.  You get the idea by interacting with the controls in the sidebar &#8211; we&#8217;ll try and explain here with a static image, but go check it out.<br />
<img title="guardian search-browse filter" alt="guardian search-browse filter" src="http://sehlhorst.smugmug.com/photos/153425174-M.jpg" /></p>
<p>The left sidebar shows a list of &#8220;active filters&#8221; (initially empty), and as you click to &#8220;add search filters&#8221; you narrow down the choices.  Amazon.com also uses this approach, for narrowing by product category, price range, supplier, etc.  While it may encourage an element of precedence, it allows users to filter choices in whatever sequence they desire.  This is very cool presentation (in the two-dimensional sense).</p>
<p>When we started exploring our approaches, we were also concerned about how the URL looks, both for providing context to users and for sharing with others.  Unlike the Guardian, this is the main navigation for our site &#8211; not just an admittedly cool way to do browse/search.  If we look at a URL from their site, with facets selected, we see <code>http://browse.guardian.co.uk/search/all/Politics/Labour+party? month=07&#038;lDim=N%3D4294962719%2B4294962540%2B4294963588%2B3098 &#038;year=2002&#038;N=4294962719+4294962540</code>.  Not a very pretty picture [ed: spaces added to line-wrap the URL].  It exposes the implementation (looks like an <a title="olap cubes explained" href="http://en.wikipedia.org/wiki/OLAP_cube">OLAP cube</a> database to me).  More importantly, it would confuse anyone trying to read it, and might even dissuade them from clicking on the link if it were shared in an email.</p>
<h2>Nexus Implementation</h2>
<p>Luckily for us, we did three things today.  First, we decided that we agreed with Bob, at least enough to include the <em>experience level</em> dimension in our initial implementation (it added less than an hour of work).  Second, we took an implementation approach that would actually support this faceted navigation presentation.  Third, while we implemented it with a <em>hierarchical presentation</em>, we stuck to the Ruby on Rails convention of separating the presentation from the implementation.</p>
<p>This affords us the opportunity to refactor the presentation to look more &#8220;faceted&#8221; and less hierarchical.</p>
<p>Here&#8217;s what the navigation elements in the latest version in source control look like:</p>
<p><img title="nexus navigation bars" alt="nexus navigation bars" src="http://sehlhorst.smugmug.com/photos/153430658-M-0.jpg" /></p>
<p>The top bar is clearly a hierarchical parent.  It establishes context (articles or users, or your own page, etc).  It also shows a &#8220;categories first&#8221; navigation bar.  However, that navigation doesn&#8217;t &#8220;reset&#8221; the other choices.</p>
<p>If you&#8217;re looking at <em>beginner</em> product management articles, organized by their ratings, and you click on &#8220;Business Analysis&#8221; &#8211; you will see business analysis articles, <em>for beginners, organized by highest rating</em>.  In effect, we have a faceted navigation implementation under the hood.  We just presented it hierarchically.  Note that we also agreed with Bob, and put <em>experience level</em> filtering &#8220;above&#8221; the organizational sorting (most read, etc) of the articles.</p>
<p>We critiqued <em>The Guardian</em>&#8217;s URL structure.  We should look at ours.  The URL for an example above would be <code>http://tynerblain.com/nexus/business_analysis/beginner/highest_rated/</code>.  Incredibly easy to know exactly what to expect before clicking on that link.  We can also extend this approach in a couple ways &#8211; we can add more skill levels or categories, we can add more sorting options (highest rated reviews, etc), and we can add subcategories (like testing:test-automation).  We won&#8217;t add any subcategories until we have enough articles to warrant it.  I think we can even add sub-categories selectively (have them for testing, but not business analysis, for example).</p>
<h2>Design Conclusion</h2>
<p>I am happy with the <em>under-the-hood</em> design, for both being extensible enough for likely future needs, and being adaptable enough to work with either a hierarchical or faceted presentation.</p>
<p>In order to get the alpha release launched as soon as possible, we will keep the &#8220;hierarchical-looking, faceted navigation&#8221; in place for the first limited release.</p>
<h2>How You Can Help</h2>
<p>In order to really get a feel for the effectiveness of the navigation, we have to have some critical mass of articles on the site &#8211; I would think at least 100.  Please spend a few minutes to queue up some great articles to be reviewed &#8211; and when we release the alpha, submit those articles.  Every page will include an &#8220;article count&#8221; in the sidebar &#8211; and when we get to 100, start evaluating the navigation and let us know how it works for you.</p>
<p>Thanks in advance!</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+APR%3A+Information+Architecture+%E2%80%93+Faceted+Navigation+http://bit.ly/Tpy5T+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/05/16/apr-ia-faceted-navigation/&amp;t=APR%3A+Information+Architecture+%E2%80%93+Faceted+Navigation" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/05/16/apr-ia-faceted-navigation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>APR: Information Architecture Challenge</title>
		<link>http://tynerblain.com/blog/2007/05/15/apr-information-architecture/</link>
		<comments>http://tynerblain.com/blog/2007/05/15/apr-information-architecture/#comments</comments>
		<pubDate>Wed, 16 May 2007 02:44:19 +0000</pubDate>
		<dc:creator>Scott Sehlhorst</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Agile Project: Ratings]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[agile case study]]></category>
		<category><![CDATA[agile project]]></category>
		<category><![CDATA[agile requirements management]]></category>
		<category><![CDATA[agile software development]]></category>
		<category><![CDATA[ia]]></category>
		<category><![CDATA[information architecture]]></category>
		<category><![CDATA[managing data]]></category>
		<category><![CDATA[nexus]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://tynerblain.com/blog/2007/05/15/apr-information-architecture/</guid>
		<description><![CDATA[
We have an interesting information architecture challenge as part of our agile project.  We have talked about browsing and searching articles organized both by category (product management, business analysis, etc) and by level of expertise (beginner, expert).  We&#8217;re also rating and reviewing the articles, which introduces the ideas of &#8220;latest&#8221;, &#8220;most reviewed&#8221;, &#8220;highest [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="Challenging Architecture" title="Challenging Architecture" src="http://sehlhorst.smugmug.com/photos/153106825-M.jpg" /></p>
<p>We have an interesting information architecture challenge as part of <a title="open agile project" href="http://tynerblain.com/blog/2007/04/17/agile-software-development-experiment/">our agile project</a>.  We have talked about browsing and searching articles organized both by category (product management, business analysis, etc) and by level of expertise (beginner, expert).  We&#8217;re also rating and reviewing the articles, which introduces the ideas of &#8220;latest&#8221;, &#8220;most reviewed&#8221;, &#8220;highest rated&#8221;, etc.</p>
<p>This presents us with a three-dimensional way to approach structuring the information and navigation of the site.</p>
<p><span id="more-496"></span></p>
<h2>Two Areas of Focus</h2>
<p>There are two things we need to address as part of helping people find the articles that they are interested.  Searching, which can bypass this structure, is not in scope for the next release of nexus &#8211; as we are <a title="Prioritizing Use Cases" href="http://tynerblain.com/blog/2007/04/25/apr-prioritizing-use-cases-1/">focusing first on the <em>browsing</em> use case</a>.</p>
<p>The most important element to focus on is the site navigation.  A lesser, but also important element is URL structure.  There are benefits to having consistent and clean URLs that represent the different pages of nexus.  Site navigation is a two-dimensional problem (we have two dimensions within the screen real-estate).  URL-creation is a one-dimensional problem &#8211; each URL (web-page address) is linear, or even serial.  Since URL structure is more constraining, we are tackling this first.</p>
<h2>What Does Browsing Look Like?</h2>
<p>We&#8217;re focusing on URL structure, as it relates to browsing.  How does that perspective apply?</p>
<p>A &#8220;good&#8221; URL will tell us something about the page.  For example: <code>http://tynerblain.com/nexus/testing/highest_rated/beginner/</code>  could represent the list of the highest rated articles about testing, written for beginners.  This approach to URL structure has benefits in that it provides context for users (who can look at a URL and see where they are), makes it easier to share or save a page, and does a good job of setting expectations.<br />
<code>http://tynerblain.com/nexus/?topic=testing&#038;view=highest_rated&#038;expertise=beginner</code> would provide the same benefits &#8211; but it is clunky for people to read, harder to share, and far less memorable.  It also forces the implementation on the users.  Users should not care if &#8220;highest rated&#8221; is a view, or a sort, or whatever.  There are also search-engine benefits to using the clean URL structure.  And luckily, it is actually easy to use the clean structure when working with Ruby on Rails.</p>
<p>When browsing, we have three dimensions:</p>
<ul>
<li>Level of expertise (beginner, expert, both/either/neither)</li>
<li>Category of article (Product Management, Business Analysis, Project Management, Testing, Agile Development, Interaction Design)</li>
<li>A Chosen approach (view the highest rated, most recent, most rated, most reviewed, or most viewed articles)</li>
</ul>
<p>Good design approaches will survive changes to this as well (new categories, etc).</p>
<h2>Which Comes First?</h2>
<p>We can ignore the URL-formatting for a minute, and just think about which sequence makes the most sense.  Here are some examples:</p>
<ul>
<li>beginner -> testing -> most_reviewed</li>
<li>testing -> beginner -> most_reviewed</li>
<li>most_reviewed -> testing -> beginner</li>
<li>most_reviewed -> beginner -> testing</li>
<li>beginner -> most_reviewed -> testing</li>
<li>testing -> most_reviewed -> beginner</li>
</ul>
<p>I believe that the beginner/expert dimension is the <em>least</em> important of the three.  I also think that the category &#8220;filter&#8221; is the dominant element when users are browsing, and the &#8220;<em>let me slice it this way</em>&#8221; dimension of &#8216;chosen approach&#8217; is subordinate.  I would expect a person researching <em>testing</em> articles, for example, to look at both the &#8220;highest rated&#8221; and the &#8220;most reviewed&#8221; views within a single browsing session.  I think it is less common that someone would be viewing &#8220;highest rated&#8221; articles and change category to category as part of the same exercise.</p>
<p>So, we&#8217;re going to start out with <em>category->approach->expertise</em> as the winning information structure for URLs.</p>
<h2>Consistency Matters</h2>
<p>Once we establish a hierarchy of category->approach->expertise in our URL structure, we need to make sure that our site navigation reflects something consistent with this.  Therefore, navigation elements should present category information/filtering in a dominant position, and the chosen approach (most rated, etc) as a subordinate.  The expertise level should be below both of these.</p>
<p>In truly agile fashion, we&#8217;re implementing <em>category->approach</em> first, without mixing in the <em>expertise</em> element into either the URL structure or site navigation.  We are showing it as information.  When this matters more (more than whatever else is being prioritized), we will re-address it.</p>
<h2>Thoughts?</h2>
<p>What do you think?</p>
<p align="left"><a target="_blank" rel="nofollow" class="tt" href="http://twitter.com/home/?status=By+@sehlhorst:+APR%3A+Information+Architecture+Challenge+http://bit.ly/urzJD+" title="Post to Twitter"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-twitter-big1.png" alt="Post to Twitter" /></a> <a target="_blank" rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://tynerblain.com/blog/2007/05/15/apr-information-architecture/&amp;t=APR%3A+Information+Architecture+Challenge" title="Post to Facebook"><img class="nothumb" src="http://tynerblain.com/blog/wp-content/plugins/tweet-this/icons/tt-facebook-big4.png" alt="Post to Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://tynerblain.com/blog/2007/05/15/apr-information-architecture/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>
