Technology to the Warfighter Quicker SBIR Phase II Discussion / Demo 6/29/06 Paul Gustavson (Principle Investigator) Ben Sisson (BASS Engineer) Tram Chase.

Slides:



Advertisements
Similar presentations
Object-Oriented Application Frameworks Much of the cost and effort stems from the continuous re- discovery and re-invention of core concepts and components.
Advertisements

Design Validation CSCI 5801: Software Engineering.
Database System Concepts and Architecture
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Software Reuse SEII-Lecture 28
Connect. Communicate. Collaborate Click to edit Master title style MODULE 1: perfSONAR TECHNICAL OVERVIEW.
Technology to the Warfighter Quicker SBIR Phase II Discussion 2/1/06.
Technology to the Warfighter Quicker SBIR Phase II IPR - 1/26/06 Paul Gustavson (Principle Investigator) Ben Sisson (Principle Engineer) Karl Crosson (BAF.
Overview of OASIS SOA Reference Architecture Foundation (SOA-RAF)
Unified theory of software evolution Reengineering – Business process reengineering and software reengineering BPR model – Business definition, process.
Systems Engineering in a System of Systems Context
Adding Aggregate Services to the Mix: An SOA Implementation Use Case Ben Sisson Paul Gustavson Karl Crosson SimVentions, Incorporated Bowman Drive,
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Introduction To System Analysis and Design
1 Software Testing and Quality Assurance Lecture 15 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Feb. 23, 2004CS WPI1 CS 509 Design of Software Systems Lecture #5 Monday, Feb. 23, 2004.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
UNIT-V The MVC architecture and Struts Framework.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
The Design Discipline.
BOM Template Specification Images SISO-STD DRAFT-V0.13.
Introduction to Object-oriented programming and software development Lecture 1.
An Introduction to Software Architecture
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
Introduction to MDA (Model Driven Architecture) CYT.
High Level Architecture Overview and Rules Thanks to: Dr. Judith Dahmann, and others from: Defense Modeling and Simulation Office phone: (703)
Introduction To System Analysis and Design
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
Technology to the Warfighter Quicker SBIR Phase II IPR - 5/10/06 Paul Gustavson (Principle Investigator) Ben Sisson (Principle Engineer) Karl Crosson (BAF.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
The High Level Architecture Introduction. Outline High Level Architecture (HLA): Background Rules Interface Specification –Overview –Class Based Subscription.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
1 SBIR Phase II Final Report 10/18/06 Paul Gustavson (Principle Investigator) Ben Sisson (BASS Engineer) Tram Chase (BOMworks Engineer) SimVentions, Inc.
Chapter 8 Object Design Reuse and Patterns. Object Design Object design is the process of adding details to the requirements analysis and making implementation.
Tram Chase Real-Time Platform Reference (RPR) Base Object Model (BOM) Composability Standard for Enabling Interoperability A B C.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
IMPRINT 2 2 System of Systems (SoS) Modeling Approach Micro Analysis & Design Nils D. LaVine Marc Gacy 7 December 2005.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
From FOMs to BOMs and Back Again Paul Gustavson Tram Chase Larry Root SimVentions, Incorporated Bowman Drive, Suite 502 Fredericksburg, VA
1 Service Creation, Advertisement and Discovery Including caCORE SDK and ISO21090 William Stephens Operations Manager caGrid Knowledge Center February.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Software Engineering Chapter: Computer Aided Software Engineering 1 Chapter : Computer Aided Software Engineering.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
Fire Emissions Network Sept. 4, 2002 A white paper for the development of a NSF Digital Government Program proposal Stefan Falke Washington University.
25 April Unified Cryptologic Architecture: A Framework for a Service Based Architecture Unified Cryptologic Architecture: A Framework for a Service.
® IBM Software Group © 2007 IBM Corporation Module 3: Creating UML Diagrams Essentials of Modeling with IBM Rational Software Architect, V7.5.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
2013 Spring Simulation Interoperability Workshop 13S-SIW-004 Extended FOM Module Merging Capabilities Bjo ̈ rn Mo ̈ ller Andy Bowers Mikael Karlsson Björn.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
1 The XMSF Profile Overlay to the FEDEP Dr. Katherine L. Morse, SAIC Mr. Robert Lutz, JHU APL
Databases and DBMSs Todd S. Bacastow January 2005.
Self Healing and Dynamic Construction Framework:
BOMs – Base Object Models
Distribution and components
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Model-Driven Analysis Frameworks for Embedded Systems
Service-centric Software Engineering
Data, Databases, and DBMSs
An Introduction to Software Architecture
Presentation transcript:

Technology to the Warfighter Quicker SBIR Phase II Discussion / Demo 6/29/06 Paul Gustavson (Principle Investigator) Ben Sisson (BASS Engineer) Tram Chase (BOMworks Engineer) SimVentions Mike Haddad PEOSTRI – SBIR POC

Topics 1.Brief overview of BOM Aggregation Framework SBIR effort – Background – Our Approach – Current Capabilities 2.Presentation of WARSIM FOM decomposition to BOMs – BOMworks View – Composability Benefits 3.Exercise of WARSIM BOM instances using BOMworks and BASS – Preliminary demo of the multi-layered agg / deagg of WARSIM BOM models/entities. 4.Discussion – Issues – Schedule – Next Steps

Develop a common framework for aggregating and deaggregating entities in simulations exercises to:  Facilitate interoperability between models at different levels of fidelity (allowing agg-level sims to interact with entity- level sims)  Improve system performance for distributed exercises Reduce memory load Reduce CPU load Reduce network load  Manage entity count depending upon system load  Preserve simulation behavior validity throughout the aggregation levels Aggregation - the coupling of multiple models/entities into a single inclusive group SBIR Background

Our Approach Use of Base Object Models (BOMs) to represent both aggregated and non- aggregated models and entities Design of an SOA approach that could benefit different simulations / environments (w/ minimal impact) Implementation of BAF web services in Java to maximize integration and deployment

Our Approach Why the use of BOMs? Offers modular way to represent simulation exchange elements Platform independent (XML) Captures / carries forward conceptual model Allows implementations to be represented independently Can be combined to form compositions (model aggregation) Can be used to define container classes (entity instance aggregation) Facilitates interoperability (the exchange of data) –BOMs can be mapped across different BOMs, FOMs and SOMs BOM – A piece part of a conceptual model, simulation object model, or federation object model, which can be used as a building block in the development and/or extension of a simulation or federation. Federate (SOM) BOM Assembly BOM 1 BOM 3 BOM n Composite Interface Composition Sim / System A Representation Federation (FOM) Federate B Federate X Federate A Aggregation Model #1 Model #2 Model #3 Model #n - or - Theater Warfare Representation BOM 2 Weapons Effect Radio Comms Repair Resupply Detect / Jam

Our Approach to BAF Goals / Capabilities Provide a common framework for aggregating and deaggregating models and entities –Facilitate Agg-level / entity-level interoperability –Reduce memory, cpu, & network load –Cost effective What are its capabilities? –Produces aggregate / deaggregate solutions –Supports transfer control –Manages / stores entity / agg models (library) –Monitors exercise activities Logger Scoreboard Load Balancing Automation –Transformation support What are its key components? –Web Service Methods –Base Object Models How is it offered / implemented? –BASS - an adjunct server application –Java –Web Services (SOAP) –SOA –Multi FOM Environments Service Oriented Architecture (SOA) FOCUS Common interface(s) Loose coupling Minimize unnecessary dependencies

Model AggregationEntity Instance Aggregation Aggregation Types Producer - 1 st LevelConsumer - 2 nd Level Aggregation Levels Our Approach to BAF Supported Aggregations

Current Capabilities Where Are We? BAF Specification – version 1.0b – Update expected in Aug BASS Implementation – Now – Represents 90% completion of BAF 1.0b – Update expected in Sept Demo-ware – SV-AGG – BOMworks Now Plugs into BASS – More planned! BOMs Developed / Used – RPR BOMs – WARSIM BOMs Recent white papers / presentations: – 06S-SIW-115 – “From FOMs to BOMs and Back Again” – 06S-SIW-116 – “Adding Aggregation Services to the Mix: An SOA Implementation Use Case” Efforts

Highlights - SV-Agg

Highlights - WARSIM FOM Decomposition BOMworks™ Steps we took How we are using BOMs Demonstration Behind The Scenes Discussion - Composability Benefits

Create BOMsCreate BOMs Edit BOMsEdit BOMs Grid/XML/UMLGrid/XML/UML Cut/Copy/PasteCut/Copy/Paste Validate BOMsValidate BOMs Import/Export FOMsImport/Export FOMs 1.3/ /1516 Source Code GenerationSource Code Generation Built on Galileo Framework - extensible and customizableBuilt on Galileo Framework - extensible and customizable.NET Version available Java Community Edition recently delivered to DMSO Highlights - Use of BOMWorks

Highlights - FOMs -> BOMs (Breaking up a FOM) Model Identification (Metadata) Notes Lexicon (definitions) HLA Object Classes HLA Object Class Attributes HLA Object Classes HLA Interaction Classes HLA Interaction Class Parameters HLA Interaction Classes HLA Data Types HLA Dimensions HLA Time HLA Tags HLA Synchronizations HLA Transportations HLA Switches 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 Pattern Of Interplay State Machine Entity Type Event Type Model Mapping Entity Type Mapping Event Type Mapping FOM BOM

WarSimBOMs Highlights - FOMs -> BOMs (Warsim BOMs) Explore using

Nuts and Bolts - Mapping Entity Data Comparing it to things we know org.land.unit RPR FOM BaseEntity.PhysicalEntity.Platformorg.land.equip_group abstract.land.equip_type abstract.land.rotary_wing_type RPR FOM BaseEntity.PhysicalEntity.Platform.- Aircraft platform.fwaOriginRPR Object ClassJSIMS Object Class WARSIM Object Class?

Highlights Exercise of WARSIM BOM instances using BOMworks and BASS Exerciser

Behind The Scenes What’s Happening w/ BOMworks Exerciser? - BOMworks creates “classes” from BOM - Allows initializing of values with XML file - Allows offsets when creating multiple “classes” at once - Allows “attachment” of behavior interfaceA behaviorA Instance1 interfaceA behaviorA Instance2 Aggregation “solution” from BASS provides BOM with new container class (interface) interfaceB Container Application of the aggregate “solution” is up to the Simulation!!! interfaceB Container behaviorA soldierInterface soldierbehavior Soldier1 soldierInterface soldierbehavior Soldier2 interfaceB Platoon platoonbehavior May require mapping 1 2 3

Behind The Scenes What’s Happening w/ BASS? BASS creates the aggregate solution for BOMworks Exerciser How? – Participates as a passive player / monitors Simulation – Web Service request is made by BOMworks Exerciser BASS evaluates relative exercise data BASS builds a “solution” and returns the ID – BOMworks Exerciser fetches solution from BASS – Client applies Aggregation solution (see previous slide) What Solutions does BASS provide? – BOM (Container Class) – JavaScript

Behind The Scenes What’s Else is Happening? var reference = new Object(); reference.id_u = null; var common = new Object(); common.security_mark_0 = null; common.faction_id = 31;... SpiderMonkey C/C++ JavaScript plug-in Rhino Java – JavaScript plug-in BASS also provides JavaScript (dynamic code) solution for populating container since container class is “new” to the sim JavaScript could also be used to perform the mapping mentioned earlier for behaviors Sim can choose to keep instances “alive” while using container class / object –to preserve sim validity 100% Otherwise Sim can remove instances and use container object to deagg back to instances when needed –deltas in container are static if instances are deleted –depends on sims role, requirements, and where they want to benefit from aggregation network load, Memory savings CPU processing reduction

Behind The Scenes What are the BAF Interface Methods Available? Simulation Client Simulation Client BAF Server Simulation Client - Agg Solutions - Deagg Solutions -Transfer Control - Load Support Entities Aggregated Entities

Discussion - Composability Benefits “Bridging constructive, virtual, live and embedded simulations remains a relevant, challenging, and under- addressed problem”* “The FOM lies at the center of the interoperability challenge...”* Benefits to BOMs Composability Better Manageability Easy to Reconstitute Helps Tie disparate systems / simulations *Conclusions made by paper/presentation titled 02S-SIW-002 COMPOSABILITY - “The ability to rapidly select and assemble components to construct meaningful simulation systems to satisfy specific user requirements. Composability includes the framework, body of knowledge, tools, techniques, and standards necessary to enable effective integration, interoperability, and reuse.” - (DoD M&S Master Plan) Live Virtual Constructive

Discussion How can we get more intimate with WARSIM? –Need to understand conceptual models and use of WARSIM FOM How can we involve WARSIM team with development / use of –BOMs? –BAF/BASS? Other topics? Mar 06 – Complete BASS implementation to BAF version 1 April 06 (Spring SIW – Huntsville) – BASS / SV-AGG demo (compliant with BAF version 1) – 06S-SIW-116 – “Adding Aggregate Services to the Mix: An SOA Implementation Use Case” – BOMworks 1.0 release! July 06 – WARSIM collaboration? – OOS collaboration? – Orlando / VA Demo Aug 06 – BAF Adjudication of Interface Spec (v1.0) Sept 06 (Fall SIW) – Orlando Demo Nov 06 – I/ITSEC Demo using WARSIM? Dec 06 – Mar 07 – Continued integration (using CMod) – WARSIM integration? – Phase III contract vehicle in place? As Defined Feb 2006

Further Discussion / Questions? Paul Gustavson (work) (cell) Mike Haddad (407) (work)

Backup Slides

Entities and Vehicles Aggregate Units Disaggregated Battlefield Two Views of the Same World BAF/BASS is trying to support these both. BOMs provide an enabler for representation of these two representations

Federate (SOM) BOM Assembly BOM 1 BOM 3 BOM n Composite Interface Composition Sim / System A Representation Federation (FOM) Federate B Federate X Federate A Aggregation Model #1 Model #2 Model #3 Model #n - or - Theater Warfare Representation BOM 2 BOMs are designed for enabling composability, providing extensibility, facilitating interoperability, improving manageability, and encouraging understandibility. BOM Palette -x Choose what fits conceptual model? A B C X State Machines Pattern of Interplay Events User Requirements Simulation Components Simulation Systems foms federates BOM – A piece part of a conceptual model, simulation object model, or federation object model, which can be used as a building block in the development and/or extension of a simulation or federation. Weapons Effect Radio Comms Repair Resupply Detect / Jam DefinitionConceptStandards Illustration Key Concept - Using Base Object Models (BOMs) as Building Blocks

BOM Illustration #1 Derived from RPR FOM State Machines Pattern of Interplay pattern actions Weapons Effect states Federation ActivitiesFederate Capability

BOM Illustration #2 Jammer (Originator) Radar Threat Detected in Range (Msg) Threat / Target Emits Reflects Detect Jam Detection Jamming Pattern of Interplay State Machine Detect /Jamming Activity Federation ActivitiesFederate Capability Here there are actually two patterns of interplay “Detection” and “Jamming” We could conceivably use the “Detection” pattern for other purposes besides just “Jamming” such as “Vectoring Interceptors”

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 Pattern Of Interplay State Machine Entity Type Event Type Model Mapping Entity Type Mapping Event Type Mapping What is a BOM really? An Inside Look Not all these pieces are required for a BOM… Essential metadata needed so that the BOM can be described, discovered and properly reused Conceptual entities and the events which occur among those entities as well as the states attainable by those entities. Mapping of conceptual entities and events to object model object and interaction classes. Notes and definitions supporting any of the above mentioned elements Object classes, interaction classes, and datatypes used to perform the behavior described in the conceptual model. An XML based standard for capturing model metadata, aspects of the conceptual model, the class structures of an object model which are to be used by a system (and a federation) for representing the conceptual model aspects, and the mapping that exists between that conceptual model and object model. BOM template allows BOMs to be captured in a reusable way

Hierarchical View of the RPR BOMs… RPR FOM 2.0 Repair Resupply Entity Creation Entity Reconst’n Entity Removal Action Request Post Comment Post Event Behavior Rep Object Rep EntityObjects EnvObjects MinefieldObjects SignalObjects Weapons Effect Collision E ntity S t U pdate Minefield Synthetic Env SIMAN Logistics RadioComms Includes Model Mapping Behavior Representations Weapon Effects Logistics Support Collision Entity State Update Simulation Management Distributed Emission Regeneration Radio Communications Entity Management Minefield Synthetic Environment Behavior Representations Weapon Effects Logistics Support Collision Entity State Update Simulation Management Distributed Emission Regeneration Radio Communications Entity Management Minefield Synthetic Environment Object Representations Entity Object Types Env Object Types Minefield Object Types Signal Object Types Object Representations Entity Object Types Env Object Types Minefield Object Types Signal Object Types

How Are BOMs To Be Used…Functionally? Profile BOMs BOM 1 BOM 2 BOM n Conceptual Model View Object Model View Weapons Effect Detect / Jam Radio Comms BOM z Sup plier BOM b BOM a Platform Human BOM c BOM d Radar Munition Logistics CAP Support Collision BOM Assembly Composite Interface Composition Representation Federate B Federate X Federate A Theater Warfare Representation Federation for Joint Training Homeland Defense Training FOM Operation Freedom Training FOM Behavior (Conceptual) BOMs Object (Class Structure) BOMs These can be swapped out as modules New “Assemblies” can be “composed” and (for HLA) turned into FOMs

BOM Element Validity Matrix BOM Element -> Model Identification Conceptual Model Model Mapping Object Model Definition Individual BOM (Conceptual Model) behavior representation (pattern, state machine, events) Required Optional Individual BOM (Object Model Def) object repesentation (object classes, interaction classes) RequiredOptional Required BOM Assembly (representing composite of other BOMs) Required Required (Pattern of Interplay) Optional SOM FOM BOMs BOM Assembly n Aggregate Model Xformation Remember, BOMs can take on different “forms”. This chart shows how different BOM Elements may constitute different types of BOMs A BOM Assembly is a collection of one or more BOMs. That BOM Assembly can be transformed into FOMs, SOMs, or a representation of an Aggregate Model

entities > M1A > M1A > Apache Our Approach How are we using BOMs with BAF? Mapped to BOMs FOM Simulation Data exchange interface elements Model Aggregations Subsystem models BOMs gun radar vehicle soldier Humvee platform Composite pattern BOM > agg -123 Flyweight pattern Entity Instance Aggregations

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 Our Approach to BAF Agg/Deagg Triggers/Criteria

Why is Model Composability Desirable? Creating a simulation requires breaking the problem into parts that can be addressed separately –To reduce the effects of interruption –To permit specialization –To facilitate computing alternative ways of handling a given component –To maintain the software over time –To reduce risk by relying upon previously proven components where possible Understanding complex systems requires decomposition. –No one can comprehend the whole’s details Testing systems is simplified if done module by module then at the system level Controlling M&S costs / economic incentives –Costs are correlated with the amount of new code writing Maintaining and modifying M&S –Individual modules can be substantively modified or updated as software as necessary, without endangering the overall system. “Modularity is necessary when dealing with complex systems, and some degree of composability is surely possible and desirable.” - Paul Davis (RAND)

BOMWorks WARSIM BOMs BASS Summary - BASS Aggregation Process Simulation 1 BASS Database Management System Simulation environment with many entities using WARSIM FOM WARSIM FOM Use BOMworks to breakup WARSIM FOM into manageable BOMs Register BOMs to BASS through Library Management Capabilites - Add BOMs to the Library - Simulation clients exchange considerable information - Client requests aggregation solution - Aggregate Solution returned and applied Simulation 2 Information