This is an episode about #NoProjects, #NoEstimates and introduces a unique, and 1-time-only workshop by Allan and Vasco that will take place in London in February 2019. Check out this page about the #NoProjects and #NoEstimates Workshop to know more.
In the past few years a few new trends have emerged in the Agile community that have challenged some of the basic assumptions of how software should be delivered. The first one, #NoProjects is challenging the idea that software work is best managed as a project. As Allan puts it in this episode: “Successful software does not end. It continues. And projects are for temporary endeavours, that have a known start and fixed end. That’s now how software is developed today.”
With that start to the episode you can expect that many unconventional (and inconvenient?) ideas will be shared in this podcast focused on the latest trends in how to manage software development.
Uber, Amazon, Google and many others continuously work on software, not on projects
In this episode, Allan challenges us to think of projects as a vehicle to manage work. When we think about projects as a way to manage work we can start asking about what other methods are there that can deliver the same value (manage work) without the obvious drawbacks of the project model.
Uber, Amazon, Google and countless others continuously deliver software to production every day or every few days. When we deliver software to production that often, does the project construct even make sense? Isn’t it just a case of selecting and working on the highest value items first and proceed from there?
Of course, there are other reasons why the project model is used in our companies. The most obvious one is the financing and capitalization of work. In simple terms, projects are “investment” items in a company’s accounting, and are treated as such. They have a value accrued and depreciation over time. That way they help the accounting follow some simple rules about how investments should be accounted for. However, that’s not the only way to account for work. In fact, there’s a trend coming from the financial disciplines that proposes a “flow” or capacity funding model for software development. In this paper, Rami Sirkiä and Maarit Laanti (PDF Download) describe an accounting (and funding) model for software development that does not require the same model as projects.
In short, it is possible to organize and manage work without the project construct. And it helps companies with funding, accounting and – especially – focus on value delivery.
From #NoProject to #NoEstimates: flowing value to the market requires no estimates
The project model brings with it a number of concepts that are impossible to avoid once the decision is made to work in that way. One such concept is the sequencing and estimation of work up-front. And that’s where many problems with today’s software development start. For example: to estimate work up-front, we must design it up-front, we must make “resource” (that’s the word used, but it should really be: people!) schedule commitments up-front. Once the delays start affecting the project, all dependencies break and the project starts being inevitably and unrecoverably delayed.
The #NoEstimates camp proposes a different approach to setting, and managing time in software development. In his book, Vasco Duarte (the host of the podcast), proposes simply counting the number of stories delivered to a “production-like” environment as a way to assess progress and manage scope. Managing the scope is the only tool – Vasco argues – that allows software development organizations to deliver products to the market in useful time.
Given that we know that adding people to a late project only makes it later (from 1972! Thanks to The Mythical Man Month), it is best to follow the progress from the start, and always have a clear market window in mind to introduce the product or service under development. Once the market window is clear, and the progress is measured (counting stories delivered to a “production-like” environment), we can then manage the scope as to hit that market window.
The alternatives proposed by #NoProjects and #NoEstimates can improve your delivery track record
After introducing #NoProjects an #NoEstimates, Allan and Vasco then discuss concrete alternatives to the traditional methods that teams can start using.
Vasco introduces the Complexity Quadrant, a tool that Scrum Masters can use to foster discussion and decision-making within teams about the User Stories they need to deliver but without ever mentioning estimation.
Placing stories on a quadrant with two complexity dimensions (Social Complexity and Technical Complexity), the teams can then have informed, concrete, and decision-focused discussions instead of having fuzzy, un-directed “sizing” conversations.
Allan also suggests an alternative to Projects: continuously deliver valuable functionality to the market and focus on defining priority based on expected value. You can use a simple value model (listen in to learn about the Business Value Equation), and start focusing on value discussions instead of Pork Barrel projects (listen in to learn more about those).
Finally, Allan and Vasco discuss some of the key takeaways they expect #NoProjects and #NoEstimates workshop attendees to get from the workshop they are organizing in Zurich just before the ALE2018 Unconference in August 21st, 2018.
If you want to know more about the workshop, check out the page with the details and tweet at Vasco and Allan with questions.
About Allan Kelly and Vasco Duarte
Allan Kelly has helped companies large and small enhance their agility and boost their digital offering. Some of his clients include: Virgin Atlantic, Qualcomm, The Bank of England and Reed Elsevier. He has also developed Agile games such as Value Poker, Time-Value Profiles and Retrospective Dialogue Sheets.
He’s also been a busy book author. He’s published, so far: “Dear Customer, the truth about IT”, “Project Myopia”, “Continuous Digital”, “Xanpan” and “Business Patterns for Software Developers”.
Vasco Duarte is a managing partner at Oikosofy where he wants to change the world, one company at a time. He’s also the regular host at the Scrum Master Toolbox Podcast.
Product Manager, Scrum Master, Project Manager, Director, Agile Coach are only some of the roles that he’s taken in software development organizations. Having worked in the software industry since 1997, and Agile practitioner since 2004. He as worked in small, medium and large software organizations as an Agile Coach or leader in agile adoption at those organizations.
Vasco was one of the leaders and catalysts of Agile methods and Agile culture adoption at Avira, Nokia and F-Secure.
You can read more from Vasco at his blog: http://SoftwareDevelopmentToday.com