Why you must decide acceptable quality early

If you look at the surface of a cycle path and a road they look remarkably similar. The same crushed blue metal embedded in bitumen, rolled flat, white painted lines to designate lanes.

Comparison of surface of tertiary road and cyclewaySurface of road compared to surface of cycleway – can you tell which is which?

But the fundamental design and architectural decisions that went into the cycle path versus the road are very different; one is intended to carry cars and trucks and costs significantly more whereas the other is for pedestrians and bicycles only.

Everything below the surface is different: the depth of excavation and preparation of the bare earth, the laying and compacting of base material and the type and size of machines used to do it, the inclusion of shoulders, the schedule for maintenance and repairs and tolerance for defects and damage.

You can’t lay a cycle path and then decide to use it for heavy vehicular traffic as if it were a road even though it looks like a road (though narrower). You could re-purpose a road for cycle traffic only but that would be an incredible waste of money to lay a road if not for use by heavy vehicles.

Likewise with technology, you should make decisions about quality at the beginning and meet those quality criteria at every step.

If you start with relaxed criteria and a lower threshold for accepting software and technology and want to raise the bar later there’s a good chance it’ll be cheaper and safer to throw out everything out and start again.

There are misconceptions that iterative development as done with agile methodologies permits starting with a quick and dirty prototype or MVP and then gradually improving quality whilst also adding features, allowing the design and architecture to somehow emerge organically with little forethought.

This is foolish and will impede your agility; it absolutely is not a practice implied by the Agile Manifesto or Principles, or Scrum, or XP, or any methodology I’m familiar with.

I’ve always said that prototypes are fine, as long as you understand that the outcome is not the code but the learnings. There should be a permeable barrier between project stages so that code isn’t carried across into what is intended to be a production-ready, secure, stable, reliable, usable, and useful product.

Don’t be tempted to dilute and compromise your product with lower-grade code, design, and infrastructure.

Don’t build a cycleway and then drive a 5-tonne truck on it.

If you enjoyed this article please share it with your friends and colleagues.

Space Invaders analogy against dual-track Scrum

I have an idea for an analogy for iterative design and development that doesn’t slice off the designers as a run-ahead team within a dual-track process; it’s just a brain dump and I’m interesting in your feedback and suggestions.

I’m a strong advocate for a properly integrated design capability in Scrum teams, not sitting outside in a dual-track team where the designers work a week or more ahead of development and hand-over specifications to be implemented. The dual-track approach breaks the desired cyclical nature of agile into mini-waterfalls, excluding non-designers from the design process and reducing the impact of feedback and learning into refining the backlog. A dual-track approach puts designers in the pole position which is not ideal (though as a designer it can be comfortable, but not effective).

Problem is, dual-track is wildly popular because it’s easy. I’m not interested in what’s easiest. I’m interest in what’s efficient, effective, utilises the full collective capabilities and expertise of teams and adheres to the cycle of planning, doing, studying, and acting rather than merely rolling out a pre-determined backlog regardless of impact and benefit.

Space InvadersThe central idea is Space Invaders; every shot wears down an invader, some invaders (level bosses) require a lot of firepower to bring them down and you don’t work sequentially left to right; you might be working on shooting down a dozen invaders at a time.

Of course, an invader is still operational until you completely destroy it, but that doesn’t mean non-fatal shots are wasted.

The parallel with agile is that a team doesn’t have to work sequentially; think of an undamaged invader as an undefined problem or opportunity, the very beginnings of a user story or product backlog item.

The team can choose to focus their “firepower” on one story at a time but more than likely they’ll have a bunch of stories in various stages of destruction, or delivery as they progressively refine the backlog, discuss and workshop epics and stories, thrash out and test concepts.

Varying cascade of features from inception to ready for sprintSome features and user stories might require more discussion, research, testing, prototyping, and technical attention to get them ready for a sprint. Some are straightforward and can go from inception to development in an hour, others might need to be kicked around for a few weeks or more before they’re sufficiently detailed and able to be estimated, delivered, and tested.

The design “requirement” for some user stories might be satisfied with a quick sketch on the back of a metaphorical napkin whereas others – the level bosses – might require an extended game to go deep, research and prototype.

This doesn’t imply dual-track Scrum; like Space Invaders there is one defensive gun, one team. The team chooses what to focus on and where to allocate time and effort. Note that the effort expended on refining a user story or breaking down an epic may not be proportionate to the effort required to deliver those stories.

There may even be some rhythm to how they work; spending time on the closest, most urgent, and nearly-defeated invaders (user stories to be delivered in the next sprint or two), then some time on the middle tier of as-yet untouched invaders (proposed new stories), and some time on the bosses at the rear (the hairy, complex problems and opportunities).

What do you think of this analogy? Is it relevant? Useful? What else is there in this parallel? Are you a supporter of dual-track? Do you think designers should – or shouldn’t – be part of the Scrum delivery team?

Do you think there should be a designer working in the sprints at the point end of delivery and another outside the team working on the longer view product roadmap? One designer doing wireframes for the developers, in turn informed by other designers doing user research?

Or do you think that the design-development mini-waterfall within Scrum where designers work ahead of developers and handover specifications is silly and can be addressed through creative and collaborative approaches? Is dual-track a symptom of teams who don’t quite get it?

If you enjoyed this article please share it with your friends and colleagues.

Three main types of people encountered in attempted disruption

When it comes to disrupting organisations, I’ve found there are three main types of people:

A) Those who embrace change – regardless of personal discomfort, temporary loss of certainty, and sense of competency – who participate optimistically but can reinforce your own beliefs about what is the correct path. They give you confidence and momentum but don’t do much in the way of challenging your assumptions.

B) Those who think there’s nothing wrong with the status quo or who are diametrically opposed to your vision with no common ground. They may argue or sit on their hands, exclaiming “Don’t fix what isn’t broken” believing everything you do is compromising their well-oiled machine and should be rejected, and perhaps they’re right! You are seen as a liability and nuisance.

C) Those who recognise the need for change but don’t agree with your vision for it “Let’s do something, but not that”. They might get bogged down in details depending on how far their idea deviates from your own but they can helpfully calibrate your own sense of direction in case there’s a more optimal route or destination.

Change vision alignment radar chart

If you enjoyed this article please share it with your friends and colleagues.

Business must embrace Agile alongside IT

From Jason Little’s book Lean Change Management:

The introduction of Agile amplifies the complexity of interconnected organisations. When IT adopts a radically different way for implementing projects and focuses on earlier delivery and cross-functional teams, the business  must change their strategy and structure to match. When that doesn’t happen, friction between IT and the business is amplified.

That friction leads to more separation between IT and the business and ultimately leads to the organisation sliding back into the old way of doing things.

If you enjoyed this article please share it with your friends and colleagues.

Design vs implementation, from Marty Cagan

An excerpt from Inspired: How To Create Products Customers Love by Marty Cagan (a founding partner of the Silicon Valley Product Group and previously senior vice-president of product management and design for eBay, vice-president of product at AOL and Netscape Communications):

One thing that many teams try to do in parallel – but should not – is user experience design and implementation.

There are several reasons for this:

First, there is a dynamic in software teams that is important to recognise; once implementation begins, it becomes increasingly difficult to make the fundamental changes that will likely be necessary as you work through your user experience design ideas.

Partly this is technical – engineering teams must make some early architectural decisions based on assumptions about the requirements and designs in order to make progress. These early decisions are important and have big consequences.

Partly, this is psychological – there is a mindset that takes hold once the team shifts into implementation mode, and it’s demotivating to go backwards.

Partly, this is practical – the clock is ticking, and rework and churn just compounds the pressure the team is under. So even though methods like Agile advocate embracing change, you quickly find that some changes are much more welcome than others.

Second, user experience design deals with the very difficult question of both usability and value and, in order to come up with a product that is both usable and valuable, you will need to try ideas out – early and often.

One common response is “We’ll get feedback in beta,” or with Agile teams, “We’ll test the idea out at the end of the sprint.” Unfortunately this is far too long to wait to test out an idea. A good user experience designer will want to try out dozens of ideas and approaches in a matter of days, and the thought of waiting even for a two- to four-week sprint would be debilitating as the frequency is an order of magnitude too slow.

[…] Fourth, while it often makes excellent sense to break up a release into several iterations to implement (this reduces risk, improves quality, and eases integration) a user experience is often not something that can be designed in pieces. You have to look at the user experience holistically – it has to make sense to the user at each release. While it’s easy to “stub out” software that’s not yet available, it’s not so easy to do the same for the user experience.

If you enjoyed this article please share it with your friends and colleagues.

Efficiency versus consistency

Here’s a real world example of where consistency can matter more than efficiency: The traffic light controlled intersection at Haydon Drive and Jaeger Circuit.

Because there’s only a single lane coming out of Jaeger Circuit onto Haydon Drive southbound and because of ACT road rules, vehicles must stay in that right lane, so technically traffic in the left lane of Haydon Drives southbound shouldn’t need to stop at this intersection. But for consistency and to reduce confusion, all traffic is brought to a stop when cars on Jaeger Circuit have a green light.

Map of traffic light controlled intersection in Bruce, Canberra

To increase efficiency, the intersection would need substantial modifications to ensure signals are clearly comprehended by drivers and installing barriers as has been done at the south end of Anzac Parade for the left lane of northbound Parkes Way traffic. Also the Wentworth Avenue – Canberra Avenue – Sturt Avenue roundabout in Fyshwick where southbound traffic from Wentworth can safely bypass the roundabout onto Canberra Ave.

A poorly-designed example is the Yarra Glen – Yamba Drive – Melrose Drive roundabout in Woden where there is an increased risk of collisions because those same structural measures haven’t been implemented other than a solid white line, further compounded by the physical layout where vehicles on Yarra Glen are essentially going straight ahead onto Yamba.

Imagery © 2017 CNES / Astrium, DigitalGlobe, Map data © 2017 Google

If you enjoyed this article please share it with your friends and colleagues.

High quality is a way to pay respect to customers and users

From The Axe Book, a booklet that accompanies axes and tools made by Gränsfors Bruk, a forge north of Stockholm in Sweden:

What we take, how and what we make, what we waste, is in fact a question of ethics. We have an unlimited responsibility for the Total. A responsibility which we try to take, but do not always succeed in. One part of this responsibility is the quality of the products and how many years the product will maintain its durability.

To make a high quality product is a way to pay respect and responsibility to the customer and the user of the product. A high quality product, in the hands of those who have learned how to use it and how to look after it, will very likely be more durable. This is good for the owner, the user. But it is also good as well as part of a greater whole: increased durability means that we take less (decreased consumption of material and energy), that we need to produce less (gives us more time to do other things we think are important or enjoyable), destroy less (less waste).

Gränsfors Carpenter's Axe

Photo © Tito the Spoonmaker

If you enjoyed this article please share it with your friends and colleagues.

Excerpt from Jon Kolko’s book Well-Designed

From Well-Designed: How to Use Empathy to Create Products People Love (2014) by Jon Kolko:

Most of our product development processes are arcane and reflect outdated ways of thinking. The “product requirements document” for example – a leftover artifact from the 1980s – still seems to find its way into product development meetings, and those same meetings seem to spin endlessly around arguments about features, alignment, and time-to-market.

As the market demands products that are simple to understand, robust in their technical capabilities, and most importantly, delightful to engage with, our legacy processes obviously don’t deliver. And with consumer expectations relentlessly rising, becoming overwhelmed with the complexity of feature matrices and specifications is easy. In this increasingly complicated and pressurized world, it’s hard enough delivering a useful product at all, much less one that someone really loves.

In the past decade, mostly in reaction to this anxiety and complexity, a number of methodologies have developed that purport to be fast, nimble, and quick. These methods reject documentation and deride linear process, swinging the pendulum in the direction of speed and results. Run loose and lean, it is said, in order to fail fast and succeed sooner. Yet these methods introduce a mess of their own, and as a result, consumers often end up with incomplete products that feel half-baked.

If you enjoyed this article please share it with your friends and colleagues.


“Gold-plating” is often used to criticise designers when they attempt to thoughtfully design a useful and usable surface or interface for a product.

The approach here is that the breadth of the product is locked in and we progress across the entire base from the bottom towards the top, and clawing back time and money is done from the top down.

As long as the functionality is implemented and passes QA, effort spent at the surface is regarded as low value.

Diagram describing gold-plating as being the surface or interface of the UX layers model

But in reality the gold-plating has typically already happened before the build starts with the staking out of a product scope far in excess of what would satisfy the business objectives.

This is often due to the cumulative nature of requirements gathering (“Is there anything else you would like?”) and counterproductive procurement processes that demand clients precisely specify the solution before engaging the professionals they need to devise that solution.

Diagram describing gold-plating as cutting vertically through the UX layers model

The gold-plating is really entire vertical slices of scope, unnecessary systems integration, automation, and functions that should be demoted to the bottom of the product backlog ensuring that the highest value stories are implemented correctly and to a high level of quality; not merely “works” but at least “useful”.

Gojko Adzic software quality pyramid

Sure, getting your EFTPOS terminal hooked into your POS system would be nice and it’s what a system architect would strive for, but plenty of businesses get by just fine with manually entering transactions into the machine, including my local chemist, butcher, newsagent, and health food store.

If you enjoyed this article please share it with your friends and colleagues.

Trying to get info on ACT Road Rules

Or When Knowledge Bases Inevitably Go Bad.

I wanted to look up the ACT road rules to check what I thought was a new rule that came in last year about having to stay in your lane when going around corners on multi-lane roads rather than drifting across while cars are trying to merge.

If you’re curious what I’m talking about I’ll have to draw you a diagram because so far I’ve been unable to find information on it.

Anyway, so I started with the government one-stop-shop portal for the ACT, Access Canberra.

Access Canberra website Transport section

I started with Roads but that had articles on road closures, weighbridges, reporting road damage, and bus service accreditation.

So I went back and tried Safety & Rules:

Access Canberra knowledge articles

Ah there we go, ACT road rules:

Access Canberra cycling section

Hmm, Cycling section? Well, road rules are road rules … but what’s this about mobile phones? Did it link me in too deep? No, I guess that’s a frequently-asked question or something they’re promoting at the moment.

Well, there’s a link there to ACT road rules so let’s keep following the scent.

Ah great, is that seriously the best you can do, send me to view the actual legislation?


Guess I’ll give Google a go … and found what I was looking for, titled the ACT Road Rules Handbook [PDF]

If you enjoyed this article please share it with your friends and colleagues.