The rise of Git, GitHub, and Pull Requests (PR) has resulted in some big changes to the practices and workflows within the software industry. In particular, they’ve revolutionised the world of open source, providing a robust mechanism that allows and encourages strangers to contribute to projects.
The branch and pull request workflow has also been adopted by swathes of commercial software teams, and it seems to have become the de-facto standard of development workflows. But as a user of this workflow for a few years myself, I’m starting to question the following:
Lately I’ve been contemplating whether the Scrum process and the ceremonies that accompany it are actually serving a purpose for our team anymore.
When added together, the time spent in sprint planning, story refinement, and sprint review takes up a large chunk of time from a two-week sprint and often interrupts the team’s flow. It’s worth reflecting on whether this is time being well spent.
When thinking about these meetings collectively, it dawned on me that the majority of energy put into them is focused on organising work into sprints. This got me thinking — why are we doing that…
Ankit Singh Raghuvanshi
Thanks for taking the time to respond. I think you raise some good points.
With 1) Yes I think you're absolutely right that smaller commits would require temporary code as you say. Where we disagree is that I don't think this is a negative or bad practice. Adding temporary code is a fairly widely adopted strategy as an enabler for Continuous Delivery.
You might know about these already and just dislike the idea, but in any case here is some info on some of the practices I use for temporary code:
Keystone Interface: https://martinfowler.com/bliki/KeystoneInterface.html
Feature Toggles: https://martinfowler.com/articles/feature-toggles.html
Feature Toggles have become a frequently used tool in my team, bringing us many benefits such as:
Software developer on the south coast of the UK. Opinions expressed are solely my own and do not express the views or opinions of my employer.