Tackling Fidelity when Prototyping
Should you make your prototype as much like the final product is possible? Perhaps that's the opposite of what you should do. Maybe that gets in the way of the creativity that your prototype could invoke. Here's a fresh look at prototyping.
Join the DZone community and get the full member experience.Join For Free
we often mistake fidelity as an attribute of the prototype. referring to prototypes as a low or high-fidelity version inadvertently biases us to consider or expect the level of detail present; in practice, it does not matter. why? it’s more productive if the level of detail happens as a coincidence as opposed to an upfront goal of prototyping. our goal should be to deliver the highest fidelity of experience using the cheapest means possible. and to achieve this goal, we need just enough detail in the prototype so that people can “use” the prototype to perform a task.
take the high-low fidelity challenge
can you guess which of the two images shown above reflects a high fidelity experience? if you think it’s obvious, i’d argue that it’s not.
figure 1: pick the version depicting high-fidelity experience.
it’s a trick question. in fact, both may be identical as far as fidelity of experience is concerned. more importantly, looking at a single ui state/screen will not help us decide whether it achieves the high fidelity experience goal. for that we need to experience it in a context of use.
figure 2: high-fidelity experience is not achieved with a detailed art-board or flow map.
the solution to the problem is not producing a detailed art-board showing all possible ui states with connections. such a representation, while helpful to understand the general structure and navigation patterns, is not set up for “use” by people who are the target audience.
when was the last time you launched an app and viewed all possible screen states and user flows at the same time? as users, we only see one ui state at a time, and make our progress based what’s available to us on each ui state. we rely on content, micro-copy, affordances etc. to determine the next step in the task. so being able to use or engage with the prototype is necessary for a high-fidelity experience.
in this article, i discuss why treating high or low fidelity as an attribute of the prototype is wasteful. it sucks up time and effort on details that may not be required for evaluation. you achieve true proficiency in prototyping when you enable a high-fidelity experience using the cheapest and quickest means available. getting feedback from users, as soon as possible, is far more important. so given the opportunity, create artifacts that will allow users to participate in the design process.
confusion about fidelity in prototypes
practitioners familiar with ui prototyping are already aware that decisions about fidelity can make prototyping a long drawn out affair. unfortunately, the tools we use for building prototypes can’t make these fidelity decisions for us, and in some cases make it worse. and without a way to resolve the fidelity dilemma, discussing the latest and greatest prototyping tools or frameworks is moot.
the available guidance suggests designers to prototype “just enough.” such advice while being accurate is still open to interpretation, and not actionable. design guidance on addressing fidelity can be broadly classified into two kinds. the first kind defines fidelity more granularly into its possible components (i.e., visual fidelity vs. interaction fidelity). the second kind is to provide general guidelines for prototyping, evident in statement like, “its’ a prototype, and not the mona lisa” (warfel, 2009)
attempts to categorize fidelity
following up on the first kind of guidance, in which fidelity refers to the level of detail in a prototype, one invariably wanders into the territory of content fidelity, interaction fidelity, information fidelity and visual fidelity, as described by arnowitz (2003). that is, the different ways in which level of detail in a prototype can be described. this leads to confronting questions like the following:
- what is a prototype with high content fidelity, but low interaction and visual fidelity?
- what is a prototype with high interaction and visual fidelity, but low content fidelity?
the above mentioned approach for deciding on fidelity seems thorough and deliberate. however, forcing designers to consider all combinations of such questions, even before prototyping begins, feels tedious. it should beg the question; does it matter? it’s an analytical pursuit, and ends up feeling artificial. while we can argue that it’s the designers job to figure this out because they are paid to, even arnowitz acknowledges there is a tension between designing content vs. chrome in prototypes. he describes it as follows:
"you can also de-emphasize a content type completely, for example by showing all text in greeted text format for your audience to concentrate on the visuals or interactions instead of trying to read editorial content, which usually grabs their attention. however, the issue is more nuanced than it appears. for example, let’s say you want to test the interaction design. then, if you set the visual design level to lowest and editorial content to lowest fidelity, it will be impossible to really test the interaction; you need just enough editorial and visual design content to test the interaction.”
what we want is a structured approach, but one that feels organic, and yet allows us designers to explore the design space, and do what we do— make good design trade-offs.
arguing for fidelity as a fluid concept
the second kind of guidance is imparted as broad guidelines aimed at reassuring designers that prototypes are not the end goal. that is, not to worry about creating a prototype that will exactly look and feel like the end product nor is it one. the key word here is exactly . there should not be an expectation of completeness.
as todd zaki warfel (2009, pp. 50) writes,
“prototypes by their very nature are somewhat incomplete, sketchy version of the final product. they are not perfect. they don’t have to be. they are not meant to be. in fact, a slightly rough and sketchy prototype is often better for getting feedback.”
he goes on to say,
“what i can tell you with great confidence, however is this — in most cases, your prototype doesn’t have to be mona lisa — good enough is good enough. you are not shooting for perfection here…all you need is the right level of fidelity. no more. no less.”
the more you know, the less you know about fidelity
attempting to recreate the “exact” experience often times contradicts the goal of completing the prototyping exercise cheap and to gather empirical data about use sooner than later. relaxing the goals from exact to good enough yield significant gain. but the question remain-- how should designers interpret such forms of guidance? as it stands, it’s not very actionable in terms of deciding how much fidelity to aim for.
both kinds of guidance are well-meaning and aim to capture the spirit of prototyping, but less effective because it inadvertently place the emphasis on the prototype. as in fidelity as an attribute of a prototype. neither form of advice seems to offers concrete guidance for creating and evaluating your first prototype. and getting to the first meaningful prototype can be a significant milestone both for the team, for the designer, and for stakeholders.
the sooner we have a prototype, the sooner we can approach users to evaluate the experience. any guidance that asks designers to design just enough without considering a context of use is an ambiguous one. after all, what does just enough really mean?
horizontal/vertical prototype is a myth
it would be a shame to go further without discussing the proposal around horizontal vs. vertical prototypes; also referred to as breadth first vs. depth first prototypes.
figure 3: the commonly used representation for horizontal vs. vertical prototypes
as technologists involved in designing and building software experiences, we obsess over designing structures and layouts. we fanatically try to document the visual ui elements, navigation, and commanding patterns so as to standardize and estimate effort required to build. however, the structure of the app or site is present to support the stories of use, and not the other way around.
figure 4: the structures and navigation patterns are there to support a story-of-of use. not the other way round.
in practice, neither of the two approaches, vertical or horizontal, by itself are useful for gathering empirical feedback on use or creating your first effective prototype. such classifications are good to theorize about prototyping. i say theorize, because the user does not care whether it’s a horizontal or vertical prototype. prototyping to support a story may result in a prototype that’s neither be a horizontal nor vertical. stories bring in much needed context, and are a better guide for your prototyping efforts.
high-fidelity experience using low-fidelity artifacts
by choosing to target a desired experience, the debate is no longer about high or low fidelity prototypes; it’s about whether the artifact created has enough detail to simulate the experience, thus allowing us to understand the implications of our design choices. this does not mean we start prototyping with nothing; instead, align prototyping efforts to support concrete stories-of-use.
to learn quickly, we need to aim for the highest possible fidelity of experience using the lowest possible fidelity of the artifact. as ux matured as a practice, new techniques and methods have emerged. however, what users can give feedback on and how they can easily participate in the design process has not changed much. it’s still realized by letting users experience the design. and we as design professionals can assess and perfect the fit for use . more importantly, users need to be able to “use” your prototype to help them participate in the design process. without this, we can’t really call it a human-centered design process.
stories-of-use can serve as a surrogate for communicating the experience and a guide for prototyping. this is also where user research fits in; by providing us with stories that matter in a given context of use and for a given user. not everything in your prototype needs to work, but it should work for a story-of-use. constrain and focus your prototyping efforts on stories you have picked as important instead of wasting time on making “everything” work.
i present two examples, not directly related to ui prototyping, but are related to evaluating an experience with low-fidelity artifacts.
the two examples help argue that it is possible to enable a high fidelity experience with low fidelity artifacts. these artifacts can be readily used to engage with users as well as internal team and stakeholders. in other words, what’s good for users is also good for the team. we can then continue to refine the design vision with more confidence now that we have validated our assumptions.
the examples also highlight that “story-of-use” is a rather flexible concept. a good story is generative by encouraging more discussion. sketch-a-move communicates an experience with a rather shallow story of how the “product” will be used. ny vs. ny is a richer narrative with a storyline that goes beyond a single moment of use.
prototype for use or evaluate with users
in summary, determining the right fidelity in prototypes is the wrong approach! whether you are explicitly concerned about fidelity or not, you will eventually need to make decisions about it, in your own way, when building a prototype. if every designer begins to answer the questions about fidelity in their own way, it will become impossible to compare design alternatives. we need a starting point, a heuristic, some actionable advice that can allow designers to easily get started with the prototypes, and finish quickly!
prototyping needs to be treated as a process, and not a deliverable. it’s an activity that’s as much about building prototypes, as it is evaluating them with users. if you are not using the prototypes to evaluate assumptions, then why build them in the first place? these should serve as research instruments to learn about fit for use . when we approach prototyping from an evaluation perspective, we can begin to define fidelity in more actionable ways. as in, your prototype only needs to do whatever it takes to simulate the experience you wish to evaluate. and to do this cheaply, we need to know the precise set of questions a prototype will answer.
and although it may appear that i too am subscribing to “fidelity as a property of the prototype,” i am not. instead, i am advocating enough fidelity so that your prototypes can be “used.” and to to this, rely on concrete stories-of-use.
i suggest you aim for fidelity of the experience and not of the prototype. actually, it was not me who said this; i heard it first from bill buxton.
- arnowitz, j., arent, m., & berger, n. (2010). effective prototyping for software makers . elsevier.
- warfel, t. z. (2009). prototyping: a practitioner's guide . rosenfeld media.
Published at DZone with permission of George Abraham. See the original article here.
Opinions expressed by DZone contributors are their own.