An API-based standard defines a set of rules and specifications that developers must adhere to when implementing the API. The goal of having a standard is to ensure interoperability and consistency across different implementations. Here are some key differences between an ecosystem of non-conformant implementations and an ecosystem of conformant ones:
A conformant ecosystem typically offers better interoperability, consistency, reliability, and ease of adoption compared to a non-conformant ecosystem.
Interoperability
Conformant Ecosystem: In a conformant ecosystem, implementations adhere to the same set of standards and specifications, ensuring that they can interoperate seamlessly. Developers can rely on consistent behavior and communication patterns, making it easier to integrate different components or services.
Non-conformant Ecosystem: In a non-conformant ecosystem, implementations may deviate from the standard, leading to compatibility issues. Components developed by different parties might not work well together, requiring additional effort to make them compatible.
Consistency
Conformant Ecosystem: Conformant implementations follow a common set of rules and guidelines, leading to a more consistent user experience. Developers can expect similar behavior across different implementations, making it easier to understand and work with the API.Non-conformant Ecosystem: In a non-conformant ecosystem, there may be variations in how different implementations handle certain aspects of the API. This can result in inconsistencies, making it more challenging for developers to predict and manage the behavior of the API.
Reliability and Stability
Conformant Ecosystem: Conformant implementations are more likely to be reliable and stable because they adhere to a well-defined standard. Changes or updates are more likely to be backward-compatible, minimizing the risk of disruptions when upgrading.Non-conformant Ecosystem: Non-conformant implementations may introduce custom features or behaviors that are not part of the standard. This can lead to a lack of stability and increase the risk of compatibility issues when updates or changes are made.
Ecosystem Growth and Innovation
Conformant Ecosystem: A conformant ecosystem can foster a healthy environment for growth and innovation. Developers can build on a stable foundation, knowing that their solutions will likely work well with other conformant implementations.Non-conformant Ecosystem: The lack of adherence to standards in a non-conformant ecosystem may hinder innovation and growth. Developers may spend more time addressing compatibility issues rather than building new and innovative features.
Ease of Adoption
Conformant Ecosystem: Conformant implementations are generally easier to adopt because they follow a standard set of guidelines. Developers can leverage existing knowledge and tools to integrate with the API more efficiently.Non-conformant Ecosystem: Non-conformant implementations may require more effort and resources for adoption, as developers need to navigate and address the idiosyncrasies of each implementation.
The Conformance Advantage
In summary, a conformant ecosystem typically offers better interoperability, consistency, reliability, and ease of adoption compared to a non-conformant ecosystem. Developers benefit from a more predictable and stable environment, fostering collaboration and innovation.
Measuring Conformance
There are two key variables that quantify the conformance of an implementation with the standard:
Coverage: which parts of the standard has the adopter implemented?
Correctness: how correct is the implementation of each standard requirement?
Conformance-driven Standard Adoption
The conformance report lists, for each standard requirement, an overview of the extent to which the implementation is correct:
Correct (all analyzed messages were correct)
Incorrect (all analyzed messages were incorrect)
Inconsistent (some analyzed messages were correct, others were not)
Not tested (no messages linked to this requirement were analyzed)
During the process of implementing the standard the adopter can use the conformance report as a feedback mechanism for gradually improving the coverage and correctness of the implementation:
To measure the conformance of their implementations, adopters can connect their applications to DCSA conformance sandboxes, exchanging API messages with a synthetic counterpart. The test orchestrator guides the communication through each of the scenarios that are relevant for a certain standard, version and role. This way a guided step-by-step conformance: test is achieved.
Conformance-driven Standard Development
Throughout the standard development process, DCSA uses a conformance-driven approach to ensure that the standard being released is correct, consistent, complete and verifiable.DCSA creates synthetic implementations of the parties of each role defined by a standard, along with a comprehensive list of scenarios covering the business process being standardized.DCSA executes the full list of scenarios having the test orchestrator guide the synthetic parties in communicating with each other, making adjustments until each synthetic party is reported as 100% conformant:
In building the conformance synthetic parties DCSA thus acts as first adopter of the standard, finding and correcting issues in the standard early in the process, before adopting organizations would.The thus created synthetic parties of each role are used as counterparts in measuring the conformance of adopter implementations, such that when two adopters connect their systems the interoperability requires zero or minimal adjustments or troubleshooting.