Visibility, metrics, and the software production line: a silver bullet

 

Solving the problem of SW development process visibility

Great - as a manager responsible for software development, you have done the right thing and invested in a modern software development toolchain. There is a tool for project management, integrated with a document management system and version control tool. Automated continuous integration and delivery pipelines are made available for builds, deployments and testing. All binaries are stored in centralized artifact storage.

Job well done - right? Not quite. This is actually where the actual work begins. Having the tools in place is merely the start of a process, which aims at having a more streamlined software delivery capability.

The problem of disparate metrics

The first hurdle after introducing a software development toolchain is to make sure the tools are actually being used, and used correctly. All this becomes very hard, if not impossible, without visibility to key processes throughout the toolchain. The information is, unfortunately, spread around the toolchain – it may be very hard to get an overview of a project or product version development progress. Issue tracking tools like Jira offer a partial, and somewhat superficial solution. What’s more, some of the information may not be immediately available without some preparatory work.

Key information related to automated CI/CD processes, builds, deployments and quality assurance may fall out of radar and require tracking with a separate set of tools, not linked with overall progress tracking.

Reporting becomes laborious as you, the project or product manager have to collect relevant project data from various sources - partly from the tools, which you have to browse through one by one, and partly by asking the developers and the quality assurance and operations personnel. Once you get the data collected, it may already be outdated - a snapshot of the status somewhere in the past.

Centralized project dashboard: the silver bullet

Centralized project dashboards provide an easy and intuitive way to track project progress. The information gets collected from all the relevant tools taking part in the production process - project and issue tracking, version control, CI/CD automation tools, code analysis and testing tools. The key information is presented as collections of metrics data from various sources - there is no need to jump from a tool to another.

As the information is collected automatically from the tools on a daily basis, it is always up to date. However, getting reliable information from the toolchain requires discipline on the project side

  1. The progress must be updated regularly while the feature moves from phase to another

  2. The team must start using the tools following a set of best practices - for example, commits to version control and automated test cases should be labeled with the related Jira tickets IDs

  3. The use of automation must be on a level that enables quality tracking by using the automated processes

  4. Teams must use also other CI/CD integrated tools, such as static code analysis and open source component vulnerability scanning

As a result of the above mentioned requirements, the dashboards provide means for monitoring the overall automation and DevOps methodology adoption rate and process maturity. If the metric data is not available, it is likely the teams are not using the tools the way they should be using them. Or even worse, they are not using the recommended methods at all.

Moving into the driver’s seat

Once the data is available, all critical work is made visible, and you are able to track project progress, there is a chance to start measuring the project performance. It is, however, hard to improve the production processes if you do not know where you are. It is clear you need to start making the improvements from where you are, not where you were a month ago or where you wish to be in the future.

Is the quality improving as it should? If we increase the throughput, does it lead to decreased output quality? Where’s the balance between throughput and optimal output quality? The metrics dashboards should be able to provide answers to these important questions.

We’ve been developing Eficode ROOT Track and Drive. Its new name is ROOT Insights

For those of you who’ve been following Eficode ROOT for a while, you’ll know that the working title of Eficode ROOT’s tracking solution fit with dashboards has been Track and Drive (TnD). Now that this industry-leading functionality is ready to meet a worldwide audience, we’re giving it a new name: ROOT Insights.

Many existing Eficode clients are now reaching a state in their DevOps transformation, where the focus of the transformation is gradually shifting from DevOps toolchain adoption and basic automation implementation to improving the already running processes. Based on the experience gained by working with our clients, we have designed and implemented a tracking solution that helps any software developing company in reaching the next level.

Eficode ROOT Insights dashboards provide a set of built-in dashboards for tracking the software development activities. The information is collected to centralized views, each of which provides a unique viewpoint to the software development sprint or release - such as project management, development, and quality assurance. Snapshot views present the status right now, whereas the trend views provide a timeline view with historical perspective. Extendable data collection framework gathers data from the most commonly used tools and the view are expandable with custom metrics.

 

ROOT Insights-01

One of the ROOT dashboards is for management and provides end-to-end visibility to project status information.

Please find more information here >

 

Start your DevOps transformation

Adopting DevOps methodology and culture can be a huge challenge for organizations, especially those with a long history of outdated development practises. Our three-step development path have guided hundreds of companies through DevOps transformation.

Request a demo

Efimo-10

Stay up-to-date on Eficode ROOT

  • "We are very lucky to have ROOT as our partner!"

    — Mikael Kuisma, Change and Release Manager, DNA telecom company

  • "The Eficode ROOT Team has been very efficient and quick to resolve any problems that come up. All development has been handled professionally and we now have a very reliable product."

    — Christopher Scicluna, IT Project Manager, Valmet Automotive

  • "Centralized DevOps environment service brings us cost savings and VR doesn’t need to worry about the updates and maintenance of servers and softwares."

    — Markus Niskanen, System Architect, VR National Railways

  • "Our annual savings range from millions to tens of millions, when also accounting for the faster launching of products and the ability to respond more rapidly to changing market conditions."

    — Mikael Kuisma, Change and Release Manager, DNA telecom company