In
Alan Cooper’s seminal work “The Inmates are Running the Asylum”, Cooper
discusses systemic problems in the software development life cycle. Too often the software development cycle is
adversely effected by the technical team charged with implementing the proposed
solution. The technical team is
generally not educated or trained in craft of experience design and they
generally lack the empathy needed to understand the emotions of their
users. The technical team is passionate
about the software they write and they are deeply invested in the design they
have created. Their personal investment
in the software design is a large part of the problem. By their nature engineers are analytical and
generally lack the empathy needed to design delightful experiences. It’s not that they don’t want to design
delightful experiences; they need better training and insight into the
emotional motivations of their users.
In
so many ways, the inmates are running the software development asylum. Through their action and inaction the
software development teams are driving development schedules and release
features. Those aspects of the software
that are not sexy enough or are too emotional for the engineers are often
labeled difficult to achieve or are given estimated development times that are
so long that product owners are reluctant to invest the time to bring them to
market. It is through this quiet
resource dance that the software development team has hijacked the software
design process. Now that the software
engineers have hijacked the process, the user’s emotions are cut out of the
design process. The software wont crash
and it might be reliable, but it’s unlikely to be delightful.
Thankfully
Cooper does not stop after clearly describing the problem. The product owners need to recapture control
of the design process in order to create software that is not just usable, but
potentially delightful. Cooper
introduces the concept of the Persona to readers and subsequently to the
software development team. Through the
persona, Cooper introduces the concept of designing for people to replace the
concept of designing for users. By clearly defining the user in terms of name,
photograph and emotional motivations the product owners can humanize the user
to the software development team. It may
be easy for the developers to dismiss the needs and wants of the users, but it
becomes much more difficult to deny the needs of Susie the Stylist who is
trying to bring harmony to the world.
Software
design is a team undertaking. Engineers
are very talented and well educated in the area of algorithms and database
design. Unfortunately, software users
don’t generally care about algorithms or database design. Software users care about issues that effect
their jobs and the tools they use to make their job easier. It is likely that the tools needed to make
the software user’s job easier requires algorithms and databases, but if the
software is hard to learn, hard to remember and difficult to run – it doesn’t
really make the user’s job easier. The
software development team must include members that are trained in the design
craft. These professional designers need
to carry the emotional needs and wants of the customer to the software
development team. With the right mix of
algorithm designers, database designers and experience designers – the software
product has a chance at being a delightful experience.
No comments:
Post a Comment