The promised land of prototyping
Realizing the full potential of prototyping
While some may claim that prototyping isn't one of
the wonders of the world, it's definitely a wonder of web and software
development. It can help us design better products and overcome many of
the hurdles that tend to surface during a development process.
The qualities of prototyping reach further than being a tool for visualization.
It’s a method that can help us create better designs, improve team
collaboration, effectively communicate with our clients and foster a more
painless and cost-effective project workflow. Welcome to the promised land
of prototyping.
The product is designed
The most important reason for building a prototype is to make sure that
a product gets designed rather than left to chance.
Designing is the art of making plans for how to create things, and experienced
artists and craftspeople make plans before they create anything final.
Painters draw sketches, car designers build vehicle models, and architects
create blueprints and cardboard mock-ups.
To reject prototyping as an essential part of a development project can
be compared to a builder depending on the workmen to think something up
along the way instead of having an architect work out plans for the building.
Helps us externalize and develop ideas
What's great about prototyping and other modeling and sketching
techniques is that they help us overcome the limitations of our cognitive
abilities to process, develop and maintain complex ideas in our mind and
share them with other people. Prototypes provide us with a space where
we can test design alternatives, generate new and better ideas, and gradually
refine them into final designs.
Legalizes experimentation and revisions
The reason for creating a prototype is that it allows us to try out ideas
in an environment that is close to reality but the costs of making changes
are affordable. Because prototypes are easily created and modified, we
can spend time working through the prototype and eliminate the flaws that
would otherwise surface during the development phase.
Can make the intangible tangible
Clients have a very hard time understanding how a product is going to
work from technical specifications, and developers often find it difficult
to translate them into practice, because they usually describe what a product
can do but not how the users are going to access its features. Compared
to technical specifications, a prototype is easy to grasp for everyone,
since it's a representation of the final product. It shows what the
product can do and simulates how it's going to work.
We can satisfy clients' wish to see quick results
If clients have to wait for months without seeing any tangible outcomes
of their investment besides invoices and technical specifications, it's
no wonder that they get impatient and worried about whether everything
is going to turn out as they expect. By entering the prototyping phase
at the beginning of the project, we are able show something tangible very
quickly. We can start the dialogue about the design at an early stage and
build our clients' confidence that we understand what they want.
We can take the client for a test drive
Would you buy a car only by examining the technical specifications? I
think not! As customers, it's important to us what the product can
do, but also how it works. We want to kick the tires and take it for a
test drive before we consider buying it.
In most software development projects it's impossible for clients to evaluate
the product they are buying since it doesn't exist yet. With a prototype,
we can take the client for a test drive and demonstrate how the final product
is going to work. The client can see and interact with the prototype and
we can give them an experience of the design that they can't get
from technical specifications and presentations.
We can reduce scope creep
Clients have a reputation of being unable to tell what they want, to
constantly change their minds, and to sneak in new requirements until the
very last minute in the development process.
What we fail to recognize is the challenge that clients face. They have
to consider every possible detail of a product that doesn't exists
yet - a task, which is practically impossible for anyone.
Scope creep is said to be the most common source of cost and schedule
overruns. By giving clients something to experience and interact with before
we start building the actual product, we can get the detailed feedback
that tend to surface when the product is almost complete, and thereby reduce
the risk of creeping requirements late in the project.
Makes early usability tests possible
The day we release a new product is not the day we want to find out that
the people who are going to use it don't get it. It hurts the client's
reputation and it's costly and painful to fix serious problems at
such an advanced stage. By carrying out usability tests during the prototyping
phase, we can learn what works and what doesn't at a time, where
the cost of correcting design flaws is insignificant.
Improves team collaboration
Web development is a multidisciplinary exercise involving highly specialised
team members with different mindsets and perspectives. Issues such as graphic
design, branding, marketing, usability, programming, client requirements,
budget and time frame have to come together.
Prototypes can encourage team collaboration and bring a disparate team
together. Since everybody can relate to it, it allows the various actors
to provide insight and weigh in on the design before it's finalized.
The interaction designer can get answers to important questions and make
sure that the design is technically feasible and attainable within the
budget. We can get buy-in on the design from the rest of the team, and
the prototype can function as a shared plan that keeps the team headed
in the same direction.
Can serve as a master plan for implementation
A common source of frustration for developers is lack of detailed information
about what a product is going to include and how it's supposed to
work. A prototype can serve as the master plan for the implementation of
the product and as a means of maintaining a shared understanding of what
it's going to be in the end. By demonstrating functionality and flow,
it cuts through a lot of confusion, and allows the team members to concentrate
on doing their part of the job.
Improves cost-efficiency
The cost of making changes to a design grows exponentially throughout
a project. It's a rule of thumb that it takes ten times longer to fix a
problem during development than in the design phase and a hundred times
longer once the product is finished.
Changes to a design are inevitable. It's impossible to get it right
the first time. By working thoroughly through a prototype and reach agreement
with stakeholders and team members on the design at an early stage, we
can avoid major overheads down the line.
Prototyping does add a phase to a projects' schedule, but it's
an investment that pays off in the long run. Adding the time to create
a prototype will make the entire project workflow more efficient.
In conclusion
As you can see, the wonders of prototyping are truly amazing. So aren't
there any negative sides of prototyping? Not really! We can still come
up with designs that suck, but prototyping provides the conditions for
designers to do their best. Clients will still be as demanding as they've
always been, but prototypes allow us to deal with disagreements before
we start building anything final.
With prototyping, we can create better products, and the entire project
workflow is made more efficient and less frustrating for everybody involved.
It's a true wonder.
Text: Henrik Olsen
Comments
|