Требуются ли порты в SysML 1.4 для моделирования потока между блоками?
Учитывая следующую блок-схему:
Я хотел бы смоделировать непрерывный поток от PressureSensor.pressure до LPF.input.
Соответствует ли спецификация SysML 1.4 моделированию этого потока без использования портов, как показано на следующей диаграмме?
Или я должен использовать порты, как на следующей диаграмме?
2 ответа
Из спецификации SysML (1.3):
Основной мотивацией для определения портов и потоков является создание модульных многократно используемых блоков с четко определенными способами соединения и взаимодействия с их контекстом использования.
Другими словами: вы, конечно, можете использовать прямые соединители, но вы потеряете возможность указывать более подробную информацию о том, что происходит вдоль этих соединителей.
Существует разница между неабстрактным блоком и портом, набранным с помощью интерфейса. Неабстрактный блок не может быть заменен. Напротив, что-то с соответствующим интерфейсом легко заменяется.
Подумайте о двух аналогиях:
- Одна марка HDTV будет работать только с одной маркой кабельного телевидения. Если вы хотите использовать HDTV другой марки, вам придется полностью эмулировать оригинальную HDTV из-за недокументированной взаимозависимости.
- Любая марка HDTV, имеющая интерфейс HDMI, будет работать с любой маркой кабельного телевидения, имеющей интерфейс HDMI.
Какую ситуацию вы бы предпочли иметь в своей гостиной?