Industry Article

How Is Your Code Backed Up? Maximizing DevOps in Industrial Automation

March 31, 2024 by Adam Gluck, Copia Automation

Shifting from manual code backup processes to more modern, automated solutions can provide more benefits to manufacturers, far above simply the time saved compared to manual techniques.

In recent years, the shift from reactive code backup strategies to more proactive, automated strategies is not just a new trend, but a critical evolution that delivers the results demanded by today’s ever-tightening market expectations.

It is time we acknowledge that traditional backup methods simply cannot keep pace with the speed of modern automation. As the distance between code production volumes and backup coverage widens, this gap continues to undermine the efficiency and safety of automated systems with potentially harmful results. Industrial managers need to think towards preventing data loss and system outages before they occur.

Fortunately, there are safe ways to avoid such pitfalls. A modern DevOps approach to backup strategies can provide many benefits, beginning with an increased level of systemwide transparency to help avert potential disaster, as well as tried and true backup and recovery functions. This is a powerful combination that can lead to significant efficiencies and cost savings in the long term.


Copia DevOps Strategy

Figure 1. Industrial DevOps is the migration of tried-and-true DevOps techniques long used in IT architecture applied to mission-critical OT tasks. Image used courtesy of Copia


The Reactive Backup Practices of Yesterday

Traditional backup practices in industrial environments are often straightforward. Plants might be employing systems that have been in place for many years. These are essentially the tools of a reactive backup strategy.


Basic Change Tracking Methods

The most basic approach to tracking code changes, although still widely used, is to simply duplicate the file and append a new name. This doesn’t require much time or make use of special tools, and it is more of a practice than a strategy. That said, it is a very common method in today’s industrial settings. The next level of reliability is to track code changes in Microsoft Excel files or similar spreadsheets and databases. This approach comes with a low barrier for training new staff and is one of the more affordable approaches, as most business users are already familiar with these tools. But for all its ease of deployment, this approach creates more work for developers, requiring them to be extra careful about updating their entries and annotating their changes so that others can make sense of it.


Version Tracking Software

More dynamic code-saving strategies include open-source versioning systems like Apache Subversion (SVN). It provides quick check-in/check-out capabilities that ensure the legitimacy of the latest code version. However, SVN wasn’t designed to support concurrent collaboration, so users must rely on a serial workflow, waiting for code to be checked back in before they can begin working on it. This, too, leaves the user in a tight spot when a failure occurs.


Comparing newer vs. older code revs

Figure 2. Tracking code changes can prevent accidental misuse of older or non-functioning code sections. Image used courtesy of Copia


Platform-Specific Tools

Additionally, there are many platform-specific tools designed to work with automation systems from Siemens, Rockwell, and other vendors. However, these tools limit the user to a single-vendor environment or siloing in a multi-vendor environment, leading to longer staff onboarding and ramping up due to the need to learn multiple systems. In contrast, a vendor-agnostic approach is more likely to provide an array of best-of-breed solutions to address a modern mix environment.


On-Device Program Storage and Backup

For many businesses, the most recent versions of automation code can be found stored on the device itself. If using programmed logic controllers (PLCs), for instance, each of these devices acts as its own self-protected single source of truth. If the need to adapt to new factory conditions arises, simply update the code on the PLC and carry on. Knowing that each PLC is independently verified and updated is a simple solution that averts the problem of having too many versions of code and too many people involved in its maintenance.

However, this strategy can be inadequate in the face of rapid business changes. Increasingly, manufacturers are expected to make on-the-fly adjustments to production to meet consumer demand for variety and new features. This is not to mention that staff must be in the same physical location as these devices, a huge limit on timely responses to challenges with code.

With all of the strategies above, the ability to view code in a holistic way is limited, leading to losing control over it, especially in a rapid growth environment. Relying on siloed expertise and one-off programming routines can hinder the ability to adapt and innovate. That is not conducive to the pace of modern manufacturing. In the event of a disaster, recovering code among many PLCs wastes many hours of downtime, potentially costing hundreds of thousands of dollars.

A more efficient approach, influenced by Industrial DevOps, emphasizes visibility, control, and agile response to changes, aligning operational technology (OT) more closely with information technology (IT) standards.


Comparing similar lines of code

Figure 3. Comparing current code against revisions can ensure transparency across all team members. Image used courtesy of Copia


Revolutionizing Productivity: The Fusion of DevOps and Industrial Automation

Industrial DevOps introduces tools and processes that enhance collaboration and heighten visibility in industrial operations. This approach includes the centralized management of multi-vendor control solutions, reducing the reliance on proprietary, siloed tools. It fosters a unified environment where changes are tracked and managed efficiently, enhancing operational agility to help ensure higher uptime and quicker problem resolution.

When this information is stored in the cloud, it can be accessed, audited, and changed by any team members or approved vendors. That broad visibility puts the power of intellectual property at leaders’ fingertips, allowing them to strategically optimize OT on a much greater scale. Furthermore, it reduces the need for tedious, repetitive manual backup tasks, freeing up resources to focus on new innovations.


Additional Benefits of Applying DevOps to OT

Using a DevOps-based approach can automate and streamline processes, reduce human error, and increase operating consistency. It also offers immediate, consistent visibility into the operational state of all devices, aligning each programming environment with actual shop-floor activities. The synchronization between these two capabilities is what enables proactive problem-solving and more effective root-cause analysis, crucial for maintaining uninterrupted production.

Put more concisely, a DevOps-based solution empowers managers with a more profound knowledge of full code inventory and sets the stage for tighter, more efficient operations that are less prone to design and security risks.


The New Era of Operational Excellence

Bringing a DevOps approach to an operational technology environment goes well beyond the mere backing up of data to enable disaster recovery; it's about embracing an entirely new operational culture. This shift is essential for organizations aiming to stay competitive in a rapidly evolving industrial landscape. It ensures that backup processes are not only efficient but also resilient and adaptable to future innovations, benefits that translate directly to the enterprise and its bottom line.