In my earlier Blog, I asked the question on why ALM tools have not become a project necessity? Why are they not more “visible”? While I tried to answer some of the challenges, are you one of those still wondering if YOU need one? Let me give you some real data from our own example to help you decide…
Our code base is 1.4MLOC running on 2 databases, 2 app servers on 2 OS. That means 8 stack combinations, ignoring that we run on both IE and FF. Further, because we have many customers on old versions of the product, we maintain a minimum of 3-4 maintenance branches at any point of time. So, if you fix a defect on one branch, you have to replicate that across all other branches. How many hands-on people do you believe would be required to maintain this application with a steady flow of enhancements? If you did not know our strength, I would suspect that your answer is around 40-50. We do it with an average of 15 FTEs! If one has to look for productivity examples, I cannot think of anything better than that.
We maintain our Backlogs on the tool, we rank them and estimate them and then, depending on the capacity, determine how much we can do in the next release. That just defined our Release Scope! In all my past 20 years as a delivery person, that process has taken 4-6 weeks! We do it in a couple of days.
Once our Release Scope is defined, we execute our enhancements using workflows.
Our test cases, manual and automated, are all online. They are defined module-wise and graded on their importance. Depending on the impacted modules in the Release, we identify our scope of regression testing with a few clicks.
Test execution and defect tracking is all the system. We don’t have to maintain long lists in spreadsheets trying to build pivot tables on status, resource-wise, age, etc.
Our customers file issues that we convert into to defects or enhancements. Once again, we do our impact analysis on the system, review it on the tool with comments and then, assign it for coding and testing using workflows. When we commit our changes (we use SVN), we identify the defect or enhancement it is for and completely traceability is established automatically.
My experience is that organizations handling an application of this size would have 3-4 Technical Leads managing a team of 30-35 FTEs and a full time Manager. We have less than 1FTE playing the role of a Release Manager. We meet once in a week for 2 hours. That is the extent of Project/Program Management that we do. Rest is all online…
My CEO gets his full dashboard on the system, real time. No multiple versions from different managers, no data manipulation, no dedicated operations staff preparing Excel/Word reports on Friday evenings or over the weekend.
The results: we have made a release every quarter for the last 2 years. We have slipped once by 3 days. We have brought our defect rates down by over 30%. Of course, we have built a great team but without one integrated tool, we would have been in a mess, doing a lot of rework!
So, if you are not on an ALM tool, get on one! In 6-9 months, you can’t imagine building software projects without it. How many times do you handwrite a letter anymore?