WikiDer > Разработка для конечных пользователей
Разработка для конечных пользователей (EUD) или же программирование конечного пользователя (EUP) относится к действиям и инструментам, которые позволяют конечные пользователи - людям, не являющимся профессиональными разработчиками программного обеспечения - программные компьютеры. Люди, не являющиеся профессиональными разработчиками, могут использовать инструменты EUD для создания или изменения программные артефакты (описания автоматизированного поведения) и сложные объекты данных без значительного знания язык программирования. В 2005 г. она была оценена (с использованием статистики США. Бюро статистики труда), что к 2012 году в Соединенных Штатах будет более 55 миллионов разработчиков-конечных пользователей по сравнению с менее чем 3 миллионами профессиональных программистов.[1] Существуют различные подходы EUD, и это активный тема исследования в области Информатика и взаимодействие человека с компьютером. Примеры включают программирование на естественном языке,[2][3] электронные таблицы,[4] языки сценариев (особенно в офисном пакете или художественном приложении), визуальное программирование, программирование срабатывания триггера и программирование на примере.
Самый популярный инструмент EUD - это электронная таблица.[4][5] Из-за своей неограниченной природы электронные таблицы позволяют относительно несложным пользователям компьютеров писать программы, представляющие сложные модели данных, при этом защищая их от необходимости изучать языки программирования более низкого уровня.[6] Поскольку они широко используются в бизнесе, навыки работы с электронными таблицами являются одними из самых полезных навыков для выпускников, и поэтому они наиболее востребованы.[7] Только в Соединенных Штатах Америки около 13 миллионов разработчиков конечных пользователей программируют с помощью электронных таблиц.[8]
В программирование на примере (PbE) снижает потребность пользователя в изучении абстракций классического языка программирования. Вместо этого пользователь вводит некоторые примеры желаемых результатов или операций, которые должны быть выполнены с данными, а система PbE выводит некоторые абстракции, соответствующие программе, которая производит этот вывод, которые пользователь может уточнить. Затем новые данные могут быть введены в автоматически созданную программу, и пользователь может исправить любые ошибки, допущенные программой, чтобы улучшить ее определение. Платформы разработки low-code также являются подходом к EUD.
Одно из направлений развития в этой области рассматривало использование мобильных устройств для поддержки деятельности конечных пользователей по разработке. В этом случае предыдущие подходы к настольным приложениям не могут быть просто воспроизведены, учитывая специфические характеристики мобильных устройств. Среды рабочего стола EUD не обладают преимуществами, позволяющими конечным пользователям создавать приложения на ходу.[9]
В последнее время возрос интерес к тому, как использовать EUD для поддержки разработки приложений Интернета вещей. В этой области многообещающим подходом кажется программирование триггерного действия.[10]
Уроки, извлеченные из решений EUD, могут значительно повлиять на жизненные циклы программного обеспечения за коммерческие программные продукты, собственный интранет/экстранет разработки и корпоративное приложение развертывания.
Платформы разработки с низким кодом для конкретных приложений
Примерно 40 поставщиков сейчас предлагают решения, ориентированные на конечных пользователей, которые сокращают затраты на программирование. Эти решения не требуют традиционного программирования и могут основываться на относительно узких функциях, например управление контрактами, управление отношениями с клиентами, отслеживание проблем и ошибок. Веб-взаимодействие, которое часто называют платформами разработки с низким кодом, помогает пользователю разработать приложение всего за 40-80 часов.[11][циркулярная ссылка]
Определение
Либерман и др. предложите следующее определение:[12]
Разработка для конечных пользователей может быть определена как набор методов, приемов и инструментов, которые позволяют пользователям программных систем, которые действуют как непрофессиональные разработчики программного обеспечения, в какой-то момент создавать, изменять или расширять программный артефакт.
Ко и др. предложите следующее определение:[13]
Программирование для конечного пользователя - это программирование для достижения результата программы в первую очередь для личного, [а не] общественного использования.
Артефакты, определенные конечными пользователями, могут быть объектами, описывающими некоторое автоматическое поведение или последовательность управления, например запросы к базе данных или грамматические правила,[14] который можно описать парадигмами программирования, такими как программирование путем демонстрации, программирование с примерами, визуальное программирование, или же макрос поколение.[15] Они также могут быть параметрами, которые выбирают одно из альтернативных предопределенных вариантов поведения приложения.[16] Другие артефакты разработки конечных пользователей могут также относиться к созданию пользовательского контента, такого как аннотации, которые могут быть или не интерпретироваться с помощью вычислений (т.е. могут обрабатываться соответствующими автоматическими функциями).[17]
Примеры
Примеры разработки для конечных пользователей включают создание и изменение:
- Анимация сценарии, используемые художниками-графиками для описания персонажей, окружающей среды и того, как персонажи движутся, чтобы создать заданную анимацию
- Файлы конфигурации стирают грань между программами и данными (например, фильтры электронной почты представляют собой последовательные списки критериев и действий, которые необходимо предпринять)
- Примерно-ориентированное программирование инструменты[18]
- Модификации игры чтобы представить собственных персонажей, окружение и т. д. - многие недавние игры распространяются с учетом модификаций.
- Скрипты взаимодействия, используемые в Колл-центры CRM
- Инструменты разработки мобильных приложений, такие как App Inventor
- Модели процессов, используемые в приложения рабочего процесса
- Прототипы и специализированные программы, написанные бизнесменами, инженерами и учеными для демонстрации или проверки конкретных теорий
- Поведение робота[19]
- Научные модели, используемые в компьютерное моделирование
- Скрипты и макросы добавлены для расширения или автоматизации офисные пакеты для повышения производительности и графические приложения.
- Моделирование создано с использованием программное обеспечение для определения приложений
- Одновременное редактирование многих связанных предметов либо через пакетный процесс указан конечным пользователем или прямая манипуляция, как и доступные в Текстовый редактор Lapis и мульти редактировать.
- Таблица модели, например, используемые для составления бюджета, анализа рисков, интерактивных машинное обучение,[20] или же конструкция электронной схемы[21]
- Визуальное программирование в виде визуальных языков, таких как AgentSheets, LabVIEW, Scratch (язык программирования) или же LEGO Mindstorms.
- веб-страница - простой HTML или HTML и скрипты
- Вики - процесс совместной разработки конечных пользователей[нужна цитата]
- Веб-гибридные приложения в виде визуальных языков.[22]
- 3D модели созданы с помощью ориентированных на конечного пользователя инструментов и приложений, таких как Эскиз
Моделирование затрат и выгод
В соответствии с Сатклифф,[23] EUD, по сути, передает усилия по разработке конечному пользователю. Поскольку всегда есть определенные усилия для изучения инструмента EUD, мотивация пользователей зависит от их уверенности в том, что это расширит возможности их работы, сэкономит время на работе или повысит производительность. В этой модели выгоды для пользователей изначально основаны на маркетинге, демонстрациях и молва. Как только технология будет введена в эксплуатацию, получение реальных выгод становится ключевым мотиватором.
В этом исследовании затраты определяются как сумма:
- Техническая стоимость: цена технологии и затраты на ее установку.
- Стоимость обучения: время, необходимое для понимания технологии
- Стоимость разработки: усилия по разработке приложений с использованием технологии.
- Стоимость тестирования и отладки: время, необходимое для проверки системы.
Первые и вторые затраты возникают один раз во время приобретения, а третьи и четвертые - каждый раз при разработке приложения. Выгоды (которые могут быть воспринимаемыми или фактическими) рассматриваются как:
- Функциональность, предоставляемая технологией
- Гибкость реагирования на новые требования
- Юзабилити производимых приложений
- Общее качество подготовленных приложений
Сотрудничество в разработке для конечных пользователей
Многие действия по разработке для конечных пользователей носят совместный характер, включая сотрудничество между профессиональными разработчиками и разработчиками конечных пользователей, а также сотрудничество между разработчиками конечных пользователей.
Взаимное развитие[24] это метод, при котором профессиональные разработчики и разработчики конечных пользователей работают вместе над созданием программных решений. При совместной разработке профессиональные разработчики часто «проектируют» систему и предоставляют инструменты, позволяющие «владельцам проблем»[25]«для создания подходящего решения во время использования для своих нужд, целей и ситуационного контекста.[26] Тогда общение между профессиональными разработчиками и разработчиками конечных пользователей часто может стимулировать формализацию специальных модификаций конечных пользователей в программные артефакты, превращая решения, разработанные конечными пользователями, в коммерческие функции продукта, оказывая влияние не только на местные решения.
В этом сотрудничестве используются различные подходы, такие как Мастерская по формированию программного обеспечения.[27] предлагаются для преодоления разрыва в коммуникации между профессиональными разработчиками и разработчиками конечных пользователей. Эти подходы часто обеспечивают полупрозрачность в соответствии с моделью социальной прозрачности,[28] позволяя каждому участнику сотрудничества быть в курсе изменений, внесенных другими, и нести ответственность за свои действия благодаря осведомленности.
Помимо программных платформ для совместной работы, таких как GitHub, которые в основном используются опытными разработчиками из-за крутой кривой обучения, сотрудничество между разработчиками конечных пользователей часто происходит на вики-платформах, где созданные программные артефакты являются общими. Разработка для конечных пользователей также часто используется для создания сценариев автоматизации или интерактивных руководств для обмена практическими знаниями. Примеры такого приложения включают CoScripter[29] и HILC.[30] В таких приложениях пользователь может создавать сценарии для задач с использованием псевдоязыка или демонстрационного программирования. Пользователи могут выбрать загрузку сценария в репозиторий сценариев в стиле вики. В этой вики пользователи могут просматривать доступные сценарии и расширять существующие сценарии для поддержки дополнительных параметров, обработки дополнительных условий или работы с дополнительными объектами.
Также были сформированы онлайн и офлайн сообщества разработчиков конечных пользователей, где разработчики конечных пользователей могут совместно решать проблемы EUD, представляющие общий интерес или для взаимной выгоды. В таких сообществах местные эксперты делятся опытом и советами. Члены сообщества также оказывают друг другу социальную поддержку, поддерживая совместное создание программного обеспечения.[31]
Критика
Комментаторы были обеспокоены тем, что конечные пользователи не понимают, как тестировать и защищать свои приложения. Уоррен Харрисон, профессор компьютерных наук в Портлендском государственном университете, писал:[32]
Просто непостижимо, что мы могли ожидать безопасности ... от подавляющего большинства программных приложений, когда они написаны с небольшим, если вообще, знанием общепринятых передовых практик, таких как определение перед кодированием, систематическое тестирование и так далее. ... Сколько существует книг X for Complete Idiots (где "X" - ваш любимый язык программирования)? Сначала меня забавляла эта тенденция, но в последнее время мне стало неловко думать о том, где эти любители применять свои новые знания.
Эта точка зрения предполагает, что все конечные пользователи одинаково наивны, когда дело доходит до понимания программного обеспечения, хотя Плискин и Шоваль утверждают, что это не так, что искушенные конечные пользователи способны разрабатывать для конечных пользователей.[33] Однако, по сравнению с опытными программистами, у конечных пользователей редко бывает время или интерес к систематической и дисциплинированной деятельности по разработке программного обеспечения.[34] что делает обеспечение качества программных артефактов, создаваемых конечными пользователями, особенно сложными.
В ответ на это исследование разработка программного обеспечения для конечных пользователей появился. Он связан с проблемами, выходящими за рамки разработки для конечных пользователей, в результате чего конечные пользователи становятся мотивированными для рассмотрения таких вопросов, как возможность повторного использования, безопасность и возможность проверки при разработке своих решений.[35]
Альтернативный сценарий: конечные пользователи или их консультанты нанимают декларативный инструменты, которые поддерживают строгие бизнес-правила и правила безопасности за счет производительности и масштабируемости; инструменты, созданные с использованием EUD, обычно будут иметь худшую эффективность, чем инструменты, созданные в профессиональных средах программирования. Хотя отделение функциональности от эффективности является допустимым разделение проблем, это может привести к ситуации, когда конечные пользователи заполнят и задокументируют анализ требований и прототипирование инструмента, без привлечения бизнес-аналитики. Таким образом, пользователи определят необходимые функции до того, как эти эксперты смогут рассмотреть ограничения конкретного заявление или же программная среда. Поддержка высшим руководством таких инициатив конечных пользователей зависит от их отношения к существующим или потенциальным привязка к поставщику.
Смотрите также
- Автоматическое программирование
- Вычисления для конечных пользователей
- Платформы разработки low-code
- Программирование на естественном языке
- Ситуационное приложение
- Программная инженерия
Рекомендации
- ^ Scaffidi, C .; Shaw, M .; Майерс, Б. (1 сентября 2005 г.). Оценка количества конечных пользователей и программистов конечных пользователей. Симпозиум IEEE 2005 г. по визуальным языкам и вычислениям, ориентированным на человека (VL / HCC'05). С. 207–214. Дои:10.1109 / VLHCC.2005.34. ISBN 978-0-7695-2443-6.
- ^ Литтл, Грег и Роберт С. Миллер. "Перевод команд ключевых слов в исполняемый код. "Труды 19-го ежегодного симпозиума ACM по программному обеспечению и технологиям пользовательского интерфейса. ACM, 2006.
- ^ Брукман, Эми и Элизабет Эдвардс. "Следует ли использовать знание естественного языка? Анализ ошибок пользователя в языке программирования в стиле естественного языка. "Труды конференции SIGCHI по человеческому фактору в вычислительных системах. ACM, 1999.APA
- ^ а б Бернетт, Маргарет М.; Скаффиди, Кристофер. Разработка для конечных пользователей. Interaction-Design.org. в "Энциклопедии взаимодействия человека и компьютера".
- ^ Хорнсби, Питер (2009-08-03). «Предоставление пользователям возможности создавать собственное программное обеспечение». UXmatters. Получено 2014-01-31.
- ^ Abraham, R .; Бернетт, М; Эрвиг, М. (2009). "Табличное программирование". Энциклопедия компьютерных наук и инженерии Wiley. С. 1–10.
- ^ Крук С. и Шитц С., 2001. Теория точности таблиц. Журнал информационных систем образования.
- ^ Скаффиди К., Шоу М. и Майерс Б., 2005. Оценка количества конечных пользователей и конечных пользователей-программистов. Симпозиум IEEE 2005 г. по визуальным языкам и вычислениям, ориентированным на человека (VL / HCC’05), стр.207–214.
- ^ Патерно Ф., 2013, Разработка программного обеспечения ISRN, Разработка для конечных пользователей: исследование новой области для расширения прав и возможностей людей
- ^ Гиани, Г., Манка, М., Патерно, Ф., Санторо, К.: Персонализация контекстно-зависимых приложений с помощью правил триггерного действия. Транзакции ACM о взаимодействии компьютера и человека, том 24, выпуск 2, статья №14, апрель 2017 г.
- ^ Платформы разработки low-code
- ^ Либерман, Х., Патерно, Ф., Кланн, М., и Вульф, В. (2006). Разработка для конечных пользователей: возникающая парадигма. В: Разработка для конечных пользователей, Либерман, Х., Патерно, Ф. и Вульф, В. (ред.), Springer, Нидерланды, 2006, сер. Серия «Взаимодействие человека и компьютера», т. 9, Глава 1, стр. 1-7, Дои:10.1007 / 1-4020-5386-X_1
- ^ Ко, Эндрю Дж .; Авраам, Робин; Беквит, Лаура; Блэквелл, Алан; Бернетт, Маргарет; Эрвиг, Мартин; Скаффиди, Крис; Лоуренс, Джозеф; Либерман, Генри (2011-04-01). «Современные достижения в разработке программного обеспечения для конечных пользователей». ACM Comput. Surv. 43 (3): 21:1–21:44. CiteSeerX 10.1.1.159.8597. Дои:10.1145/1922649.1922658. ISSN 0360-0300.
- ^ Х. Либерман, Б. А. Нарди и Д. Райт. Grammex: определение грамматик на примере. На конференции ACM по человеческому фактору в вычислительных системах (резюме, демонстрации) (CHI ’98), Лос-Анджелес, Калифорния, США, страницы 11–12. ACMPress, апрель 1998 г.
- ^ Мария Франческа Костабиле, Даниэла Фольи, Пьеро Муссио, Антонио Пиччинно. Разработка для конечных пользователей: подход к семинару по формированию программного обеспечения. В: Либерман, Х., Патерно, Ф., Вульф, В. (редакторы) (2004) Разработка конечных пользователей - расширение возможностей людей для гибкого использования передовых информационных и коммуникационных технологий, © 2004 Kluwer Academic Publishers, Дордрехт, Нидерланды.
- ^ Костабиле, М.Ф., Фогли, Д., Летондал, К., Муссио, П., Пиччинно, А., Пользователи-эксперты и их потребности в разработке программного обеспечения", Конференция UAHCI, Крит, 22–27 июня 2003 г., 232–236.
- ^ Герхард Фишер Разработка для конечных пользователей и мета-дизайн: основы культур участия. Лекционные заметки по компьютерным наукам для конечных пользователей, 2009 г., том 5435/2009, 3-14,
- ^ Скаффиди, Кристофер; Брандт, Джоэл; Бернетт, Маргарет; Голубь, Андрей; Майерс, Брэд (2012). SIG: программирование для конечных пользователей. CHI '12 Расширенные рефераты по человеческому фактору в вычислительных системах. Chi Ea '12. С. 1193–1996. Дои:10.1145/2212776.2212421. ISBN 9781450310161.
- ^ Леонарди, Никола; Манка, Марко; Патерно, Фабио; Санторо, Кармен (2019). Программирование триггерного действия для персонализации поведения роботов-гуманоидов. CHI '19 Конференция ACM по человеческому фактору в вычислительных системах. Дои:10.1145/3290605.3300675. ISBN 978-145035970-2.
- ^ Саркар, Адвайт; Блэквелл, Алан; Ямник, Матея; Спотт, Мартин (июль 2014 г.). Учите и пробуйте: простой метод взаимодействия для исследовательского моделирования данных конечными пользователями. Симпозиум IEEE 2014 года по визуальным языкам и вычислениям, ориентированным на человека (VL / HCC 2014). С. 53–56. CiteSeerX 10.1.1.695.2025. Дои:10.1109 / VLHCC.2014.6883022. ISBN 978-1-4799-4035-6.
- ^ Хейнс, Джон Л. (осень 1985 г.). «Схемотехника с Lotus 1-2-3». БАЙТ. стр. 143–156. Получено 19 марта 2016.
- ^ Рой Чоудхури, Судип; Родригес, Карлос; Даниэль, Флориан; Касати, Фабио (2010). Компьютинг с учетом мудрости: по интерактивной рекомендации знания композиции. Icsoc'10. стр.144–155. ISBN 9783642193934.CS1 maint: ref = harv (связь)
- ^ Сатклифф, Алистер (Июль 2005 г.). «Оценка затрат и выгод разработки для конечных пользователей». Примечания по разработке программного обеспечения ACM SIGSOFT. 30 (4): 1–4. Дои:10.1145/1082983.1083241.
- ^ Андерсен, Ренате; Мёрч, Андерс И. (2009-03-02). Взаимная разработка: пример разработки программного обеспечения по инициативе клиентов. Разработка для конечных пользователей. Конспект лекций по информатике. 5435. С. 31–49. CiteSeerX 10.1.1.598.9066. Дои:10.1007/978-3-642-00427-8_3. ISBN 978-3-642-00425-4.
- ^ Фишер, Герхард (1 января 1994). «Ответственность за проблемы с предметно-ориентированной средой проектирования». Ориентированные на пользователя требования к средам разработки программного обеспечения. Шпрингер, Берлин, Гейдельберг. С. 297–306. CiteSeerX 10.1.1.310.8814. Дои:10.1007/978-3-662-03035-6_23. ISBN 978-3-642-08189-7.
- ^ Фишер, Герхард; Джаккарди, Элиза (01.01.2006). Либерман, Генри; Патерно, Фабио; Вульф, Фолькер (ред.). Разработка для конечных пользователей. Серия «Взаимодействие человека и компьютера». Springer Нидерланды. стр.427–457. Дои:10.1007 / 1-4020-5386-x_19. ISBN 9781402042201.
- ^ Либерман, Генри; Патерно, Фабио; Кланн, Маркус; Вульф, Волкер (01.01.2006). Либерман, Генри; Патерно, Фабио; Вульф, Фолькер (ред.). Разработка для конечных пользователей. Серия «Взаимодействие человека и компьютера». Springer Нидерланды. стр.1–8. Дои:10.1007 / 1-4020-5386-x_1. ISBN 9781402042201.
- ^ Эриксон, Томас; Келлог, Венди А. (2000-03-01). «Социальная прозрачность: подход к разработке систем, поддерживающих социальные процессы». ACM Trans. Comput.-Hum. Взаимодействовать. 7 (1): 59–83. Дои:10.1145/344949.345004. ISSN 1073-0516.
- ^ Лешед, Джилли; Haber, Eben M .; Мэтьюз, Тара; Лау, Тесса (01.01.2008). CoScripter: автоматизация и обмен практическими знаниями на предприятии. Материалы конференции SIGCHI по человеческому фактору в вычислительных системах. CHI '08. Нью-Йорк, Нью-Йорк, США: ACM. С. 1719–1728. Дои:10.1145/1357054.1357323. ISBN 9781605580111.
- ^ Интхара, Танапонг; Турмухамбетов Данияр; Бростоу, Габриэль Дж. (01.01.2017). Помогите, это выглядит сбивающим с толку: автоматизация задач с графическим интерфейсом пользователя с помощью демонстрации и дополнительных вопросов. Материалы 22-й Международной конференции по интеллектуальным пользовательским интерфейсам. IUI '17. Нью-Йорк, Нью-Йорк, США: ACM. С. 233–243. Дои:10.1145/3025171.3025176. ISBN 9781450343480.
- ^ Fischer, G .; Giaccardi, E .; Ye, Y .; Sutcliffe, A.G .; Механджиев, Н. (2004-09-01). «Мета-дизайн: манифест для развития конечных пользователей». Commun. ACM. 47 (9): 33–37. Дои:10.1145/1015864.1015884. ISSN 0001-0782.
- ^ Харрисон, Уоррен (июль – август 2004 г.). «Опасности программирования для конечных пользователей». Программное обеспечение IEEE. 21 (4): 5. Дои:10.1109 / MS.2004.13.
- ^ Плискин, Нава; Шовал, Перец (1987). «Создание прототипов для конечных пользователей: опытные пользователи, поддерживающие разработку системы». База данных ACM SIGMIS. 18 (4): 7–17. Дои:10.1145/1017816.1017817.
- ^ Брандт, Джоэл; Го, Филип Дж .; Левенштейн, Джоэл; Клеммер, Скотт Р. (1 января 2008 г.). Оппортунистическое программирование: как быстрое создание идей и прототипов происходит на практике. Материалы 4-го Международного семинара по разработке программного обеспечения для конечных пользователей. WEUSE '08. Нью-Йорк, Нью-Йорк, США: ACM. С. 1–5. Дои:10.1145/1370847.1370848. ISBN 9781605580340.
- ^ «Разработка программного обеспечения для конечных пользователей: эмпирические данные». Конечные пользователи формируют консорциум эффективного программного обеспечения. Получено 2008-05-28.
дальнейшее чтение
- Сайфер, Аллен (1993). Посмотрите, что я делаю: демонстрационное программирование. Автор Дэниел С. Халберт. Издательство: MIT Press. ISBN 978-0-262-03213-1.
- Либерман, Генри (2001). Ваше желание - моя команда: программирование на примере. Автор Бен Шнейдерман. Издатель: Морган Кауфманн. ISBN 978-1-55860-688-3.
- Ф. Патерно (2013) Развитие конечных пользователей: исследование новой области для расширения прав и возможностей людей, ISRN Software Engineering, т. 2013 г., идентификатор статьи 532659, 11 стр., 2013 г. Дои:10.1155/2013/532659, 2013
- Б. Го, Д. Чжан, М. Имаи. Включение ориентированного на пользователя управления для повсеместных вычислений: подход мета-проектирования, компьютерные сети, Elsevier, Vol. 54, №16, 2010.
- Бернетт, Маргарет М. и Скаффиди, Кристофер (2011): Разработка для конечных пользователей. В: Soegaard, Mads and Dam, Rikke Friis (ред.). «Энциклопедия взаимодействия человека и компьютера».
- Кьеркегор, Патрик(2011) Кьеркегор, Патрик (2011). Активизация развития конечных пользователей: правовая защита и соблюдение нормативных требований. Разработка для конечных пользователей. Конспект лекций по информатике. Конспект лекций по информатике. 6654/2011. С. 203–217. Дои:10.1007/978-3-642-21530-8_16. ISBN 978-3-642-21529-2.
внешняя ссылка
- Второй международный симпозиум по развитию конечных пользователей
- Консорциум EUSES, сотрудничество, которое исследует вычисления для конечных пользователей
- Книга по развитию конечных пользователей
- Сеть передового опыта Европейской комиссии по развитию конечных пользователей
- Серия конференций Международный симпозиум по развитию конечных пользователей