2010-06-03 6 views

risposta

5

Non penso che i diagrammi UML siano parte essenziale della documentazione di un progetto, sia che si tratti di progetti grandi o piccoli.

I buoni commenti in giro forniscono molto più valore dei diagrammi sofisticati.

Personalmente ho un'impressione UML è un giocattolo del mondo accademico. È l'unico posto che stavo ascoltando e vedevo persone in giro con UML, SOA e così via.

Nella mia pratica di lavoro ho quasi mai visto UML. Bene, forse una volta durante il mio progetto di termine e al mio attuale lavoro in cui abbiamo un paio di diagrammi di otto anni (e proprio lo stesso deprecato) da qualche parte sul server FTP interno.

+0

+1 Per attestante che non sono essenziali, ma ho diasagree sui commenti - buona costruzione con descrittiva, codice leggibile è molto più utile di commenti. Inoltre, penso che dire che UML sia un giocattolo del mondo accademico è un po 'troppo - hanno sicuramente dato troppa fiducia alla generazione del codice UML salvandoci tutti - ma UML ha ancora un uso pratico - a seconda della situazione. –

+1

@David Relihan: Non sto dicendo che UML è completamente inutile. Penso solo che sia un po 'sopravvalutato. L'utilizzo di UML non comporta automaticamente un software di qualità. Basta usarlo come una forma di documentazione se si adatta alle tue esigenze. –

0

Vedere la risposta per Q here simile. Anche se questi non sono un devono

1

Generalmente UML formale è troppo per i piccoli progetti. Basta attenersi ai diagrammi di classe di base e ai diagrammi dei casi d'uso semplici.

I progetti di piccole dimensioni sono (nella mia esperienza) più spesso soggetti a modifiche, pertanto i diagrammi non saranno aggiornati molto spesso. È molto più probabile mantenere aggiornato un diagramma meno formale piuttosto che ripetere tutte le fantastiche cose UML.

5

Beh, dipende davvero dal progetto. Penso che sia sbagliato creare semplicemente un diagramma UML come una regola senza valutare se sarà davvero utile.

Tuttavia ci sono alcune situazioni evidenti quando sono utile:

  • Se il progetto sarà alcun modo di grandi dimensioni in termini di struttura OO, allora è di solito utile per creare un diagramma delle classi. In questo modo puoi occuparti delle astrazioni fino a quando non è il momento di entrare nei dettagli.

  • Se si proietta sarà in gran parte dell'interfaccia utente guidato allora può essere molto utile per creare un diagramma Use Case come un modo di definire i requisiti. Questo è particolarmente utile se puoi far acquistare al tuo cliente questo metodo.

  • se sembra che il sistema avrà molte interazioni tra gli oggetti quindi la creazione di un diagramma di sequenza può essere utile per comprendere le interazioni. Inoltre, penso che i diagrammi di sequenza sono il più intuitivo per gli sviluppatori, come ho notato un sacco di sviluppatori istintivamente diagramma là interazioni come questo - anche se non sono a conoscenza di UML - in semplici schemi powerpoint \ Visio.

  • Deplyoment diagrammi sono ovviamente utile se il vostro sistema utilizza molte technolegies e richiedono un sacco di HW.

Penso punto chiave è che utilizzare solo UML quando il software si complica al punto in cui abbiamo bisogno di pensare in astrazioni - UML aiuta a visualizzare e documentare queste astrazioni.

+1

D'accordo, e vorrei aggiungere che qualsiasi processo deve essere adattato al progetto. C'è no-one-size-fits-all soluzione quando è venuto a processi di sviluppo – chrisbunney

+0

@chrisbunney Esattamente - ma non è per mancanza di provare !!! –

0

UML è morto, nessuno che conta lo utilizza.

Le uniche persone che usano UML sono tipi consulente che scrivono articoli e stanno cercando di essere formale e fantasia e prive di consistenza.

Se UML è così grande perché i cant trovare qualsiasi per nessuno dei progetti che Google pubblica sul googlecode?

Dov'è l'UML per Ruby o Python o DOT NET o Java?

+0

Non è un po 'estremo? UML è uno strumento come qualsiasi altra cosa. Sono d'accordo sul fatto che in passato sia stata posta molta enfasi su di esso, ma sicuramente ha ancora il suo uso. –

+0

hai detto che UML è morto, quindi cosa consiglia di utilizzare quando vogliamo progettare un grande progetto? –

+0

Penso che MS e Sun usino internamente UML o almeno diagrammi comparabili. Ruby e Python sono progetti di community (afair), non sono pianificati come software commerciali ma si evolvono invece. Open-Source ha spesso problemi con progetti ad alta complessità che si trasformano in grandi mucchi di fango (il che non significa che i progetti siano cattivi, solo che dovrebbero aver programmato di più). Inoltre: cerca di distinguere da ciò che è realmente utilizzato e ciò che ti è permesso vedere. Forse Google usa i diagrammi ma non li pubblica? – dbemerlin

0

UML è morta perché l'uso di strumenti open source crapy !! Molte aziende prendono strumenti gratuiti e creano solo pochi diagrammi, nessun tipo di formazione, quindi dicono che non è utile. Questo è un uso non professionale e molto limitato di UML è un vero disastro per i progetti !!

+0

Divertente come la ragione per cui la società dietro UML non può nemmeno usare RUP/UML per progettare e costruire un prodotto di qualità. Si potrebbe pensare che la loro strumentazione sarebbe una convalida del loro processo ... forse lo è .. forse questo è il motivo per cui gli strumenti fanno schifo, perché UML fa schifo. –