Dev Ops Br 01

DevOps strategies through the lens of automation software development

May 30, 2023
How to reduce the barrier to entry of incorporating practices into daily work
AUTOMATION Studio is the bread and butter of software development at B&R. All B&R hardware is programmed with this integrated development environment. The mechanisms for compiling, creating installation packages, and deploying the software are usable outside of Automation Studio itself (i.e., via the command line). Also, the source files within the Automation Studio project are stored in plain text. This makes for easy integration with DevOps practices.

Get your subscription to Control Design's print magazine, free to qualified individuals in North America.

Q: Can you define DevOps for industrial

automation?

A: Generally speaking, DevOps is a set of practices that enables continuous, reliable and swift software delivery to customers. It involves things such as increasing the visibility of tasks and metrics, dividing and planning work into measurable chunks, optimizing team and project architecture, automated testing, automated reporting and so on.

Within industrial automation, our first thought is often related to the hardware side of things, such as the programmable logic controllers (PLCs), drives, motors, input/output (I/O), transport systems and so on. But the application software that supports and ultimately controls this hardware is of equal importance. The software that controls the machine is becoming more of an area where our customers differentiate themselves from competitors. Therefore, modern DevOps practices that are typically observed in pure software companies can and should be extended to the industrial automation space as well.

Q: What is the value proposition of DevOps?

A: DevOps is valuable in many ways. The overarching goal and benefit is to continually, reliably and quickly deliver product to the end customer. More specifically, it enables you to increase the frequency of deployments, increase code quality, reduce the response time for bugfixes, increase productivity and more.

Q: That all sounds very favorable. Why isn’t everyone within industrial automation already implementing DevOps wherever possible?

A: DevOps is not simply a software tool or an application that you install. It’s more of a mindset and a cultural shift in the way we implement our day-to-day work. There are of course tools that support the strategies, but the implementation itself can vary quite widely. As a result, it takes some time and energy for project managers and software developers to identify how exactly to change their processes in order to incorporate DevOps.

Q: What is B&R doing to increase the adoption of such practices?

A: At B&R, we recognize that the initial effort to change your workflows is a barrier to entry for DevOps. Therefore, we have created what we refer to as the DevOps package. This package includes materials for many topics within DevOps. We provide descriptions of each topic, an explanation of why it’s important, directives on how to accomplish the topic within a specific tool and template files wherever applicable. In other words, we have combed through the vast amount of general resources for DevOps strategies and defined them specifically through the lens of software development at B&R. Therefore, we significantly reduce the barrier to entry of incorporating these practices in your daily work by succinctly and clearly defining how to apply the strategies with Automation Studio project development.

Q: What specific topics are addressed within this DevOps package?

A: At the moment, we provide materials for project management, version control, testing and the build and automation server. For project management, we cover topics such as project planning, issue tracking within Jira and information storage within Confluence. The version control section includes a plethora of information regarding Git, Sourcetree, recommendations on committing and branching, how to resolve merge conflicts and strategies for code reviews. The testing portion goes over in detail how to build a test plan and covers the concept of test-driven development. We also provide a step-by-step guide on how to implement B&R unit testing and provide a template Excel sheet that can be used to keep track of all of your manual and automated tests. Lastly, the automation and build server portion goes over in detail how to use Jenkins in order to automatically build your project, run the unit tests and communicate the results to any interested parties.

Q: What is the current status of the DevOps package?

A: As of Q2 2023, we are finalizing the first version of our DevOps package materials. We are working on implementing a pilot with a customer in order to further refine the materials so that they are as clear and helpful as possible.

Q: How long before you foresee an implementable version available?

A: We expect to have a finalized version of the package completed by the end of the year. Please reach out to your salesperson for more information and continued updates. And, of course, if anyone is interested in seeing the materials sooner, we’d be happy to share them and get feedback.