Newsgroup: it.lavoro.informatica
Titolo: Cosa ne pensate dell'approccio model driven?

Come da oggetto, cosa ne pensate della MDA (model driven
architecture) ?


Visto che nessuno si sbilancia ci provo io: dipende che ragazza fa la parte
model! Il resto è una conseguenza! :-D
Pardon, è la fame...


Di cosa?


Bella domanda! :-)
Sarò mica l'unico ad aver fame...
Ciao, Alessandro

 Sarò mica l'unico ad aver fame...
Boh, ora no, ho mangiato da poco una piadina prosciutto cotto formaggio
pomodori maionese.
PaF

 Ciao, Alessandro
Beh, io quel tipo di fame non ce l'ho in questo momento. Ma non
significa che non si potrebbe sempre consumare qualcosa. :D


Sti uomini... mi viene in mente lo skatch di Migone dove dipinge la figura
dell'uomo che ritorna a casa dopo una giornata estenuante ed è distrutto,
appena varca la porta di casa comunque c'ha sempre in testa la vocina
"tromba tromba tromba..." :-)
Ciao, Alessandro


Ne consegue che...qui nessuno ha mai provato ad utilizzare la
metodologia in oggetto (in Italia le metodologie sono tutte abbastanza
personalizzate o inventate al momento dai PM e SwEng)  :))
Anzi, sarei quasi tentato di scrivere che nessuno ne sa molto di MDA:)

 architecture) ?
Nota che MDA e' il nome dell'iniziativa OMG per lo sviluppo di sw
model-driven. Il termine piu' generale e' model-driven development
(MDD) o model-driven engineering (MDE).
Un parere personale? Prerequisiti:
1) Sviluppare (o comprare ;-) ) tool appositi per un particolare
dominio. E ovviamente le cose di valore costano ...
2) Mandare a spasso chi non respira se non vede sorgente puro
3) Spendere in formazione: chi pensa che MDE sia fare il diagramma
delle classi e generare gli skeleton, non ha capito niente.
Per esperienza personale la differenza e' significativa in termini di
produttivita'. E comunque anche in Italia c'e' qualcuno che se ne
intende.


Lo vedo con diffidenza poiche' mi da l'idea che al primo cambiamento 
sostanziale (nuovo framework, necessita' di vario tipo un po' particolari) 
la struttura crolli e sia tutto da rifare.
Bisogna insomma sperare che il tool sia integrato con quanto tu vuoi 
utilizzare, altrimenti ciccia.
E' vero? 

 intende.
Ve l'ho chiesto perche', per mia personale esperienza, e' veramente una 
pessima idea ... IMHO come d'altra parte buona parte delle cose 
concepite dall'OMG. Secondo me l'idea e' talmente ambiziosa da essere 
irrealizzabile per scopi pratici in applicazioni serie. 

 particolari) la struttura crolli e sia tutto da rifare.
Gia', o tutto da rifare o cazzi amari da aggiustare.

 per scopi pratici in applicazioni serie.
Spero solo di non dover leggere ora che chi non usa MDA e' un pricinpiante 
della programmazione. O che MDA e' il tool giusto in certe situazioni e 
altri tool lo sono in altre. E tu devi sempre ben poderare tutto prima di 
scegliere...che palle!
Spero di sentir dire per una volta che una metodologia (MDA nella 
fattispecie) non e' indispensabile. Lo vuoi usare? Buon per te. Ma ci sono 
sicuramente altri metodi altrettanto validi, e questo vale per ogni 
situazione.
Me lo voglio sentir dire per una volta. 

 Anzi, sarei quasi tentato di scrivere che nessuno ne sa molto di MDA:)
Diciamo che chi conosce il manifesto del ng sa che questo non e' il ng
adatto per una tale discussione.
Ad ogni modo in teoria noi seguiamo una teoria che riprende l'Agile MDD.
Di fatto poi tutte queste discipline non vanno prese come dottrine ma come
spunto per creare una propria metodologia. Inutile illudersi che per ogni
problema esiste una soluzione pronta e su misura e che ci consenta di
risolvere il quesito nello stesso modo di un esame universitario. Quello
che conta e' il sapersi indirizzare verso le necessita' attuali piu'
importanti come quella di suddividere chiaramente l'implementazione da un
modello e di come saper creare un modello di soluzione che possa venir
compresa da una platea eterogenea. E su questo non posso solo che vedere
benefici nel riuscire a definere un modello indipendente dalla tecnologia
utilizzata. Standardizzarsi su terminologia e software puo' accadere solo
dopo molti anni e dopo che questa teoria viene accettata comunemente cosi'
come dopo tanti anni e' successo per l'UML. Voler imporre delle regole
rigide ad una disciplina acerba e in continua evoluzione significa
rallentare tutto il processo per mancanza di chiari obiettivi e
incompatibilita' di soluzioni automatizzate. Per ora, soprattutto, e'
meglio sperimentare parzialmente piuttosto che impuntarsi a definire il
chiaro e lo scuro.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 irrealizzabile per scopi pratici in applicazioni serie.
Come ho scritto prima, confondi approccio model-driven con MDA (che e'
un'iniziativa OMG). Scordati UML, non e' da li che si deve partire.
MDE in sostanza consiste ad aggiungere un altro passo di compilazione:
esattamente come siamo passati da Assembly a linguaggi piu' elevati
(in senso di astrazione), possiamo passare dai linguaggi di
programmazione ai strumenti piu' avanzati. Un passo fondamentale e'
pero' sviluppare tool per un particolare dominio: e' impossibile
applicare MDE indiscriminatamente a tutti i progetti. Quindi, supposto
di avere un buon tool MDE per il tuo particolare dominio, avrai SEMPRE
vantaggi per la produttivita' e qualita'. Il punto e': vale la pena
comprare o sviluppare un ambiente di modellazione? Dipende da quanti
soldi costano i sistemi che fai e che vantaggio economico hai ad
abbattere i tempi di produzione e ad alzare la qualita'. Esistono
ambiti in cui questi fattori hanno ancora un peso.


Come dicevano, non e' che se cambi qualcosa (esce un nuovo framework ad 
esempio) hai buttato via tempo?
Considerando che per sviluppare un ambiente del genere ci vogliono anni, e 
che la programmazione (framework, paradigmi di programmazione ecc..) evolve 
molto piu' velocemente, il rischio e' alto.

 ha scritto nel messaggionews:1190285858.9...@o80g2000hse.googlegroups.com...

In genere basta cambiare il generatore di codice; l'ambiente di
modellazione e gli strumenti di analisi/verifica a livello di modello
rimangono invarianti. Infatti, molti ambienti di modellazione
supportano piattaforme target diverse.
Rimane il fatto che occorre un investimento significativo sia in
termini di tecnologia che di formazione.

Ciao,
esistono tool & tool.
Ci sono quelli dove è necessario personale altamente skillato come ad
esempio AndroMDA, che tra l'altro è pure opensource (
www.andromda.org
)
e quelli piu' verticalizzati.
In particolare ne esiste uno italiano degno di nota e che sopratutto
non richiede skill particolari.  Si chiama ManyDesigns Portofino
(
www.manydesigns.com
) e è un MDE orientato ai sistemi informativi
aziendali (tipo ERP,CMS,ecc)
Ce ne sono comunque parecchi stranieri ed in particolar modo
francesci. Non so il motivo ma in Francia c'e' un grande numero di
aziende che fa prodotti MDE.
Dove lavora il sottoscritto (che è nerd fino al midollo) ci sono i
favorevoli come il sottoscritto che sono stufi di scrivere sempre il
solito codice e gli integralisti dei for e dei while che invece nn
l'apprezzano. In ogni caso si fanno delle ottime cose concentradosi
piu' sui requisiti che sul codice che amo / odio!!
Ovviamente non tutti i progetti si possono fare con un MDE. Secondo me
il difficile è proprio valutare quando usarlo e quando è meglio
procedere all'antica!
ciao,
Marco

 non richiede skill particolari.  Si chiama ManyDesigns Portofino
Perdona, prendo spunto dal tuo post per fare una considerazione. Ma
perché c'è la mania (è diffusa, non sei solo tu) di usare 'skill' e
'skillato' al posto di 'competenza' e 'competente'? Cioè, è perché 'fa
più figo', o c'è qualche altro motivo? Mi piacerebbe davvero che
qualcuno me lo spiegasse.
Circa il resto, grazie per le segnalazioni, molto interessanti.
-- 
Ciao!
Luca

 qualcuno me lo spiegasse.
Ciao Luca,
sinceramente per me sono sinonimi. Mi sembra che in gergo informatico
ci sia una specie di licenza per usare certi termini.
Non vedo altri motivi...ne tanto meno il fatto di essere fighi.
Magari :-)) bastasse qualche termine anglofono!
Ciao
Marco
