MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione...

26
MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI SERVIZI E CLOUD COMPUTING Modelli e Strumenti Basati su Approcci Dichiarativi Stefano Bragaglia Tutor: Paola Mello

Transcript of MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione...

Page 1: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI SERVIZI E CLOUD COMPUTING Modelli e Strumenti Basati su Approcci Dichiarativi

Stefano Bragaglia Tutor: Paola Mello

Page 2: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Introduzione

• Silos Informativi •  Monolitici •  Dedicati •  Isolati

Page 3: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Introduzione

• Architetture Orientate ai Servizi •  Flessibili •  Interoperabili •  In condivisione

•  Strutturate e connesse rigidamente

Dept. A

Dept. B

Dept. C

Page 4: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Introduzione

•  Software as a Service, Cloud Computing •  Distribuito •  Pervasivo •  Trasparente

•  Eterogeneità delle implementazione •  La complessità dell’ambiente richiede maggior controllo •  Impatti legali, sociali, commerciali che richiedono la garanzia di

certe proprietà

Dept. A

Dept. B

Dept. C

Page 5: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Contesto Applicativo •  La chiave per ottenere queste garanzie consiste nel verificare

costantemente che certe proprietà siano garantite

•  Queste problematica è già stata affrontata in passato seguendo due possibili approcci: •  Approcci di tipo teorico/formale: basati su modelli logici (astratti) in

grado di dimostrare il soddisfacimento di alcuni parametri (SCIFF, Spindle)

•  Approcci custom di basso livello: basati sullo sviluppo di framework in stile procedurale specifici per alcune classi molto limitate di problemi reali

•  Il contributo di questa tesi consiste nell’individuare una nuova metodologia che permetta di coniugare la generalità e la correttezza degli approcci del primo tipo con l’efficienza e la robustezza di quelli del secondo

Page 6: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Contesto Applicativo • Questo problema è noto come “conformance checking”

•  verificare che il comportamento delle istanze di dominio sia conforme ad una specifica, ad uno standard o ad una legge che è stata definita con precisione

• Nel contesto dei servizi Web, in particolare •  Esprimere quale sia il comportamento atteso di un servizio in

termini di feature intrinseche (workflow) ed estrinseche (QoS, SLA) •  Verificare (tipicamente mediante tecniche di monitoring) che

l’evolvere del servizio rispetto agli eventi che lo interessano rispetti le aspettative

Page 7: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Desiderata •  Aspettative su un servizio in termini di

•  Possibili reazioni ad eventi o cambiamenti di stato, •  Appartenenza ad una certa categoria o ruolo, •  Conoscenza espressa in modo naturale con incertezza ed imprecisione •  O una loro combinazione a piacere

•  Valutare rispetto alla traccia temporale degli eventi uno score che esprima il grado di conformità alle aspettative

•  Eseguire azioni che consentano, se è possibile, di compiere azioni correttive su un servizio il cui comportamento risulti difforme alle aspettative

Page 8: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Esempio • Dato un servizio di mail, alla richiesta di servizio, si

attende una risposta in un tempo “breve” (QoS)

•  In caso contrario ci si attende che il mail server venga duplicato per recuperare la violazione sulla aspettativa, segnalando altrimenti l’entità della violazione

Page 9: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

In questa tesi di dottorato… •  Iniziale lavoro di contestualizzazione

• Scelta di un approccio basato su tecniche dichiarative •  In particolare, REGOLE !!! •  Supporto ad aspetti temporali (deadlines…) •  Supporto ad aspetti ontologici •  Supporto a conoscenza incerta e/o imprecisa

• Supporto a conoscenza probabilistica? • Defeasible logic?

Page 10: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

In questa tesi di dottorato… •  Formalizzazione di un linguaggio per poter esprimere aspettative

riguardo il comportamento atteso di un insieme di componenti •  Linguaggio basato sul framework DROOLS •  Supporta la definizione di deadlines temporali (in generale, di vincoli temporali) •  Supporta il ragionamento ibrido con conoscenza di tipo ontologica

(integrazione di standard Semantic Web) •  Supporta la rappresentazione di conoscenza incerta e/o imprecisa (fuzzy logic) •  Nozione nativa di “expectation”, di “fulfilment” e di “violation” •  Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto

di “recovery” •  Introduzione e supporto alla nozione di compliance locale / globale

•  Sviluppo di strumenti per verificare se il comportamento osservato è conforme a quello atteso •  A run-time (problematiche legate alle performances)

Page 11: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Prototipo di Ragionatore Ibrido

•  Loosely-coupled: Drools Chance + Pellet + FuzzyDL •  Massima espressività •  Un modello per ogni componente •  I risultati sono propagati tra i modelli •  Problemi di allineamento dei sottosistemi

Pellet

Drools Chance

FuzzyDL

Jena/JenaBean core fuzzy

logical operators

ontological operator (custom)

Page 12: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

•  Tight-integration: Drools Chance + Fuzzy Tableau

•  Minor espressività •  Unico modello •  Efficienza

Prototipo di Ragionatore Ibrido Drools Chance

Separate MILP-Solver

core fuzzy logical operators

fuzzy tableau algorithm

implementation

Page 13: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Esempio rule "MailServer Expectations" when $s: Service( this isA MailServer ) $r: Request( service == $s ) then @Imperfect(kind==”userOp") $e1: expect one Reply( service == $s, $d: delay ~inTime $r ) on fulfillment { $s.setScore(~good); on violation { $e2: expect Service( this != $s, this after[0, 2m] $r ) on fulfillment {

repair $e1; $s.setScore(~good); on violation { $s.setScore(Drools.getDegree()); } end

Page 14: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Esempio rule "MailServer Expectations" when $s: Service( this isA MailServer ) $r: Request( service == $s ) then @Imperfect(kind==”userOp") $e1: expect one Reply( service == $s, $d: delay ~inTime $r ) on fulfillment { $s.setScore(~good); on violation { $e2: expect Service( this != $s, this after[0, 2m] $r ) on fulfillment {

repair $e1; $s.setScore(~good); on violation { $s.setScore(Drools.getDegree()); } end

Usando regole reattive è possibile esprimere in modo dichiarativo il modo in cui il sistema deve comportarsi quando si trova in uno certo stato (forward chaining).

Queste regole, quando supportano gli operatori temporali, vengono chiamate Event-Condition-Action

(ECA) Rules. Hanno un antecedente (when part) in cui si esprime il pattern da verificare per far scattare la regola ed un conseguente (then part) in cui indicare

quali azioni compiere in tale condizione.

Page 15: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Esempio rule "MailServer Expectations" when $s: Service( this isA MailServer ) $r: Request( service == $s ) then @Imperfect(kind==”userOp") $e1: expect one Reply( service == $s, $d: delay ~inTime $r ) on fulfillment { $s.setScore(~good); on violation { $e2: expect Service( this != $s, this after[0, 2m] $r ) on fulfillment {

repair $e1; $s.setScore(~good); on violation { $s.setScore(Drools.getDegree()); } end

Fornendo una rappresentazione ontologica del dominio è possibile “sussumerne” alcune proprietà (Description Logic, Semantic Web)

Service MailServer

Se il concetto di MailServer è definito come subset di Service in cui l’attributo port vale 25, ogni Service con port 25 verrà riconosciuto automaticamente come tale

Page 16: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Esempio rule "MailServer Expectations" when $s: Service( this isA MailServer ) $r: Request( service == $s ) then @Imperfect(kind==”userOp") $e1: expect one Reply( service == $s, $d: delay ~inTime $r ) on fulfillment { $s.setScore(~good); on violation { $e2: expect Service( this != $s, this after[0, 2m] $r ) on fulfillment {

repair $e1; $s.setScore(~good); on violation { $s.setScore(Drools.getDegree()); } end

Introducendo Fuzzy set ed operatori Fuzzy è possibile ragionare in modo incerto/impreciso

sugli attributi delle istanze di dominio. Ciò è possibile grazie agli intervalli Fuzzy,

molto più espressivi dei valori crisp, usati per rappresentare questi concetti.

0 False

1 True

lower bound upper bound

incertezza

imprecisione

Page 17: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Esempio rule "MailServer Expectations" when $s: Service( this isA MailServer ) $r: Request( service == $s ) then @Imperfect(kind==”userOp") $e1: expect one Reply( service == $s, $d: delay ~inTime $r ) on fulfillment { $s.setScore(~good); on violation { $e2: expect Service( this != $s, this after[0, 2m] $r ) on fulfillment {

repair $e1; $s.setScore(~good); on violation { $s.setScore(Drools.getDegree()); } end

Le Event-Condition-Expectation (ECE) Rules sono una estensione della metafora di Event-Condition-

Action (ECA) Rules. Vengono innescate quando si verificano uno o più

eventi e lo stato del sistema rispetta certe condizioni. Esprimono le aspettative (innestate) e le azioni da compiere in caso di soddisfacimento o violazione (compensazione). Questi concetti sono

disponibili a livello di linguaggio ed essendo reificati, è possibile ragionare su di essi.

Page 18: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Esempio rule "MailServer Expectations" when $s: Service( this isA MailServer ) $r: Request( service == $s ) then @Imperfect(kind==”userOp") $e1: expect one Reply( service == $s, $d: delay ~inTime $r ) on fulfillment { $s.setScore(~good); on violation { $e2: expect Service( this != $s, this after[0, 2m] $r ) on fulfillment {

repair $e1; $s.setScore(~good); on violation { $s.setScore(Drools.getDegree()); } end

Annotando le regole è possibile esprimere in che modo combinare il contributo di ogni singola

valutazione all’interno del pattern per ottenere uno score globale. Possono avere natura, peso o

correlazione diverse. La score è ancora espresso in termini Fuzzy.

Page 19: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Contesto d’uso del servizio

•  Binding e rebinding dinamico •  Collegamento tra servizi astratti e servizi concreti •  Rispetto constraint QoS e requisiti funzionali

•  Discovery di servizi alternativi compatibili

WEB SERVICE - ORCHESTRAZIONE WEB SERVICE ESTERNI

Page 20: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Monitoraggio e Compliance Points of Variability: - proxy - adaptor - selector

Language: - models services’ behavior - combines different logical paradigms

Hybrid Reasoner: - reactive rule reasoning - semantic reasoning - fuzzy reasoning - probabilistic reasoning - abductive reasoning - defeasible reasoning

The final system will: - discover services - evaluate compatibility - define compositions - adjust bindings - monitor actual behavior - work in feedback

Broker

Interceptor

Reasoner

Service

Service

Service

Proxy

Service Monitoring: - listen (locally) - catch events - feed the reasoner

Page 21: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Composizione on-the-Fly

Service Service Reasoner Proxy

Service

Service

Service

Service

Service

Variability as Traits: - dynamic - agile - volatile

Composition as Planning: - temporal/abductive/

probabilistic - permanent/static

The final system will: - allow variability in the large - exploit Jolie framework for agile prototyping of services - volatile (stateless) services - permanent (statefull) reasoner - Monitored for compliance

Page 22: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Riferimenti •  W3C. Web Services Addressing 1.0 - Core - W3C Recommendation. http://

www.w3.org/TR/ws-addr-core. •  Salima Benbernou, Luca Cavallaro, Mohand Said Hacid, Raman Kazhamiakin, Gabor

Kecskemeti, Jean-Louis Poizat, Fabrizio Silvestri, Maike Uhlig, and Branimir Wetzstein. State of the Art Report, Gap Analysis of Knowledge on Principles, Techniques and Methodologies for Monitoring and Adaptation of SBAs. Technical report, S-Cube Consortium, 2008.

•  Process Mining Group — Math&CS department — Eindhoven University of Technology. Process Mining. http://www. processmining.org.

•  L. Baresi, C. Ghezzi, and S. Guinea. Smart monitors for composed services. In Proceedings of the 2nd international conference on Service oriented computing, pages 193–202. ACM, 2004.

•  L. Baresi and S. Guinea. Towards dynamic monitoring of WS-BPEL processes. Service-Oriented Computing-ICSOC 2005, pages 269–282, 2005.

•  L. Baresi and S. Guinea. A dynamic and reactive approach to the supervision of BPEL processes. In Proceedings of the 1st conference on India software engineering conference, pages 39–48. ACM, 2008.

•  L. Baresi, S. Guinea. Dynamo and Self-Healing BPEL Compositions. •  Companion to the proceedings of the 29th International Conference on Software

Engineering. 2007. pp. 69-70. •  L. Baresi, S. Guinea. A Dynamic and Reactive Approach to the Supervision of BPEL

Processes. Proceedings of the 1st India software engineering conference. 2008. pp. 39-48.

•  L. Baresi, S. Guinea, L. Pasquale. Self-Healing BPEL Processes with Dynamo and the JBoss Rule Engine. International workshop on Engineering of software services for pervasive environments: in conjunction with the 6th ESEC/FSE joint meeting. 2007. pp. 11-20.

•  Drools - The Business Logic integration Platform. http://www.jboss.org/drools. •  M. Reichert, S. Rinderle. On design principles for realizing adaptive service flows with

bpel. In Proc. EMISA 2006 - Methoden, Konzepte und Technologien für die Entwicklung von dienstbasierten Informationssystemen, Hamburg, Oktober 2006, GI Lecture Notes in Informatics, LNI P-95, 2006, pp. 133-146.

•  M. Reichert, P. Dadam. ADEPTflex - Supporting Dynamic Changes of Workflows Without Losing Control. Journal of Intelligent Information Systems, Special Issue on Workflow Management Systems, 10 (2). pp. 93-129.

•  M. Colombo, E. Di Nitto, M. Mauri. SCENE: A Service Composition Execution Environment Supporting Dynamic Changes Disciplined Through Rules. Lecture Notes in Computer Science. Service-Oriented Computing – ICSOC 2006. pp. 191-202.

•  G. Cugola, G.P. Picco. REDS: A Reconfigurable Dispatching System. Proc. of the 6th Int. Workshop on Software Engineering and Middleware. 2006. pp. 9-16.

•  M. Di Penta, R. Esposito, M.L. Villani, R. Codato, M. Colombo, E. Di Nitto. WS Binder: a framework to enable dynamic binding of

•  composite web services. Proceedings of the 2006 international workshop on Service-oriented software engineering. pp. 74-80.

•  Abdelkarim Erradi, Piyush Maheshwari. Policy-driven middleware for adaptive web services composition. International Journal of Business Process Integration and Management 2007. Vol.2, No.3. pp. 187-202.

•  L. Console, M. Fugini. WS-DIAMOND: An approach to Web Services - DIAgnosability, MONitoring and Diagnosis. e-Challenges Conf. 2007, The Hague

•  Germán Goldszmidt, Carl Osipov. Make composite business services adaptable with points of variability. IBM Technical library. http://www.ibm.com/developerworks/webservices/library/

•  Daniele Nucci. Sperimentazione e confronto di alcuni Engine BPEL. Bachelor Thesis in Computer Science, supervisor Prof. Rosario Pugliese. Dipartimento di Sistemi e Informatica, Università degli Studi di Firenze, 2008

•  A. Lomuscio, W. Penczek, M. Solanki, and M. Szreter. Runtime monitoring of contract regulated web services. In FLACOS 09 Third Workshop on Formal Languages and Analysis of Contract-Oriented Software, page 9, 2009.

•  K. Mahbub and G. Spanoudakis. A framework for requirents monitoring of service based systems. In Proceedings of the 2nd international conference on Service oriented computing, pages 84–93. ACM, 2004.

•  C. Beeri, A. Eyal, T. Milo, and A. Pilberg. Monitoring business processes with queries. In Proceedings of the 33rd international conference on Very large data bases, pages 603–614. VLDB Endowment, 2007.

•  A. Keller and H. Ludwig. The WSLA framework: Specifying and monitoring service level agreements for web services. Journal of Network and Systems Management, 11(1):57–81, 2003.

•  R.B. Halima, K. Guennoun, K. Drira, and M. Jmaiel. Non-intrusive QoS monitoring and analysis for self-healing web services. In Applications of Digital Information and Web Technologies, 2008. ICADIWT 2008. First International Conference on the, pages 549–554, 2008.

•  A. Sahai, V. Machiraju, M. Sayal, A. Van Moorsel, and F. Casati. Automated SLA monitoring for web services. Management Technologies for E-Commerce and E-Business Applications, pages 28–41, 2002.

•  H. Roth, J. Schiefer, and A. Schatten. Probing and monitoring of WSBPEL processes with web services. In E-Commerce Technology, 2006. The 8th IEEE International Conference on and Enterprise Computing, E-Commerce, and E-Services, The 3rd IEEE International Conference on, pages 30–30, 2006.

•  L. Ardissono, R. Furnari, A. Goy, G. Petrone, and M. Segnan. Fault tolerant web service orchestration by means of diagnosis. Software Architecture, pages 2–16, 2006.

•  Apache Software Foundation. Axis2 User Guide. http://ws. apache.org/axis2/1_5_1/userguide.html.

•  ApacheSoftwareFoundation.ApacheODE-ArchitecturalOverview. http://ode.apache.org/architectural-overview.html.

Page 23: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Riferimenti •  Apache Software Foundation. Apache ODE - Jacob (Java Concurrent Objects). http://

ode.apache.org/jacob.html. •  Jolie - A Java Orchestration Language Interpreter Engine. http://www.jolie-lang.org/

index.php. •  M. Shanahan. The event calculus explained. Artificial intelligence today: Recent

trends and developments, page 409, 1999. •  L. Chittaro and A. Montanari. Efficient Handling of Context Dependency in the

Cached Event Calculus. In Proc. TIME’94-International Workshop on Temporal Representation and Reasoning, pages 103–112. Citeseer, 1994.

•  Alberti, M., F. Chesani, M. Gavanelli, E. Lamma, P. Mello, M. Montali, and P. Torroni, "Web Service contracting: Specification and Reasoning with SCIFF", Proceedings of the 4th European Semantic Web Conference (ESWC'07), vol. 4519: Springer, pp. 68-83, 2007.

•  Alberti, M., F. Chesani, M. Gavanelli, E. Lamma, P. Mello, and P. Torroni, "Verifiable Agent Interaction in Abductive Logic Programming: The SCIFF framework", ACM Transactions on Computational Logic (TOCL), vol. 9, no. 4, 2008.

•  Chesani, F., P. Mello, M. Montali, and P. Torroni, A REC-Based Commitment Tracking Tool, Demo at the 10th AI*IA/TABOO Italian Joint Workshop ``From Objects to Agents'' (WOA 2009), 2009.

•  Chesani, F., P. Mello, M. Montali, and P. Torroni, A Logic-Based, Reactive Calculus of Events, 24th Convegno Italiano di Logica Computazionale (CILC09), 2009.

•  Chesani, F., P. Mello, M. Montali, F. Riguzzi, M. Sebastianis, and S. Storari, Checking Compliance of Execution Traces to Business Rules, Proceedings of BPM 2008 Workshops. Revised Papers, vol. 17: Springer, pp. 134-145, 2009.

•  M. Alberti, M. Gavanelli, E. Lamma, P. Mello, P. Torroni, and G. Sartor. Mapping deontic operators to abductive expectations. CMOT, 12(2-3):205–225, 2006.

•  J. F. Allen. Maintaining knowledge about temporal intervals. Commun. ACM, 26(11):832–843, 1983.

•  N. Desai, A. K. Chopra, and M. P. Singh. Representing and reasoning about commitments in business processes. In AAAI, pages 1328–1333. AAAI Press, 2007.

•  C. Forgy. Rete: A fast algorithm for the many patterns/many objects match •  problem. Artif. Intell., 19(1):17–37, 1982. •  G. Governatori. Representing business contracts in ruleml. Int. J. Cooperative Inf. •  Syst., 14(2-3):181–216, 2005. •  G. Governatori, J. Hulstijn, R. Riveret, and A. Rotolo. Characterising deadlines •  in temporal modal defeasible logic. In M. A. Orgun and J. Thornton, editors,

Australian Conference on Artificial Intelligence, volume 4830 of Lecture Notes in Computer Science, pages 486–496. Springer, 2007.

•  G. Governatori and A. Rotolo. Norm compliance in business process modeling. In RuleML, pages 194–209, 2010.

•  G. Governatori, A. Rotolo, and G. Sartor. Temporalised normative positions in defeasible logic. In ICAIL, pages 25–34. ACM, 2005.

•  JBoss. JBoss Drools 5.2 - Business Logic Integration Platform, 2011.

•  D. Luckham. The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems. Addison-Wesley Longman, Amsterdam, May 2002.

•  M. Montali, M. Pesic, W. M. P. van der Aalst, F. Chesani, P. Mello, and S. Storari. •  Declarative specification and verification of service choreographiess. TWEB, 4(1), •  2010. •  Pesic and W. M. P. van der Aalst. A declarative approach for flexible business •  processes management. In J. Eder and S. Dustdar, editors, Business Process

Management Workshops, volume 4103 of Lecture Notes in Computer Science, pages 169–180. Springer, 2006.

•  S. Wasim Sadiq, G. Governatori, and K. Namiri. Modeling control objectives for business process compliance. In G. Alonso, P. Dadam, and M. Rosemann, editors, BPM, volume 4714 of Lecture Notes in Computer Science, pages 149–164. Springer, 2007.

•  M. P. Singh, A. K. Chopra, and N. Desai. Commitment-based service-oriented architecture. IEEE Computer, 42(11):72–79, 2009.

•  P. Torroni, F. Chesani, P. Yolum, M. Gavanelli, M. P. Singh, E. Lamma, M. Alberti, and P. Mello. Modelling Interactions via Commitments and Expectations. IGI Global, 2009.

•  P. Yolum and M. P. Singh. Flexible protocol specification and execution: applying event calculus planning using commitments. In AAMAS, pages 527–534. ACM, 2002.

Page 24: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Pubblicazioni 1.  "An Hybrid Architecture Integrating

Forward Rules with Fuzzy Ontological Reasoning", 5th International Conference on Hybrid Artificial Intelligence Systems (HAIS 2010)

2.  "Forward Rules and Fuzzy Ontological Reasoning: Heading toward Tight Integration", 17th RCRA International Workshop on "Experimental evaluation of algorithms for solving problems with combinatorial explosion" (RCRA 2010)

3.  "A Step toward Tight Integration of Fuzzy Ontological Reasoning with Forward Rules", 6th Workshop on Semantic Web Applications and Perspectives (SWAP 2010)

4.  "A Rule-Based Implementation of Fuzzy Tableau Reasoning", 4th International Conference on Web Reasoning and Rule Systems,(RR 2010)

5.  “Service Oriented Architectures and Cloud Computing: Models and Tools based on Declarative Approaches”, 1st Doctoral Consortium, of the International AIxIA Conference, (AIxIA 2010)

6.  "A Rule-Based Implementation of Fuzzy Tableau Reasoning", 4th International Web Rule Symposium: Research Based and Industry Focused (RuleML 2010)

7.  "Approximate Inference for Logic Programs with Annotated Disjunctions", 20th International Conference on Inductive Logic Programming (ILP 2010)

8.  "Reasoning on Logic Programs with Annotated Disjunction", Intelligenza Artificiale, in fase di pubblicazione

9.  "Fuzzy Conformance Checking of Observed Behaviour with Expectations", 12th International AIxIA Conference, (AIxIA 2011)

10.  "Event Condition Expectation (ECE-) Rules for Monitoring Observable Systems", 5th International Symposium on Rules: Research Based and Industry Focused (RuleML2011@BRF)

Page 25: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Estensioni Future •  Il componente è stato progettato pensando di poterlo estendere

con l’aggiunta di altri tipi di ragionamento

•  Alcuni tipi di ragionamento considerati o in esame: •  logiche probabilistiche •  logica defeasible •  planning temporale

Page 26: MONITORING E COMPLIANCE IN ARCHITETTURE ORIENTATE AI … fine... · 2012-09-03 · • Reificazione dei concetti di fulfilment/violation, con supporto diretto al concetto di “recovery”

Stato dell’arte • Esistono diversi strumenti in grado di eseguire

singolarmente i diversi tipi di ragionamento identificati (Drools, Jess, Pellet, Racer, Hermit, …)

• Ne esistono alcuni in grado di supportare più tipi di ragionamento (Drools Chance, Fuzzy Jess, FuzzyDL, DeLorain, …)

• Ma nessuno è in grado di supportarli tutti contemporaneamente