Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How often is UML diagramming used "in the real world?" [closed]

Tags:

uml

Almost every one of my programming classes has made use of UML, but none have really explained when or where it might be used in a professional setting. Is it done for every single file in a project, or is there some rule of thumb of when you might want to use it? Also, is it more commonly done by hand (which I've always dreaded) or using some sort of generator?

like image 807
RICK Avatar asked Apr 09 '15 22:04

RICK


2 Answers

This question is very good example of opinion-based and very broad question with no real problem to solve behind it and no one correct possible answer

Certainly in the amount of millions of software developers there are some who learned to use UML and do use it. And there are some who either did not learn to use UML or just don't use it for whatever reason

  • I recall that in the pre-agile era it was believed that no "big" software can be realized without thorough analysis and modeling phase and no "big" software contract can be signed if the business documents don't include some UML-style pictures

    And in some countries it is still true and government-owned agencies declare what kind of documentation software contractor must provide, and for some of the requirements an UML picture is the good form

    See also:

    • Wikipedia: Rational Unified Process (RUP)
    • Wikipedia: Software requirements specification
    • Programmers: Writing a Software Requirement Specification

So there are UML believers, UML skeptics and even UML haters, it depends on ... things.

I'm UML believer

  • and so is for example Mr. Kenji Hiranabe from Change Vision, Inc the company behind Astah UML modeling tool and he says

    ...Is modeling obsolete? Is UML dead? I don't think so. In this article...

    as foreword to article Modeling in the Agile Age: What to keep next to Code to Scale Agile Teams

  • my favorite guideline is what The Guru said in an interview with Mark Collins-Cope for the Objective View magazine on Sep 12, 2014

    Grady Booch, creator of the Unified Modelling Language (UML):

    "The UML should be used to reason about alternatives. Put up some diagrams. Throw some use cases against it. Throw away those diagrams then write some code against you best decision. Repeat (and refactor)"

How you finally evaluate "..UML...commonly...real world.." depends on what you want to see and which software development best practices you adopt in your own work

like image 179
xmojmr Avatar answered Sep 21 '22 19:09

xmojmr


It depends on your role, in most developer roles you will rarely, if ever, have to use it. I can see it being useful if you are designing something though, like a new database structure, or architecting a new system or application.

It can be useful for lead developers, architects, or IT managers in the design stages of the application for communicating ideas to the business folks as well as passing on a plan for the development team that will be building it out.

like image 32
Fin Dev Avatar answered Sep 23 '22 19:09

Fin Dev