Peter sent this to me this morning, it’s an interesting look at how software is developed and artfully merges two topics, usability and development methodologies.
I think the hierarchy of needs adaptation is clever but I’m getting hung up on two points. The first being that usability is a function of intuitiveness, efficiency, and learnability. Secondly, I’m not quite getting the “enchantment” theme because that’s such an abstract word and the only thing I can think of that fits this description is game software but games don’t have much utility beyond entertaining and I can’t imagine productivity software/services that would bridge that gap.
Nonetheless, we talk about this at our company from many angles and are beginning to take a hard look at how we develop our software and what we should do more of, less of, and what we can do better.
The software development process usually drives what users get. In the beginning, there was the Waterfall model based on a world where everything is known in advance and specs don’t change (i.e. a figment). Users got something functional, just not what they wanted or needed by the time the software shipped. Then came various spiral flavors: Iterative, Agile, XP. Unlike waterfalls (which run in one direction and don’t back up), spirals can produce software much more likely to match what users want. Spirals support usability, and usability drives the need for spiral development. But what comes after usability? And will new development approaches emerge to support it?