SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 1 A Social Semantic Infrastructure for Decentralised Systems Based on Specification-Carrying Code and Trust.

Slides:



Advertisements
Similar presentations
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol Keryx: Internet Notification Service for Dynamic Web Applications Søren Brandt Anders.
Advertisements

Research Issues in Web Services CS 4244 Lecture Zaki Malik Department of Computer Science Virginia Tech
TSpaces Services Suite: Automating the Development and Management of Web Services Presenter: Kevin McCurley IBM Almaden Research Center Contact: Marcus.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
KAIS T The Vision of Autonomic Computing Jeffrey O. Kephart, David M Chess IBM Watson research Center IEEE Computer, Jan 발표자 : 이승학.
Welcome to DEAS 2005 Design and Evolution of Autonomic Application Software David Garlan, CMU Marin Litoiu, IBM CAS Hausi A. Müller, UVic John Mylopoulos,
Systems Analysis and Design in a Changing World
A. Bucchiarone / Pisa/ 30 Jan 2007 Dynamic Software Architectures for Global Computing Antonio Bucchiarone PhD Student – IMT Graduate School Piazza S.
Service Oriented Architectures in Heterogeneous Environments
Variability Oriented Programming – A programming abstraction for adaptive service orientation Prof. Umesh Bellur Dept. of Computer Science & Engg, IIT.
Software Engineering Techniques for the Development of System of Systems Seminar of “Component Base Software Engineering” course By : Marzieh Khalouzadeh.
Semantic description of service behavior and automatic composition of services Oussama Kassem Zein Yvon Kermarrec ENST Bretagne France.
Improving Software Quality with Generic Autonomics Support Richard Anthony The University of Greenwich.
Peer services: from Description to Invocation Manuel Oriol International Workshop on Agents and Peer-to-Peer Computing (AP2PC 2002)
Introduction and Overview “the grid” – a proposed distributed computing infrastructure for advanced science and engineering. Purpose: grid concept is motivated.
Security Models for Trusting Network Appliances From : IEEE ( 2002 ) Author : Colin English, Paddy Nixon Sotirios Terzis, Andrew McGettrick Helen Lowe.
RETSINA: A Distributed Multi-Agent Infrastructure for Information Gathering and Decision Support The Robotics Institute Carnegie Mellon University PI:
Pervasive Computing and Communication Security (PerSec 2006) March 13th, 2006 Florina Almenárez, Andrés Marín, Daniel Díaz, Juan Sánchez
Describing Syntax and Semantics
8 Systems Analysis and Design in a Changing World, Fifth Edition.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Course Instructor: Aisha Azeem
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements 2.
Securing Legacy Software SoBeNet User group meeting 25/06/2004.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Software Engineering Muhammad Fahad Khan
1 Autonomic Computing An Introduction Guenter Kickinger.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Social Computing Networks: A New Paradigm for Engineering Pervasive Software Systems Naeem Esfahani Sam Malek 32th International Conference on Software.
Web Policy Zeitgeist Panel SWPW 2005 – Galway, Ireland Piero Bonatti, November 7th, 2005.
An affinity-driven clustering approach for service discovery and composition for pervasive computing J. Gaber and M.Bakhouya Laboratoire SeT Université.
Active Monitoring in GRID environments using Mobile Agent technology Orazio Tomarchio Andrea Calvagna Dipartimento di Ingegneria Informatica e delle Telecomunicazioni.
Exercises for Chapter 2: System models
ASG - Towards the Adaptive Semantic Services Enterprise Harald Meyer WWW Service Composition with Semantic Web Services
The Grid Component Model: an Overview “Proposal for a Grid Component Model” DPM02 “Basic Features of the Grid Component Model (assessed)” -- DPM04 CoreGrid.
The Grid Component Model and its Implementation in ProActive CoreGrid Network of Excellence, Institute on Programming Models D.PM02 “Proposal for a Grid.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
EU Project proposal. Andrei S. Lopatenko 1 EU Project Proposal CERIF-SW Andrei S. Lopatenko Vienna University of Technology
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
The roots of innovation Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on:
Enabling Peer-to-Peer SDP in an Agent Environment University of Maryland Baltimore County USA.
Combining Theory and Systems Building Experiences and Challenges Sotirios Terzis University of Strathclyde.
Secure Systems Research Group - FAU SW Development methodology using patterns and model checking 8/13/2009 Maha B Abbey PhD Candidate.
The world of autonomous reconfigurable systems Intelligent Interactive Distributed Systems Group Vrije Universiteit Amsterdam /
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
NGCWE Expert Group EU-ESA Experts Group's vision Prof. Juan Quemada NGCWE Expert Group IST Call 5 Preparatory Workshop on CWEs 13th.
A Component Platform for Experimenting with Autonomic Composition A component framework for supporting composition of autonomic services and bio-inspired.
Dynamic Synthesis of Mediators in Pervasive Environments Amel Bennaceur supervised by Valérie Issarny ARLES 14 February 2012, Junior Seminar, INRIA.
1 Registry Services Overview J. Steven Hughes (Deputy Chair) Principal Computer Scientist NASA/JPL 17 December 2015.
Dynamic Trust Models for Ubiquitous Computing Environments Colin English, Paddy Nixon, Sotirios Terzis, Andrew McGettrick, Helen Lowe Department of Computer.
16/11/ Semantic Web Services Language Requirements Presenter: Emilia Cimpian
SelfCon Foil no 1 Variability in Self-Adaptive Systems.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
The Vision of Autonomic Computing Self-Management Unit 7-2 Managing the Digital Enterprise Kephart, and Chess.
Providing web services to mobile users: The architecture design of an m-service portal Minder Chen - Dongsong Zhang - Lina Zhou Presented by: Juan M. Cubillos.
A Security Framework with Trust Management for Sensor Networks Zhiying Yao, Daeyoung Kim, Insun Lee Information and Communication University (ICU) Kiyoung.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
SAFE KERNEL EXTENSIONS WITHOUT RUN-TIME CHECKING George C. Necula Peter Lee Carnegie Mellon U.
EEL 5937 Mobile agents EEL 5937 Multi Agent Systems Lotzi Bölöni.
© The ATHENA Consortium. CI3 - Practices of Interoperability in SMEs Proposed Solutions.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
A Context Framework for Ambient Intelligence
Presented by Edith Ngai MPhil Term 3 Presentation
Walter Binder Giovanna Di Marzo Serugendo Jarle Hulaas
State your reasons or how to keep proofs while optimizing code
Business Rule Based Configuration Management and Software System Implementation Using Decision Tables Olegas Vasilecas, Aidas Smaizys VGTU, Vilnius, Lithuania.
Chapter 6 – Architectural Design
The Vision of Autonomic Computing
Chapter 5 Architectural Design.
Presentation transcript:

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 1 A Social Semantic Infrastructure for Decentralised Systems Based on Specification-Carrying Code and Trust Giovanna Di Marzo Serugendo University of Geneva, Switzerland

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 2 Outline Semantic Infrastructure –« Specification-Carrying Code » (SCC) –Service-oriented architecture Social Infrastructure –Trust-Based Systems Social Semantic Infrastructure –SCC + Trust

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 3 Applications Wireless / Ad hoc Networks –Bluetooth / WiFi / Ad hoc networks of PDAs –Sensor Networks Grid Agent-Based Systems Ambient Intelligence –End-user services based on an invisible intelligent techonology Virtual shopping, visa detection, traffic management Autonomic Computing –Self-management systems Large Scale Security Systems

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 4 Applications Characteristics –Based on autonomous entities Ex: PDAs, Agents –Uncertain environment –Decentralised –Large number of components –Dynamic environment –Need for adaptability –Social dimension Interactions, discovery, negociations, transactions

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 5 Issues Interactions with unknown entities (semantics) –Understanding –Interoperability Management of uncertainty (social) –Malicious entities Exhibit desirable characteristics, but … –Good faith entities Fail because: software error, lack of toner, paper jam, … Adaptability to changing environment Control / Design of decentralised behaviour –Good properties have to emerge –Bad properties to be avoided!

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 6 Specification-Carrying Code Interaction with unknown entities –No common design / No common API Idea: communication is based on a formal specification of the behaviour of a peer entity –Software « carries » a formal description of its own functional behaviour –Communication occurs without API –Formal specification defines the semantics of the behaviour

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 7 SCC - Principle Scenario –Publication of specifications Services requested / Services proposed –Specification matching Proposed service matches requested service –Service realised in an anonymous / asynchronous / non- deterministic manner Interest –Minimum basis for communication Specification language (for expressing concepts) –Interaction with new software / with unknown software –No central control (self-assembly)

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 8 SCC - Principle Code  Ax   Ax 1   Ax 2 ….. Register Thm Checker {  i |  i  }  Ax Request

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 9 SCC - Architecture CodeWR/SpecS Service Code Register (SpecS,IP,Port) SpecS,(IP,Port) SpecS Service Manager RegExPrologHOL Register Entity Code CodeWR/SpecE Execute (SpecS) Search (SpecS) Execute (ArrayList) (IP,Port) ArrayList’

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 10 SCC – Keywords Registration ( Functionality: ``FileSystem´´: ``Read´´, Behaviour: String : ``return´´ : String, QoS: ``local´´, [3,2,1]) Request ( Functionality: ``FileSystem´´: ``Read´´, Behaviour: ``myFile.html´´ : ``return´´ : String, QoS: ``local´´, [3,2,1])

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 11 SCC – RegEx Registration Sorting service (?i)\w*sort\w* String\* String* Request Sorting request sort String* String\*

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 12 SCC – Prolog Registration Sorting service append([],L,L). append([H|T],L2,[H|L3]):- append(T,L2,L3). rev([],[]). rev([H|T],R) :- rev(T,RevT), append(RevT,[H],R). Request Sorting Request rev([],[]), rev([A|B],R), rev(B,RevB), append(RevB,[A],R), rev(R,[A|B]).

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 13 SCC – Alternatives Specification üKeywords üRegular Expressions (syntactic) üProlog (SWIProlog) –HOL (Isabelle Thm Prover – meta-ontology) –Jena (Logic + ontology) –Common Simple Logic Architecture üPublication of specifications (asynchronous / anonymous / non- deterministic) –Direct exchange of specifications (interaction decisions) Service Discovery –JXTA protocols –Géo-positioning Information contained in the specification –Functional –Non-functional, security, reputation, positioning, etc,

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 14 SCC - Advantages Interaction/Interoperability with unknown peers Integration with new entities Ontology+Semantics Service Combination Robustness Resilience

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 15 SCC for Unanticipated Run-time Code Evolution Code changes during its execution (without stopping the application) Non anticipated evolution –Non anticipated by the programmer Distribution on the fly Experiments –Web Server 160 different versions of the server, with only 4 stops –Tic-Tac-toe for Open Days Changes done to the application during the play

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 16 SCC for Autonomic Computing Self-configuration (installation, configuration, integration) –SCC expresses high-level configuration policies Installation needs Seamless integration of new entities Self-repair (error detection, diagnostic, repair) –Generation of correct code from SCC –Replace error code with code having matching specification –Checking of code against specification

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 17 SCC for Autonomic Computing Self-optimisation (parameters) –SCC expresses optimisation policies Parameters description Permanent optimisation of parameters depending on the context Self-protection (detection and response to attacks) –SCC expresses security policies Conditions regulating services delivery Signatures of attacks / Response schema

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 18 SCC vs PCC vs Trust SCC –Code is decoupled from specification –No guarantee that the code satisfies the specification –It is the same with APIs! Proof Carrying Code (PCC) [Necula00] –Code « carries » the proof that it is correct Low level (no infinite loop, no division by zero) Not at the functional level No specification –What happens if the code/proof are malicious? –What happens if the code/proof are in good faith, but the code fails? Trust –Adaptation mechanism based on experience and observation

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 19 Trust-based Systems Human notion of trust –Uncertainty and partial knowledge –Human beings make choices, take decisions, learn by experience, adapt their behavior –Decisions implicitly rely on trust: Peers Legal institutions Business companies Idea –Human-like trust-based access control –To learn about peer behavior –To dynamically adapt access control policies

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 20 Trust-based Systems Software entities –Part of decentralised and distributed systems –Autonomous, roaming –Highly changing environment Information changes and is not permanently valid –Interactions occur locally –Partial knowledge about the entities, and the environment –Take decisions with local and incomplete knowledge –Trust-based schema helps evaluating: Good faith, correct functioning

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 21 Trust-based Model (1) Principals: –interacting set of entities (human/computers, trusted or untrusted) Local trust values: –Principals maintain local trust values about other principals Evidence –Direct observations: evaluated outcome of an interaction –Recommendations: asked or received (indirect observation)

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 22 Trust-based Model (2) Scenario –Request of interaction –Decision making process Recognise principal Evaluate trust value, evidence, risk implied by requested interaction Application of Control Policy –After interaction: trust value updated on the basis of evaluated outcome of the interaction Trust evolves with time –allows to adapt behaviour of principal SECURE – IST Funded Project ( )

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 23 Issues Autonomous Systems Needs –Interaction with unknown entities –Exchange of capabilities: To learn about peer behavior Issues –Malicious entities Exhibit desirable characteristics, but … –Good Faith entities Fail because: software error, lack of toner, paper jam, … Idea –Combination of specifications and trust

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 24 SCC and Trust-based model Human behavior –Communication through semantic information Autonomous software: Entities carry specification describing their functional and non-functional behavior –Decisions despite uncertainty Autonomous software: Trust formation and evolution

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 25 SCC and Trust-based model Request for collaboration and exchange of Specification –Principals learn services provided by other principals Decision to interact –Evaluation of specifications, past direct observations, received recommendations, local trust value, risk implied by interaction Trust update –Evaluation (positive or negative) of outcome of interaction –Spreading of recommendations

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 26 Example: Printers and PDAs Set of printers (not predefined) Set of computers (using printers, not predefined) Exchange of capabilities before interactions –Postscript/double-sided Storing of interactions outcome –Only single-sided, no printing Local trust value computation and update Propagation of recommendations Risks: –Losing time using a far located printer, printer runs out of paper, etc.

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 27 Printers and Users (1) lw6 lw6: PostScript / Double-Sided/ Paper Jam / Problems with PDFs lw3 lw3: New / Prints all PDFs

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 28 Printers and Users (2) lw3 lw6: New Printer lw8 lw6: Random Printing lw8: In the Library lw6

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 29 Printers and Users (3) lw3 lw6: Software Evolution lw8 lw6

SIC’05, 14/04/05 Giovanna Di Marzo Serugendo 30 Conclusion SCC –Simple specifications of behavior –Implementation through a middleware infrastructure Trust-based model –Defined and implemented as part of EU Funded project – SECURE Future work –Own specification language (pre- post- conditions, parameters mapping) –Large scale examples –“Google” services