domenica 26 aprile 2015

Complessità dei sistemi informativi: analizzare e diagnosticare i comportamenti anomali ricercandone le motivazioni



Analizzare e diagnosticare i comportamenti anomali ricercandone le motivazioni.

Essere meno complessi è un fattore abilitante per gestire e governare ambienti, come quello applicativo, caratterizzati dall’incertezza e dall’imprevedibilità dei con cu si esplicitano i requisiti, da i tempi sempre più contenuti nel soddisfare le esigenze e dalla  discontinuità con cui si susseguono le richieste.  L’obiettivo della misura della complessità è di:

·    Mettere in luce e di identificare quelle fluttuazioni caratteristiche quali, ad esempio, eventuali variazioni significative della complessità e dell’entropia (incertezza, caos, confusione) che:
  riflettono stati di vulnerabilità e di precarietà dello “stato di salute” del sistema/business;
    possono rilevare l'esistenza di problemi nascosti o possibili imminenti traumi che occorre urgentemente gestire.

·  Individuare quali elementi e quali variabili che contribuiscono maggiormente alla complessità totale della componente applicativa oggetto di misurazione su cui occorre intervenire per ridurre la complessità della stessa componente. 
 
Per misurare la complessità non si può prescindere dalle diverse prospettive di chi utilizza il sistema applicativo per svolgere le proprie funzione e di chi invece si adopera nel mettere a disposizione le applicazioni stesse e dai contenti in cui lo stesso deve competere e contendendosi le risorse.

Attraverso la piattaforma applicativa  OntoSpace™  è possibile avere una misura oggettiva della complessità e dello stato di salute e quindi di effettuare delle diagnosi utili a gestire e governare la complessità in modo proattivo, anticipando possibili eventi imprevedibili e predisponendo le opportune contromisure. L’insieme di informazioni fornite riguardano:

·    La Mappa di complessità e di Rischio in cui sono rappresentate la struttura del modulo e le relazioni esistenti tra le diverse variabili in un dato istante e le informazioni di sintesi delle metriche che descrivo la complessità. Cosi come è possibile navigare nella mappa e quindi evidenziare le relazioni tra le diverse variabili. 

·  L’evoluzione della complessità, dell’entropia (incertezza) e della robustezza del modulo. Inoltre è possibile rilevare l’indice di stabilità. L’insieme di queste informazioni consente di individuare variazioni di complessità che sono dei tipici segnali di preallarme che devono essere immediatamente analizzati per comprendere le ragioni e le motivazioni della loro presenza:

·   Il profilo del modulo, applicazione o sistema applicativo, ovvero l’elenco del 25 variabili che, per priorità, incidono maggiormente sulla complessità.

Selezionare, a parità di prestazioni, la scelta da perseguire.

 

Qualificare e quantificare il sistema/nodo (livello di disaggregazione del sistema informativo selezionato) che costruirà l’elemento di ogni susseguente servizio. È un prerequisito di base per affrontare la misurazione della complessità in modo oggettivo.

Realizzare un cruscotto di che permette di avere una visione di insieme della complessità e di come la stessa si relaziona rispetto ad altre metriche (benefici, costi, dimensione funzionali) nonché di identificare le componenti maggiormente critiche su cui intervenire  e di monitorare gli effetti dei cambiamenti apportati a livello complessivo di singola componente.

Analizzare, le componenti che evidenziano un’elevata  criticità, identificando i comportamenti anomali e individuando gli elementi che hanno un peso rilevante sulla complessità della stessa componente  al fine di comprendere le ragioni e le motivazioni e le azioni che devono essere poste in essere per ridurre la complessità stessa.

Selezionare tra le possibili alternative quella che, a parità di funzionalità e di prestazioni, è la meno complessa sia a livello di singola componente che a livello di sistema informativo visto nel suo complesso identificando gli elementi che hanno un peso maggiore nella determinazione del gap tra le soluzione prescelta e le altre.

Rendere autonome le funzioni aziendali coinvolte di utilizzare i concetti e gli strumenti che permettono di misurare la complessità formando le persone coinvolte e realizzando, congiuntamente, la struttura organizzativa più consona.

Un primo ambito di analisi può variare dal singolo modulo a livelli di aggregazione possibili in relazione al livello di atomicità selezionato. 

Un altro ambito di analisi potrebbe essere quello degli agenti che descrivono ogni modulo e conseguentemente è possibile analizzare la complessità da viste diverse degli ecosistemi che contribuisco ad avere una visione complessiva della complessità dei sistemi informativi.
 
Degli ulteriori ambiti di analisi potrebbe essere individuati: 

·    in relazione alle technicality  che descrivono e caratterizzano i singoli moduli sistema elementare;
·    in funzione dei processi di business o secondo le operazioni business viste in una logica end to end;
   in relazione al disegno architetturale attraverso il quale si realizza il sistema informativo.  







domenica 19 aprile 2015

Complessità dei sistemi informativi : monitorare l’evoluzione della complessità anticipando le potenziali criticità.


Monitorare l’evoluzione della complessità anticipando le potenziali criticità.

Il livello di stabilità del sistema applicativo assume una valenza maggiore tanto più gli stessi sono altamente interconnessi e interdipendenti e devono operare in ambienti  con una forte presenza di fenomeni di cambiamenti continuativi e imprevisti nonché di discontinuità nelle priorità, nelle finalità e negli obiettivi.
Attraverso la quantificazione della complessità è possibile misurare in modo innovativo il livello di stabilità delle diverse componenti di cui si compone un sistema applicativo. Utilizzando le variabili che caratterizzano l’operatività dei singoli moduli secondo le diverse prospettive è possibile tenere traccia, nel tempo, delle variazioni di complessità. 

In particolare, il tasso di variazione di complessità, fornisce una misura unica e olistica del livello di stabilità del modulo sia dal punto di vista dell’utilizzatore finale che di gestisce il modulo stesso.

L’introduzione del livello di stabilità e il suo impiego, su base continuativa e sistematica, permettono ai Sistemi Informativi di classificare velocemente i  moduli applicativi e di identificare quelli che sono maggiormente critici.
 
Improvvisi cambiamenti nella complessità sono dei classici sintomi di possibili "traumi". Indipendentemente se questi cambiamenti sono di natura endogena o esogena, essi rilevano potenziali problemi che devono essere immediatamente indirizzati. L’essere, anticipatamente,  a conoscenza di possibili problemi costituisce un vantaggio importante in quando si possono prendere, in tempo, le dovute contromisure.
L’indice di stabilità permette di mettere in evidenza quelle situazioni di criticità che consentono di avere un approccio propositivo intervenendo  proattivamente sul  modulo in cui si trova in una potenziale criticità che chi lo gestisce potrebbe non saperlo.   Un modulo stabile è caratterizzato da un valore tendenzialmente costante della complessità mentre improvvisi cambiamenti riflettono una sorta di rottura dello status quo del modulo stesso.
OntoDyn™ è la piattaforma applicativa di Ontonix che analizzando, nel tempo, la complessità dei moduli evidenzia quelli che sono maggiormenti instabili su cui occorre focalizzare l’attenzione.
L’indice di stabilità di un modulo, in un dato periodo di osservazione, può variare da 0 (massima instabilità) a 1 (massima stabilità).
OntoDyn™, per determinare il livello di stabilità, utilizza le informazioni e dati che descrivono il funzionamento del modulo in relazione della base temporale prescelta. La figura alla destra è un esempio del profilo di stabilità di un gruppo di clienti di una data banca. OntoDyn™ elabora sequenzialmente le informazioni di ogni singolo cliente e produce un elenco con i relativi indici di stabilità evidenziando quelli che sono maggiormenti critici.
Una volta stabilito il limite di accettabilità del livello di stabilità, i moduli, che si trovano di sotto di esso, sono quelli su cui avviare delle ulteriori e più dettagliate analisi al fine di comprendere le ragioni della variazione di complessità.

Analizzare e diagnosticare i comportamenti anomali ricercandone le motivazioni

Essere meno complessi è un fattore abilitante per gestire e governare ambienti, come quello applicativo, caratterizzati dall’incertezza e dall’imprevedibilità dei con cu si esplicitano i requisiti, da i tempi sempre più contenuti nel soddisfare le esigenze e dalla  discontinuità con cui si susseguono le richieste.  L’obiettivo della misura della complessità è di:

·       Mettere in luce e di identificare quelle fluttuazioni caratteristiche quali, ad esempio, eventuali variazioni significative della complessità e dell’entropia (incertezza, caos, confusione) che:
      riflettono stati di vulnerabilità e di precarietà dello “stato di salute” del sistema/business;
      possono rilevare l'esistenza di problemi nascosti o possibili imminenti traumi che occorre urgentemente gestire. 

·       Individuare quali elementi e quali variabili che contribuiscono maggiormente alla complessità totale della componente applicativa oggetto di misurazione su cui occorre intervenire per ridurre la complessità della stessa componente.  

Per misurare la complessità non si può prescindere dalle diverse prospettive di chi utilizza il sistema applicativo per svolgere le proprie funzione e di chi invece si adopera nel mettere a disposizione le applicazioni stesse e dai contenti in cui lo stesso deve competere e contendendosi le risorse.

Attraverso la piattaforma applicativa  OntoSpace™  è possibile avere una misura oggettiva della complessità e dello stato di salute e quindi di effettuare delle diagnosi utili a gestire e governare la complessità in modo proattivo, anticipando possibili eventi imprevedibili e predisponendo le opportune contromisure. L’insieme di informazioni fornite riguardano:

·       La Mappa di complessità e di Rischio in cui sono rappresentate la struttura del modulo e le relazioni esistenti tra le diverse variabili in un dato istante e le informazioni di sintesi delle metriche che descrivo la complessità. Cosi come è possibile navigare nella mappa e quindi evidenziare le relazioni tra le diverse variabili. 

·       L’evoluzione della complessità, dell’entropia (incertezza) e della robustezza del modulo. Inoltre è possibile rilevare l’indice di stabilità. L’insieme di queste informazioni consente di individuare variazioni di complessità che sono dei tipici segnali di preallarme che devono essere immediatamente analizzati per comprendere le ragioni e le motivazioni della loro presenza:

·       il profilo del modulo, applicazione o sistema applicativo, ovvero l’elenco del 25 variabili che, per priorità, incidono maggiormente sulla complessità.

domenica 12 aprile 2015

La complessità dei sistemi informativi - parte 3

Delineare qualificare e quantificare il sistema e l’ambito.



Il primo passo per misurare la complessità è di definire e delineare il nodo; elemento di base della “rete di relazioni del sistema informativo” che dinamicamente nel tempo si genera, in modo stocastico, in concomitanza delle diverse situazioni in cui i singoli nodi sono attivati e si trovano  ad interagire con gli altri per erogare i servizi a essi richiesti.
Alcune considerazioni preliminare sono d’obbligo e in particolare riguardano in:
 
·       primo luogo, ai criteri con cui si desidera disaggregare e riaggregare il sistema informativo. Il livello di atomicità del nodo (di seguito chiamato Modulo) che può essere la singola transazione,  l’insieme di funzioni appartenenti a un data applicazione, un sistema applicativo, un pacchetto, l’intero sistema applicativo o una qualsiasi altra entità che abbia una propria consistenza e validità per misurarne la sua complessità. 
·       secondo luogo, il modulo, una volta definito, viene considerato alla stregua di un “black box” e si focalizzerà l’attenzione sui flussi di ingresso,  di uscita e sui risultati perseguiti che costituiranno le variabili caratteristiche del funzionamento dello stesso modulo. 
·       terzo luogo non è richiesta alcuna definizione di come il modulo si relazione con gli altri poiché i legami e le regole saranno automaticamente determinati dalla suite software di Ontonix.

Indipendentemente del livello di atomicità scelto, per determinare quali sono le variabili che caratterizzano il comportamento di un modulo non  si può prescindere nell’avere una visione d’insieme che tenga conto anche delle contrapposizione di interessi e di finalità: 
·       della domanda, ovvero misurare la complessità dalla prospettiva di chi utilizza il sistema informativo, per svolgere le proprie attività e per raggiungere gli obiettivi di business. Lo scopo, in questo caso, è di comprendere quanto la complessità sia un fattore abilitante, efficiente, e efficace,  dell’operatività di chi utilizza le funzionalità di un dato modulo oppure quanto sia un vincolo identificando le variabili che contribuiscono maggiormente al vincolo stesso; 
·       dell’offerta, ovvero misurare la complessità dalla prospettiva di chi è addetto alla predisposizione e messa in opera del sistema informativo, al suo funzionamento e alla sua gestione e governo. Lo scopo è, quindi, di comprendere quanto il modulo è robusto e stabile e quindi quanto la complessità sia un vincolo, o meno, nell’erogazione del servizio e nel mettere a disposizione le funzionalità, nei tempi nei costi e con qualità richieste di  chi utilizza il modulo;
·       dei contesti, ovvero dell’ecosistema, in cui il modulo interagisce, caratterizzato da risorse date e da una forte variabilità sulla disponibilità delle stesse determinata dai cambianti delle priorità e delle esigenze nonché dall’operatività. Lo scopo è, quindi, di comprendere i comportamenti del modulo negli ambienti operativi in cui lo stesso deve competere e contendersi risorse finite. Questo consentirebbe di misurare il livello di fragilità o di robustezza del modulo quando sta svolgendo il suo ruolo operativo così come  la sua facilità a recepire gli adeguamenti necessari  al fine di svolgere nuove funzionalità e/o di migliorare le sue prestazioni.
 
Tenendo presente i diversi punti di vista, le variabili che descrivono la complessità di un modulo possono essere raggruppate secondo il seguente schema in cui la componente:
 ·       Business raggruppa sia le variabili che hanno un impatto sulla produttività e l’efficienza dell’utilizzatore (n° di inconvenienti, tempo di utilizzo, tempo di inattività, tempo di indisponibilità, n° di operazioni eseguite, volumi business trattati, n° di call all’help desk, tempo speso nella risoluzione di un problema, …)  sia quelle che riguardano l’allineamento alle esigenze organizzative e di business (n° di problemi, n° di  problemi risolti, n° di problemi demandati, n° problemi aperti, n° nuove funzionalità, n° di miglioramenti, n° di adattamenti o correzioni delle funzionalità in essere, tempo di supporto …….).
 ·       Sicurezza riguarda le variabili che permettono di misurare i rischi operativi del modulo (n° di intrusioni interne ed esterne; tempo di recupero, n° di reclami, tempo di soluzione, …….).
 ·       Funzioni include tutte quelle variabili del modulo “as is” che descrivono quanto sono utilizzate le funzionalità del modulo (n° di transazioni eseguite, n° di servizi erogati ad altri moduli, n° di servizi richiesti ad altri moduli) e la stabilità dello stesso modulo (n° di cambiamenti, n° di abend  per transazione, tempo di risoluzione, n° di abend aperti, n° di abend risolti ….).
 ·       Infrastruttura riguarda le variabili che descrivo l’ecosistema tecnologico le cui singole componenti sono necessarie per rendere fruibile il modulo stesso all’utilizzatore finale (disponibilità, indisponibilità, n° inconvenienti, n° di cambiamenti, tempo di ripristino, …..).
 ·       Run time include le variabili che descrivo il modulo quando lo stesso opera nell’ambiente fisico in cui deve contendere e contendere le risorse a disposizione. Esse riguardano l’utilizzo delle diverse risorse tecnologhe (Unità di servizio utilizzate, disponibilità, tempo di indisponibilità, n° di accessi, n° di querry, ….) e le prestazioni del modulo (tempo di risposta per transazione, n° di inconvenienti, durata degli inconvenienti …….).
 ·       AD&M riguarda le variabili che descrivo il processo di adeguamento funzionale in cui il modulo deve contendersi le risorse disponibili (function points o linee di codice introdotte o rimosse, risorse impiegate, elapsed time ………) sia per rispondere a esigenze organizzative e di business che tecnologiche di scalabilità e prestazionali. 
Una volta che è stato definito, qualificato il modello occorre passare alla fase successiva di  rilevazione e  raccolta delle osservazioni le quali, oggettivamente e temporalmente, quantificano le variabili che descrivono il modulo  oggetto di analisi (stati vettori).  Le osservazioni delle variabili potrebbero avere una base temporale diversa tra di esse così come in alcuni momenti l’osservazione potrebbe essere non disponibile. Entrambe le situazioni sono propriamente gestiste dalla soluzione Ontonix. In oltre tanto più alto è il numero di osservazioni e più consistente è il risultato conseguito.
 

sabato 4 aprile 2015

La complessità dei sistemi informativi - parte 2



La complessità: Definizione, Prospettiva e Rappresentazione.


Prima di entrare nella definizione di complessità, prerequisito per poi misurarla, è importante fare una precisazione terminologica tra complicato e complesso. Spesso, i due aggettivi, complesso e complicato, sono utilizzati come sinonimi mentre in realtà vi è una sostanziale differenza. Un sistema può essere complicato ma con una bassa o nulla complessità (vedasi i meccanismi di funzionamento di un orologio); mentre un sistema complesso è, nello stesso tempo, anche complicato (vedasi ad esempio: l’organizzazione di un’azienda, l’economica, i sistemi informativi, e cosi via) e possiede una caratteristica essenziale: è in grado di sorprende.
Il sistema informativo non è più rappresentabile con dei modelli predefiniti che ne descrivano in modo deterministico il suo funzionamento e i suoi possibili comportamenti. Possiamo avvicinarci, possiamo introdurre sempre più stringenti controlli, per prevenire e limitare l’insorgere di stati di criticità e di emergenza, ma non siamo in grado di prevedere come il sistema informativo stesso si adatterà e si comporterà alle sollecitazioni interne ed esterne a cui lo stesso viene sottoposto.
In un contesto fortemente interconnesso e volubile, i legami che definiscono e determinano la struttura di un sistema informativo devono obbligatoriamente considerare la maggiore incertezza generata dalla  discontinuità  e imprevedibilità dell’operativa, dalla continua approssimazione verso le desiderate funzionalità degli utilizzatori e dai continui e imponderabili cambiamenti decisionali. Conseguentemente per descrivere la complessità non è più sufficiente cercare di minimizzare il numero di legami tra le diverse componimenti che delineano la rete logica e fisica dei sistemi informativi con cui si sviluppa e opera poiché occorre tenere conto dell’incertezza la quale determina le regole con cui i diversi legami interagiscono tra di loro e che dinamicamente si creano nella vita di un sistema informativo.
La complessità è una proprietà naturale di ogni sistema informativo e di ogni sua componente ed è definita come il mix di interdipendenze (struttura) e di incertezza (entropia), dove:


·       le interdipendenze (struttura) rappresentano i flussi di informazione esistenti tra i vari elementi che definiscono, descrivono ed esplicitano l’operatività del sistema informativo;
·       l’incertezza (entropia) che descrive la tipologia di relazione esistente tra le diverse variabili oltre che a fornire delle utili informazioni sul grado di prevedibilità del sistema informativo e sull’ampiezza dei possibili comportamenti che lo stesso sistema informativo potrebbe avere.

Questo secondo fattore, nel calcolo delle complessità, è l’elemento nuovo che permette di gestire in modo appropriato le regole che legano i comportamenti tra le diverse variabili che descrivono il funzionamento di ogni singola compente del sistema informativo e l’aleatorietà, caratteristica saliente di ogni di esse e del sistema visto nella sua complessità.
La Mappa di Processo o Mappa di Complessità e di Rischio (di seguito chiamata Mappa di Complessità) è la rappresentazione sintetica della “rete delle componenti di cui si compone il sistema informativo” nella quale si evidenzia:

·       la struttura della rete dei sistemi informativi ovvero le relazioni esistenti tra le variabili che descrivo il sistema informativo in una dato istante t;
·       le metriche di complessità all’istante t che si vengono a determinare in relazione alle informazioni rilevate durate il processo di costruzione della struttura della rete dei sistemi informativi e che descrivono lo stato di salute dello sistema informativo.

La modalità con cui viene visualizzata la struttura del sistema informativo nella Mappa di Complessità è una rappresentazione alternativa a quelle convenzionali che spesso diventano velocemente illeggibile quando il numero di nodi e di legami aumenta significativamente. 



I legami della Mappa sono stabiliti da principi e algoritmi presenti nella soluzione OntoSpace™ e il tutto avviene in modo automatico. In altre parole, non è richiesto ad alcuno di definire come i nodi/variabili del sistema informativo sono collegati tra di essi. La piattaforma OntoSpace™ ha adottato, per misurare la complessità, un approccio “model free” al fine di evitare di introdurre dell’altra incertezza correlabile alla particolare modellazione adottata per descrivere un dato problema.
Il vantaggio di una rappresentazione, come quella di Ontonix,  è la sua facilità nella lettura delle relazioni anche nel caso di un numero molto elevato di nodi e legami in quanto evidenzia con quali altre variabili, una data variabile si relaziona. Inoltre è, immediatamente, possibile vedere il tipo di relazione che regolamento il legame ovvero il grado  di incertezza dei possibili comportamenti tra le diverse variabili.
In particolare nella Mappa di Complessità e Rischio sono rappresentati i:

·       nodi , posti lungo la diagonale rappresentano le componenti dei sistemi informativi (tecnologie,   applicazioni, utenti, e cosi via) e le variabili (n° di operazioni, durata, consumi tempi risposta, disponibilità, funzionalità sviluppate o cambiate risorse umane e tecnologiche impiegate, numero di cambiamenti, e cosi via) che descrivono l’operatività , la gestione e la dimensione e l’utilizzo di ogni singolo componenti del sistema informativo;

·       connettori, posti ai lati della diagonale rappresentano i legami ovvero le “relazioni” e “non le correlazioni” tra le variabili i quali sono collocati sia orizzontalmente sia verticalmente, in modo da ridurre i cosiddetti incroci nulli. Quando tra due variabili esistono delle relazioni, il legame corrispondente è segnalato da un connettore (punto). La non presenza di una relazione implica che la stessa relazione è rappresenta o da un valore costante oppure che la dispersione dei valori è tale per chi non esiste alcuna relazione. 

·       le metriche che descrivono lo stato di salute del sistema informativo. In particolare sono evidenziate: il rating di complessità fornisce una prima, sintetica e immediata valutazione del livello di criticità del sistema informatico; la complessità corrente del sistema informativo a un dato istante t, la sua complessità critica (limite massimo) oltre la quale non si può andare e la complessità minima che rappresenta lo stato in cui il sistema ha un comportamento deterministico; l’entropia che esprime l’ordine di grandezza del livello di incertezza/imprevedibilità nei comportamenti; la robustezza della struttura che descrive il sistema informativo; la densità che indica il livello di “ingessatura” del sistema informativo

In sintesi, tanto più le relazioni tra le variabili si avvicinano alla forma in cui il legame è debole tanto più il sistema informativo, diventa complesso, fragile, difficile da gestire e meno prevedibile tanto più ci si avvicina, invece, alla relazione descritta dal legame forte tanto più il sistema informativo diventa deterministico e quindi, nel suo complesso, più semplice da governare.