Prior to OPC UA, the most common complaint has been that existing OPC standards are primarily COM based. OPC UA is a service based, cross platform solution, and no longer so Microsoft centered. This issue aside, the majority of other complaints focus on the specifications not going far enough in their scope of standardization. There are criticisms that OPC does not do enough to mandate security, configuration, and providing a unified address space or defined item ‘mapping’. If you consider OPC as the standard for real time data communication, regardless of the data source, it raises an interesting question. Where does the line get crossed from a general interface specification that is open, interoperable and flexible without sacrificing usability, to one that is specialized, rigidly defined and highly integrated?