Skill
28
page-template-default,page,page-id-28,page-parent,infographer-core-1.0.3,leco-cp-login,infographer-theme-ver-2.1,ajax_fade,page_not_loaded,no_delay,qode_page_title_on

La pagina cerca di dettagliare in breve le caratteristiche delle capacità utilizzate durante l’esperienze professionale. Ogni singolo “skill” si collega a uno o più dei progetti che costituiscono la mia esperienza.

per un dettaglio sulle esperienze suggerisco una visita alla pagina

 

L’

analisi funzionale è alimentata da una analisi formale dei requisiti, e consiste nel “fornire risposta”, alle esigenze evidenziate dai requisiti. L’analisi funzionale può evidenziare ipotesi di possibili soluzioni tecniche, ma quando lo fa deve sempre tenere conto che la competenza in merito è sempre dei team di progettazione e di architettura. Molto importante è invece l’enfasi da dare sulla esatta natura delle richieste e nella correttezza della traduzione funzionale che ne viene effettuata.
Una buona analisi funzionale normalmente riesprime i requisiti raccolti in termini di direttive di progettazione e dettaglio minuto sulle richieste. L’ambito può spaziare dalla sola descrizione degli incrementi funzionali a una rappresentazione completa del sistema dopo l’applicazione delle richieste descritte, compresi dei modelli, che possono essere sia statici sia dinamici che esprimono l’interazione fra l’utente ed il sistema. Tale tipo di modelli (detti anche mockup) permette sia di descrivere alla committenza quale sarà l’interazione con il sistema, sia di indicare precisamente ai gruppi di progetto quale dovrà essere l’aspetto del nuovo prodotto realizzato (o delle modifiche effettuate su prodotto esistente).
Il livello di formalismo da adottare è delimitato dai seguenti paletti: il primo, verso la committenza, è che il lavoro di analisi deve di regola essere approvato, e per poterlo essere deve essere comprensibile da parte di lettori non specializzati nel linguaggio di analisi. Da un altro lato, l’analisi funzionale deve essere sufficientemente rigorosa da costituire una base solida su cui progettare e costruire un sistema. In quest’ultimo caso l’utilizzo di un linguaggio formale condiviso con i gruppi che prenderanno in carico il tutto è ritenuto auspicabile.
Aiutare un committente nelle attività di analisi funzionale richiede sensibilità al dettaglio e chiarezza di visione sia sulla reale natura delle richieste sia sulla struttura ed architettura tecnica e funzionale dei sistemi che saranno impattati.
Il valore erogato è la realizzazione sui sistemi dei desiderata espressi dalla committenza, in cui ogni singolo aspetto è preso in considerazione e realizzato secondo quanto richiesto; come ogni regola anche in questo caso abbiamo delle eccezioni, perchè non è detto che i requisiti a seguito dell’analisi non debbano subire delle revisioni: quando l’approfondimento funzionale evidenzi condizioni non gestibili o opportunità migliorative in genere tali aspetti sono condivisi con la committenza ed approvati, prima di proseguire con il lavoro.

  • Gli strumenti a disposizione dell’analista funzionale sono:
    • Consapevolezza dell’importanza del dettaglio
    • Adattabilità rispetto agli standard utilizzati per la rappresentazione
    • Doti comunicative
    • Conoscenza dei vincoli a cui ci si dovrà attenere

 

Ho impiegato l’analisi funzionale soprattutto nei progetti:

Enel -6-

Vodafone -1-

FieraMilano

Vodafone -2-

Arrow

BNL Vita

CartaSì

Enel -2-

Enel -1-

Enel -4-

L’

analisi dei processi richiede, soprattutto nelle fasi iniziali, un notevole impegno nella registrazione delle attività svolte e delle architetture applicative sottese all’esecuzione dei processi.
E’ tutto un lavoro di tracciamenti di flussi di comunicazione fra persone e fra entità strumentali.
Dipendentemente dagli obiettivi si può lavorare al semplice tracciamento o ad una vera e propria attività di revisione che mira ad ottimizzare complessità, tempistiche ed efficacia di esecuzione.
Ogni singola attività svolta è sottoposta ad analisi specifiche per una stima dei tempi di avvio, di esecuzione e di conclusione, al punto da arrivare ad una stima globale dei costi di esecuzione.
Strumenti essenziali in questo tipo di attività sono i linguaggi di modellazione, come BPMN o altri, che permettono di realizzare una rappresentazione grafica dei processi di solito facilmente condivisibile anche con interlocutori non molto preparati sul linguaggio o sul modo di gestire tali tipi di modelli.
I processi possono evolvere ma sono rivoluzionati ben di rado, per cui un buon disegno di processo diventa una importante risorsa aziendale la cui utilità si esprime nell’arco di diversi anni, sia per la diffusione della cultura lavorativa aziendale (ad esempio per nuove persone che entrino a far parte degli staff) sia come strumento di analisi in caso di approfondimento su eventuali problematiche riscontrate, perchè permette un isolamento delle singole attività.
Un valore supplementare è rappresentato dalla possibilità di definire facilmente i criteri di misurazione del processo.

L’individuazione di quali siano le attività cardine, generalmente correlate alle trasformazioni e transizioni di processo permette di definire i criteri di stima dell’efficenza di processo (KPI – Key Performance Indicators), che di fatto permettono una analisi capillare dei parametri di esecuzione dei processi e quindi ne abilitano il controllo.
Gli strumenti necessari all’analisi dei processi sono:

  • Una autentica passione nel raccogliere informazioni
  • Qualunque strumento grafico per la diagrammazione, possimilmente in uno dei linguaggi grafici usati
  • Instancabile curiosità
  • capacità di sintesi

Ho impiegato l’analisi dei processi di business soprattutto nei progetti:

  • Enel -6-
  • FieraMilano
  • Vodafone -2-
  • Arrow
  • BNL Vita
  • CartaSì
  • Enel -2-
  • Enel -4-
  • Enel -5-
  • H3G -2-
I

requisiti dell’utente sono tipicamente il punto di ingresso del processo operativo di sviluppo informatico. In questa fase vengono raccolte le esigenze da parte della comunità degli utenti (di solito rappresentati da uno stakeholder investito di capacità decisionali).
L’attività, vista da un livello elevato, consiste in un riordinamento delle richieste ricevute in una forma che da un lato possa garantire la necessaria completezza, e da un altro lato possa alimentare i processi successivi, di cui il primo è l’attivtà di analisi funzionale.
Osservando invece nel dettaglio l’analisi dei requsiti si scopre un mondo nel quale chi sta lavorando all’analisi partecipa attivamente, contratta, propone e interagisce con il committente per arrivare ad una ragionevole certezza condivisa che quanto espresso nell’analisi dei requisiti esprima effettivamente la miglior espressione dei requisiti che sono stati raccolti.
In una buona analisi dei requisiti la copertura non dovrebbe limitarsi alle richieste di tipo meramente funzionale, perchè i vincoli per un progetto informatico spaziano anche in territori alieni all’aspetto funzionale, quali i requisiti di prestazioni, sul modello di interazione e sull’esercibilità, connettività, disponibilità dei sistemi, eventuali vincoli sulle tempistiche o deadline da rispettare; tali tipi di requisiti rientrano nella categoria dei cosiddetti “requisiti non funzionali”; tali aspetti dovranno essere valutati e se esclusi può essere apprezzato il fatto di evidenziare tale esclusione nei documenti di requisito che saranno consegnati.

Ho impiegato l’analisi dei requisiti  soprattutto nei progetti:

  • Enel -6-
  • Enel -3-
  • Vodafone -1-
  • Vodafone -2-
  • Arrow
  • BNL Vita
  • CartaSì
  • Enel -2-
  • Enel -1-
  • Enel -4-
  • Enel -5-
I

l service management è l’attività di erogazione di un servizio nel corso del tempo, quale l’esercizio di un sistema o di un servizio di supporto applicativo ma in generale qualcosa che possa offrire ad una comunità di utenti un servizio continuativo nel quadro di un sistema di regole concordate. Operativamente parlando è una attività di monitoraggio di una serie di processi operativi tramite opportuni parametri di esecuzione.
L’attività si basa sulla pianificazione del servizio, dalla composizione e struttura del team, dei relativi processi di controllo, degli strumenti di monitoraggio, dei rischi e dei criteri di escalation delle problematiche rilevate, nonchè l’indirizzamento e la lavorazione delle segnalazioni ricevute.

Il ruolo richiede un approccio sistematico e metodico alle attività, e comporta la gestione di utenti/clienti del servizio IT e di fornitori dello stesso servizio, e l’obiettivo è riuscire a fornire risposte consistenti rispetto ai problemi segnalati (da un lato) ed ottenere risposte consistenti rispetto alle problematiche conclamate che si segnalano

Ho fatto Service Management soprattutto nei progetti:

  • Enel -3-
  • H3G -1-
  • H3G -2-
L

a gestione del progetto inizia da una attività iniziale in cui, visti gli obiettivi e le risorse messe a disposizione si mettono a sistema tutti i dati e si cerca di capire se il progetto debba essere aperto oppure no.
Superata la fase di studio, si procede alla scomposizione del progetto in base ai contenuti, generalmente riconducibili a “fasi di lavoro” o a prodotti.

La pianificazione iniziale è costantemente aggiornata in base all’andamento delle attività e ad eventuali fattori esterni che impattino la realizzazione.
La finalità è sempre garantire che il progetto chiuda entro i termini di tolleranza pianificati sia per i tempi, sia per i costi e sia per la qualità attesa. Il compito del Project Manager è rilevare tempi e costi, verificare l’effettivo andamento, prevedere eventuali scostamenti e notificarli, nel momento in cui indichino dei possibili scostamenti dalle tolleranze.

La gestione di progetto richiede una autentica passione per i diversi processi la cui messa in atto consente un effettivo controllo dell’attività in ogni suo aspetto.

Project management è soprattutto monitoraggio continuo di attività e di condizioni di rischio, problemi e strategie di risoluzione.

Dati gli obiettivi è molto importante la qualità nel livello di interazione con i vari team leader fra i quali le attività vengono suddivise.

Entrano nell’ambito della gestione di progetto diverse metodologie, da quelle più classiche, come PMI e PRINCE2 (basati su un approccio formale sebbene mai rigido) a Scrum/Agile, che privilegiano invece la prestazione al formalismo.
Le diverse metodologie coprono obiettivi sovrapponibili, ma si declinano in modalità operative e gestionali molto diferenti, come d’altra parte sono molto differenti i modelli organizzativi e i tipi di delverable prodotti.

Esperienze di Project Management nei progetti:

  • Enel -6-
  • Enel -3-
  • FieraMilano
  • Arrow
  • Enel -2-
  • Enel -1-
  • Enel -4-
  • Enel -5-
L’

attività di test opera la validazione della corrispondenza fra le richieste da parte degli utenti, opportunamente documentate, rispetto a quanto effettivamente consegnato.

Il lavoro di test leading può essere visto come un project management declinato nell’ambito della qualità. In particolare si ha visibilità sui piani di consegna concordati, fra i team di Demand (generalmente esposti dal business o comunque da rappresentanti degli utenti dei sistemi) e i team di Delivery (i gruppi deputati alla realizzazione dei software o alla loro manutenzione evolutiva e/o correttiva).

L’attività è sostanzialmente ciclica, e può essere scomposta nelle seguenti fasi, ma si deve tener conto che sono sempre possibili sovrapposizioni nell’esecuzione del processo.

 

  1. Apertura processo
  2. Piani di consegna (attività rolling)
  3. Rilasci enhancements e/o fix
  4. Flussi di esecuzione
  5. Gestione processo
  6. Pianificazione
  7. Monitoring avanzamento attività nelle varie fasi (test planning, approvazioni, monitoraggio rilasci, configurazione ambienti di test, esecuzione)
  8. Reporting di copertura (periodicità dipendente dal progetto, spesso giornaliera)
  9. Chiusura
  10. Redazione hand-off necessari per i rilasci negli ambienti successivi
  11. Reporting su eventuali problematiche aperte, eventuali condizioni di rischio indicazioni per i team di esercizio, o per i gruppi di utenti, eventuali suggerimenti di workaround per difettosità note.
  12. Attività retrospettiva e reporting finale sulla qualità

 

L’esperienza richiede abilità instancabili nell’armonizzazione di attività e team e una continua capillare raccolta di feedback su avanzamenti e criticità riscontrate.

Ho fatto Test Leading nel progetto:

  • Fastweb
I

l team leader prende in carico dal project manager i “pacchetti di attività” che devono essere eseguite, ne valuta il volume e sulla base della disponibilità del proprio gruppo e della complessità determina il periodo di consegna (che permette un affinamento dei piani tenuti dal project manager).
Condurre un gruppo comporta sempre buone doti di organizzazione, ma dovendo gestire sostanzialmente persone e operatività il team leader deve sapere ottenere le cose.
Le caratteristiche che un team leder deve offrire sono:

  • Capacità organizzative
  • Comunicazione efficiente
  • Un atteggiamento positivo nelle relazioni con i colleghi
  • Integrità
  • Conoscenza approfondita degli argomenti trattati
  • Fiducia e capacità di delega
  • Buone doti di negoziazione e facilitazione

Si tratta di caratteristiche in realtà generiche per qualunque attivtà, ma per questa attività il senso è più profondo

Ho fatto Team Management soprattutto nei progetti:

  • Vodafone -1-
  • H3G -1-
  • H3G -2-

 

L

a progettazione di sistema si occupa di creare i dettagli dell’architettura.
Il processo è alimentato dall’architettura della soluzione, dal sistema di tutti i requisiti che possano influenzare la progettazione, dalle analisi funzionali e sicuramente da una conoscenza approfondita del contesto nel quale il progetto dovrà essere realizzato.
Durante la progettazione si definisce formalmente, generalmente (ma non obbligatoriamente) con linguaggi grafici, il modo in cui una determinata funzionalità sarà composta, le eventuali partizioni architetturali coinvolte e quali componenti dovranno essere utilizzati, modificati o realizzati ex novo. La progettazione indirizza l’operatività dello sviluppo e alimenta i processi di validazione. Un importante aspetto è il riutilizzo di elementi e componenti già disponibili o l’uso di soluzioni standard (design patterns) che rendono le attività susseguenti meno onerose in termini di sviluppo, in quanto fanno riferimento a componenti già esistenti od a soluzioni standard.

Ho fatto System Design soprattutto nei progetti:

  • Vodafone -1-
  • Enel -1-
  • Enel -5-
L’

architettura della soluzione è l’arte della progettazione di alto livello di una soluzione nell’ambito IT.
Il lavoro raccoglie e mette a sistema quanto faccia parte del “dominio del problema”, e si occupa di definire un modello di dominio, espresso in un linguaggio condiviso nell’intero gruppo di partecipanti.

Si tratta di un lavoro sostanzialmente creativo, nel quale ogni aspetto viene messo in discussione al fine di individuare la soluzione migliore da tutti i punti di vista che lo possono influenzare.

Le soluzioni proposte sono espresse in modo da comunicarne al committente le caratteristiche e gli eventuali limiti, ma devono poter comunicare con chiarezza gli aspetti rilevanti per la

Spesso lo skill è accostato quello di progettazione, in quanto può rappresentare il primo passo dello sforzo progettuale.
L’attività può avere anche la forma di studio di fattibilità, nel quale si prendono in considerazione e si mettono a confronto più ipotesi risolutive allo stesso problema.
Architettura della soluzione è spesso saper esplorare soluzioni consuete alla ricerca di estensioni delle possibilità di utilizzo e sfruttamento

Ho fatto Architettura della soluzione soprattutto nei progetti:

  • FieraMilano
  • Vodafone -2-
  • Enel -2-
  • Enel -4-
  • H3G -1-
  • Enel -5-
U

n programma, o programma di investimento, a differenza di un progetto, è una attività che non ha necessariamente una conclusione (processo Rolling o Continuo), ma viene eseguita cicliclamente. Un Programma raggruppa in genere una serie di progetti, fra essi accomunati appunto dall’appartenenza a tale programma.

L’attività non entra nel merito dei dettagli di esecuzione, ma ci si concentra sui parametri vitali dei singoli progetti (esecuzione in atto, stati di avanzamento in merito a tempi, a coperture e finanziari), con eventuali raccolta ed opportuna evidenza di eventuali condizioni di rischio o criticità in atto.
Il Program Management riepiloga i parametri essenziali citati e li riversa sul tavolo del governo generale del processo ICT, che raccoglie tali informazioni di avanzamento ed indirizza eventuali criticità rilevate.
La gestione di un programma comporterebbe di regola la presenza di un modello dei processi seguiti per i vari tipi di attività compresi nel programma. Il ruolo di gestione di un programma comporta anche una verifica costante dell’allineamento delle attività monitorate rispetto a tali processi, oltre chiaramente a allo stretto monitoraggio richiesto sulle pianificazioni di tempi, costi e qualità.
L’attività è alimentata dai riscontri forniti dai Project Manager titolari dei vari progetti compresi nel programma, e produce l’elaborazione dello stato globale del programma di investimento, ad uso della committenza che tramite la delega di tale attività riesce a raccogliere tutti gli aspetti importanti senza dover entrare in un livello di dettaglio ed approfondimento troppo spinto

Ho fatto Program Management soprattutto nei progetti:

  • FieraMilano
  • H3G -2-

 

F

requentemente il mestiere informatico richiede capacità tecniche. Anche chi non sia coinvolto in attività propriamente tecniche ha spesso bisogno di una conoscenza, anche approfondita, di quali siano gli aspetti tecnici rilevanti impattati dal proprio lavoro o comunque coinvolti in esso.

Al fine di rendere più facile e consapevole la scelta del mio utente/cliente, cerco qui di riepilogare le capacità che possano rientrare nell’ambito “tecnico”; si tratta in ogni singolo caso di capacità consolidate, che abilitano le necessarie azioni di validazione, verifica, supporto alla correzione e ottimizzazione di quanto prodotto a seguito del mio intervento:

 

  • Linguaggio SQL (conoscenza approfondita)
  • Linguaggi di programmazione procedurali e object oriented (capacità approfondita di lettura e individuazione comportamenti corretti/non corretti)
  • Pattern funzionali e architetturali (capacità consolidata)
  • IBM Rational Team Concert – (Collaborative Lifecycle Management, Requirement composer e Quality Manager)
  • Suite Atlassian (Jira e Confluence in particolare)
  • Processo Itil per il Service Management
  • HP ALM – Quality Center
  • Framework CobIt per la Governance
  • HP PPM – Project and Portfolio Management
  • SubVersion (livello amministrazione)
  • IBM Rational Clear Quest
  • Gestione Prodotti Cloud Amazon AWS
  • Gestione Prodotti Cloud Microsoft Azure
  • Backend WordPress per siti web
  • Backend Shopify per ecommerce
  • Framework PRINCE2 per il Project Management
  • Logiche DevOps e Continuous Delivery

 

Si fa presente che quanto non in elenco può essere una competenza acquisita ma mai usata professionalmente oppure, se del caso, può essere appreso in tempi brevi.