This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
dido:public:ra:1.4_req:2_nonfunc:05_interoperability [2021/06/01 23:16] char |
dido:public:ra:1.4_req:2_nonfunc:05_interoperability [2021/08/11 13:27] (current) murphy |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== 4.3.8 Interoperability ====== | ====== 4.3.8 Interoperability ====== | ||
| [[dido:public:ra:1.4_req:2_nonfunc| Return to Non-Functional Requirements]] | [[dido:public:ra:1.4_req:2_nonfunc| Return to Non-Functional Requirements]] | ||
| - | |||
| - | * **<color #FF0000><todo @char>Please Review</todo></color>** | ||
| ===== About ===== | ===== About ===== | ||
| Line 11: | Line 9: | ||
| <figure interopLevels> | <figure interopLevels> | ||
| {{ :dido:public:ra:1.4_req:2_nonfunc:knowledgepyramidinteroperatbility.png?700 |}} | {{ :dido:public:ra:1.4_req:2_nonfunc:knowledgepyramidinteroperatbility.png?700 |}} | ||
| - | <caption>The Automation Pyramid and Interoperability</caption> | + | <caption>The [[dido:public:ra:xapend:xapend.a_glossary:a:autopyramid|Automation Pyramid]] and Interoperability</caption> |
| </figure> | </figure> | ||
| Line 17: | Line 15: | ||
| [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | ||
| - | Foundational or Technical Interoperability Level is concerned with the most fundamental and basic kind of interoperability. It provides the "foundation" on which the other kinds of interoperability are built upon. It identifies the technical aspects of peer-to-peer interoperability regardless of hardware, operating system, or [[dido:public:ra:xapend:xapend.a_glossary:m:midware|middleware]] platforms. There are two perspectives to the Foundational or Technical Interoperability Level: Data and System. | + | The //Foundational// or //Technical Interoperability Level// is concerned with the most fundamental and basic kind of interoperability. It provides the "foundation" for all the higher levels of interoperability. It establishes the technical aspects of peer-to-peer interoperability that prevail regardless of hardware, [[dido:public:ra:xapend:xapend.a_glossary:o:os|operating system]], or [[dido:public:ra:xapend:xapend.a_glossary:m:midware|middleware]] platforms. The Foundational or Technical Interoperability Level is defined in terms of two perspectives: Data and System. |
| * From the Data perspective, there is a clear, shared expectation for the contents, context and meaning of that data (e.g., [[dido:public:ra:xapend:xapend.a_glossary:b:bigendian]] or [[dido:public:ra:xapend:xapend.a_glossary:l:littleendian]], or size of an integer, or character set used) | * From the Data perspective, there is a clear, shared expectation for the contents, context and meaning of that data (e.g., [[dido:public:ra:xapend:xapend.a_glossary:b:bigendian]] or [[dido:public:ra:xapend:xapend.a_glossary:l:littleendian]], or size of an integer, or character set used) | ||
| - | * From the system perspective the differences in computer technology are non-existent (e.g., [[dido:public:ra:xapend:xapend.a_glossary:00-9:16-bit]], [[dido:public:ra:xapend:xapend.a_glossary:00-9:32-bit]] and [[dido:public:ra:xapend:xapend.a_glossary:00-9:64-bit]] processors. [[dido:public:ra:xapend:xapend.a_glossary:r:risc]] versus [[dido:public:ra:xapend:xapend.a_glossary:c:cisc]] computers, etc.). In a [[dido:public:ra:xapend:xapend.a_glossary:d:distsystem|Distributed System]], the network protocols are another part of the Foundational or Technical Level of interoperability (e.g., [[dido:public:ra:xapend:xapend.a_glossary:t:tcp]] and [[dido:public:ra:xapend:xapend.a_glossary:u:udp]] over [[dido:public:ra:xapend:xapend.a_glossary:i:ipaddr]], etc.). | + | * From the system perspective the differences in computer technology are non-existent (e.g., [[dido:public:ra:xapend:xapend.a_glossary:00-9:16bit]], [[dido:public:ra:xapend:xapend.a_glossary:00-9:32bit]] and [[dido:public:ra:xapend:xapend.a_glossary:00-9:64bit]] processors. [[dido:public:ra:xapend:xapend.a_glossary:r:risc]] versus [[dido:public:ra:xapend:xapend.a_glossary:c:cisc]] computers, etc.). In a [[dido:public:ra:xapend:xapend.a_glossary:d:distsystem|Distributed System]], the network protocols are another part of the Foundational or Technical Level of interoperability (e.g., [[dido:public:ra:xapend:xapend.a_glossary:t:tcp]] and [[dido:public:ra:xapend:xapend.a_glossary:u:udp]] over [[dido:public:ra:xapend:xapend.a_glossary:i:ipaddr]], etc.). |
| ==== Syntactic Level ==== | ==== Syntactic Level ==== | ||
| [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | ||
| - | [[dido:public:ra:xapend:xapend.a_glossary:s:syntax]] Level is concerned with the correct combination and [[dido:public:ra:xapend:xapend.a_glossary:s:sequence|sequence]] of the elements in a language and in this context, as it applies to [[dido:public:ra:xapend:xapend.a_glossary:d:datastructure]] or in a [[dido:public:ra:xapend:xapend.a_glossary:p:programlang]]. For example, in English, we do not say ''ball red large plastic'', we would say ''large, red plastic ball''. The first form is syntactically incorrect, the second form is not. Interoperability at the syntactical Level means two different systems can exchange information and structurally equivalent. The interpretation of the syntactical data can be different (i.e., big to an ant is different than big to an elephant). The difference in interpretation is a semantic difference (see Semantic Level). | + | The //[[dido:public:ra:xapend:xapend.a_glossary:s:syntax]] Level// is concerned with the correct combination and [[dido:public:ra:xapend:xapend.a_glossary:s:sequence|sequence]] of the elements in a language and, in this context, as it applies to [[dido:public:ra:xapend:xapend.a_glossary:d:datastructure]] or a [[dido:public:ra:xapend:xapend.a_glossary:p:programlang]]. For example, in English, we do not say ''ball red large plastic'', we would say ''large, red plastic ball''. The first form is syntactically incorrect, the second form is not. Interoperability at the syntactical Level means two different systems can exchange information and be structurally equivalent. The interpretation of the syntactical data can be different (i.e., big to an ant is different than big to an elephant). The difference in interpretation is a semantic difference (see Semantic Level). |
| ==== Domain or Structural Level ==== | ==== Domain or Structural Level ==== | ||
| [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | ||
| - | [[dido:public:ra:xapend:xapend.a_glossary:d:domain_knowledge | Domain]] Level is knowledge of a specific, specialized subject area, discipline or field. For example, there is specific [[dido:public:ra:xapend:xapend.a_glossary:d:domain_knowledge|domain knowledge]] in Chemistry, Organic Chemistry, Physics, Mathematics, or Statistics. A specific example might be the use of the word ''round''. There are completely different meanings for the word in Poker, Math, Cheese, and Military. This is in contrast to general knowledge, or domain-independent knowledge which in general would refer to the common usage of the word, sometimes referred to as dictionary usage of the word. The use of the word Domain or Domain knowledge is used within general purpose disciplines such as history, law, systems engineering or even computer science. People with knowledge in the generic area (i.e., law) might have specific domain knowledge in computers, electronics, computers or even specific computer architectures such s [[dido:public:ra:xapend:xapend.a_glossary:r:risc]]. | + | The //[[dido:public:ra:xapend:xapend.a_glossary:d:domain_knowledge | Domain]] Level// is knowledge of a specific, specialized subject area, discipline or field. For example, there is specific [[dido:public:ra:xapend:xapend.a_glossary:d:domain_knowledge|domain knowledge]] in Chemistry, Organic Chemistry, Physics, Mathematics, or Statistics. A specific example might be the use of the word ''round''. ''Round'' has different meanings in the context of Poker, Math, Cheese, and the Military. This is in contrast to general knowledge, or domain-independent knowledge which, in general, refers to the common usage of a word, sometimes referred to as the dictionary usage of a word. The use of the word Domain or Domain knowledge is used within general purpose disciplines such as history, law, systems engineering or even computer science. People with knowledge in a generic area (i.e., law) might have specific domain knowledge in computers, electronics, computers or even specific computer architectures such as [[dido:public:ra:xapend:xapend.a_glossary:r:risc]]. |
| ==== Semantic Level ==== | ==== Semantic Level ==== | ||
| [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | ||
| - | [[dido:public:ra:xapend:xapend.a_glossary:s:semantics | Semantic]] Level is concerned with the meaning, relationship and restrictions on data and information described in the __Domain or Structural__ and __Syntactical__ Levels. At this level, computer systems unambiguously exchange information. The information that is exchanged might not be identical but there is a shared understanding between the two systems about the meaning of the information. Some examples of Semantic Interoperability are described by the ability of:(( | + | The //[[dido:public:ra:xapend:xapend.a_glossary:s:semantics | Semantic]] Level// is concerned with the meaning, relationship and restrictions on data and information described in the __Domain or Structural__ and __Syntactical__ Levels. At this level, computer systems exchange information unambiguously. The information exchanged might not be identical but there is a shared understanding between the two systems about the meaning of the information. Some examples of Semantic Interoperability are described by the ability of:(( |
| Ontology Taxonomy Coordinating WG / OntacGlossary, Accessed 10 July 2020, [[http://colab.cim3.net/cgi-bin/wiki.pl?OntologyTaxonomyCoordinatingWG%2FOntacGlossary]] | Ontology Taxonomy Coordinating WG / OntacGlossary, Accessed 10 July 2020, [[http://colab.cim3.net/cgi-bin/wiki.pl?OntologyTaxonomyCoordinatingWG%2FOntacGlossary]] | ||
| )): | )): | ||
| - | * Two independent programs with reasoning capability arrive at the same conclusions from the same data | + | * Two independent programs with reasoning capability to arrive at the same conclusions from the same data |
| * An information system, without additional human intervention, to perform the tasks for which it was designed through the exchange of relevant data with other systems((Note: mediated by formally specific definitions and axioms)), independently of how and what purpose this data was originally collected, stored and managed. | * An information system, without additional human intervention, to perform the tasks for which it was designed through the exchange of relevant data with other systems((Note: mediated by formally specific definitions and axioms)), independently of how and what purpose this data was originally collected, stored and managed. | ||
| - | * One system to use data from an external source (without prior planning) and output useful (though not necessarily perfect) results. | + | * One system to use data from an external source (without prior planning) and still able to output useful (though not necessarily perfect) results. |
| ===== DIDO Specifics ===== | ===== DIDO Specifics ===== | ||
| [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | [[dido:public:ra:1.4_req:2_nonfunc:05_interoperability | return to Top]] | ||
| - | //<color #FF0000><todo>TBD - to be added/expanded in future revisions of the DIDO RA</todo></color>// | + | : <wrap hi><color red> To be added/expanded in future revisions of the DIDO RA </color></wrap> |
| /**=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- | /**=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- | ||