Почему в индустрии программного обеспечения существуют отношения любви и ненависти к диаграммам UML
Опубликовано: 2017-05-19UML — это универсальный визуальный язык, который используется для моделирования программной системы. Индустрия программного обеспечения разделилась во мнениях относительно использования диаграмм UML. В то время как некоторые рассматривают его как неотъемлемую часть программных систем и разработки, есть значительное число людей, которые считают его совершенно ненужным.
В этом посте мы исследуем обе стороны этого аргумента (как преимущества, так и недостатки UML) и попытаемся понять отношение индустрии программного обеспечения к диаграммам проектирования UML.
Преимущества UML
Наиболее часто используемый и гибкий
UML — широко признанная и понятная платформа для разработки программного обеспечения. Это стандартное обозначение среди разработчиков программного обеспечения. Вы можете с уверенностью предположить, что большинство специалистов по программному обеспечению будут, по крайней мере, знакомы, если не хорошо разбираться в диаграммах UML, что делает их альтернативой для объяснения моделей проектирования программного обеспечения.
Что делает UML подходящим и столь необходимым для разработки программного обеспечения, так это его гибкость. Вы можете настроить элементы моделирования и взаимодействия на диаграмме UML в соответствии с предметной областью или технологиями, которые вы используете.
Архитектура программного обеспечения должна эффективно передаваться
Архитектура программного обеспечения — это проект системы. Это основа, от которой зависит эффективность системы и ее процессов. Но эта структура эффективна только в том случае, если о ней должным образом сообщают всем, кто ее использует и работает над ней. Здесь на помощь приходит унифицированный язык моделирования (UML).
UML — это богатый и обширный язык, который можно использовать для моделирования не только объектно-ориентированной разработки программного обеспечения, но и структуры и поведения приложений, а также бизнес-процессов. Разработчики программного обеспечения согласились с тем, что мы не можем отказаться от документации архитектуры. Это важно. Это помогает в оценке производительности, безопасности, отслеживании и предоставляет важные рекомендации для выполняемого задания.
Благодаря широкому охвату UML является идеальным визуальным языком для передачи подробной информации об архитектуре максимальному количеству пользователей.
Вам нужно знать только часть языка, чтобы использовать его
Хотя существует 14 различных типов диаграмм UML для моделирования приложений, разработчики используют только три или четыре для документирования программной системы. Диаграммы классов, диаграммы последовательности и диаграммы вариантов использования остаются наиболее популярными.
Это означает, что вам нужно знать только 20% языка UML, чтобы объяснить 80% ваших потребностей в моделировании. Вам не нужно знать или понимать всю нотацию, чтобы эффективно общаться с помощью диаграмм UML. Знание подмножества нотаций вас вполне устроит.
Множество инструментов UML
Инструменты UML — одна из наиболее важных причин, почему UML так широко используется. Инструменты UML варьируются от бесплатного программного обеспечения с открытым исходным кодом до программ стоимостью в миллионы долларов. Эти инструменты охватывают гораздо больше областей, чем просто рисование диаграмм. Они могут генерировать код на основе проекта, применять шаблоны проектирования, анализировать требования, реконструировать код и выполнять анализ воздействия и сложности.
Эти преимущества, а также обилие инструментов UML сами по себе делают UML популярным языком моделирования и разработки в области разработки программного обеспечения.
Несмотря на множество применений и преимуществ, UML нравится не всем. Фактически, значительная часть разработчиков программного обеспечения не использует UML и подвергает его резкой критике. Давайте рассмотрим аргументы против использования UML.
Недостатки UML: Аргументы против UML
Формальное обозначение не требуется
Самый сильный аргумент против UML заключается в том, что вам на самом деле не нужна диаграмма UML для передачи информации о ваших проектах. Вы можете добиться такого же эффекта с помощью неформальных линейных диаграмм, созданных в PowerPoint, Visio или на доске. Поскольку кодирование само по себе является формальным языком, многие разработчики не предпочитают сложность и формальность на архитектурном уровне, что препятствует использованию UML и стало одним из его недостатков.
По возрастанию степени сложности
С момента своего появления и до сих пор UML рос в сложности и размерах. Огромный размер UML заставляет многих людей нервничать с самого начала, и они чувствуют, что не смогут изучить его, и им будет лучше без него.
Не обязательно в «Архитектурно-безразличном дизайне»
Термин, введенный Джорджем Фэрбенксом, «архитектурно-независимый дизайн» — это ситуация, когда UML считается ненужным.
По своей сути архитектурно-независимый дизайн относится к архитектуре программного обеспечения, которая является простой и базовой и не требует сложных диаграмм для представления или объяснения дизайна. Если фирмы уделяют больше внимания формальному кодированию и преобладает культура минимальной проектной документации, UML считается ненужным.
Расшифровка этих отношений любви-ненависти:
Хотя много говорят об избыточности UML в индустрии программного обеспечения, нельзя отрицать, что до сих пор не существует целостной или подходящей замены UML. Чтобы получить непредвзятое представление о значении и судьбе UML, мы поговорили с гигантами аппаратного обеспечения, которые тесно связаны с индустрией программного обеспечения, но нейтральны в своих взглядах.
«Отсутствие проектной документации — это хорошо в краткосрочной перспективе, но это может стать проблемой в долгосрочной перспективе, когда вам нужно передать дизайн разработчику, который находится в другой стране, или кому-то, кто присоединится к команде через полгода. . UML становится огромным подспорьем в таких обстоятельствах и устраняет двусмысленность и вопросы, касающиеся дизайна». Представитель Sconect, производителя женских жаток, полагает.
«Мы можем говорить о предметно-ориентированных языках для визуального моделирования, но факт остается фактом: ни один из них не нашел широкого распространения, что лишь подтверждает, что UML остается лучшей альтернативой в том, что касается визуальных языков». Это наблюдение было очень интересно выдвинуто представителем компании Scondar, которая специализируется на производстве штыревых соединителей.
Вклад представителя Ismolex удачно резюмирует случай любви и ненависти в индустрии программного обеспечения к проектным диаграммам UML. «Против использования UML может быть тысяча аргументов, но благодаря его способности фиксировать нюансы информации об архитектуре проекта, а также благодаря растущей важности проектной документации UML остается незаменимым».
Преимущества и недостатки UML: на чьей вы стороне?
Отрицание и приверженность диаграммам UML будут продолжаться в кругах разработчиков программного обеспечения. Но UML никуда не денется. Однако диаграммы UML необходимо постоянно обновлять, чтобы их использование не ограничивалось только описанием архитектуры и обменом данными, а расширялось для представления и создания систем, способных приспосабливаться к динамическим изменениям.
Об авторе
Меня зовут Рэйчел Оливер, последние пару лет я работаю внештатным писателем и в настоящее время связана с Ismolex — производителем штифтовых заголовков. Хотя мне нравится писать обо всем на свете, включая энергию, бизнес, спорт, обустройство дома и моду, я особенно увлечен бизнесом, технологиями и электроникой. Вы можете связаться со мной в Google+, Facebook и Twitter.