Top Level and Infrastructure Components maurelio & doleron.

Slides:



Advertisements
Similar presentations
Presented by: AU Assets Evolution of the SIF Common Framework Joerg Huber.
Advertisements

The role of OCL in the Model Driven Architecture Jos Warmer Klasse Objecten
16/11/ IRS-II: A Framework and Infrastructure for Semantic Web Services Motta, Domingue, Cabral, Gaspari Presenter: Emilia Cimpian.
A Randomized Dynamic Program Analysis for Detecting Real Deadlocks Pallavi Joshi  Chang-Seo Park  Koushik Sen  Mayur Naik ‡  Par Lab, EECS, UC Berkeley‡
Ontologies Reasoning Components Agents Simulations RARCS/ESOA/MDA Unified Project Topics Jacques Robin.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
Rollerslam “Filtering” Mechanism. Main Idea Problem: Avoid network overload when agents need to receive excessive informations about the environment.
A Component Based Programming Framework for Autonomic Applications Hua Liu, Manish Parashar, and Salim Hariri ICAC ‘04 John Otto Wi06 CS 395/495 Autonomic.
ENTERFACE’08 Multimodal Communication with Robots and Virtual Agents.
ELSE – eLearning in Software Engineering Stanimir Stoyanov, Distributed eLearning Center (DeLC), University of Plovdiv.
Distributed Algorithms Simulator By Har-Tal Oded Supervised by Dr Shlomi Dolev Project’s goal: Designing and implementing a simulator for distributed algorithms,
Extreme Programming Collaboration in Software Development Process.
Rollerslam PIM Top Level Specification Service View > Rollerslam > SimulationAdmin setState(s:SimulationState)
Ontologies Reasoning Components Agents Simulations Project Topics: MCI Jacques Robin.
Simulation Infrastructure PIM. Specification Specification Service View > Simulation Infrastructure > * agent > Agent
ATSN 2009 Towards an Extensible Agent-based Middleware for Sensor Networks and RFID Systems Dirk Bade University of Hamburg, Germany.
Rollerslam PIM 2.0. Top Level Component Realization Service View > Effector > Sensor > Infrastructure > RollerslamPlayer > Display > GamePhysicsAgent.
Distributed Games Framework PSM - Specification. > Server DisplayRegistry AgentRegistry clientFacade SimulationAdmin ClientFacade DisplayRegistry AgentRegistry.
Communicative Agent PIM. Specification Specification Service View > Communicative Agent > Agent > OOState > OOState AgentID agentKB kb.
Software Services for Social Network tools implementation Aleksandar Dimov, PhD Sofia University
FREMA: e-Learning Framework Reference Model for Assessment David Millard Yvonne Howard IAM, DSSE, LTG University of Southampton, UK.
Rollerslam PIM (a). Top Level Service Specification View > Rollerslam > SimulationAdmin setState(s:SimulationState)
Generative Programming. Generic vs Generative Generic Programming focuses on representing families of domain concepts Generic Programming focuses on representing.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
QWise software engineering – refactored! Testing, testing A first-look at the new testing capabilities in Visual Studio 2010 Mathias Olausson.
Transitioning From Software Requirements Models to Design Models
Multi-Agent Model to Multi-Process Transformation A Housing Market Case Study Gerhard Zimmermann Informatik University of Kaiserslautern.
IBM Rhapsody Simulation of Distributed PACS and DIR systems Krupa Kuriakose, MASc Candidate.
Database Systems Group Department for Mathematics and Computer Science Lars Hamann, Martin Gogolla, Mirco Kuhlmann OCL-based Runtime Monitoring of JVM.
Team 1 Jesus Weibo Mina Yunming. Client’s Needs  Short term, medium term, long term plans  Simulation of energy system to provide affordable future.
Zhonghua Qu and Ovidiu Daescu December 24, 2009 University of Texas at Dallas.
Kaifei Chen, Siyuan He, Beidi Chen, John Kolb, Randy H. Katz, David E
Enterprise Java Bean Matt. 2 J2EE 3 J2EE Overview.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
RUP Design RUP Artifacts and Deliverables
CBD Papers Alexandre Alvaro. Lessons Learned through Six Years of Component-based Development Six years of component-based application development Using.
ESMF Code Generation Rocky Dunlap Spencer Rugaber Leo Mark Georgia Tech College of Computing.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
A performance evaluation approach openModeller: A Framework for species distribution Modelling.
Lucian Voinea Visualizing the Evolution of Code The Visual Code Navigator (VCN) Nunspeet,
Exploratory Visualization of Infectious Disease Propagation Ben Houston, Neuralsoft Zack Jacobson, Health Canada NX-Workshop on Social Network Analysis.
TTCN-3 MOST Challenges Maria Teodorescu
Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila.
ENTERFACE 08 Project 1 “MultiParty Communication with a Tour Guide ECA” Mid-term presentation August 19th, 2008.
1 ECCF Training 2.0 Implemental Perspective (IP) ECCF Training Working Group January 2011.
SiD Workshop October 2013, SLACDmitry Onoprienko SiD Workshop SLAC, October 2013 Dmitry Onoprienko SLAC, SCA FreeHEP based software status: Jas 3, WIRED,
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
Testing OO software. State Based Testing State machine: implementation-independent specification (model) of the dynamic behaviour of the system State:
Object Oriented Analysis and Design 1 Chapter 9 From Design to Implementation  Implementation Model  Forward, Reverse, and Round-Trip Engineering  Mapping.
Globus: A Report. Introduction What is Globus? Need for Globus. Goal of Globus Approach used by Globus: –Develop High level tools and basic technologies.
RULES Patty Nordstrom Hien Nguyen. "Cognitive Skills are Realized by Production Rules"
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
KNOWLEDGE MANAGEMENT UNIT II KNOWLEDGE MANAGEMENT AND TECHNOLOGY 1.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Helping the Cause of Medical Device Interoperability Through Standards- based Test Tools DoC/NIST John J. Garguilo January 25,
Design Pattern Support based on principles of model driven development Zihao Zhao.
The Strategic Communications Plan March 22, 2011.
Mobile Analyzer A Distributed Computing Platform Juho Karppinen Helsinki Institute of Physics Technology Program May 23th, 2002 Mobile.
London February European Commission Information Society and Media Project COVUNI GaLA Game and Learning Alliance The European Network.
Copyright 1999 G.v. Bochmann ELG 7186C ch.1 1 Course Notes ELG 7186C Formal Methods for the Development of Real-Time System Applications Gregor v. Bochmann.
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.
Accelerometer based motion gestures for mobile devices Presented by – Neel Parikh Advisor Committee members Dr. Chris Pollett Dr. Robert Chun Dr. Mark.
Huanyuan Sheng, Sanjay Mehrotra and Jun Ma Impact Solver for Optimization Services, November 15, 2005 IMPACT Solver for Optimization Services Huanyuan(Wayne)
J2EE Platform Overview (Application Architecture)
Market-based Dynamic Task Allocation in Mobile Surveillance Systems
Chapter 8, DesignPatterns Facade
Presentation transcript:

Top Level and Infrastructure Components maurelio & doleron

Rollerslam 2.0 x 1.0 Pros –Efficiency in communication –100% Prolog/FLUX Player Specification –Communicative Actions –PIM-Code Compatibility Cons –No distribution

Top Level Display GamePhysics Player SimulationInfrastructure FluxCommunicativeAgent Overview

Ideal PSM components dependecy

Top Level Display GamePhysics Player SimulationInfrastructure CommunicativeAgent FluxCommunicativeAgent FluxInferenceEngine EclipseProlog Java Bridge API

Real PSM components dependecy

Top Level Display GamePhysics Player SimulationInfrastructure CommunicativeAgent FluxCommunicativeAgent FluxInferenceEngine EclipseProlog Java Bridge API

Top Level PIM

Specification

Specification Service View > Rollerslam > SimulationAdmin setState(s:SimulationState) + getState() : SimulationState simAdmin

Specification Type View > SimulationState INITIALIZED PAUSED RUNNING

Specification Operation View context Rollerslam::setState(s:SimulationState) post: getState() = s

Realization

> Rollerslam Realization Service View > Simulation Infrastructure > SimulationAdmin > Agent * > Player > Referee > GamePhysics > agents > Display

> : Rollerslam Realization Instance View infra: Simulation Infrastructure : Display : SimulationAdmin > : GamePhysics: Referee: Player... gfa : Agentr : Agentp1 : Agentp40 : Agent >

Realization Operation View context Rollerslam::setState(s:SimulationState) post: infra.setState(s) context SimulationIntrastructure::getState() : SimulationState body: infra.getState()

Simulation Infrastructure PIM

Specification

Specification Service View > Simulation Infrastructure > * agent > Agent getAgentID() : AgentID + sendActions(actions:Message[*]) + getPerceptions() : Message[*] + getSimulationState() : SimulationState > SimulationAdmin setState(s:SimulationState) + getState() : SimulationState simAdmin simulation

Specification Service View Invariants context Agent inv: getSimulationState() = simulation.simAdmin.getState() context SimulationInfrastructure inv: agents.getAgentID()-> forAll( id | agents->select(getAgentID() = id)->size() = 1)

Specification Type View > SimulationState INITIALIZED PAUSED RUNNING > Message sender: AgentID + receiver: AgentID[*] > AgentID

Specification Life Cycle View RUNNING PAUSED setSimulationState(PAUSED) setSimulationState(RUNNING) INITIALIZED setSimulationState(INITIALIZED) setSimulationState(RUNNING)

Specification Operation View context SimulationAdmin::setState(s:SimulationState) post: getState() = s

Realization

Realization Service View > Simulation Infrastructure state : SimulationState setState(s:SimulationState) + getState() : SimulationState > Simulation Admin Message msgs *

Realization Operation View context SimulationInfrastructure::setState(s:SimulationState) post: state = s context SimulationIntrastructure::getState() : SimulationState body: state context Agent::sendActions(actions : Message[*]) post: simulation.msgs = simulation.msgs->including(actions) context Agent::receivePercepts() : Message[*] body: result = simulation.msgs-> select(x|x.receiver->includes(self.getAgentID())

Communicative Agent PIM

Specification

Specification Service View > Communicative Agent > Agent > OOState > OOState AgentID agentKB kb

Specification Type View > OOState > WorldObject * > OID > StringOID oid : String > ObjectState > AgentID (from Infra) > Communicative AgentID myID : String

Specification Type View > Message (from Infra) > AskAction oids : OID[*] > TellAction objects : WorldObject[*] > AskAllAction

Realization

Realization Service View > Communicative Agent # processCycle(messages : Message[*]) : Message > Message actions *

Realization Algorithmic View actions = processCycle( agent.getPerceptions()) agent.sendActions(actions) [not actions.isEmpty()]

processCycle(messages : Message[*]) : Message agentKB(sender).worldObject ->includes(m.objects) foreach message m in messages [m.oclIsKindOf(TellAction)] ret.oclIsKindOf(AskAction) and ret.objects = kb.objects-> select(x |m.objects->includes(x.oid)) ret.oclIsKindOf(AskAction) and ret.objects = kb.objects [m.oclIsKindOf(AskAction)] [m.oclIsKindOf(AskAllAction)]

Discussion Negative aspects –Zero test scenarios –incomplete non-functional analisys (stress & code-compliance) –Late project integration (Flux comunicative approach) –No object-funcional abstract layer mapping

Discussion Positive aspects –Peformance improvement sense –Code improvements with refactorings –Team knowledge improvement –Flux player implementation –Improvements render strategy to 2D&1/2 renderization

Test Scenarios

What the player behavior in this case?

Test Scenarios And now?

Future Work Object-Funcional framework Quantitative metrics to decision support Scenarios automatic testing Continuous integration Artfacts automatic synchronization with tool support