re-ADA for C4ISR
description
Transcript of re-ADA for C4ISR
re-ADA for C4ISR
Sheldon X. Liang, PhD
Computer Science
re-ADA for C4ISR Reliable Ada-based Descriptive Architecture via a Quantifiable Interoperating Model
Why re-ADA? Scalable re-ADA Formal re-ADA A C4ISR Case Study Practical re-ADA Quantifiable re-ADA
The International Language for SE The Language for a Complex World The first ISO-standardized OOPL The Quantitative ADL for C4ISR
re-ADA for C4ISR
Why re-ADA? Excellence and Drawbacks
Why? Ada95 has the meaning of OOP but does not have the class-like form
What an embarrassing – a C++ or Java programmer who has expertise in OOP may not be able to write code in Ada95
re-ADA for C4ISR
Why re-ADA? Expectations and Accomplishments
OOPLMean / Form
Perfect OOPLLike Java/C++
Not just OOPLBut ADL
re-Adare-Ada
Ada95Ada95
re-ADAre-ADA
re-ADA for C4ISR
Why re-ADA? Approach against Drawbacks
re-Adare-Ada
Ada95Ada95ISO
OOPL
re-ADAre-ADA
Class-likeOODM
C++/Java-like
Class constructC++/Java-like
Class construct
CSP-based
SemanticsCSP-based
Semantics
CORBA-based
InfrastructureCORBA-based
Infrastructure
Quantitatively Modeling Dependability (RT)
Quantitatively Modeling Dependability (RT)
Reliable Architecture for C4ISR
Interoperability
C4ISR
re-ADA for C4ISR
Why re-ADA? Quantitatively Modeling Interoperability
Dependable Interoperability with respect to RT constraintscan be monitored at runtime
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
Interoperability
for
C4ISR
Interoperability
for
C4ISR
SystemInteroperability
InformationInteroperability
DependableInteroperation
EffectiveIntercommunication
SoftwareInteroperability
SeamlessInterconnection
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
re-ADA aims to enable legacy (heterogeneous) components to work together over the network by using interoperability technologies:
data unification, message-sending, and interoperable shell.
Seamless Interconnection
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
Software interoperability refers to inconsistent representation of the same real world entity in various legacy component systems.
By data unification andOOMI (Object-Oriented Model for Interoperability), the heterogeneous legacy component can be abstracted as a coarser-grained object that is unified into a standard representation.
Seamless Interconnection Effective Intercommunication
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
For the sake of effective SMS/RMI betweendistributed components, a set of explicit functionalities needs to realize effective intercommunication.
Information interoperability refers to two message-sending ways: Simple Message Sending (SMS) and Remote Method Invocation (RMI) via message-sending.
Seamless Interconnection Effective Intercommunication
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
Seamless Interconnection Effective Intercommunication Dependable Interoperation
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
System interoperability refers to joint task execution over the network that is realized via message-sending in a dependable wayDependable Interoperability with respect to RT constraints
can be monitored at runtime
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
Interoperability
for
C4ISR
Interoperability
for
C4ISR
SystemInteroperability
InformationInteroperability
DependableInteroperation
EffectiveIntercommunication
SoftwareInteroperability
SeamlessInterconnection
re-ADA for C4ISR
Scalable re-ADA An Evolutionary Approach
Formal dependability model
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
Constructing formal dependability model for C4ISR the process that incorporates three views of dependability throughout software development process
Quantitative view Conceptual view Semantic view
acquiring dependability requirementsthat refer to fundamental attributes:
mapping attributes into measurable constraints
binding attributes onto architectural artifacts, like the role, style, and protocol
Formal dependability model
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
Constructing formal dependability model for C4ISR the process that incorporates three views of dependability throughout software development process
Quantitative view Conceptual view Semantic view
Formal dependability model
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
Dependable Interoperation between two collaborative components in production-consumption (Prepare Respond) pattern. Three kinds of timing constraints have been developed to reflect dependability attributes, such as availability or reliability:
MET (maximum execution time) for client side, MRT (maximum response time) for server side, and LATENCY (maximum delay during communication)
Formal dependability model
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
Client/Publisher Server/Subscriber
The client prepares message (constrained by MET), and sends it out as a RMI message (constrained by LATENCY), and then expects response from the server (constrained by MRT)
Formal dependability model
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
Formal dependability model Real-time constraints monitor
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
In distributed computing environment, multi-threads dominate the interoperation between Publisher and Subscriber. , and Agent that plays a role of Publisher that delivers message for response, and a role Subscriber that observes message by giving response. Real-time constraints can be monitored at runtime on the basis of multi-threading communication.
Formal dependability model Real-time constraints monitor
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
(a) Preparation for deliveringconstrained by MET
(b) Response for observingconstrained by MRT
(c) intercommunication constrained by LATENCY
Formal dependability model Real-time constraints monitor A C4ISR case study
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
A C4ISR system is generally composed of component systems in military applications – for instance, airplanes in the sky, warships in the sea, submarines underwater or missiles on the land, all of which connects with the battle management infrastructure.
Formal dependability model Real-time constraints monitor A C4ISR case study
re-ADA for C4ISR
Formal re-ADA Quantitative Interoperating Model
Dependable interoperability makes a lot of sense with C4ISR in regards to the collaborative interoperation of military commands in a coalition. C4ISR is usually established on the military internetworking infrastructure (network-centric warfare).
re-ADA for C4ISR
Formal re-ADA A C4ISR Case Study
re-ADA for C4ISR
Formal re-ADA A C4ISR Case Study
C4ISR architectures aim to improve capabilities by enabling the quick synthesis of “go-to-war” requirements with sound investments leading to the rapid employment of improved operational capabilities, and enabling the efficient engineering of warrior systems.
re-ADA for C4ISR
Formal re-ADA A C4ISR Case Study
Syntactic class construct
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95
In re-ADA, all heterogeneous components are required to play a specific role -- either a Publisher or a Subscriber, or both. So we need an up-most ancestor class Role for defining generalized features for all descendant classes to inherit from, such as tagged, Controlled, Initialize and Finalize (Ada95/Ada05).
In this Ada-based design approach, the pristine notion of class is introduced as a major program element in a package in support for more straightforward object-oriented construction; and through inheritance, many descendant classes can be derived.
Syntactic class construct
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95
An Ada-based pristine class in an Ada package is treated as program unit that encloses properties (data & subprograms)
Syntactic class construct
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95
There are five rules that have been developed as key points upon which a pre-compiler can be made to translate the pristine class into Ada95/Ada05 code.
R-1 class and type: a class name always implies two types; R-2 member method: a member method is an access to a subprogram R-3 constructor and destructor: They are Initialize and Finalize R-4 prefix “Current” access within member method’s body: R-5 object designator: “Obj<-” is introduced to to choose the member method. R-6 Interoperation via Collaborator: a pair of publisher and subscriber will share a task that collaborates on the interoperation. R-7 Concurrent computation and synchronous rendezvous: under the monitor of the collaborator, there are two tasks working for the publisher and the subscriber, respectively.
Syntactic class construct
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95
Syntactic class construct Inheritance and polymorphism
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95
The Collaborator’s connection provides a useful means by which a concrete component is assigned to play a specific role (Publisher orSubscriber). In terms of role-assignment, there are two ways to“glue” the concrete component on the specific role: Object embedment, and Object derivation. The object derivation is to derive a new class and override the existing member method (predefined by the framework) – for instance, procedure Prepare is abstract. An abstract member method represents polymorphism and dynamic binding.
Syntactic class construct Inheritance and polymorphism
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95
Through inheritance, the subclass can redefine a subprogram by overriding it, which means polymorphism
Syntactic class construct Inheritance and polymorphism Computational collaboration
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95
We now take a closer look at the C4ISR case study. Although we already have an outlined configuration with Ada-based descriptive architecture, here we apply the 6th rule and the 7th rule to translate the Ada-based description into real Ada95 code
re-ADA for C4ISR
Practical re-ADA Class-like OOP in Ada95 Computational collaboration
Code and Semantics
C4ISR: Reliable InteroperabilityC4ISR architectures aim to improve capabilities by enabling the quick synthesis of “go-to-war” requirements, and enabling the efficient engineering of warrior systems
QIM/re-ADA: Quantitatively Modeling ArchitectureThe QIM/re-ADA provides the explicit loci around which designers are able to stress and evaluate the non-functional properties during architectural design.
re-ADA/CORBA: Descriptive Architecture & Infrastructure re-ADA/CORBA maps dependability into quantifiable constraints as architectural (semantic) properties that are constructed on the basis of CORBA, so that dependable interoperation can be verified at runtime.
re-ADA for C4ISR
Quantifiable re-ADA Conclusion
re-ADA for C4ISR
Questions