Разрешение настраиваемого пользовательского интерфейса для систем космического корабля

Настройка пользовательского интерфейса для управления космическим кораблем;

«В теории практика и теория одинаковы. На практике они совершенно разные».

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

На космическом корабле с длительным сроком службы, который не вернется в порт в течение многих лет, возможно, что пользовательские интерфейсы, разработанные для корабля, на самом деле не так уж и полезны. Есть информация, которую оператор считает более полезной, или презентация, которая дает слишком много неверной информации. Какое место в этом сценарии занимает предоставление пользователю/инженеру/оператору возможности настраивать дисплей и элементы управления в соответствии со своими потребностями? Где можно разрешить настройку пользовательского интерфейса, а где запретить? Меня интересует, разрешена ли настройка, и если да, то с какими ограничениями , а не как создавать индивидуальные дисплеи (поскольку этот вопрос очень широк).

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

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

Это не Open Source, как это определено FSF и OSI. opensource.org/osd
" Должны ли они быть разрешены, и если да, то с какими ограничениями " кажется POB. Например, НАСА, кажется, принадлежит к лагерю «Не трогайте этот пользовательский интерфейс, который был кодифицирован 20 лет назад после 10 лет заседаний комитета», в то время как другие не так строги.
@RonJohn и НАСА не выполняли 10-летних пилотируемых миссий, где потребуется что-то новое. НАСА может себе это позволить, потому что окно адаптации невелико.
Может быть, они думают, что все предусмотрели... :)
@RonJohn Человеческий фактор определяется не комитетом, а многочисленными несчастными случаями со смертельным исходом и близкими вызовами.
@ user71659 комитет должен объединить извлеченные уроки в единое целое.
Астронавты точно не будут экспертами по UX — даже когда они создают пользовательский интерфейс для личного использования, они могут совершать ошибки, которые могут привести к потенциально опасным нарушениям UX — только некритические, IMO :)
Вы спрашиваете мнение, которое прямо противоречит правилам этого форума. Мне нравится этот вопрос, но я думаю, что вам следует переформулировать его и задать конкретный вопрос.
Это интересно, но ИМО безнадежно широко. Насколько я вижу, это совершенно общий вопрос пользовательского интерфейса без каких-либо конкретных проблем с пространством.
@LukeBriggs, конечно, они не будут экспертами в области пользовательского интерфейса, но они будут знать свои проблемы лучше, чем кто-либо на земле. Если у них есть возможность повторять дизайн, они могут найти приемлемое решение довольно быстро.
@MarkOlson Я понимаю, как вы думаете, что это слишком широко, но ответ в основном да / нет и некоторые оправдания для исключений. Я изменил акцент вопроса, чтобы показать, что мне нужно.
Если «Меня интересует, разрешена ли настройка, и если да, то с какими ограничениями» — это реальный вопрос, как минимум заголовок должен отражать это.
@MarkOlson справедливое замечание. Обновлено.
Примером использования этого может быть то, что вам нравится зеленый цвет в стиле Matrix на черной консоли, но Арни-инопланетянин видит только красный, и глаза вашего приятеля Джима упадут, если он не использует высококонтрастный белый цвет на черном интерфейсе.
@AmiralPatate. Не согласен. Пример использования: Навигатору нужна информация, которая не отображается на обычном дисплее. Следует ли разрешить ему изменять свой дисплей, чтобы он отображал необходимую ему информацию, а если нет, то почему?

Ответы (16)

Многие (но не все) средства управления космическим кораблем будут иметь решающее значение для безопасности . Когда старший пилот прыгает на место второго пилота на задымленном мостике вместо того, чтобы заставить ночного пилота освободить свое место, старший пилот должен уметь находить кнопки вслепую, в обычном пространстве.

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

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

Мы не должны предполагать, что пилоты будут получать информацию через что-то столь же примитивное, как глазные яблоки, или отдавать команды, посылая электрические импульсы своим мясистым конечностям.
@SPavel Но вы, вероятно, по-прежнему будете использовать зрительную кору для передачи информации человеку, чтобы она по-прежнему была визуальной с точки зрения сознания пользователя. Аналогично для электрохимических сигналов к/от мясных цифр. Есть много специального аппаратного обеспечения, которое вы бы использовали для интерфейса, если бы могли.
В комментарии к другому ответу возникла идея учетных записей пользователей . Переключение элементов управления может быть таким же простым, как голосовая команда («Старший пилот вступает во владение»), или происходить автоматически в ответ на распознавание лиц. Конечно, в случае ситуации, когда требуется, чтобы несколько членов экипажа интерпретировали и обсуждали отображаемые данные, все еще может быть место для путаницы, но это можно решить, позволив сбросить пользовательский интерфейс (или временно переключившись на пользовательский интерфейс по умолчанию), чтобы он соответствовал версии, описанной в обучении и руководстве.
@Llewellyn Может быть интересной сюжетной точкой, когда пользователь видит что-то в данных, но недееспособен - и когда другие пытаются получить доступ к системе, пользовательский интерфейс отключается от пользовательского интерфейса этого пользователя, и они больше не могут видеть это представление.
@Llewellyn, "кашель, кашель, секция наводнения, кашель, семь с огнетушащей пеной". «Для этой функции требуется разрешение капитана или старшего офицера. Отпечаток голоса не распознан. Пожалуйста, снимите маску и положите руку на сенсорную панель, чтобы я мог вас идентифицировать».
Что, если бы каждый человек настраивал пользовательский интерфейс по своему желанию (в пределах разумного), но компьютер чувствовал, кто сидит на месте, и использовал его пользовательский интерфейс.
Принцип KISS: «Держите это до глупости простым». Критически важные элементы управления будут максимально простыми и надежными. Переключение пользовательского интерфейса напрашивается на неприятности. Даже если вы измените раскладку по умолчанию, человек не будет использовать ее целую вечность, поэтому он будет медленным, не говоря уже о мышечной памяти.
Я согласен с этим ответом. В основном из-за того, что люди на корабле, скорее всего, обучены использовать пользовательский интерфейс определенным образом; быть с визуальным, слуховым, тактильным и т. д. интерфейсом (используется с глазами и ушами или непосредственно с мозгом). Особенно, если они военные. У людей на космических кораблях также, как правило, есть другие люди, которые могут взять на себя их работу в случае, если нужный человек недееспособен (обычно более одного или двух).
@om Простой чип RFID сделает свое дело.
Некоторые другие проблемы с учетными записями пользователей - это использование электроники в целом, если космический корабль должен иметь дело с ЭМИ, или просто большое количество структурных повреждений, в целом выводящих из строя сервер «Учетных записей пользователей», даже если физическое оборудование все еще может работать вручную. . Другой проблемой может быть атакующий вирус; (думаю, Звездный крейсер Галактика )
@AmiralPatate, я вижу в этом трюке большой потенциал для приключений. Но приключение — это еще один парень, который плохо проводит время, желательно далеко.

Это довольно просто - мы уже делаем это!

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

Затем система SCADA отвечает за чтение, запись и отображение данных пользователю. Можно настроить системные страницы SCADA для отображения любых этих данных.

Конечно, большинству пользователей нельзя (и не следует) позволять изменять вещи по своему желанию. Таким образом, у вас есть система кодов доступа, чтобы определить, кто может изменять какие значения или даже кто может читать какие значения.

Кроме того, у вас есть сами страницы SCADA. Иногда система блокируется на 100% во время поставки; но иногда операторы «суперпользователя» могут при необходимости настроить свои собственные страницы; или чаще, если потребность становится очевидной, проводится сбор требований, чтобы заставить поставщика создать новую страницу. Это зависит от того, кто отвечает за спецификацию системы; например, национальная сеть, управляющая этой электростанцией, или космическое агентство, управляющее этим спутником.

Если вы отправляетесь в космос для продолжительной миссии, вероятно, будут применяться те же принципы. Я полагаю, что разрешение на внесение изменений будет предоставлено капитану и/или старшему инженерному персоналу.

Д'о. Конечно, да. Критически важные для безопасности интерфейсы, подобные этому, уже существуют. Спасибо.
Есть разумное предположение, что вам может понадобиться помощь других космических кораблей. В таком случае я был бы очень признателен, если бы штучки с другого корабля знали, где искать и где какую кнопку нажимать, ничего не думая и не подгоняя под себя. Я думаю, что если бы у вас было больше фабрик, вы бы хотели иметь такой же макет пользовательского интерфейса для управления критическими функциями.
@Artholl Вы всегда можете загрузить профиль по умолчанию с помощью одной выделенной физической неподвижной кнопки.
Как я уже писал - "ничего не думая и не подгоняя". Например - ваш корабль атакован и ваш техник тяжело ранен. К счастью, вы спасли того же почтового техника с другого корабля, и он смог вам помочь. Я не думаю, что пора загружать профиль по умолчанию, когда вы находитесь под атакой / быстро теряете кислород или что-то подобное.
@Artholl Это не всегда разумное предположение. Возможно (вероятно, будет) практичнее построить один большой колониальный корабль, чем два корабля половинного размера, а риск потерять корабль уже неприемлем. Однако, что касается профилей по умолчанию, нормальной ситуацией для SCADA будет добавление страниц по умолчанию, а не их замена. Таким образом, даже если предыдущий техник травмирован, его замена может немедленно вернуться к значениям по умолчанию. И если вы хотите пойти на персонализацию, достаточно легко сохранить свои собственные страницы на карту памяти (или имплант памяти; эй, мы говорим здесь о научной фантастике).
Я не говорю о двух кораблях половинного размера против одного большого корабля. Я говорю о десятках. Например, «Звездный путь». Добавление следующих страниц после основных страниц — хорошая идея, но для критически важных приложений я всегда хотел бы, чтобы они были как можно более простыми. Даже без каких-либо научно-фантастических имплантов, потому что они могут представлять опасность для жизненно важных систем — совместимость/вмешательство/взлом через импланты. Слишком опасно для меня для жизнеобеспечения. Не так опасно для домашнего кинотеатра :-)

Я предполагаю, что для космического корабля вы получите различие между критическим пользовательским интерфейсом, некритическим пользовательским интерфейсом и случайным пользовательским интерфейсом. Могут быть и другие классы, но я не уверен, что они будут. Я предполагаю, что критический пользовательский интерфейс не будет настраиваемым, но некритичный будет.

Я думаю, что для критического пользовательского интерфейса есть несколько общих элементов. Прежде всего, чувствительность ко времени и необратимость. Это включает в себя предупреждения о безопасности о воздушном потоке / расплавлении реактора. Но это также включает в себя крупномасштабные затраты энергии, необходимое техническое обслуживание и т. д. Эти критические элементы не следует настраивать, потому что предположительно многие люди на борту смогут их увидеть и начать реагировать (даже если это просто разбудит соответствующих людей). унифицированный пользовательский интерфейс позволит любому, независимо от того, через какой терминал он проходит, увидеть происходящее событие. Кроме того, людей можно легко научить выполнять определенные процедуры (например, создание дампа ядра), для которых потребуется согласованный пользовательский интерфейс. Кроме того, настройка по наследству создает вероятность сбоя, а допущение сбоя в критическом пользовательском интерфейсе означает, что другая проблема может не быть обнаружена.

Для некритического пользовательского интерфейса, по-видимому, люди будут входить в терминалы, когда они садятся/начинают рабочий цикл. Я полагаю, что экран входа в систему является стандартным (не знает человека), а затем загружает его личный интерфейс с сервера. Я предполагаю, что полезные изменения пользовательского интерфейса будут переноситься по мере того, как люди копируют/вставляют друг друга. Я также предположил бы, что известная область экрана — это то место, где находится критический пользовательский интерфейс (или что он может всплывать поверх персонализированного пользовательского интерфейса) известным способом, который нельзя изменить. Такие вещи, как пользовательский ввод (который не должен следовать аварийным процедурам), должны быть настраиваемыми, поскольку люди оптимизируют рабочий процесс. Кроме того, то, что отображается (скорость, положение, мощность), люди видят, где, скорее всего, изменится в зависимости от их работы.

Для случайного пользовательского интерфейса (например, выключателя света) кажется, что затраты на загрузку пользовательского интерфейса слишком высоки, чтобы каждый человек мог его настроить. Так что он должен быть стандартным.

Ценное различие между «публичным» и «персональным» отображением. Большой дисплей на стене, предназначенный для просмотра многими людьми, является «общедоступным», и информация, отображаемая на нем, должна соответствовать стандартам, изложенным в соответствующих правилах. Меньший дисплей на рабочей станции человека является «частным» и должен быть настроен этим человеком. Портативный планшет, который различные люди передают капитану Кирку для ознакомления, должен отображать информацию в том формате, в котором он ее запросил.

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

Если ваш пользовательский интерфейс построен правильно, он выполняет вызовы API к серверной части, а серверная часть делает что-то или возвращает ошибки, такие как 418: я чайник. Ничто из того, что вы можете сделать, не повлияет на возможности API, поэтому какой-нибудь двухбитный плагин jQuery не расплавит вашу систему.

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

Хотя вы должны иметь возможность модифицировать свои элементы управления и визуализации, нет причин разрешать удаление векторов предупреждений. Независимо от того, что вы делаете со своей темой tumblr, вы все равно будете получать большое страшное электронное письмо, написанное заглавными буквами, о том, что что-то не так. Низкоуровневые аппаратные оповещения модели «большой мигающий красный свет и пронзительный шум» не должны изменяться.

Однако в дальнем путешествии все сломается. Если сигнал тревоги не может быть устранен или неисправная система была обойдена, капитан должен иметь право подавить сигнал тревоги. Да, компьютер, мы знаем, что в корпусе пробоина и атмосфера разряжена. Все носят костюмы EVA уже несколько дней. Пожалуйста, соблюдайте тишину.

«Да, компьютер, мы знаем, что есть пробоина в корпусе и атмосфера разряжена. Все уже несколько дней носят костюмы для выхода в открытый космос. Пожалуйста, тише». -> Спасатель появляется в шлюзе, не получает предупреждения, открывает скафандр, умирает
Капитан корабля не имеет права отключать собственные функции оповещения спасающего корабля.
@Caleth - Открытие скафандра EVA даже в среде, которая считается безопасной, по своей природе дарвинистски ...

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

Я создаю компьютерные системы для жизни. Каждый опытный разработчик программного обеспечения видел, как вещи, которые хорошо звучали на чертежной доске и хорошо выглядели при тестировании, на практике оказывались не такими уж хорошими. (Реестр Windows... кхе-кхе...) Большинство крупных программных проектов на самом деле не имеют конечной даты. Вы развертываете версию 1, позволяете людям использовать ее какое-то время, затем вы видите результаты и начинаете работать над версией 2.

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

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

Как уже упоминалось, вы, вероятно, не хотите позволять пользователю удалять предупреждения об опасности, потому что он находит их раздражающими.

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

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

Вполне возможно, что в будущем компьютеры будут похожи на компьютеры из «Звездного пути», где вы можете просто сказать: «Компьютер, рассчитайте выходную мощность наших двигателей, используя это новое топливо, которое мы только что получили от клингонов», и он это сделает. даже несмотря на то, что никто никогда не программировал его для расчета выходной мощности и не давал никаких данных о новом топливе. В реальной жизни компьютеры не могут просто изобретать новые алгоритмы на основе расплывчатых английских описаний. По моему скромному мнению, если когда-либо будет изобретена машина, способная на это, она будет мало похожа на современные компьютеры. Создание совершенно нового дисплея — это не то, что средний член экипажа сможет сделать за 5 минут. Это будет задача, требующая квалифицированных программистов.

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

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

Роли: Как и в случае с современными компьютерными программами, вам необходимо разработать роли. Как мы используем их сегодня, у вас часто есть роли, например:

  • Админы
  • Ведет
  • Техники
  • контроль качества

Разрешения:

  • Администрация
  • Суперпользователь
  • Редактировать
  • Только чтение

Типы информации: это я указал для вашего сценария

  • Состояние системы
  • Технические данные (инженерные)
  • Данные телеметрии/сенсора
  • Навигация/пилотирование
  • Безопасность (вероятно, это точка метаданных, которая может применяться к другим типам)
  • Жизненная поддержка
  • Снабжение/запасы
  • Данные экипажа

Хорошо со всем этим, краткий ответ на ваш вопрос: да , вы должны разрешить настраиваемые данные с некоторыми оговорками. Для демонстрации предположим, что у вас есть ведущий пилот.

Этот человек попадет в Ведущую роль.

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

Другим примером может быть инженер, занимающийся, скажем, системами вентиляции.

Этот человек попадет в роль техника . Хотя и здесь ты мог бы сыграть главную роль.

  • С точки зрения разрешений они могут иметь доступ к системной информации для редактирования и доступ только для чтения к данным датчика.

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

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

Суперпользователь обычно имеет доступ ко всему ... Ваши пункты «Разрешения» и «Логически» несколько противоречат друг другу.
@wizzwizz4 wizzwizz4 Вы можете определить уровни разрешений для определенных наборов данных, для типа данных x я являюсь администратором или суперпользователем, но я могу вообще не видеть данные y.
Ах. Разрешения в стиле SELinux.
@wizzwizz4 Да, это хороший способ взглянуть на это.

Какое место в этом сценарии занимает предоставление пользователю/инженеру/оператору возможности настраивать дисплей и элементы управления в соответствии со своими потребностями?

Все, что помогает вам лучше выполнять свою работу, вероятно, будет стимулировано.

Например, игроки Kerbal Space Program могут использовать моды, позволяющие отображать на экране количество топлива, которое вы тратите на высоту при отправке вещей на орбиту Кербина. У вас нет этого из коробки с ванильной версией игры, и это чрезвычайно полезно.

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

Где должна быть разрешена настройка пользовательского интерфейса (...)

Где угодно.

а где это должно быть запрещено?

Не стоит запрещать новые экраны и макеты. Что вы не можете разрешить, так это любые настройки, которые:

  • Усложняет или делает невозможным поиск элементов исходного пользовательского интерфейса. Даже если пользователь обычно игнорирует некоторые из этих элементов, могут быть моменты, когда они становятся критически важными. То есть: то, что вы никогда не собираетесь приземлять свой космический корабль, не означает, что вы должны полностью удалить переключатель, который запускает шасси.

  • Конечно, если пользовательский интерфейс настраиваемый, всегда будет ругательная дыра, которая будет включать где-то рекламу. Они также могут включать код для майнинга криптовалют или код для незаметного отслеживания ваших действий. Этого тоже нельзя допускать.


Некоторые примеры из художественной литературы, где пользовательский интерфейс корабля был или мог быть настроен:

  • В фильме « Черная пантера » есть космический корабль, которым можно управлять дистанционно через модуль виртуальной реальности с реалистичной тактильной (то есть сенсорной) обратной связью. Форма органов управления может быть изменена в соответствии с тем, что более привычно для пилота.

  • В книге Джо Холдемана « Marsbound » космический корабль, который доставляет колонистов с Земли на Марс, управляется с помощью планшета. Никаких дополнительных подробностей не приводится, но мы можем предположить, что пользовательский интерфейс может быть переписан/перенастроен в соответствии с потребностями пилота.

  • В серии книг «Автостопом по Галактике » у некоторых кораблей довольно... интересный... пользовательский интерфейс. Золотое Сердце управляется искусственной глупостью, которая, конечно же, может проецировать на свои экраны все, что захочет. Также есть корабль под названием Bistromath , интерфейс которого состоит из столов бистро и роботов-официантов. Я могу только предположить, что можно было бы использовать варианты, охватывающие разные кухни (например, суши-бары).

«Конечно, юристы… всегда будут занозой для творческих людей». Меня как студента юридического факультета это возмущает! Я бы сказал, что любые модификации, которые могут сделать руководства по эксплуатации устаревшими, должны быть запрещены. Я думаю, вы подразумевали это в своем ответе, но это стоит выделить для OP. Даже при обширной подготовке, которую получают астронавты, они часто полагаются на инструкции с наземного пульта управления и руководства пользователя — там так много кнопок! Изменение конфигураций управления может сделать невозможным использование знаний третьих лиц.
@PinkSweetener Мне очень жаль. Я изменил текст. Что касается зависимости от руководств, то я упоминаю, что даже при разрешении настройки исходный пользовательский интерфейс всегда должен быть легко доступен.
Ха-ха, нет, я пошутил! Пожалуйста, не стесняйтесь изменить его обратно.
@PinkSweetener: В большинстве компьютерных систем есть понятие учетных записей пользователей . Как только я стану сертифицированным пилотом космического корабля / вахтенным / рулевым, я смогу настроить пользовательский интерфейс, представленный в моей учетной записи пользователя, по своему усмотрению. Когда кому-то еще нужно получить доступ к системе, они (или мы оба) можем легко войти в первозданную пользовательскую среду. Не говоря уже о том, что наземные инструкции на самом деле должны быть в терминах целей, которые должны быть достигнуты, например, повернуть налево на курс такой-то и такой-то, а не в терминах кнопок, которые нужно нажимать.
Мне очень нравится идея связать это с учетными записями пользователей. Это действительно могло бы помочь обойти проблему, поднятую @om (пилотам необходимо настроить либо пользовательский интерфейс, либо потратить некоторое время на ознакомление с текущими настройками при переходе от кого-то другого).
Есть еще один, еще более известный вымышленный пример: «Энтерпрайз-D» в сериале «Звездный путь: Следующее поколение». ВСЕ экраны и панели могут быть настроены и настроены на лету. Вот почему мостовая «оперативная» станция (там, где обычно сидел Дейта) могла выполнять так много разных функций. Предположительно, возможность изменить конкретную вещь зависела от работы пользователя и доступа к безопасности.
KSP с MechJeb, +1. На моем экране так много информации (большинство из которых являются переключаемыми параметрами, таким образом, «пользовательский интерфейс»), что мне нужно три монитора. Я вижу самые чистые, не использующие MJ, но я не понимаю, как вы можете использовать MJ без сверхширокой настройки. Космический корабль должен поставляться с дополнительным экранным пространством, иначе не останется места для дополнительных вещей. - не скрывать старый интерфейс +1. Однажды я на какое-то время потерял навигационный шар; это было не весело.

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

Пример: гоночные автомобили NASCAR теперь имеют цифровую приборную панель. Хотя (по причинам конкуренции) правила ограничивают то, что может отображаться, способ отображения этой информации можно немного настроить. Некоторые водители предпочитают дисплей, похожий на циферблат старого образца. Другие предпочитают тахометр, который помимо цифр выглядит как гистограмма. У некоторых время круга отображается большими цифрами, у некоторых — меньшими, у некоторых оно вообще не отображается и так далее.

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

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

Без стандартизированных элементов управления и дисплеев составление контрольных списков на случай чрезвычайной ситуации становится намного сложнее, потому что люди, естественно, склонны отодвигать на задний план редко используемую информацию, но в чрезвычайной ситуации вам часто нужны эти редко используемые дисплеи. ("Проверь уровень давления воздуха впускного отверстия... где это, черт возьми,?! Где я это меню засунул?!") . Если счет идет на секунды, вы не можете суетиться, потому что вы перетасовали какой-то редко используемый дисплей состояния в какое-то вторичное меню, которое вам нужно копаться и находить.

Таким образом, используя Enterprise 1701-D в качестве примера, Helm, Tactical и Engineering всегда будут иметь стандартные макеты и дисплеи, потому что вы хотите, чтобы кто-то мог подойти к дежурной консоли и мгновенно увидеть, что происходит, и контролировать что необходимо. Если корабль атакован и Ворф (снова) нокаутирован, вы хотите, чтобы кто-то мог подойти к станции и узнать, где находится индикатор прочности щита, кнопка запуска торпед и фазеров и все остальное, что необходимо. не пытаясь понять, где, черт возьми, Ворф все переставил. Если варп-ядро вот-вот взорвется (снова), вам нужно точно знать, где находится элемент управления выбросом, без необходимости искать его в различных меню.

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

Тем временем Пикард и Крашер устанавливают дисплеи в своих офисах, как бы они ни хотели. Никто больше не будет использовать их очень часто, и они не критичны для работы.

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

С развитием пользовательского интерфейса от подсветки и флип-переключателей 1950-х годов до консолей с сенсорным экраном, подобных Tesla, 2010-х годов, весьма вероятно, что возможность настройки будущих консолей будет только увеличиваться. Актуальный вопрос заключается в том, в какой степени эта способность будет использоваться. Например, консоль Tesla потенциально может быть адаптирована для управления космическим кораблем. Но (учитывая, что проектировщики не предусмотрели такую ​​возможность) сколько усилий (и потенциального риска) потребуется для этого?

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

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

Эта гибкость должна быть намеренно ограничена там, где это уместно. Одно дело, когда корабельная камбузная консоль настроена до неузнаваемости. Совсем другое дело сделать то же самое с консолью, на которой есть кнопка "самоуничтожения" корабля (незаменимая вещь в фантастике, насколько я понимаю).

Редизайн системы управления работает не так, как редизайн сайта. С конца 80-х у нас есть полностью настраиваемый промышленный пользовательский интерфейс. Диспетчер пользовательского интерфейса обычно называют «мастер-системой», и все виджеты можно перетаскивать в интерфейсе дизайна. Обычно пользователь системы не имеет доступа к дизайнерскому приложению. Это работа инженеров и системных интеграторов.
@slebetman Я не работал с промышленными системами, но знаком с автоматическим управлением пользовательским интерфейсом. Это намного хуже, чем веб. Полная настройка (помимо настройки или перестановки виджетов в текущем приложении) — это большой, большой проект, который занимает не менее года.
Для промышленного управления (например, пользовательского интерфейса космического корабля) никогда не нужно разрабатывать новые виджеты. В промышленности новые типы виджетов изобретаются примерно каждые 2 года. Все, что вам когда-либо понадобится, — это изменить порядок виджетов и страниц/вкладок. Посмотрите на пользовательский интерфейс SpaceX в ответе Робин. Единственный виджет, который я не видел за время работы в SCADA 18 лет назад, — это трехмерный вид Земли. Кроме того, SpaceX могла использовать программное обеспечение 2001 года.

Современные примеры

Моей первой мыслью при чтении этого было воспоминание о коллеге, работавшем на буровых платформах на Аляске. Платформы похожи на космические корабли в том смысле, что им требуются системы жизнеобеспечения, чтобы изолировать рабочих от арктических погодных условий, и если бы они находились вдали от берега, а не жили в Прадхо-Бей, они могли бы находиться на буровой неделями.

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

Риски с причудливыми дисплеями

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

Добавление некоторых человеческих элементов для повествования

С точки зрения повествования, если вы просто хотите, чтобы путешественники «правильно поняли», я настоятельно рекомендую перечитать пост о SCADA, а также я бы порекомендовал прочитать о процедурах контроля изменений.

Но если вы хотите ввести некоторые проблемы, то, в зависимости от вашей аудитории, вы можете заставить персонажа использовать организационную политику, чтобы заставить использовать его «гениальный» (читай: идиотский) дизайн, который терпит неудачу, когда он пытается протолкнуть обновление, или от любого другого незначительного шока. В качестве альтернативы, когда происходит изменение, занятой директор/старший офицер просто передает код авторизации для модификаций обслуживающей бригаде, потому что он не хочет каждый раз вводить авторизацию, а затем бригада делится им со всеми и Следующее, что вы знаете, половина элементов управления полностью переставлена, и никто не знает, что происходит.

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

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

Старый Союз управляет

Новые органы управления Союзом

Панель управления SpaceX Dragon

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

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

Группа из шести кнопок предназначена для выключения и повторного включения питания. Это то, что я определенно хотел бы сделать физической кнопкой, когда компьютер выходит из строя!

Это больше, чем пользовательский интерфейс, который вы хотите настроить.

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

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

  • определить, что датчики должны искать и
  • определять автоматические реакции на вещи.

Скажем, вы столкнетесь с этим воинственным инопланетным видом, чьи корабли оснащены маскирующим устройством, которое, однако, может быть обнаружено по специфическому искажению фонового изображения, которое оно вызывает. Таким образом, экипаж должен иметь возможность настроить датчики для обнаружения этого искажения и пометить его как враждебную цель. И тогда им может понадобиться настроить корабль так, чтобы он автоматически поднимал щиты и нагревал импульсный двигатель, готовясь к маневру уклонения, потому что корабль может приближаться со скоростью 5000 км/с, а обнаружить его можно только на 10 000. км — никак офицер-тактик не успевает среагировать до того, как они окажутся на огневом рубеже.

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

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

Также остерегайтесь чрезмерных ограничений. Кто-то, кто вмешивается в элементы управления, которых они не должны касаться, — это проблема людей, и ее нужно решать с помощью правил, обучения и подчинения, а не контроля доступа. Члены вашей команды должны иметь возможность заменить других, которые являются инвалидами или просто потеряли ситуационную осведомленность и не делают то, что должны, даже если это означает временное нарушение субординации, если этого требует ситуация. Это хорошо подготовленные профессионалы; дать им немного доверия.

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

Хотя это не совсем открытый исходный код, то, что вы описываете, просто нуждается в каком-то способе моделирования систем космического корабля, и пользовательский интерфейс может быть построен на моделировании. Затем он должен пройти какой-то стандарт/проверку, прежде чем будет передан в систему управления версиями космического корабля, которая определенно не является GitHub, или сокращенно SSCSTDIG.

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

Если вы предпочитаете что-то тактильное, обратите внимание на светодиодные клавиатуры. Представьте, что клавиши увенчаны светодиодной панелью, которая может отображать любой символ, который вы хотите. Таким образом, вы можете назначить каждой кнопке иконку (которую вы можете нарисовать сами; на Mac 35 лет назад был растровый редактор) и действие, которое вы также можете запрограммировать самостоятельно.

https://mechanicalkeyboards.com/shop/images/products/large_1056_DSC_1040.jpg

введите описание изображения здесь

Как это отвечает на вопрос?
@ G0BLiN этот ответ был опубликован до того, как ОП пояснил, что он хочет «должен» вместо «как».

Я думаю, что лучший способ приблизиться к этому — отобразить элементы управления в виде панели, похожей на Google Keep, и после ввода пароля инженеры смогут перетаскивать различные карты. Вы должны иметь возможность показывать и скрывать карты, за исключением определенных карт, таких как скорость, топливо и кислород.

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

это зависело бы от того, был ли пользовательский интерфейс настраиваемым или взломанным.

Под возможностью взлома я подразумеваю использование знаний о системе для создания специального элемента.

Настраиваемый пользовательский интерфейс раскрывает достаточную базовую структуру, чтобы вы могли создать новое поведение пользовательского интерфейса.

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

В то время как с настраиваемым пользовательским интерфейсом, если бы это было больше похоже на гибрид ОС + IDE. Если вы решите, что хотите иметь календарь с неделями, состоящими из 9 дней по 36 часов, или отображение фаз Фобоса с показом слайд-шоу скриншотов Doom, оно не будет пытаться вас остановить.