В этом смысле технологии «цифровых двойников» (digital twins) напоминают магию Вуду: чтобы управлять объектом, надо создать его модель («цифрового двойника»), а дальше сделать так, чтобы все, что происходит с двойником, происходило и в реальности…
Специфика разработки приложений IoT
В отличие от мобильных или веб-приложений, где взаимодействие с внешними по отношению к приложению объектами (источниками или потребителями данных) является скорее исключением, то для приложения, использующего технологии интернета вещей, организация взаимодействия различных удаленных, в том числе физических, систем является целью их создания.
Поэтому если разработчик (в частности системный архитектор) мобильных или веб-приложений сконцентрирован, как правило, на выстраивании внутренней структуры приложения с относительно небольшим числом внешних взаимодействий, то задача архитектора приложения интернета вещей принципиально другая: ему требуется выстроить взаимодействие множества внешних по отношению к приложению вещей (объектов, устройств, систем) так, чтобы за счет их взаимодействия была решена поставленная задача. Тут фактически вся совокупность связанных объектов становится единым приложением, причем при этом может статься, что многие из этих объектов являются частью других приложений, притом действующих совершенно независимо.
Меняется и роль разработчика «взаимодействий с пользователем» (UX), поскольку у пользователей может оказаться множество разных ролей: для кого-то приложение будет «человеко-ориентированной интерактивной системой8», а кто-то станет лишь «источником данных», но при этом продолжая ими «пользоваться» (т. е. оставаясь пользователем).
Таким образом, в разработке приложения интернета вещей UX-архитектор/дизайнер начинает отвечать за организацию «человеко-ориентированных взаимодействий» как имеющих свою специфику вследствие особенностей человека как элемента (часто ключевого) сложной системы; при этом он должен иметь представление и об архитектуре системы в целом, а архитектор системы – понимать специфику предмета деятельности разработчика UX.
Важно, что чем более интеллектуальными становятся системы, тем больше общение с ними начинает походить на общение с человеком.
Меняется и формат взаимодействий с человеком: всё чаще система должна реагировать не на команды, даваемые им через интерфейс мобильного или веб-приложения, а «понимать», что человеку требуется, исходя из условий вокруг него (к примеру, если «видит», что ему жарко, – включить кондиционер), отслеживая его положение (скажем, предусмотрительно открыть перед ним дверь) или даже настроение.
Соответственно, появляется специфика и дополнительные требования к разработке пользовательских интерфейсов (UI) приложений интернета