Что такое отличный способ узнать хороший дизайн UML? Как часто вы рисуете диаграммы (кроме статической диаграммы классов)? Каков наилучший источник для его изучения?
Каков наилучший источник для изучения UML?
Ответ 1
Я думаю, что Мартин Фаулер "UML Distilled" - лучшая книга для изучения синтаксиса UML. Это краткое и плотное с информацией.
К сожалению, знание синтаксиса UML хорошо - это не то же самое, что знать, как проектировать.
Ответ 2
Я не знаю, это зависит от того, насколько велика команда. Класс/последовательность/случаи использования - это то, что в основном используется для меня, я думаю. Самое главное - не злоупотреблять диаграммой, главная цель - помочь общаться в команде, помогать понимать вещи одинаково, а не просто делать какие-то бесполезные диаграммы и не использовать их.
Однако очень сложная система, разработанная группой команд, очевидно, требует больше диаграмм, я думаю, просто чтобы убедиться, что все знают, что они делают, и как все относится к системе. В наши дни очень много хороших инструментов, которые помогают в моделировании.
Ответ 3
Был один проект, над которым я работал, где мы использовали Enterprise Architect для создания UML-диаграмм, которые мы обменивали (с обратной и обратной конструкцией) с исходным кодом С#.
Он (UML) не умел определять реализацию каждого метода (используя диаграммы последовательностей), но он был ОК, определяя сигнатуры интерфейсов и классов (т.е. декларации, а не определения) методов.
Это было полезно, потому что вы могли бы:
-
Диаграмма, показывающая, как взаимодействует группа классов (тогда как с исходным кодом вы видите классы по одному)
-
Различные диаграммы с разными группами классов; и иногда один и тот же класс может отображаться на нескольких диаграммах.
Это было для проекта, где требовалось создавать конструкторскую документацию с отслеживаемостью из вариантов использования, хотя дизайн.