why software drives us crazy

12
e Presented by: Michae Bolton Brought to you by: 340 Corporate Way, Suite Orange Park, FL 32073 8882 K1 Keynot 4/8/2014 8:30 AM “Why Software Drives Us Crazy” l DevelopSense 300, 688770 9042780524 [email protected] www.sqe.com

Upload: techwellpresentations

Post on 11-May-2015

48 views

Category:

Technology


0 download

DESCRIPTION

Some people insist that machines will replace humans in many different ways; others disagree, but without explaining why. You could say a smartphone app replaces an admin assistant by managing your schedule. However, to make the app work, you must modify your usual behavior by providing input in a formal, explicit way, and then interpreting and correcting its output to make up for the app's inflexibility. But storing, transforming, and displaying data are only part of the picture. Truly managing your schedule means making decisions about values, politics, and social concerns, and that requires tacit knowledge internal to you and not easily transmitted to machines. Michael Bolton describes how great testing depends not only on requirements but also on people's ideas, experience, and social interplay. Machines may accelerate or extend some human actions, but machines do not have access to people's tacit knowledge. And without that, important things get lost. Michael describes the implications for testing—and for the products that drive us crazy.

TRANSCRIPT

Page 1: Why Software Drives Us Crazy

 

 

 

e    

 

Presented by: 

Michae Bolton 

Brought to you by: 

  

340 Corporate Way, Suite   Orange Park, FL 32073 888‐2

K1 Keynot4/8/20148:30 AM     

“Why Software Drives Us Crazy”  

 l 

DevelopSense      

    

300,68‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com 

Page 2: Why Software Drives Us Crazy

Tester, consultant, and trainer Michael Bolton is the coauthor (with James Bach) of

Rapid Software Testing, a course that presents a methodology and mindset for testing

software expertly in uncertain conditions and under extreme time pressure. Michael is

a leader in the context-driven software testing movement with twenty years of

experience testing, developing, managing, and writing about software. Currently, he

leads DevelopSense, a Toronto-based consultancy. Prior to DevelopSense, he was with

Quarterdeck Corporation, where he managed the company’s flagship products and

directed project and testing teams—both in-house and worldwide. Contact Michael

at [email protected].

Michael Bolton DevelopSense

Page 3: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

1

Why Software Drives Us Crazy(and why some of the craziness

won’t stop any time soon)

Michael Boltonhttp://www.developsense.com

@michaelbolton

April, 2014

These opinions are my own

but I’m willing to share.

Page 4: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

2

While preparing for this talk…• I was trying to figure out when I had to leave• I couldn’t find the airline’s confirmation messages• Found them! I decided to change my sorting rules• I right-click on the message, and chose “Rules…”• Outlook presented me with this:

I wanted to tell you all about it…• I fired up qTrace (a wonderful tool, in theory,

produced by very nice people)• I figured I could capture Outlook’s behaviour• This raised problems of its own…

Page 5: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

3

I wanted to keep organized…• Next I wanted to use MindManager to help

me organize my notes on all this.• I had several COMPLETELY SIMPLE cut and

paste problems– cutting and then pasting the screen shot doesn't

work when I'm editing text

• I couldn't position the callouts.• It's as though they've never studied a

competitive product, or mind maps in general.

And I’d report these problems, but..

I keep finding myself shaving a yak.

Page 6: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

4

Why Software Drives Us Crazy Part 1: The “Weak” Problem

In various ways, developers, designers, and organizations

aren’t handling the user’s tasks or problems.

Software is developed by geeks

• Geeks drive cars with stick shifts, because they’re interested in the process of driving…

• …but most people don't want to drive somewhere; they want to BE somewhere.

• People don't want to use your software; they want to HAVE USED your software.

Page 7: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

5

Software is developed by people who know what they mean (probably)

Sometimes people are just plain sloppy.

Page 8: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

6

People Don’t Like To Think Too HardAbout Problems

Organizations Don’t Like Hearing About Problems, And We Don’t Like Calling Any More

Page 9: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

7

Why Software Drives Us Crazy Part 2: The “Medium” Problem

Translating between analog and digital models

can be tricky.

Why Software Drives Us Crazy Part 3: The “Strong” Problem

Because increasingly, software mediates not only mimeomorphic actions, but also polimorphic actions.

See Harry Collins, The Shape of Actions (with Martin Kusch)and Tacit and Explicit Knowledge

Page 10: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

8

Behaviour• the physical counterpart of an action. (The

other part of action is intention)• behaviours are observable and describable

without reference to context.• Examples: a blink, a scratch, a clap

Behaviour is“doing something observable”

Mimeomorphic Action• an action that can always be carried out by

repeating the behaviour, irrespective of context• can therefore be mimicked by machines which do

not need to understand the context• examples: spray painting a chair; marching on the

parade ground; touch-typing; bicycle balancing

Mimeomorphic action is“doing something intentionally and repeatably”

Page 11: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

9

Polimorphic Action• an action where the behaviour must be changed

according to context in order to carry out the action• note that sometimes the same behaviour can

instantiate different actions according to context– example: a signature; a handshake; bicyle riding

• Polimorphic actions may embed mimeomorphic ones– example: touch typing embedded in letter-writing– example: scripted behaviour that ignores context

Polimorphic action is“not just doing something,

but DEALING WITH something”

Harry Collins on Software Testing

“Computers and their software are two things. As collections of interacting cogs they must be ‘checked’ to make sure there are no missing teeth and they wheels spin together nicely. Machines are also ‘social prostheses’, fitting into social life where a human once fitted. It is a characteristic of medical prostheses, like replacement hearts, that they do not do exactly the same job as the thing they replace; the surrounding body compensates.

Page 12: Why Software Drives Us Crazy

Why Software Drives Us Crazy Michael Bolton

10

Harry Collins on Software Testing

“Contemporary computers cannot do just the same thing as humans because they do not fit into society as humans do, so the surrounding society must compensate for the way the computer fails to reproduce what it replaces. This means that a complex judgment is needed to test whether software fits well enough for the surrounding humans to happily ‘repair’ the differences between humans and machines. This is much more than a matter of deciding whether the cogs spin right.”

Abstract, “Machines as Social Prostheses”, EuroSTAR 2013

So, what can we do?• observe and interact with the user• become anthropologists and social scientists• learn about the user’s task

– interview– ideally, observe directly– identify and report problems accordingly

• think of software as something that aids a human, not something that replaces a human