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

Это вторая часть серии статей о создании «Симкомата X». Первую часть читайте здесь.

В закладки
Аудио

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

В апреле 2018 года Артём Субботин предложил мне поработать над прототипом нового устройства — «Симкомата X». Ему нужен был человек, который организует весь процесс от создания концепции дизайна до воплощения её в реальный работающий прототип, который будет предшествовать мелкой партии.

Я уже работал над «большим» симкоматом раньше, поэтому тема и проблемы мне были знакомы (кстати, о процессе проектирования есть подробная статья).

Однако новое устройство — это совершенно иной продукт. Продакт-менеджер проекта Антон Бочкарёв, который ещё появится в следующих материалах, поделился со мной новой, более простой концепцией, которую они вынашивали последний год.

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

Схема взаимодействия человека и нового симкомата выглядит примерно так:

  • Симкомат раздает открытый Wi-Fi.
  • Пользователь подключается к этому Wi-Fi с помощью своего телефона, если у него нет интернета в телефоне.
  • В телефоне пользователя появляется окно captive portal, такое же, как появляется при подключении к Wi-Fi в метро, например. В этом окне рассказывается об услуге.
  • Чтобы купить SIM-карту, человек тут же в телефоне проходит верификацию и оплачивает услугу.
  • По окончании процесса система генерирует QR-код, который высвечивается на телефоне человека.
  • Пользователь подносит экран телефона с QR-кодом к сканеру симкомата, который всегда находится в режиме ожидания.
  • Симкомат сверяет отсканированный с экрана телефона QR-код с базой данных на сервере и, если код совпадает, выдаёт SIM-карту.

После анализа и уточнения всех требований у меня получилась такая условная схема устройства:

Артём Субботин мой старый друг, а по древнему преданию «с друзьями бизнес делать нельзя». Поэтому, чтобы не облажаться, первым делом я написал документ, в котором кроме целей и задач этапа было описано, что конкретно я должен делать и, главное, чего я делать не должен. Если коротко, то от меня требовалось:

  • Финализировать требования к устройству и его прошивке.
  • Организовать работу распределённой команды разработки.
  • Проектировать и арт-директорствовать.
  • Контролировать качество и сроки.

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

  • Участвовать в намечающейся выставке, презентовать устройство журналистам.
  • Показывать процесс работы устройства в процессе продаж.
  • Разработать и протестировать коммуникационную связку «симкомат-сервер-телефон».
  • Сделать тестовый дизайн и доработать требования перед созданием полноценного промышленного образца

Срок, выделенный на разработку, — три месяца. Это довольно мало для предсерийного прототипа. Но самой большой проблемой было то, что команда, которая должна была заняться разработкой, была не знакома ни мне, ни Артёму с Антоном. Кроме того, мы находились в разных городах: команда разработчиков в Ижевске, я в Петербурге, Артём в Москве.

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

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

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

Чтобы не облажаться, мы всё подробно описали: ТЗ (сейчас смотрю на него и понимаю, что не такое оно уж и подробное), план работ, описание ролей и ответственности, завели чатик в Telegram и ударили по рукам.

Разработка

Разработка шла в два параллельных потока:

  • Дизайн корпуса.
  • Железо.

Ижевская команда занималась подбором и тестированием электроники, что называется, «на столе». Это когда все нужные электронные компоненты (источник питания, модем, диспенсер, сканер и прочее) собираются в единую систему и их пытаются запустить.

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

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

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

Промышленный дизайн

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

Устройство обещало получиться не очень большим — примерно как старые таксофоны. Оно должно иметь возможность устанавливаться на специальной ножке либо без неё, например на стол, а также подвешиваться на стену.

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

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

Картонный прототип симкомата с габаритными моделями внутренних устройств

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

Вариант компоновки с выдачей SIM-карты в сторону

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

Едем дальше. Развернули диспенсер картой вперёд. Глубина устройства сразу увеличилась. Получили примерно следующее:

Вариант компоновки с диспенсером, выдающим карту вперёд. Экран сканера смотрит вверх

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

Вариант компоновки, в котором экран сканера смотрит вниз

Что-то в этом есть. Сверху можно установить сканер QR-кода, чтобы человек мог поднести руку с телефоном, держа его экраном вверх. Пространство между верхней и нижней частью окрестили «пещерой».

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

В таком дизайне мы можем разместить сканер как сверху, так и снизу:

Вариант 1. Расположить сканер снизу для пользователя значило, что человек при сканировании должен перевернуть телефон вниз экраном.

Вариант 2. Расположить сканер сверху значило, что человеку не нужно поворачивать телефон экраном вниз.

Последнее решение кажется более логичным и за него были разработчики. Но в нём был огромный недостаток с точки зрения взаимодействия — сканер не виден человеку.

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

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

Киоск S7 для печати билетов

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

Продолжили работать над внешним видом корпуса, и в результате родился вот такой дизайн:

Стойка

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

Одновременно с этим хотелось сделать стойку максимально незаметной и лёгкой, поэтому надписи разместили на боковые стенки. Получилось вот так:

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

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

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

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

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

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

Софт

Тем временем на стороне софта тоже велись работы. Антон Бочкарёв (менеджер со стороны «Симкомата») со своими программистами подготовили API, чтобы «подружить» сервер с будущим устройством. Инженерам также удалось запустить сканер и заставить диспенсер выдавать карты.

Тестируем сканер

Конструкция и производство прототипа

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

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

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

Скриншот из программы для конструирования

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

Гнутая пластиковая поверхность (белая деталь)

Диспенсер выдаёт карту через невзрачное прямоугольное отверстие, на котором однако имеются лампочки для индикации. Арсений спроектировал прекрасные «губы» для лицевой части устройства, которые были напечатаны на 3D-принтере. Получившийся при этом эффект индикации стал очень важной частью образа нашего детища.

Белая пластиковая деталь на переднем плане — «губы» симкомата, через которые он выдаёт карту

Вот так это выглядит в действии

Тестирование индикации диспенсера симкомата

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

Делаем части и собираем конструкцию:

Стенки корпуса
Собранный корпус с выдвижным блоком
Стойка. Сделана также из МДФ
Внутренние устройства, собранные на выдвижном блоке

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

Окрашенный корпус и лицевая панель

Последняя стадия производства самая напряжённая. Вылезают мелкие косяки, на устранение которых нужно много времени. Внезапно сгорает источник бесперебойного питания, подводят подрядчики (классика), а ножка оказывается на 10 сантиметров выше, чем нужно. Но мы сдюжили.

Итого нам удалось разработать и сделать прототип за два месяца и 29 дней (ножку мы потом неспеша переделали).

Устройство нужно было Артёму в Москве. Антон с командой программистов протестировали устройство, кое-что поправили и отправили его в столицу.

Тестирование и настройка симкомата перед отправкой в Москву
«Симкомат X», готовый к отправке

Что было дальше, я могу судить только по заголовкам интернет-изданий. Заказчик выглядит довольным.

Артём показывает симкомат журналистам
Доволен

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

Этим этапом занимался Михаил Санников — крутейший специалист и менеджер в хардварной разработке. Он будет рассказывать об этом процессе в следующей части. Не пропустите.

P.S. Если вам нужно спроектировать интерфейсы для устройства или софта, вы можете обратиться ко мне.

Материал опубликован пользователем.
Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Илья Александров", "author_type": "self", "tags": [], "comments": 16, "likes": 34, "favorites": 63, "is_advertisement": false, "subsite_label": "design", "id": 80772, "is_wide": false, "is_ugc": true, "date": "Mon, 09 Sep 2019 10:40:39 +0300", "is_special": false }
0
{ "id": 80772, "author_id": 351578, "diff_limit": 1000, "urls": {"diff":"\/comments\/80772\/get","add":"\/comments\/80772\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/80772"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 199114, "last_count_and_date": null }
16 комментариев
Популярные
По порядку
Написать комментарий...
11

Здорово получилось! Подход, дизайн, мне всё понравилось!
Не знаю, насколько аппарат актуален в связи с грядущим переходом на e-sim, но работа крутая 👏🏼👏🏼👏🏼

Ответить
0

Е-сим, переход с сохранением номера... Носятся с этими симкоматами как с писанной торбой, кому они нахрен нужны в таких масштабах? Спамерам?

Ответить
0

Урвать последний шанс перед e-SIM

Ответить
0

Почему спамерам? В бедных странах зайдёт. Он же запатентован скорее всего.
Это Россия впереди планеты всей по мобильной связи. А где-то ещё и кнопочные покупают.

Ответить
0

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

Ответить
0

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

А пока мы продаем вот такой eSim

Ответить
0

А любые какие? Подорожник и подобные? По-моему вся эта карточная история уходит. Намного удобнее держать виртуальные карты в смартфоне и выпускаются они мгновенно.
Ваш симкомат хорош, реально понравился. Но чтобы его применять, нужны средства: покупка (аренда) самого аппарата, загрузка карт, поддержка софта, размещение в проходных местах, администрирование.
У меня кстати, есть другая техноидея, отвал башки. Не хотите пообщаться? Я в СПб если что.

Ответить
2

Юхуу, офигенно! Молодцы, приятно читать. И снова жду продолжения

Ответить
1

К середине недели будет третья часть

Ответить
1

Отличная статья, по железякам - там небось британский микро-пк этот?

Ответить
1

В прототипе - да. Так проще и быстрее. Что в серии будет - читайте в следующей статье )

Ответить
0

Обычно никогда не пишу комментарии, но тут решил. Зачем такой сложный симкомат с WiFi? Видел в аэропорту Heathrow в пятом терминале вот такой аппарат https://ps-image-bucket.s3.amazonaws.com/trbusiness.com/wp-content/uploads/2016/12/Sim-card-machine-Heathrow.jpg и вот такой аппарат https://upload.wikimedia.org/wikipedia/commons/thumb/8/89/Simcard_Vending_Machine.JPG/900px-Simcard_Vending_Machine.JPG 

Т.е. это обычные вендинговые машины. За e-sim ничего не скажу :-)

Ответить
0

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

Ответить
0

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

Ответить
0

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

Ответить
{ "page_type": "article" }

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovx", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "disable": true, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ] { "page_type": "default" }