Un nuovo addon da esaminare

In questo post andremo ad esaminare un addon che ci mette a disposizione una funzione interessante. Vediamo in dettaglio addon e funzione.

Esplorazione alchemica

Le presentazioni

L’addon che vogliamo descrivere

Questo addon ci permette di poter eseguire delle operazioni interessanti, ovvero:

  • Permette di definire un template di issue
  • Possiamo precompilare titolo e descrizione della issue

A questo punto abbiamo una cosa molto interessante

Fonte Marketplace

Dalla precedente immagine possiamo vedere come l’addon permette di definire un template. Ci avete fatto caso? abbiamo lo stesso sistema che abbiamo per creare una issue. Questo significa che non dobbiamo imparare nulla di particolare.

Fonte Marketplace

Possiamo definire, nell’ambito dello stesso progetto, una template per issue type. Lo vediamo dalla precedente immagine

Interessante, lo provo subito

Partiamo subito dalla prima operazione. Installiamo l’addon nella nostra istanza. Come sempre vediamo come procedere.

Configurazione Generale

Proseguiamo con la configurazione generale che l’addon. Ci accediamo dal menù principale Apps.

Le funzioni che sono presenti nella sezione

Da li possiamo referenziare i vari template che abbiamo definito. Possiamo anche accedere dalla sezioen Apps presente nelle Project Settings. Faccio una annotazione. Potrebbe darsi, per chi ha installato l’addon quando ancora era gratuito, potreste trovare una immagine come la seguente

Quello che si può vedere nella installazione che ho usato per i miei test

Da li andiamo a definrie il template che andremo ad usare. Vediamo come si configura un template

La GIF ci mostra come eseguire la configurazione da zero del template e l’assegnazione ad un progetto

Come possiamo osservare, la creazione di un template non richieste alcuna complessità: Sembra quasi che creiamo una nuova issue. L’assegnazione non è altro che una semplice opzione che andiamo a selezionare.

Proviamo quanto abbiamo configurato

Adesso proviamo il tutto e verifichiamo il risultato.

Un semplice esempio di utilizzo.

dalla Gif sopra riportata, vediamo che l’utilizzo è molto semplice e ci permette di poter generare le issue direttamente compilate come abbiamo definito.

Conclusioni

Abbiamo un addon che ci permette di poter generare delle issue pre-compilate come ci servono con pochissima configurazione. Questo addon non risulta molto difficile da usare e permette di poter risolvere alcuni casi di uso che mi sono stati richiesti nel corso della mia vita lavorativa. La prova è stata eseguita con la versione free dell’addon. Nel momento in cui scrivo è disponibile una versione a pagamento che sicuramente presenta delle ulteriori funzionalità.

Reference

Maggoori informazioni sono reperibili dalla pagina del Marketplace.




Ancora una piccola precisazione sulle Automation

Credo che sia sempre ottimo precisare e dare ulteriori indicazioni sulle Automation, che sono un mondo molto vasto ed interessante. Cerchiamo di fare una piccola precisazione che sicuramente sarà molto utile.

Procediamo senza indugio

Nel dettaglio

Quello che abbiamo a trattare riguarda il come generare un task affinché sia collegato ad una Epic. Come sappiamo la Epic è un caso eccezionale tra tutte le issue presenti su Jira. Si tratta dell’unica issue type che permette di poter avere delle Issue figlie. I motivi li abbiamo trattati in altri post precedenti ma credo che a breve li andremo a riprendere. 😉

Un esempio ben dettagliato di questa gerarchia

Se vogliamo introdurre questa informazione quando usiamo le regole di automation ci accorgiamo di una cosa: Usando l’azione di Edit Issue, quando selezioniamo il campo Epic Link, non riusciamo a passare il valore. Qualcosa non funziona.

Un dettaglio della azione

Il risultato non è quello sperato. Sembra quasi che l’azione non si esegua. Quindi?

Ragioniamo e verifichiamo

Nozioni di Storia di Jira

Dobbiamo sapere (da storico dilettante non posso esimermi) che originariamente non esisteva la gestione Agile su Jira. E’ stata aggiunta da un addon (greenhopper) che ha introdotto questo aspetto. Atlassian si è buttata a pesce ed ha acquisito l’addon. Adesso sembra tutto integrato, ma….. in realtà credo ci sia una separazione ancora netta. Credo che sotto sotto sia rimasto un addon separato e di conseguenza anche il campo sia gestito in maniera separata.

Ho scartabellato e verificato ed il risultato è questo articolo del Community: Il campo va gestito esattamente come un qualsiasi campo custom. Passiamo al Json:

Uno schema del JSON da usare

Se usiamo questa indicazione, riusciamo ad arrivare all’obiettivo.

Conclusione

Un ringraziamento a tutti coloro che hanno partecipato a questa discussione che ha permesso la redazione di questo articolo in Italica Lingua.

Grazie.

Un ultimo appunto:

Mentre componevo questo articolo, ho notato una cosa molto carina. Atlassian sta rivedendo l’interfaccia grafica della sezione delle regole di Automation. Infatti:

URCAAAAAA

promette bene. Vedremo nei prossimi mesi che cosa succederà.




Creiamo un link ad una pagina di Confluence su Jira

In questo post affrontiamo un argomento interessante, inerente le Regole di Automazione. Già recentemente abbiamo parlato, in questo post, di come la gestione dei limiti di queste regole cambiano dal prossimo primo novembre. Vediamo in questo caso come sopperire ad una necessità, ovvero come possiamo aggiungere un link ad una Pagina di Confluence ad una issue, direttamente da Regola di automazione.

Come moderni Bandeirantes, andiamo in esplorazione

Andiamo con ordine

Vogliamo associare ad una issue, quella che ha causato l’esecuzione della nostra regola, una pagina di Confluence ben precisa. Una cosa che notiamo subito è che non abbiamo a disposizione una azione specifica attraverso le Automazioni. DI conseguenza siamo leggermente frustrati. La domanda sorge spontanea. Come possiamo fare??

Stiamo calmi

Abbiamo una soluzione

Ebbene si. Possiamo sfruttare una delle azioni che meglio si adegua per poter agganciare una pagina ad una issue. In particolare possiamo sfruttare questa azione:

Send Web Request è quello che ci serve

Da questa azione possiamo fare ua cosa molto semplice: Chiamare una API di Atlassian e agganciare la pagina alla issue. ma vediamo quale è la API che andiamo a richiamare.

https://yourdomain.atlassian.net/rest/confluenceIssueLink/1/confluence?issueId={{issue.id}}&pageUrl={{createdPage.url}}

Questa è la chiamata alla API che ci interessa

Quello che occorre fare è impostare i parametri che ci servono e successivamente applicarli tramite la regola.

Il risultato è il seguente:

Un esempio che ho impostato su di un mio ambiente di prova

Conclusione

Questo è molto interessante. Possiamo agganciare una pagina Confluence alla nostre issue in maniera veramente semplice. Ci sono degli accorgimenti da tenere presente quando si utilizzano delle API, ma ne parleremo in maniera più approfondita in separata sede. Si tratta di una sorpresa. Rimaniamo in contatto.

Reference

Un ringraziamento a tutti i partecipanti a questa discussione della Atlassian Community, dove è stato chiarito questo punto e che ha permesso di poter scrivere questo articolo in Italica Lingua.




Database exporter – Come ti estraggo i dati dal Cloud

In questo post andremo ad esaminare un addon che ci permette di poter estrarre i dati dal Cloud in modo da permetterci di poter eseguire delle interrogazioni mirate.

Esplorazione alchemica in corso

Una premessa importante

Chi lavora con il Cloud sa perfettamente che quando vogliamo eseguire delle interrogazioni sui dati, la risposta è sempre una. Il seguente memo ce lo spiega

Vediamo di chiarire il punto

Sul Cloud non abbiamo alcuna possibilità: Ci è precluso l’accesso al database interno. Di conseguenza non possiamo fare nulla per lanciare query… almeno fino ad ora.

Abbiamo una soluzione

Inventato da Bob Swift ma adesso sotto il controllo della Appfire, abbiamo un addon che ci aiuta in tal senso, fornendoci la possibilità di costruire un simil-database su cui poter eseguire le nostre interrogazioni.

L’addon di cui parleremo oggi.

Questo addon è nato con l’obiettivo di ricostruire un database simile, rispetto a quello che avevamo a disposizione con la versione onPremise, e permettere agli utenti cloud di riuscire a ricostruire delle query ed interrogazioni.

Fonte Marketplace

Come possiamo vedere dalla precedente immagine, riusciamo a ricostruire sia i dati della parte standard, compresi i campi custom. Dalla documentazione dell’addon abbiamo a disposizione anche uno schema dati che ci spiega come ricostruire le relazioni tra le varie tabelle:

Fonte: Documentazione dell’addon

Possiamo, attraverso questo addon, ricostruire un simil-database (non è proprio il database effettivo: Teniamolo sempre a mente).

L’addon al momento permette di poter estrarre i dati direttamente su di un database Postgresql. Questo ci limita un pò i movimenti, ma non più di tanto. Se in azienda abbiamo uno standard che ci impone l’utilizzo di altre tipologie di Database (ad esempio: In azienda si usano database MS SQL Server). Tuttavia, usando dei server Linux, il problema viene risolto.

Punti di attenzione

Dobbiamo però tenere sempre a mente alcuni punti di attenzione. Ricordiamoci sempre che il nostro Cloud Atlassian è prevalentemente una macchina virtuale localizzata su Internet e di conseguenza abbiamo:

  • Il nostro cloud deve poter accedere al database e di conseguenza questo deve essere raggiungibile da internet
  • Essendo raggiungibile da internet, occorre che questo database sia gestito in maniera opportuna.
  • Non possiamo esporre direttamente i nostri database verso internet
  • Il database da usare deve essere un database che viene immediatamente blindato o svuotato non appena viene compilato

Come si può vedere non si tratta di semplici raccomandazioni, ma di punti di attenzione molto importanti. Se non li rispettiamo abbiamo dei problemi abbastanza seri.

Se perdiamo i dati questa sarà la nostra espressione.

Di conseguenza abbiamo molto da considerare.

La mia esperienza

Ho avuto modo di collaudare questo addon direttamente presso un mio cliente e posso dire che l’addon lavora in maniera egregia. Nel senso che i dati estratti sono effettivamente il clone dei dati. Ma vorrei fare alcune ulteriori considerazioni.

Abbiamo principalmente i dati dello standard

Non ci facciamo illusioni. Non riusciamo a disporre di tutti i dati come nel caso delle nostre installazioni onPremise. Infatti quando possibile, si accedeva anche ai dati degli addon semplicemente andando a leggere le tabelle con prefisso AO%, come riportato in questa documentazione ufficiale Atlassian.

In questo caso l’addon ricostruisce, con buona approssimazione, le informazioni standard e attraverso opportune query, riusciamo a leggere le informazioni che ci servono.

Solo alcuni addon sono disponibili

L’addon riesce a leggere i dati di alcuni addon, come TEMPO TIMESHEET, ma una cosa che ho notato è che le informazioni che sono scaricate sono sotto forma di un JSON che deve essere ‘lavorate’ per poter estrarre i dati che servono.

Possibile eseguire backup totali ed incrementali

E’ possibile eseguire entrambe le modalità. Nel mio caso, potrebbe essere utile eseguire un primo backup generale e poi tutti i backup incrementali. Questo aiuterebbe notevolmente

Conclusioni

Abbiamo un addon interessante ma che deve essere usato con tutti i crismi del caso. Possiamo estrarre i dati che ci interessano e fare le statistiche personalizzate del caso, anche se in ultima istanza suggerisco di appoggiarsi ad appositi tools che permettono di poter portare le informazioni di Jira su PowerBI o QLIK e consentono di gestire le statistiche molto meglio che con un semplice database da rimettere in piedi.

Come sempre riporto le mie indicazioni perché, questo sicuramente lo avrete compreso leggendo i miei post, che è sempre meglio avere più possibilità che solo una possibilità. La libertà di scelta è una arma molto potente che intendo sempre sfruttare e mettere a disposizione, anche quando eseguo le mie consulenze.

Reference

Maggiori informazioni sono reperibili alla pagina del Marketplace.




Rendiamo le nostre pagine di Confluence più belle

In questo post andremo ad analizzare come possiamo rendere le pagine di Confluence più belle e cercheremo di costruire alcuni esempi per mostrare come possiamo gestire al meglio queste soluzioni.

L’idea è di comporre la nostra soluzione per realizzare un SuperConfluence

Confluence, non ha bisogno di presentazioni

Conosciamo tutti il valore di Confluence, anche se non sempre riusciamo a valorizzarlo al meglio. Quasi sempre lo utilizziamo come un contenitore delle nostre informazioni, ma spesso e volentieri ci offre tantissimo di più.

Ho speso molte parole in vari articoli in cui ho indicato le potenzialità di Confluence come ECM (Enterprise Content Management), dove ho indicato le possibilità che Confluence offre per poter gestire al meglio i contenuti.

Un esempio di come possiamo organizzare i contenuti su di una pagina di Confluence (Fonte: Atlassian)

Adesso ci proponiamo l’obiettivo di portarci un gradino più avanti, cercando di capire come possiamo aggiungere elementi di grafica e come poterli sfruttare al meglio

Cosa abbiamo a disposizione?

Abbiamo esplorato e collaudato un addon che ci permette di aggiungere elementi grafici e componenti che ci permettono di renderlo molto carino e interessante. Sto parlando di Macrosuite della Caelor.

Fonte: Atlassian Marketplace

Questo addon ci permette di inserire degli elementi grafici alle nostre pagine e non solo:

Fonte: Atlassian Marketplace

Osserviamo che possiamo inserire degli elementi che ci permettono di trasformare le nostre pagine e renderle molto più belle ed interessanti. Questo ci permette di scatenare la nostra fantasia

Fonte: Atlassian Marketplace

Abbiamo a disposizione delle procedure che ci aiutano nella modifica ed impostazione delle pagine, anche se non siamo dei grafici. Questo ci aiuta notevolmente nella gestione di queste pagine, semplificandoci il lavoro.

Fonte: Atlassian Marketplace

Interessante, ma è l’unico?

No. Non è l’unico e nei prossimi post andremo anche ad esaminare altri addon che offrono funzioni simili. Il nostro obiettivo non è quello di proporre LA soluzione unica (non serve a niente). Non esiste. Mettiamolo bene in conto. Ci serve sempre capire la soluzione che meglio si adegua alla situazione che stiamo esaminando. Solo così riusciamo a risolvere le necessità dei clienti.

Conclusioni

Abbiamo un addon molto interessante che ci aiuterebbe nella gestione delle pagine. Ho in mente un test molto interessante per saggiarne le potenzialità. Nel prossimo articolo proverò vedere come si comporta.

Reference

Maggiori informazioni sono reperibili nella pagina del Marketplace.




Manteniamo sincronizzati i nostri Space di Confluence

In questo post andremo ad esaminare come possiamo gestire una sincronizzazione di Space, sia nella stessa istanza, che su istanze differenti. Andiamo in modalità esplorativa

Vestiamo i panni del moderno alchimista

Introduzione dello scenario

Lo scenario che mi piacerebbe implementare serve nel caso di problemi che si possono presentare nella istanza di produzione. Se abbiamo a disposizione una istanza, minore con un numero inferiore di utenti, possiamo avere un backup sempre pronto all’uso che ci permette di poter ripristinare in tempi brevi l’operatività, permettendoci poi di ripristinare tutti gli aggiornamenti nel caso di riattivazione dell’ambiente di produzione.

Questo articolo rientra in un insieme di studi che sono nati dopo che ho pubblicato questo articolo, visto che sono stato uno dei fortunati a ricevere questa situazione. Per questo motivo voglio avere delle alternative da poter ottenere un esempio di Disaster Recovery anche per le nostre istanze Atlassian Cloud.

Vediamo in questo articolo come riuscire a creare un ambiente di Disaster Recovery

Come possiamo eseguire questa operazione?

Analizzando il Marketplace, operazione che eseguiamo quotidianamente, identifichiamo il seguente addon che ci permette di eseguire la sincronizzazione di due space relativi a due istanze Cloud differenti.

In questo caso abbiamo un addon che ci può aiutare.

Andiamo ad esaminarlo.

Che cosa offre l’addon

L’addon permette di eseguire una sincronizzazione da uno Space all’altro, nell’ambito di una stessa istanza, ma anche su istanze differenti. Questa funzionalità ci permette di poter creare degli scenari non indifferenti, permettendo di creare degli ambienti di Disaster Recovery, ma non solo. possiamo anche sfruttare questa funzionalità anche in scenari in cui dobbiamo gestire l’approvazione dei contenuti. Le idee scorrono potenti 🙂

Questa volta ci vuole 😛

Il seguente schema riassume il funzionamento e ci permette di capire come ragiona l’addon

Fonte: Marketplace Atlassian

Osserviamo che la sincronizzazione, una volta impostata, è bidirezionale, di conseguenza qualsiasi operazione eseguita in uno degli Space viene immediatamente riverberata sugli altri. Non solo. Oltre alla sincronizzazione completa dello Space, abbiamo anche la sincronizzazione della singola pagina, come vediamo dalla seguente figura:

Fonte: Marketplace Atlassian

dove vediamo tutti i collegamenti impostati e abbiamo la possibilità di poter sincronizzare anche le singole pagine. La stessa interfaccia ci permette di capire se abbiamo eseguito l’aggiornamento della pagina o meno.

Fonte: Marketplace Atlassian

La configurazione non risulta impossibile, sempre guardando le schermate che sono presenti sul Marketplace. Viene fatto uso di Token per rendere sicura la sincronizzazione.

Convinto subito: Lo provo.

Iniziamo quindi a Installare l’addon. Come sempre ci serviamo di una GIF animata per vedere come eseguire l’installazione dell’addon.

Nota Bene – Lo installo ovviamente su due istanze per poi anche provare la sincronizzazione tra due istanze cloud differenti.

Andiamo ad analizzare subito la configurazione generale, cui accediamo dal menù Apps

Che ci mostra l’elenco degli space disponibili e ci fornisce il link diretto alla configurazione, che ci permette di poter accedere alla configurazione diretta dell’addon che è presente nelle configurazioni dei singoli Space

Se selezioniamo Edit sync settings veniamo reindirizzati alla pagina di configurazione vera e propria.

La configurazione di una sincronizzazione non richiede tantissimo. Semplicemente definiamo una sincronizzazione in quello che è lo Space sorgente. Da questo andiamo a scaricare il Token (è un file JMT), che andremo a caricare nella configurazione dello Space Destinazione.

A questo punto ho creato prima una sincronizzazione tra due Space di una stessa istanza e successivamente una sincronizzazione tra due istanze. A tale scopo ho due istanze Cloud dedicate allo scopo che ho preparato per un test che è diventato questo Case Study. Mi sono quindi limitato a configurare e a verificare

Ho scelto questi Space perché presentavano delle informazioni differenti ed ho verificato come si comportavano.

Un esempio di esecuzione negli ambienti di test Cloud

Come possiamo vedere dalla GIF animata, l’esecuzione è molto semplice e non abbiamo molti output. Lo stesso LOG non ha dato alcun risultato e non abbiamo nulla da vedere dopo. Questo è un punto importante.

Anche l’esecuzione della parte multiistanza non presenta molti problemi:

Esecuzione sincronizzazione della multiistanza

Vediamo che il risultato mostrato è il medesimo.

Andando ad analizzare il tutto, vediamo che le operazioni hanno sincronizzato le pagine, ma ho notato una cosa: La Homepage degli Space non viene sincronizzata.

Infatti Il mio space ‘sorgente’ ha questa homepage

Lo Space ‘Commerciale’
Lo space privato del mio utente, usato come Space destinazione

Osserviamo che per la Homepage non abbiamo a disposizione alcun menù che ci mostra lo stato della sincronizzazione. Mentre per le altre pagine abbiamo tale funzione disponibile.

La pagina con la dialog box indicante lo stato della sincronizzazione

La pagina con la Dialog box indicante lo stato della sincronizzazione

Vediamo la stessa pagina con la Dialog box sui due spazi distinti. Lo stesso risultato lo abbiamo anche quando usiamo la sincronizzazione su multistanza.

Risultato del test

Il risultato è sicuramente positivo ma ho notato alcune cose. Sono abbastanza sicuro del perché ci sia il comportamento che ho notato, ma voglio esserne sicuro e quindi lo evidenzio qui. Sono sicuro che gli autori dell’addon mi confermeranno le ipotesi.

  1. La Home page dello Space non risulta inclusa nella sincronizzazione.
  2. La sincronizzazione avviene copiando dallo Space origine verso lo Space destinazione
  3. Non vedo i log delle operazioni, sia quando sono in esecuzione sia quando sono concluse le operazioni di sincronizzazione

La Homepage non viene sincronizzata ma ho il dubbio che, per come è organizzato Confluence, l’addon non riesca ancora ad eseguire questa operazione.

Eseguire la sincronizzazione in una direzione piuttosto che in entrambe le direzioni non lo vedo come un problema. Nello scenario che ci siamo posti come obiettivo, non è affatto un problema in quanto prima di usa una delle due istanze come Disaster Recovery e di conseguenza la sincronizzazione è in una direzione. Solo dopo può essere necessario sincronizzare nella direzione inversa in quanto, nel caso in cui la produzione non risponde, allora serve la sincronizzazione per ripristinare la produzione.

Cosa più importante sono i LOG. Il fatto che non riesca a vederli durante l’esecuzione e poi a sincronizzazione eseguita, lo vedo come un problema. Nel caso di malfunzionamento, occorre sempre capire la causa e i LOG sono fondamentali. Di conseguenza questo punto deve essere visto dai produttori dell’addon in modo da renderlo disponibile sempre e anche facilmente consultabile.

Conclusione

Il mio giudizio è sempre positivo: abbiamo un addon molto interessante, anche se non riusciamo in pieno ad implementare la soluzione del Disaster recovery. Il fatto di non riuscire a copiare per intero la pagina iniziale dello Space, non è proprio il massimo, ma non ci scoraggiamo. Abbiamo uno strumento in più da poter usare per i nostri obiettivi. Non abbiamo uno strumento che esegue perfettamente la sincronizzazione come ci aspettiamo, ma riusciamo comunque ad avere un risultato che ci si avvicina. In aggiunta ci vedo un altro possibile utilizzo: quando gestiamo una documentazione e abbiamo un processo abbastanza complesso di approvazione delle modifiche, quello che possiamo fare è usare 2 space: uno per la documentazione ufficiale e uno per redigere le modifiche. Quando la modifica viene approvata, questa viene sincronizzata con lo Space ufficiale. Quindi, questo ci deve insegnare a non abbandonare un addon se non esegue proprio quello che ci interessa, ma semplicemente lo andiamo ad applicare ad altre situazioni

Reference

Maggiori informazioni sono disponibili alla pagina del Marketplace




De Automation Rules Eloquentia

Scrivo questo articolo quasi di getto e per rispondere alle ultime novità sul mondo delle Automazioni. Principalmente sulla parte Cloud di Jira. L’obiettivo è di fornire un quadro situazione per mostrare il funzionamento delle ultime novità e per indicare anche come poterle gestire correttamente. A tale proposito ho predisposto una regola di tipo didattico per descrivere meglio il funzionamento, ma andiamo con ordine.

Marzo 2023

Verso la fine del mese di marzo 2023 succedeva una cosa leggermente strana. Mi segnalavano che nelle istanze Cloud l’addon delle Automation risultava in TRIAL e sopratutto era ben staccato. Di conseguenza molti miei clienti si sono preoccupati (ma non solo loro).

Da un rapido controllo era emerso che Atlassian stava semplicemente integrando l’addon trasformandolo da addon esterno a addon di Sistema.

Infatti se andate a controllare, oggi lo troviamo come addon di sistema.

Quello che viene mostrato dalla sezione degli Addons-Apps

Fino a questo non ci sarebbe molto altro da dire… tuttavia abbiamo anche delle altre sorprese. L’integrazione si è portata dietro anche delle novità. Vediamole nel dettaglio:

Automation manuali

Una delle novità riguarda l’introduzione delle Automation manuali, ovvero richiamabili su richiesta dall’utente

Nuova funzionalità… ma…. 😮

Notiamo tuttavia una cosa molto molto … preoccupante. La combo che permette di richiamare questa nuova funzione è vicinissima alla combo del passaggio di stato. Molti mi hanno fatto notare (e sono perfettamente d’accordo) che la probabilità di selezionare la combo sbagliata è altissima. Devo riconoscere che la Atlassian ha introdotto una funzione importante, ma tempo che nella foga del momento non abbia ben calcolato dove inserire tale funzione, scegliendo una posizione infelice. Il mio suggerimento è di trattarla come le funzioni degli addon. Esiste la sezione dedicata alle Automation. Credo che sia meglio inserirla li

Notiamo che il messaggio ci da la ferale notizia

Non sono d’accordo con il messaggio. A mio giudizio questa sezione è quella ideale per gestire tale funzionalità.

Che altro?

Ci sono anche delle altre novità. Abbiamo a disposizione, sempre lato Automazioni, delle nuove funzionalità interne che ci permettono di poter gestire meglio delle …….. TABELLE DI LOOKUP

INTERESSANTE

Vedo che ho catturato la vostra attenzione. Andiamo subito al sodo. Se infatti ricerchiamo tra le possibili azioni, abbiamo la possibilità di poter creare questa tabella:

Siamo ancora alle prime armi, ma possiamo subito vedere che il potenziale ci sta tutto. Anche se limitato a 20 entry massimo, possiamo impostare una serie di corrispondenze che possiamo sfruttare a nostro vantaggio.

Per richiamare le corrispondenze abbiamo a disposizione un semplice metodo. Infatti questa tabella si definisce come uno Smart Value. Basta semplicemente usare:

{{Esempio.get(issue.summary)}}

per richiamare la corrispondenza. In questo esempio abbiamo la possibilità di poter sfruttare anche degli altri Smart Value. Cosa molto importante.

Finalmente non avremo dei cicli IF THEN ELSE infinitiiiiiiii

Risultato, Conclusioni?

Semplice: Abbiamo la possibilità di poter gestire queste regole in maniera molto più semplice, ci liberiamo dalla schiavitù di blocchi IF-THEN-ELSE potenzialmente infiniti e abbastanza difficili da gestire. Ci permette di dare un ordine non indifferente e, come vediamo, anche di gestire al meglio queste situazioni. Ripeto. Siamo alle prime armi. Le novità non sono sempre cattive, ma hanno sempre del potenziale. Dobbiamo sempre vedere il potenziale, senza mai perdere di vista i punti di attenzione.




Jira Cloud e i database – Una ipotesi di lavoro interessante

Un annoso problema che ci assilla è causato dal fatto che non sempre possiamo collegare Jira Cloud con i Database….. fino ad ora. Qualche mese fa stavo eseguendo delle sperimentazioni che mi hanno portato a scoprire un addon molto interessante. Adesso, dopo la sperimentazione posso descrivere i primi risultati.

Modalità sperimentatore Alchimista in azione

Descriviamo lo scenario

Questa situazione la conosciamo bene. Quando i clienti ci chiamando perché vogliono leggere le informaizoni dai loro database locali e le vogliono rendere reperibili anche su Jira Clòoud. Questa di solito è la nostra faccia

La scena è presa dal celebre film THE MASK, ma descrive bene come ci riduciamo

Proviamo a chiarire. Sappiamo beniussimo che il nostro Cloud è una macchina remota AWS localizzata, nel nostro caso, a Dublino o Francoforte (quindi GDPR RISPETTATA. CHIARO??). Concetto da tenere sempre presente è che Jira Cloud è su Internet e di conseguenza per poter accedere ad un database, questa macchina su internet deve essere (UDITE UDITE) autorizzata.

Ora, se andiamo in una azienda qualsiasi, i responsabili della sicurezza avrebbero qualcosa da dire. Se apriamo una porta del genere, occorre ben presidiarla oppure si rischia di fare dei danni. Ricordiamoci sempre che quando si apre una porta su internet, prima o poi si rischia che qualcuno di non desiderato entri dentro senza il nostro permesso. Fa parte dei rischi.

Ok. Adesso vediamo quali precauzioni possiamo prendere

Quali precauzioni?

Possiamo prendere diverse precauzioni per far si che chiunque tenti di entrare non possa andare oltre un certo limite e, se anche dovesse arrivare, li si fermi. Parafrasando il celebre film “Il Codice da Vinci”, mi permetto di citare un verso della Bibbia: (Giobbe 38-11). e dissi: `Fin qui tu giungerai, e non oltre; qui si fermerà l’orgoglio de’ tuoi flutti?’

Possiamo fare in modo che il database che colleghiamo a Jira Cloud sia una copia con pochi dati. In questo modo, anche se qualcuno dovesse arrivare a leggerli, le informazioni siano parziali e non servibili allo scopo. Questo però implica che:

  • i dati devono essere aggiornati a cadenze regolari
  • In alcuni istanti i dati non saranno perfettamente disponibili (intendo gli ultimi)
  • In ogni caso se qualcuno arriva li, legge dei dati e potrebbe comunque tentare delle operazioni di ricostruzioni.

Sicuramente questo è un sistema per limitare il danno, ma non eliminiamo completamente la possibilità di eliminare il danno.

La vera precauzione consiste nell’inserire il database direttamente su Jira, o sulla macchina remota. Solo così avremmo a disposizione la possibilità di poter gestire una sicurezza molto alta. Se il database è già interno a Jira, allora abbiamo la sicurezza di Atlassian che ci protegge. Tuttavia la macchina remota NON è usabile da parte nostra e non credo che Atlassian ci permetta di poter mettere mano a tali macchine dall’oggi al domani. Di conseguenza le possibilità sono molto ridotte….. oppure no?

Non disperiamo. Abbiamo una soluzione

Ebbene si. Abbiamo una soluzione. Possiamo portare i dati direttamente su Jira e usarli come un database e per questo obiettivo un potente addon ci permette di poter gestire questa situazione. ma come?

Semplice. Possiamo memorizzare i dati all’interno di un progetto di comodo, dove i record sono presenti nelle issue. Come ben sapete, le issue possono diventare qualsiasi cosa noi vogliamo. Questa è una delle grandi possibilità che Jira mette a disposizione di noi utenti.

Come dice la stessa immagine, e allora?

Benissimo. Se mappiamo i record usando le issue type seguendo questa logica: è un tipo di record. Nell’issue type andiamo a memorizzare i dati che ci servono, utilizzando i campi custom per memorizzare anche altre informazioni del nostro record. Risultato? abbiamo il nostro database locale.

A questo punto passiamo alla seconda domanda. Come lo usiamo?

Anche qui ci viene incontro uno splendido addon che ci aiuta a rispondere a questa seconda domanda. Si tratta di:

Scheda su Marketplace Atlassia dell’addon

Questo addon permette di poter eseguire delle interrogazioni direttamente su Jira come se fosse un database. In questo caso abbiamo a disposizione la nostra arma segreta: il JQL; che ci aiuta nell’interrogare i dati senza grandi problemi. Lo stesso lo possiamo fare con questo addon che ci permette di poter gestire il risultato finale.

L’addon permette di poter creare una connessione a Jira Cloud stesso . Questo consente di gestire Jira Cloud come un database e, come sempre sostengo da immemore tempo, il JQL ci aiuta a creare la query di selezione dei dati

La configurazione che l’addon mette a disposizione quando si collega a Jira Cloud Stesso.

Moooolto interessante e quale è il risultato?

Il risultato finale è che abbiamo a disposizione la possibilità di definire dei campi ‘database’, se mi si può concedere la libertà di scrivere così, dove i valori visualizzati sono prelevati dal progetto che abbiamo definito su Jira

Un esempio di progetto a mo di Database

Sfruttando l’addon possiamo ottenere questo risultato:

Come possiamo vedere, l’addon ci permette di poter sfruttare le issue di un progetto come se si trattasse dei record del nostro simil-quasi-database (concedetemi questo termine), ma l’utente finale non vede questa cosa: per lui è una lista. L’addon permette anche di poter aggiornare il campo a cadsenze regolari. Ciò che si deve fare e aggiornare l’elenco delle issue del progetto che abbiamo battezzato. L’addon può essere programmato per far si che l’elenco sia aggiornato a cadenza regolare.

Ovviamente consiglio di trovare un compromesso al tempo di aggiornamento che vogliamo: Questo per evitare comunque di sovraccaricare la nostra istanza di Jira Cloud.

Risultato?

Abbiamo una nuova arma in più per definire un database all’interno di Jira e sopratutto abbiamo la possibilità di poter mantenere una discreta sicurezza senza aprire quella della nostra sicurezza. In aggiunta, questo sistema può essere usato anche per:

  • definire assets aziendali senza avere insight
  • definire delle tabelle di un database interno a Jira
  • definire delle semplici liste valori aggiornabili facilmente
  • definire quello che vogliamo all’interno di Jira.

L’unico limite è la nostra fantasia.

Un mio appunto personale

Il 29 Giugno ho avuto il piacere di presentare questa soluzione al Meetup Madrid/Buenos Aires. Mi permetto di condividere il Video del mio intervento, disponibile su Linkedin

Reference

Maggiori informazioni sull’addon sono disponibili nella pagina del marketplace.




Appsvio – Primi test sul campo

In questo post andremo a descrivere i nostri test sulle App che Appsvio ci mette a disposizione. Li ho visti in azione e ho partecipato all’ACE di Boston, dove ho avuto il piacere di fare uno Speech. Li ho testati sul campo su situazioni reali e cercherò, in questa sede, di descrivere gli scenari che ho affrontato.

Modalità alchimista esploratore ON

Customer and Organization Management for JSM

E’ il primo addon che ho avuto modo di vedere in azione e le mie impressioni sono più che positive. Lo scenario che ho visto riguarda la gestione degli utenti esterni di un Service desk. Il mio obiettivo era quello di creare rapidamente e, sopratutto, in maniera molto semplice, un insieme cospicuo di customer. ribadisco. ESTERNI.

Se il cliente deve gestire tale situazione, usando la gestione standard, dette out-of-the-box, abbiamo una sola alternativa: FARLO A MANO.

Un esempio tratto da un mio ambiente di prova

L’addon ci permette di poter gestire questa operazione in modo più agevole. Una interfaccia non indifferente ci aiuta ad eseguire questa operazione

Un esempio: Sempre dal mio ambiente di prova, dove ho creato degli utenti di prova senza alcuna fatica
Come organizziamo le organizzazioni…. facilmente
L’opzione che. ho usato

L’ultima immagine svela come ho fatto. Questo addon mette a disposizione una funzione per poter importare, usando un semplice CSV file, gli utenti che ci servono. Usando questo barbatrucco, possiamo creare tutti i customer esterni che ci servono.

Non ho mica finito

Il test continua nel prossimo post e vedremo che cosa ci permette di fare il prossimo addon Appsvio. Stay Tuned.

Lo studio continua



Retrospettiva: Come la gestiamo al meglio – Test addon

In questo post andremo ad testare un addon molto interessante, in cui vediamo come gestire al meglio le Retrospettive dei nostri sviluppi, o anche delle sole operazioni. Se vi ricordate, ne avevo parlato anche in altri miei post in passato, dove indicavo come questa caratteristica come una operazione fondamentale da usare anche per analizzare i problemi e impostare delle risoluzioni.

Ho indicato nel mio precedente post di presentazione, che questo addon ben si presta anche ad altri utilizzi. In questo articolo andremo a valutare anche queste possibilità. Proviamo a sperimentare.

Trasformiamoci in moderni Alchimisti e procediamo con il test

Installazione

Come sempre partiamo dalla installazione dell’addon, verificando i vari passi. A tale scopo, usiamo una delle tante istanze id test che ho a disposizione.

Come sempre vediamo l’installazione che siamo abituati a vedere

Configurazione Generale

Procediamo con la configurazione generale. La prima operazione che dobbiamo fare è quella di attivare il progetto affinché possa utilizzare le nuove funzioni: L’addon mette a disposizione una interfaccia generale da cui accedere alle funzionalità offerte. Dal menù Apps abbiamo a disposizione una apposita voce di menù:

Il primo punto di ingresso che abbiamo a disposizione

La seguente GIF ci mostra cosa viene mostrato alla selezione della voce di menù Apps:

Vediamo anche come attivare le funzionalità dell’addon su di un progetto

In un mio ambiente di test ho predisposto un progetto di sviluppo software per poter eseguire il test, come potete vedere dalla seguente immagine.

Il progetto di prova già abilitato

Cosi come abbiamo abilitato il progetto usando le interfacce dedicate dell’addon, abbiamo la stessa possiblità anche nelle configurazioni del progetto.

Visualizzazione dalla dashboard di progetto, dove abbiamo a disposizione una apposita voce per richiamare l’addon

Procediamo con la configurazione da adottare sul singolo progetto. In questo caso impostiamo la prima configurazione usando quanto l’addon stesso mette a disposizione. In particolare selezioniamo Setup Retrospective e….

Selezione del template da usare. In questo caso abbiamo usato il Basic 5.

A questo punto selezioniamo Join Retrospective e procediamo con il test.

Test addon

Procediamo con il test canonico. In questo caso abbiamo usato il template standard e abbiamo iniziato a lavorare gestendo una retrospettiva. Nella prima fase andiamo a censire tutte le indicazioni di:

  • cosa è andato bene
  • cosa non è andato bene
  • cosa è piaciuto
  • cosa non è proprio piacuto
Un primo esempio

Un timer ci ricorda che la fase deve durare il giusto tempo, senza che le persone del gruppo di lavoro siano impegnate troppo tempo. Possiamo comunque interrompere questo timer in qualsiasi momento. Una volta identificati tutti i punti, si procede con la fase successiva:

La sezione Present, presenta tutti i punti che saranno discussi.

Possiamo in questo punto sempre andare a modificare ed integrare i vari punti che sono stati espressi dal gruppo di lavoro.

Come possiamo editare il contenuto di ogni scheda

A questo punto Possiamo eseguire delle ulteriori operazioni

Possiamo raggruppare i vari punti in modo da facilitarci nella consultazione

A questo punto possiamo votare i punti rimanenti per poterli poi discutere

Un esempio di voto impostato

A questo punto procediamo con i punti votati per arrivare a definire quali punti devono essere affrontati per migliorare la produttività del gruppo di lavoro

Iniziamo a discutere i punti votati

Iniziamo a impostare le azioni da intraprendere

Un esempio di possibili azioni

A questo punto possiamo concludere la retrospettiva e questo è il risultato:

Le due immagini mostrano un esempio del report finale

A questo punto, da questo report abbiamo la possibilità di poter generare dei task che possono essere assegnati e lavorati per poter chiudere la retrospettiva e giungere al miglioramento.

Il menù che permette di poter creare anche delle issue vere e proprie

Un uso alternativo dell’addon

Vediamo in questo capitolo come possiamo fare un uso alternativo dell’addon.

Ho esaminato il funzionamento e mi viene una strana idea. Se utilizziamo questo addon per arrivare a definire un … Requisito Funzionale? Potrebbe essere una idea delle tante che mi sono balzate in testa.

A questo scopo andiamo a definire un nuovo template

La sezione che permette di gestire i modelli e crearne di nuovi

Creiamo quindi il nostro nuovo modello

Un esempio che mi costruisco per definire un requisito.

A questo punto ripetiamo le operazioni che abbiamo visto in precedenza

Il nuovo modello è subito disponibile
Abbiamo questo risultato

Quindi? il risultato che abbiamo a cosa ci porta?

Semplice: Possiamo adeguare questo addon per definire un percorso che ci aiuta nel ragionamento e nel determinare il risultato che vogliamo ottenere. Le colonne che possiamo definire, ci aiutano a determinare un workflow molto semplice, che ci permette di guidarci. In aggiunta ci permette di poter standardizzare il modo con cui ragionare in ambito aziendale e questo è molto importante se vogliamo che un domani, quando altre persone vogliono lavorare nella redazione di un nuovo requisito, il workflow sia il medesimo.

In questo caso specifico che ho riportato, risulta quindi possibile inserire tutti i punti che ci aiutano nella definizione di un requisito funzionale e che ci permettono di poter schematizzare questa analisi, che ci porta a definire il requisito. Ovviamente ho inserito un esempio.

Possiamo a questi punto fare una considerazione. Abbiamo la possibilità di poterci definire tutto quello che vogliamo. Possiamo usare questo addon per definirci qualsiasi lavorazione di cui abbiamo bisogno qualsiasi workflow che ci aiuti nel raggiungere un determinato obiettivo. L’unica limitazione è la fantasia.