report tecnico - SERLab

Transcript

report tecnico - SERLab
Prof. Giuseppe Visaggio
Università degli Studi di Bari - Dipartimento di Informatica
SERLAB (Software Engineering Research Laboratory) - Università degli Studi di Bari
SER & Practices s.r.l. - Spin off dell’Università degli Studi di Bari
Introduzione
KNOWLEDGE-EXPERIENCE BASE AND EXPERIENCE FACTORYERRORE. IL SEGNALIBRO NON È
DEFINITO.
1.
INTRODUZIONE ........................................................................................................3
2.
DATI, INFORMAZIONI, CONOSCENZA ED ESPERIENZA...........................................6
3.
3.1
3.2
3.3
3.4
STATO DELL’ARTE SULLA EB E LA EF .................................................................12
SCOPO E RAPPRESENTAZIONE DELLA EB ...................................................................12
SCOPO E RAPPRESENTAZIONE DELLA EXPERIENCE FACTORY ......................................13
INTERAZIONE TRA QIP ED EF. ..................................................................................15
EB ED EF NEI CONTESTI INDUSTRIALI .......................................................................17
4.
4.1
4.2
4.3
4.4
4.5
4.6
IMPLEMENTAZIONE DELLA EB IN KEB ...............................................................18
TIPI DI KEP .............................................................................................................19
STRUTTURA DEI CONTENUTI DEI KEP. ......................................................................19
CONTENUTI DEI KEP ...............................................................................................21
COMPONENTI DEL KEP............................................................................................22
RISORSE DEL KEP....................................................................................................25
I METADATI .............................................................................................................25
5.
5.1
5.2
5.3
5.4
PROMETHEUS ...................................................................................................26
PROJECT COMPONENT .............................................................................................29
TOOL COMPONENT ..................................................................................................31
EVIDENCE COMPONENT. ..........................................................................................32
COMPETENCE COMPONENT ......................................................................................34
6.
6.1
6.2
6.3
6.4
6.5
6.6
LINEE GUIDA PER LA PRODUZIONE.......................................................................35
PRODUZIONE E PUBBLICAZIONE. ..............................................................................35
TECNICA DI PRODUZIONE DI UN NUOVO KEP. ...........................................................36
ESPRESSIONI IDENTIFICATIVE ...................................................................................37
VERIFICA E VALIDAZIONE DEI PACCHETTI ..................................................................37
EVOLUZIONE DEI KEP. ............................................................................................38
COOPERAZIONE NELLO SVILUPPO. ............................................................................38
7.
7.1
7.2
VALORI DI PROMETHEUS .................................................................................39
SOGGETTI FISICI.......................................................................................................39
ORGANIZZAZIONI......................................................................................................40
8.
CONCLUSIONE .......................................................................................................42
9.
BIBLIOGRAFIA .......................................................................................................43
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
2/3
Introduzione
Sommario
Com’è noto, sempre più al centro dell’economia delle imprese e dei paesi c’è lo
sfruttamento della conoscenza. In questo capitolo sono esaminati alcuni modelli abilitanti per
la società della conoscenza: la produzione distribuita, l’open innovation ed i digital business
ecosystems. La trattazione pone particolare attenzione alle piccole e medie imprese; ma è
sufficientemente generale perché tutti i concetti possano essere adeguati anche alle grandi.
Per supportare tali modelli comportamentali si ipotizza l’uso della Fabbrica delle Esperienze
che raccoglie esperienze empiriche sottoforma di Pacchetti di Esperienza-Conoscenza.
L’innovazione più rilevante del capitolo sta proprio nella strutturazione di questi pacchetti
che si differenzia da altre già reperibili in letteratura. Le modifiche apportate alla
strutturazione hanno lo scopo di convincere i potenziali destinatari ad utilizzare i contenuti
dei pacchetti e favorirne l’adozione senza l’ausilio dell’autore o degli autori del pacchetto. La
strutturazione proposta ha come effetto collaterale, la possibilità di produrre il pacchetto
incrementalmente e cooperativamente. Le modifiche proposte sono derivate dalle lezioni
apprese in esperienze precedenti di trasferimento tecnologico. Tali lezioni apprese, nella
maggior parte, sono rilevate dalla letteratura ma sono anche derivate da esperienze
dell’autore. Nel capitolo è presentata la piattaforma PROMETHEUS che implementa tutte le
richieste per la raccolta e la distribuzione dei Knowledge-Experience Package.
1. INTRODUZIONE
La pressione competitiva per le imprese o per i paesi ha spostato il baricentro
dell’economia dal patrimonio (assets) materiale a quello immateriale. Acquisire vantaggio
comparativo su fattori immateriali richiede il rafforzamento della capacità di raccolta,
miglioramento continuo ed estensione del proprio patrimonio immateriale attraverso la filiera
della conoscenza. Il vantaggio comparativo di un ente pubblico, di un’impresa o di un
soggetto fisico (generalmente chiamato organismo, nel seguito del presente capitolo) basato
su fattori immateriali è più duraturo di quello basato sui fattori materiali. Infatti, è difficoltoso
colmare il gap di conoscenza che costituisce il vantaggio. Perciò, l’organismo che detiene il
vantaggio ha una più ampia finestra temporale per rafforzarlo e migliorarlo attraverso la
filiera di produzione della conoscenza prima che i concorrenti colmino lo svantaggio. Questo
ciclo virtuoso è alla base della società della conoscenza e dello sviluppo dei nuovi paradigmi
economici, scientifici e tecnologici richiesti da quest’ultima. Essa è caratterizzata dallo
sfruttamento della conoscenza come fattore predominante nella generazione della ricchezza
[16].
Per la limitatezza dello spazio disponibile in questo capitolo e per conferirgli una buona
leggibilità e comprensione è opportuno limitare il contesto che esso deve trattare all’interno
di questo vasto scenario. Perciò, questo capitolo considera gli aspetti di economia della
conoscenza nella prospettiva delle imprese. Più specificatamente, delle imprese produttrici ed
utilizzatrici di Information Technology (IT). Il capitolo tratta gli argomenti in modo generale
così che la maggior parte dei concetti e delle tecnologie esposte in questo capitolo possano
essere applicate in tutti i settori ad alta intensità di conoscenza; ma, di seguito si pone
particolare attenzione alle piccole e medie imprese (SME) perché esse hanno maggiori
difficoltà nel transitare verso l’economia della conoscenza e devono essere supportate perché
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
3/3
Introduzione
almeno nell’IT rappresentano non meno del 90% delle imprese operanti sull’intero globo
[18].
Tra i fattori abilitanti all’utilizzazione economicamente efficace della conoscenza in questo
capitolo si prende come guida l’acquisizione ed il rafforzamento delle capacità ad alto
contenuto tecnologico che costituiscono l’eccellenza e la diversità dell’organismo detentore
nel suo settore di business [17]. Infatti, la diversità dà il vantaggio comparativo, l’eccellenza
consente di trasformare tale vantaggio in opportunità di mercato. Per costituire e mantenere il
vantaggio comparativo e per trasformare questo in ritorni economici i modelli
comportamentali degli organismi interessati possono essere diversi e non esclusivi tra loro.
A causa delle dinamicità dei mercati sia nell’offerta che nella domanda, tali capacità
devono essere continuamente adeguate attraverso l’innovazione che deve essere frequente e
rapida. L’innovazione frequente richiede che l’organismo disponga di risultati di ricerca
originali nel suo dominio di business, sia capace di trasformarli tempestivamente in
innovazione tecnologica da adottare nei suoi processi di business e socializzi rapidamente la
nuova conoscenza prodotta in modo che le sue capacità restino eccellenti e distintive. Per
raggiungere questi obiettivi sono necessari notevoli investimenti. Ne segue l’opportunità per
ogni organismo di limitare il numero di capacità su cui puntare per realizzare l’eccellenza e la
diversità. L’estensione delle capacità di impresa eccellenti per ogni organismo si può regolare
sulla base della capacità di investimento e del numero di risorse umane di cui esso può
disporre. A minore estensione delle capacità di impresa eccellenti corrisponde minore
richiesta di risorse, umane e finanziarie, per sostenere la costituzione, il mantenimento ed il
continuo aggiornamento delle competenze che le supportano.
I risultati di ricerca sono prodotti da processi non prevedibili sia in termini economici che
di tempo, così come la loro trasformazione in innovazione.
Inoltre, le competenze specialistiche che con la ricerca e la conseguente socializzazione si
costituiscono all’interno di un organismo diventano attrattive per il mercato del lavoro e,
quindi, creano un rilevante rischio di turnover. Questi fatti rendono ad alto rischio gli
investimenti in ricerca e sviluppo. Per esempio, la perdita di un ricercatore implica la perdita
del patrimonio di conoscenza tacita che egli ha acquisito durante i processi di ricerca e
sviluppo a cui ha partecipato; oppure, l’imprevedibilità dei processi di ricerca rendono
rilevante il rischio di sbagliare la previsione degli investimenti e del tempo necessario per
ottenere risultati di ricerca soddisfacenti. Perciò, è opportuno passare dal modello di Closed
Innovation a quello di Open Innovation [11]. Nella Closed Innovation tutta la filiera della
conoscenza, dalla ricerca all’innovazione, è svolta all’interno di un organismo; invece, nella
Open Innovation ogni organismo mette a disposizione di altri i risultati di ricerca o le
tecnologie, prodotti con progetti di ricerca e sviluppo eseguiti e finanziati in proprio, che non
sono sfruttabili immediatamente per i suoi obiettivi strategici; invece, usa quelli messi a
disposizione da altri organismi per creare più rapidamente le innovazioni di cui necessita.
Rendere disponibili per altri la conoscenza prodotta con le proprie ricerche dà, all’organismo
conferente, la possibilità di un più rapido rientro degli investimenti effettuati in ricerca;
invece, sfruttare i risultati di ricerca di altri organismi rende maggiormente prevedibili i tempi
ed i costi dell’innovazione. Avendo la necessità di formalizzare i propri risultati di ricerca,
l’organismo deve mettere in atto accorgimenti per l’esplicitazione della conoscenza appresa
durante il lavoro (near-the-job learning). Inoltre, scambiando conoscenza con altri organismi
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
4/4
Introduzione
aumenta il numero di portata della stessa conoscenza; pertanto, diminuisce il rischio di
perdita del patrimonio di conoscenza.
Nonostante le economie realizzabili, grazie all’Open Innovation, l’acquisizione ed il
rafforzamento di capacità eccellenti risulta molto costoso. Questo si ripercuote nei costi delle
risorse che sostengono tali capacità e, quindi, nei costi dei progetti in cui queste risorse
operano. Per far fronte alla competizione è necessario diminuire i costi dei progetti, perciò si
adotta la distribuzione dei progetti, in particolare, si trasferiscono ad imprese con minore
costo del personale le attività con meno valore aggiunto (outsourcing o offshoring) e si
intrattengono all’interno del proprio organismo le attività che necessitano delle capacità di
eccellenza e che sono le più critiche e producono maggiore valore aggiunto. Con questo
modello comportamentale è anche possibile accelerare i processi di produzione e
manutenzione e, quindi, far fronte al time-to-market che per turbolenza del mercato deve
rispettare finestre temporali sempre più strette. Per adottare questo approccio gli organismi
interessati devono avere buone capacità di pianificazione e monitoraggio dei progetti. Inoltre,
devono avere strumenti per valutare le capacità dei fornitori oltre che di se stessi. Infine, nei
progetti distribuiti il rischio di turnover delle risorse umane aumenta e, quindi, l’adozione di
questo modello richiede la capacità di colmare rapidamente le competenze che dovessero
venire meno.
Qualche volta l’organismo titolare di un progetto non ha tutte le capacità eccellenti che
servono allo stesso progetto. In questi casi è necessario che esso cooperi alla pari con altri
organismi costituendo i, così detti, Digital Business Ecosystem [15]. In questo caso
l’organismo titolare del progetto è il committente e gli altri organismi che cooperano sono i
fornitori. E’ evidente che l’organismo committente in un BDE deve avere le capacità di
gestione dei progetti distribuiti. Per completezza, le grandi imprese adottano un paradigma
alternativo al DBE, senza escludere quest’ultimo, per acquisire capacità eccellenti
complementari a quelle che hanno al loro interno, attraverso processi di Merge &
Acquisition.
Nei modelli di comportamento precedenti, il comune denominatore che vuole analizzare
questo capitolo è la gestione della conoscenza. Attualmente è noto un modello di Experience
Factory (EF) che raccoglie conoscenza sperimentale in un repository denominato Experience
Base (EB) [10]. La EF mira a comprendere, pianificare e prevedere, controllare e verificare,
migliorare i processi di business. La raccolta della conoscenza sperimentale nell’Experience
Package (EP) ha lo scopo di ridurre le conseguenze della perdita di conoscenza per turn-over
delle persone che la possiedono in forma tacita, di migliorare prodotti e processi e di
apprendere dal lavoro eseguito per svolgere meglio i lavori da eseguire.
Questo capitolo propone un modello per la strutturazione del contenuto del Package,
riproducibile sistematicamente, con particolare orientamento alla esplicitazione delle pratiche
per l’adozione della conoscenza (sta per acquisizione o sfruttamento in un processo di
business) nell’organismo produttore oppure in organismi diversi da questo. L’organismo a cui
si fa riferimento può essere di ricerca oppure di produzione di prodotti o servizi. La struttura
è adeguabile a diversi tipi di contenuto e prevede che in uno stesso Package possano essere
espressi contenuti di diverso tipo, quali: risultati di ricerca, esperienza, strumenti, tecnologie
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
5/5
Dati, Informazioni, Conoscenza ed Esperienza
innovative. La struttura del Package è modulare ed esprime la relazione tra lo stato dell’arte a
cui le pratiche del package fanno riferimento, i risultati di ricerca, le pratiche, le esperienze di
adozione nei processi di business. L’esplicitazione dell’esperienza ha caratteristiche idonee a
convincere i potenziali utilizzatori dei valori generabili dalla adozione del Package. La
struttura del Knowledge-Experience Package prevede componenti utili all’accompagnamento
(drive) degli organismi utilizzatori nell’adozione dello stesso. Per evidenziare quanto detto
circa il suo contenuto, la conoscenza espressa secondo questa struttura si chiamerà di seguito
KEP. Il repository che conterrà i KEP si chiamerà, per simmetria, Knowledge-Experience
Base (KEB).
La proposta di questo capitolo è innovativa, rispetto alla letteratura ed alle altre basi di
conoscenza note, oltre che per la struttura del KEP anche perché le componenti di
quest’ultimo derivano dalle lezioni apprese, in parte pubblicate ed in parte rilevate
dall’esperienza dell’autore, circa la gestione della conoscenza ed il suo sfruttamento nei
processi di business. Infatti, il capitolo mostra che grazie alla struttura prospettata, la KEB
proposta, insieme con le attività convenzionali della EF, è un buon supporto per ogni
organismo che voglia operare nell’economia della conoscenza con i modelli comportamentali
descritti prima.
Il presente capitolo continua con il capitolo 2 che definisce rigorosamente i concetti di dati,
informazioni, conoscenza ed esperienza secondo una prospettiva adeguata allo scopo di
questo stesso capitolo. Il successivo capitolo descrive lo stato dell’arte circa la EB e la EF. Il
capitolo 4 descrive la proposta dell’autore di estensione della EB in KEB per renderla più
efficace per lo scopo del presente capitolo. Il capitolo 5 descrive la piattaforma
PROMETHEUS che è un prototipo di sperimentazione della KEB con le caratteristiche
presentate nel precedente paragrafo. Nel capitolo 6 sono descritte le linee guida per la
produzione e l’evoluzione dei contenuti della KEB. Dopo questi capitoli è possibile
analizzare, nel settimo, i valori di PROMETHEUS per gli stakeholders per sostenere come
l’estensione della KEB proposta in questo capitolo possa contribuire a soddisfare i requisiti,
descritti nell’introduzione, in corrispondenza dei modelli di relazioni e di business, descritti
nella stessa introduzione come fattori abilitanti l’Economia della Conoscenza. Infine, le
conclusioni chiudono il capitolo. Per gli approfondimenti degli argomenti trattati nel capitolo
sono disponibili diverse citazioni nella bibliografia.
2. DATI, INFORMAZIONI, CONOSCENZA ED ESPERIENZA
Per il modello di strutturazione del KEP sono necessarie le definizioni rigorose di Dati,
Informazioni, Conoscenza ed Esperienza. In letteratura ci sono molte definizioni di questi
concetti che sono adeguate al contesto in cui sono definite, ma non sono efficaci per gli scopi
di questo capitolo. Perciò, è necessario che per ognuno dei precedenti concetti siano riviste le
definizioni e siano formalizzate per assicurare una comune comprensione degli stessi concetti
tra l’autore ed i lettori. Tali definizioni sono diverse dalle stesse espresse in letteratura e dal
significato tacito che hanno nel linguaggio comune.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
6/6
Dati, Informazioni, Conoscenza ed Esperienza
La conoscenza nella IT è nella maggior parte dei casi è prodotta per induzione empirica;
perciò è opportuno che la definizione di dato, sia: il valore di uno degli attributi richiesti per
descrivere un fatto (F); ogni attributo corrisponde a un aspetto di un fatto ed è attinente al
punto di vista da cui è considerato. Formalmente un fatto è descritto da un set di dati che può
essere espresso come nell’esempio (1) dove: K è il numero di attributi, il generico dij è un
dato che rappresenta il j-th attributo del i-th fatto.
Fi = (< di1, di2, di3,… diK>) (1).
# Maintenance
Request for S
1
2
3
4
5
6
7
8
…
29
Maintenance
Type
C (Corrective)
E (Evolutive)
C
C
C
C
P (Perfective)
C
…
C
Effort Spent
(Man/days)
2
4
4
4
5
6
15
2
…
6
Components
Involved
1
35
7
8
10
8
43
2
…
8
Tabella 1: Esempio di dati
In tabella 1 sono riportati i fatti, nell’ordine cronologico, verificatisi per un Software System
S. Ogni fatto è descritto con gli attribuiti <# Maintenance Request (richieste di assistenza),
Maintenance Type (tipo di assistenza), Effort Spent (lavoro umano speso), Components
Involved (componenti coinvolte)>.
L’informazione è un concetto che assume molti significati. Nel linguaggio comune essa
descrive qualcosa di materiale (i.e.: prodotto; tool…) o di immateriale (i.e.: evento storico, di
cronaca, televisiva, radiofonica, …); questo tipo di informazione può essere chiamato
Informazione Descrittiva. In molti contesti scientifici l’informazione è il contenuto codificato
in un messaggio trasmesso da una sorgente (i.e.: codici da trasmettitori elettronici; geni in un
DNA, dati immessi in un sistema informatico, …), questa può essere detta Informazione
Entropica. Alcune volte questo concetto è utilizzato per indicare modelli di classificazione di
dati che servono per confermare o contraddire nozioni utili a qualcosa oppure a qualcuno (i.e:
sondaggi, exit pool, …); si potrebbe indicare questa come Informazione Nozionistica.
In questo capitolo, avendo come obiettivo l’induzione empirica, siamo interessati
all’informazione che può essere estratta dai dati che descrivono i fatti. Chiameremo questa
Informazione Estratta (Information Mining) per distinguerla dagli altri tipi elencati prima. Il
generico termine Informazione (INF) nel contesto di questo capitolo si riferirà a quest’ultimo
tipo, salvo indicazione diversa. Essa è l‘interpretazione di un set di fatti o di relazioni tra loro.
L’informazione rivela il vero significato dei fatti e lo rende utilizzabile per gli utenti che
devono eseguire compiti o prendere decisioni. Può essere rappresentata formalmente come
una funzione M (Mining) applicata su un insieme di fatti:
INFl = Ml{F1, F2, F3,…, Fn}= Ml ({dij}: i =1,…N; J =1,…,K(i)) (2)
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
7/7
Dati, Informazioni, Conoscenza ed Esperienza
Ml è una funzione che scopre ed interpreta pattern nei dati che descrivono fatti, classificati
nel modo più opportuno per derivare informazioni utili.
Effort Spent (Man/days)
40
35
30
25
20
15
10
5
0
Effort Spent (Man/days)
C
E
C
C
C
C
P
C
C
E
C
C
C
C
C
C
C
E
C
C
C
C
C
C
C
P
C
C
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Figura 1. Effort spent vs Maintenance Requests
Per esempio, alcune informazioni estratte dai fatti della tabella 1, ma con funzioni M diverse
per estrarre pattern ed interpretarli, sono elencati di seguito. Per facilitare la lettura, sono stati
utilizzati codici mnemonici piuttosto che i generici INF.
Ec: lo sforzo per il mantenimento correttivo aumenta nel tempo, come risulta dalla Figura1
che presenta graficamente, lo sforzo speso nel corso di tempo per soddisfare ogni richiesta
per manutenzione correttiva. Se fosse disponibile una seria adeguatamente lunga di fatti si
potrebbero trovare in questi dati altre informazioni, quali il modello di previsione del trend
del numero di richieste di manutenzione e del lavoro uomo per soddisfarle.
Ne: le richieste di manutenzione evolutiva sono meno frequenti delle correttive e delle
perfettive;
Ee: L’impegno uomo richiesto per far evolvere il software tende ad aumentare col tempo e,
comunque è più grande di quanto speso per le correttive;
Np: le richieste di manutenzione perfettiva sono meno frequenti delle correttive ma sono più
frequenti delle evolutive;
EP: l’impegno uomo richiesto per la manutenzione perfettiva è, in generale, maggiore di
quanto speso per le correttive e minore di quanto speso per le evolutive;
Re: Dopo un evento di manutenzione evolutiva, il numero di richieste di manutenzione
correttive tende ad aumentare;
Rp: Dopo un evento di manutenzione perfettiva il numero delle richieste di manutenzione
correttiva, tende a diminuire.
Un ulteriore estratto degli indici presenti nella tabella, mostrando il numero dei componenti
coinvolti in ogni richiesta di assistenza è presente in figura 2. Di quì è possibile estrapolare
altre informazioni:
Involved Components
50
45
40
35
30
25
20
15
10
5
0
Involved Components
C
E
C
C
C
C
P
C
C
E
C
C
C
C
C
C
C
E
C
C
C
C
C
C
C
P
C
C
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Figura 2. Maintenance Request vs Components Involved
Ce. I cambiamenti di manutenzione correttiva ed evolutiva gradualmente incrementano il
numero delle componenti coinvolte.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
8/8
Dati, Informazioni, Conoscenza ed Esperienza
Cp. La manutenzione perfettiva cambia diminuisce di componenti software coinvolti.
La conoscenza sia nel linguaggio comune sia in gran parte della letteratura è definita come
una o più relazioni tra molte nozioni, estratte dai dati e dai fatti che questi descrivono, e che
l’uomo riesce a costruire con la sua mente.
In questo capitolo, sempre per favorire l’induzione empirica, è necessaria una definizione che
evidenzi la conoscenza come indotta dall’informazione e che prevede la sua formalizzazione
in modo che possa essere riusata indipendentemente dalla mente che l’ha generata. Per
distinguere il concetto di conoscenza trattato in questo capitolo da quelli citati si definisce la
Knowledge Mined, ossia un concetto più ampio di dato ed informazione e che richiede la
comprensione dell’informazione e delle relazioni tra le possibili informazioni mined (estratte)
dai dati. Per rendere la sua definizione più chiara, si assume che: le relazioni tra gli elementi
di informazioni sono molto complessi; perciò, per interpretare loro è opportuno adottare un
punto di vista che riduca gli aspetti rilevanti della relazione tra loro e, quindi, renda più facile
la loro interpretazione. Il punto di vista dal quale interpretare le parti di informazioni e le sue
interrelazioni è espresso da un problema che l‘applicazione della conoscenza deve contribuire
a risolvere, genericamente indicato con Pi.
Per chiarezza, un problema, nel seguito di questo capitolo, è un quesito, semplice o
composito, di rilevante interesse in un dominio di conoscenza che presenta difficoltà e può
generare inconvenienti: la sua soluzione consiste in una soluzione ricavata da elementi
informativi noti sotto condizioni prefissate; potrebbe dare adito a soluzioni diverse.
Dipendentemente dallo scopo del quesito il Problema può dirsi: di decisione se la soluzione
deve supportare decisioni per superare eventi negativi verificatisi o che si possono verificare
durante l’esecuzione di un processo; di ottimizzazione se trattasi di migliorare le prestazioni
di una o più risorse; trascendentale se richiede ragionamenti deduttivi, anche formali,basati
su tesi dimostrate o provate in precedenza.
Per Pi sono necessari i contenuti di un set di parti di informazione:
{INF}:{ < INF1, INF2, INF3,…. INFi>}
e le informazioni tra le parti stesse
{R({INF})}:{ R1{ INF1}; R2{ INF2} R3{ INF3}… Rl{ INFl}};
(3)
(4)
dove qualunque {INFk}è una combinazione degli elementi in {INFi} . Si conviene, per
semplicità, che nel resto del capitolo la Knowledge Mined si chiami Knowledge (KW).
Formalmente, KW può essere rappresentata da una funzione G (Generates):
KWi = Gi (Pi, {R({INF})})
(5)
La funzione Gi seleziona le componenti di informazioni e le relazioni tra esse, tra tutte quelle
rese disponibili dai dati e dalle funzioni M, applicate su questi ultimi, e generalizza
l’interpretazione delle informazioni e delle loro relazioni.
La generica funzione Gi è prodotta da un competente che grazie alle sue conoscenze, abilità
ed esperienza riesce a: individuare quali informazioni e quali relazioni, tra tutte quelle
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
9/9
Dati, Informazioni, Conoscenza ed Esperienza
disponibili, sono efficaci per dare soluzione al problema Pi, ad interpretare tali relazioni ed a
generalizzarle. Una volta espressa la, generica, KWi può essere utilizzata da tutti senza avere
l’esperienza del suo autore. Inoltre, data l’induzione di KW da un insieme di dati un altro
esperto del livello di quello che ha estratto l’informazione può empiricamente confermare o
contraddire KW.
Esempio: si supponga di avere il problema P < come rallentare il decadimento della qualità
del sistema software durante la sua manutenzione ?>. Il dominio del problema è la
manutenzione del software. Le informazioni che descrivono il contesto in cui è eseguito il
processo di manutenzione sono quelle estratte dalla tavola 2.1. Le relazioni essenziali, tra le
informazioni estraibili, per risolvere il problema posto sono: dopo la manutenzione correttiva
o evolutiva aumenta il numero di componenti impattate (Ce), questo implica che la
manutenzione correttiva tende ad aumentare la coesione interna del sistema; pertanto, è
necessario effettuare la manutenzione perfettiva per mitigare tale complessità (Rp); dopo la
manutenzione perfettiva il numero di richieste di manutenzione correttiva diminuisce (Cp)
rallentando, così, il trend di peggioramento delle qualità. Pertanto, in questo caso
l’applicazione della (5) dà il seguente risultato:
KW= < per rallentare il decadimento della qualità del sistema software, quando la qualità di
un sistema degrada per effetto della manutenzione correttiva od evolutiva è opportuno
effettuare una manutenzione perfettiva per rallentare il degrado del sistema > = G (P, R(Ce,
Rp, Cp)).
L’esperienza sia nel linguaggio comune sia in letteratura è tacita, sta nella mente di un uomo
che l’ha acquisita con la continua applicazione delle sue conoscenze ed abilità e che gli serve
per produrre altra conoscenza. Anche la esperienza può avere diverse classificazioni. Ad
esempio: Esperienza Comune, Esperienza Critica, Esperienza Religiosa e così via.
In questo capitolo interessa la Empirical Experience (EXP); ovvero, quella che si acquisisce
applicando la conoscenza in vari contesti ed estraendo da ogni applicazione i dati ed i fatti
che confermano o contraddicono la conoscenza estratta dalle applicazioni precedenti. Per
completezza, l’applicazione della conoscenza può essere richiesta da un progetto oppure da
un esperimento artificialmente creato da un ricercatore proprio per confermare o contraddire
una congettura od un principio.
Posto che per progetto, in questo capitolo, si intende l’esecuzione in uno specifico contesto di
un processo che ha acquisito o sfruttato tecnologicamente la conoscenza di cui si vuole
verificarne l’efficacia nella pratica. Anche un esperimento controllato eseguito in laboratorio
è un progetto in cui si prova l’efficacia dell’innovazione se acquisita o sfruttata in un
processo.
Le applicazioni di interesse dei precedenti concetti per questo capitolo sono l’acquisizione e
lo sfruttamento di conoscenza per migliorare lo scopo di un processo di business, qualità del
prodotto o del servizio generati da esso, oppure le performance, la velocità di esecuzione,
costi, conformità, stabilità e capacità. Per favorire tali applicazioni della conoscenza sono
necessari indici che consentano di fare un bilancio costi-benefici riscontarti in ogni
acquisizione o sfruttamento realizzati. Tali indici devono essere validati empiricamente in
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
10/10
Dati, Informazioni, Conoscenza ed Esperienza
contesti diversi. Più numerose saranno le repliche della esperienza, tanto maggiore sarà la
fiducia che i manager o i ricercatori avranno nell’acquisire o sfruttare una conoscenza.
La EXP è critica per lo scopo del presente capitolo. Infatti, la conoscenza acquisita o sfruttata
in un processo di business passa dallo stato dell’arte allo stato della pratica e diventa una
tecnologia a supporto del miglioramento dello scopo o delle performance dello stesso
processo. Se la conoscenza che si trasforma in tecnologia è un insieme di risultati di ricerca
allora si è realizzata una innovazione che aumenta il vantaggio comparativo di chi la usa. Per
completezza se il risultato di ricerca è utilizzato per lo scopo del processo di business si tratta
di innovazione di prodotto se lo è per le performance si tratta di innovazione di processo.
Formalmente EXP è una funzione EE (Evidenza Empirica) di un elemento di conoscenza
usata in progetti di Acquisizione o Sfruttamento (A/E) da dove si rilevano un insieme di
indicatori (I) di scopo o di performance del processo di business. Formalmente:
EXP(KWi) = EE ( KWi, {A/Ei1,{Ii1}, A/Ei2,{Ii2}, A/Ei3,{Ii3},…, A/EiN,{IiN}}) (6)
KWi è la conoscenza che si intende acquisire può essere descrittiva e/o formalmente espressa,
come è stato definito sopra;
A/Eij, descrive il progetto in cui KWi è stata applicata la Jma volta;
{Iij} è l’insieme degli indicatori misurati sul processo di business durante l’applicazione Jma
dell'elemento di conoscenza KWi.
Il numero di applicazione N varia nel tempo perché l’applicazione di KWi potrebbe essere
replicata in un numero di progetti crescente con il passare del tempo.
Il set di indicatori {Iij} potrebbe essere diverso dal set {Iik} perché dalle esperienze
precedenti alla kma potrebbe essere stato deciso che per validare meglio l’efficacia di KWi è
necessario introdurre nuovi indicatori o modificare quelli che si sono misurati
precedentemente.
EE è una funzione che astrae in principi i risultati delle applicazioni di KWi.
Esempio: si supponga di avere un problema P < migliorare la manutenibilità di un sistema
software> e di avere un KW < La manutenibilità di un sistema software è migliorabile
attraverso un processo RE di Reverse Engineering e di Restauro; con il restauro pilotato da
alcuni indicatori di qualità del software>. KW includerebbe anche la descrizione formale del
processo, delle tecniche e dei tool utilizzabili per la sua esecuzione che qui si omette per
brevità.
N.
1
T
20
2
12
Acquisizione
Staff EA
C
I.H.; 600 630
D.K.
I.H.
280 336
Ultimo Trimestre Senza RE
M.U.
E
E.R IM. I.R.
60
2520 92
7
85
Primo trimestre senza RE
M.U.
E.
E.R. IM I.R.
42
1272 22
2
15
72
45
2870
91
6,3
83
1356
5
2
8
Tabella 2: Esempio di EXP
Legenda
T = tempo necessario per acquisire RE in gg lavorativi
Staff = competenze che non sono presenti nell’impresa e che devono essere
messe dall’esterno;
EA = impegno lavorativo di acquisizione in ore uomo; questo comprende sia
l’impegno speso dai trasferitori che quello speso dagli acquisitori e se ci fosse
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
11/11
Stato dell’arte sulla EB e la EF
necessità di formazione è incluso anche l’impegno speso per quest’ultima
attività;
C = costo in migliaia di euro
M.U. = numero di Maintenance Unit (M.U.) eseguite; la M.U. è un insieme di
richieste di manutenzione che sono assegnate ad un unico sviluppatore e si
prevede che richiedano 30 ore uomo di impegno lavorativo per essere
soddisfatte; nelle 30 ore sono incluse anche i cambiamenti alla
documentazione del software;
E = Effort, in ore uomo, spese mediamente per le M.U. eseguite;
E.R. = Effort Risk in punti percentuali = Ni/M.U. *100 dove Ni è il numero di
M.U. che risultano avere un E>( 30 ± 0,05*30);
IM = numero di componenti impattate in media dalle M.U. eseguite;
I.R. = Impact Risk in punti percentuali = Ni/M.U. *100 dove Ni è il numero di
M.U. che risultano avere un IM > (IMprevisto ± 0,05*30).
I.H. = conoscenza dell’Information Hiding e delle pratiche per realizzarla
D.K. = conoscenza del dominio applicativo
Per misurare l’efficacia di RE si definisce un set di misure che nell’esempio corrispondono a
{M.U., E, E.R., IM, I.R.}. Sono anche rilevate alcune misure che esprimono il contesto in cui
i progetti sono eseguiti {T, EA, Staff, IM, I.R.}. E’ opportuno evidenziare che gli indicatori, i
progetti ed i valori delle misure sono del tutto immaginari e servono solo a chiarire il concetto
di EXP. I due progetti in cui è applicato RE mostrati in tavola 2, i contesti sono diversi:
hanno competenze diverse, nel secondo progetto esiste già la competenza IH, le dimensioni
del problema sono diverse perché nel secondo progetto ci sono più UM ma il software è più
manutenibile. L’applicazione di RE genera la seguente EE < RE rende il sistema software più
manutenibile diminuendo sia l’impatto delle modifiche sia il rischio di erronee previsioni
sull’impatto, migliora la qualità del software facendo diminuire le richieste di manutenzione e
con esse le MU; diminuisce l’Effort ed i rischi di previsione dell’Effort, rendendo più stabile
il processo di manutenzione, creando economie tali da far rientrare in poco tempo i costi di
acquisizione>.
3. STATO DELL’ARTE SULLA EB E LA EF
3.1 Scopo e rappresentazione della EB
Lo scopo della EB è quello di supportare la competitività delle imprese che la utilizzano.
Per vincere nella competizione è necessario avere un ben definito insieme di prodotti per
soddisfare i fabbisogni dei customers, pertanto la EB deve contenere modelli di prodotto e
relazione delle loro caratteristiche con le aspettative di specifici segmenti di mercato. Inoltre,
è necessario avere un insieme di modelli di processi che consentano di migliorare
continuamente prodotti e servizi compresi nell’offerta dell’impresa. Infine, deve contenere
modelli di qualità di prodotti e di processi che consentano di valutare il posizionamento
dell’impresa rispetto agli obiettivi strategici, in questo caso i modelli devono contenere le
iniziative di miglioramento nel caso che le misure previste facciano prevedere uno
scostamento tra gli obiettivi raggiungibili e quelli che richiede la strategia.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
12/12
Stato dell’arte sulla EB e la EF
La rappresentazione del contenuto di un Experience Package (EP) presente in letteratura,
cui l’autore fa riferimento, è mostrata in figura 3 [8]. In essa sono rappresentati modelli di
prodotto, di processo o di qualità. Ed i dettagli del processo necessari per l’adozione del
package. Tra l’altro, questa componente potrebbe avere anche materiale didattico per
l’addestramento all’uso della conoscenza da applicare. Una seconda vista copre i processi dei
modelli di controllo; per esempio, modelli per analizzare la qualità dello scopo e delle
prestazioni del processo prima e dopo la applicazione dell’Experience Package. La terza vista
copre l'esperienza empirica nell'uso del Knowledge Package. Nella costruzione di un
Experience Package secondo [8] sono basilari: il paradigma Goal Question Metrics per la
misura ed il controllo della qualità; il Quality Improvement Paradigm (QIP) e l’Experience
Factory.
Figura 3 Experience Package
3.2 Scopo e rappresentazione della Experience Factory
La EF costituisce un ciclo virtuoso per apprendere dall’esecuzione dei progetti le esigenze
di miglioramento continuo delle esperienze raccolte in EB. L’apprendimento si snoda in un
ciclo di controllo della qualità ed uno di assicurazione della qualità. Il primo prevede la
raccolta delle misure con le quali valutare, secondo predefiniti modelli di qualità, il
raggiungimento degli obiettivi del progetto in esecuzione e le iniziative di miglioramento. Il
secondo prevede la raccolta delle informazioni dai progetti eseguiti ed il miglioramento degli
EP per assicurare che la loro adozione riesca a diminuire gli scostamenti tra gli obiettivi
raggiunti dai progetti futuri e quelli strategici dell’impresa.
Alla base del ciclo di controllo c’è il paradigma del Goal Questions Metrics (GQM).
Invece, per l’assicurazione di qualità si utilizza il Quality Improvement Paradigm (QIP).
Il GQM è un paradigma per costruire modelli orientati agli obiettivi di qualità desiderati;
perciò modelli di qualità flessibili. Esso è un approccio sistematico per specializzare gli
obiettivi sulla base di: specifiche esigenze del progetto e dell’organizzazione che lo esegue;
modello di processo e di prodotto; aspetti d’interesse o valori della qualità [24].
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
13/13
Stato dell’arte sulla EB e la EF
L’operatività dei risultati delle misurazioni dei Modelli di Qualità prodotti con il GQM è
sistematica: alla stessa combinazione dei valori di misure si associa una interpretazione
indipendente da chi l’effettua da quando e da come è effettuata. Lo schema del GQM è
rappresentabile come in figura 4.
Figura 4 Rappresentazione del modello GQM
Il Quality Improvement Paradigm è un paradigma per il miglioramento sistematico della
qualità [8]. Come tale, esso è una guida per il continuo miglioramento delle organizzazioni.
Si basa, essenzialmente, su un'appropriata caratterizzazione dell'ambiente. Il paradigma
fornisce un contesto per la definizione dell'obiettivo ed è essenzialmente basato sul riutilizzo
sistematico di esperienze estratte dalla loro formalizzazione in pacchetti di conoscenza. Il
processo di miglioramento realizzato dal QIP è definito come un processo iterativo che
esegue ripetutamente una sequenza di attività di base. Il QIP si compone di due diversi cicli.
Un ciclo ha l’obiettivo del miglioramento dei progetti durante la loro esecuzione. Al tempo
stesso, questo è parte di un altro ciclo di apprendimento e di miglioramento di lungo periodo
che mira a migliorare un'organizzazione (a livello strategico). Spesso, il primo ciclo è
indicato come il ciclo di controllo della qualità mentre il secondo è quello di assicurazione
della qualità. Il processo del QIP è sintetizzato in figura 5. Il processo di miglioramento del
livello del progetto è integrato nel processo del livello strategico di miglioramento.
Nel corso degli ultimi 25 anni, il tema del trasferimento di conoscenze, del suo reimpiego e
della relativa conservazione è stato ampiamente discusso in letteratura. Nel 1989, H.D.
Rombach e V.R. Basili [8], proposero Experience Factory (EF) [23]. Il concetto di EF è stato
poi sviluppato e raffinato in contesti di ricerca ed industriali (http://www.esernet.org/).
Un’indagine su tali sviluppi e sulle diverse specializzazioni che la EF ha avuto negli anni
sono leggibili, rispettivamente, in [17], ed in [1, 2, 11, 12, 16, 19, 22, 23]. EF è una
organizzazione logica con una sua corrispondente implementazione fisica [23].
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
14/14
Stato dell’arte sulla EB e la EF
Figura 5 Quality Improvement Paradigm.
La EF interagisce con i processi di business come mostrato in Figura 5.
3.3 Interazione tra QIP ed EF.
QIP ed Experience Factory sono strettamente collegate alle pratiche proprio perché i due
approcci sono nati in un contesto di collaborazione dell’atra comunità di ricerca e comunità
industriale (http://bpch.dau.mil/; http://ccs.mit.edu/tel/).
Con riferimento alla figura 6, il ciclo a livello strategico astrae ed impacchetta l’esperienza
empirica estratta dai dati rilevati nel ciclo a livello di progetto. Quest’ultimo ciclo utilizza
l’esperienza raccolta nella EB per annullare od, almeno, mitigare lo scostamento degli
obiettivi previsti per il singolo progetto con quelli realizzati con la sua esecuzione.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
15/15
Stato dell’arte sulla EB e la EF
Plan
Data, Informations, Knowledge,
Experience
Support
Selected KEP, Competences
Characterize
Package
Set Goals
Formalize
KnowledgeExperience
Base
Choose
Process
Generalize
Execute
Process
Collect Data
Tailor
KEP for improvement, Competences
Analyze
Execute
Data or Quality Indicators
Product, lessons learned, data,..
Figura 6: Experience Factory Model
Più dettagliatamente, in tabella 3 sono descritte le attività che si eseguono secondo il QIP e
come queste alimentano la EF.
Passi del QIP
Caratterizzare
Definire i
goals
Scegliere i
modelli
Eseguire
Analizzare
Attività a Livello di Progetto
Caratterizzare il progetto ed
identificare i modelli rilevanti per il
riuso.
Definire gli obiettivi del progetto in
termini misurabili e definire le
relative misure
Attività a livello strategico
Caratterizzare l’organizzazione ed
identificare gli sviluppi futuri
Definire
gli
obiettivi
di
miglioramento e le ipotesi per
realizzarli, in modo che siano
misurabili
Scegliere i modelli di processi Identificare progetti o piloti per
appropriati e sviluppare il relativo eseguire indagini sulle ipotesi
piano di progetto
Eseguire il progetto secondo il Eseguire progetti e piloti e
piano, raccogliere i dati e fornire raccogliere i relativi dati
guide in linea per eseguire
efficacemente il progetto
Analizzare i dati raccolti ed il Analizzare i dati raccolti e validare
progetto
e
suggerire
i le ipotesi
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
16/16
Stato dell’arte sulla EB e la EF
Impacchettare
miglioramenti; ovvero minimizzare
lo scostamento tra la qualità attesa e
quella realizzata dei processi e dei
prodotti implicati nel progetto
Formalizzare in Pacchetti di
Esperienza i risultati dell’analisi
con modelli che favoriscano il
riuso.
Formalizzare in Pacchetti di
Esperienza i risultati dell’analisi
con modelli che favoriscano il
riuso.
Tabella 3: descrizioni delle attività del QIP
3.4 EB ed EF nei contesti industriali
Molte EF ed EB sono sviluppate in contesti industriali. Una fonte utilizzabile per una
interessante analisi è il sito (http://ccs.mit.edu/ph/). In esso c’e una lista delle EB sviluppate e
sperimentate. Nella tabella 4 vi è un elenco delle più comuni ed utilizzate EB. L'analisi delle
varie EB elencate nella tabella mostra che i contenuti, gli obiettivi e le parti interessate delle
EB elencate sono molto diverse. Nessuna può soddisfare le motivazioni e gli obiettivi che
costituiscono lo scopo di questo capitolo dettagliato nell’introduzione.
Perciò, l’autore ha ritenuto opportuno definire la struttura ed i contenuti di una EB che siano
adeguati allo scopo del presente capitolo.
Nome
Organizzazione
CeBase
National Science
Foundation(NSF): Center
of Empirically Based
Software Engineering
VSEK
ESERNET
German BMBF (Ministero
per la Didattica e la
Ricerca) sviluppato da un
consorzio di
organizzazioni di ricerca
Fraunhofer IESE
Obiettivo
Raccogliere modelli
empirici per fornire linee
guida validate per:
selezionare tecniche e
modelli; raccomandare
aree di ricerca; supportare
la formazione di ingegneri
del software
Mira a soddisfare i
fabbisogni delle imprese
che devono ingegnerizzare
efficacemente software
incrementalmente
complessi attraverso
scambi di esperienza via
un portale-web,
presentazioni e workshop
e collaborazione in
progetti
Coordinare l’astrazione di
studi empirici, supportare
la loro esplicitazione in
pacchetti così che essi
possano essere riusati
all’interno e fuori
dall’impresa che li ha
prodotti, fornire
addestramento ed
accompagnamento per
rafforzare nelle persone l’
esperienza estratta dagli
studi empirici. Essa perciò
stabilisce una rete di
eccellenza nell’Empirical
Software Engineering
(ESE) a livello mondiale.
Contenuti
Una varietà di dati
empirici su topiche come
COTS, tecniche di
reading: FAQ, lezioni
apprese, pubblicazioni,
paper
Argomenti di Ingegneria
del Software:
Software Engineering
Body of Knowledge
SWEBOK
Domini applicativi dei
sistemi
Esteso glossario di termini
Le aree di interesse attuali
sono:
Test ed ispezioni
Progettazione object
oriented ed
implementazione
Ingegneria del software
basata sulle componenti
Processi Agili di Sviluppo
software
Utilizzatori
Ricercatori empirici
Comunità Aperta
Organizzazioni europee
che utilizzano
intensivamente software.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
17/17
Implementazione della EB in KEB
The MIT
Process
Handbook
HPCBugBase
Software
Program
Mangers
Networks
Acquisition
Best Practices
Clearinghouse
Le aree di interesse sono i
modelli di Business:
attività dei processi;
elementi dei processi;
esempi di processi;
applicazioni di processi
Pattern di
Difetti funzionali
Colli di bottiglia nelle
prestazioni
Problemi di portabilità
Cattive Pratiche
MIT
Libreria in linea per
condividere e governare la
conoscenza circa i
processi di business.
Experimental Software
Engineering Group
(ESEG) della “University
of Maryland”
Raccogliere conoscenza
empirica circa i difetti
comunemente riscontrati
nel High Performance
Code usando un approccio
incrementale
Assistant Secretary of the
Navy
Identificare le buone
pratiche nello sviluppo
software per l’industria e
le pubbliche
amministrazione; provare
e convogliare loro sulla
gestione di grandi progetti
di enti che usano
intensivamente i sistemi
software
Buone Pratiche
Modelli di acquisizione di
buone pratiche
Fornire un repertorio
centralizzato di
informazioni validate e
utilizzabili praticamente
che sono state approvate e
ritenute utili.
Descrizioni/caratterizzazio
ni di pratiche:
Applicabili in contesti
descritti;
Informazioni
costi/benefici;
Informazioni di validità;
Rapporti circa le
applicazioni e studi
empirici circa le pratiche;
Punti di contatto per
gruppi di esperti e di
discussione
US Department of
Defense (DoD)
Persone di Ricerca e di
Business
Sviluppatori professionali
Manager di organizzazioni
ed esperti di dei domini
inerenti al software
interessati a migliorare le
pratiche di gestione dei
processi di produzione e
manutenzione del
software.
Tabella 4: Caratterizzazioni delle più noti EB
4. IMPLEMENTAZIONE DELLA EB IN KEB
Lo scopo della KEB è, come per la EB, quello di supportare la competitività delle imprese.
Ma la KEB intende farlo tenendo conto che per raggiungere questo obiettivo le imprese
devono transitare verso l’economia della conoscenza e che per farlo possono utilizzare uno o
più dei modelli comportamentali descritti nell’introduzione. Pertanto, i contenuti della KEB
sono orientati ad esplicitare le pratiche per l’adozione dei risultati di ricerca o delle
innovazioni derivate da questi. Inoltre, la KEB aggiunge ai contenuti della EB tutte le
componenti che si rivelano utili per accompagnare (drive) un organismo nell’adottare i KEP.
Di seguito si indicherà genericamente come KEP sia il pacchetto contenente solo conoscenza
sia quello contenente conoscenza ed esperienza, ma il lettore deve avere ben presente che un
KEP, in assenza di esperienza, è più propriamente un KP.
La relazione tra la KEB, GQM, QIP ed EF è esattamente la stessa descritta perla EB.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
18/18
Implementazione della EB in KEB
4.1 Tipi di KEP
I KEP si classificano per il loro contenuto. Di seguito si elencano un insieme di tipi che non
deve essere considerata una check-list perché l’esperienza potrebbe far rilevare la necessità di
definire altri tipi di KEP.
Prodotto. Informazioni descrittive od informazioni entropiche di tools, componenti software
di qualsiasi livello di stazione che utilizzati in una o più attività di un processo possono
migliorare quest’ultimo. Il KEP, oltre alla loro eventuale descrizione, deve esprimere
informazioni che esplicitino come specializzarli nei vari contesti d’uso, come e quando usarli
o riusarli e le esperienze rilevate con il loro sfruttamento in uno o più progetti.
Processo. Paradigmi o modelli di parti di processo, dettagli di procedure, tecniche od
algoritmi da utilizzare nei processi di sviluppo per migliorarli. Le modalità di
personalizzazione della conoscenza descritta nei diversi contesti d’uso. L’esperienza rilevata
in progetti di sviluppo grazie alla loro acquisizione o sfruttamento negli stessi.
Connessioni. Relazioni tra le osservabili di un prodotto o di un processo e gli effetti dello
sfruttamento di talune tecnologie. Possono contenere anche relazioni tra le competenze
(conoscenze ed abilità) e le capacità di impresa e tra le competenze ed i test necessari per la
loro valutazione. Questi contenuti sono sempre derivati dalle esperienze empiriche rilevate
nei progetti in cui le tecnologie sono state sfruttate.
Governance. Modelli e misure per il governo dei progetti co-locati e distribuiti. In particolare
conoscenze necessarie e monitorare e mitigare i rischi in progetti che usano diversi paradigmi
di processo (es.: sviluppo per linee di prodotto; sviluppo per componenti, inclusi i COTS
(Components Off-The-Shelf); sviluppo OSS (Open Source Software); sviluppo per servizi).
Le esperienze collegate contengono gli indicatori di efficacia dell’applicazione della
conoscenza in progetti reali.
Intelligence. Conoscenze derivate dall’analisi statistica di dati raccolti per vari scopi. Ad
esempio, log di uso di strumenti o di software; estrazione semantica di messaggi raccolti da
strumenti di assistenza degli utilizzatori di un prodotto o di un servizio. Essenzialmente,
questo tipo di pacchetto esplicita conoscenze delle parti interessate di un processo o di un
prodotto. Le esperienze collegate servono a confermare o contraddire la stessa conoscenza in
diversi contesti ed in diversi progetti.
È giusto il caso di ribadire che un KEP può essere ibrido, ovvero il suo contenuto può essere
composto da pezzi che appartengono a tipi diversi di pacchetti. In ogni caso si deve
salvaguardare la leggibilità e la comprensibilità del KEP. Per comprendere un KEP,
nell’accezione del presente capitolo, si deve sia capire la semantica del contenuto sia essere
in grado di applicarlo.
4.2 Struttura dei Contenuti dei KEP.
La presentazione delle informazioni, delle relazioni tra esse che costituiscono la conoscenza e
degli indicatori che esprimono l’esperienza di applicazioni o sfruttamento della conoscenza
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
19/19
Implementazione della EB in KEB
può essere effettuata attraverso Report Formali oppure Storie Narrative [14]. I primi sono
economici da produrre e minimizzano le ambiguità nella descrizione dei contenuti; ma la loro
comprensione risulta, in genere, complessa. Le seconde richiedono un rilevante impegno di
produzione e possono avere molte ambiguità; ma sono più semplici da comprendere.
La proposta dell’autore è la presentazione in forma strutturata, utilizzando diversi modi di
espressione anche combinati tra loro, dipendentemente da quello che si vuole esprimere:
grafici, algoritmi, meccanismi per impacchettare esperienza (es.: Tavole di Decisione,
Modelli dinamici di previsione), testo ed ogni altra forma di descrizione si dovesse rendere
necessaria. Lo schema del contenuto è rappresentato in figura 7.
Root
Nodi
intermedi
Nodi
foglia
Nodi
foglia
Nodi
intermedi
Nodi
intermedi
Nodi
foglia
Figura 7: Schema gerarchico del contenuto di un KEP
La descrizione è logicamente strutturata ad albero. Il contenuto di ogni nodo deve entrare
in un video per facilitarne la lettura. Il nodo radice descrive i problemi a cui si riferisce il
KEP e l’indice ragionato dei nodi sottostanti. L’indice ragionato spiega al lettore quale parte
della soluzione al problema è esposta in ognuno dei nodi sottostanti. Nel caso di un problema
complesso è possibile individuare sottoproblemi, ognuno dei quali è affrontato in una delle
sezioni del KEP. I nodi intermedi descrivono un sottoproblema oppure un aspetto della
soluzione, del problema principale, a cui fanno riferimento e l’indice ragionato dei nodi
sottostanti. I nodi intermedi contengono le informazioni e le relazioni tra esse che
costituiscono la conoscenza che si vuole esprimere. Se tra i nodi intermedi ci sono nodi che
attengono a conoscenza estratta dall’acquisizione o dallo sfruttamento della conoscenza in
uno o più progetti, il package è, propriamente, un KEP. I nodi foglia contengono i dettagli
della conoscenza o della esperienza a cui fa riferimento il nodo intermedio da cui dipendono.
Ed in particolare espongono le informazioni e le relazioni tra esse che compongono la
conoscenza descritta. E’ giusto il caso di evidenziare che grazie all’indice ragionato il lettore
di un package può selezionare le parti a cui è interessato oppure può decidere la sequenza di
lettura dei nodi che meglio si adegua alla sua conoscenza pregressa ed ai suoi interessi di
lettura. In breve, questo migliora la leggibilità del KEP.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
20/20
Implementazione della EB in KEB
Per una buona leggibilità, si consiglia che da ogni nodo dipendano non più di otto nodi.
Inoltre, l’albero logico sottostante ad un KEP non deve superare i tre livelli. Nel caso che la
descrizione di un KEP necessiti di superare queste soglie consigliate, è opportuno dividere il
KEP in più KEP che siano collegati tra loro. La divisione può essere effettuata per
sottoproblemi, per esperienze di acquisizione e sfruttamento della conoscenza o per una
combinazione qualsiasi di questi due tipi di divisione. La scelta non può che essere lasciata
all’autore del KEP che è responsabile della comprensibilità di quest’ultimo.
4.3
Contenuti dei KEP
Un KEP deve contenere i problemi a cui si intende dare risposte. Quindi tutte le
informazioni che derivano da risultati di ricerca o da precedenti progetti con le relative
relazioni che riescono a rispondere o danno un contributo significativo alla risposta dei
problemi. I contenuti specifici della conoscenza possono essere lasciati alla letteratura ed alle
altre fonti convenzionali in cui la specifica conoscenza è descritta. Invece, il contenuto di
KEP deve porre molta attenzione ad esprimere le relazioni tra i risultati di ricerca e tra le
informazioni estratte attraverso le quali è possibile sostenere che esse insieme possono
rispondere al problema. Inoltre, e soprattutto, il KEP deve esprimere come la conoscenza si
trasformi in pratica; ovvero, i processi e le attività che essa deve innovare e come deve essere
applicata per fornire la risposta efficace ai problemi enunciati.
Per favorire la candidatura di un KEP al suo riuso è opportuno che i suoi contenuti specifici
di pratiche siano arricchiti delle conoscenze di cui necessitano i potenziali utilizzatori per
convincersi a riutilizzarli. A tale proposito, di seguito si riporta una lista di indicazioni che
sarà possibile migliorare con le lezioni che si apprenderanno con l’applicazione del KEP.
I prerequisiti necessari per l’acquisizione o lo sfruttamento efficace dei risultati di ricerca
o dell’innovazione proposta dal KEP; questi includerebbero: capacità di impresa,
competenze, risorse economiche e strumentali. Sarebbe, inoltre, opportuno che siano elencati
i rischi di adozione del KEP. Tra questi, gli esperti del dominio dei problemi trattati dal KEP
devono trovare le barriere che essi percepiscono nella soluzione dei problemi a cui risponde il
KEP. Se essi non trovassero questa corrispondenza scarterebbero il KEP come poco
significativo per il dominio dei problemi di interesse [5, 13, 20]. In corrispondenza di ogni
rischio deve essere prevista una o più iniziative di mitigazione che rendano confidenti gli
utilizzatori di poter superare le barriere che percepiscono nel riuso della conoscenza
contenuta in KEP e, quindi, di poter raggiungere, attraverso l’adozione di quest’ultimo gli
obiettivi su cui essi sono commessi [5, 20]. Un altro aspetto da esplicitare è la pianificazione
per l’adozione che deve esplicitare le attività, i tempi, le risorse e le competenze necessarie
per l’adozione. Il piano dà le informazioni per valutare i costi di adozione; per poter fare un
esatto bilancio dell’adozione è necessario descrivere l’impatto sui processi o sui prodotti
collegati a quello in cui la conoscenza è acquisita o sfruttata e sui problemi a cui il KEP
intende dare risposta. La descrizione dell’impatto deve essere, possibilmente formale, almeno
rigorosa in modo che si possa fare il bilancio costi-benefici dell’acquisizione o dello
sfruttamento della conoscenza contenuta nel KEP. Per favorire l’adozione del KEP è
necessario che tutti gli stakeholders partecipino a questo processo e per indurre tale
partecipazione è opportuno che si spieghino i valori che l’adozione genera, classificati per
ogni stakeholder [2, 14, 20].
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
21/21
Implementazione della EB in KEB
Tra le esperienze che devono essere aggiunte alle conoscenze, sono necessarie quelle per
dimostrare che l’applicazione del KEP è risultata efficace in uno o più progetti. Per chiarire
quali siano gli obiettivi di efficacia che si sono rilevati nei progetti pregressi si può utilizzare
il GQM per descrivere il modello metrico per valutare l’efficacia e per monitorare il processo
di adozione. Il modello metrico deve valutare ogni aspetto del business e perciò deve
prevedere le prospettive di interesse, dal punto di vista di tutti gli stakeholders, ovvero deve
esprimere quantitativamente i valori per gli stakeholders. Inoltre, esso deve prevedere
l’espressione di tutti gli indicatori statistici che dimostrano la validità dei risultati ricavati con
il riuso del KEP. Gli indicatori previsti dal modello metrico devono servire per rafforzare la
validità empirica del riuso del KEP. In particolare devono mostrare il successo o gli
insuccessi realizzati nei progetti di riuso del KEP negli aspetti di interesse: obiettivi previsti e
raggiunti; realizzazione dei ritorni economico finanziario, controllo e mitigazione dei rischi
ed adeguatezza delle iniziative di mitigazione. Affiancato al GQM deve essere eseguito il
miglioramento continuo del KEP. A questo scopo, si consiglia l’uso del paradigma QIP, a cui
si è fatto riferimento prima.
Per mostrare la maturità del KEP e per rendere sempre leggibile le sue evoluzioni, le
motivazioni che hanno richiesto i cambiamenti e le decisioni adottate per ogni cambiamento è
necessario descrivere la storia del KEP. Le decisioni devono essere avvallate dalle evidenze
empiriche, estratte dal riuso del KEP nei progetti, di ognuno degli indicatori precedenti. Essa
deve descrivere le iniziative realizzate per il miglioramento del KEP, dei processi di
acquisizione e sfruttamento dello stesso e del modello metrico corrispondenti agli insuccessi
rilevati attraverso il monitoraggio del processo di adozione. Per evidenziare meglio la storia
del KEP è opportuno dividere il suo contenuto in due sezioni: il KEP attuale e la storia della
sua evoluzione con tutte le decisioni adottate. Per completezza, si evidenzia che il
miglioramento da evidenziare deve riguardare tutte le componenti del KEP, descritte di
seguito.
Il contenuto di KEP deve essere adeguabile ai vari contesti d’uso [5, 8, 20]. Pertanto, la sua
presentazione deve individuare tutti i punti di adeguabilità dello stesso ai vari contesti. In
dettaglio, è opportuno che l’autore descriva le parti invarianti e varianti del processo di
acquisizione o sfruttamento che consentano di descrivere la portabilità, scalabilità ed usabilità
nei diversi contesti d’uso. Di conseguenza, l’autore del KEP deve descrivere come adeguare
lo stesso ai diversi contesti d’uso previsti dai parametri che assicurano la flessibilità.
Se un KEP è complesso la sua acquisizione avviene incrementalmente [20]. Sarebbe perciò
opportuno che l’autore di un KEP che dovesse risultare complesso (i.e. lungo processo di
acquisizione, alti costi di acquisizione, considerevole numero di rischi e costose iniziative di
mitigazione) lo scomponga in KEP più semplici, collegati tra loro che si possano acquisire
con una predefinita sequenza.
4.4 Componenti del KEP
La rapidità di acquisizione dei KEP nei progetti di ricerca o di produzione è favorita
dall’esistenza di tools che automatizzino le attività ripetitive dei processi di acquisizione [3,
5]. Perciò è opportuno prevedere, quando è possibile, i tools che supportino il riuso del KEP e
per ognuno di essi un corso di addestramento che acceleri la curva di apprendimento dello
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
22/22
Implementazione della EB in KEB
stesso. Inoltre, è opportuna la disponibilità di portatori di competenze che siano in grado di
supportare, potenziandoli, i ricercatori ed i professionisti che intendano acquisire o sfruttare il
KEP. A tale scopo si raccolgono in competenze le persone che abbiano le conoscenze e le
abilità per poter dare tale supporto oppure le imprese che dispongono di risorse umane che
abbiano tali competenze.
Per favorire l’accettazione di un KEP è opportuno descrivere i progetti in cui esso è stato
usato ed i risultati che ha prodotto. La descrizione del progetto deve contenere il contesto
d’uso, le specializzazioni effettuate del KEP e, sarebbe opportuno, avere anche i valori delle
misure effettuate per monitorare il progetto. Queste possono essere utilizzate sia per la
verifica dell’efficacia del KEP secondo il modello metrico che deve essere descritto nello
stesso KEP sia per rilevare altre osservazioni che possono essere utili per definire il
miglioramento del KEP in una o più delle sue componenti.
I dati di dettaglio dei progetti potrebbero anche non essere disponibili, per riservatezza
imposta dall’organismo in cui il progetto si è svolto. E’, comunque, necessario conoscere le
caratteristiche dell’indagine sperimentale che è stata eseguita con i dati del progetto ed i
risultati dell’indagine, sulla base dei quali si possa dimostrare la relazione causa-effetto tra
l’applicazione del KEP ed i valori espressi negli indicatori che caratterizzano il KEP [5, 20].
Queste informazioni costituiscono i contenuti della componente evidenze.
In progetti ed in evidenze i dati riportati devono essere controllati per aumentare il livello
di confidenza che il potenziale utilizzatore del KEP ripone nel suo uso [20]. Pertanto è
opportuno che nei contenuti di queste due componenti sia descritto il processo e gli strumenti
per il controllo dei dati ed i risultati della loro applicazione durante l’esecuzione dei rispettivi
processi. Nella descrizione dei progetti è opportuno fare riferimento ai tools ed alle risorse
utilizzate nell’esecuzione degli stessi, presenti nelle rispettive componenti. Questa relazione
tra competenze, tool, progetti ed evidenze assicura l’adeguatezza dei tools e delle competenze
disponibili per il KEP.
A causa dell’adozione incrementale del KEP i tempi per completare questo processo
tendono ad allungarsi [20]. Per mitigare il rischio di volatilità delle competenze durante
l’adozione del KEP, tanto più elevato quanto più lungo è la durata del processo, è opportuno
che per ogni KEP si abbia un consistente numero di portatori di conoscenza nella componente
competenze . Infatti, questo assicura che anche se l’adozione dovesse durare per un lungo
tempo la probabilità di trovare risorse disponibili per il supporto sarebbe alta.
Una buona comprensione di un KEP favorisce il consenso degli stakeholders per
l’applicazione dello stesso [20]. Questo induce ad arricchire un KEP di: e-learning formativo
con cui è possibile erogare seminari e lezioni, in asincrono, circa il contenuto del KEP e di elearning addestrativo per erogare lezioni di approfondimento sul processo di acquisizione o
sfruttamento del KEP.
Per decidere di riusare un KEP è necessario che l’utilizzatore abbia assicurazione
dell’adeguatezza delle risorse disponibili [5]. Per le risorse diverse da quelle professionali, in
genere, l’organismo utilizzatore è in grado di effettuare tale valutazione; più difficile è la
valutazione dell’adeguatezza delle risorse professionali. Perciò, le risorse che sono nella
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
23/23
Implementazione della EB in KEB
componente competenze, precedentemente citata, devono essere certificate per dimostrare la
loro adeguatezza. Inoltre, le competenze disponibili nello stesso organismo o formate ed
addestrate dall’e-learning devono poter essere valutate per adeguatezza. Per soddisfare questa
esigenza i pacchetti di e-learning devono essere completi di test di valutazione per ognuna
delle competenze o abilità di cui trattano. Particolare attenzione deve essere posta durante il
monitoraggio dell’efficacia del KEP circa l’efficacia delle unità didattiche incluse nell’elearning e dei relativi test di valutazione. Infatti, le risorse umane sono critiche nell’adozione
e nella gestione dei KEP perciò la loro formazione e valutazione sono cruciali per l’efficacia
dell’adozione degli stessi.
Con riferimento al precedente schema di EP (figura 3), il KEP proposto in questo capitolo
si può rappresentare come in figura 8 in cui è evidenziato che il modello di processo e di
controllo è sostituita dalla componente Art & Practices per mettere in evidenza che il suo
contenuto può esprimere solo risultati di ricerca (Art) oppure sia questi sia i modelli di
processo per la sua adozione (Practices). Inoltre, sono evidenziate anche le altre componenti
previste dalla struttura del KEP presentata in questo capitolo.
Figura 8: Knowledge-Experience Package
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
24/24
Implementazione della EB in KEB
4.5 Risorse del KEP
Com’è stato detto il contenuto del KEP è orientato alle pratiche per la sua adozione nei
processi di business; pertanto è necessario allegare ad esso alla Documentazione che descrive
il Dominio di conoscenza scientifica e tecnologica da cui derivano le pratiche di cui tratta
[13, 20].
Nonostante l’impegno alla rigorosità di ogni autore è prevedibile che in ogni KEP ci siano
ambiguità ed incompletezze che un potenziale utilizzatore ha bisogno di chiarire. Perciò è
opportuno che per ogni KEP sia possibile avere contatti con i portatori di conoscenza del
KEP. Questi ultimi possono essere gli stessi autori oppure persone che hanno compreso i
contenuti KEP per averlo riutilizzato più volte.
4.6 I Metadati
In una KEB pubblica o privata il numero di KEP raccolti tenderanno ad aumentare. Perciò
è necessario dotare la KEB di strumenti necessari per la ricerca rapida dei KEP candidati alla
soluzione del problema di un suo utilizzatore e per consentire a quest’ultimo di valutare se
uno o più dei KEP candidati sono adeguati al suo contesto e, quindi, sono candidati per
l’adozione. In particolare, i ricercatori devono trovare tutti i risultati di ricerca disponibili
nella KEB che possono facilitare la realizzazione degli obiettivi previsti nella sua agenda di
ricerca [20]. I professionisti devono trovare tutte le soluzioni disponibili per dare una risposta
consistente e convincente ai problemi che si riscontrano nei progetti in cui sono impegnati
[14].
Se ad un ricercatore sfugge un risultato di ricerca disponibile egli utilizzerà la sua creatività
per raggiungere l’obiettivo su cui è commesso. Questo implicherebbe uno spreco di risorse
con la conseguente diseconomia [20].
I professionisti che non trovano KEP disponibili che rispondono ai problemi presentati dai
progetti su cui essi si sono impegnati si comportano in modo diverso, dipendentemente dalla
loro esperienza. Infatti, un esperto, in genere, tende a risolvere un problema con la propria
esperienza e non con quella degli altri; pertanto, se non trova una soluzione pronta per il suo
problema, egli si sente autorizzato a risolverlo con il proprio repertorio di conoscenze ed
esperienza. Tale repertorio è, in genere, tacito, pertanto, costoso nella sua applicazione e
povero nell’assicurazione di qualità. In breve, questo crea, come prima, diseconomie. I
professionisti neofiti o che sono commessi su un problema solo temporaneamente (buy-out)
lavorano con maggiore conformità se trovano il KEP adeguato al loro problema, seguendo
quanto espresso nel KEP; altrimenti, sono disorientati, non assicurano un buon livello di
qualità e frequentemente sono costretti a fare molti tentativi prima di raggiungere un obiettivo
soddisfacente [14].
Per facilitare la ricerca dei KEP nel KEB si utilizzano i metadati. La proposta dell’autore è
l’uso di due insiemi di metadati. Il primo insieme risponde al quesito: esiste nel KEB almeno
una soluzione utilizzabile per predefiniti problemi? Questo insieme contiene: il tipo di KEP,
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
25/25
PROMETHEUS
come è stato descritto prima; l’area di dominio di conoscenza, per l’Ingegneria del Software
possono essere: tecniche, metodi, processi, modelli di qualità, validazione empirica; parole
chiavi; problemi, descritti sinteticamente, a cui il KEP dà risposta. Il secondo insieme
risponde al quesito: tra i KEB candidati quali sono quelli che hanno i contenuti più
soddisfacenti per il contesto di destinazione? Questo secondo insieme di metadati contiene la
descrizione sintetica dei seguenti contenuti, tutti citati precedentemente: prerequisiti, rischi,
pianificazione, bilancio, valori, storia.
5. PROMETHEUS
Practices pROcess and Methods Evolution THrough Experience Unfolded Systematically,
in breve PROMETHEUS, è una piattaforma prodotta in SERLAB, laboratorio di Ingegneria
del Software presso il Dipartimento di Informatica dell’Università di Bari. Essa è costruita
con un framework che consente di specializzare la KEB con le componenti e con le relazioni
tra le componenti adeguabili alle richieste dalla organizzazione che usa la piattaforma.
Pertanto, essa può assumere configurazioni diverse.
PROMETHEUS è concepita come una piattaforma pubblica perché ha lo scopo di
supportare il trasferimento della conoscenza tra tutti gli organismi che possono contribuire ad
accumulare conoscenza trasferibile nei processi di business come innovazione ed ad
accumulare esperienza che aumenti la confidenza circa l’efficacia della conoscenza
disponibile. Ciò nonostante, PROMETHEUS consente di limitare l’accesso alla conoscenza
depositata in essa. Pertanto, un Ente, pubblico o privato, utilizzatore di PROMETHEUS, può
rendere pubblica una parte dei suoi KEP e riservarne un’altra parte come accessibile solo al
suo interno.
Di seguito è descritta la piattaforma che include tutte le componenti e le relazioni che sono
state descritte precedentemente in questo capitolo.
La KEB è costituita da diverse sezioni, una per ogni componente prevista dalla struttura del
KEP. La scomposizione in sezioni della KEB consente la pubblicazione di un KEP
incrementalmente e facilita la sua consultazione. Lo schema della KEB è riportato in figura 9.
Tutte le componenti hanno i contenuti strutturati ad albero (figura 7), quando devono
esprimere conoscenza. I metadati descritti prima sono quelli associati alla componente AP
che è quella principale nel KEP; le altre componenti hanno metadati che rispondono agli
stessi quesiti, ma i loro attributi sono, in genere, diversi.
I legami tra le componenti della KEB rappresentano tutti i percorsi che un utilizzatore può
seguire nella piattaforma. Per esempio: un utilizzatore può cercare una Knowledge
Experience Content e dopo averlo letto può voler conoscere uno o più tools citati nei
contenuti e/o le competenze che possono essere utilizzate a supporto dell’adozione dello
KEP.
Ogni sezione del KEP può essere popolata indipendentemente dalle altre. Questo consente
di arricchire la KEB con i percorsi più vari. Ad esempio, un professionista può inserire il suo
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
26/26
PROMETHEUS
profilo in CM anche se non è l’autore di un KEP ma se ha le competenze per supportare
l’adozione di un KEP in un processo di business può essere collegato ad esso; inoltre, se egli
ha nel suo portafoglio di esperienze certificanti le sue competenze un insieme di progetti a cui
ha partecipato con il profilo professionale che ha dichiarato può descrivere questi in PR.
Oppure, si può esporre un Tool in TO che può supportare l’adozione di un KEP o comunque
può contribuire a rispondere ad un qualche problema per il quale non esiste alcun KEP in
PROMETHEUS; in questo caso si possono collegare ad esso alcuni progetti in cui esso è
stato utilizzato e possono essere estrarre evidenze in EV che dimostrano quali siano gli effetti
positivi rilevati nel progetto che sono causati dal suo uso.
Nell’interfaccia di consultazione di ogni sezione sono presenti i collegamenti alle risorse
ed alle relazioni della componente con il resto del KEP. Gli attributes puntano ai metadati
della componente. Contents restituisce il contenuto della sezione. E’ possibile attraverso il
link E-Learning consultare seminari, corsi di approfondimento del contenuto o corsi di
addestramento sull’uso degli stessi contenuti. Le Relations collegano la sezione del KEP alle
omologhe sezioni di altri KEP che hanno un qualche collegamento con quello che si sta
consultando oppure ad altre componenti inerenti lo stesso KEP. Questo è di particolare
interesse quando l’autore ha partizionato un KEP per renderlo meno complesso. Gli
attachments contengono articoli, libri, report od altre fonti convenzionali in cui si possono
approfondire le motivazioni del KEP o della specifica sezione che si sta consultando ed il
contenuto dello stesso. Il Knowledge Supplier consente di accedere ai soggetti contenuti nelle
competenze e che sono autori o portatori di conoscenza del KEP o della specifica sezione che
si sta consultando. L’Help Supply consente di comunicare con il o gli autori del KEP per
chiedere chiarimenti o fare osservazioni circa il KEP; oppure, con gli amministratori di
PROMETHEUS per fare osservazioni, reclami ed altro tipo di comunicazione circa la
usabilità ed il livello di soddisfazione della piattaforma. Sulla sinistra c’è l’albero in cui sono
elencati tutte le altre sezioni del KEP che si sta consultando, puntando su una specifica
cartella il sistema passa a esporre il contenuto della corrispondente sezione.
Figura 9: Schema di Prometheus Art and Practices Component
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
27/27
PROMETHEUS
Il componente Art and Practices (AP) è il componente principale di un KEP. Esso ha il
contenuto di KEP come è stato descritto precedentemente. Un esempio del suo contenuto è
mostrato in figura 10 nella quale si possono rilevare il nodo radice ed i puntatori ai nodi
intermedi, evidenziati come puntatori attivi. Nella figura 11 sono invece mostrati i metadati
corrispondenti allo stesso KEP.
Figura 10: Esempio di contenuto di un AP
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
28/28
PROMETHEUS
Figura 11: Attributi AP
5.1 Project Component
Nel Project Components ci sono tutte le informazioni usabili per la caratterizzazione, la
descrizione del Progetto e la descrizione del contesto in cui si è svolto lo stesso progetto; le
risorse utilizzate dal progetto; risultati del progetto; eventi accaduti durante l’esecuzione del
progetto stesso.
Vi sono molti fattori che caratterizzano i contesti. Una lista tentativa per l’Ingegneria del
Software è la seguente:
o Fattori umani: numero di persone; livelli di competenza con riferimento ad uno o più
standard; propensione al lavoro di gruppo delle risorse; integrazione dei gruppi attivi
nel progetto; esperienza delle risorse circa i problemi a cui il progetto vuole dare
risposte; esperienza delle risorse circa il processo , le tecniche e gli strumenti da
utilizzare; volatilità delle risorse.
o
Caratterizzazione dei problemi: dominio applicativo; novità rispetto allo stato
dell’arte; volatilità delle regole di dominio; vincoli imposti dal problema.
o Caratterizzazione del processo: ciclo utilizzato; metodi integrati nel processo;
tecniche orchestrate nei metodi da utilizzare; tools; linguaggi di programmazione;
altre notazioni da utilizzare nel ciclo.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
29/29
PROMETHEUS
o Caratterizzazione del prodotto: macchine di sviluppo e di esercizio; tempi e budget
disponibili; software esistenti.
E’ opportuno prevedere nel progetto la descrizione degli eventi critici che si sono verificati
e che hanno fatto avvertire rischi. Inoltre, è opportuno mettere in rilievo tutti gli scostamenti
che si sono verificati tra quanto era atteso nella pianificazione e quanto si è verificato. Per
ogni scostamento è utile conoscerne la causa e le iniziative che sono state prese per il
miglioramento.
Ogni progetto dovrebbe includere il modello metrico che è stato utilizzato nel suo
monitoraggio e quindi i valori rilevati dalle misure. Di particolare interesse sono gli indici
economici : (costo preventivato del lavoro programmato (BCWS); costo effettivo del lavoro
eseguito (ACWP); costo preventivato del lavoro eseguito ( BCWP)).
Ad un progetto potrebbero essere acclusi i dati di dettaglio del progetto, se l’Ente che li
deve fornire non li considera strettamente riservati. L’organismo fornitore dei dati potrebbe
decidere di fornirli alla piattaforma ma renderli consultabili solo a coloro che hanno
specifiche credenziali di accesso. La presenza dei dati di dettaglio nella piattaforma dà la
possibilità di utilizzarli per estrarre evidenze empiriche diverse da quelle per cui sono state
rilevate. Quindi potrebbero costituire una fonte per la produzione di un notevole patrimonio
di informazioni. Nel caso di disponibilità dei dati di dettaglio, questi devono essere
accessibili attraverso il pulsante attachment.
Per completezza, chi prende dati di dettaglio dalla piattaforma deve spiegarne la
motivazione; nella comunità degli stakeholders di PROMETHEUS la motivazione accettata è
solo: esecuzione di una indagine empirica. L’organismo che preleva i dati con questa
motivazione, deve garantire il livello di riservatezza desiderato dai fornitori degli stessi e
deve impegnarsi a descrivere l’indagine effettuata ed a restituire i risultati dell’indagine che
saranno resi pubblici come evidenza empirica.
I metadati di questa componente sono: Brief Description un breve sommario del progetto
che contiene il progetto obiettivo; Project Keywords, parole chiave che sintetizzano il
progetto; Project Domain, area tematica in cui la esperienza del Progetto può essere situata e
applicata; Starting Data, data prevista di partenza per il progetto e data reale di partenza;
Ending Data, data prevista di fine progetto e reale data di fine progetto; Applied Competence,
Competenze applicate nel corso della esecuzione del progetto; Project Effort, numero di
ore/uomo totali previste e usate durante l’esecuzione del progetto per ogni competenza
applicata, i rischi previsti e quelli verificatisi.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
30/30
PROMETHEUS
Figura 12: Project Component
5.2 Tool Component
Questa componente contiene una breve descrizione del tool di supporto ad uno o più KEP,
rimandando agli attachments la descrizione approfondita dello stesso, e la conoscenza che il
proponente può mettere in campo per convincere il potenziale utilizzatore ad adottarlo. E’
necessario esporre le competenze che necessitano per un’efficace adozione dello stesso, i
rischi che possono essere riscontarti nell’adozione e le iniziative per mitigarli, quindi la
pianificazione più opportuna per l’adozione. Ovviamente questi saranno sottoinsiemi delle
corrispondenti conoscenze espresse nei KEP che supportano questo tool. Per accelerare
l’adozione, anche in questo caso è necessario coinvolgere tutti gli stakeholder potenzialmente
coinvolti nella stessa adozione e, quindi, descrivere i valori per essi. Infine, è necessario
mostrare la maturità del tool esplicitando il numero di versioni che sono state rilasciate, le
motivazioni che hanno indotto ogni cambiamento di versione e le modifiche effettuate in
ognuno dei precedenti cambiamenti. E’, in genere, il caso di prevedere corsi di addestramento
all’uso del tool.
I metadati descriveranno in sintesi il contenuto e sono: breve descrizione, le aree del
dominio tecnico coperte dal tool, parole chiavi, data di prima release, problemi di cui
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
31/31
PROMETHEUS
supporta la risposta; prerequisiti e rischi per la sua adozione, competenze e pianificazione per
la sua adozione, valori classificati per tipo di stakeholders; numero di versioni e storia.
Figura 13: Tool Component
5.3 Evidence Component.
La EV contiene la descrizione di tutte le indagini empiriche che rendono valida la
relazione causa effetto tra i risultati di ricerca e le innovazioni proposte e le risposte ai
problemi che costituiscono il loro obiettivo. In particolare, in questa componente devono
essere descritti i dati utilizzati, i controlli effettuati su di essi per assicurare la loro
accuratezza ed i meccanismi per effettuarli, lo schema di indagine utilizzato, le analisi
statistiche effettuate ed i risultati ottenuti come evidenza.
In alcune indagini è necessario produrre materiali per preparare i soggetti sperimentali a
comportarsi correttamente durante le indagini e/o materiali utili per la esecuzione della stessa
indagine. In questo caso i materiali necessari possono essere accumulati in un repository
accessibile attraverso il tasto attachments. Qualche volta potrebbe essere opportuno anche
associare corsi di addestramento ai processi di sperimentazione.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
32/32
PROMETHEUS
Per chiarezza, in EV sarebbe opportuno che siano espresse le evidenze empiriche di tutte le
decisioni prese nei cambiamenti effettuati nel KEP ed in tutte le sue componenti. Per esempio
devono essere validate per ogni iniziativa di mitigazione dei rischi la loro efficacia nel
controllare il corrispondente rischio. Inoltre, sono descritte le evidenze empiriche di tutti gli
indicatori sintetici che sono nei metadati di AP e delle altre componenti, quali: i valori per gli
stakeholders, gli indicatori quantitativi del piano di adozione, i rischi di adozione e l’efficacia
delle corrispondenti iniziative di mitigazione, l’impatto sui processi di business in cui sono
adottati.
La descrizione dell’indagine deve avere tutti i dettagli che convincono il suo lettore sulla
sua accuratezza e che consentono allo stesso di replicare l’indagine per confermare le
conclusioni o per contraddirle. E’ ovvio che in entrambi i casi la comunità di
PROMETHEUS si aspetta che tali repliche siano registrate nella piattaforma per dare
maggiore forza all’evidenza. Una possibile guida per la schematizzazione delle indagini
empiriche replicabili è il report in [7].
Il contenuto di EV sono strettamente collegati a quelli delle componenti PR ed AP. I
metadati sintetizzanti i contenuti sono: Brief Evidence Description, brief abstract
synthesizing the Evidence Content; Evidence Kind, Empirical evidence, Industrial contest
application, case study. etc.;
Figura 14: Evidence Component
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
33/33
PROMETHEUS
5.4 Competence Component
La Competence Component (CM) raccoglie soggetti fisici o organizzazioni che hanno
competenze, i primi, e capacità, i secondi, che consentono di supportare l’adozione di un KEP
oppure di un Tool oppure di supportare attività collaterali alle precedenti attività. Ogni
soggetto iscritto in questa componente è caratterizzato dalla descrizione della combinazione
di conoscenze, abilità e comportamento che fa parte del suo patrimonio professionale. In CM
un soggetto può essere nominato esplicitamente o con un nome fittizio, dipendentemente
dalla scelta dello stesso soggetto.
Ogni soggetto ha un portafoglio di esperienze che certificano il suo profilo professionale.
Spesso nel portafoglio di esperienze sono inclusi progetti, in tal caso sarebbe opportuno che
questi ultimi siano descritti nella componente PR. Nel caso che questo non sia possibile in
CM è prevista una sintesi dei progetti a cui il soggetto ha partecipato che mostra il tipo e
dimensione del progetto: dominio applicativo, ore uomo totali impegnate nel progetto, ore
uomo di lavoro svolte dal soggetto dichiarante nel o nei ruoli che richiedono il profilo
professionale per cui è presente in CM.
E’ opportuno evidenziare che nell’e-learning collegato a questa componente è possibile
trovare corsi che approfondiscono le competenze e gli skill di cui si compone la stessa
competenza. Inoltre l’e-learning prevede anche il test specifico per ogni item di conoscenza e
di skill previsto. Questo serve a validare le competenze di soggetti che non hanno altri tipi di
certificazioni. Nel piano di miglioramento continuo della KEB sono anche migliorati i
contenuti sia dei corsi sia dei test. Il miglioramento è attivato ogni volta che una competenza
preparata con il corso disponibile o certificata con i test disponibili, dovesse risultare non
perfettamente adeguata nei progetti in cui è utilizzata con tale competenza.
I metadati per questa competenza sono costituiti dall’elenco dei profili professionali
secondo gli standard scelti dall’utilizzatori. PROMETHEUS mette a disposizione i seguenti
sillabi per la definizione delle competenze: EUCIP (EUropean Certification of Informatics
Professionals; http://www.www.cepis.org/), SFIA (Skills For the Information Age;
http://www.sfia.org.uk/), CIGREF (Nomenclature of ICT Job Profiles; http://www.cigref.fr/),
AITTS (Advanced IT Training System; http://www.kibnet.org/).
Il curriculum vitae e/o eventuali certificazioni di competenze che il soggetto volesse
produrre possono essere consultate attraverso il pulsante di attachments.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
34/34
Linee Guida per la produzione.
Figura 15: Competence Component
6. LINEE GUIDA PER LA PRODUZIONE.
6.1 Produzione e pubblicazione.
Prima di tutto è necessario chiarire che la strutturazione dei KEP, descritta nella precedente
sezione, consente il miglioramento continuo di PROMETHEUS. Infatti se tutta la comunità
attorno alla piattaforma usa lo stesso standard nei contenuti è possibile verificare con un
unico modello se questi riscuotono gradimento da parte degli utilizzatori, qualunque sia il
KEP utilizzato. Dall’uso della KEB potrebbe risultare la necessità di modificare tale standard
per migliorare il gradimento di tutti i KEP.
Il contenuto di un KEP richiede un rilevante impegno per la sua produzione e, spesso, un
lungo tempo per il suo completamento. L’impegno per la produzione è richiesto per la mole
di conoscenze che deve essere formalizzata in un KEP. Il periodo di produzione risulta lungo
perché è necessario raccogliere esperienza nell’applicazione della conoscenza.
Per mitigare il primo problema è possibile produrre il KEP per incrementi successivi.
Quando è pronta la parte di conoscenza della componente AP, una prima versione del KEP è
già pubblicabile nella piattaforma. Se ci dovessero essere state evoluzioni del package nel
tempo, è possibile pubblicare prima la versione attuale e successivamente si possono
pubblicare le modifiche effettuate sul contenuto, iniziando dalle più recenti ed andando a
ritroso fino alle prime.
Le altre componenti del KEP possono essere pubblicate successivamente. Si consiglia però
di pubblicare subito le risorse disponibili che completino la descrizione della conoscenza e
che indichino i portatori di conoscenza che possono supportare la comprensione del KEP. E’
opportuno che la produzione delle altre parti del KEP sia pianificata in modo che gli
eventuali interessati sappiano quando potranno avere a disposizione le altre parti del KEP.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
35/35
Linee Guida per la produzione.
Qualche volta la schedulazione degli incrementi potrebbe essere pilotata, almeno
parzialmente, dalle richieste di uno o più utilizzatori interessati ad applicarle. Questo è uno
degli effetti collaterali di una comunità aperta, come quella auspicata dai progettisti di
PROMETHEUS, che rende la produzione del KEP cooperativa.
Per quanto riguarda l’evidenza empirica circa l’esperienza del KEP, questa è chiaramente
accumulabile con l’adozione del KEP in progetti eseguiti in differenti contesti. L’accumulo di
esperienza, chiaramente, è un altro effetto dell’apertura della comunità che insiste su
PROMETHEUS e della cooperazione interna a tale comunità. Per favorire il contributo a
rafforzare l’evidenza di vari soggetti che adottano il KEP è indispensabile che l’indagine
empirica che genera l’evidenza debba essere descritta rigorosamente in modo che essa sia
chiaramente paragonabile a tutte le altre indagini eseguite con lo stesso KEP. In particolare, è
indispensabile che le indagini empiriche eseguite sullo stesso KEP costituiscano una famiglia
di esperimenti [9]. Nel caso di un progetto di produzione è opportuno estrarre da tutti i dati
disponibili quelli essenziali per la descrizione dell’indagine sperimentale che esso esprime
nella evidenza empirica per un KEP.
All’autore di un KEP deve essere chiaro che un pacchetto pubblicato con contenuti parziali
restringe il bacino di potenziali interessati. Per chiarire questo concetto si analizzano, di
seguito, alcuni possibili scenari. Un pacchetto che contiene solo conoscenza può essere
interessante solo a ricercatori che vogliono applicare l’Open Innovation per accelerare la loro
ricerca. Un KEP che come esperienza ha solo un esperimento controllato effettuato con
studenti può essere di interesse per ricercatori che, interessati dai risultati di ricerca esposti
nello stesso KEP, intendano replicare l’esperimento. In questo caso è importante che le
indagini effettuate siano descritte in modo che siano accuratamente replicabili per far crescere
l’esperienza con alta consistenza interna. Altresì un KEP che ha poca esperienza applicativa
sarà preso in considerazione da un’ impresa se esso dà risposte a problemi che per l’impresa
costituiscono un rischio molto più grande dei rischi previsti per l’adozione del pacchetto
stesso.
6.2 Tecnica di produzione di un nuovo KEP.
Per la produzione di un nuovo AP l’autore spesso deve sintetizzare rilevanti volumi di
informazioni o di conoscenza, sullo stesso dominio di problemi del producendo KEP, che
sono state già formalizzate, in genere, su più tipi di fonti. L’autore del KEP deve trovare le
informazioni e le conoscenze più accreditate sia perché può essere utile esporle nel KEP sia
perché conoscendo lo stato dell’arte può mettere meglio in evidenza l’innovazione del KEP
che sta producendo e, quindi, renderlo più attrattivo per i suoi consultatori.
Per quanto detto, la prima attività da fare è la individuazione delle fonti da consultare. Nel
caso che trattasi di risultati di ricerca le fonti devono essere scientifiche. Per l’ingegneria del
software, per esempio, un possibile elenco delle fonti più accreditate puo essere: IEEExplore,
ACM Digital Library, Google Scholar (http://scholar.google.com/), Citeseer Library
(citeser.ist.psu.edu),
Inspec
(www.iee.org/Publish/INSPEC/),
Science
Direct
(www.sciencedirect.com),
EI
Compendex
(www.engineeringvillage2.org/Controller/Servlet/AthensService). Nel caso di conoscenza di
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
36/36
Linee Guida per la produzione.
natura industriale si possono consultare fonti di conoscenza implicite o esplicite quali:
sviluppatori, analisti di mercato, venditori, personale di supporto, report, utilizzatori,
customers.
Un mezzo utile per la sintesi della letteratura è il Systematic Literature Review [21]. In
breve, questo processo prevede tre fasi. Il Planning and Review in cui si identificano i
fabbisogni, si definisce la recensione desiderata, si specificano i quesiti di ricerca che
definiscono il od i problemi a cui intende rispondere il KEP, si formalizza il protocollo per la
recensione, si verifica e si valida il protocollo di recensione. La Recensione in cui si
estraggono tutti gli item disponibili tra i quali si selezionano quelli di interesse, si valuta la
qualità dei documenti selezionati filtrando ulteriormente la documentazione, quindi si
estraggono le informazioni che sono collegate al problema a cui si vuole dare risposta e le
relazioni tra esse che possono configurare la o le risposta/e al problema. Infine con questa
ultime si produce la componente AP.
Durante la sintesi effettuata per produrre AP, l’autore individua anche, se ci sono, evidenze
empiriche circa l’applicazione della conoscenza che si sta estraendo. Queste consentirebbero
di produrre la componente EV. Lo stesso dicasi di eventuali materiale formativo che potrebbe
consentire di produrre le risorse di e-learning di una o più componenti.
Il processo di sintesi consente di individuare possibili portatori di conoscenza circa il KEP
che si sta producendo. Se adeguatamente autorizzato dai soggetti portatori di conoscenza,
l’autore potrebbe anche produrre un primo nucleo della componente CM.
6.3 Espressioni identificative
Nel contenuto di ogni componente di un KEP i nodi sottostanti quello che è visualizzato e
le altre componenti dello stesso KEP collegate sono indicati con i puntatori. Per distinguere i
puntatori ai nodi da quelli alle altre componenti si conviene che questi ultimi siano espressi
con il seguente standard: [Nome del puntatore]-[Tipo di Componente]. [Nome del puntatore]
è scelto dall’autore del pacchetto ed identifica l’elemento a cui fa riferimento il puntatore.
[Tipo di Componente] indica la componente alla quale si riferisce il puntatore. Pertanto:
[Tipo di Componente] є {Art&Practices, Learning, Tool, Evidence, Project, Competence}
6.4 Verifica e validazione dei pacchetti
La verifica dei KEP è eseguita dallo stesso autore. Attualmente, la check list utilizzata per la
verifica è la seguente:
I. I nomi delle componenti non devono presentare sinonimi od omonimi;
II. Tutti i puntatori citati in un nodo devono essere raggiungibili.
III. Non sono costituiti riferimenti circolari con i puntatori;
IV. Esiste tracciabilità tra i contenuti della componente e la conoscenza prevista nel
contenuto della medesima componente, secondo le convenzioni della piattaforma
PROMETHEUS.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
37/37
Linee Guida per la produzione.
Questa potrebbe essere migliorata con l’esperienza di produzione e modifica dei KEP.
La validazione è eseguita principalmente con l’uso dei KEP da parte degli utilizzatori.
Pertanto, la validazione sarà effettuata in differita rispetto alla pubblicazione e sarà tanto più
accurata quanto maggiore sarà stato l’uso del KEP. Gli utilizzatori valideranno il KEP
comunicando la loro soddisfazione/insoddisfazione e le motivazioni della stessa, attraverso
l’Help Supply.
6.5 Evoluzione dei KEP.
Durante la verifica e la validazione dei KEP potrebbero essere evidenziati uno o più rilievi
circa la completezza, la correttezza, la congruità e l’ambiguità del KEP. In tal caso il
pacchetto subisce modifiche correttive. Queste non richiedono la descrizione di decisioni di
evoluzioni. Si suppone che più lungo è il periodo di esistenza del KEP maggiore sarà la sua
accuratezza.
Grazie all’applicazione del QIP nella EF, si possono rilevare failure negli indicatori
caratterizzanti il KEP oppure nei contenuti di una o più componenti del KEP. In questo caso
si eseguono modifiche perfettive. Queste richiedono l’esplicitazione delle decisioni che si
assumono nei cambiamenti e di conseguenza deve essere descritto in KP una nuova versione
del contenuto attuale ed un ulteriore elemento nella storia del KEP.
Attraverso l’interazione con gli utilizzatori, l’autore di un KEP può avere suggerimenti di
modifiche che migliorino la comprensione e l’attrattività del KEP. In questo caso si creano
spunti per modifiche adattative. Per queste ultime devono, come per le precedenti e con le
stesse motivazioni, esplicitare le decisioni assunte nel cambiamento del contenuto e registrare
un nuovo elemento nella storia del KEP.
E’ opportuno ribadire che l’esplicitazione delle decisioni e le riedizioni dei contenuti
dimostrano la maturità del pacchetto, pertanto è opportuno esplicitare le prime e far leggere
esplicitamente le seconde.
6.6 Cooperazione nello sviluppo.
Le organizzazioni di produzione conferiscono alla KEB conoscenze circa: vari modelli
(risorse, qualità, prodotti e processi), eventuali componenti di prodotto e di processi e dati da
cui poter ricavare esperienza circa l’applicazioni di tali conoscenze. Prelevano da KEB
conoscenza ed esperienza per supportare progetti in essere o in divenire. Trasferiscono le
innovazioni contenute nei KEP nei processi di business, rilevando ulteriori esperienze che
conferiscono alla KEB.
Le organizzazione di ricerca o i singoli ricercatori interni od esterni alle imprese:
conferiscono risultati di ricerca, anche se senza esperienza; producono dai risultati di ricerca,
rilevati da diverse fonti, innovazioni tecnologiche; ricavano conferme o smentite della
conoscenza contenuta in un KEP attraverso indagini empiriche di diverso tipo; prelevano da
KEB risultati di ricerca provenienti da diverse fonti per produrre nuovi risultati di ricerca.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
38/38
Valori di PROMETHEUS
Gli organismi che hanno capacità, validate attraverso i progetti a cui hanno partecipato,
possono esplicitare queste nel CM. La stesse informazioni possono essere conferite alla KEB
dai soggetti fisici che hanno competenze esplicitabili in CM e validabili con progetti in PR.
Se alcune di queste competenze possono essere utili per l’adozione di uno o più KEP, esse
sono messe in relazione con questi ultimi. Gli organismi che cercano competenze
specialistiche, per un progetto o per l’adozione di un KEP, trovano nella KEB quelle
disponibili con la relativa certificazione. Quando le competenze sono incluse in ulteriori
progetti dagli organismi che le hanno selezionate, la loro certificazione si rinforza a
beneficio di altri organismi che successivamente dovessero cercare le stesse competenze.
Gli organismi di formazione e ricerca mettono a disposizione della KEB, oltre al materiale
di formazione ed addestramento, i test per valutare le competenze utili per l’adozione dei
KEP di cui essi sono i promotori ed, eventualmente, i modelli di decisione per ipotizzare le
iniziative di formazione per recuperare gli eventuali gap di competenza che gli stessi test
dovessero rilevare. Gli organismi utilizzatori della KEB possono utilizzare il materiale
didattico per costituire o migliorare le capacità e le competenze di cui sono già in possesso, i
test per valutare le competenze in essere e le iniziative di recupero per colmare, eventuali,
gap riscontrati. Gli organismi che utilizzano nei propri progetti competenze preparate e
valutate con l’e-learning ed i test disponibili, valutano l’adeguatezza delle competenze. In
caso di carenza, questi organismi conferiscono agli autori dei KEP suggerimenti per il
miglioramento di queste risorse.
7. VALORI DI PROMETHEUS
Per attrarre i soggetti che possono costituire una o più comunità di stakeholders di
PROMETHEUS è opportuno elencare i valori che l’appartenenza a tali comunità genera per
ogni tipo di stakeholders. La lista che segue è esemplificativa e non esaustiva. Alcuni dei
valori elencati sono tipici delle basi di conoscenza altri sono specifici di PROMETHEUS per
i servizi che differenziano questa piattaforma dalle concorrenti note all’autore, attraverso le
fonti pubbliche.
7.1 Soggetti fisici
I soggetti fisici sono knowledge worker non strutturati in alcuna organizzazione. Possono
essere professionisti o ricercatori, dipendentemente dallo scopo del loro lavoro,
rispettivamente: realizzare obiettivi produttivi oppure creare nuova conoscenza e diffondere
l’innovazione tecnologica. Essi possono utilizzare PROMETHEUS per prelevare conoscenze
o pratiche disponibili e possono conferire alla stessa piattaforma esperienze e contributi per il
suo miglioramento. Inoltre, possono rendere disponibili ad altri stakeholders il proprio tempo
e la propria competenza. In questo caso PROMETHEUS rappresenta per loro un marketplace
esteso sull’intero globo.
Un portatore di conoscenza ha ritorni economici non dalla sua conoscenza ma dalla
applicazione della sua conoscenza a scopi produttivi. Inoltre, la conoscenza mantenuta
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
39/39
Valori di PROMETHEUS
inespressa nella mente del portatore è perduta anche da quest’ultimo a causa della volatilità
della conoscenza tacita. Perciò è opportuno che un portatore di conoscenza espliciti le
pratiche per applicarle ed, eventualmente, le sue esperienze nell’applicazione. Conoscenze ed
esperienza esplicitate e pubblicate su PROMETHEUS aumentano la reputazione del loro
portatore e, quindi, la probabilità che egli sia selezionato per essere incluso in nuovi progetti
da altri stakeholders. Questa partecipazione, a sua volta, rafforza la certificazione delle
competenze dichiarate e, quindi, aumenta la probabilità che il soggetto sia selezionato per
ulteriori nuovi progetti.
I soggetti presenti in PROMETHEUS possono certificare la loro competenza attraverso i
progetti a cui hanno partecipato ed i KEP che può produrre e pubblicare. Inoltre, essi possono
far crescere la loro reputazione partecipando al supporto on-line per gli stakeholders previsto
in PROMETHEUS. Questa interazione, inoltre, consente ad ogni soggetto di comunicare con
altri pari ed attraverso lo scambio di informazioni, conoscenze ed esperienze sono favoriti gli
stimoli alla crescita delle proprie competenze [14].
La particolare attenzione alla rigorosa definizione dei contenuti del KEP, utilizzata da
PROMETHEUS, consente di standardizzare i contenuti e quindi di rendere agevole la
comprensione dei KEP. Questo facilità l’acquisizione e minimizza la specializzazione del
KEP. In ogni caso quando si rende necessaria la specializzazione, la standardizzazione dei
contenuti rende più semplice il processo di specializzazione. Quanto detto supporta la
comprensibilità dei KEP da parte degli utilizzatori di PROMETHEUS. Per dare evidenza a
quest’ultima affermazione è stato fatto un primo esperimento che mostra come il KEP è uno
strumento più efficiente ed efficace delle fonti convenzionali per il trasferimento di
conoscenza e delle pratiche di applicazione. Per ragioni di spazio, tale esperimento non è
stato descritto in questo capitolo, ma i lettori interessati possono consultare [4].
7.2 Organizzazioni
Le organizzazioni sono un insieme strutturato di knowledge workers. Sono interessate agli
stessi servizi di questi ultimi con la specificità di intensificazione della relazione e
cooperazione tra i soggetti appartenenti ad ognuna di essa onde patrimonializzare la
conoscenza e l’esperienza di tutti i soggetti fisici appartenenti ad ognuna di loro. In
particolare, qui, interessa la relazione e la cooperazione basato sull’uso di PROMETHEUS e
consistente nello scambio di conoscenza e di tempo tra i soggetti dell’organizzazione e tra
questi ed i soggetti appartenenti ad altre organizzazione. Nella prospettiva di PROMETHEUS
le organizzazioni che interagiscono si comportano come un unico organismo operativo
complesso. Si possono distinguere le organizzazioni produttive e quelle di ricerca. Le prime
hanno particolare interesse nell’accrescere il business, le seconde nell’accrescere la
conoscenza, nell’innovazione e nel trasferire quest’ultima nei processi di business.
La possibilità di utilizzare e specializzare i KEB per lo specifico contesto
dell’organizzazione utilizzatrice preserva la identità di quest’ultima, nonostante la
collaborazione con una comunità basata sulla stessa KEB [5].
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
40/40
Valori di PROMETHEUS
Le conoscenze che costituiscono il KEP rispondono a problemi da diverse prospettive per
uno stesso package ma grazie al modello di strutturazione descritto in questo capitolo, esse
sono partizionate e localizzate nelle varie componenti dello stesso KEP. Inoltre, la struttura
dei contenuti consente al suo lettore di definire un percorso di lettura adeguato al suo stato di
conoscenza pregresso ed alla sua modalità di acquisizione. Per le conoscenze su cui ha meno
informazione, il lettore ha accesso alle fonti di base del KEP. In caso di carenza di
conoscenze o di abilità per una o più parti del KEP, sono disponibili corsi di formazione e di
addestramento e test di valutazione delle competenze. Queste caratteristiche e risorse del
KEP assicurano una rapida socializzazione della conoscenza contenuta in KEP.
L’organismo utilizzatore trova nella KEB risultati di ricerca che possono essere usati per
raggiungere più rapidamente gli obiettivi aperti dell’agenda di ricerca o di rispondere ai
problemi aperti per l’innovazione richiesta per il proprio vantaggio comparativo. Il KEP ha
tra le altre conoscenze disponibili il processo di adozione, i rischi presentati da tale processo e
le modalità per moderarli. Tutto questo consente all’organismo adottante da un lato un
significativo benchmark che favorisce l’adesione all’adozione da parte dei knowledge-worker
interni allo stesso organismo. Inoltre la rapida socializzazione dei KEP lo rende uno
strumento che favorisce la produzione rapida di nuova conoscenza o la tempestiva
innovazione dei processi di business.
La EF consente di accumulare dati rilevati nei progetti eseguiti che elaborati diventano
evidenza empirica della validità di un KEP. Queste stesse analisi consentono di migliorare
continuamente i KEP in tutte le loro componenti con conoscenza appresa durante il lavoro
(near the job learning) che dà maggiore confidenza nell’uso del KEP da parte di tutti gli
organismi interessati.
Nei KEP, grazie alla conoscenza appresa durante il lavoro, sono esplicitate conoscenze che
normalmente sono tacitamente accumulate nella mente di project manager o espresse in
documenti vari distribuiti nell’organizzazione di un organismo e difficilmente localizzabili.
Se i contenuti di KEP riguardano problemi della gestione dei progetti, l’acquisizione di
conoscenza migliora le pratiche di gestione dei progetti contenuti in essi. Se, invece, il
contenuto dei KEP riguarda altri problemi aperti del processo di business le sue componenti
ed il loro miglioramento indicano il processo più adeguato per l’adozione dell’innovazione i
rischi che si possono presentare e come mitigarli. In ogni caso, il KEP consente una migliore
gestione dei progetti da eseguire per tutti gli organismi che utilizzano la KEB.
Nella gestione della cooperazione, la rapidità di socializzazione dei KEP, in tutti gli aspetti
analizzati prima, può essere utilizzata nella omogeneizzazione delle competenze tra tutti gli
organismi cooperanti. PROMETHEUS offre risorse per la validazione empirica delle capacità
degli organismi che sono candidati alla cooperazione. In caso di turnover delle risorse umane,
PROMETHEUS offre risorse rintracciare soggetti fisici che hanno le competenze che si
cercano; oppure per formare rapidamente nuove risorse su uno o più KEP e valutarne
l’adeguatezza.
Nella delocalizzazione della produzione, PROMETHEUS offre risorse per cercare
organismi disponibili a cui commettere i lavori che sono valicati empiricamente. Oppure,
offre risorse per la valutazione delle competenze degli organismi che si candidano per
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
41/41
Conclusione
l’outsourcing o l’offshoring. In caso di piccoli scostamenti delle competenze degli organismi
selezionati da quelle ritenute necessarie, PROMETHEUS offre risorse utili per la formazione
e l’addestramento e, quindi per il superamento delle eventuali carenze riscontrate nella
valutazione.
E’ il caso di evidenziare che quando un’organizzazione ha bisogno di difendere il proprio
vantaggio comparativo in presenza di rapidi cambiamenti di mercato può trovare supporto
nella comunità che ruota attorno a PROMETHEUS. Infatti, la produzione rapida di nuova
conoscenza ed il supporto nella gestione dei progetti anche quando questi sono distribuiti,
supporta l’organizzazione utilizzatrice nel cooperare con altri organismi o nel delocalizzare la
produzione in modo da accorciare il time-to-market.
Le organizzazioni che partecipano a comunità di scambio di conoscenza ed esperienza,
minimizzano i costi ed i rischi della produzione della conoscenza e dell’esperienza contenuta
nella KEB. Questa minimizzazione costituisce un ritorno; questo ritorno è tanto più elevato
quanto maggiore è l’uso di KEP. In sintesi, PROMETHEUS favorisce l’ economia di scopo
nel mercato interno alla comunità che si crea attorno ad essa.
L’organizzazione che mette a disposizione conoscenza o esperienza definisce anche le
condizioni con cui metterle a disposizione, secondo un suo riservato modello di business,
generando un ritorno sugli investimenti effettuati per creare tali conoscenze.
L’organizzazione che l’acquisisce ha a disposizione risultati di ricerca immediatamente
utilizzabili con costi esattamente definiti, contro la ben nota imprevedibilità dei progetti di
ricerca, che accelera ed economizza. Pertanto, il mercato interno alla comunità che ruota
attorno a PROMETHEUS è in grado anche di creare economia di scala ai fornitori ed agli
utilizzatori di KEP.
8. CONCLUSIONE
In questo capitolo sono state proposte le definizioni di conoscenza e di esperienza
orientate all’adozione dei risultati di ricerca nei processi di business od in progetti di ricerca
che le utilizzino come base di partenza per realizzare nuovi obiettivi di ricerca. Queste
definizioni sono incentrate sul problema a cui la conoscenza vuole dare risposta e
sull’evidenza empirica che i risultati di ricerca piuttosto che le tecnologie derivate da essi
causino la risoluzione dello stesso problema.
Partendo da tali definizioni, tenendo conto delle lezioni apprese, sia quelle note in
letteratura sia quelle apprese dall’autore, si è proposta una struttura di Knowledge-Experience
Package che sia in grado di superare o di contribuire a superare le barriere previste
nell’adozione di nuova conoscenza nei processi di business e nello scambio di risultati di
ricerca. Il contenuto del KEP è complementare alla conoscenza che per lo stesso problema
sono rilevabili dalle fonti convenzionali, perché esso si orienta alle pratiche per l’adozione
efficace della conoscenza. Grazie alla strutturazione il KEP risulta avere un buon livello di
leggibilità e comprensibilità. Di contro, la sua produzione richiede un rilevante impegno
uomo, perciò, si prevede che la produzione sia incrementale ed anche cooperativa, con il
contributo di tutti gli stakeholders di uno stesso KEP.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
42/42
Bibliografia
Il capitolo descrive anche una piattaforma, PROMETHEUS, che realizza la gestione della
KEB che raccoglie i KEP che mettono a disposizione la/le comunità che si costituiscono
attorno ad essa. PROMETHEUS prevede che i contenuti dei KEP abbiano la strutturazione,
le componenti e le risorse proposte nello stesso capitolo.
Nell’analisi dei valori producibili da PROMETHEUS per i diversi tipi di suoi stakeholders
si evince che tra gli altri c’è il contributo nel supportare gli organismi utilizzatori a transitare
nell’Economia della Conoscenza. Ed in particolare, nel supportare modelli comportamentali
quali: diversità e vantaggio comparativo basati su competenze ad alto contenuto tecnologico;
Open Innovation, produzione distribuita, Digital Business Ecosystem.
Gran parte delle asserzioni fatte in questo capitolo hanno bisogno di evidenza empirica per
poter diventare patrimonio universalmente accreditato oppure, addirittura, riconosciuto.
Pertanto, c’è da fare molto lavoro per produrre tale evidenza empirica. L’esecuzione di
questo lavoro è un impegno dell’autore che invita tutti i ricercatori, i professionisti e gli
organismi interessati a questi argomenti a collaborare anche attraverso la partecipazione alle
costituende comunità di PROMETHEUS.
9. BIBLIOGRAFIA
1. A.Aamodt, M.Nygard. Different roles and mutual dependencies of data, information and
knowledge - An AI perspective on their integration. Data and Knowledge Engineering, 1995,
vol. 16, pp.191–222.
2. K.Althoff, B.Decker, S.Hartkopf, A.Jedlitschka. Experience Management: The Fraunhofer
IESE Experience Factory. Proceedings of Industrial Conference Data Mining, Leipzig, July
2001.
3. P.Ardimento, M.T.Baldassarre, D.Caivano, G.Visaggio. Innovation Diffusion through
Empirical Studies. In: Proceedings of the 17th International conference on Software
Engineering and Knowledge Engineering (SEKE), Taipei China, July 2005.
4. P.Ardimento, D.Caivano, M.Cimitile, G.Visaggio. “Empirical Investigation of the Efficacy
and Efficiency of tools for transferring software engineering knowledge”, Journal of
Information & Knowledge Management, Volume 7, ISSUE 3, September 2008.
5. P.Ardimento, M.T.Baldassarre, D.Caivano, M.Cimitile, G.Visaggio. “Controlled Experiment
On Search Engine Knowledge Extraction Capabilities”, proceedings of 3rd International
Conference on Software and Data Technologies (ICSOFT), ISBN: 978-989-8111-57-9, pp.
388-395, INSTIC Press, Porto Portugal, 5-8 July 2008.
6. P.Ardimento, M.T.Baldassarre, M.Cimitile, G.Visaggio. “Empirical Experimentation for
Validating the Usability of Knowledge Packages in the Innovation Transfer”,
Communications in Computer and Information Science, ISSN: 1865-0929 (Print) 1865-0937
(Online), ISBN: 978-3-540-88654-9 (Print) 978-3-540-88655-6 (Online), volume 22, pp. 357370, November 2008, Springer Berlin Heidelberg.
7. M.T.Baldassarre, G.Visaggio. Report on Empirical Investigations. White paper:
http://serlab.di.uniba.it/about_us_it/people_it/TBaldassarre_it/.
8. V.R.Basili, C.Caldiera, H.D.Rombach. Experience Factory, Encyclopedia of Software
Engineering. vol.2, pp 469 – 476, John Wiley &Sons, 1994.
9. V.R.Basili et al.: Building Knowledge through Families of Experiments. IEEE Transactions
on Software Engineering, July 1999.
10. V.R.Basili, C.Caldiera, H.D.Rombach. Experience Factory concepts as a set of Experiences
Bases. In: Proceedings of Thirteenth Conference on Software Engineering and Knowledge
engineering (SEKE), pp 102-109, Buenos Aires, Argentina, June 2001.
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
43/43
Bibliografia
11. H.Chesbrough. Open innovation. Harvard Business School Press, Harvard, 2002.
12. H.Chesbrough. Open Platform Innovation: Creating Value from Internal and External
Innovation. Intel Technology Journal, August 2003.
13. R.Conradi, T.Dingsøyr. Software Experience Bases: A Consolidated Evaluation and Status
Report, PROFES 2000, pp. 391-406.
14. K.C.Desouza, Y.Awazu, P.Baloh. Managing Knowledge in Global software Development
Efforts: Issues and Practices. IEEE Software September/October 2006.
15. P.Dini et alter. The Digital Ecosystems Research Vision: 2010 and Beyond. Creative
Commons, Stanford, California, 2005.
16. Great Britain, Department of Trade and Industry (DTI). Our Competitive futures: building the
knowledge driven economy, DTI, London 1998.
17. Economic and Social Research Council, Annual Report, 2004-2005 Published by The
Stationery
Office
(TSO)
(http://www.officialdocuments.gov.uk/document/hc0506/hc00/0092/0092.asp).
18. R.G.M.Kemp, M.Mosselman, J.Blees, J.Maas (2003), Barriers to entry , Research report by
EIM,
Business
&
Policy
Research,
number
H200301,
153
pages,
http://www.entrepreneurship-sme.eu/pdf-ez/H200301.pdf.
19. D.Foray. The Economics of Knowledge. Cambridge, Mass, London, ISBN 0-262-06239-9,
MIT Press 2006.
20. T.Gorschek, C.Wohlin, P.Garre, S.Larsson. A Model For Technology Transfer in Practice.
IEEE Software November/December 2006.
21. B.Kitchenham et alter. Guidelines for performing Systematic Literature Reviews in Software
Engineering. EBSE Technical Report (2007).
22. D.J.Reifer. Is the Software Engineering State of the Practice Getting Closer to the State of the
Art? IEEE Software, vol. 20, n. 6, pp. 78-83 (2003).
23. K.Schneider, T.Schwinn. Maturing Experience Base Concepts at DaimlerChrysler. Software
Process Improvement and Practice. vol. 6, pp. 85–96, (2001).
24. R.V.Solingen, E.Berghout. The Goal/Question/Metric Method: a Practical Guide for Quality
Improvement of Software Development. McGraw Hill, London, (1999).
UNIBA - SERLAB – SER&PRACTICES
Software Engineering Research Universita degli Studi di
Bari Via Orabona, 4 c/o Dipartimento di informatica 70126 – Bari
http://serlab.di.uniba.it http://www.serandpractices.com
44/44