Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Interoperability, Automation, Built-in Evolution: the DEVS Framework for Coping with Emerging Complexity Bernard P. Zeigler Arizona Center for Integrative Modeling and Simulation University of Arizona, Tucson and RTSync Corporation 1 IT Systems Developmental Complexity? • IT Systems Developmental Complexity = degrees of developmental freedom × interdependence of design decisions × special requirements of environments • IT Complexity explosion – is driven by faster, cheaper computers, networking, web middleware, …, – Emergence: each stage enables the next stage with accelerating options for further growth – Wherever choices in platform, language,…, line of code, are possible, different developers will make different choices – Underlying structure/behavior dependencies force local decisions to have global impact breaking neat design patterns – Environments impose a plethora of special situations and an exponentially growing number of parameter combinations. 2 • Consequences of complexity explosion: – Proliferation of incompatible variations on same themes – Ubiquitous heterogeneity – Vertical integration - “Stove piping” Response: Model-Driven Development Methodology • is increasingly being adopted for software-intensive system development • In this context, model is an abstract representation of software code, that – – – – is technology independent can survive technology changes can be implemented in multiple code instantiations enables reuse and automation 3 UML (Unified Modeling Language) • Is the most widely used framework to support model driven development • Promoted by Object Management Group as a standard within its Model Driven Architecture (MDA) • Supported by increasingly powerful commercial tools • Enhanced by SysML supporting requirements front end • Incorporated in architectural frameworks: DoDAF, MoDAF, … 4 Issues In Developmental Complexity of IT Systems • • • • • • Often development does not start from scratch Conditioned by idiosyncratic requirements Powered, but unconstrained, by applicable standards Requires legacy subsystem integration Rigorous testing is needed to cope with complexity Methodology must scale with growth and evolution of system • UML/MDA offers only limited support to address these concerns 5 Formulate the Issues within a Formal System of System Models (SoSM) Concept • SoSM = collection of disparate system models to be federated to satisfy new simulation requirements • Each participating system model may itself be large and complex • Participant models usually have become efficient at achieving their own specialized requirements • Participant models often adhere to idiosyncratic formalisms and development approaches • Distinguish between interoperation and integration to set appropriate objectives 6 Interoperation vs Integration* Interoperation of system components Integration of system components • • • • • • participants remain autonomous and independent loosely coupled interaction rules are soft coded local data vocabularies persist share information via mediation • • • • participants are assimilated into whole, losing autonomy and independence tightly coupled interaction rules are hard coded global data vocabulary adopted share information conforming to strict standards reusability composability efficiency NOT Polar Opposites! * adapted from: J.T. Pollock, R. Hodgson, “Adaptive Information”, Wiley-Interscience, 2004 7 DEVS Framework • • Discrete Event Systems Specification (DEVS) is the basis for a formal framework for modeling and simulation DEVS contributes to scalability by: – Offering a standard for distributed simulation to support interoperability, composability, and reuse – Exploiting the separation between model, experimental frame and simulator – Fostering model continuity and progressive development – Automating and integrating complex systems implementation and testing – Emulating the biological brain for its "built-in" correlation of activity and behavior to drive efficient evolution via component re-us DEVS is not a technique, method or technology… But it can leverage technology to add implement its contributions … in particular Web Service Technology 8 Web Service Oriented Architecture Basis for M&S Services Registries Data Data Type Schema and Instances XML SOAP Network Layers Transport protocol Language and platform independent => separation of specification and implementation Loosely coupled => message based, synchronous and asynchronous interactions. Net-Centric => No centralized control, use of established protocols, security considerations. Inter-operable => Standards based Observable => agents can inspect service requests/responses HTTP/HTTPS request/response Data Encoding SOAP (Simple Object Access Protocol), XML Schema Interface Description WSDL (Web Services Description Language) Service Description and Discovery UDDI (Universal Description, Discovery and Integration) Security WS-Security, XML-Signature, XML-Encryption, ... Emerging infrastructure => Net-Centric Enterprise Services on the Global Information Grid Basis for Model Registration and Discovery => Meta-Data Registry Basis for Simulation => Web server and service development frameworks ( .Net, AXIS) Emerging advances => Mediation services, Semantic Web 9 Approach to Current Issues in SoSM • Adopt Web-enabled M&S Concepts for composing SoSM • Exploit SOA infrastructure for Model Repository and Component Reuse • Develop Formal Dynamic SoSM Distributed Simulation Standard • Build on this foundation to support Higher Levels of Interoperability • Develop automated and integrated development and testing methodology 10 SOA-enabled Model Repository Composability and Reuse * Requirement In relation to Supports Components and Coupling Creating new compositions composability reusability building block components for application areas defining a small number of “primitives” for synthesizing a wide variety of models for specific domain expressability reusability hierarchical modular model construction input/output ports for both building block components and coupled models composability complexity management experimental frame base indexing supports discovery of frames instantiated in the model base that are related to a desired frame for given objectives meta data characterization discovery accommodate multiple formalisms enable using different types of models with specific semantics, advantages, and limitations expressabilty interoperability * adapted from: ZEIGLER, B. P. 1997. A framework for modeling & simulation. Applied Modeling & Simulation: An Integrated Approach to Development & Operation, McGraw-Hill, New York. 11 Success Story: DEVS-based Joint MEASURE – Model Repository Reuse* “… the Lockheed-Martin activities may well represent the state of the art in complex model composability …”, Improving the Composability of Department of Defense Models and Simulations, P.Davis and R.Anderson RAND, 2004 GPS III Use of infrared model in JCTS project Note presence of discrete and continuous dynamic model types *Advanced Simulation Center, Lockheed Martin Corp., Sunnyvale, CA 12 Linguistic Levels of Information Exchange and Interoperability Linguistic Level A System of Systems or services interoperates at this level if : Pragmatic – how information in messages is used The receiver re-acts to the message in a manner that the sender intends (assuming non-hostility in the collaboration). Semantic – shared understanding of meaning of messages The receiver assigns the same meaning as the sender did to the message. Syntactic –common rules governing composition and transmitting of messages The consumer is able to receive and parse the sender’s message pragmatic pragmatic semantic semantic syntactic syntactic System Participant System Participant 13 DEVS Standardization Supports Higher Level Web-Centric Interoperability DEVS Simulation Concept pragmatic semantic syntactic DEVS Model DEVS Protocol DEVS Model Specification DEVS Simulation Protocol Services DEVS Simulator Schemata Registry XML SOAP Network Layers DEVS Protocol specifies the abstract simulation engine that correctly simulates DEVS atomic and coupled models • Gives rise to a general protocol that has specific mechanisms for: • declaring who takes part in the simulation • declaring how federates exchange information • executing an iterative cycle that controls how time advances determines when federates exchange messages determines when federates do internal state updating Note: If the federates are DEVS compliant then the simulation is provably correct in the sense that the DEVS closure under coupling theorem guarantees a well-defined resulting structure and behavior. 14 Web-enabled interoperability of DEVS components Supports re-use, composability, and interoperability • DEVS Message Class is defined in the formalism • Schemata for entity classes in Message are stored in namespace • DEVS Federates can register and discover schemata for information exchange DEVSJAVA client DEVS Namespace aDEVS Federate DEVS coordinator JRE DEVSJAVA Federate DEVS Simulator Services In C++ Proxies DEVS coupled Model Can be automated for JAVA using Dynamic Invocation .Net DEVS Model DEVS Simulator Services In JAVA DEVS Messages Microsoft web server SOAP messages IP Network AXIS2 DEVS Model Apache tomcat server Biologically Inspired Assessment for Component Re-use DEVS Federate DEVS Coordinator Non-DEVS Federate DEVS coupled Model Simulator Services DEVS Model Web server web server DEVS Agent JRE collector Http Requests/ responses DEVS Agent DEVS coordinator DEVS Simulator Services IP Network Mission Thread Evaluation Activity Tracking Component Credit Assignment Correlations of activity with Mission Thread Success Information for Future Component Re-use Component benefit and resource cost in context DEVS-Based Net-Centric Systems Test Agent Capability users T&E Instrumentation sites Mission Thread System Performance Middleware servers workstations networks Information Exchange clients Mission Effectiveness Pragmatic Agents Semantic Agents Syntactic Agents Network Monitoring 17 Summary • Model-driven methodology employs technology-independent software abstractions, e.g., in UML, to support diverse implementation platforms and enable reuse and automation • Existing interoperability standards do not provide needed separation between models and simulations and do not effectively constrain object models • System of System Modeling (SoSM) concepts go beyond UML/MDA to address issues in interoperability, composability, and reuse • DEVS system theory –based framework operationalizes SoSM concepts and supports automated, rigorous testing in realistic GIG/SOA environments 18 Books and Web Links devsworld.org www.acims.arizona.edu Rtsync.com 19 More Demos and Links http://www.acims.arizona.edu/demos/demos.shtml • Integrated Development and Testing Methodology: • AutoDEVS (ppt) & DEMO – Natural language-based Automated DEVS model generation – BPMN/BPEL-based Automated DEVS model generation – Net-centric SOA Execution of DEVS models – DEVS Unified Process for Integrated Development and Testing of SOA • Intrusion Detection System on DEVS/SOA 20 DEVS/SOA Infrastructure: Supports Deployment and Execution of DEVS Models on the Web WEB SERVICE CLIENT DEVS Agent (Observer) DEVS Agent ( Virtual User) DEVSJAVA DEVS Modeling Language (DEVML) WEB SERVICE CLIENT DEVS Simulator Services Middleware (SOAP, RMI etc) Net-centric infrastructure • Service Oriented Architecture (SOA) consists of various W3C standards • • Machine-to-machine interoperable interaction over the network based on WSDL interface descriptions Client server framework • Message encapsulated in SOAP wrapper which is in XML Run Example Example of GIG/SOA Mission Thread Testing • • Test agents are DEVS models and Experimental Frames They are deployed to observe selected participant via their service invocations Observing Agent for Major Smith Observing Agent for Intel Cell 1. MAJ Smith tasks Intel to reconnoiter objective area and provide threat estimate Observing Agent alerts other Agent 2. Posts taskings using Discovery and Storage 3. Intel Cell initiates high priority collection against objective, and collectors post raw output 4. Intel posts products via Discovery and Storage notes time of posting 5. Intel Cell issues alert via messaging 6. MAJ Smith pulls estimate from Storage sends time to other Agent Computes Time for Task, Measure Performance NCES GIG/SOA 22