Short Introduction to JIAC V JIAC, Version 5.1.5 August, 2015 21. August 2015 Useful Resources These Slides Short overview: What is JIAC? What can it do? Basic JIAC concepts, tools, etc. ► JIAC Website: http://www.jiac.de/agent-frameworks/jiac-v/ Manual with detailed examples and tutorials Developer Documentation Papers and Publications Download JIAC and tools ► Questions & Answers: http://www.jiac.de/qa Frequently (and infrequently) asked questions Whatever else you need to know (just ask!) ► 21. August 2015 2 JIAC basics easy creation of complex, scalable distributed systems ► easily accessible for developers familiar with Java ► integration of agents and service-oriented architecture ► abstraction from underlying network architecture ► transparent communication across the network ► many extensions for: migration, persistence, encryption, reactive behavior, service matching, load balancing, … ► 21. August 2015 3 JIAC basics (cont.) ► built on and around proven standards core configuration: Java 6/7, Spring, Maven communication: ActiveMQ, JMS semantics: OWL, OWL-S, SWRL interfaces: JMX, REST, Webservices 21. August 2015 4 JIAC architecture agents distributed over several nodes (one node per JVM) ► communication via messages and actions / services ► agents composed of different agent beans agents have lifecycle, execution-cycle, memory beans provide actions, lifecycle-callback methods, listeners ► 21. August 2015 5 JIAC architecture (cont.) Platform implicitly formed by all nodes that can communicate with each other; no single point of failure ► Nodes JIAC-runtime (JVM) with some infrastructure (directory services, security, webserver, etc.) ► Agents executed in individual threads; more infrastructure: lifecycle, tuple-space based memory, communication address, etc. ► Beans provide some general functionality (communication) and most of application-specific behavior ► 21. August 2015 6 JIAC Behaviors: AgentBeans and more AgentBeans: application-specific modules for JIAC agents ► different mechanisms for specifying behaviors expose methods as “actions” (invoked by other agents) attach observers to agent’s memory (e.g. for messages) implement lifecycle-methods (doStart, doStop, etc.) implement execute-method (executed in regular intervals) ► ► additional/alternative mechanisms reactive behavior with Drools rules dynamic services with JADL++ scripts business process execution with BPMN 21. August 2015 7 JIAC tools JIAC is Java-based – just use your Java development stack JIAC development in Eclipse or IntelliJ or whatever you like project and dependency management with Maven ► JIAC-specific Eclipse plugins: ‘Toolipse’ JIAC-specific new-project-wizard integration with running JIAC platforms: service-search and import, testing and deployment visual editor for agent configurations (AWE) BPMN-based business process modelling (VSDT) editors and tools for JADL++ scripts ► runtime monitoring: ASGARD agent viewer ► 21. August 2015 8 Getting started with JIAC 1. 2. 3. 4. 5. 6. go to www.jiac.de and download the manual follow the steps to set up a new JIAC project; Maven will automatically load the JIAC libraries and dependencies create the “Hello World” and “Ping-Pong” examples experiment with different ways to expose and invoke actions, and different life-cycle methods for the start, try to stick with basic Java and XML tools until you are comfortable with how things work if you have problems or questions, go to www.jiac.de/qa 21. August 2015 9
© Copyright 2026 Paperzz