Creare una dashboard con Apache Zeppelin

Ho da poco rilasciato l’aggiornamento per rendere Apache Zeppelin 0.7 compatibile con SQL Server, Azure SQL ed Azure DW, ed è quindi un buon momento anche per descrivere come creare una dashboard con questo bellissimo prodotto, e fare un piccolo indice degli articoli che ho pubblicato a riguardo.

In realtà, al posto che un articolo, dato che si tratta di un breve tutorial ho pensato di creare un video per mostrare come fare. Trovate il video qui:

In 6 minuti potete vedere come eseguire l’immagine Docker per eseguire Apache Zeppelin e configurarla per collegarla al vostro SQL Server. Il consiglio che do, rispetto a quanto mostrato nel video e negli articolo sotto riportarti, e’ quella di usare la versione 0.7 di Apache Zeppelin. I video e gli articolo, fino a Febbraio 2017 sono basati sulla versione 0.6.2 ma non cambia praticamente nulla se non il nome dell’immagine del Docker container, che al posto che essere

yorek/zeppelin-sqlserver:0.6.2

è

yorek/zeppelin-sqlserver:0.7

ed il nome dell’interprete per SQL Server che non è più

tsql

ma è diventato

sqlserver

come descritto nell’articolo relativo al rilascio della versione 0.7. Ed a proposito di articoli, ecco quelli scritti fino ad ora, per chi se li fosse persi e, più semplicemente, per comodità:

In Inglese

In Italiano è più comodo ancora perché tutti gli articoli legati ad Apache Zeppelin hanno il tag “Apache Zeppelin” e li ho pubblicati su UGISS:

A presto!

Azure Resource Manager templates – Deployment con un clic!

I template in Microsoft Azure possono utilizzare un’ampia gamma di risorse oltre a quelle tipiche dell’ Infrastructure As A Service (IaaS), come ad esempio le Web App o i database SQL e permettono di distribuire automaticamente queste risorse in relazione tra loro.

Uno dei vantaggi dei template di Azure è quello di poter creare tutte le risorse necessarie alla creazione di una soluzione, anche complessa, semplicemente utilizzando un clic!

Sul sito web GitHub, all’indirizzo https://github.com/Azure/azure-quickstart-templates trovate centinaia di template in formato JavaScript Object Notation (JSON), che vi permettono di creare macchine virtuali, reti virtuali, applicazioni web, database SQL e di realizzare soluzioni e applicazioni già pronte all’uso.

Per poterlo fare basta dichiarare nel template di Azure quali risorse volete utilizzare e successivamente fornire i parametri necessari alla configurazione della soluzione scelta.

Moltissimi sono i template disponibili, visualizzabili alla pagina https://azure.microsoft.com/it-it/resources/templates/, che vi permettono di creare ad esempio un intero cluster, utilizzando diverse macchine virtuali.

Figura 1: Offerta dei template in Azure

Ovviamente potete creare template di Azure anche personalizzati. Trovate una serie di ottime guide al link https://docs.microsoft.com/it-it/azure/azure-resource-manager/resource-manager-template-best-practices , dove vi vengono illustrate le best practices per creare modelli di Resource Manager facili da usare.

Inoltre i template possono essere esportati anche da risorse che già avete nella vostra sottoscrizione Azure. Supponendo di aver creato una macchina virtuale e di volerla replicare, abbiamo la possibilità di visualizzare il file .json del template e di esportarlo per riutilizzarlo per ridistribuire la macchina virtuale in base alle nostre esigenze. Nella figura sotto, dopo essermi loggato al portale Azure, ho cliccato su una mia macchina virtuale e successivamente ho cliccato su Automation Script, in modo tale da visualizzare il template .json della Virtual Machine e poterlo scaricare.

Figura 2: Template .json esportabile dal portale di Azure

Cliccando su Download avrete la possibilità di scaricare i file Parameters.json e Template.json, oltre a file per poter distribuire il template utilizzando Powershell oppure Bash o Visual Studio.

Figura 3: File scaricati dal portale Azure

Figura 4: parte del file template.json

Figura 5: file parameters.json

Figura 6: File deploy.ps1

Ridistribuire i template diventa facilissimo perché possiamo usare il file deploy.ps1 dopo aver modificato i parametri dei file .json

Template pronti disponibili su GitHub

Dal repository GitHub potete partire dall’implementazione di modelli semplici, come ad esempio il template che permette di creare una nuova VM e promuoverla a domain controller di una nuova foresta Create an Azure VM with a new AD Forest

Figura 7: Template per la creazione di un nuovo domain controller

Trovo particolarmente interessanti alcuni template presenti su GitHub che ci danno la possibilità di creare soluzioni complesse di Clustering di VM.

In particolar modo è possibile utilizzare il template Windows Server 2016 Storage Spaces Direct (S2D) SOFS cluster per creare delle macchine virtuali da collegare ad una rete VNET esistente e poter creare un Windows Server 2016 Storage Spaces Direct (S2D) Scale-Out File Server (SOFS) cluster, il tutto con un semplice clic!

Figura 8: template per la creazione di uno Storage Spaces Direct (S2D) Scale-Out File Server (SOFS) cluster

Interessante anche il template Create a Storage Spaces Direct (S2D) SOFS Clusters with Storage Replica for Disaster Recovery across Azure Regions, che permette di creare due cluster Storage Spaces Direct (S2D) Scale-Out File Server (SOFS) utilizzando Windows Server 2016 in un ambiente realizzato tra due regioni diverse di Azure, in modo tale da poter utilizzare la nuova funzionalità di Storage Replica.

Figura 9: Schema di funzionamento di Storage Spaces Direct (S2D) in un ambiente realizzato tra due regioni diverse di Azure

Figura 10: template Create a Storage Spaces Direct (S2D) SOFS Clusters with Storage Replica for Disaster Recovery across Azure Regions

Per maggiori approfondimenti vi rimando anche all’articolo Implementare Storage Spaces Direct in Windows Server 2016 con Microsoft Azure.

Ci sono anche soluzioni più semplici che permettono di testare la nuova funzionalità di Storage Replica, di cui abbiamo parlato nell’articolo Implementare Storage Replica in Windows Server 2016 con Microsoft Azure. Trovate il template all’indirizzo Create a Storage Replica (SR) destination server with Windows Server 2016 on an existing VNET

Figura 11: Template Create a Storage Replica (SR) destination server with Windows Server 2016 on an existing VNET

Conclusioni

La facilità con cui i template di Azure ci permettono di realizzare soluzioni tecnologiche complesse, come Storage Replica, Storage Spaces Direcr oppure il Clustering, ci danno un’idea precisa della potenza del cloud pubblico di Microsoft e dell’evoluzione tecnologica dei nostri Datacenter.

E se volete cimentarvi con la creazione di vostri template potete cominciare visitando la pagina https://docs.microsoft.com/it-it/azure/azure-resource-manager/resource-group-authoring-templates

Buon lavoro!

Nic

Outlook si continua a chiudere

Dopo le prime versioni di Outlook di (oramai) tanti anni che non brillavano certo per stabilità, il prodotto si è stabilizzato a patto di usare PST (se usati) di dimensione umana (una volta la regola era di non più di 2 GB, ma oggettivamente dipende molto dalla versione di Outlook e dall’affidabilità e prestazioni dello […]

SharePoint Server: Sincronizzazione con Active Directory – Parte prima

Premessa

Fino alla versione 2010, SharePoint Server ha sempre rappresentato una spina nel fianco dell’amministratore di sistema quando si arrivava al punto di dover sincronizzare i dati degli utenti gestiti da SharePoint (i cosiddetti “User Profiles”) con un sistema di Identity Management esterno, ad esempio Active Directory.

L’obiettivo di popolare automaticamente tutti i campi SharePoint relativi alle proprietà anagrafiche delle utenze richiedeva una serie di operazioni estremamente coreografata (per usare un delicato eufemismo), tra le quali anche l’inserimento dell’account di servizio della Farm nel gruppo amministrativo locale di ogni server SharePoint, azione che – sebbene temporanea – contrasta con le best practices Microsoft.

La maggior parte dei problemi di implementazione era legata alla dipendenza dello User Profile Synchronization Service di SharePoint dal servizio Windows Forefront Identity Manager (FIM), dipendenza che spesso costringeva gli amministratori a combattere contro il famigerato status perennemente in “starting”.

Figura 1 – Attendere, prego…

Per maggiori info sullo User Profile Synchronization Service si rimanda a questo articolo: https://technet.microsoft.com/en-us/library/ee662538.aspx.

La buona notizia è che nelle versioni successive di SharePoint sono stati apportati sensibili miglioramenti ai meccanismi di sincronizzazione con Active Directory e in questa serie di articoli ne andremo a scoprire i dettagli:

  • Active Directory Import (ADI),
  • Microsoft Identity Management Server 2016.

SharePoint 2013: Welcome ADI!

A partire da SharePoint 2013 è stata introdotta la feature chiamata Active Directory Import (ADI), che consente di importare utenti da Active Directory nella User Profile Service Application di SharePoint.

Con ADI, l’amministratore ha la possibilità di evitare FIM per accedere ad Active Directory, sebbene con qualche limitazione:

  • FIM può sincronizzare la User Profile Service Application di SharePoint con Active Directory e (tramite i Business Connectivity Services, BCS) con sistemi esterni, mentre ADI parla solo con Active Directory;
  • FIM può effettuare una sincronizzazione “bidirezionale”, ADI è “one-way”;
  • FIM può sincronizzare dati da più origini in parallelo, ADI può importare solo da un repository alla volta;
  • ADI non permette la sincronizzazione delle foto del profilo.

Figura 2 – SharePoint 2013 FIM vs ADI

Ci sono comunque numerosi punti a favore di ADI rispetto a FIM:

  • Performance;
  • Facilità di configurazione;
  • Possibilità di schedulare importazioni incrementali ogni 5 minuti;
  • Possibilità di selezionare quali utenti importare attraverso filtri LDAP.

Le operazioni necessarie ad implementare ADI sono piuttosto semplici e vanno effettuate dopo i medesimi step propedeutici all’utilizzo di FIM:

  • Creazione di una Web Application e di una Site Collection per ospitare i “My Sites”;
  • Creazione di un’istanza della User Profile Service Application.

È richiesto un account con privilegi di Farm Administrator che sia membro del gruppo locale Administrators del server SharePoint.

Creare la Web Application per i “My Sites”

Nota: I passaggi qui descritti riguardano nello specifico SharePoint 2013, sebbene in SharePoint 2016 siano del tutto simili.

Accedere alla Central Administration di SharePoint.

Nella sezione Application Management, fare clic su Manage
web
applications.

Figura 3 – Manage web applications

Nel ribbon, fare clic su New.

Nella pagina Create New Web Application:

  • Nella sezione Authentication, selezionare il metodo di autenticazione desiderato;
  • Nella sezione IIS Web Site decidere se utilizzare un sito web esistente o se crearne uno nuovo (e nel caso definirne il nome nella text box Name);
  • Nella sezione Security Configuration specificare un authentication provider, specificare se è consentito l’accesso anonimo e l’eventuale utilizzo di SSL;
  • Nella sezione Application Pool, optare per un application pool esistente o crearne uno nuovo;
  • Nella sezione Database Name and Authentication selezionare il nome del SQL Server, il nome del database per la Web Application e il metodo di autenticazione;
  • Nel caso in cui si utilizzi il database mirroring, nella sezione Failover Database specificare il nome del SQL Server di failover;
  • Nella sezione Service Application Connections selezionare le connessioni alla Service Application che saranno disponibili per la Web Application;
  • Nella sezione Customer Experience Improvement
    Program selezionare Yes o No.

Fare clic su OK.

Creare la Site Collection per i “My Sites”

Nella Central Administration, sezione Application Management, fare clic su Create site collections.

Figura 4 – Create site collection

Nella pagina Create site collection:

  • Nella sezione Web Application, selezionare la Web Application creata precedentemente;
  • Nella sezione Title and Description digitare un nome ed una descrizione;
  • Nella sezione Web Site Address selezionare l’URL per consentire agli utenti di accedere al sito (ad esempio la root “/”);

Figura 5 – Create site collection

  • Nella sezione Template Selection, fare clic su Enterprise e selezionare My Site Host;

Figura 6 – Template Selection

  • Specificare il nome dell’amministratore della Site collection nella sezione Primary Site Collection Administrator nella forma DOMINIO\NomeUtente;
  • Eventualmente specificare un amministratore secondario nella sezione Secondary Site Collection Administrator;
  • Nella sezione Quota Template, qualora si utilizzino le quote per limitare lo spazio occupato dalle Site Collections, selezionare un modello nell’elenco Select a quota template.

Fare clic su OK.

Creare la User Profile Service Application

Nella Central Administration, sezione Application Management, fare clic su Manage service applications.

Figura 7 – Manage service applications

Nel ribbon, fare clic su New e selezionare User Profile Service Application:

  • Nella sezione Name, digitare il nome della User Profile service application;
  • Nella sezione Application Pool, optare per un application pool esistente o crearne uno nuovo;

Figura 8 – Create New User Profile Service Application

  • Accettare le opzioni di default per i database da creare e, qualora presente, specificare i server di failover;
  • Nella sezione Profile Synchronization Instance, qualora necessario, specificare il nome del server SharePoint che eseguirà la sincronizzazione;
  • Nella sezione My Site Host URL, specificare l’URL della Site Collection creata precedentemente;
  • Nella sezione My Site Managed Path, digitare la parte del percorso che porterà ai siti personali;

Figura 9 – My Site Host URL e My Site Managed Path

  • Nella sezione Site Naming Format, selezionare una modalità di generazione automatica del nome dei siti personali;

Figura 10 – Site Naming Format

  • Fare clic su Create.

Al termine delle attività di creazione, nella pagina Create New User Profile Service Application fare clic su OK.

Avviare il servizio User Profile

Nella Central Administration, fare clic su System Settings e poi fare clic su Manage services on server.

Nella pagina Services on Server, qualora necessario, nella casella Server, selezionare il server che eseguirà la sincronizzazione.

Figura 11 – Services on Server

Nella riga User Profile Service, se il valore della colonna Status è “Stopped“, fare clic su Start nella colonna Action.

Figura 12 – User Profile Service partito!

Abilitare ADI

Per abilitare Active Directory Import è necessario disporre di un account di servizio che abbia privilegi di “Replicate Directory Changes” sul dominio Active Directory.

A tal fine, seguire le indicazioni riportate nell’articolo di Microsoft https://technet.microsoft.com/en-us/library/hh296982.aspx per assegnare i diritti necessari attraverso il Delegation of Control Wizard di Active Directory Users and Computers.

Figura 13 – Assegnazione del privilegio Replicate Directory Changes

Di nuovo accedere alla Central Administration di SharePoint e nella sezione Application Management fare clic su Manage service applications.

Nella pagina Manage Service Applications, fare clic sul nome della User Profile service application.

Nella pagina Manage Profile Service, sezione Synchronization, clic su Configure Synchronization Settings.

Figura 14 – Configure Synchronization Settings

Nella pagina Configure Synchronization Settings, sezione Synchronization Options, selezionare l’opzione Use SharePoint Active Directory Import e fare clic su OK.

Figura 15 – Versione SharePoint 2013

Figura 16 – Versione SharePoint 2016

Nel prossimo articolo

Fin qui abbiamo configurato i prerequisiti di Active Directory Import. Nel prossimo articolo vedremo come impostarne la sincronizzazione con Active Directory e abbinare le informazioni anagrafiche degli utenti raccolte da ADI con le proprietà dei profili utente gestiti da SharePoint.

Aggiungere gli audit log di oracle 12c al vostro syslog server (SIEM)

Di default gli audit log di Oracle sono conservati in una tabella del db e se non modificate questo comportamento sarà difficile ottemperare alle nuove regole Europee della Privacy. Questo è uno dei metodi più semplici che abbiamo provato ed utilizzato e che rispettano le best practice Oracle. Ricordate che le modifiche fatte sull’OS vanno […]

SQL Server vNext CTP 1.3

E’ stata rilasciata la CTP 1.3 della nuova versione di SQL Server!

L’annuncio è stato dato attraverso il blog ufficiale con questo articolo:

SQL Server next version CTP 1.3 now available

La feature più importante di questa Community Technology Preview è sicuramente la possibilità di utilizzare Always On Availability Groups su Linux, trovate maggiori dettagli nei seguenti articoli:

Il download della CTP 1.3 di SQL Server vNext è disponibile da SQL Server Evaluation Center.

Buon divertimento!

Un’opportunità da cogliere

Ian Evans, Vice-presidente End User Computing EMEA di VMware parla delle opportunità per i partner EUC per il 2017 e di come la mobilità possa essere il “cavallo di Troia” per arrivare ai CIO.

Circa cinque anni fa, il workplace ha iniziato un processo di rivoluzionario cambiamento. Le persone hanno iniziato a pensare che le applicazioni e la navigazione fossero importanti tanto quanto l’utilizzo delle email e, con il conseguente inizio della saturazione degli smartphone sul mercato, iniziammo a allontanarci dal desktop.

Siamo in un momento nel quale le aziende si sono rese conto che la rivoluzione digitale e il business possono aiutare i collaboratori a essere più produttivi, potendo lavorare sui propri dispositivi mobile.

Questo porta a una focalizzazione sulla user experience e su come unificarla senza tener conto di quale device venga utilizzato o dove sia l’utilizzatore finale. Sia che gli utenti stiano lavorando da un’automobile con il proprio tablet, sia che stiano facendo un meeting con il cliente al cellulare, essi necessitano di applicazioni che costantemente operino nella stessa maniera.

Gli utenti oggi necessitano di piattaforme che permettano di rispecchiare chi l’utente vuole essere, come vuole accedere e quando. È’ l’unica maniera per permettere alle persone di lavorare meglio. Tutti i fornitori di software hanno bisogno di essere mobile-enabler – tutto sta nell’avere gli insight che permettano di dare alle persone giuste la giusta applicazione per il lavoro che essi devono svolgere.

I partner che hanno compreso tutto questo, si riveleranno quelli di maggior successo, e continueranno ad esserlo per tutto il 2017. I clienti di questi partner potranno percepire l’effetto immediato dell’ottimo lavoro che stanno facendo, facendosi supportare con costanza nel loro percorso verso il mobile.  Vogliamo dare la possibilità ai nostri partner di muoversi da un approccio “solution-based”, in modo da aiutare i propri clienti nel percorso che li porterà a essere più digitali. Al fine di essere profittevoli, i partner hanno la necessità di vedere che un progetto da 1 milione di euro possa espandersi fino a 3 volte tanto. Essi non solo possono offrire una soluzione di mobilità ma possono anche offrire app management e sicurezza, per esempio.

Il mobile è sempre stato il “cavallo di Troia” per arrivare ai CIO – e oggi lo è ancora di più, specialmente perché nel 2017 ci si aspetta che molte aziende intraprenderanno un percorso di trasformazione digitale. Oggi la mobilità è entusiasmante e certamente è riconosciuta dal senior management come qualcosa che possa servire a trattenere il proprio staff o attrarre forza lavoro giovane. Con le nostre soluzioni i partner possono dire: “noi sappiamo come rendere le vostre persone più produttive, efficienti e felici” – e questo è il messaggio a cui il board presta attenzione.

Quindi, cosa significa tutto questo? Nel 2017 vogliamo incoraggiare i nostri partner a non stare immobili – e anzi a provare nuove cose. Noi vogliamo far cogliere loro tutte le opportunità che gli si presentano.

PASS GIVC – Rispondere agli Extended Event in tempo reale (nuova schedulazione)

Il prossimo webinar del PASS Italian Virtual Chapter è programmato per mercoledì 1 Marzo 2017 alle ore 18:00.

Gianluca Sartori (@spaghettidba) presenterà la sessione “Rispondere agli Extended Event in tempo reale”.

Questo è l’abstract del webinar:

Gli Extended Event consentono di accedere a informazioni molto dettagliate riguardo il comportamento interno di SQL Server. Tuttavia, confrontate con altre tecnologie come SQL Trace e Event Notifications, sembra mancare un modo per reagire ad un evento non appena si verifica. In questa sessione vedremo come gli Extended Events possono essere processati in tempo reale utilizzando la streaming API. Dimostreremo inoltre come questa tecnologia apre nuovi scenari e nuove possibilità per risolvere problemi comuni, come ad esempio catturare e notificare deadlock e sessioni bloccate.

Per effettuare la registrazione, puntate il vostro browser qui.

IoT Day con Hackster Live e Intel Innovator Tour al PoliBa

ICTPower e DotNetSide organizzano, in collaborazione con Hackster Live ItaliaIntel Innovator Tour e Microsoft, una giornata completamente gratuita dedicata al mondo IoT, dalla realtà dei microcontrollori e dei maker, fino alla sensoristica e all’automazione industriale, con interventi da parte di Microsoft MVP, Intel Innovators ed esperti riconosciuti a livello internazionale.

Durante questa giornata potrete scoprire tutte le soluzioni proposte da Microsoft che permettono di sfruttare le potenzialità dell’IoT in modo semplice, disponendo di una piattaforma completa e, nel laboratorio del pomeriggio, avrete la possibilità di provare i tool in prima persona. Tutti gli speaker saranno a disposizione per rispondere alle vostre domande e curiosità.

Vi aspettiamo il 10 marzo 2017 presso il Politecnico di Bari c/o Campus Universitario, Sala Videoconferenza presso l’Amministrazione Centrale del Politecnico di Bari in Via Amendola, 126/B (piano -1). L’evento è, come di consueto, gratuito, ma con posti limitati.

Dove: Amministrazione Centrale del Politecnico di Bari in Via Amendola 126/B,  Sala Videoconferenza (piano -1).
Quando: venerdì 10 marzo 2017 ore 09:00

Non perdere l’occasione di partecipare a questo evento, i posti sono limitati!

REGISTRATEVI QUI

DevOps, Agile e Lean: non è più concesso ignorarli

DevOps è diventato ormai il killer-approach per la delivery di soluzioni che siano in grado di avere un basso time-to-market e ottimizzare l’intero value stream aziendale annesso.

Devo ammettere che da sempre considero DevOps la naturale estensione dell’Agile, con una positiva contaminazione dei principi Lean (che ricordo sono derivati dal mondo manifatturiero), cosa che mi porta ad amare poco il termine “DevOps” in sé perché, almeno lessicalmente, sembra limitare il tutto ai Developer ed agli Operation oltre che all’ambito IT.

solution s curve

Detto questo, è importante evidenziare che DevOps non “appartiene” solo al mondo dell’IT, bensì è un approccio che spinge a far propri i 3 principi portanti: Flow, Feedback e Learning (così come sono oggi riformulati rispetto alla prima enunciazione), per un’azione efficace nella creazione di Servizi e Prodotti negli ambiti più diversi. A tal proposito segnalo l’interessante approfondimento degli amici di AgileReloaded: L’orizzonte allargato di Agile.

Resta comunque indubbio che l’IT è la culla di DevOps, trasformando gradualmente le azioni annesse allo sviluppo di soluzioni complesse da attività “artigianali” ad attività più “ingegneristiche”, con precisi elementi di riferimento. Ciò fa si che le aziende percepiscano sempre più il proprio IT per quello che deve essere: un Asset strategico al servizio del Business e non un Centro di Costo.

E le parole sono estremamente importanti: parlare di “divisione IT” porta ad immaginare un Silos a sé stante con regole proprie e ben identificabili. Ciò è quanto di più semplicistico si possa immaginare perché l’IT è estremamente pervasivo e condiziona, restandone a sua volta condizionato, tutte le aree aziendali.

La centralità di DevOps, anche se non del tutto maturata nel nostro contesto nazionale, è confermata da un’indagine di IDC che oggi ne vede l’adozione in oltre il 70% delle principali aziende mondiali (con livelli diversi e penetrazione diversa) e stima il superamento della soglia dell’80% entro il 2019.

Ma questa penetrazione così profonda, quali sfide comporta?

Anche qui dobbiamo avere una visione olistica del contesto poiché molte aziende che provano a sperimentare DevOps su un progetto pilota o un’area di riferimento, si accorgono rapidamente che è necessario coinvolgere tutte le diverse funzioni aziendali, per cui lo Scaling diventa inevitabile e anche estremamente veloce.

Ma torniamo alla nostra precedente domanda, andando ad evidenziare le sfide primarie che ogni azienda incontra nell’adozione concreta di DevOps e, quindi, nel profondo percorso di trasformazione e cambiamento Culturale:

  • Sponsorship aziendale: adottare DevOps significa investire e avere pazienza nell’ottenere risultati tangibili localizzati a breve termine, ma complessivamente visibili nel medio termine. L’investimento è sia in termini finanziari che in termini di impegno delle Persone (vi prego… non usate il termine “risorse” per indicarle!), per cui solo se è uno dei massimi dirigenti aziendali (CxO) a supportarla, l’adozione potrà avere il sostegno necessario e raggiungere risultati lusinghieri;
  • Abbandonare le rigide strutture di controllo del passato: una Cultura volta al continuo miglioramento, basata su applicazioni empiriche, mal si lega con una organizzazione aziendale basata sul pattern command-and-control, in cui è difficile cambiare. I manager devono imparare a delegare, mentre le linee più operative ad avere coraggio, cercando di rendere la struttura più flessibile ma soprattutto focalizzata sul value stream;
  • Il Core know-how deve essere in azienda: considerare l’IT un “centro di costo” ha portato negli anni ad abusare dell’outsourcing, perdendo conoscenza, controllo e capacità di gestire le nuove sfide di mercato. Questa tendenza deve trasformarsi in un’outsourcing bilanciato in cui gli elementi chiave, per rispondere efficacemente e prontamente al Business, sono all’interno e ci si appoggia ad un’outsourcing controllato per gli elementi corollari (abbiamo parlato abbondantemente di questo aspetto nella serie DevOps and Outsourcing: OutOps);
  • Ridurre la resistenza al cambiamento: DevOps è Cultura, e una trasformazione aziendale nella sua direzione comporta nuovi modelli organizzativi, nuovi ruoli e un diverso approccio alle prospettive di carriera. Questi aspetti spingono ad aumentare la resistenza al cambiamento per restare nella propria “confort zone” e ridurre al minimo la necessità di rimettersi in discussione. È compito dell’organizzazione fare chiarezza su questi aspetti e creare le opportunità a sostegno dei desideri intersechi (leggasi Management 3.0) ed estrinsechi di ogni singolo collaboratore;
  • Fail Fast o meglio… Learn Fast: il fallimento è una componente poco desiderata ma fortemente presente, e a volte indispensabile, nel mondo dei sistemi complessi. Il mantra non deve essere: “non fallire mai…” ma “fallire il meno possibile e quando accade far tesoro del fallimento stesso”. In pratica ogni fallimento diventa un tassello nel cambiamento e nell’ottimizzazione complessiva… chiaramente questo non vuol dire fallire sempre!
  • Mai applicare qualcosa “out-of-the-book”: DevOps è un cambiamento culturale da ricamare nel proprio contesto e come tale necessita di essere capito profondamente nelle sue varie sfaccettature. Non basta comprare un libro e leggere qualche blog per iniziare la propria trasformazione: il rischio di fallimento è estremamente elevato! Meglio affidarsi al supporto di professionisti che accompagnano l’organizzazione a muovere i primi passi e ad individuare gli elementi focali che consentono affacciarsi al mondo DevOps con maggiore fiducia e minori incertezze.

Se tutto questo vi spaventa o vi fa tornare nel “vostro mondo” fatevi una domanda: possiamo permetterci di non cambiare quando tutto sta evolvendo ad un ritmo frenetico ed inarrestabile?

In fondo bisogna lasciare andare il passato per essere padroni del futuro.

Stay tuned J

Blog italiani (e in italiano) nel mondo IT/ICT