Interoperable, Extensible and Efficient System Architectures
-
Upload
angelo-corsaro -
Category
Technology
-
view
737 -
download
1
description
Transcript of Interoperable, Extensible and Efficient System Architectures
![Page 1: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/1.jpg)
Ope
nSpl
ice
DD
S
Angelo CORSARO, Ph.D.Chief Technology Officer OMG DDS Sig Co-Chair
Interoperable, Extensible and Efficient System Architectures
![Page 2: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/2.jpg)
Ope
nSpl
ice
DD
S
Motivating Examples
![Page 3: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/3.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
SESAR: The Single Sky☐ Enable operational interoperability
across ATM/ATC in EU
☐ Allow information to flow seamlessly within the ATC/ATM ecosystem and across Europe
☐ Ensure the system is incrementally extensible and evolvable
☐ Ensure the system makes efficient use of resources such as network
![Page 4: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/4.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Smart City / Smart Grid
☐ Make relevant information available in real-time to an open ended number of consumers
☐ Ensure interoperability with third parties, efficient use of resources and extensibility
![Page 5: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/5.jpg)
Ope
nSpl
ice
DD
S
Interoperability
![Page 6: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/6.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Defining Interoperability
The ability of two or more systems or components to exchange information and to use the information that has been exchanged.
![Page 7: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/7.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Syntactic Interoperability
☐ The ability of two or more systems to communicate and exchange data
☐ Requires specified data formats and communication protocols
☐ Syntactical Interoperability is a necessary condition for higher-level of interoperability
![Page 8: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/8.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Semantic Interoperability
☐ The ability to meaningfully and accurately interpret exchanged information
☐ Semantic interoperability requires communication parties to agree on a common information model
![Page 9: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/9.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Interoperability in Summary
☐ Interoperability requires agreements at a syntactic and semantic level
☐ Syntactic Interoperability is commonly achieved by agreeing a communication protocol and a data representation standard
☐ Semantic Interoperability is commonly achieved by agreeing on a Common Information Model
![Page 10: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/10.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Measuring Interoperability
Based on the previous definitions we can define 3 levels of interoperability:
☐ Level 0: No Interoperability (closed interfaces)
☐ Level 1: Syntactic Interoperability (open protocol/data format)
☐ Level 2: Semantic Interoperability (common information model)
![Page 11: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/11.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
☐ Suppose that we define legal messages as any word created over alphabet, more formally:☐ ∑ = {a, b, ..., z, ?, !}☐ words := { x ∈ ∑+}☐ sentence = words+
☐ Example:☐ Can Talk and hear w/o problems☐ Don’t necessarily “understand”
Example: Syntactic Interoperability
Che ora?
Sapresti dirmi che ore sono? What?
![Page 12: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/12.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Semantic Interoperability
☐ Suppose now that we constrain our grammar to a subset of legal English phrases:
Thanks!
Excuse me, do you know the time?
Sure, it’s 11 o’clock.
![Page 13: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/13.jpg)
Ope
nSpl
ice
DD
S
Extensibility
![Page 14: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/14.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Defining Extensibility
Extensibility is a systemic measure of the ability to extend a system and the level of effort required to implement the extension
Extensions can be through the addition of new functionality or the modification of an existing functionality
Modularity and loose coupling foster extensibility
![Page 15: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/15.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Forward Compatibility
☐ Forward compatibility (at times considered as part of extensibility) aims at the ability of a system to gracefully accept input intended for a later version of the system
![Page 16: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/16.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Measuring Extensibility☐ Extensibility can be measured w.r.t. the cost associated with
adding a new functionality to the system
☐ Where:☐ CDNF: Cost of developing the new feature☐ CINF: Cost of integration for the new feature
☐ For any system: 0 < Extensibility ≤ 1
Extensibility = CDNF/(CINF + CDNF)
![Page 17: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/17.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Measuring Forward Compatibility
☐ For simplicity we will assume that forward compatibility is binary, thus either is supported or not
☐ In general, many systems support forward compatibility under certain conditions. Yet for our discussion it is OK to consider it as a binary property.
![Page 18: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/18.jpg)
Ope
nSpl
ice
DD
S
Efficiency
![Page 19: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/19.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Defining Efficiency
In general terms, efficiency describes the extent to which a valuable resource, such as time, space, network bandwidth, etc., is well used for the intended task of purpose
![Page 20: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/20.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
☐ Efficiency can be measured as follows:
☐ Where:☐ CO: Optimal Cost to perform the given task/operation ☐ CA: Actual Cost to perform the given task/action
☐ For any system: 0 < Efficiency ≤ 1
Measuring Efficiency
Efficiency = CO/CA
![Page 21: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/21.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Data Encoding☐ As an example of efficiency, let’s consider different data
encoding for a relatively simple Temperature Sensor
☐ Let’s assume a very simple temperature sensor defined as follows:
struct TempSensor { short temp; short hum;};
![Page 22: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/22.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Data Encoding
0 23 0 4B
TempSensor t = {35, 75};
{ “ t ebyte 0 1 2 30 1 2 3
m p “ :
3 5 , “
h u m “
: 7 5 }
byte
CDR JSON
4 bytes16 bytes
![Page 23: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/23.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Data Encoding☐ Let’s compute now the efficiency. If we ignore variable length
encoding, then the cost of encoding two short integers is 4 bytes, thus CO = 4 bytes
☐ CDR Efficiency. The actual cost of encoding our temperature sensor in CDR was CA = 4 bytes this leads to EfficiencyCDR = 4/4 = 1
☐ JSON Efficiency. The actual cost of encoding our temperature sensor in JSON was CA = 16 bytes this leads to EfficiencyJSON = 4/16 = 0.25
☐ Note: We have taken a few short cuts here since a formally sound derivation of CO should have considered the entropy of the data source. Instead we have silently assumed a binary entropy function.
![Page 24: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/24.jpg)
Ope
nSpl
ice
DD
S
Data Centric Architectures
![Page 25: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/25.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Data-Centric Architecture (DCA)Abstract DefinitionA Data Centric Architecture consists of:☐ Abstract Data Types: A, B, C, ... ☐ Arrows: f, g, h, ...where arrows satisfy the following properties:
Given f: A → B, g: B → C, and h: C → D
then the following holds true:
∃ g ∘ f: A → C [Composition]
∃ 1A : A → A [Identity Arrow]
h ∘ (g ∘ f) = (h ∘ g) ∘ f [Associativity]
f ∘ 1A = f = 1B ∘ f [Unit]
A Data Centric Architecture is a Category
![Page 26: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/26.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Data-Centric Architecture (DCA)
The abstract definition of a Data-Centric Architecture formally captures its key properties:
☐ The Abstraction Barrier is defined in terms of Abstract Data Types
☐ The System Behaviour is specified in terms of transformations (functions or arrows) over these Abstract Data Types
Note: From this emerges a natural relationship between DCA and Functional Programming Languages
![Page 27: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/27.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Space Traveller☐ Suppose we want to create a
distributed game in which we have (some) UFOs that are trying to destroy our spaceship
☐ UFO can be our allies/enemies and can be played by other players or computers
☐ Some UFOs, might just be space travellers and should not be destroyed
☐ The goal of the game is to destroy the UFOs that have been classified as threats
[1/3]
![Page 28: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/28.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Space Traveller
Data Types☐ FlyingObject☐ Dynamics☐ Classification☐ Collision
Arrows☐ animate: Dynamics → Dynamics☐ classify: FlyingObject x Dynamics → Classification☐ collide: [FlyingObject x Dynamics] → [Collision]☐ pilot: IO → Dynamics x FlyingObject☐ fire: IO → FlyingObject x Dynamics☐ display: FlyingObject x Dynamics x Classification x Collision
→ IO
☐ The DCA for this game could be described as follows (keeping it simple...)
[2/3]
![Page 29: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/29.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Space Traveller
pilot
fire
animate classify
collide display
IODynamics
Dynamics DynamicsDynamics
Classification
Dynamics
Classification[Dynamics][Collision]
Collision
IO
FlyingObject
FlyingObject
IODynamics
FlyingObject
FlyingObject
[FlyingObject]
[3/3]
![Page 30: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/30.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Data-Centric vs. Service-CentricData-Centric and Service-Centric architectures, such as SOA, Distributed Objects, etc., differ in several dimensions:
☐ Abstraction Barrier:☐ Data-Centric architectures rely on data abstractions☐ Service-Centric architectures rely on service abstractions
☐ Level of Coupling☐ Data-Centric architectures rely solely on the shared knowledge of abstract data
types (agree on the “what”)☐ Service-Centric architectures rely on the shared knowledge of operational
interfaces along with the knowledge of the service provider and of its existence (agree on “what”, “who”, and “when”)
![Page 31: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/31.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DCA Benefits☐ Loose Coupling
☐ Anonymicity (e.g. only things to be known are the data types and not who produces/consumes them)
☐ Composability (especially when combined with functional languages)
☐ Extensibility
☐ Ease of Integration
☐ Performance (easier to parallelize)
![Page 32: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/32.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DCA Interoperability
☐ To enable Interoperability DCA should rely on middleware technology that provides a Level 2 Interoperability
☐ In other terms, middleware technologies that define☐ open/standard communication protocols☐ open/standard data representation format, and ☐ open/standard ways of describing a Common Information Model
![Page 33: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/33.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DCA Extensibility☐ Extensibility is enabled by DCA through modularity, composability
and loose coupling
☐ Modularity is tied to the granularity of the “arrows/functions” that defined in the system
☐ Composability follows from the properties (refer to definition) of DCA
☐ Loose coupling follows from the fact that the only “contract” between the different element of a system are the abstract data types and nothing else. Neither topological nor existential informations, e.g. it does not matter if there are consumer for a given type T nor how many of those are there and where they are located
![Page 34: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/34.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DCA Forward Compatibility
☐ Forward compatibility depends entirely from the technology used to implement the DCA
☐ However, the presence of a typed Common Information Model can facilitate the implementation of efficient and safe “forward compatibility” mechanism
![Page 35: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/35.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Efficiency
☐ The efficiency of a DCA depends on ☐ The definition of the Common Information Model (e.g. its level of
normalization), and☐ The efficiency of the infrastructure used to implement the DCA
![Page 36: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/36.jpg)
Ope
nSpl
ice
DD
S
DDS and DCA
![Page 37: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/37.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DDS Core Standard
☐ DDS is a family of standards addressing the communication needs of Data Centric Architectures
☐ The two standards at the core are:☐ DDS v1.2 -- API☐ DDSI v2.1 -- Wire Protocol
Ownership Durability Content Subscription
Minimum Profile
Data Centric Publish Subscriber (DCPS)
DDS Interoperability Wire Protocol - DDSI-RTPS
Application
ApplicationUDP/IP
![Page 38: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/38.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DDS Standard EcosystemApplication
DDS RMI
Java-5ISO C++ ScalaANSI C
DDS
DDS RMI
X-Ty
pes
DDSI-RTPS
Secu
rity
Secu
rity
DDSI-RTPS
X-Ty
pes
network
2004
2006
2012 2012
20102012 2010 2012
2006
2004 2010 2010 201x
ApplicationAPI
Wire Protocol
![Page 39: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/39.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DCAs with DDS
☐ DDS provides first class support for DCAs
☐ DCAs Abstract Data Types are captured in DDS via Topics
☐ DDS does not provide primitive support for specifying DCAs Arrows. These are defined by the architect using her/his favorite formalism / programming language
![Page 40: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/40.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DDS Topics☐ A Topic defines a typed data
stream☐ A Topic has associated a data
type and QoS☐ The Topic name, type and QoS
defines the key functional and non-functional invariants
☐ Topics can be discovered or locally defined
DURABILITY,DEADLINE,PRIORITY,…
“net.gva.VehiclePosition”
struct Position2D { long vid; //@Key long x; long y;};
TopicTypeName
QoS
![Page 41: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/41.jpg)
Ope
nSpl
ice
DD
S
DDS & Interoperability
![Page 42: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/42.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DDS: Level 2 Interoperability
DDSI Wire Interoperability
Data ModelCommon “Language”
+QoS Requirements
Interoperability
Semantic Interoperability
Syntactic Interoperability
![Page 43: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/43.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DDS: Portability
DDS API Standard
Application
Portability
![Page 44: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/44.jpg)
Ope
nSpl
ice
DD
S
DDS: Extensibility & Forward Compatibility
![Page 45: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/45.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Extensibility
☐ DDS-based applications feature all the extensibility benefits deriving from DCA
☐ In addition, due to the built-in dynamic discovery, DDS-based Systems are completely decoupled from deployment details
![Page 46: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/46.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Forward Compatibility
☐ DDS supports Forward Compatibility, specifically, it allows for both monotonic as well as generalized type extensions
☐ Monotonic type extensions allow old systems to consume new types as far as changes consist of additions to the tail of the type
☐ Generalized type extensions allows attribute reordering and removal
![Page 47: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/47.jpg)
Ope
nSpl
ice
DD
S
Efficiency
![Page 48: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/48.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
DDS Efficiency☐ The DDS standard was
designed in such a way to maximize time and space efficiency
☐ OpenSplice DDS has been designed to minimize resource usage while maximizing performance and scalability
Latency☐ 15-20 usec Inter-Core Latency
☐ 75 usec over GBps Ethernet
Throughput☐ Up to 10+M msg/sec inter-core
☐ Up to 5M msg/sec inter node
OpenSplice DDS Performance Metrics
![Page 49: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/49.jpg)
Ope
nSpl
ice
DD
S
Back to the Space Traveller
![Page 50: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/50.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Example: Space Traveller
pilot
fire
animate classify
collide display
IODynamics
Dynamics DynamicsDynamics
Classification
Dynamics
Classification[Dynamics][Collision]
Collision
IO
FlyingObject
FlyingObject
IODynamics
FlyingObject
FlyingObject
[FlyingObject]
[3/3]
![Page 51: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/51.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Space Traveller Topic Types//@Nestedstruct Bounds { long width; long height;};
struct FlyingObject { long oid; //@Key long kind; Bounds bounds;};
//@Nestedstruct Vector { long x; long y;};
struct Dynamics { long oid; //@Key Vector pos; Vector speed;};
enum Classifier { UNKNOWN, FRIEND, THREAT};
struct Classification { long oid; // @key Classifier kind;};
struct Collision { long oid; long coid;};
![Page 52: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/52.jpg)
Ope
nSpl
ice
DD
S
Real World Interoperability
![Page 53: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/53.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
SESAR: The Single Sky
☐ Adopted the DDS standard as the foundation of their DCA
☐ Defined and standardized a domain specific Common Information Model concerning flights and their management
![Page 54: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/54.jpg)
City Service -‐ Architecture
Urbio2ca M
ESH network
Urbio&ca
City Message BUS – Opensplice DDS
Exis2ng system
s
Esper – Park Control
Data warehouse
APPLICATIONSUser, City agent
![Page 55: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/55.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
UK Generic Vehicle Architecture
☐ Adopted the DDS standard as the technology at the foundation of next generation military vehicles
☐ Defined a domain specific Common Information Model -- the GVA Information Model
![Page 56: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/56.jpg)
Ope
nSpl
ice
DD
S
Summing Up
![Page 57: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/57.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
Concluding Remarks
☐ Interoperability, Extensibility and Efficiency is key for an increasing number of applications
☐ Data Centric Architectures (DCAs) provide an architectural framework that facilitates the design of systems that are interoperable, extensible and efficient
☐ DDS is the middleware infrastructure that most naturally supports DCAs
![Page 58: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/58.jpg)
Ope
nSpl
ice
DD
S
![Page 59: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/59.jpg)
Copyrig
ht 2011, PrismTech – A
ll Rights Reserved.
Ope
nSpl
ice
DD
S
References
¥Fastest growing JVM Language¥Open Source¥www.scala-lang.org
¥ #1 OMG DDS Implementation¥ Open Source¥ www.opensplice.org
OpenSplice | DDS¥Scala API for OpenSplice DDS¥Open Source¥github.com/kydos/escalier
Escalier
¥Simple C++ API for DDS¥Open Source¥github.com/kydos/simd-cxx
¥DDS-PSM-Java for OpenSplice DDS¥Open Source¥github.com/kydos/simd-java
¥ DDS-based Advanced Distributed Algorithms Toolkit
¥Open Source¥github.com/kydos/dada
![Page 60: Interoperable, Extensible and Efficient System Architectures](https://reader034.fdocuments.in/reader034/viewer/2022051412/54b6e6f34a7959eb268b4598/html5/thumbnails/60.jpg)
Ope
nSpl
ice
DD
S ¥@prismtech
¥@acorsaro
¥youtube.com/opensplicetube ¥slideshare.net/angelo.corsaro
¥ [email protected]¥[email protected]
¥opensplice.com ¥forums.opensplice.org
¥opensplice.org ¥[email protected]
:: Connect with Us ::