2010-05-13 2 views
3

Я спрашиваю, необходимо или полезно иметь семантические отклонения в UML. Не было бы более полезно, если бы оно было более формальным и, следовательно, поддающимся проверке или даже использовалось для быстрого прототипирования. В чем преимущество дисперсии? Можете привести несколько примеров?Нужны ли семантические отклонения UML?

ответ

1

Я бы предпочел избавиться от семантических вариационных точек UML. Типичный пример, который вызывает путаницу при моделировании диаграмм, является точкой множественного классификационного семантического изменения. При моделировании обобщений на диаграмме классов вы можете предположить, что диаграмма допускает множественную классификацию (объект может быть экземпляром двух или более классов, не связанных отношением подтипа) или нет.

Обычно дизайнеры с программным обеспечением фона подразумевают, что это невозможно, хотя на концептуальном уровне многие из нас склонны неявно предполагать, что это возможно. Вы можете представить результат.

+0

Хороший пример точки семантической вариации, которую было бы довольно сложно удалить, либо выбор был бы плохим для некоторых пользователей UML (хотя наследование одного класса - это болезнь IMHO Java ...), может быть, нам нужен какой-то компромисс, например однонамерное наследование плюс черты (и некоторые хорошие семантики для них). Это один из примеров, когда IMHO UML недостаточно OO, он делает слишком много предположений (о целевом языке C++ ...). Другими примерами этого может быть задача моделирования динамических языков. –

Смежные вопросы