What is the snowball effect in software engineering?
Last updated: March 13, 2024 Read in fullscreen view
- 02 Nov 2023 Differences between software walkthrough, review, and inspection
- 20 Mar 2022 What is a Multi-Model Database? Pros and Cons?
- 05 Jul 2020 What is Sustaining Software Engineering?
- 03 Jul 2022 What is the difference between Project Proposal and Software Requirements Specification (SRS) in software engineering?
- 15 Feb 2024 What is a Cut-Over in Software Development?
What is the snowball effect theory?
The snowball effect is a psychological term that explains how small actions can cause bigger and bigger actions, ultimately resulting in a big impact. Imagine a snowball that is rolling down a snow-covered hill. It starts small, but as it gathers more momentum, it picks up more snow, making it larger and larger.
The Software Snowball Effect
It’s the ‘good software snowball’ effect. Here’s also the ‘bad software snowball effect’ but that one’s not relevant. Here’s what the good software snowball effect is:
Once the groundwork is laid, the further into a software project you get, the faster you can add functionality.
This is profound. It means that once the minimum viable product (MVP) is built, the rate at which you can add functionality, at least for a good piece of the life of a software project, grows exponentially! In other words, assume that it takes a year to get the MVP built and polished. In the following six months, you can expect to be able to at least double the functionality of the MVP. And in the six months after that, you will likely be able to do so again.
This doesn’t mean that it’s a good thing to lather on loads of ‘bells and whistles’ just because you can. One still needs to be disciplined in choosing what functionality to add and to be careful not to bloat the product with unnecessary features.
That said – that roadmap that you’ve been building since before the first line of code went down… That roadmap that’s been growing based on customer input and looking at other products and imagining what could be… that list of ‘must have’ features that’s been growing faster than you ever thought you’d ever be able to deliver on it… suddenly, it starts to shrink. Suddenly, you can deliver to your customers, great new features, much faster than you had been able to do before.
The reason this happens is quite simple: You start by building infrastructure; basic building blocks and various tools. Until these are built, progress is slow. But once the building blocks are available, you can start to combine them to produce bigger building blocks. And then you can combine those building blocks to build even bigger ones. Unlike building physical things, you don’t need to do much work to combine building blocks into bigger building blocks. It pretty much comes for free.
And that’s the beauty of software development. And right now, we, the product team at Scope 5, find ourselves in the happy position of having delivered a solid MVP and starting to reap the benefits and the joys of exponential productivity. And our customers are finding themselves in a similar happy position of seeing those great features they’ve been waiting for, rolling out at a quickening pace.
Via scope5