I’ve got bad news and good news.
Continue reading “Pomodoro Technique® Considered Harmful (don’t worry: you are not using it)”
Category: agile
The Definition of Definition of Done
TL;DR
Want to help editing a collaborative version of Definition Of Done checklist, driven by questions, rationales and “don’ts”?
Click here and feel free to share your ideas!
Continue reading “The Definition of Definition of Done”
What-If Daily Scrums

I agree with Michael Kennedy when he says that Software Development could be modeled as a Knowledge Discovery Process, “the process of going from 0% knowledge about an idea to 100% knowledge of a finished product ready for delivery to a customer“.
I agree so much that I decided to adapt my future Daily Scrums to this.
In Introducing Deliberate Discovery Dan North quoted this story:
Continue reading “What-If Daily Scrums”
Principles and Rules
Well, if only I had seen then what I saw today, I would have used in my talk, since I think it would have been the perfect example.
See what I found in a recent production code.
Right now, it hangs on the wall of our open space, for all the developers to see.
Preemptive commit comments
tl;dr version
Rule #1: write commit comments before coding
Rule #2: write what the software should be supposed to do, not what you did
You won’t believe how old TDD is

Kent Beck is credited as the TDD inventor.
Yet, he claims he just re-discovered it.
Continue reading “You won’t believe how old TDD is”
8 Practical Rules For Producing Decent Estimates
This the second part of How I Was Able To Be Successful Even When Forced To Use Waterfall
Rule #1: take your time
Luckily, your estimation meeting will be much more fortunate than mine (see Part I).
In my previous Scrummerfall experience, since I was forced to produce a big-planning-up-front phase, I was used to always plan 2 or 3 days for it. I was asking for an estimation when my ignorance of the problem was at the maximum level, hence I needed a lot of analysis.
Continue reading “8 Practical Rules For Producing Decent Estimates”
Concerto – A Board For Agile Teams
Concerto collects some ideas for a better and more effective board to be used in Agile projects.
For an unfortunate coincidence, I chose the same name of the famous Parasoft’s development management software, which I didn’t know before.
Concerto board has nothing to do with Parasoft.
Concerto – A Board For Agile Teams from Arialdo Martini on Vimeo.
A brand new, iterative and analytic Agile Methodology is born. Don’t miss it!
Disclaimer
This post is going to be pretty long.
Feel free to scroll down, or roll the paragraphs, if you think.
I’m pretty sure you will entirely read it later, since it is really interesting.
In case of panic, click here to jump to conclusions.
Introduction
Managing The Development Of Large Software Systems
I am going to describe my personal views about managing large software developments. I have had various assignments during the past nine: years, mostly concerned with the development of software packages for spacecraft mission planning, commanding and post-flight analysis.
Continue reading “A brand new, iterative and analytic Agile Methodology is born. Don’t miss it!”
8 rules for being successful even when forced to use Waterfall (with a pretty good estimation)
Waterfall can work
No it cannot.
I mean: actually, it does, but adopting new and modern methodologies, you can dramatically improve your team productivity.
Yet, I believe most teams are using a mix of Agile and Waterfall. The reason is Waterfall is the sole methodology able to give the only information your manager needs to know: how much the project will cost and what’s the delivery date. About this, read the excellent post by Christopher Goldsbury Why Agile Adoption Fails in Some Organizations
Continue reading “8 rules for being successful even when forced to use Waterfall (with a pretty good estimation)”
Why you should learn some Waterfall as well
Scrummerfall
I once worked as a team leader in a startup. I was in love with XP, studying Scrum and looking forward to be able to put into practice what I was reading.
Unfortunately, my boss explicitly told me to use Waterfall. I never blamed him: before him, the company had no process at all, and was governed by anarchy; no documentation, no requirements, no clear roles. Actually, introducing a Waterfall process, he made a great revolution, and let the company succeed.
Continue reading “Why you should learn some Waterfall as well”
Help me, because I think Martin Fowler has a Merge Paranoia
Please, help me to understand what I’m missing.
Continue reading “Help me, because I think Martin Fowler has a Merge Paranoia”
Unit tests lie: that’s why I love them
When a unit test for a method implementing some feature is green, it does not mean the feature is working. The corresponding end-to-end or integration tests reveal if it’s working or if it’s broken. To Product Owner’s point of view, end-to-end tests are all that matters. Unit tests are useless.
Unit tests are meant to lie. They rely on the often wrong assumption that the rest of the world is correctly working, but only because they are explicitly mocking it: using a fake world is a deliberate lie.
To me, that’s exactly why they are so useful.
Software Developers Are Not Coders
I got shocked by Mike Gualtieri’s post about agile. I’m not expert enough to claim if he’s right or wrong. He surely gave me a lot to think, though. Continue reading “Software Developers Are Not Coders”
Wrong estimation, help! I’m late! Cut features and stop waterfalling!
I won’t be able to deliver on time. My estimation was too optimistic. What can I do now?
If you can’t deliver on time, don’t. Simple, isn’t it?
I believe the best strategy is cutting features and start both constantly refining your estimation and doing Deliberate Discovery. In other words, I believe the question was somehow misplaced.
Continue reading “Wrong estimation, help! I’m late! Cut features and stop waterfalling!”
Agile and “Knowledge, Authority and Loving Yearning”
One of the rare reasons why I’m proud to be Italian is a sentence by an anonymous author, back in the 1300’s.
More than 700 years ago. Yet I think it has something to teach us about Agile.
Continue reading “Agile and “Knowledge, Authority and Loving Yearning””
The biggest difference between Waterfall and Agile
Among all the interesting concepts he exposed, one struck me the most.
Continue reading “The biggest difference between Waterfall and Agile”
Perché Martin Fowler non ha capito il Feature Branching
Perché il tuo superiore è un incompetente?
Perché è così difficile essere meritocratici? Continue reading “Perché il tuo superiore è un incompetente?”
Introducing Deliberate Discovery
Traduzione dell’articolo Introducing Deliberate Discovery di Dan North