Risks of unplanned Work – Pros and Cons
How can an unplanned work have pros?
Well, in one of my recent project, I faced a situation where I had to decide if I can accommodate an unplanned work. This unplanned work got stimulated due to technical reasons as the senior tech member of the team pointed out to a code base that needed refactoring. To find out more, read through this blog and do put forth your comments and thoughts…
Have you managed a long running product development project in a co-engineering mode where the team is highly experienced enough to understand what is good for product? Yes, you read it right ‘product’ and not project. Very recently, while I was handling such a project, we had a release that required code refactoring as one of the unplanned task. I had a small debate with this high caliber tech person. The whole explanation ended with one strong sentence. He said, ‘You can never convince the business owners to have a feature with 50-75 story points for code refactoring work.’ For a moment, I thought, ‘this is true’ and checked with him multiple times if this had any impact on the schedule. This highly dedicated tech person was not going to budge, he openly challenged that before the beginning of QA phase, he would complete the refactoring work.
From my experience, I know: “The business owner wants new features to be developed and they only look for value for money. The time to market new features is so important that, they would never agree for such change request.” However, I decided to discuss this with my SPOC (single point of contact). I knew my SPOC to be a highly technical person who understood this product/domain very well. We did not succeed in convincing for this refactoring work, but all my SPOC said was if you think there will be no impact on schedule, you are the PM and you decide ‘what is best for the project’. I knew he was also under pressure to meet the timelines. After hearing this response, we came back and thought to drop this work. But this techie was adamant and said come what may, he will work on this. This left us with no choice but to accommodate code refactoring work. We decided to leave everything on this techie who would ensure to take things to closure.
Are you thinking Agile?
With technology enhancement and experience, people become more knowledgeable and do hit a code section that requires code refactoring? Should we take up such unplanned task? As a general project management philosophy, I would not have encouraged any unplanned work. But in this case I felt why not? These are small value-add that will take the project/account to new heights. Shouldn’t we think product, why should we always limit ourselves with frozen requirement, why can’t we be agile? Will this gold plating bring success; all such queries were bothering me?
Team Dynamics and Assumptions…
The team size of 30 members including devs and QA at the ratio of 2:1 was working on this project. The functional manager and 2 other devs were working from Onsite(US). The spec was frozen and we had pretty aggressive estimates. On top of this, like any other project, there were unknowns, assumptions, impediments and risks to be looked into. So we started working on new feature development and all our prime focus was on this. Meanwhile this techie was refactoring the code base. The number of new features that were being developed was good enough for QA to focus on this testing. There were few assumptions from the code refactoring work that if we test all the new features thoroughly, we would have covered all areas of the product.
Go, No-go decision?
The dooms day arrived and it was time to go live. We had shared the list of known issues and discussed each one of these before we decided to go-live. Production Servers were down over the week-end and we had smooth deployment. It was time for the business owners to sign-off when the biggest shocker mail was sitting in our inbox, next morning. There were few changes in the core product which is bread and butter for them.
A look into Production bugs…
These changes/bugs may sound simple and one may tag them as P2/P3 issues, but this would have had major impact on all their customers. They were:
- The order of information published in the core product got changed
- The number of results were different (Later we found the previous version had bugs and this was actually fixed now)
- There were missing links which use to direct the user to the web version
- Location missed displaying the city name. It just displayed State names.
The entire product team and the business owners were pissed off and we got our morning dose from both Client and management. And the techie working on this claimed this as actual requirement and pointed towards some unassigned product backlog items and discussions. These were never prioritized and were lying in backburner.
What went wrong?
- Lack of Test Strategy: Assumption that testing all the new features will ensure stability of their core product went wrong.
- Communication Failure:
- During code refactoring work, the changes in functionality was taken up. This was not discussed with PGM (Program/Functional Manager), PM or the test team.
- Leaving all aspect of code refactoring changes on single person and not extracting information was another failure.
- Code walk through of Architects or senior techies in the team was missed
Root cause analysis…
You must be thinking this blogger has gone nuts. Even after knowing such high client impacting bugs were introduced; how can there be a pro to it? If you notice the root cause for this problem, it is not pointing to delay rather it is pointing towards unplanned testing strategy, communication failure. Knowing that this code base is related to their main product; we should have strategized dedicated testing. If these bugs were caught 2 weeks prior to go-live date; we would have fixed this. A code walk-through of technical architect, peer code review would have helped.
What was missed in the process was communication with key stakeholders such Test Manager, Functional Manager, Project Manager. This led to gaps and late finding of unforeseen bugs during the Go-live phase. One week later a patch was released to address these issues. An excellent product with all new features integrated went live. All the hard work and effort to build the new features went in drain and I felt sad for the team that they did not get the appreciation for the amount of features they had built in such a short span. This was a big learning. Yes, what could have been a major successful release became a disaster.
Dos and Don’ts…
- Do not believe in assumptions – isn’t that simple?
- Track your assumptions and have one round of check to ensure these assumptions are right.
- Note down your additional communication channels and have a plan to communicate.
- Knowing client’s business and their core product, the team including this techie should have touched base regularly.
- Irrespective of who is coding, have walk-through of code. Peer review would help.
Simple, isn’t it? What a hard way to learn this!
How to get a buy-in for such unplanned work from business owners?
Ideal situation in such scenario is to build a strong case study around this and show dollar value or revenue loss due to bug fixes, patchy code base. This will help business owners understand the need of code refactoring. May be QA team needed an additional 1 week of testing effort. Such black holes will exist in the code base and tech team along with PM & PGM should build a strong case to get buy-in from business owners. Yes, PGM’s must also be included as they are usually based out in Client’s location and can convince better. If we can show the value loss in terms of revenue or effort; it will be understood and prioritized. Even if first attempt fails, try again and wrap your learning’s and present it in such as way that everyone atleast understand this. It would definitely be ideal to work on a task that is planned.
So, share your thoughts/comments….Did you find this article interesting? Do you agree with me? Do you disagree with me? What else could have been done proactively to ensure success?


















Recent Comments