Я спрашиваю: А вы можете обещать, что нам не придётся подключать ДВА таких устройства?
И уже бывало, что даже если начальник обещает, то через пару лет оказывается, что это всё-таки нужно.
В этом смысле есть некоторое философское противоречие в архитектуре ПО. С одной стороны, система должна быть расширяемой. С другой стороны -- сделать абсолютно универсальную систему невозможно. Есть аппаратные и программные ограничения.
Поэтому при реализации новых фич я обычно не делаю полную поддержку расширяемости. Но я:
1. Думаю о том, где расширяемость может понадобиться.
2. Думаю о том, легко ли будет её сделать.
3. Если есть возможность сделать быстрый и дешёвый задел под расширение -- я его делаю.
Несмотря на это, у меня всё равно бывают места, которые захардкожены. Увы.