By Nathan Pocock, Director of Compliance, OPC Foundation
During a recent OPC Foundation Training Class in Houston, Texas a question was asked by one of the attendees that was the spark for the creation of this article. The question was "Why should I care if the OPC product that I use has been through certification"? It is a very fair question that should be answered with another question. If you are an engineer who has been woken-up from a blissful sleep at 3am because plant production has stopped and no one knows why, or have spent 3 months installing a system that should have only taken seven days, and have seen your blood-pressure numbers match the national-debt while working with technical support to fix the problem then you my friend purchased non-certified OPC Products. This is not an article, where as an author, I will stand up on my soap-box and preach about the importance of software certification. This is an article where, as an author, I want to outline the lessoned learned from a fellow software developer and engineer. Like me, you are probably the same person that spends weeks testing somebody else's products to avoid being burned again! What if you didn't need to… what if somebody else did that for you? This article will outline the reasons that will give you your weekend back.
Most automation systems today are based on, or utilize, a standard like OPC (http://www.opcfoundation.org/) for inter-system/ device communication. The question that naturally comes next is: "Are all "standards" created equally"? What does it mean when someone buys such systems under the illusion that you're making the right investment to enable your systems to run efficiently (we hope) and reliably?
In an effort to prevent the 3am wake-up call the OPC Foundation introduced the Compliance and Certification (program http://www.opcfoundation.org/certification/) to provide the necessary policing of what is essentially an open-standard – specifically the OPC Specifications - or as some might say, a standard "open to interpretation" – which is the case for any standard!
By having a Compliance and Certification program the OPC Foundation members who develop and create OPC-based systems have all of the tools they need to:
- Develop systems that are proven to be compliant to the specifications by using automated test tools and test-case documentation
- Follow best-practices guidelines that define the behaviour and usability of an OPC system
- Interoperate with other systems from other vendors
The OPC Foundation Compliance and Certification program is an ever-expanding group of OPC Foundation members including: ascolab GmbH, Embedded Labs, Honeywell, Inductive Automation, Kepware, MatrikonOPC, SMAR, Softing, Software Toolbox and Yokogawa. (The Compliance and Certification program is continually looking for companies to participate in the program. Interested OPC Foundation member companies should contact firstname.lastname@example.org directly.) Their responsibilities include defining test-cases based on the interpretation of the OPC Specifications, developing test-tools, and defining the "best-practices" which developers and application designers will use to develop future OPC products.
The OPC Foundation Compliance and Certification program offers different levels of certification, and it is extremely important for individuals who purchase this software to understand the rigors that each level of certification requires, and the benefits of those results. OPC Foundation member products that are "OPC Compliant" and pass the Compliance Test Tools are said to be "Self-Certified". This level of certification is a must for any OPC product that is in production use in any environment today. Products bearing this logo tell end-users of Self-Certified products that these OPC products are compliant with the OPC Standards, and provide the test results in document form. These test results provide the first level of quality control for the guarantee of interoperability.
Providing test-tools and test documentation is a first step towards product quality, attending an Interoperability workshop is the logical next step toward ensuring complete software compatibility with other OPC Foundation members. These Interoperability workshops provide Foundation members with the opportunity to "test" their software for compatibility against other OPC Foundation member's products. The results of these interoperability workshops are essential to ensure that OPC Foundation members continue to improve and evolve their software development as the technology standards continue to evolve. The highest level of OPC Foundation testing is "Lab Certification". The OPC Foundation Lab Certification can be performed in one of two locations: one in Erlangen Germany and the other in Scottsdale, AZ. These Certification Test Labs conduct vigorous testing of product to ensure:
- Complies to the OPC Specifications
- Resilient against badly-behaved systems by passing error-injection tests
- Prevention so that a system does not crash, despite best-attempts to cause a crash
- The ability to efficiently recover from communications losses
- Ensure the following of "best-practices"
- Ensure documented data throughput performance and that load-testing are verified against a vendors claims.
It is OPC software that is able to withstand the battering of tests conducted by an OPC Certification Test Lab that are truly considered "best-of-breed". Achieving the highly acclaimed "Lab Certified" status is no easy task. End-users who invest in "Lab Certified" OPC products can truly appreciate that they have invested in quality. The next time you are investigating a new system, or OPC product, take the time to see what level of certification a product has achieved. Know that the investment you made is one of quality, and has the documentation to substantiate that mark of quality, or perhaps you would rather just keep the cell phone by your bed and hope for the best.
Nathan Pocock - Compliance working group & certification and testing program for OPC UA
Nathan Pocock entered the Automation Industry in 1995, leaving an IT admin position, to join Siveco UK - a Computer Maintenance Management System company - as a trainer and consultant. After leaving the UK for the USA in 1999, Nathan became a technology instructor at the ECPI College of Technology before re-entering the automation industry in 2001 working for Software Toolbox, and was heavily involved in product sales, marketing and support, web-marketing, before becoming the Chief Architect & Developer of software systems design and development. Nathan joined the OPC Foundation in early 2009 to lead the Compliance working group and launch the certification and testing program for OPC UA, located in Scottsdale, AZ. Nathan enjoys mountain biking, the UFC, and coaches 2 kids soccer teams.