Come impostare una integrazione ServiceNow Jira: la guida completa 2020

integrazione servicenow jira

Man mano che le aziende crescono, la necessità di integrare dati tra piattaforme diverse diventa sempre più inevitabile. Ad esempio se lavori in ServiceNow e hai un partner o un cliente che utilizza Jira, una integrazione ServiceNow Jira sembra essere la soluzione migliore per una collaborazione senza soluzione di continuità.

In questa guida analizzeremo la necessità di integrare gli Incidents di ServiceNow con le Issues di Jira (sebbene questo processo possa essere applicato anche ad altre entità, come Problemi, Casi, Richieste di modifica, ecc.)

In primo luogo, tratteremo del perché gli amministratori scelgono di impostare l’integrazione ServiceNow Jira. Come scegliere la tecnologia giusta per configurare l’integrazione. E infine vedremo passo-passo il processo per configurarlo.

Nota: in questo tutorial, utilizzeremo uno strumento di integrazione chiamato Exalate per impostare l’integrazione. Imparerai di più su questo prodotto così come su altre opzioni di integrazione.
Ecco una panoramica di ciò che tratteremo:

  1. Perché integrare ServiceNow e Jira
  2. Come scegliere la tecnologia giusta per impostare l’integrazione
  3. Come impostare l’integrazione di ServiceNow Jira (procedura dettagliata)

Perché integrare ServiceNow con Jira

Guardiamo ai vantaggi di una integrazione ServiceNow Jira.
Pensando all’IT service management, ServiceNow si dimostra una scelta mainstream per il CIO e il direttore dei dipartimenti IT che merita considerazione.

Nata come un’innovativa piattaforma cloud di nicchia per gestire i processi ITSM basati sulle best practice ITIL, ServiceNow ha guadagnato un’enorme popolarità negli ultimi anni. Attualmente conta oltre 20.000 clienti in tutto il mondo e sta crescendo rapidamente.

D’altra parte, quando si pensa allo sviluppo di software agile, viene subito in mente Jira.

Come parte dell’offerta di prodotti Atlassian, Jira gestisce issue e progetti per i team Software. E si integra perfettamente con altri strumenti di sviluppo Atlassian. In breve, per molti team Software, Jira è la scelta naturale per la gestione di issue e progetti. Ciò è particolarmente vero quando anche altri prodotti Atlassian vengono utilizzati per lo sviluppo.

Tenendo presente il posizionamento sopra descritto di ServiceNow e di Jira nell’ambito della gestione dei servizi IT e dello sviluppo software, la necessità di integrazione diventa evidente.

Qui ho riassunto due esempi di possibili scenari:

1. Il dipartimento IT di un’azienda utilizza ServiceNow per fornire agli utenti un portale One-Stop-Shop per tutti i servizi IT. Ciò include issues di segnalazione sul software. I team software interni utilizzano Jira per gestire issues/progetti. Preferiscono generalmente la suite Atlassian perché viene utilizzata per Coding e Collaboration.

  • Gli Incidents segnalati da un utente su ServiceNow devono essere inoltrati a Jira come “Issues” che devono essere risolte dal team Software
  • Quando il team Software rileva problemi di infrastruttura, devono essere inoltrati a ServiceNow come “Incident”.

2. Una società utilizza ServiceNow per l’ITSM e uno o più pacchetti software sono forniti da un fornitore esterno. Il fornitore del software tiene traccia dei problemi relativi al software di tutti i clienti attraverso Jira. Quindi per gli Incident in ServiceNow deve creare una Issue su Jira e ottenere aggiornamenti sullo stato.

Come scegliere la tecnologia giusta per configurare la tua integrazione

Quando si progetta un’integrazione tra due strumenti di ticketing, è sempre necessario considerare tre aspetti:

  • Autonomia: i tool di ticketing ai due estremi dell’integrazione hanno le risorse per controllare quali informazioni vengono inviate dall’altra parte e come le informazioni in entrata vengono interpretate. Le modifiche sugli strumenti di ticketing non devono interrompere l’integrazione. Piuttosto dovrebbero riflettersi facilmente nell’integrazione.
  • Affidabilità: un’integrazione affidabile è quella che funziona sempre per l’utente, anche quando l’altra parte non è disponibile per qualsiasi motivo (come la manutenzione). La capacità di manutenzione operativa è importante per garantire l’integrazione sempre attiva.
  • Flessibilità nella configurazione: l’integrazione è in grado di colmare le differenze tra i due sistemi. Essere in grado di attribuire efficacemente uno schema è un primo passo obbligatorio. Avere la flessibilità di allineare le differenze di processo tra i team o le organizzazioni, il secondo passo.

In questa guida, configureremo l’integrazione utilizzando Exalate proprio perché Exalate (Idalko) è stato realizzato per soddisfare i requisiti di cui sopra e inoltre soddisfa i criteri per gli scenari descritti di integrazione di ServiceNow e Jira.

Nei capitoli seguenti mostreremo in modo più dettagliato come Exalate affronti gli aspetti di cui sopra . Ma prima, passiamo uno step alla volta attraverso il processo di impostazione di questa integrazione!

Come impostare un’integrazione ServiceNow Jira (step-by-step)

Step 1: installa l’app Exalate sull’istanza di ServiceNow

Per installare Exalate sull’istanza di ServiceNow, dovrai utilizzare un “set di aggiornamento”.
Le istruzioni dettagliate sull’installazione dell’agente Exalate per ServiceNow sono disponibili nella seguente pagina della documentazione Exalate:


Installazione dell’app Exalate sull’istanza di ServiceNow

Step 2: installa l’app Exalate sulla tua istanza Jira

Affinché Exalate funzioni, deve essere installato su entrambe le parti da integrare.
Questo significa che dovrai anche installare Exalate su Jira. Sarà un semplice processo di installazione di un’app Jira.
Puoi trovare le istruzioni dettagliate per l’installazione dell’agente Exalate sulla tua istanza Jira qui:

Step 3: dai un’occhiata alla console Exalate

La console Exalate fornisce un’interfaccia utente per gli amministratori di sistema per configurare e mantenere l’integrazione.
Dopo l’installazione, la console Exalate dovrebbe essere direttamente accessibile come un’Applicazione nell’istanza di ServiceNow:

Anche sulla parte di Jira vengono fornite opzioni di configurazione simili:

Con la console Exalate è possibile, da un lato, creare / mantenere la propria configurazione. Dall’altro, è possibile anche visualizzare Sync Queues e controllare / risolvere errori (Errors).
Queste funzionalità aiuteranno a mantenere l’integrazione in modo efficiente.
Ma passiamo alla configurazione di una connessione tra le tue istanze di Jira e ServiceNow.

Step 4: stabilire una connessione tra Jira e ServiceNow

1. Invia un codice di invito

Una volta installato l’agente Exalate su ServiceNow e Jira, è necessario impostare le connessioni tra i due agenti Exalate.
Entrambe le parti possono avviare la connessione oppure accettare l’invito alla connessione dall’altro lato.
Di seguito sono riportate istruzioni dettagliate per impostare la connessione tra i due sistemi:

Ma ecco un riassunto di cosa significa nella pratica.
Dovrai prima avviare una connessione nella scheda Connessioni.

Dovrai quindi scegliere il tipo di connessione. Questo significa connettersi con l’altra parte che può essere accessibile o non accessibile.

Image

Poi dovrai scegliere tra i modelli di regole di sincronizzazione preesistenti. Non preoccuparti di configurarlo correttamente, potrai modificarlo in seguito. Torneremo su questo allo Step 6.
L’unica cosa che resta da fare qui è scegliere un nome per la connessione e “Avviare la Connessione”.

Image

Quick note:  è possibile attivare e disattivare l’opzione Attivo, il che significa che è possibile preparare una connessione prima che sia necessario avviarla.
Questo passaggio genererà un codice di invito. Dovrai copiarlo in modo che l’altra parte possa accettare l’invito.

Image

2. Accetta il codice di invito

Quel codice che hai appena generato è quello che utilizzerai per accettare l’invito dall’altra parte. Quindi, spostati sull’altro strumento, vai su Connessioni e “Accetta Invito”.


Vai avanti e incolla il codice qui:

Image

Il codice verrà validato automaticamente dopo aver fatto clic su Avanti.
Il tipo di connessione verrà impostato automaticamente in base alle informazioni contenute nell’invito.
Sarai in grado di configurare le regole di sincronizzazione per questa parte in modo separato dall’altra. Questo è stato fatto apposta affiché ogni parte rimanga autonoma.
Tuttavia, come dicevamo non è ancora necessario configurarlo qui. Lo configureremo più avanti allo Step 6.
Dopo aver accettato l’invito e aver stabilito una connessione, possiamo passare all’impostazione di una regola che fungerà da trigger per la sincronizzazione.

Step 5: configura i trigger di sincronizzazione per determinare quando eseguire la sincronizzazione

Una volta stabilita una connessione tra ServiceNow e Jira, può iniziare la parte principale del lavoro di integrazione.

Avere entrambe le parti allineate sulle regole di sincronizzazione

In questa fase, è necessaria una stretta collaborazione tra i responsabili degli Incidents e delle Issues per determinare quando un Incident della parte ServiceNow deve creare una Issue in Jira o viceversa.
L’accordo può essere definito su ServiceNow Exalate e Jira Exalate in modo indipendente, consentendo tutti gli scenari possibili. Tuttavia, è anche possibile che tu sia un unico amministratore per entrambe le parti.

Imposta un trigger di sincronizzazione automatica

Se i responsabili del processo hanno stabilito che ogni volta un Incident viene assegnato a un gruppo di assegnazione chiamato “Jira ServiceDesk”, è necessario creare una Issue sul lato Jira.
Il trigger definito in Exalate ServiceNow sarà simile al seguente:

Image

Dovrai quindi scegliere il tipo di connessione. Questo significa connettersi con l’altra parte che può essere accessibile o non accessibile.

Image

Step 6: configura la tua connessione per determinare le informazioni da inviare

Una volta che un Incident su ServiceNow soddisfa le condizioni definite dal trigger, ServiceNow Exalate ottiene accesso all’Incident tramite l’API REST.

Configura la sincronizzazione in uscita

Quali informazioni debbano essere inviate a Jira Exalate viene definito nelle Regole di Sincronizzazione della Connessione >> Sincronizzazione in Uscita (Connection Sync Rules >> Outgoing sync).
Ecco uno screenshot di come appare:

Image
  • <attributes> rappresenta gli attributi del messaggio. Nel nostro caso, rappresenta Jira Exalate.
  • <attributo> rappresenta gli attributi del record locale. Nel nostro caso, rappresenta gli Incident di ServiceNow.

L’esempio sopra è uno schema semplice e immediato. Tuttavia, in questa sezione è possibile definire una mappatura più complessa usando script groovy. Exalate fornisce una serie di helper di script per ridurre lo sforzo di elaborarli da soli.

Configura la sincronizzazione in entrata

La sincronizzazione in entrata (Incoming Sync) determinerà come interpretare le informazioni ricevute.
Le regole su come interpretare i dati in arrivo vengono sempre configurate nelle Regole di Sincronizzazione della Connessione.
In ServiceNow Exalate esiste una distinzione tra quando un Incident viene creato oppure aggiornato.
Nell’esempio di seguito, viene si definisce l’impostazione per memorizzare /contenere il collegamento a Jira Issue all’attributo correlation_id dell’Incidente ServiceNow. Il correlation_name dell’Incident è impostato su Exalate.

Image

Proprio come con le regole di sincronizzazione in uscita, si possono impostare script di mapping più complessi. Di seguito è riportato un esempio di mapping degli Incident States di ServiceNow con lo stato di Jira Issue (ancora una volta Exalate Script Helpers può aiutare a ridurre lo sforzo di scripting):

Image

Ulteriori informazioni su Exalate come soluzione di integrazione

Potresti avere alcune domande sul perché abbiamo utilizzato la soluzione Exalate per configurare l’integrazione Jira ServiceNow.
Qui spiegherò qualcosa in più sull’architettura e sulla sicurezza di Exalate.

Autonomia in architettura

La configurazione architettonica di base di Exalate come attivatore dell’integrazione tra due sistemi è illustrata di seguito:

Image

Nel nostro scenario Tracker (Blue) rappresenta la tua istanza ServiceNow, Tracker (Red) rappresenta l’istanza Jira Server o Cloud.
Tracker (Blue) e Tracker (Red) dispongono di un agente Exalate separato dedicato a ServiceNow / Jira.

  • Le lettere A -F rappresentano il flusso di informazioni tra i sistemi. ServiceNow e Jira comunicano tra loro tramite l’agente Exalate dedicato, mantenendo l’autonomia del sistema.
  • L’agente Exalate (connesso a ServiceNow) controlla quali informazioni vengono inviate e come vengono mappate le informazioni in entrata.
  • L’agente Exalate è disponibile per l’istanza di ServiceNow, Jira Cloud, Jira On-Premise, HP ALM / QC, Github, Zendesk e altri sono in arrivo.

Sicurezza

Exalate è un middleware intelligente che fa transitare i dati tra ServiceNow e Jira.
La considerazione sulla sicurezza è descritta in dettaglio nel seguente whitepaper, scaricabile gratuitamente: “Exalate Security and Architecture Whitepaper“.


L’immagine seguente spiega i diversi modelli di deploy supportati da Exalate.
Exalate for ServiceNow può essere distribuito sia cloud che on-premise.

Image

Confronto tra Exalate e IntegrationHub con Jira Scope

ServiceNow stesso ha una funzionalità chiamata IntegrationHub che consente integrazioni riutilizzabili con sistemi di terze parti, richiamabili da qualsiasi punto della piattaforma ServiceNow.
L’uso di IntegrationHub richiede di fare una sottoscrizione a parte.
Il pacchetto standard di IntegrationHub include un Jira Spoke con un numero (limitato) di azioni che consente a ServiceNow di gestire issues, utenti, stories e gruppi in Jira. E recupera i dati Jira da utilizzare nel flusso.
Jira ha parlato di V2.5 che utilizza webhook bidirezionali e aderisce a Jira con un URL di richiamata ServiceNow.

Image

Quindi, perché utilizzare uno strumento di terze parti, come Exalate, per impostare l’integrazione?
Di seguito ho aggiunto alcune considerazioni:

1. Usa Exalate quando

  • L’integrazione è bi-direzionale. In questo modo entrambe le parti saranno in grado di attivare l’integrazione e decidere le informazioni da scambiare.
  • L’integrazione è da punto a punto tra i due sistemi.

2. Utilizzare IntegrationHub quando

  • ServiceNow ha il ruolo di orchestrazione per creare un flusso automatizzato, coinvolgendo diversi sistemi.
  • ServiceNow controlla il trigger dell’integrazione, mentre il sistema remoto (nel nostro caso Jira) è quello che riceve i comandi

Conclusioni

Molti team ITSM adottano ServiceNow come la migliore soluzione del settore. Mentre i team di sviluppo e il Project Management considerano ancora ampiamente Jira come la soluzione ideale.
Poiché una collaborazione efficiente è cruciale per qualsiasi organizzazione efficace, le integrazioni tra questi sistemi sono sempre più comuni.
Quando si sta considerando la tecnologia giusta per impostare l’integrazione, è importante tenere conto di questi tre aspetti:

  • Ciascuna parte ha autonomia rispetto alle informazioni in uscita e in entrata, e come vengono interpretate?
  • La soluzione è abbastanza affidabile per continuare a funzionare indipendentemente dalle modifiche apportate all’altro lato dell’integrazione?
  • La soluzione è abbastanza flessibile da coprire un’ampia varietà di casi d’uso ed evolversi con il tuo modo di lavorare?

In questa guida, abbiamo impostato l’integrazione utilizzando Exalate. E abbiamo descritto la procedura dettagliata su come completare questa integrazione.


Per saperne di più sull’integrazione Jira e ServiceNow o chiederci supporto, scrivi al nostro team!

CONTATTACI!