Next Generation Software Engineering

Next Generation Software Engineering
Next Generation Software Engineering

I am excited!

When somebody like Mary Poppendieck during a keynote at the Lean Kanban Central Europe 2014 presents a slide named “Next Generation Software Engineering” and you realise that your teams cover each and every point, it is a great feeling.

The points (blurred in the picture) are:

  • Acceptance Test Driven Development process
  • Tight collaboration between business and delivery teams
  • Cross functional teams include QA and operations
  • Automated build testing, db migration and deployment
  • Incremental development on mainline with continuous integration
  • Software always production ready
  • Releases tied to business needs not operational constraints

And there is so much more we can do to improve, even more exciting! Well done PaddyPower! Well done BSD!


Testing, the big agile misunderstanding

Navigating social media I bumped into the Capgemini Word Quality Report 2014-15. After sharing my personal data with Capgemini, I downloaded it and started reading. First of all, it is a very well written document, second the findings are interesting, I will talk about some of its puzzling conclusions some other time.

What I am going to comment on here is one small part in the chapter “Agile Testing: Growing in Acceptance, Still to Fully Mature” and in particular to the finding that the biggest challenge in agile testing according to the report is:

“Lack of a good testing approach that fits with the agile development method”

According to the report 61% of the 1432 respondents (among 1543 CIOs and IT testing leaders) claim this is an issue for their organization and among the issues this is the most widespread.

Can you see the real problem?

The problem is that 61% of the interviewed don’t know what agile testing is about, and that’s the real issue.

Agile testing is an inseparable part of agile software development how can it not fit with itself?

Do you want to know when it will not fit? It will not fit when you try to shoehorn traditional centralized independent testing approaches into an agile development team. Yes in that case it won’t fit at all, in fact, forget it, if you do that you will fail.

Do you really want to be agile? Really? Then forget about Test departments and change the culture in your organization. Software quality is everybody’s responsibility in an agile organization, embrace the change and YOU WILL FIT.




Be lean, ask “why?”


Your best piece of code is the one you won’t have to write.

Yes I am serious, and no, I am not intoxicated, let me tell you a story.

It was a sunny summer day in Dublin and “the three amigos” (Tester, Developer and Product Owner) were discussing the next user story to deliver.  It all started as usual with the Product Owner explaining what we were meant to do and as the story was quite small and easy we were soon starting to write our examples that would become acceptance tests and eventually code.

Everything was going smoothly, we had already agreed that we would add a field to our payload with the new information, until out of the blue, the tester said:  “why? I mean, why do we need to do this?”

The product Owner said: “Because we need to send extra information to customer A!”

The tester insisted: “But why do we need to send it to customer A?”

The product Owner said: “Because we always send it to system X so that it can create product Y”

Then the tester said: “But customer A doesn’t use system X and doesn’t sell product Y, so why do we have to send it?”

The product Owner said: “You might be right, but Mr. SuperBoss said he wants to send it!”

The tester said: “Well, we need to ask Mr. SuperBoss WHY he wants to send it”

The product Owner stood up, went straight to Mr. SuperBoss and asked him.

The fact is, there was no reason, we were wrongly assuming that customer A would need it.

Would you agree with me that the code we didn’t write is super clean, extremely cheap to develop, test, deploy, maintain and sunset?

It only ever costed a conversation, and a few whys, I bet you can’t do it much cheaper!

If you don’t see the business value of what you are delivering, ask for it, you might get a nice surprise and find out you don’t need it at all.