Gli svantaggi di UML
Unified Modeling Language (UML) è un linguaggio di modellazione software con enfasi su grafica e movimento. È il linguaggio standard per modellazione e design software, secondo Sparx Systems. Tuttavia, alcuni sviluppatori e aziende di design software possono riscontrare problemi usando UML. Gli svantaggi includono l'aggiunta di task al lavoro del progetto e l'eccessiva dipendenza dai diagrammi UML.
Tempo
Uno svantaggio che alcuni sviluppatori trovano in UML è il tempo per gestire e mantenere i diagrammi. Per funzionare, i diagrammi UML devono essere sincronizzati col codice software, richiedendo tempo per impostazione e manutenzione, aggiungendo lavoro al progetto. Piccole aziende e sviluppatori indipendenti potrebbero non gestire il lavoro extra per sincronizzare il codice.
Non chiaro chi ne beneficia
Non è sempre chiaro chi beneficia di un diagramma UML. Secondo un articolo sul sito Eiffel Software, UML non è vantaggioso per gli sviluppatori software, perché lavorano con codice, non immagini o diagrammi. I diagrammi UML possono essere utili a project manager o dirigenti per illustrare come funzionerà uno strumento software, ma potrebbe essere più facile disegnarlo su lavagna o carta, invece di imparare il linguaggio UML.
Diagrammi travolgenti
Creando un diagramma UML con lo sviluppo software, il diagramma potrebbe diventare travolgente o eccessivamente complicato, confondendo e frustrando gli sviluppatori. Non possono mappare ogni singolo scenario nel diagramma, e anche provandoci, diventa disordinato. Un modo per combattere questo è includere solo fatti base e info di alto livello nei diagrammi UML, secondo un post su Stack Overflow di Stefano Borini, chimico quantistico e sviluppatore UML.
Troppa enfasi sul design
UML pone molta enfasi sul design, problematico per alcuni sviluppatori e aziende. Guardare un ambito software in un diagramma UML può portare stakeholder ad over-analizzare problemi, e far perdere focus spendendo troppo tempo e attenzione su funzionalità. Non si può risolvere ogni problema con un diagramma UML: alla fine bisogna iniziare a codificare e testare. Brody Gooch, co-creatore di UML, disse che la visione originale era un "linguaggio grafico per aiutare a ragionare sul design di un sistema mentre si svolge". Se ci si blocca usando un diagramma per identificare e risolvere problemi, può ritardare il lavoro reale necessario.