Posted September 06, 2018
The Digital Thread that Binds Software Development
When people talk about “the Digital Thread,” they are most likely talking about the digital representation of manufacturing operations. But what about operations that are already digital?
The fundamentals behind the Digital Thread should still apply, but creating the Digital Thread for software takes more than models. It takes flexible tools and Agile collaboration.
Looking to the quality experts
The automotive and aerospace industries were the first to turn quality management into a discipline because when a defect reached production and was driven off the lot, the costs were devastating. In 1979, Philips Crosby, a quality control department manager working on the Missiles program at the Martin Company penned “Quality Is Free: The Art of Making Quality Certain” which cemented the concept of “Zero Defects” development. Somewhat self-explanatory, “Zero Defects” is the mentality that process improvement should ultimately reduce defects and errors down to zero. Today, modern manufacturing experts are pushing for a Digital Thread that ties all of product development together to achieve this ideal.
A functioning Digital Thread should allow teams to easily see information on all processes across development, from design to testing to production. This level of data transparency enables a clear view of where defects are being generated, where they are being resolved, and how the overall process can be improved. Since software bugs in high impact products can be just as dangerous, shouldn’t the software development lifecycle (SDLC) adopt the same end-to-end quality approach?
The next step in the agile movement
The Agile movement and the Digital Thread promote many of the same practices. Cross-functional collaboration is critical and continuous improvement is the end goal. But without the Digital Thread, Agile development is limited, or in other words, without cross-functional transparency, cross-functional collaboration is cheapened.
In practice, this sounds like a difficult thing to solve. Most development and testing teams are using many different tools, from IDEs to SCMs to API and UI testing tools. How can your team corral all of your work into a Digital Thread?
Building the thread
Weaving together all the phases of the software development lifecycle is a daunting task. There are tools on the market that try to solve for this, like investment-heavy Application Lifecycle Management (ALM) tools or lightweight, time-intensive project management tools, but they often come with workflow and tool limitations. Modern development teams value the ability to use whatever tool fits their group best for whatever use case.
If you want to maintain your team’s flexibility while gaining a Digital Thread, consider weaving together a multi-tool solution that best fits your team.
Finding the right tools
A Digital Thread needs to be able to show a project timeline, each team’s workflow, and metrics to measure progress toward identifying and fixing defects. Two practices that capture these items in every phase of the SDLC are project management and reviews of code and documents.
If you select the right tools, capturing the Digital Thread could be closer than you think. When assessing and selecting tools for your team, consider the following:
- How well does this tool integrate with other third-party tools?
- Does this tool limit the ability to adopt new tools or try new workflows?
- If other teams adopt this tool, will we be able to aggregate metrics to see overall use?
A project management tool could be a good place to start building your thread. SmartBear’s 2017 State of Code Review report revealed that 50 percent of teams are using Atlassian’s JIRA for requirements management and 58 percent are using it for bug tracking. Tools like this can serve as the canvas for your thread.
With project management as a baseline, you also need a way to track and measure the quality of reviews taking place across the development lifecycle. Peer reviews serve as intuitive documentation events, allowing teams to show work without needing to manually report. Adding a peer review tool can unlock metrics like defects found, defects fixed, and time spent on reviews.
For example, SmartBear’s Collaborator allows teams to conduct robust peer reviews of both code and documents in one platform to uncover defects early in development. Collaborator integrates with JIRA to harmonize that defect data with other project tasks in the platform. What both of these tools have in common is customization – giving users the ability to shape their own use case.
Weaving it together
It has never been easier to adopt a custom pairing or mix of solutions to weave together into a Digital Thread, but what really matters is creating a useable Digital Thread. Choose Key Performance Indicators for each phase that you can easily track, whether it is number of tests run, number of defects found, or maybe just a satisfaction thumbs-up, thumbs-down metric from team members.
Implementing a Digital Thread means you will have access and agency over your full process information. Without one in place, your Agile approach is limited to the team level. Each Agile team is a cycling gear; a threaded organization is a humming machine.
Originally published on jaxenter.com. Image: © Shutterstock / QinJin