When in high school they taught UML they talked as it was vitally important also in medium-sized projects. How actually is it? Do you use it?

  • 3
    Teachers are idealists.
    In the real world where real things have to get done before real deadlines no one uses UML.

    Tell you what, ppl. even copy&paste (duplicates) code all over the place, hands out "friend access" to classes inner workings and overall cheats and take shortcuts all the time...
  • 2
    Yes we used it. 15 years ago...
  • 0
    I've never ever used it other than for school :P Even at work, we do of course define a structure and architecture but we don't use UML.
  • 0
    Sequence Diagrams are good to see which system has control and where the gaps are. websequencediagrames.com is an easy way to create them.

    Class diagrams can be useful if you are working OOP old-school.

    The rest of it is pretty much gone the way of software as engineering
  • 0
    I use it a lot. But I mainly use class diagrams and flow diagrams.
  • 0
    Excellent question, one of my lecturers keep on saying it's important but I don't know anyone who used it for projects.
  • 0
    Often use diagrams when writing up tech designs. But they are mainly abstract overviews and flow charts that don't really follow any standards. Customers seems to like them as they referrer them in meetings. Makes it simpler to discuss what the plan is.
  • 1
    I use UML quite frequently. It is so helpful in creating technical designs BEFORE writing any code and helps a lot to explain a solution to other devs. Also did a lot of functional.designs with use case diagrams and activity diagrams. And don't forget you can model complete infrastructures and architectures which does provide very meaningful and useful documentation. It also really helps to create reusable components with the right level of abstraction.

    Keep in mind that software that has been explicitly designed is superior to software that hasn't been. Any explicit design is always better than 'designing in your mind' or just started coding and let the design emerge because then you have effectively no design at all and as such you cannot spot design flaws.

    If you never use it, wait what happens when in the future you get a job at a very professional company that really ENGINEERS their software. Most companies unfortunately don't.
Add Comment