Il giorno 03/feb/08, alle ore 21:31, Java ha scritto: > Y3s ha scritto: >> Il giorno 03/feb/08, alle ore 20:30, giuseppe saviano ha scritto: >> >> <CUT> >> >> >>> ho capito che la progettazione uml in alcuni casi risulta limitante; >>> >> >> In alcuni casi?!? Sempre direi...UML è IMHO una roba di cui non ho >> mai capito il senso. Se devo spiegare un concetto ad altre persone è >> molto più facile e comprensibile un pezzo di codice ben scritto >> (soprattutto se è python). Se lo devo spiegare a un non tecnico, >> avere uno schema pieno di riquadri, linee e freccette non aiuta di >> certo...mentre per la documentazione, codice ben scritto si documenta >> al 90% da sè. I commenti servono proprio a spiegare il 10% rimanente. >> Insomma, non trovo una sola applicazione utile di UML, se non quella >> di vendere tanti libri e rompere le scatole a chi vorrebbe produrre >> invece di perdere del tempo ;-) >> >> > Mah... > Vai e dillo alla IBM (Microsoft Hp etc etc)che con l'uml ci > "perdono" un > sacco di tempo. Ti do una dritta generale: quando un'azienda fa > qualcosa, è perché ci guadagna, non perché ci perde del tempo.
UML viene spinto dai manager non certo da quelli che lavorano ;-) Immagino che praticamente tutti gli sviluppatori eviterebbero volentieri se possibile. In ogni caso, IBM, microsoft, hp, ecc. fanno software da ben prima che venisse inventato UML. O Java. O qualunque tecnologia "irrinunciabile". E non mi pare che guadagnassero meno. > Poi cerchiamo anche di separare un po le cose. Una cosa è quando > fai il > tuo programmino o sitini internet. Un'altra è quando devi > progettare una > grossa applicazione alla quale trovi impegnati diversi team. Come > esercizio potresti provare ad analizzare i codice dell'ultimo kernel > linux. Vediamo se lo capisci al 90%. Come tutti sanno, linux è pieno di UML, vero? UML come strumento di progettazione è del tutto inutile, come ampiamente dimostrato da praticamente tutti i software open source, linux incluso. In ogni caso, se Linus (intendo ovviamente la community) avesse scritto tutti i diagrammi UML prima di cominciare lo sviluppo di linux, probabilmente non mi avrebbe semplificato la comprensione del kernel (che è un software particolarmente complesso e dipendente da dettagli di basso livello), ma sicuramente non avremmo avuto alcun "linux" funzionante per chissà quanti anni. Ti consiglio di leggere il famoso saggio "La cattedrale e il bazaar", di E. Raymond, reperibile facilmente in rete. > L'UML fa da "linguaggio universale" che chiunque può prendere capire e > implementare. Chiunque studi UML. Come chiunque studi python (o qualunque altro linguaggio altamente espressivo). Con la differenza che se scrivo in python ho anche un prototipo funzionante. > Lo si può usare *anche* come documentazione inserito all'interno di > processi di sviluppo agili tipo XP programming e simili. Ma magari > avrete da ridire anche su di questi... Continuo a non capire perchè devo mettermi a disegnare quadretti e freccette per documentare qualcosa. Se ho bisogno di una documentazione tecnica ho codice e commenti, se invece ho bisogno di documentazione per i manager, scrivo una mezza paginetta in inglese/ italiano/quant'altro. > Per maggiori dettagli sull'UML: > http://it.wikipedia.org/wiki/Unified_Modeling_Language Conosco UML, grazie. (com'era la pubblicità? se lo conosci lo eviti?) > Per l'elenco di aziende che si divertono a perdere tempo: > http://www.omg.org/cgi-bin/apps/membersearch.pl (schiacciare "search") Che poi sarebbe proprio da vedere come e quanto viene utilizzato all'interno delle aziende. Cosa impossibile da fare per software closed. -- Antonio Valente _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python