Presentation is loading. Please wait.

Presentation is loading. Please wait.

Adding Aggregate Services to the Mix: An SOA Implementation Use Case Ben Sisson Paul Gustavson Karl Crosson SimVentions, Incorporated 11905 Bowman Drive,

Similar presentations


Presentation on theme: "Adding Aggregate Services to the Mix: An SOA Implementation Use Case Ben Sisson Paul Gustavson Karl Crosson SimVentions, Incorporated 11905 Bowman Drive,"— Presentation transcript:

1 Adding Aggregate Services to the Mix: An SOA Implementation Use Case Ben Sisson Paul Gustavson Karl Crosson SimVentions, Incorporated 11905 Bowman Drive, Suite 502 Fredericksburg, VA 22408 540-372-7727 bsisson@simventions.com pgustavson@simventions.com kcrosson@simventions.com bsisson@simventions.com pgustavson@simventions.com kcrosson@simventions.com

2 Topics Covered Problem SOA Approach Use Case: –BAF Design –Supported Aggregations –BASS Implementation –BOM Use Demonstration Summary

3 Problem Tightly Coupled Environment Custom Interfaces Platform Dependent System Specific Capability Selective Systems Custom Bridges Limited Capability The “Mix” Simulation Subsystem / Clients Obfuscated Interoperability

4 SOA Approach Self-autonomous consumers and providers –Interact with each other –Platform independent Allows loose coupling –Interfaces comprehensible to consumers/providers –Interfaces serve as framework for messages exchanged –Minimize unnecessary dependencies among systems and software Web services –Key building block for SOA implementations –encapsulates application logic and functionality Service provider Service consumer service request service response eXtensible Markup Language technology used to describe, bind, and enable communication –Web Services Description Language (WSDL) –Simple Object Access Protocol (SOAP) –Universal Description, Discover, and Integration (UDDI) can enable the discovery of desired services Simulation Clients Simulation Clients BOMs Simulation Clients Interface elements discovery services messaging BAF Web Services

5 Common interface(s) Loose coupling Minimize unnecessary dependencies SOA Approach The “Mix” Simulation Subsystem / Clients Capability as Service Identified Methods SOA Design Capability Descriptions Capability Descriptions Well Understood Interfaces XML WSDL SOAP UDDi Service Oriented Architecture (SOA) FOCUS Information Management Web Service Methods Application Logic and Functionality Platform Independent

6 Video Clip Left uncontrolled, Obfuscated Interoperability can lead to Extreme Irritability…

7

8 Minimizing the Obfuscation in the “Mix” - The Need for Aggregation Support Aggregation Obstacles –Models typically not built for aggregation –Simulation systems often have to be customized –Data loss during the aggregation process –limited resources to perform aggregation Aggregation Needs –Reduced customization of simulation systems –Minimal burden to manage aggregation by simulation systems –Maintain validity Aggregation - the coupling of multiple models/entities into a single inclusive group

9 SOA Use Case Design => BAF Service Oriented Architecture (SOA) FOCUS Common interface(s) Loose coupling Minimize unnecessary dependencies Aggregation Services –Model Composition aggregation / deaggregation –Entity Instance aggregation / deaggregation Library Support Services –Library Methods (load, search, fetch, add) –Support for BOMs, FOMs, BTMs, BCIs Monitoring/Intercessory Services –Data Logging Support –Load Balancing Support –Transfer Control Support –Model Transformation Support –Statistics/Scoreboard Support Support Services –BOM to FOM transformations –FOM to BOM transformations –FOM to FOM transformations BAF goals: Cost-effective mechanism for aggregation /deaggregation before or during large- scale simulation exercises Reduce high resolution models to more efficient lower resolution models that can be aggregated Allow models representing various levels of resolution and depth of aggregation to be able to interact with one another.

10 BAF Supported Aggregations Model AggregationEntity Instance Aggregation Aggregation Types 1 st Level2nd t Level Aggregation Levels

11 BAF Aggregate Triggers/Criteria Proximity to a specific obstacle, entity or feature A change in the level of interest An increase (or decrease) in the physical entity load Possible aggregation due to proximity to geographical location or point Possible aggregation due to proximity to client entities or domain of interest

12 SOA Implementation The “Mix” Simulation Subsystem / Clients Methods SOA Design: BAF XML WSDL SOAP UDDi Capability Descriptions Capability Descriptions Well Understood Interfaces Loosely Coupled Environment Well Understood Interfaces Platform Agnostic Capability as Service Information Management BAF Logic Implemented BASS Web Services Aggregation Services Library Support Services Monitoring/Intercessory Services Support Services

13 BAF Implementation => BASS Technologies Applied –Java (Eclipse) –Web Services –Independent WSDLs for each service group –Not dependent on dedicated server –Uses and generates BOMs –Apache Apache Tomcat

14 entities > M1 - 1403 > M1 - 1404 > Apache - 132 How BASS Uses BOMs for Aggregation RPR BOMs RPR FOM OneSAF Objective System Data exchange interface elements Model Aggregations Subsystem models BOMs gun radar vehicle soldier Humvee platform Composite pattern BOM > agg -123 Flyweight pattern Entity Aggregations

15 BASS Demonstration Federate(s) (SV-AGG) BASS Federate: Requests to join BASS network Federate: Registers BOM with BASS BASS Database Management System Federate ID Model ID BOM Entity Driver Entity Data Entity Aggregation

16 Simulation – BASS Monitors & Registers Federates Federate(s) (SV-AGG) BASS Federate: Requests aggregation solution of entities Instance Data Monitored Entity Driver Entity Data Analyze Data Entity Data BASS Database Management System Solution ID Monitoring

17 Simulation – BASS Monitors & Registers Federates Federate(s) (SV-AGG) BASS Database Management System Federate: request aggregate solution Entity Driver Entity Data Agg Solution Federate implements aggregate solution reducing resource load and improving performance Entity Data Solution ID Monitoring Instance Data Monitored

18 Summary Benefits  aggregation support w/o affecting simulation exercise resolution  Accessible by simulation clients regardless of architecture  Support aggregation without affecting the detailed level of the data presented during the simulation exercise  Implement aggregation to reduce processing entity loads  Facilitate better management of piece parts used to build the aggregation solution and govern the exchange of information within the simulation exercise  Provide aggregation support both pre-simulation and during simulation  Provide flexibility to aggregate entities of varying model types

19 Questions? Ben Sisson SimVentions, Inc. bsisson@simventions.com bsisson@simventions.com www.simventions.com/sbir_agg

20 Addendum Slides

21 BAF Methods BASS Specification Method Summary by Section Model Aggregation Methods Transformation Support Data Logging Support Exercise Support Model_RequestAggSolution BOMToFOM SetDataLoggerSettingsJoinAggNetwork Model_RequestDeaggSolutionFOMToBOM GetDataLoggerSettingsLeaveAggNetwork Model_ExtractFromAgg FOMToFOM SetDataLoggingModeSelectModelID Model_AppendToAgg BOMToBOM GetDataLoggingModeUnselectModelID Model_QueryAgg FetchDataLogGetModelIDs Model_FetchAggSolution GetClientIDs Model_FetchDeaggSolution FetchSessionHistory SetLoadSupportSettings Entity Aggregation Methods Library Support Service Statistics / Scoreboard GetLoadSupportSettings Entity_RequestAggSolutionGetItemsByTypeSetScoreboardSubscribeLoadSupport Entity_RequestDeaggSolutionSearchItemsByMetadataGetScoreboardUnsubscribeLoadSupport Entity_ExtractFromAggFetchItemByID CheckLoadSupportStatus Enity_AppendToAggFetchItemIDByName RequestTransferControl Entity_QueryAggAddItemToLibrary Error Handling CheckTransferControlStatus Entity_FetchAggSolutionDeleteItemFromLibraryGetErrorStringAcknowledgeRequestForTransferControl Entity_FetchDeaggSolutionUpdateItemMetadataGetErrorCDCompleteTransferControl

22 Introduction The “Mix” … –Set of Independent systems, Simulations, Presentation tools –Support a service joint or coalition focus need Analysis Testing Training Obfuscated Interoperability –Entity Level Simulation –Aggregate Level Simulations –Data Exchange –Not Understood The Remedy –Tight Coupling with Simulations of Common Breed –Custom Bridges for Simulations of Different Pedigrees Better Way … –SOA Approach

23 SOA Approach Self-autonomous consumers and providers –Interact with each other –Platform independent Allows loose coupling –Interfaces comprehensible to consumers/providers –Interfaces serve as framework for messages exchanged –Minimize unnecessary dependencies among systems and software Web services –Key building block for SOA implementations –encapsulates application logic and functionality Service provider Service consumer service request service response eXtensible Markup Language technology used to describe, bind, and enable communication –Web Services Description Language (WSDL) –Simple Object Access Protocol (SOAP) –Universal Description, Discover, and Integration (UDDI) can enable the discovery of desired services Simulation Clients Simulation Clients BOMs Simulation Clients Interface elements discovery services messaging BAF Web Services

24 BASS Implementation An implementation of BAF called the BOM Aggregation Support Server (BASS) has been developed for supporting aggregation within different level simulations Operates as an independent, passive participant within the simulation environment Interface capable of processing entity level information from various clients of different platforms and architecture BASS provides web services to these clients which can be called in order to return aggregation solutions, deaggregation solutions, load balancing via monitoring, library management, and transformation support before or during simulation exercises The clients can implement the solutions offered by BASS to help facilitate better performance during a simulation exercise.

25 BAF Design A common framework to support aggregation and deaggregation within simulation environments is called the BOM Aggregation Framework (BAF). BAF is an SOA implementation which allows for loose coupling of agg-level and entity-level simulations Platform and language-independent mechanism for supporting aggregation and deaggregation for a myriad of clients Enhances interoperability and performance of systems and simulations within simulation environments Preserves simulation validity and throughput of simulation data exchanged between simulations of different echelon levels BAF provides support for clients and servers with the use of system component solutions called Base Object Models (BOMs). BAF defines a set of Web Services for enabling:  aggregation / deaggregation  transfer of entities  load balancing  model transformations  logging of data  library management of models and components BAF server provides web services that can be leveraged by participating clients, while non- participating clients continue to function independently within the simulation environment BAF web services can be available both at design time among model developers and at run-time with the constructive simulations that are at play over a network.

26 SOA Approach A provider –provides functional remote services (modeling, data access, computational processing) –can be offered by a web service or other means A consumer –can be a client application that might request a provider for computational analysis or access of specific data and/or the autonomously receipt of subscribed information when it becomes available The mechanics of SOA attributed to the application of service consumers and service providers –self-autonomous consumers and providers interact among one another –Act as providers and consumers in a very loosely coupled environment Service consumer (client) sends a request message to a service provider (server) –In HLA, a federate could be considered a service consumer Server subsequently sends response message back to client Interfaces serve as the framework for the exchanged messages The interfaces are defined in a way that is comprehensible to both the consumer and provider An SOA implementation encapsulates application logic and functionality by often using web services

27 Introduction System strain based upon large-scale simulations exercises –High entity loads –High degree of resolution needed –Undue strain on Federation Network CPU RTI Performance* A service oriented approach to provide aggregation services will aid in this process by –Developing a set of web services that a client can interface with to obtain aggregate support during simulation exercises –Maintain an exercises high degree of resolution –Reduce the strain on Network, CPU, and RTI Performance* –Manage each clients level of interest separately The aggregation of models / entities can reduce these areas of strain –Through the recognition that there are varying levels of interest –Using the Composite and Flyweight design patterns aggregation can be used as a means to reduce the strain on system resources

28 BOM Elements a component-based standard describing reusable piece parts of a simulation or simulation space. BOMs can be used to document one or more of the following piece part elements: –Conceptual Model Patterns of interplay State machines Entities Events –Interface Description Object classes / attributes Interaction classes / parameters –Mapping between Conceptual Model and Interface Description Used as a building block in the development and extension of a simulation and/or a federation of simulations. Provides developers and users a modular approach –for defining and adding new capabilities to a federate or federation, –for quickly composing object models such as HLA FOMs and SOMs through BOM Assemblies. Model Identification (Metadata) Notes Lexicon (definitions) Object Model Definition HLA Object Classes HLA Object Class Attributes HLA Object Classes HLA Interaction Classes HLA Interaction Class Parameters HLA Interaction Classes HLA Data Types Conceptual Model Definition Pattern of Interplay State Machine Entity Type Event Type Model Mapping Entity Type Mapping Event Type Mapping

29 Requires the Application of a Common Interface The key for SOA interoperability is the application of a common interface How can common interfaces be established? The common interface must be leveraged by all participating software agents (i.e. federates) The interfaces must be accessible and understood by all providers and consumers Interfaces serve as the framework for the messages that are to be exchanged Minimal system behavior is provided by these interfaces (or messages) An XML schema should be applied to define the vocabulary and structure Additional services should be able to be added without impairing the common interface. Service Oriented Architecture (SOA) FOCUS

30 SOAP Essentially a protocol for allowing one class to remotely call the methods found in another class. SOAP "marshals" the data passed as parameters or return values during a method call. Marshaling the data involves defining a transmission protocol that allows you to pass parameters and return values in a platform and language neutral manner. This is where XML comes into play.


Download ppt "Adding Aggregate Services to the Mix: An SOA Implementation Use Case Ben Sisson Paul Gustavson Karl Crosson SimVentions, Incorporated 11905 Bowman Drive,"

Similar presentations


Ads by Google