Beyond Agile Software Development – The MMA Way Part IV The Big Bug Grapple
Empty your mind, be formless, shapeless — like water. Now you put water in a cup, it becomes the cup; You put water into a bottle it becomes the bottle; You put it in a teapot it becomes the teapot. Now water can flow or it can crash. Be water, my friend.Bruce Lee
At Rainmakrr we’ve been ingrained in Agile since before we knew the term. It’s not that we’re maverick geniuses or anything like that but having been brought up in a understandable and logical culture of big waterfall development which makes a lot of sense in the games console business and then moving into green field startup software development it’s kind of baked in.
It goes with the territory when you’re building something from scratch but you’re not too sure what it will be and even the intern’s got a computer science major.
But then working again from time to time in the corporate world it’s turned from an overwhelmingly positive ethos and manifesto into a bastion of dogma.
Taken over by the consultancy it’s to be worships as an ends and not a means.
And we’re against that. Because there’s many ways to skin a cat as there is to build the thingy.
So we’re rather cockily trying to develop a methodology that goes beyond agile software development which takes the best from all approaches and most importantly codifies the application of rapid change in approach, team structure and methodology to maintain productivity in all project development environments.
And we’ve called this approach Mixed Methodology Approach or “MMA” for short.
The MMA Way – The Big Bug Grapple
This week we’re going to argue that an Agile approach to the end of project phase 1 (MVP, Alpha+ The 1.0, milestone 1 whatever) bug crushing phase is not inherently suitable.
It’s not inherently suitable for a green field project yet alone in a multi-departmental multi-mixed in-house external dev team corporate environment even before we throw in legacy systems integrations, billings enablers and live environments.
You can punch the Bugs into JIRA, Microsoft Project or Pivotal if you’re lucky and – god forbid – Trello (Ed: Great free and crafted software btw, just not suited for dev…) or whatever specialist SCRUM software you have.
It’s not going to be fixed in any Agile manner.
What we argue here is for a kind of MMA Tag Team to wrestling those insolent big bugs to the ground and kill them off.
Big Bug Grappling is for fanatics with a passion for solving complex problems involving systems, code or processes that no one individual fully understands.
We’re not talking about the little styling and display bugs and UX fails on the boss’s cousin’s old Android. Those can be estimated and agiled out of the code.
The Big Bug is something that it prevent a green light for Live Ops like the top product(s) not displaying via the CRM or an overnight batch update wiping out information or pricing being unstable.
But not actual billing not working, that’s virtually always a straight forward TO DO fix with documentation and support.
We feel the closest methodology and structure is the 3 thronged Growth Hack Team which is great approach to building growth in a large organisation with the Product Owner role being replaced by effectively the Project Lead and in effective Bug Grabble – in Chief
The MMA Way: The Bug Grabbler Huddle
In essense you need a lead to drive the end part of the project who identifies the documents the bugs, does the triage, details the resolution process and has end authority to pull people off other tasks to nail it and/or pull in external experts say if it’s an email delivery issue where software developers tend not to be specialists in, even though they all thing it’s easy…
- Bug Grappler Lead
- Senior Technical
- Person who knows the most about all the systems, APIs and workflows
Fundamentally this team agree to regularly break out of their normal on and off projects and “huddle” together to resolve the Big Bug.
There’s probably only three rules here.
- You’ve got to have the most technically skilled person involved because, by definition, the big bugs defeated lesser mortals.
- They or the Chief Bug Grappler have got to have authority to rope in others to resolve the bug and do funny stuff which could break the build to resolve or surface something live for testing theories which hopefully no real world notices, too much…
- Someone(s) who know the systems as if there’s bespoke badly documented legacy platforms thing it’s virtually a systems thing…
And at least two of them should have a natural curiosity and enjoyment of solving opaque puzzles and – and we hate ourselves for saying it – an ability to think outside the box.
Now we’re not saying anything new here in advocating this approach.
Our point it’s not at all agile and the almost natural conclusion to any pre big milestone project.
And management shouldn’t be rippled in through whisper chains into the project stalling, having lost velocity or the team no longer working agile (Does the Project Lead not understand Agile!)
It’s a natural “Grapple phase”. It’s ground work. It’s unstructured, periodic based on team availability and it’s not pretty.
You can estimate it all you want as a big hairy 24 pointer but it’s going to be resolved through a series of expert exchanges, knowledge progression, breaks and reflections before some asks what time does the overnight batch run at or why isn’t there a “.” at the end of the product tag on the CMS.
And it should be codified so all understand.
Because although it’s not Agile, it is fully lower case agile.
And under The MMA Way it’s a fully recognised, expected part of the fight.
Maybe one day they’ll even be software that is built to allow for this change in structure and velocity allowing the rest of the team to break off onto other projects or phase 1.1 with the Grappling Team.
This MMA phase would switch from agile estimations more easily done when everyone’s standing up (Ed: Terrible…) to it’s own grapple points system including non deliverables such as closing knowledge gaps, running random experiments or just getting Bob at the client’s IT desk on the phone about that obscure new data call being made before the data hits the shiny new platform the Grappling Team have just discovered.
It’s a frustrating but brilliant ground phase of the project and MMA “fight” which ebbs and flows downstream to it’s own disjointed rhythm.
And all street fighters know the fight is won on the floor.
And then the break though.
And the water flows through the dam and flows down into the promised land.
Be like water, my friend…
The MMA Way: The Grapple Phase