Export Jira Dashboard in a click

In questo post andremo a segnalare una funzionalità molto interessante, che risulta molto utile nella realizzazione di documentazione. si tratta dell’addon per Jira PDF View Plugin for Jira (PDF Exporter)

Questo addon, messo a disposizione dalla Midori Global Consulting Kft., permette di poter eseguire diverse tipologie di esportazioni su PDF

Si va dalle issue alle ….. Dashboard. In questo caso la Midori Global Consulting Kft. stessa mette a disposizione un Video di Youtube in cui descrive molto bene come realizzare queste operazioni, che trovate di seguito 🙂

Likes(0)Dislikes(0)

Personalizziamo PORTAL per Jira Service Desk

In questo post affrontiamo una piccola digressione su come possiamo eseguire delle personalizzazioni di PORTAL. Cercheremo di analizzare quali possibilità abbiamo a disposizione e che addons possiamo sfruttare per meglio personalizzare il tutto.

Out-of-the-box

Abbiamo già analizzato, nel blog di MrAddon, quali possibilità abbiamo a disposizione, verificando quali possibili opzioni sono già a nostra disposizione, ma queste non sono tutte sufficienti per poter soddisfare tutte le necessità di cui gli utenti abbisognano.

Il confronto l’ho operato con i vari clienti/utenti con cui mi sono interfacciato.

Risultati immagini per confronto

Che altro possiamo fare?

Iniziamo ad analizzare i vari addon, presenti nel Marketplace di Atlassian, al fine di capire che altro possiamo fare per personalizzare PORTAL

Se vogliamo dare una nuova grafica, possiamo utilizzare  Refined Sites for Jira Service Desk

L’esperienza di RefinedWiki, che ha prodotto l’addon per personalizzare il layout di Confluence, di cui abbiamo già abbondantemente parlato in vari articoli in questo blog, permette di poter modificare ed aggiornare la grafica

Dettaglio dell’addon
Risultato delle modifiche che possiamo operare con PORTAL

Possiamo vedere che PORTAL lo possiamo personalizzare parecchio 🙂

Altra personalizzazione che possiamo eseguire è quella di poter accedere anonimamente a PORTAL senza aver bisogno di eseguire alcuna LOGIN. Il tutto attraverso Anonymous Portal for Jira Service Desk

Questo addon permette di poter generare delle segnalazioni attraverso PORTAL senza avere la necessità di doversi loggare. Si tratta di una estensione di un’altra funzionalità, presente in Jira, che andiamo a personalizzare: Issue Collector.

Il seguente Video fornisce (in inglese) un dettaglio maggiore, in attesa che vi inoltri la solita recenzione in Italiano 😀

Ma torniamo alla possibilità di poter personalizzare l’output di PORTAL. Una delle richieste che maggiormente viene fornita dai clienti è la possibilità di poter visionare, tra le richieste degli utenti, dei campi che normalmente non sono visibili :). In questo caso ci appoggiamo a Ultimate Theming for Jira Service Desk

​This screenshot shows additional fields (Time Spent, Priority) and a sort by Status. Note the Export (CSV) button. There are also added 3 additional search buttons: Requester, Labels and Priority.
Elenco delle richieste specializzato

Abbiamo avuto modo di parlare di questo addon e di testarne le potenzialità. 

Possiamo anche aggiungere delle funzionalità che risolvono anche delle segnalazioni utenti (che come abbiamo già fatto notare, spesso diventano delle forche caudine cui dobbiamo passare con i nostri clienti) che ci obbligano a superare dei problemi che ancora la Atlassian non ha rilasciato.

In questo caso ci viene in aiuto Collective Issue View for Service Desk

​Build up the ideal structure for your special needs by assigning Jira Groups to Units. Those Units could be companies, organisations, teams, departments or whatever you want.

Questo addon ci permette di superare JSD-270 e ci permette di dare visibilità, agli utenti di una stessa organizzazione, delle segnalazioni che riguardano la loro organizzazione attraverso PORTAL. 

Per concludere, possiamo andare a gestire meglio i Knowledge base, che PORTAL mette a  disposizione, attraerso un altro addon (messo a disposizione da  //SEIBERT/MEDIA, ovvero lo stesso produttore che mette a disposizione il precedente addon. 

Si tratta di  Service Desk Knowledge Base Custom Field.

Questo addon mette a disposizione un nuovo campo Custom, che permette di poter condividere degli articoli di KB direttamente nelle risposte verso il cliente, dando la possibilità di renderli disponibili non solo nella ricerca standard, ma anche nelle risposte vere verso i clienti 🙂

Quicker and more profound Support Replies

Conclusione

Abbiamo a disposizione molte possibilità d poter estendere il nostro PORTAL, andando dalla visualizzazione grafica alla aggiunta di nuove funzionalità, le quali spaziano tra diverse possibilità/necessità. Nei prossimi post andremo a verificare gli addon che ancora non abbiamo censito e verificheremo cosa mettono a disposizione testandoli sul campo .

Likes(0)Dislikes(0)

Lo stato di una issue è cambiato. Chi è stato?

In questo post andremo ad analizzare un aspetto molto interessante. Cercheremo come, attraverso gli strumenti di cui disponiamo, sia stato possibile che lo stato di un Workflow sia cambiato Vediamo come

Esploriamo

La domanda che ci siamo posti non è affatto fuori luogo, ma è la classica domanda che ci si pone quando ci si trova di fronte ad un problema e dobbiamo dare delle risposte certe. Sopratutto quando ci sono di mezzo dei clienti. 

Un valido strumento è sicuramente l’Audit Log di Jira, che ci permette di poter scoprire se degli utenti hanno eseguito diverse operazioni, come possiamo vedere dalle seguenti immagini. 

Workflow modificato

Possiamo risalire alle modifiche di un workflow:

Versione iniziale
Modifica

Come possiamo vedere, abbiamo a disposizione un primo strumento non indifferente.

Ottimo, che altro?

Possiamo anche arrivare a vedere altro? Ma larisposta è si. Se andiamo sulla/e issue incriminata/e, possiamo vedere la storia. Ma se aggiungiamo il Jira Suite Utility, abbiamo un ulteriore piccolo aiuto 🙂

Dettagio dell’Addon

Quello che vediamo è l’aggiunta di un TAB nella sezione activity della issue:

Dettaglio

dove abbiamo una indicazione particolare del cambio di stato :). Abbastanza utile. In aggiunta abbiamo che Jira si salva tutte le operazoni che eseguiamo (anche se eseguiamo delle BULK, queste salvano informazioni circa quanto eseguito). Di conseguenza, armiamoci di pazienza ed andiamo a spulciare le operazioni per capire che cosa è successo. Di strumenti ne abbiamo.

Se poi citiamo nuovamente il LastLog della DecadisAG, otteniamo anche la possibilità di poter leggere le informazioni del LOG direttamente da Jira

Dettaglio

Conclusioni

Possiamo risalire a diverse azioni che sono state commesse su Jira e capire chi ha fatto cosa. Come novelli Sherlock Holmes possiamo trovare le risposte che vogliamo. 

Likes(1)Dislikes(0)

Spieghiamo l’Audit Log di Confluence

Torniamo alla didattica

IN questo post abbiamo un ritorno alla didattica, dove andiamo a spiegare come l’Audit Log di Confluence ci può aiutare nel capire che cosa è successo. Andiamo a vedere come.

Audit Log

Si tratta di uno strumento che abbiamo già presente in Confluence. Non abbiamo la necessità di installarlo.  Lo andiamo a reperire nella sezione di amministrazione di Confluence, il Cog Menù, e da li lo andiamo ad attivare.

Questo strumento mostra diverse informazioni:

Come possiamo vedere ci offre diverse informazioni e ci permette di poter visionare:

  • Le operazioni che sono state eseguite sugli Space, da chi ha creato lo Space a chi lo ha Cancellato :). Informazione molto utile.
  • Le operazioni su gruppi ed utenti, dove possiamo arrivare a capire chi ha creato un gruppo a chi ha aggiunto un utente ad un gruppo, etc.
  • Le operazioni sulle configurazioni globali.

Questo Audit Log non permette di andare oltre un certo livello. Di conseguenza se vogliamo andare a visionare chi ha fatto cosa a livello di pagine, ci dobbiamo basare su di un addon, che abbiamo già avuto modo di visionare. LastLog per Confluence.

che ci permette di poter visionare il log della nostra istanza in maniera semplice, rapida e veloce.

Conclusioni

Un piccolo suggerimento per risparmiarci tanti dolori di testa e un aiuto non indifferente per toglierci le castagne dal fuoco.

 

Reference

Per maggiori informazioni vi rimando alla pagina della manualistica ufficiale, dove troverete (in lingua inglese) tutte le informazioni su Audit Log.

Likes(0)Dislikes(0)

Uso avanzato di Issue collector

Uso avanzato …

In questo post andremo a descrivere un uso avanzato dell’Issue Collector

Presentazioni doverose

Issue Collector è una funzionalità out-of-the-box, o se preferite standard, di Jira che permette di inserire un form all’interno di un qualsiasi sito web, attraverso il quale permettere di inserire delle issue su Jira, senza doversi connettere a Jira, e senza utilizzare utenze di Jira. Un vantaggio non indifferente.

Un esempio lo vediamo nella precedente immagine e nella seguente

Interessante ma ….

… come possiamo specializzare i campi presenti? come possiamo inserire questo codice in altri siti? Proviamo a dare delle ulteriori indicazioni.

 

La prima cosa che vi dico è che se volete inserire dei campi particolari, DOVETE INSERIRLI NEL CREATE VIEW della ISSUE TYPE dove avete definito le ISSUE COLLECTOR.

Esempio. Se avete definito un campo ESEMPIOCAMPO e lo vogliamo visualizzare nel nostro issue collector, allora lo dobbiamo inserire nella lista dei campi del nostro CREATE issue dello scheme, come mostrato in figura:

e solo dopo, quando andiamo a definire il nostro issue collector, allora lo ritroviamo nella lista dei campi selezionabili, come mostrato nella figura successiva

 

Vogliamo specializzare anche il come si richiama?

Si può fare 🙂 . Possiamo generare andando a generare un issue collector specificando un trigger custom, come indicato in figura

dopo di che basta impostare un codice come il seguente, nella pagina web che volete impostare:

<head>
	<!-- We pasted the generated code from the Issue Collector here, after choosing a custom trigger -->
	<!-- This is the script for the issue collector feedback form -->
	<script type="text/javascript" src="<JIRA URL>/s/en_US-ydn9lh-418945332/803/1088/1.2/_/download/batch/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector.js?collectorId=d03d7bd1"></script> 
	<!-- This is the script for specifying the custom trigger.  We've replaced 'myCustomTrigger' with 'feedback-button' -->
	<script type="text/javascript">
		window.ATL_JQ_PAGE_PROPS =  {
			"triggerFunction": function(showCollectorDialog) {
				//Requries that jQuery is available! 
				jQuery("#feedback-button").click(function(e) {
					e.preventDefault();
					showCollectorDialog();
				});
			}
		};
	</script>
</head>
<body>
	<h2>JIRA Issue Collector Demo</h2>
	<a href="#" id="feedback-button" class='btn btn-primary btn-large'>Report feedback</a>
</body>

 

In questo modo quello che otteniamo è un link che ci permette di attivare il nostro issue collector. Il risultato è riportato nel seguente GIF:

Conclusione

Abbiamo visto come possiamo usare questa funzionalità e dove possiamo spingerci. Come sempre sfruttiamo tutte queste per costruire quanto ci serve.

 

Reference

Maggiori informazioni sono reperibili alla seguente pagina della documentazione.

Likes(0)Dislikes(0)

Atlassian Team Tour…. in Italia – Prima Tappa Milano

Milano…

In questo post andremo a raccontare questa prima giornata dell’Atlassian Team Tour .

 

Arrivato a Milano ….

alle 9.00 circa, sopravvivendo al caotico traffico metropolitano, carico come una molla e pronto per questo evento che si preannuncia straordinario. Dopo essermi aggregato a tutti, si inizia a predisporre l’evento

 

… subito a predisporre l’evento ….

Dopo una doverosa ed abbondante colazione, post viaggio da Bologna, si inizia subito con una riunione per preparare l’evento.

 

Alla fine siamo pronti.

Ed eccoci tutti pronti per iniziare

belli carichi come delle molle

Senza dimenticare Giulio, che è riuscito a superare grandi difficoltà 🙂

 

Si inizia

Con un piccolo rinfresco per gli ospiti che arrivano, per meglio accoglierli all’evento.

 

L’evento inizia

Si inizia con una introduzione da parte di Vladimir Cavalcanti, che introduce tutti i vostri interventi

descrivendo tutte le fasi dell’evento e gli argomenti che saranno trattati, catturando l’interesse delle partecipanti

Gli interventi

Apre gli interventi Cristian Berardi di GetConnected, che presenta Quando il PPM incontra l’Agile.

Segue subito dopo l’introduzione di Paolo Serra all’intervento di Peter Herzum, di HerzumDevOps for Enterprise. Case study and Case history.

Segue l’intervento di Claudio Ombrella, già reduce dell’intervento in Italia presso AUG Bologna, che fornisce ulteriori dettagli dell’esperienza che Autodesk ha fatto su Jira.

Segue l’intervento di Giulio Iannazzo, dove ci ricorda che….  C’é un momento nel percorso tipico di un cliente Atlassian quando le applicazioni diventano critiche per il business, é il momento di valutare Atlassian come partner strategico

Ultimo intervento è il mio, dove descrivo come questi prodotti della Atlassian, possono essere utilizzati in ambiti NON IT

Termina l’evento Vladimir Cavalcanti, dove riassume il tutto e, dopo aver invitato tutti gli speaker, per rispondere tutti insieme alle domande.

Conclusioni

Un grande evento ed un successo. Ho ricevuto molti feedback positivi e spero che tutti i partecipanti abbiano potuto tornare a casa con tantissime informazioni e tantissime indicazioni per migliorare il proprio lavoro.

Ci vediamo al prossimo evento a Firenze.

 

Likes(2)Dislikes(0)

Riportare le board e le card di Trello in Confluence Server

Parliamo di integrazione

IN questo post riportiamo, in lingua italiana, quanto avevo riportato nel blog di MrAddon.

Integriamo Trello in Confluence

Andiamo con ordine e calma. Vediamo come possiamo integrare Trello nella nostra istanza Cloud. Qui siamo facilitati: Abbiamo a disposizione una macro ad hoc che ci permette di integrare Trello

Questo il risultato:

dove possiamo interagire con Trello direttamente dalla pagina di Confluence Cloud.

Fantastico. Ma se abbiamo la versione Server?

Possiamo ancora integrare Trello ma in maniera meno … interattiva. Infatti possiamo usare la HTML Macro (ricordiamoci di attivarla dato che è normalmente disattivata).

con il risultato di avere una icona che ….. ci aiuta a richiamare direttamente Trello

Conclusioni

Abbiamo visto due esempi di integrazione. uno per Cloud ed uno per Server.

 

Reference

Trovate informazioni sull’articolo di MrAddon e anche sul sito di Trello.

Likes(1)Dislikes(0)

Come richiamare delle dashboard di altre istanze JIRA

Un semplice tutorial

IN questo post andremo a descrivere come possiamo richiamare delle altre dashboard attraverso le funzioni standard out-of-the-box

 

Quali possibilità abbiamo?

Seguendo quanto riportato nella manualistica di Jira, reperibile nella seguente pagina, abbiamo la possibilità di poter sfruttare la potenza dei Gadget di Jira per poterli condividere ed usare come vogliamo.

Occorre quindi procedere alla creazione di un Application Link tra la nostra istanza di Jira e le altre istanze che vogliamo leggere

Quindi procediamo con creare una subscription verso i gadget che ci interessano

Fatto ciò, possiamo aggiungere il nuovo gadget direttamente nella nostra Dashboard e possiamo così leggere i dati di altre istanze di Jira.

Conclusioni

Abbiamo presentato un piccolo suggerimento che ci potrebbe aiutare nella gestione delle informazioni. Nei prossimi post cercheremo di descrivere altre soluzioni per aiutarci.

 

Reference

Maggiori informazioni sono reperibili alla seguente pagina, già citata in precedenza, che ha ispirato il seguente post 🙂

Likes(0)Dislikes(0)

Uso congiunto di Addons – Vediamo l’esempio di Exporter di Xpand

Uso congiunto di Addons

In questo post andremo ad affrontare un argomento molto interessante : come usiamo in manieta congiunta più addons. Si tratta di una questione molto importante in quanto, in determinati ambiti/necessità, si vuole utilizzare due funzionalità di due addon differenti 🙂

Giusto per chiarire …

…. questo articolo è stato ispirato da un articolo molto bello, riportato da Rui Rodrigues e pubblicato nel blog della Xpand. L’obbiettivo di questo mio post è di riportare, in Italiano, quanto indicato. Si tratta di un Guest Post di Ihor Uksta della iDalko Software Developer ,Atlassian Platinum Solution Partner in Belgio.

Come sempre si tratta di una missione impossibile, ma la affrontiamo con coraggio e cerchiamo di riportare quanto descritto nell’originario, aggiungendo anche una serie di commenti necessari per chiarire o per meglio aiutare nella comprensione.

Iniziamo con le presentazioni

In questo post mostreremo come usare in maniera congiunta due addon molto interessanti. Il primo lo conosciamo molto bene e si tratta di Xporter. Lo abbiamo presentato e testato già in passato e, come tutti gli addon molto interessanti, ne seguiamo sempre tutte le evoluzioni 😀

Il secondo, non meno importante, è Table Grid, che permette di estendere Jira con funzionalità molto interessanti, che adesso andiamo a presentare:

Dalla precedente figura, vediamo che permette di poter inserire delle griglie che, sempre basandoci su quanti vediamo, possiamo inserire delle informazioni come le nostre spese e avere anche dei campi si totali/subtotali etc.

Permette di aggiungere dei campi speciali, come sequence, checkbox radio button, listbox fisse o dinamiche.

Permette di avere delle liste a cascata: i valori che trovi nelle liste successive sono conseguenza dei valori scelti nella lista precedente.

Come possiamo vedere si tratta di un addon molto interessante: lo testeremo  ben bene nei prossimi post.

 

Come possiamo usarli insieme?

Entriamo nel vivo di questo post 🙂 . Il Table Grid, permette di gestire dei campi Table, come abbiamo visto in precedenza. Si tratta si una  Driving Table, una opzione di Table Grid, che permette di inserire delle tabelle nelle issue. Nella figura seguente:

si tratta della tabella etichettata come Developer RateConfiguriamo questa tabella come segue, come mostrato in figura:

Una piccola digressione sulla configurazione, che richiede una spiegazione molto più dettagliata.

Spieghiamo le seguenti proprietà:

  • gd.columns – stabilisce la lista, separata da virgole, delle colonne
  • gd.tablename – Stabilisce il nome della tabella
  • gd.ds – Il nostro datasource. Nell’esempio di tratta di Jira stesso.

For the first column, we’ll define the type ‘userlist’. It means that all your Jira users will be listed in a column. Afterwards, we can limit them to only one group ‘developers’, and set it as ‘required’ when inserting a row to the table.

Tutte le proprietà definite nell’esempio sono reperibili al seguente indirizzo.

Dettagliamo meglio le caratteristiche per definire una singola colonna:

col.developer.type=userlist
col.developer.required=truecol.developer.allow.roles = developers
col.developer.formatUser={username}
col.developer.autocomplete=truecol.rate=Rate
col.rate.type=number

(Vi rimando al test che eseguirò per un dettaglio più completo delle singole proprietà di una tabella, con tutte le spiegazioni: oramai vi ho abituato molto bene).

Andiamo adesso a definire un nuovo campo, per meglio mostrare il funzionamento di questo uso congiunto

andiamo a definire il valore di default

con la seguente configurazione.

gd.columns=developer,totalhours,startdate,enddate,salary
gd.tablename=teaminfo
gd.ds=jiracol.developer=Developer
col.developer.type=userlist
col.developer.required=true
col.developer.allow.groups = developers
col.developer.formatUser={username}
col.developer.autocomplete=true
col.developer.width=150col.totalhours=Hours Spent
col.totalhours.type = number
col.totalhours.formula = queries:value(‘jira’, “SELECT timeworked FROM worklog where created >=  ‘” + {startdate} + “‘ and updated <= ‘” + {enddate} + “‘ and author = ‘” +{developer} + “‘”) / 3600
col.totalhours.width= 120
col.totalhours.formatNumber = #.## h
col.totalhours.summary = sumcol.startdate=From
col.startdate.type=date
col.startdate.defaultDate = -1wcol.enddate=Till
col.enddate.type=date
col.enddate.defaultDate = +1dcol.salary=Salary
col.salary.type= number
col.salary.formatNumber = #.## $
col.salary.formula = queries:value(‘jira’, “SELECT rate FROM developer_rate_d2 where developer = ‘” + {developer} + “‘”) * {totalhours}
col.salary.summary = sum

Come possiamo osservare, si tratta di una configurazione che permette di definrie anche campi calcolati, interrogazioni al datasource definito, etc.

Terminata la configurazione, ed inserito il nuovo campo nelle opportune screen del progetto, possiamo sfruttare subito queste nuove informazioni

come mostrato in figura, ed arrivare a generare il report del team report issue, in maniera semplice e rapida.

ottenendo il seguente risultato

 

Adesso che abbiamo i dati …. Report

Passiamo subito al report. Qui entra in gioco Xporter che, come già indicato nei precedenti post, permette di definire il template da utilizzare

utilizzando i metatag tra {}. Quindi configuriamo il template:

Sempre nella fase di configurazione, andiamo a definire dove il template sarà disponibile, ovvero se lo sarà su esportazione, su bulk function, workflow post-functions, etc.

Manteniamoci sul semplice e andiamo ad usarlo solo nella fase di esportazione semplice della issue

ottenendo il seguente risultato:

Giudizio?

Una sola parola: S P E T T A C O L O. Abbiamo utilizzato la combinazione di due addon per generare un risultato spettacolare. Questo significa che possiamo generare dei report che permettono di riassumere tutta una serie di lavori in maniera ….. SEMPLICE. Non male come risultato.

 

Che altro?

Possiamo aggiungere diverse altre caratteristiche:

 

Table Grid Editor

  • Datasource nell’esempio leggeva da Jira, ma potrebbe essere configurato per leggere i dati da un database separato ed incrociare i dati;
  • Issue values placeholders to be used in formulas or SQL queries (issue id, assignee, etc.).
  • Possiamo inserire dati dinamici da altri campi
  • Il campo custom Table Grid Reader, che è in sola lettura, può essere compilato con query SQL.
  • Campi custo Multi-Level Cascade , i quali hanno  drop-down dinamici popolati attraverso query SQL i quali potrebbero avere delle dipendenze tra di loro. Questo è anche compatibile con Service Desk.
  • Java and Rest API sempre diponibili.

Xporter

  • Esportare in formato PDF, XLSX, PNG, DOC, CSV ed altri ancora.
  • Esportare altre informazioni quali linked issues, sub-tasks, commenti, worklogs, allegati ed altro ancora.
  • Generare documentazione basata su un insieme di più issue.
  • Creare ed inviare documenti via mail verso un file server.
  • Post-functions to trigger export event on issue transitions.

Come potete vedere abbiamo tantissime possibilità di espandere questo esempio al fine di coprire le nostre necessità.

 

Conclusioni

Abbiamo visto un uso congiunto di due addon e di come ci possono aiutare nella vita di tutti i giorni. Nei prossimi post cercheremo di mostrare molto più nel dettaglio altri utilizzi congiunti 🙂

 

Reference

Vi riporto l’articolo originario della portoghese XPand, che potete reperire al seguente indirizzo.

 

Likes(0)Dislikes(0)

Trello + Confluence = Strumento perfetto

Continuiamo ad esplorare

In questo post andremo ad esplorare l’integrazione tra Confluence e Trello. Proseguiamo il nostro viaggio esplorativo su Trello e vediamo come integrarlo sui vari applicativi Atlassian 🙂

Ispirazione

Questo post è il risultato di un post del blog di Trello, che potete leggere in questo link.

Come possiamo integrarli?

Sicuramente Trello può sfruttare le grandi potenzialità di Confluence Cloud (in questo casi si sfrutta il fatto che si tratta di due applicativi cloud e quindi sfruttiamo questa caratteristiche)  e quello che possiamo fare è:

  • Allegare pagine di Confluence Cloud alle Card di Trello  oppure crearle direttamente da Trello
  • Vedere se ci sono pagine allegate a Trello  (lo vediamo nelle card a fianco degli allegati) compresi i commenti.
  • Una semplice animazione per vedere come creare una semplice pagina Confluence

Conclusioni

L’unione fa la forza. In questo caso abbiamo unito la semplicità di utilizzo di Trello con la potenza di Confluence per la documentazione.

 

Reference

Maggiori informazioni li potete reperire, come indicato all’inizio del post, in questo link.

Likes(0)Dislikes(0)