A Component Architecture for Federate Development 1

Similar documents
THE DEPARTMENT OF DEFENSE HIGH LEVEL ARCHITECTURE. Richard M. Fujimoto

THE DoD HIGH LEVEL ARCHITECTURE: AN UPDATE 1

Specification of the Verity Learning Companion and Self-Assessment Tool

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

TEACHING AND EXAMINATION REGULATIONS (TER) (see Article 7.13 of the Higher Education and Research Act) MASTER S PROGRAMME EMBEDDED SYSTEMS

Development of an IT Curriculum. Dr. Jochen Koubek Humboldt-Universität zu Berlin Technische Universität Berlin 2008

DICTE PLATFORM: AN INPUT TO COLLABORATION AND KNOWLEDGE SHARING

Online Marking of Essay-type Assignments

Designing a Computer to Play Nim: A Mini-Capstone Project in Digital Design I

Scenario Design for Training Systems in Crisis Management: Training Resilience Capabilities

An Introduction to Simio for Beginners

From Virtual University to Mobile Learning on the Digital Campus: Experiences from Implementing a Notebook-University

BUILD-IT: Intuitive plant layout mediated by natural interaction

Seminar - Organic Computing

PH.D. IN COMPUTER SCIENCE PROGRAM (POST M.S.)

On the Combined Behavior of Autonomous Resource Management Agents

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Bluetooth mlearning Applications for the Classroom of the Future

Interaction Design Considerations for an Aircraft Carrier Deck Agent-based Simulation

A Taxonomy to Aid Acquisition of Simulation-Based Learning Systems

"On-board training tools for long term missions" Experiment Overview. 1. Abstract:

Shared Mental Models

Specification and Evaluation of Machine Translation Toy Systems - Criteria for laboratory assignments

CWIS 23,3. Nikolaos Avouris Human Computer Interaction Group, University of Patras, Patras, Greece

UCEAS: User-centred Evaluations of Adaptive Systems

FY16 UW-Parkside Institutional IT Plan Report

UML MODELLING OF DIGITAL FORENSIC PROCESS MODELS (DFPMs)

Introduction of Open-Source e-learning Environment and Resources: A Novel Approach for Secondary Schools in Tanzania

Evaluation of Learning Management System software. Part II of LMS Evaluation

CREATING SHARABLE LEARNING OBJECTS FROM EXISTING DIGITAL COURSE CONTENT

A MULTI-AGENT SYSTEM FOR A DISTANCE SUPPORT IN EDUCATIONAL ROBOTICS

Implementing a tool to Support KAOS-Beta Process Model Using EPF

Chamilo 2.0: A Second Generation Open Source E-learning and Collaboration Platform

HILDE : A Generic Platform for Building Hypermedia Training Applications 1

Applying Learn Team Coaching to an Introductory Programming Course

Software Maintenance

University of Groningen. Systemen, planning, netwerken Bosman, Aart

PRODUCT COMPLEXITY: A NEW MODELLING COURSE IN THE INDUSTRIAL DESIGN PROGRAM AT THE UNIVERSITY OF TWENTE

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

USER ADAPTATION IN E-LEARNING ENVIRONMENTS

A Context-Driven Use Case Creation Process for Specifying Automotive Driver Assistance Systems

Multimedia Courseware of Road Safety Education for Secondary School Students

Emergency Management Games and Test Case Utility:

GALICIAN TEACHERS PERCEPTIONS ON THE USABILITY AND USEFULNESS OF THE ODS PORTAL

SEDETEP Transformation of the Spanish Operation Research Simulation Working Environment

Computer Organization I (Tietokoneen toiminta)

INNOWIZ: A GUIDING FRAMEWORK FOR PROJECTS IN INDUSTRIAL DESIGN EDUCATION

Laboratorio di Intelligenza Artificiale e Robotica

A GENERIC SPLIT PROCESS MODEL FOR ASSET MANAGEMENT DECISION-MAKING

Statewide Strategic Plan for e-learning in California s Child Welfare Training System

Top US Tech Talent for the Top China Tech Company

Blended E-learning in the Architectural Design Studio

Intelligent Agent Technology in Command and Control Environment

Please find below a summary of why we feel Blackboard remains the best long term solution for the Lowell campus:

Class Numbers: & Personal Financial Management. Sections: RVCC & RVDC. Summer 2008 FIN Fully Online

Computer Science 141: Computing Hardware Course Information Fall 2012

Circuit Simulators: A Revolutionary E-Learning Platform

Learning Methods for Fuzzy Systems

INFED. INFLIBNET Access Management Federation Yatrik Patel

A Case-Based Approach To Imitation Learning in Robotic Agents

Laboratorio di Intelligenza Artificiale e Robotica

COMPUTATIONAL COMPLEXITY OF LEFT-ASSOCIATIVE GRAMMAR

Remote Control Laboratory Via Internet Using Matlab and Simulink

Impact of Digital India program on Public Library professionals. Manendra Kumar Singh

Axiom 2013 Team Description Paper

What is beautiful is useful visual appeal and expected information quality

A Practical Approach to Embedded Systems Engineering Workforce Development

AGENDA LEARNING THEORIES LEARNING THEORIES. Advanced Learning Theories 2/22/2016

Multidisciplinary Engineering Systems 2 nd and 3rd Year College-Wide Courses

Towards a Collaboration Framework for Selection of ICT Tools

Designing Educational Computer Games to Enhance Teaching and Learning

A Coding System for Dynamic Topic Analysis: A Computer-Mediated Discourse Analysis Technique

Patterns for Adaptive Web-based Educational Systems

PROGRAMME SPECIFICATION

A Pipelined Approach for Iterative Software Process Model

Using a PLC+Flowchart Programming to Engage STEM Interest

Infrastructure Issues Related to Theory of Computing Research. Faith Fich, University of Toronto

We are strong in research and particularly noted in software engineering, information security and privacy, and humane gaming.

Number of students enrolled in the program in Fall, 2011: 20. Faculty member completing template: Molly Dugan (Date: 1/26/2012)

An Open Framework for Integrated Qualification Management Portals

Bluetooth mlearning Applications for the Classroom of the Future

Lecture 10: Reinforcement Learning

Lecture 1: Machine Learning Basics

CONCEPT MAPS AS A DEVICE FOR LEARNING DATABASE CONCEPTS

Guide Decentralised selection procedure for the Bachelor s degree programme in Architecture, Urbanism and Building Sciences

Document number: 2013/ Programs Committee 6/2014 (July) Agenda Item 42.0 Bachelor of Engineering with Honours in Software Engineering

Designing e-learning materials with learning objects

BENCHMARKING OF FREE AUTHORING TOOLS FOR MULTIMEDIA COURSES DEVELOPMENT

The recognition, evaluation and accreditation of European Postgraduate Programmes.

Geo Risk Scan Getting grips on geotechnical risks

SSE - Supervision of Electrical Systems

Introduction to Mobile Learning Systems and Usability Factors

Robot manipulations and development of spatial imagery

Clumps and collection description in the information environment in the UK with particular reference to Scotland

On-Line Data Analytics

Summary BEACON Project IST-FP

Strategy and Design of ICT Services

Major Milestones, Team Activities, and Individual Deliverables

PESIT SOUTH CAMPUS 10CS71-OBJECT-ORIENTED MODELING AND DESIGN. Faculty: Mrs.Sumana Sinha No. Of Hours: 52. Outcomes

The IDN Variant Issues Project: A Study of Issues Related to the Delegation of IDN Variant TLDs. 20 April 2011

Transcription:

A Component Architecture for Development 1 Marco Brassé Wim Huiskamp TNO Physics and Electronics Laboratory Command & Control and Simulation P.O. Box 96864 2509 JG The Hague, The Netherlands Brasse@fel.tno.nl, Huiskamp@fel.tno.nl Olaf Stroosma Delft University of Technology Faculty of Aerospace Engineering P.O. Box 5058 2600 GB Delft, The Netherlands O.Stroosma@lr.tudelft.nl Keywords: Simulator Architecture, Simulator Components, HLA-RTI, RD&E Applications ABSTRACT: The SIMULTAAN Simulator Architecture (SSA) is the product of a joint project of Dutch Simulation Industry and Research Institutes. The SSA is based on the High Level Architecture (HLA) to promote interoperability and reusability on several levels. On the level of Federations and s, the SSA is fully compatible with HLA. As an extension to HLA, the SSA defines a new level, that of the Component. SIMULTAAN s are composed of Components (e.g. sensors, dynamic model, visual) in order to increase the potential for re-use. Component re-use is encouraged by the SIMULTAAN Object repository (SOR), where the SIMULTAAN partners can store and retrieve Components and/or s. SSA s communicate via a data-exchange middle-ware layer, called the Run-time Communication Infrastructure (RCI). The RCI is currently based on the HLA RTI, but allows other standards such as DIS. The innovative approach of SSA is that the RCI extends the interoperability concepts of HLA by providing dataexchange between SSA Components in a similar way. With this approach the RCI abstracts Components from the intra- SSA protocol and network hardware. SIMULTAAN Federation execution is coordinated by a two-part system: the Manager and the Scenario Manager. The Manager is an SSA Component which controls the other Components within the and represents the to the Federation. The Scenario Manager is an SSA which controls the behaviour of the s within the Federation by issuing commands to the Managers. A SIMULTAAN Federation is defined by its Federation Object Model (FOM), which is equal to the HLA FOM. The HLA Simulator Object Model (SOM) describes each SSA in the Federation. Components are described by their SSA Component Object Models (COM s). A particular SSA is defined by an aggregate of COM s, the SSA Simulator Component Object Model (SCOM).. 1. Introduction A simulator is usually divided into several components, which may be manufactured by different parties. 1 This work has been carried out in the framework of the SIMULTAAN project, which is partly funded by the Dutch initiative for High Performance Computing and Networking (HPCN). Simulator component technology can be used for the rapid and cost-effective development of simulators through the re-use and exchange of existing simulator components. Components are considered the basic building blocks of a simulator, which can potentially be used for more than one type of simulator. Examples of simulator

components are a dynamics component, a component that visualises the virtual environment, or a component that handles the I/O inside a simulator mock-up. Consequently, a simulator can be thought of as a set of interacting components. The total functionality of the simulator may be expressed as the sum of the functionality of its constructing components. In order to apply component technology successfully, the component/simulator architecture has to fulfil certain conditions: the functionality of each component must be well defined and the interfaces between components have to be defined in a formal manner. Formally described interfaces reduce incompatibility problems that might otherwise not be noticed until the integration phase. A clear distinction between the interface(-description) of a component and its functionality improves the re-use of that component since the interface agreements of a new simulator usually imply modifications of the interfaces of available components. The architecture must also support a mechanism to co-ordinate the overall behavior of the components, which should for example ensure proper initialization of components before they are allowed to exchange simulation data. This paper focuses on the simulator/component architecture that was developed in the framework of the SIMULTAAN project, called the SIMULTAAN Simulator Architecture or SSA. The paper is organized as follows. Section 2 describes the SSA which is the main product of the Dutch SIMULTAAN project. Section 3 describes the development of s based on the results of SIMULTAAN. The RCI middle-ware layer is discussed in Section 4. The SIMULTAAN demonstration set-up, which was used as a functional proof of the SSA concept is presented in Section 5. Finally, conclusions are drawn in Section 6. 2. SIMULTAAN Simulator Architecture SIMULTAAN was a 2.5 years project which brought together knowledge and experience in the area of simulators and distributed simulation from universities, research institutes and industry in The Netherlands. The six members of the consortium are TNO Physics and Electronics Laboratory (project leader); National Aerospace Laboratory NLR; Delft University of Technology, Faculty of Aerospace Engineering; Siemens Netherlands NV; Fokker Space BV; Hydraudyne Systems & Engineering BV. Two main results of the project can be distinguished: 1. SIMULTAAN Simulator Architecture. A generic framework applicable for a wide range of simulators, including manned mock-ups of vehicles, high-fidelity flight simulators and unmanned simulators. 2. Permanent Intellectual Infrastructure. The SIMULTAAN consortium strengthened working relationships between its partners. The SIMULTAAN Simulator Architecture (SSA) defines a simulator component architecture that addresses the identified needs for a successful federate development process and makes effective use of simulator component technology. The SSA is intended to maximize the re-use potential of components by defining a standard interface for simulator components. In this way simulator development time will be reduced. By making sure that components comply to the standard interface, and comply to a number of rules, they can be re-used in other simulators built on the same architecture. The SSA is often used in an RD&E environment that requires rapid re-configurability of simulators, but it can also be used in an industrial environment. The SSA facilitates interoperability between s in a Federation. On the level of s and Federations, the SSA is fully compatible with HLA. As an extension to HLA, the SSA introduces a new level, that of the Component. A SIMULTAAN is composed of SIMULTAAN Components. The SSA facilitates interoperability between Components inside a, in a similar manner as HLA-RTI does between s. The SSA identifies the following key architectural elements: Component, Run-time Communication Infrastructure (RCI), Manager (), and Scenario Manager (SM). A Component is the basic building block for a SIMULTAAN federate. All SIMULTAAN Components interact with the simulation environment through a standard interface, which is provided by the Run-time Communication Infrastructure. The Run-time Communication Infrastructure (RCI) is an object-oriented middle-ware layer for exchanging data between Components as well as between s. The RCI provides the Component developer an abstraction layer to shield the developer as much as

possible from the underlying interoperability standards. Each SIMULTAAN is built from a set of Components with one obligatory Component, called the Manager. The Manager acts as an intermediary between the Components in the and the rest of the Federation; it represents the to the Federation. The Manager keeps track of the state of its and its Components. The SIMULTAAN Scenario Manager is an SSA that controls the behavior of the s within the Federation by issuing commands to the Managers (like start scenario execution, stop scenario execution, hold scenario execution). The Scenario Manager is the only SIMULTAAN that does not have a Manager., as requested by the Scenario Manager. The SSA Interface Specification (SSA-IF) is a formal, functional description of the interface between the application and the Run-time Communication Infrastructure (RCI). The SSA Object Model Templates (SSA-OMT) are standardized formats to define the functionality of federates and components and their respective interactions. The SSA-OMT is equivalent to the HLA- OMT [2]. The different object models used in the SSA are presented in Section 3. QUIT Locally Unconfigured UNCONFIGURE Locally Configured LEAVE Joined Federation Component 1 1 Component N Manager START CONFIGURE GET READY JOIN INITIALIZE SCENARIO DISCARD SCENARIO Received Scenario Data Component 1 M. Component N Manager RCI SAVE RESUME RESTORE Hold Execution STOP Execution Stopped PAUSE GO Real-Time Operation RESET DISCARD SCENARIO Scenario Manager ERROR Federation Error Figure 1 Manager in charge of state transition Scenario Manager in charge of state transition Besides the identified elements in the architecture, the SSA consists of the SSA Rules, the SSA Interface Specification and the SSA Object Model Templates. The SSA Rules are rules with which a SIMULTAAN federate or component has to comply. They define the responsibilities and relationships in a SIMULTAAN federation. The most prominent SSA Rule is that all Components must adhere to the SSA State Transition Diagram (SSA-STD), which is depicted in Figure 2. The SSA- STD is used by the Manager to co-ordinate the state transitions of the during the scenario execution. The Manager prepares its for joining the Federation and when the has joined the Federation, the Manager initiates and checks the state transition of the Components in its Figure 2 3. SIMULTAAN Development SIMULTAAN Development describes the way SIMULTAAN partners produce federates. New components may have to be developed or existing components may need to be adapted. During the design process, such needs will be identified and translated to component requirements. The Development process will result in a validated simulator or tool. A federation can be created by producing its federates and defining the interactions between them in a SIMULTAAN Federation Object Model (FOM), which is equivalent to the HLA-FOM.

User requirements for the federate are specified in cooperation with the end-user and can be regarded as a starting point for the development. From the user requirements, the system requirements are identified. The system requirements initiate the design process of the SIMULTAAN. On the Federation level, the SSA identifies the SSA- SOM and the SSA-FOM, both equivalent to the HLA- SOM and HLA-FOM. On the Component level, the SSA identifies the SSA-COM and the SSA-SCOM, which are explained next. Each SIMULTAAN component has a Component Object Model (SSA-COM). This object model formally specifies the attributes and interactions a component publishes to other components. It also specifies the attributes and interactions a component will subscribe to during run-time. Each SSA is build from a set of interoperable Components. The interactions and attributes that are exchanged between all Components of one, including the data that is exchanged with other SSA s, is formally described in the SIMULTAAN Simulator Component Object Model (SSA-SCOM). The difference between the SCOM and the SOM is that the latter merely describes the interface between SSA s and not the intra- communication between the Components. The SSA-COM and the SSA-SCOM object models have similar roles on the component level compared with the SOM and the FOM on the federation level. Both the SSA-COM and SSA-SCOM descriptions are expressed in the HLA-OMT format. Distinction between COM and SCOM on one hand, and SOM and FOM on the other hand, enables different treatment of local and global communication. Local communication is the exchange of information between components in a federate, whereas global communication is the exchange of information between federates. Distinguishing between local and global communication allows for a mapping of the local communication onto a dedicated network that is able to handle intra- high-speed data exchange while having the possibility to communicate with the outside world at another data exchange rate and possibly via other physical network media. Development and Execution Process (FEDEP) [4]. A SIMULTAAN will be designed with optimal use of existing components. Therefore access is needed to the descriptions of object models and components that are available in the SIMULTAAN Object Repository (SOR). The SOR will contain SSA compliant simulators, components and tools. It may also contain configuration, initialization, and validation data. The SOR allows controlled access by the SIMULTAAN partners. 4. Run-time Communication Infrastructure and Code Generation The SIMULTAAN Simulator Architecture (SSA) is the common high-level architecture for simulators and tools. The SSA provides services to both the Components and the, which is the distributed composition of the Components. All Components interact with the simulation environment through a standard interface, which is provided by the Run-time Communication Infrastructure. The RCI is the implementation of the SSA Interface Specification. The RCI provides the component developer with the necessary functionality to incorporate the Component into a SIMULTAAN. The RCI provides a protocol-independent interface to the simulated environment. The design of the abstraction layer and the Application Programmer s Interface (API) have been discussed in detail in a previous paper [1], and is briefly summarized below. The RCI consists of two separate software layers, one is called the Environment and the other is called the Communication Server (see Figure 3). The SIMULTAAN object models enable clear specifications for the capabilities of federates and components. and federation development in SIMULTAAN can be compared to the HLA Federation

a Component Application Environment Communication Server (C.S.) user-defined simulation RCI HLA federation management services, declaration management services and object management services in a similar way. In this way, the RCI abstracts Components from the intra-ssa protocol and network hardware, and establishes a clear separation between communication aspects and applicationspecific aspects. This enables a Component developer to focus on the required functionality of the specific Component rather than the technical details of the communication aspects. DIS C.S. HLA C.S. High-speed C.S. Figure 3 DIS HLA network The Environment provides components with an overview of both the federate and the federation. The Environment reflects the current state of the federate, i.e., the state of all its components. It allows the addition and deletion of components. Furthermore, the RCI allows components to subscribe to relevant information. Each component can publish data to which other components of the federate may subscribe. Components can send and receive events. The translation of the events to a specific interoperability standard (such as DIS or HLA) is left to the Communication Server. The Communication Server represents the layer that takes care of the actual communication. Its function can be compared to that of the HLA-RTI. In a way it represents a distributed operating system. The interface between the Environment and the Communication Server is based on the HLA Interface Specification [3]. A Communication Server communicates with other Communication Servers to exchange object and event information to keep the Environment up-to-date. Currently, the Communication Server is based on the HLA RTI, but allows other standards such as DIS. Dedicated versions of the Communication Server can be implemented for the support of specific simulation protocols or network layers. This requires only minimal changes in the application-specific source code as it merely interacts with the Environment. The innovative approach of SSA is that the RCI extends the interoperability concepts of HLA by providing data-exchange between SSA Components in a similar way. Components use equivalents of the To further facilitate the developer with an abstraction of the communication it is noted that the simulation objects and the simulation events are formally described in an HLA-OMT format through its Component Object Model (SSA-COM). This enables the use of automatic code generators to construct object-oriented classes (for instance C++ or Java) for each simulation object and simulation event in the COM. The automatic code generation approach has proven to be highly successful in SIMULTAAN. The generated code shields the application programmer from doing elaborate bookkeeping concerning attribute updates, while making use of the encoding and decoding facilities offered by the RCI to communicate attribute and parameter values along the physical network. 5. Implementation and Demonstration In SIMULTAAN, the SSA Federation is mapped onto an HLA Federation. This approach is straightforward as the SSA-SOM and SSA-FOM are identical to the HLA- SOM and HLA-FOM. An SSA consists of a set of Components, which always includes at least the Manager Component (the exception on this rule is the Scenario Manager). The set of Components and hence the SSA - is implemented as an HLA federation on itself, each Component being mapped onto an HLA federate. This ensures that communication on the Component level is similar to communication on the level. Furthermore, the SSA-COM and SSA- SCOM play a role analogous to the HLA-SOM and HLA-FOM within the constructed HLA federation. In the SSA implementation we now have one HLA federation representing the SSA Federation and additional HLA federations for each SSA. It is noted that each SSA is represented in the SSA Federation by its Manager Component. The SSA Federation now consists of all Manager Components (implemented as HLA federates) of the

participating SSA s plus the Scenario Manager. This concept is feasible only if the Manager Component can be part of two HLA federations, i.e., the HLA federation that constitutes the SSA and the HLA federation that constitutes the SSA Federation. To this end, the Manager requires a special version of the RCI that is equipped with two Communication Servers, one for local communication inside the SSA, and one for global communication between the SSA s. This implies that the RCI, as part of a single application, must fully participate in two HLA federations simultaneously, which is not feasible with the RTI version used. For this purpose, a special version of the Communication Server of the RCI was developed that is able to communicate with another Communication Server along a separate socket connection. The is subsequently split up in two processes, one process participates in the HLA federation that forms the SSA and the other process participates in the HLA federation that forms the SSA Federation. In this way, a bridge is implemented between two HLA federations, exchanging data through a separate connection. This approach requires that each simulation event and simulation object update must be encoded/decoded along the socket connection. A shared memory solution was considered, but the socket solution has the advantage that the processes may reside on different (low-end) computers and it proved to be a very portable solution across different operating systems. A functional proof of concept of the SSA architecture has been presented in a large demo on the 24 th of June, 1999 at TNO-FEL in which all SIMULTAAN partners participated. The demo used the DO RTI 1.3v5 as the underlying distributed simulation layer for the RCI Communication Server. A rescue/evacuation scenario was conceived that comprised two manned fire-truck s at TNO- FEL (the Hague) and a manned rescue helicopter located at the Delft University of Technology. AV MO PA SV VH1 Figure 4 AV VH2 AV VH3 In Figure 4, a schematic view is presented of the s that participated in the SIMULTAAN demonstration. In this figure, VH1, VH2 and VH3 represent fire truck s, HC1 is the helicopter, CC1 is a control center to assess the performance of the players, and SM1 depicts the Scenario Manager. The components of each SSA are shown in the boxes. Some examples of the components used are the Manager (), a Dynamics Model (), a Visual System (), a Mock-up Server (), a Motion Platform (MO), an Audio System (), and a performance assessment Component (PA). Each component was executed on a separate computer. The computer hardware consisted of a mixture of Unix based machines (SGI) and NT machines. Both low fidelity and medium fidelity mock-ups were provided. 6. Conclusions In this paper the SIMULTAAN architecture for simulator development has been discussed. The SIMULTAAN Simulator Architecture is intended to maximize the re-use potential of components by defining a standard interface. Components that comply to the standard interface, and comply to a number of rules, can be re-used in another simulator built on the same architecture. The global design strategy for the SIMULTAAN Simulator Architecture was presented, followed by the Run-time Communication Infrastructure. Although the concepts are based on HLA, some important differences can be identified. The main differences between HLA and the SIMULTAAN approach can be summarized as follows: HC1 PA CC1 SM SM1 An abstraction layer (or middle-ware) and a code generator is applied to hide the complexities of the

underlying interoperability standards. The various interoperability standards are shielded from the developer to enable simulation protocol migration with minimal changes in the application code. Mechanisms for communication between components within a federate are provided. Multiple Communication Servers can be used to allow dedicated high-speed inter-component communication with minimal changes in the application code. The first implementation of the RCI has been built on top of the HLA-RTI. In the near future, the RCI will have additional support for the real-time scheduling of Component tasks. Further activities concern the development of a dedicated version of the RCI that is based on a high-speed Communication Server. The results of the SIMULTAAN project will be applied in future collaborations between the SIMULTAAN partners. 7. References [1] Nico Kuijpers, Paul van Gool, Hans Jense, A Component Architecture for Simulator Development, Simulation Interoperability Workshop, Spring 1998 [2] Defense Modeling and Simulation Office (DO), High Level Architecture Object Model Template. [3] Defense Modeling and Simulation Office (DO), High Level Architecture for Simulations Interface Specification. [4] Defense Modeling and Simulation Office (DO), Federation Development and Execution Process (FEDEP) Model. [5] J. Rumbaugh et al, Object-Oriented Modeling and Design, Prentice-Hall, 1991. [6] E. Gamma et al, Design Patterns --- Elements of Reusable Object-Oriented Software, Addison- Wesley, 1995. Author Biographies MARCO BRSE is a member of the scientific staff in the Command & Control and Simulation Division at TNO-FEL. He is a project member for several projects in the area of distributed simulation. He holds an M.Sc. in Computing Science and a Master of Technological Design (MTD) in Software Technology, both from Eindhoven University of Technology, the Netherlands. His research interests include parallel and distributed computing, software architectures, and design methodologies. WIM HUISKAMP is a research scientist in the same division. He holds an M.Sc. degree in Electrical Engineering at Twente University of Technology, The Netherlands. He works in the field of High Performance Computing and Networking and specialises in design and implementation of distributed computer architectures. His research interests include system architectures, real-time visual simulation and multi-media technology. Wim was the project lead for SIMULTAAN. OLAF STROOSMA is a software architecture researcher at the Control and Simulation Division of Delft Aerospace. He holds an M.Sc. degree in aerospace engineering from Delft University of Technology (DUT). He has participated in the SIMULTAAN project of the joint Dutch simulation industries and institutes, as well as in the SIMONA project aiming the development of an advanced flight simulator at DUT. His research interests include software architectures for real-time distributed simulation, and the application of intelligent agent technology to improve human-computer interaction.