Здравствуйте, Аноним931, Вы писали:
А>Расскажите, пожалуйста, используете ли вы UML (Unified Modeling Language) при проектировке ПО, насколько интенсивно, какой применяете софт, и как вы оцениваете практическую ценность UML (исходя из опыта использования).
А>Также опросАвтор: Аноним931
Дата: 12.02.14
Вопрос: UML (Unified Modeling Language) в вашей жизни проектировщика ПО
.
Волею судьбы почти всю профессиональную жизнь разрабатываю коммерческие средства моделирования на базе UML и все это время готов побить весь OMG в полном состав
Практическое применение UML возможно лишь после выпиливания тонны кусков и вставки domain-specific вещей. Стандарты UML опосля 1.3 к реальности не имеют отношения. Основные претензии:
— отсутствие run-time semantic-и. Каждый крупный кастомер кто юзает UML понимает run-time поведение модели по своему.
— отсутствие нормальной текстовой нотации для написания поведения. Мало-мальски серьезная State/activity модель требует кода в transition/action-ах и т.д. В 99% юзер использует target code в таких случаях. Отсюда вытекает следущая претензия
— отсутствие стандарта на ссылки из target code-а на UML элементы. Каждый следует собственному пути
— отсутствие стандартного формата для графической нотации. Как пример можно взять CIF для SDL. Вот для UML такого нет, что сильно затрудняет обмен диаграммами.
— отсутствие ссылок по имени на уровне мета-модели UML. Все reference-ы обязаны иметь target. Иметь что-то с состояниями "установлено, но не разрезолвлено" нельзя
— не проработан Compare/Merge для моделей вообще (плюс учет еще диаграмм и чтоб было user-friendly). Теоретические работы оторваны от практики, практические воплощения страдают от отсутствия формального базиса. С этой темой на практике вожусь уже года полтора. Проблем тут море.
— генеренный код из модели вообще говоря приходится дебажить. И при дебаге хорошо бы прыгать и по модели. Отсюда вытекает потребность в некоем стандартном UML level API для дебаггинга UML моделей. Над этим тоже не думают.
— еще ворох более мелких претензий..