Military Simulation Case Study

Slides:



Advertisements
Similar presentations
System Integration Verification and Validation
Advertisements

Dead Reckoning Objectives – –Understand what is meant by the term dead reckoning. –Realize the two major components of a dead reckoning protocol. –Be capable.
Lecture 12 Page 1 CS 111 Online Devices and Device Drivers CS 111 On-Line MS Program Operating Systems Peter Reiher.
OASIS Reference Model for Service Oriented Architecture 1.0
Introduction To System Analysis and Design
Architecture is More Than Just Meeting Requirements Ron Olaski SE510 Fall 2003.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
Brent Dingle Marco A. Morales Texas A&M University, Spring 2002
1 ITC242 – Introduction to Data Communications Week 12 Topic 18 Chapter 19 Network Management.
Lecture 13 Revision IMS Systems Analysis and Design.
Chapter 23: ARP, ICMP, DHCP IS333 Spring 2015.
8 Systems Analysis and Design in a Changing World, Fifth Edition.
Systems Analysis and Design in a Changing World, 6th Edition
Software engineering Olli Alm Lecture 2: requirements, modelling & representation.
Unified Modeling Language 7/12/2015B.Ramamurthy1 The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson, and Jim Rumbaugh.
1 Computer Systems & Architecture Lesson 1 1. The Architecture Business Cycle.
Providing Haptic ‘Hints’ to Automatic Motion Planners Providing Haptic ‘Hints’ to Automatic Motion Planners by Burchan Bayazit Department of Computer Science.
Ch 20 Q and A IS333, Spring 2015 Victor Norman. Universal Service Means every computer can talk “directly” with every other one. A message is not addressed.
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Software Life Cycle Model
CECS 474 Computer Network Interoperability WAN Technologies & Routing
Chapter 1- Introduction Lecture 1 Ready, fire, aim (the fast approach to software development). Ready, aim, aim, aim, aim... (the slow approach to software.
Why Analysis Process Refer to earlier chapters Models what the system will do makes it easier for understanding no environment considered (hence, system.
1 Design and Integration: Part 1 Nuggets about Design vs Project Management.
UML - Development Process 1 Software Development Process Using UML (2)
1 Building and Maintaining Information Systems. 2 Opening Case: Yahoo! Store Allows small businesses to create their own online store – No programming.
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
March 7, 2005MOBIKE WG, IETF 621 Mobility Protocol Options for IKEv2 (MOPO-IKE) Pasi Eronen.
Week 5: Business Processes and Process Modeling MIS 2101: Management Information Systems.
Common Devices Used In Computer Networks
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Team Skill 6: Building the Right System From Use Cases to Implementation (25)
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Chapter 10 Information Systems Analysis and Design
Introduction To System Analysis and Design
Testing Workflow In the Unified Process and Agile/Scrum processes.
Problem Statement: Users can get too busy at work or at home to check the current weather condition for sever weather. Many of the free weather software.
Distributed Virtual Environments Introduction. Outline What are they? DVEs vs. Analytic Simulations DIS –Design principles Example.
The High Level Architecture Introduction. Outline High Level Architecture (HLA): Background Rules Interface Specification –Overview –Class Based Subscription.
Introduction CS 3358 Data Structures. What is Computer Science? Computer Science is the study of algorithms, including their  Formal and mathematical.
Systems Life Cycle A2 Module Heathcote Ch.38.
Systems Analysis and Design in a Changing World, Fourth Edition
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
Chapter 8 Lecture 1 Software Testing. Program testing Testing is intended to show that a program does what it is intended to do and to discover program.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Mohit Anand, Software Engineer Adobe 1 Selecting GUI Automation Testing Tool for Mobile Domain.
1 - 1 Systems Analysis and Design, Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
Requirements Engineering Requirements Management Lecture-25.
UML - Development Process 1 Software Development Process Using UML.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
CS223: Software Engineering Lecture 16: The Agile Methodology.
RANDY MODOWSKI COSC Cloud Computing. Road Map What is Cloud Computing? History of “The Cloud” Cloud Milestones How Cloud Computing is being used.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Software Development.
Systems Analysis and Design in a Changing World, Fifth Edition
Software Documentation
Unified Modeling Language
Programmable Logic Controllers (PLCs) An Overview.
X in [Integration, Delivery, Deployment]
Software Defined Networking (SDN)
CS240: Advanced Programming Concepts
Unified Modeling Language
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
Applying Use Cases (Chapters 25,26)
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Connectors, Repeaters, Hubs, Bridges, Switches, Routers, NIC’s
Software Development Process Using UML Recap
Chapter 2: Building a System
Presentation transcript:

Military Simulation Case Study Victor Jimenez Sr. Engineer, Northrop Grumman victor.jimenez@ngc.com

Overview Military Simulation Architecture Distributed Training Problems Implemented Solution Towards a Common Operational Picture

Simulation Architecture Different Types of Simulations Live Constructive Virtual We will limit ourselves to Virtual Simulations

Virtual Simulations Place the warfighter into the midst of the action Also called man-in-the-loop sim May or may not control path through world Has a first person perspective (sort-of) Flight sims are virtual

Flight Simulation Architecture The ownship is a distributed application Physics, Haptics, Weather, Combat Resolution may be separate computers Graphics is usually a cluster of computers May have a motion platform Computers for an ownship usually talk private protocol over separate network Usually talk to external platforms using standard protocol on an external network

Standard Protocols Distributed Interactive Simulation (DIS) Broadcasts entire state of an entity Has different packets (PDU) for each action IEEE1278.1a is last version High Level Architecture (HLA) Sends only update of what changed Has Objects and Interactions separated IEEE1516 is latest

Distributed Training Problems Has to be fast Has to be reliable Has to work in a WAN configuration Has to be AFFORDABLE! In terms of Bandwidth In cost to implement Problems with protocols Problems with conception of battlespace

Protocol Issues - DIS DIS broadcasts – can’t send over long haul WAN unless some type of bridge is setup Bridge is very hard to set up for more than 2 Additional Bandwidth costs Hard to manage what is sent Usually, you just didn’t want the data anyway

Protocol Issues - HLA Assumes that Multicast groups are free ATM doesn’t support multicast HLA is an interface IEEE 1516 support is just starting No IIOP specified Data sent is defined on the fly – doesn’t necessarily match what other guy uses

Common Battlespace Issues Your training mission defines your battlespace Differences in fidelity crop up Differences in what you implement appear Differences in how you use the protocol IMPEDANCE MISMATCH OCCURS!

Even though the simulators are built distributed, AHA! Even though the simulators are built distributed, THEY DON’T PLAY WITH EACH OTHER!

Integrate vs Interoperate Integrate means that things are reworked to create one common way to do things Everybody becomes “the same” Interoperate means that disparate systems can talk to each other – have limitations Everybody stays the “the same”

The Path Less Followed We decided to interoperate Couldn’t change other company’s simulations Didn’t want to change since this would lead to having continuously changing sims Didn’t make sense since each has a different battlespace We wanted to isolate each site from each other Oh, the Horror!

Implemented Solution Created ATM cloud Tie individual sites into cloud with appropriate edge device Created an architectural device to handle impedance problems Customized Software Runs on ‘normal’ computers under W2K

Standards, Standards, Standards Defined Standards Network Services and Setup Protocol Representation Object Representation Certify different sites as to level of compatibility Sites work with other sites with some limits

Object Model TIM Had a series of Technical Information Meetings (TIMs) to discover what is important to each site Figured out mapping from local representation to global objects

Lost in the Translations We realized we needed to created “never-fail” software The Key is Test, Test and Test Some More Sequence of testing steps Unit tests Factory Acceptance Scenario test with CGF’s Integrate on Site

Unit Tests Just for the particular software unit - written first! Created by the programmer to test normal running conditions boundary conditions tricky calculations Whatever else fails later on Automated, runs before check-in Requires discipline – lots of it

Factory Acceptance Testing Test Cases created by the test team Inputs and Outputs defined by requirements Programming team involved only to create tools Uses carefully crafted data Runs every night in an automated fashion Immediate feedback to Programmers Not necessarily representative – (oops!)

Scenario Testing Needed something to cover data gap Between CGF from MTC and other standard CGFs Run manually by test team Slowly being automated, requires Deep Knowledge and understanding Longer cycle (2 weeks) to run

On Site Integration Install lines, equipment, software Testing On the Site Using actual equipment Typical small scenario Surprises still occur! Mini-Development Cycle – we can change things with impunity

Towards a C.O.P. Common Operational Picture Subset of the battlespace that everybody understands well enough to work Standards continue to evolve Protocols Capabilities New Simulators Updated Simulators New Training objectives

Change Review Board Found out we need this to manage complexity Too many changes occurring due to different development schedules Need to coordinate rollout of capabilities and needs

Conclusion Networks are message passing architectures Provide abstraction Contracts between participants formalized in standards and models Not perfect but “close enough” Very useful to have something in the middle Manage bandwidth Prioritize data Translate to/from COP Hide network details from users