Information technology and computers Desktop Desktop interoperability is a subset of software interoperability. In the early days, the focus of interoperability was to integrate web applications with other web applications. Over time, open-system containers were developed to create a virtual desktop environment in which these applications could be registered and then communicate with each other using simple
publish–subscribe patterns. Rudimentary UI capabilities were also supported, allowing windows to be grouped with other windows. Today, desktop interoperability has evolved into full-service platforms that include container support, basic exchange between web and web, but also native support for other application types and advanced window management. The very latest interop platforms also include application services such as universal search, notifications, user permissions and preferences, 3rd party application connectors and language adapters for in-house applications.
Information search Search interoperability refers to the ability of two or more information collections to be searched by a single query. Specifically related to web-based search, the challenge of interoperability stems from the fact that designers of web resources typically have little or no need to concern themselves with exchanging information with other web resources.
Federated Search technology, which does not place format requirements on the data owner, has emerged as one solution to search interoperability challenges. In addition, standards, such as
Open Archives Initiative Protocol for Metadata Harvesting,
Resource Description Framework, and
SPARQL, have emerged that also help address the issue of search interoperability related to web resources. Such standards also address broader topics of interoperability, such as allowing data mining.
Software and another under
GNU Classpath with
JamVM. The applications execute the same
bytecode and interoperate using the standard
RMI-IIOP messages for communication. With respect to
software, the term
interoperability is used to describe the capability of different programs to exchange data via a common set of exchange formats, to read and write the same
file formats, and to use the same
communication protocols. The lack of interoperability can be a consequence of a lack of attention to
standardization during the design of a program. Indeed, interoperability is not taken for granted in the non-standards-based portion of the computing world. According to ISO/IEC 2382-01,
Information Technology Vocabulary, Fundamental Terms, interoperability is defined as follows: "The capability to communicate, execute programs, or transfer data among various functional units in a manner that requires the user to have little or no knowledge of the unique characteristics of those units".
Standards-developing organizations provide open public software specifications to facilitate interoperability; examples include the
Oasis-Open organization and
buildingSMART (formerly the International Alliance for Interoperability). Another example of a neutral party is the
RFC documents from the
Internet Engineering Task Force (IETF). The Open Service for Lifecycle Collaboration community is working on finding a common standard in order that software tools can share and exchange data e.g., bugs, tasks, requirements etc. The final goal is to agree on an open standard for interoperability of open source
application lifecycle management tools. Java is an example of an interoperable programming language that allows for programs to be
written once and run anywhere with a
Java virtual machine. A program in Java, so long as it does not use system-specific functionality, will maintain interoperability with all systems that have a Java virtual machine available. Applications will maintain compatibility because, while the implementation is different, the underlying language interfaces are the same.
Achieving software Software interoperability is achieved through five interrelated ways: • Product testing • : Products produced to a common standard, or to a sub-profile thereof, depend on the clarity of the standards, but there may be discrepancies in their implementations that system or unit testing may not uncover. This requires that systems formally be tested in a production scenario – as they will be finally implemented – to ensure they actually will intercommunicate as advertised, i.e., they are interoperable. Interoperable product testing is different from conformance-based product testing as conformance to a standard does not necessarily engender interoperability with another product that is also tested for conformance. • Product engineering • : Implements the common standard, or a sub-profile thereof, as defined by the industry and community partnerships with the specific intention of achieving interoperability with other software implementations, also following the same standard or sub-profile thereof. • Industry and community partnership • : Industry and community partnerships, either domestic or international, sponsor standard workgroups with the purpose of defining a common standard that may be used to allow software systems to intercommunicate for a defined purpose. At times, an industry or community will sub-profile an existing standard produced by another organization to reduce options and thus make interoperability more achievable for implementations. • Common technology and intellectual property • : The use of a common technology or
intellectual property may speed up and reduce the complexity of interoperability by reducing variability between components from different sets of separately developed software products and thus allowing them to intercommunicate more readily. This technique has some of the same technical results as using a common vendor product to produce interoperability. The common technology can come through third-party libraries or open-source developments. • Standard implementation • : Software interoperability requires a common agreement that is normally arrived at via an industrial, national or international
standard. Each of these has an important role in reducing variability in intercommunication software and enhancing a common understanding of the end goal to be achieved.
Unified interoperability Market dominance and power Interoperability tends to be regarded as an issue for experts and its implications for daily living are sometimes underrated. The
European Union Microsoft competition case shows how interoperability concerns important questions of power relationships. In 2004, the European Commission found that Microsoft had abused its market power by deliberately restricting interoperability between
Windows Workgroup servers and non-Microsoft work group servers. By doing so, Microsoft was able to protect its dominant market position for work group server operating systems, the heart of corporate IT networks. Microsoft was ordered to disclose complete and accurate interface documentation, which could enable rival vendors to compete on an equal footing (
the interoperability remedy). Interoperability has also surfaced in the
software patent debate in the
European Parliament (June–July 2005). Critics claim that because patents on techniques required for interoperability are kept under RAND (reasonable and non-discriminatory licensing) conditions, customers will have to pay license fees twice: once for the product and, in the appropriate case, once for the patent-protected program the product uses.
Business processes Interoperability is often more of an organizational issue. Interoperability can have a significant impact on the organizations concerned, raising issues of ownership (do people want to share their data? or are they dealing with
information silos?), labor relations (are people prepared to undergo training?) and usability. In this context, a more apt definition is captured in the term
business process interoperability. Interoperability can have important
economic consequences; for example, research has estimated the cost of inadequate interoperability in the US capital facilities industry to be $15.8 billion a year. If competitors' products are not interoperable (due to causes such as
patents,
trade secrets or
coordination failures), the result may well be
monopoly or
market failure. For this reason, it may be prudent for user communities or governments to take steps to encourage interoperability in various situations. At least 30 international bodies and countries have implemented
eGovernment-based interoperability framework initiatives called
e-GIF, while in the US, there is the
NIEM initiative.
Medical industry The need for
plug-and-play interoperability – the ability to take a medical device out of its box and easily make it work with one's other devices – has attracted great attention from both healthcare providers and industry. Increasingly, medical devices like incubators and imaging systems feature software that integrates at the point of care and with electronic systems, such as electronic medical records. At the 2016 Regulatory Affairs Professionals Society (RAPS) meeting, experts in the field like Angela N. Johnson with GE Healthcare and Jeff Shuren of the United States Food and Drug Administration, provided practical seminars on how companies developing new medical devices, and hospitals installing them, can work more effectively to align interoperable software systems.
Railways Railways have greater or lesser interoperability depending on conforming to standards of
gauge,
couplings,
brakes,
signalling,
loading gauge, and
structure gauge to mention a few parameters. For passenger rail service, different
railway platform height and
width clearance standards may also affect interoperability. North American freight and intercity passenger railroads are highly interoperable, but systems in Europe, Asia, Africa, Central and South America, and Australia are much less so. The parameter most difficult to overcome (at reasonable cost) is incompatibility of gauge, though
variable gauge axle systems can be used on rolling stock.
Telecommunications In
telecommunications, the term can be defined as: • The ability to provide services to and accept services from other systems, and to use the services exchanged to enable them to operate effectively together.
ITU-T provides standards for international telecommunications. • The condition achieved among
communications-electronics systems or items of communications-electronics equipment when
information or services can be exchanged directly and satisfactorily between them or their users. The degree of interoperability should be defined when referring to specific cases. In
two-way radio, interoperability is composed of three dimensions: • compatible communications paths (compatible frequencies, equipment and signaling), • radio system coverage or adequate signal strength, and; • scalable capacity. ==Organizations dedicated to interoperability==