Are You Optimizing Your Development?
Overview: A recent McKinsey & Company research article examined modern software development. Compuware has encouraged many of these practices for years, including shift-left testing, Agile development, and mainframe DevOps. These efforts have been helped by measurement and analysis from Compuware zAdviser.
In February 2020 McKinsey & Company published the research article, “A New Management Science for Technology Product Delivery” This timely article looked at how companies have managed software delivery in the past and what the right practices might be today. I see parallels between what they are espousing and what Compuware has been doing and discussing for the last several years.
There are several findings in this article worth repeating:
1. Adding more developers to a team can increase speed, but there is a point of diminishing returns. My boss likes to call it the “two pizza rule”: if you have more developers than you can feed with 2 pizzas you probably have too many on the team. McKinsey stated that the point of diminishing returns is around 15 developers.
2. It’s more expensive to fix software bugs later in the SDLC. I’ve heard different takes on this most of my career. If you are waiting until later testing phases or letting the bug escape to production, it’s going to be more time consuming and costlier to fix than if you fix during the initial phases of development. This is something I’ve been aware of since the early 1990’s. You can pay the bill today, or you can wait and pay 10x the bill later.
3. Teams that utilize the Agile framework excel at delivery predictability. This to me is where a majority of mainframe development fails. They are stuck in waterfall—projects that are forecasted for 6-12 months take much longer or get canceled. Our mainframe customers who have adopted Agile see that their Agile mainframe teams can keep up with their distributed brethren, deliver quickly and on time, and in some cases exceed them. The idea of “two-speed IT,” where mainframe practices waterfall and the distributed teams practice Agile was a failure the minute someone put the idea on paper.
4. The last finding is about the co-location of a team. At Compuware we feel it’s a competitive advantage that our Development and Product Management teams are co-located in our Detroit HQ. McKinsey found that co-location led to fewer bugs. They also noted that it might lead to longer project times but qualified their finding by stating it needs further study and their sample size may be small.
Navigating New Circumstances
Co-location of our Development Teams has worked exceptionally well for us—we just delivered our 22nd consecutive quarter of new enhancements and updates to classic offerings, which is unheard of in our industry. But like many others, we must work from home temporarily, while maintaining our same level of productivity and throughput. To that end, our Development Managers have been heavily relying on Compuware zAdviser.
zAdviser captures the telemetry data from our products, and when combined with data from our Atlassian JIRA instance, helps us understand the velocity, efficiency and quality of our development processes. Free to all maintenance-current Compuware customers, zAdviser allows a user to track Development KPIs and correlate the data with product usage. The insights gained from zAdviser help Development Managers identify what might be impeding DevOps processes so they can make small adjustments, while thoughtfully nudging developers to continuously improve. We have found this data-driven approach to be incredibly helpful in enabling our Development Teams to increase their software delivery velocity, efficiency and quality.
Continuous Measurement and Improvement Essential
This leads us to our changing world. Compuware continues to develop code and deliver in a regular quarterly cadence. After 22 consecutive quarters, we are much better at estimating what can be delivered in the quarter. Instead of promising to deliver every proposed enhancement in a quarter, we deliver what’s important for our customers. Using zAdviser we can see how long the code spends getting developed; how long it spends in a testing phase; and what unit and system tests are being executed. This is an unfair advantage we have over our competitors, and since our maintenance paying customers can participate for free, they in turn have an advantage over their competitors.
When we study the data from the time our developers started working out of their home offices to the present, we haven’t seen any drops in productivity. Maybe this is due to the “Hawthorne effect,” but I think it’s because we have a gritty group of developers who will always get the job done. Either way, zAdviser is integral to our developers’ success as well as Compuware’s.
To learn more about zAdviser, please join us on 4/30 for our live webcast, “Game Changing Analytics to Optimize Your Mainframe Development.”
This post originally appeared on LinkedIn.