18
Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole Corso di Laurea in Sicurezza dei Sistemi e delle Reti Informatiche RELATORE PROF. GABRIELE GIANINI TESI DI LAUREA DI ERIKA PRIMAVERA MATR. 722422

Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Embed Size (px)

DESCRIPTION

TESI DI LAUREA DI ERIKA PRIMAVERA RELATORE PROF. GABRIELE GIANINI

Citation preview

Page 1: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Corso di Laurea in Sicurezza dei Sistemi e delle Reti Informatiche

RELATOREPROF. GABRIELE GIANINI

TESI DI LAUREA DIERIKA PRIMAVERAMATR. 722422

Page 2: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

• Sanità• Gas• Acqua

• Calore• Gestione Ambientale• Energia

Page 3: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

DELIBERA ARG-GAS 155/08

Smart Metering GAS

Page 4: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Smart Metering

•bolletta meno cara

•meno costi di gestione

Page 5: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Smart Metering e-utileCinque settori:

• Meter

• MAG (Meter Automated Gateway)

• e-MM (Electronic Meter Management)

• FASS (Field Activity Support System)

• Backend

Page 6: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Il sistema elettrico

Status word

Page 7: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

EVENTI

NotificheAllarmiEventi generati da malfunzionamenti dei dispositivi di campo, necessari per risolvere tutti i possibili problemi che possono presentarsi.

Eventi generati da qualunque tipo di componente, necessari per verificare il corretto funzionamento dell’intero sistema.

FE CTS

Page 8: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Gestione allarmi (FE)

Page 9: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Gestione notifiche (CTS)

Page 10: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

PROBLEMA:Separazione di tutta la logica utilizzata per la gestione degli

eventi dal codice esistente

Rule Engine: DROOLS

Page 11: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

NUOVA ARCHITETTURA:

Device alarm management Event management

Page 12: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Rule Engine

Page 13: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

DROOLS• Il progetto Drools ha inizio nel 2001 ad opera di Bob McWhirter.

• Nell'ottobre del 2005 Drools diventa parte dell'offerta JBoss e viene rinominato JBoss Rules, anche se il nome Drools rimane popolare tra gli sviluppatori.

• Nel 2006 JBoss viene acquisita da Red Hat, Inc.

Page 14: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

DROOLS RULE:

Sintassi:rule <<rule name>>

<<additional properties>>when

<<conditions>>then

<<actions>>end

Esempio:rule “Hello World”when

m : Message(status == Message.HELLO,myMessage : message )

thenSystem.out.println( myMessage );m.setMessage( “Goodbye” );m.setStatus( Message.GOODBYE );update( m );

end

Page 15: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

DROOLS ESEMPIO:public class DroolsTest{

public static final void main(String[] args) {

try{

// carica e compila le regole in una RETEKnowledgeBase kbase = readKnowledgeBase();// inizializzazione della RETEStatefulKnowledgeSession ksession =

kbase.newStatefulKnowledgeSession();

// go !Message message = new Message();message.setMessage("Hello World");message.setStatus(Message.HELLO);ksession.insert(message);ksession.fireAllRules();logger.close();

} catch (Throwable t) {

t.printStackTrace();}

}

private static KnowledgeBase readKnowledgeBase()throws Exception

{// creo il compilatore

KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();

// compila una o più risorsekbuilder.add(ResourceFactory.newClassPathResource

("Sample.drl"), ResourceType.DRL);

// inizializzo la RETE vuota e le struttureKnowledgeBase kbase =

KnowledgeBaseFactory.newKnowledgeBase();// aggiungo le regole compilatekbase.addKnowledgePackages

(kbuilder.getKnowledgePackages());

return kbase;}

}

Page 16: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

VANTAGGI:• Open Source• Si integra perfettamente con il codice java già presente• Separazione di tutta la logica necessaria per gestire gli eventi dal codice• Regole facilmente modificabili• Facile e intuitivo (interfaccia grafica)

Page 17: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Sviluppi futuri: Smart Grid

Obiettivo “20/20/20”:

• ridurre del 20% il consumo di emissioni di gas a effetto serra;

• aumentare del 20% il risparmio energetico;

• avere almeno il 20% di fonti di energia provenienti da risorse rinnovabili

Page 18: Evoluzione del sistema di gestione degli allarmi dei dispositivi di campo: integrazione di un motore di regole

Grazie per l’attenzione