Title: Sistemi esperti e applicazioni pratiche: una visione alternativa.
1Sistemi esperti e applicazioni pratiche una
visione alternativa.
2Obiettivi
- Mostrare due esempi di semplicissimi Sistemi
Esperti reali, cioè utilizzati effettivamente in
applicazioni pratiche. - Mostrare un esempio di ciclo di produzione per il
software sviluppato in ambiente Client-Server. - Introdurre alcune peculiarità della piattaforma
tecnologica Microsoft.
3Assunto principale
- In molte applicazioni pratiche i modelli di
processo sono estremamente semplificati quindi
le implicazioni teoriche sono limitate. - Gli aspetti implementativi, progettuali e di
project management sono i veri elementi critici
del progetto.
4Sistema esperto. Di che ?
- Sistema automatico di ausilio alle decisioni
- Necessario alla riproduzione e alla sintesi di
expertise
5Regole..
- Lautomobile non parte
- SE al motore arriva la benzina E il motore gira
ALLORA problema di candele - SE il motore non gira, E le luci non si accendono
ALLORA problema di batteria - SE il motore non gira, E le luci si accendono
ALLORA problema di avviamento. - .
6. e pesi
- R1 -gt C1(0.7) e C2(0.3)
- R regola
- C conclusioni
7Quindi
- Il problema è navigare lungo lalbero delle
scelte, avendo la possibilità di selezionare il
ramo ottimo secondo un certo approccio - Statistico
- Fuzzy set theory
- Theory of evidence Dempster/Shafer
- .
8Limiti attuali
- Manca una adeguata teoria della conoscenza
- Mancano adeguati paradigmi di rappresentazione ed
elaborazione - Percezione non paragonabile a quella umana
9Esempio 1A.P.S. (Application Processing System)
in ambito finanziario
10Descrizione
- A.P.S. (Application Processing System) sistema
automatizzato di ausilio alle decisioni (D.S.S.,
Decision Support System) per lerogazione di
finanziamenti personali. - Concetti principali
- Variabili di score
- Scorecard
- Policy Rules e Exception Rules
- Cut off.
11Scorecard e variabili di score
12Policy e Exception rules
13Cut Off
14Definizione del punteggio
Verifica policy rule
Verifica exception rule
Cut Off
Decisione
15Quindi.
- Sistema molto semplice senza particolari problemi
teorici - Problemi computazionali/gestione informazione per
scorecard grandi e applicazioni real-time (p.e.
web-based). - Problemi statistici legati alla correzione dei
valori sulle variabili di score.
16Raffinamento del processo
17Esempio 2Controllore di pianificazione
biotecnica per allevamenti ittici
18Descrizione
- Necessità di prevedere la crescita e la mortalità
degli animali contenuti in un allevamento ittico
sulla base di - Alimentazione
- Specie
- Dimensioni
- Parametri ambientali
19Tabelle di pianificazione
- I parametri del modello, vengono conservati, per
ciascuna specie ittica, in tabelle, organizzate
per temperatura e dimensione. - Tabelle di alimentazione
- Tabelle di crescita
- Tabelle F.C.R. (Factor Conversion Rate)
- Tabelle di mortalità
20Modello del processo
21Ma..
- Le variabili del processo sono così instabili
(peculiarità della specie ittica, temperatura,
cause di mortalità) che la pianificazione è solo
a breve termine (10-15 giorni) e deve essere
riallineata continuamente sulla base dei dati
storici e dellesperienza del pianificatore.
22Quindi.
- Sistema molto complicato con molti problemi
teorici che non è vantaggioso o opportuno o
possibile risolvere - Problemi biologici legati alla definizione del
modello. - Problemi statistici legati alla elaborazione dei
dati storici.
23Raffinamento del processo
24Conclusioni
- Molto spesso gli aspetti economici, tecnologici e
di project management legati allo sviluppo di
applicazioni SW prevalgono sugli aspetti teorici
di implementazione del processo. - La parte esperta del processo viene risolta a
mano sulla base dellesperienza. - Lutilizzo di tecniche di IA raramente va oltre
ad un generico raffinamento del modello
statistico.
25La morale..
- Gli aspetti teorici sono COMUNQUE e SEMPRE
importantissimi e da questi non bisogna mai
prescindere. - Semplicemente, è necessario adeguare i propri
sforzi alle reali esigenze del progetto.
26Il mondo Client-Server
27Il mondo Client-Server oggi..
- Budget limitato, tempi ridotti.
- Passaggio da SW-House a SW-Factory.
- La componente tecnologica è primaria nello
sviluppo di applicazioni. - Il Web aumenta la complessità delle applicazioni
riducendo la sofisticazione degli strumenti.
28Il problema del secondo
- La realizzazione di applicazioni SW solitamente
si concentra non sulla applicazione in corso di
sviluppo ma su una eventuale seconda
applicazione, simile alla precedente e che possa
giustificare gli investimenti.
29Maturazione della competenza
Commessa
- Analisi si acquisisce competenza in un
particolare settore applicativo. - Application Framework si costruisce una
piattaforma SW riutilizzabile. - Semilavorato si progetta una quasi
applicazione che può essere riutilizzata con
pochi aggiustamenti. - Pacchetto rivendibile as-is.
Prodotto
30IN TEORIA.
31(No Transcript)
32(No Transcript)
33 E IN PRATICA
34Fasi del progetto reale
Analisi narrow
Progetto
Fase del contingente
Param.narrow
Sviluppo
Fase del pacchetto
Riusabilità
Analisi wide
Param.wide
Sviluppo
35Il principio necessità/opportunità
- E evidente che molte volte una metodica così
articolata risulti non solo eccessiva ma
addirittura dannosa per la corretta realizzazione
del progetto. - In ogni caso, i criteri di opportunità e di buon
senso che vanno sempre applicati e che permettono
di adeguare gli sforzi alle esigenze, non devono
far dimenticare la necessità di organizzare il
flusso delle attività secondo un processo chiaro,
definito e facilmente ripetibile. - Confondere la necessità con lopportunità e il
primo errore del progettista.
36La piattaforma Microsoft
37La piattaforma Microsoft
- Microsoft Visual Studio
- Tecnologia COM e DCOM
- TECNOLOGIA RAD
- Mono-piattaforma-multipurpose
38AFTER HOURS
39Le sei regole doro (LSD)
- GIGO Garbage In Garbage Out
- CCCC Commenti Convinti Chiari Cristallini
- SSSS Scrivo Sempre Software Standardizzabile
- UUUU Utilizzo Unicamente Utility Universali
- SAL Stato Avanzamento Lavoro - Senza, Alimento
Liti - DEBUG Dovendo Evidenziare Bachi, Utilizzo Grano
salis
40I dieci comandamenti
- Si fa o non si fa (Principio di Karate Kid).
- La velocità di un plotone è data da quella del
soldato più lento. - Il codice rigido si spezza.
- Se non so chiedo, se so spiego.
- Interfaccia gonfia, lutente ingrassa.
- Lanalisi è il piccione del software monumento.
- Giusta visualizzazione di dati giusti.
- Se non riesco a focalizzarlo in 30 minuti ho
sbagliato lanalisi. - Se riesco a focalizzarlo in 30 minuti ma lo
realizzo in 30 giorni, ho sbagliato strumento. - Se riesco a focalizzarlo in 30 minuti e lo
realizzo in 3 ore, ci sarà qualcosaltro che ti
rovinerà la giornata.
41I due principi basilari
- Principio del velocipede
- Principio del Titanic