Верификация распределения пользовательского интерфейса на основе пи-исчисления

УДК 004.54

Б01: 10.30987/аШс1е_5Ьё17Ь42Ь1а236.42909295

С.А. Сакулин, А.Н. Алфимцев, Е.А. Типсин

ВЕРИФИКАЦИЯ РАСПРЕДЕЛЕНИЯ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА

НА ОСНОВЕ ПИ-ИСЧИСЛЕНИЯ

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

пределения интерфейса по разработанным правилам в терминах пи-исчисления.

Ключевые слова: верификация, формализация, распределение, распределенный интерфейс, пользовательский интерфейс, пи-исчисление, редукция.

S.A. Sakulin, A.N. Alfimtsev, E.A. Tipsin

VERIFICATION OF USER INTERFACE DISTRIBUTION BASED ON n-CALCULUS

A rapid growth of computer device quantity resulted in the emergence of distribute user interfaces which mean a user work with the application by means of some devices simultaneously. During the design of a distributed interface it is necessary every time to develop the logic of interface element distribution. Besides, the complexity of DPI element distribution grows exponentially. In particular, for the distribution of an interface consisting of two elements for two devices it is necessary to consider nine possible options of distribution.

Therefore the problem of the formal method development of interface element distribution verification on separate devices is supposed to be urgent. In this work there is presented a method for the verification of

Введение

Распределенные пользовательские интерфейсы (РПИ) подразумевают работу пользователя с приложением посредством нескольких устройств одновременно, что повышает функциональность, продуктивность и удобство использования приложения [1]. В настоящее время существуют следующие реализации РПИ: система синхронизации смартфона с часами; система управления устройствами с помощью телефона или планшета; РПИ для совместного принятия решений и другие. Для проектирования нового РПИ необходимо всякий раз разрабатывать логику распределения элементов интерфейса. Такая ситуация затрудняет массовое внедрение РПИ ввиду непонимания пользователями логики распределения и нежелания испытывать ког-

user interface distribution on the basis of the mathematical apparatus of n-calculus which was adapted for the verification of a distribution process. For the formalization of a distribution process each interface element is compared with attributes and each device - with parameters. On the basis of the introduced attributes and parameters there are formulated ten rules for a distribution in accordance of which a procedure is developed for the distribution of interface elements onto separate devices including six steps for which the developed verification method was used and described in terms of n-calculus.

Key words: verification, formalization, distribution, distributed interface, user interface, n-calculus, reduction.

нитивную нагрузку, связанную с освоением новых интерфейсов [2], а также относительно большими трудозатратами разработчиков. Кроме того, сложность распределения элементов РПИ растет экспоненциально. В частности, для распределения интерфейса, состоящего из двух элементов, на два устройства необходимо рассмотреть девять возможных вариантов распределения, поскольку один элемент РПИ может быть распределен на одно из двух устройств или сразу на оба.

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

ровании ситуационных центров является компоновка устройств и определение форм представления информации таким образом, чтобы минимизировать время принятия решения. Распределение информации по экранам центра производит оператор [3; 4] с учетом требований эргономики [5].

Одной из смежных областей с распределенными интерфейсами является полиэкранное отображение данных. Большинство работ в этой области связаны с техническими решениями создания систем

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

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

1. Правила распределения элементов интерфейса

К типовым структурным блокам интерфейса относятся основной блок В1, заголовок В2, подвал В3, левая колонка В4 и правая колонка В5 [6]. Рассмотрим в качестве примера распределение упрощенного

интерфейса интернет-магазина (рис. 1). Этот интерфейс содержит структурные блоки В1, В2, В4, логические блоки Ь1,...,Ь4 и элементы Е1,...,Е18.

Рис. 1. Упрощенный интерфейс интернет-магазина

Первоначально исходный интерфейс I отображается на устройстве О1 (рис. 2). Распределенный интерфейс I располагается на основном Д = О' и вспомогательном

О2 устройствах. Вершинами графа на рис. 2 представлены устройства, структурные блоки, логические блоки, элементы интерфейса.

Рис. 2. Распределение исходного интерфейса I 57

Для формализации логики распределения каждому элементу Е интерфейса сопоставим атрибуты аЕ,..., аЕ2: аВ -идентификатор элемента в виде строки; а2Е - тип элемента, например изображение, видеоматериал, текст, кнопка и т.д. (представлен строкой с названием типа); а3Е - размеры элемента в пикселях в виде

пары чисел (ширина и высота); а4Е - координаты центра элемента по горизонтали и вертикали на странице интерфейса (представлены соответствующей парой чисел); а5Е - бинарный признак активности элемента (1 - активен, 0 - не активен); аЕ -идентификатор структурного блока, в котором находится элемент, в виде строки; а7Е - описание логических связей с другими элементами интерфейса в виде множества идентификаторов соответствующих элементов; а8Е - бинарный признак типа контента (1 - основной контент, 0 - второстепенный контент); а9Е - атрибут условия

распределения (представлен совокупностью пар «параметр устройства, область допустимых значений параметра»); аЕ, -атрибут пользовательских предпочтений (представлен совокупностью пар «параметр устройства, область допустимых значений параметра»); а1Е1 - бинарный признак конфиденциальности элемента (1 -конфиденциальный, 0 - не содержит конфиденциальных данных); а1Е2 - требования к параметрам устройства, при удовлетворении которых элемент может быть распределен на это устройство (представлены совокупностью пар «параметр устройства, область допустимых значений параметра»).

Каждому устройству В сопоставим параметры сВ,..., сВ : сВ- тип устройства в

виде строки с его названием; с^ - размер диагонали дисплея устройства в виде соответствующего числа; с3В - бинарный параметр мобильности (1 - устройство является мобильным, 0 - не является); с4В - операционная система устройства в виде

строки с соответствующим названием; с5В -бинарный параметр наличия динамиков (1 - устройство воспроизводит звук, 0 - не воспроизводит). Требованиями к устройству С назовем совокупность допустимых значений параметров сВ,..., сВ устройства В . Факт удовлетворения устройства В требованиям СВ обозначим как В « СВ . Факт соответствия требований СВ атрибутам а1Е ,... , а1Е2 элемента Е интерфейса обозначим как СВ ~ {аЕ,..., а^}.

Набор устройств

£ = {В1,..., Вп} представляет собой совокупность устройств, на которые будет распределен интерфейс I . Устройство является свободным, если на него не распределен ни один из элементов интерфейса. Факт распределения элемента интерфейса Е на устройство В обозначим как Е ^ В .

Сформулируем правила распределения с использованием введенных обозначений.

1.1. Правило основного устройства

основано на том, что пользователи делят все устройства на два типа: устройство для интерфейса основной задачи и остальные устройства для поддержки ее выполнения [7]. В соответствии с этим правилом для интерфейса основной задачи выбирается устройство, которое должно обеспечивать наилучшее взаимодействие пользователя с приложением, т.е. в любом наборе устройств £ существует одно основное устройство В'.

1.2. Правило логической связности основано на делении элементов интерфейса на связные логические группы [8]. В соответствии с этим правилом разбиение такой группы при распределении не допускается, т.е. распределение логической группы на какое-либо устройство должно происходить целиком, или, формально: если у какого-либо элемента Е атрибут

аЕ6 = {аЕ1,...,аЕ"}, где Ех,..., Еы - элементы, входящие в одну логическую группу, то {£!,..., Еы} ^ В, где В - устройство,

на которое распределяются все эти элементы.

1.3. Правило устоявшихся условностей основано на учете при распределении элементов интерфейса множества сформировавшихся за последние годы устоявшихся условностей [9]. К таким условностям, в частности, относятся: распределение интерфейса управления воспроизведением видеоконтента на вспомогательные мобильные устройства [7; 10]; распределение элементов интерфейса, которые используют геолокацию, на мобильные устройства. Запишем это правило формально: если аЕ ф0, СО и {аЕ } и

доступно устройство О, такое, что О и СО, то Е ^ О.

1.4. Правило учета пользовательских предпочтений основано на том факте, что пользователи предпочитают некоторые устройства для выполнения определенных задач, несмотря на возникающие при этом неудобства. К таким предпочтениям, в частности, относятся: использование смартфона для проверки электронной почты и обмена сообщениями в мессенд-жерах, несмотря на неудобство ввода текста на таких устройствах; распределение элемента интерфейса прослушивания музыки на вспомогательное мобильное устройство [11]. Следовательно, при распределении элемента интерфейса необходимо учитывать такие предпочтения. Запишем это правило формально: если аЕ0 ф0, СО и {аЕ,} и доступно устройство

О, такое, что О и СО , то Е ^ О .

1.5. Правило конфиденциальности предусматривает, что элемент интерфейса для ввода персональных данных следует распределять на мобильное устройство, поскольку вероятность кражи введенной конфиденциальной информации на мобильном устройстве ниже, чем на персональных компьютерах и ноутбуках. Запишем это правило формально: если а1Е = 1 и доступно устройство О, такое, что с3О = 1, то Е ^ О.

1.6. Правило ограничения распределения предусматривает, что устройство пригодно для распределения элементов

интерфейса при условии, что оно поддерживает эти элементы и соответствует им с точки зрения удобства [6]. Например, устройства Apple не поддерживают Flash-видео. Хотя разработчики браузеров нашли соответствующее решение для этих устройств, воспроизведение файлов большого объема происходит с задержками. Запишем это правило формально: если aE2 ф 0, CD « {aE } и доступно устройство

D, такое, что D « CD , то E ^ D .

1.7. Правило второстепенных элементов предусматривает, что второстепенные элементы интерфейса распределяются на вспомогательные устройства. Распределение второстепенных элементов на вспомогательное устройство позволяет уменьшить высоту прокрутки страницы, что увеличит вероятность просмотра всей страницы [12]. Запишем это правило формально: если aE = 0 и доступно устройство D ф D', такое, что CD « {a^}, то E ^ D.

Атрибуты элементов интерфейса могут удовлетворять нескольким правилам одновременно. Тогда встает вопрос, в соответствии с каким правилом выполнять распределение. Для этого введем дополнительные правила.

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

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

1.10. Правило превосходства пользовательских предпочтений над конфи-

денциальностью предусматривает приоритет правила 1.4 над правилом 1.5. Другими словами, если атрибуты объекта удовлетворяют правилу 1.4, то правило 1.5 не применяется. Введение этого правила обусловлено приоритетом пожеланий

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

2. Процедура распределения элементов и

Для распределения интерфейса в соответствии с приведенными правилами применяется процедура, состоящая из 6 шагов:

Шаг 1. Задать экспертным путем атрибуты элементов Е1,..., EK интерфейса.

Шаг 2. Определить основное устройство В' в соответствии с правилом 1.1.

Шаг 3. Распределить элементы интерфейса в соответствии с правилами 1.2, 1.3 и 1.4.

Шаг 4. Распределить оставшиеся нераспределенными после шага 3 элементы интерфейса, представляющие собой левую и/или правую колонки, в соответствии с правилами 1.2, 1.5, 1.6.

Шаг 5. Распределить оставшиеся нераспределенными после шага 4 элементы интерфейса основного блока в соответствии с правилами 1.2, 1.6, 1.7.

Шаг 6. Распределить оставшиеся нераспределенными после шага 5 элементы интерфейса, представляющие собой логические блоки левой и/или правой колонок, в соответствии с правилами 1.2, 1.6.

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

3. Верификация распределения элементов

Пи-исчисление было предложено в конце 1980-х годов Милнером [13] для моделирования взаимодействующих систем, процессы в которых имеют изменяющуюся структуру. К таким системам относятся распределенные интерфейсы.

Коммуникация процессов формально описывается с помощью аксиомы редукции:

х

где Р е - процессы; х - канал связи; у и 2 - сообщения; выражение р\^у} означает терм, получающийся из терма процесса Р символьной подстановкой 2 вместо у .

Представим распределение интерфейса I по двум устройствам, в соответствии с процедурой, в терминах пи-исчисления на примере представленного выше интерфейса интернет-магазина (рис. 1). Процессами Р будут являться: устройства - ноутбук В1 и смартфон В2 , на которые происходит распределение, струк-

интерфейса на основе пи-исчисления

турные блоки Б1,В2,В4, логические блоки Ь1,...,ЬА и элементы Е1,...,Е18. Процессы определяются через конструкцию = , слева от которой указывается имя процесса, а справа его описание.

Для управления распределением вводится процесс М, внутренним действием

ТМ которого является выполнение процедуры распределения. Процесс М имеет каналы связи со всеми процессами, которые представляют устройства, а конкретно с и В2, как показано на рис. 3.

Шаг 1. Выполняется формирование множества элементов интерфейса {Ех,..., Ек }. Процесс М одновременно отправляет сообщение г _ е1ет8 по каналам связи md1,md2 с запросом информации об элементах интерфейса, которые размещены на ноутбуке В1 и смартфоне В2 . Процесс М имеет следующее описание в терминах пи-исчисления на данном шаге:

def

М = (т^ (г _ е1етя) | md2 (г _ ^¡ет^).(mdx (d1 _ elems) | md2 (d2 _ е1етз)).гМ М

Рис. 3. Граф исходного интерфейса I до распределения

Процессы В1 и В2 получают сообщение г _ е1етз по каналам md1, md2, затем отправляют его всем процессам, с которыми они имеют связь, кроме процесса М . Процесс В1 одновременно отправляет

сообщение г _ е1ет>? процессам Б1, В2, В4 по каналам (11Ь1,(11Ь2,(11Ь4. Процессы Вх и В2 имеют следующее описание в терминах пи-исчисления на данном шаге:

В1 = тс1х (г _ е1ет$).(с1хЬ2 (г _е1етз) | (г _ е1етз) | с1хЬА(г _е1ет$)). ((d1¿2((b _е1етъ) | <ЛхЬх(Ьх _е1етъ) | с1хЬ4(Ь4 _е1ет$У)хВ..

тёх (Ь2 _е1етз + Ь1 _ е1етз + Ь4 _е1ет$).Вх

В2 = md2(г _ е1ет8).тВ2 md2 ({}>.В2 Процессы Б1, В2, В4 получают сообщение г _е1етз по каналам с11Ь1,с^1Ь2,с^1Ь4, формируют множества элементов интерфейса {Е>,..., Е5},{Еб,..., Е^ДЕ^,..., E18}, где каждому элементу сопоставлены зна-

def_

чения атрибутов а:Е,..., аЕ,, и отправляют их обратно процессу В1 . Процессы В15 В2, В4 имеют следующее описание в терминах пи-исчисления на данном шаге:

Б; = с1хЬх (г _ е1ет8>.тВ1 ЛХЬХ ({Е6 ,...,Е13}).Б!

В2 = ¿Ь(г_elems>.тБ .¿ХЬ2({Е,...,Е5}).В2

Б4 = ¿1Ь4 (г _ е1етя>."ГБД Ь4({Е14,..., Е18}).Д

Таким образом, после выполнения всех взаимодействий процесс М формирует множество элементов исходного интерфейса I.

Шаг 2. Выполняется определение основного устройства В'. Для этого процесс М одновременно передает сообщение г _ ¿еу с запросом параметров

сВ,..., с5В по каналам тЛ2

Далее ответы

процесс М ожидает

_ ¿еу, ¿2 _ ¿еу с параметрами от процессов В1 и В2 . Процесс М в терминах пи-исчисления на данном шаге описывается выражением

М = (шЛх(Г _dev) | md2(г_dev)).md1 (_dev> | md2(¿2 _¿еу>).гММ

Процессы В1 и В2 получают сообщение г _ ¿еу по каналам md1, md2 с за-

просом параметров с1В,..., сВ. В ответ они формируют сообщения, содержащие мно-

жества

параметров

tLl >•••> 5

cP'}

и

{сР2,..., с5Рг} , и отправляют их по каналам mdmd2. Процессы Р' и Р2 в терминах

пи-исчисления на данном шаге описываются выражениями

def

Pi

О1 = md1(r _ йеу).гО1 ({с

йе/ - О

О2 = md2(r _ dev).тDг .md2 ({<с После получения множеств параметров {сО',..., с5О'} и {с1О2,..., с5°2} от процессов и О2 процесс М определяет основное устройство О' и формирует набор устройств £.

Шаг 3. Выполняется переход к следующему шагу, поскольку ни один из элементов Е1,...,Е18 интерфейса I не имеет устоявшихся условностей распределения а9Е =0 или пользовательских предпочтений аЕ, =0 .

Шаг 4. При выполнении данного шага процесс М определил, что правая колонка В5 отсутствует в исходном интерфейсе I, однако присутствует левая колонка В4 . Поэтому для левой колонки В4 выполняется поиск устройства, параметры которого соответствуют требованиям левой колонки аВ4. Процесс О2 объявляет новый канал связи ек, который будет использоваться для связи с элементами интерфейса, входящими в В4. Далее О2 отправляет созданный канал ек процессу М по каналу md2 и ожидает установки связи по каналу ек со структурным блоком В4 . Процесс О2 в терминах пи-

йе/

C5P'}).Pl

сР2}).Р2

5 }.Р2

исчисления на данном шаге описывается выражением

Р2 = (vch)md2 {ch).ch(con).P2 (ll) Процесс M получает по каналу md2 сообщение от процесса Р2, затем отправляет сообщение res, в котором указано, для какого элемента интерфейса необходимо установить связь по новому каналу, и собственно сам канал ch . Процесс M в терминах пи-исчисления на данном шаге описывается выражением

def

M = md 2

Применим аксиому (l) для процессов P2 и M , тогда описание этих процессов в терминах пи-исчисления будет иметь вид

def

D2 = ch

M = md' < res, ch)M

Процесс Pl получает сообщение res от процесса M по каналу md'. Процесс Pl в терминах пи-исчисления на данном шаге описывается выражением

Pj = mdx(res,ch).rPi .((djb/ch) + dxb2{ch) + dxb4{ch)) -(db!<ch) | d^<ch) | ~db4{ch))).P'

В данном примере процесс Р' отправляет сообщение res, ch процессу B4 по каналу d'b4, его описание имеет вид

def

О1 = md1

Процессы В1, В2, В4 ожидают от процесса по каналам с^1Ъ1,с^1Ъ2,с11Ъ4 сообщений с каналом для установки новых связей. Процессы, которые получили сообщение, устанавливают связь по полученному

каналу ек . Процессы В1, В2, В4 в терминах пи-исчисления на данном шаге описываются выражениями

йе/ _

В1 = ¿Ь

¿С/ _

В2 = й1Ь2

йе/ _

В4 = й1Ь4

В соответствии с аксиомой (1) процессы О1 и М в терминах пи-исчисления будут иметь вид

def

М = М

def

В1 =тВ1 ¿Ь {сН>.Б1

В соответствии с аксиомой (1) процессы В1 и Б4 в терминах пи-исчисления будут иметь вид

В, = В,

_

Б4 =тб .ск

Таким образом, после всех взаимодействий между процессами произошло переопределение связей, что соответствует распределению левой колонки на смартфон Б4 ^ В2.

Шаги 5 и 6. Распределение элементов основного блока Б1 в соответствии с правилами 1.2, 1.6, 1.7 и распределение логических блоков левой Б4 и/или правой Б5 колонок в соответствии с правилами 1.2, 1.6 пропускаются, так как набор устройств £ уже не содержит свободных вспомогательных устройств.

На рис. 4 представлен граф интерфейса после взаимодействий между процессами.

Рис. 4. Граф интерфейса после распределения

Для верификации распределения был использован инструмент PiVizTool [14]. Входными данными при этом служили описания процессов в терминах пи-исчисления (2-23). Результаты верифика-

Заключение

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

ции показали корректность распределения: после выполнения процедуры произошло корректное переопределение связей между процессами без потери элементов интерфейса.

вам, которая включает в себя пошаговый алгоритм выполнения и 10 правил распределения. Приведено пошаговое описание верификации процесса распределения интерфейса страницы интернет-магазина по разработанным правилам в терминах пи-исчисления, которые служили входными данными для инструмента PiVizTool.

Работа выполнена при поддержке гранта госзадания Минобороннауки РФ № 2.5048.2017/8.9.

СПИСОК ЛИТЕРАТУРЫ

1. Elmqvist, N. Distributed user interfaces: State of the art / N. Elmqvist // Distributed User Interfaces. -London: Springer, 2011. - Р. 1-12.

2. Сакулин, С.А. Оптимизация интерфейсов вебстраниц с использованием инспирированных природой алгоритмов / С.А. Сакулин, А.Н. Ал-фимцев, Д.В. Соловьев, Д.А. Соколов // Вестник компьютерных и информационных технологий.

- 2018. - Т. 165. - № 3. - С. 3-10.

3. Ильин, Н.И. Ситуационные центры. Опыт, состояние, тенденции развития / Н.И. Ильин, Н.Н. Демидов, Е.В. Новикова. - М.: МедиаПресс, 2011.

4. Башлыков, А.А. Принципы формирования требований к человеко-машинному интерфейсу для систем диспетчерского контроля и управления трубопроводными системами / А.А. Башлыков //Автоматизация, телемеханизация и связь в нефтяной промышленности. - 2014. - № 3. - С. 310.

5. Зацаринный, А.А. Об эргономических зависимостях между параметрами ситуационного зала с использованием изогнутого экрана / А.А. За-царинный, К.Г. Чупраков // Информатика и её применения. - 2014. - Т. 8. - № 4. - С. 85.

6. Felke-Morris, Т. Web Development and Design Foundations with HTML5 / Terry Felke-Morris. -2016.

7. Yang, J. Panelrama: enabling easy specification of cross-device web applications / J. Yang, D. Wigdor // Proceedings of the SIGCHI Conference on Hu-

1. Elmqvist, N. Distributed user interfaces: State of the art / N. Elmqvist // Distributed User Interfaces.

- London: Springer, 2011. - Р. 1-12.

2. Sakulin, S.A. Optimization of web-page interfaces using algorithms inspired by nature / S.A. Sakulin, A.N. Alfimtsev, D.V. Soloviyov, D.A. Sokolov // Bulletin of Computer and Information Technologies. - 2018. - Vol.165. - No.3. - pp. 3-10.

3. Iliyn, N.I. Situation Centers. Experience, State, Development Trends / N.I. Iliyn, N.N. Demidov, E.V. Novikova. - M.: Media Press, 2011.

4. Bashlykov, A.A. Principles of formation requirements to man-machine interface for systems of dispatcher control and management of pipelined systems / A.A. Bashlykov //Automation, Telemechani-zation and Communication in Oil Industry. - 2014.

- No.3. - pp. 3-10.

5. Zatsarinny, A.A. On ergonomic dependences between parameters of situation hall using curved screen / A.A. Zatsarinny, K.G. Chuprakov // Informatics and Its Applications. - 2014. - Vol.8. -No.4. - pp. 85.

6. Felke-Morris, Т. Web Development and Design Foundations with HTML5 / Terry Felke-Morris. -2016.

7. Yang, J. Panelrama: enabling easy specification of cross-device web applications / J. Yang, D. Wigdor // Proceedings of the SIGCHI Conference on Hu-

man Factors in Computing Systems. - ACM, 2014.

- P. 2783-2792.

8. Pribeanu, C. A Revised Set of Usability Heuristics for the Evaluation of Interactive Systems / C. Pribeanu // Informatica Economica. - 2017. - T. 21. -№ 3. - P. 31.

9. Krug, S. Don't make me think: Web & Mobile Usability: Das intuitive Web / S. Krug. - MITP-Verlags GmbH & Co. KG, 2018.

10. Fisher, E.R. Designing the Distributed User Interface: Case Studies on Building Distributed Applications / E.R. Fisher, S.K. Badam, N. Elmqvist // Preprint submitted to International Journal of HumanComputer Interaction. - 2013. - February 15.

11. Nebeling, M. Xdbrowser: User-defined cross-device web page designs / M. Nebeling, A.K. Dey // Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems. - ACM, 2016.

- P. 5494-5505.

12. Qiu, X. Limited individual attention and online virality of low-quality information / X. Qiu [et al.] // Nature Human Behaviour. - 2017. - T. 1. - № 7. -P. 132.

13. Milner, R. Communicating and mobile systems: the pi calculus / R. Milner. - Cambridge university press, 1999.

14. Papapanagiotou, P. Formal verification approach to process modelling and composition / P. Papapana-giotou. - 2014.

man Factors in Computing Systems. - ACM, 2014.

- P. 2783-2792.

8. Pribeanu, C. A Revised Set of Usability Heuristics for the Evaluation of Interactive Systems / C. Pri-beanu // Informatica Economica. - 2017. - T. 21. -№ 3. - P. 31.

9. Krug, S. Don't make me think: Web & Mobile Usability: Das intuitive Web / S. Krug. - MITP-Verlags GmbH & Co. KG, 2018.

10. Fisher, E.R. Designing the Distributed User Interface: Case Studies on Building Distributed Applications / E.R. Fisher, S.K. Badam, N. Elmqvist // Preprint submitted to International Journal of HumanComputer Interaction. - 2013. - February 15.

11. Nebeling, M. Xdbrowser: User-defined cross-device web page designs / M. Nebeling, A.K. Dey // Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems. - ACM, 2016.

- P. 5494-5505.

12. Qiu, X. Limited individual attention and online virality of low-quality information / X. Qiu [et al.] // Nature Human Behaviour. - 2017. - T. 1. - № 7. -P. 132.

13. Milner, R. Communicating and mobile systems: the pi calculus / R. Milner. - Cambridge university press, 1999.

14. Papapanagiotou, P. Formal verification approach to process modelling and composition / P. Papapana-

giotou. - 2014.

Сведения об авторах:

Статья поступила в редакцию 28.06.18. Рецензент: д.т.н., профессор МГТУ им. Н.Э.Баумана

Девятков В.В. Статья принята к публикации 14.08.18.

Сакулин Сергей Александрович, к.т.н., Московский государственный технический университет им. Н.Э. Баумана, е-таП: ss141291@yandex.ru. Алфимцев Александр Николаевич, д.т.н., Московский государственный технический университет им. Н.Э. Баумана, е-тай: a1fim@mai1.ru.

Типсин Евгений Андреевич, аспирант Московского государственного технического университета им. Н.Э. Баумана, е-таП: e.tipsin@mai1.ru.

Sakulin Sergey Alexandrovich, Can. Sc. Tech, Bau-man State Technical University of Moscow, e-mail: ss141291@yandex. ru.

Alfimtsev Alexander Nikolaevich, Dr. Sc. Tech, Bauman State Technical University of Moscow, email: alfim@mail.ru.

Tipsin Evgeny Andreevich, Post graduate student, Bauman State Technical University of Moscow, email: e.tipsin@mail.ru.