Как преобразовать естественный язык в ограничение OCL? - PullRequest
0 голосов
/ 01 июня 2018

У меня есть диаграмма классов, которая состоит из класса по имени SYSTEM.Я написал ограничение на доступность этой системы.

Например:

Система должна быть доступна 24/7.

Теперь я хочупреобразовать вышеупомянутое утверждение в ограничение OCL.Я новичок в OCL.Я искал и пробовал некоторые исследования статей и видео, но ничего не было найдено специально для доступности.

1 Ответ

0 голосов
/ 01 июня 2018

Ar run time: OCL оценивает и проверяет запрос, используя мгновенное состояние системы.

OCL не поддерживает время, но вы можете зайти в Google для Temporal OCL, чтобы посмотреть, что делают различные исследователи.В более широком смысле время является активной областью исследований без твердых решений.Без изменений OCL может получить доступ только к переменной времени работы и проверить, что она превышает 24 часа .... При первом запуске ваша система должна давать сбой, потому что она не была доступна 24/7?

Если вы рассматриваете ваш конкретный запрос, это, очевидно, невозможно.На практике разработчики могут анализировать частоту отказов в одной / двух / трех / ... -кратных избыточных системах с точки зрения соответствующих предсказуемых механизмов отказов.Ни одна система не сможет пережить непредвиденный сбой, не говоря уже о враждебном действии со стороны какого-то инсайдера или хорошо информированного аутсайдера.Опять же, более реалистично, должен быть SLA, который принимает определенное количество времени простоя в год, чем меньше время простоя, тем выше стоимость.

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

...