Каково ваше мнение об UML?[дубликат]
-
06-09-2019 - |
Вопрос
Возможный Дубликат:
Практичен ли UML?
Я слышал много мнений об UML.Некоторые люди говорят, что это бесполезно.Некоторые люди говорят, что это очень полезно.
Каков был ваш опыт использования UML?Как это влияет на процесс разработки?
Решение
Добрый день,
Я обнаружил, что склонен использовать подмножество полного стандарта UML.
Диаграммы классов: чтобы показать, как создаются компоненты класса, а также содержащиеся в них члены и функции.Особенно полезно показывать отношения "isa" и "has a" и даже агрегирование в зависимости от состава для отношений "has a", которые отражают время жизни компонентов.
Диаграммы последовательности: чтобы показать, как классы взаимодействуют друг с другом, и показать поток сообщений между классами в последовательности использования сообщения.
и время от времени:
Диаграммы деятельности: чтобы показать параллельную обработку.
Если вы хотите использовать UML, то я не могу рекомендовать книгу Мартина Фаулера "UML Distilled" (очищенная ссылка на Amazon) достаточно высоко.Серьезно, забудьте все остальные книги по UML!ИМХО, естественно
HTH
ваше здоровье,
Другие советы
Я думаю, что это очень полезно, если вы используете его в правильном контексте.
В крупных проектах очень хорошей идеей является составление общего плана того, как будет выглядеть система.
- Процесс разработки становится более понятным
- Это поможет вам избежать ошибок при проектировании, поскольку вы часто более тщательно продумываете проект
- Это дает хороший обзор для людей, непосредственно не вовлеченных в процесс разработки
Все это поможет вам сэкономить время и деньги.
UML может быть хорошим или плохим...слишком много всего может быть плохим.
UML - это хороший инструмент, который поможет вам понять концепции, а также область, в которой вы работаете.Это может стать очень полезным инструментом для общения с экспертами в предметной области и функциональными экспертами.Это также поможет вам визуализировать ваше решение и значительно уменьшит количество головных болей, с которыми вы столкнетесь при создании своего решения.
Слишком много UML также может быть плохой вещью, лучший способ добиться этого - смоделировать те части решений, которые сложны для понимания или несколько усложнены.Моделирование общего решения поможет взглянуть на него с высоты птичьего полета и лучше понять решение в целом.Затем создайте модель областей, в которых требуется более глубокое понимание.Небольшие проекты абсолютно не нуждаются в моделировании.С другой стороны, более крупные проекты могут потребовать моделирования, чтобы иметь возможность передавать нужную информацию другим.
Очень полные модели часто считаются плохими, потому что они действительны в течение очень короткого времени.Чтобы модели были ценными, их необходимо поддерживать в актуальном состоянии с помощью кода.Во многих случаях это становится дополнительной задачей, которую никто не хочет выполнять.Хороший способ добиться этого - использовать инструменты, которые синхронизируют модели с вашим кодом.
С самого раннего возраста мы чрезвычайно хорошо умеем описывать вещи, рисуя их.Многие из нас теряют эту способность по мере того, как учатся читать и писать, но в глубине души мы часто очень наглядны.Дело в том, что когда мы говорим, что когда мы на чем-то зациклились, лучший способ найти решение - это оставить это дело в покое на некоторое время или поговорить о своей проблеме с кем-то другим.Простой факт объяснения этого кому-то достаточно часто даст вам ответы, потому что, чтобы объяснить что-то, вам нужно это понять.Как только вы что-то поняли и разобрались в тонкостях, решения кажутся простыми.Моделирование может быть использовано для достижения того же результата, помогая вам разобраться в идеях и концепциях.Как только это изложено на бумаге, объяснить это становится намного проще.
Бумага, Доски и Салфетки часто становятся вашими лучшими друзьями!Они помогут вам запомнить и глубже понять ваши идеи и концепции.
Позвольте мне пояснить.Предполагается, что UML передает дизайнерские идеи другим участникам проекта.Мы серьезно использовали его во время масштабной разработки.Оказалось, что единственный, кто мог понять диаграммы и заметки, был человек, который их создал.Я нахожу, что хорошие макеты экрана и описания схем выполняют гораздо лучшую работу, чем UML-моделирование, при передаче замысла проекта.
Лично я думаю, что UML следует использовать только в том случае, когда он генерируется из кода, чтобы сделать возможным для программиста, чтобы получить представление о реальной системе. Используя его перед кодированием всегда ошибка, так как то код не сделан приоритет системы.