4 марта 2013 в 14:35

Как создать новый продукт для рынка электроники. Часть 1



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

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

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

Многие читатели Хабра знакомы с внутренней кухней разработки ПО, а ведь железо — это совсем другая история. Готовы? Тогда поехали.

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


Фаза №1. Анализ


У всех эта фаза проходит и называется по-разному: «Расчеты», «Проектирование», «Сбор требований». Одни компании сразу же стартуют с тех. задания, написанного инженером «в теме», другие уделяют чертовски много времени планированию и проработке. Почему же это может быть важно? Причины просты:

  1. Планирование бюджета. Как правило, процесс разработки продукта довольно длинный и будет неприятно, если после 8—9 месяцев инвестирования у вас внезапно закончатся деньги. Матерые компании и продакт-менеджеры имеют собственные технологии планирования для новых продуктов, которые банки даже принимают в качестве гарантий по кредитам.
  2. Оптимизация себестоимости. Если вы производите 50 тыс. устройств в год, будет полезно экономить каждый доллар в себестоимости устройства.
  3. Управление. В разработку любого продукта, даже довольно простого, завязаны тысячи людей (прямо или косвенно: поставщики компонентов, инженеры, маркетологи, рабочие завода-изготовителя и т.д.). Задачи нужно будет делегировать правильным специалистам в правильное время.
  4. Цена ошибки, она очень высока, и чем раньше мы ее выявляем, тем лучше.

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

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

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


Пример: эскизы новых электронных устройств, созданные командой промдизайнеров компании Promwad

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

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

Некоторые продукты в сфере электроники «не взлетали» именно по причине нерабочего софта.

Даже самое тщательное планирование не защитит от ошибок на 100%. Вы наверняка читали подобные заголовки новостей:

  • Apple отзывает iPod nano: в плеерах найден дефект аккумулятора
  • Nokia отзывает 14 миллионов потенциально бракованных зарядных устройств
  • Intel отзывает партию чипсетов для процессоров из-за обнаруженного дефекта
  • Garmin отзывает более миллиона GPS-навигаторов из-за перегрева аккумуляторов
  • Lenovo отзывает свои компьютеры из-за риска внезапного возгорания

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

Фаза №2. Разработка


Как правило, электронное изделие состоит из следующих компонентов, которыми занимается инженерный отдел:

  1. Железо
  2. Корпус
  3. Софт
  4. Технологии производства

А вот эти компоненты остаются за границами инженерного отдела (мы к ним вернемся позже):
  • Упаковка
  • Брэнд
  • Логистика
  • Производство

  • Каналы продаж
  • Сервисное обслуживание
  • Инфраструктура
  • Интеллектуальная собственность (патенты и т.д.)


Железо. Благодаря современным САПРам разработка аппаратного обеспечения — это достаточно стандартизованный процесс, который при хорошо сформированных вводных не длится долго (от 2 недель до пары месяцев максимум). Самая сложная штука — это конструкция. Дело в том, что физическое расположение одних элементов относительно других играет большую роль и оказывает непосредственное влияние на работоспособность современного устройства.

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

Программное обеспечение в электронике работает в условиях ограниченных ресурсов. Подход к его разработке кардинально отличается от подходов, принятых в индустрии разработки ПО для веба, десктопов и т.п. Используются другие инструменты и другая среда разработки: версии ОС для встраиваемых систем Windows CE, Linux Embedded и т.п.

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

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

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

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


Пример: образец бортового автомобильного самописца, разработанного в компании Promwad. Корпус выращен в 3D-принтере по технологии лазерной стереолитографии. За счет шлифовки и покраски внешний вид устройства был максимально приближен к заводской версии.

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

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

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

UP. Спасибо за отзывы и плюсы в карму, благодаря им статья добавлена в хаб «Оценка и экспертиза IT-проектов».
+78
40679
425
ashby 15,0
Похожие публикации
А много ли дроны дают молока? Приёмы обратной разработки в звуковом дизайне 22 сентября 2013 в 14:41
Oracle 12c Multitenant Architecture. Новые возможности для разработки и тестирования 4 июля 2013 в 15:00
Видео: Новые предложения по разработке и тестированию ПО для подписчиков MSDN и другие новости Windows Azure 9 июня 2013 в 13:12
Письмо программиста — дизайнерам (в процессе подготовки нового проекта Winx...) 15 ноября 2012 в 10:48
Использование MS Project для управления проектами по разработке ПО 17 сентября 2012 в 11:09
Метрики в проектах по разработке ПО 29 июля 2012 в 11:17
Создаём новый проект для Android по-новому 29 июня 2012 в 23:27
Шон Паркер запускает новый проект 28 мая 2012 в 13:01
Разработка сайта — от первой встречи с заказчиком до сдачи проекта, или как быть фрилансером и выжить 16 апреля 2012 в 13:03
Оценка трудозатрат выполнения проекта по разработке ПО: практика в условиях украинской реальности 16 декабря 2011 в 13:24

Комментарии (32)

+4
wulff007, #
Можно пожелать вам удачи, и покупателей!
+5
amdf, #
Используются другие инструменты и другая среда разработки: версии ОС для встраиваемых систем Windows CE, Linux Embedded и т.п.

А бывает, что и вовсе ОС не используется. Есть микроконтроллер и есть его прошивка, и всё.
0
e_asphyx, #
«ОС» — широкий термин. С точки зрения архитектуры больших систем вроде Linux, встраиваемые RTOS вовсе «ОС» не являются. С другой стороны, это тоже ОС.
+1
amdf, #
Множество вариантов. Полноценная ОС, простая RTOS, отсутствие ОС (простейший вариант, задачи запускаются последовательно, плюс возникают прерывания).
0
mbr, #
Нет никакого широкого термина. Ядро ОС — это диспетчер задач, менеджер памяти и набор средств для межпроцессной синхронизации. Остальное — по желанию.
0
Quasar_ru, #
Так внутреннее ПО и есть прошивка, неважно написано оно с использованием ОС или без использования. ОС это переключалка задач, плюс некоторые механизмы синхроизации. Даже менеджер памяти у ОС может отсутствовать, так как есть ОС в которых все задачи определяются на стадии компиляции, со всеми необходимым структурами данных. (Но это совсем примитивные, но тоже ОСи)
+2
Ariman, #
Видел выступления ваших (из Promwad) на конференции DEDF-2012, впечатлен вашей фирмой.
Выглядит солидно и по-европейски, сколько не искал у нас в Москве похожего — не нашел, может быть — просто плохо искал. Софтварных хватает, а по разработке железа, чтобы все на таком уровне было построено — не нашел. А жаль, хотел бы у вас поработать.
+6
Promwad, #
Ariman, cпасибо за отзыв. Очень приятно, что вы оценили нашу компанию, особенно учитывая ваш большой опыт работы с Linux, FreeRTOS, OpenWRT, микроконтроллерами STM32 и другими технологиями, которые близки нашей команде. И отдельное спасибо за ваш отличный пост про миникомпьютер.

Для читателей Хабра уточним: DEDF — это форум разработчиков цифровой электроники, который мы проводили в 2011 и 2012 году в московском зале Digital October. В следующий раз будем делиться опытом на DEDF-2014.

Видеозапись выступлений можно посмотреть тут: DEDF-2012, DEDF-2011. В списке докладов есть темы для инженеров, программистов и руководителей компаний по разработке электронных устройств.
0
adminimus, #
что характерно, в первой картинке на втором этапе работает самый настоящий инженегр :)
0
kaichou, #
инженегрица
0
Deenamo, #
она вам подмигивает
0
DejmosSm, #
Скорее настоящая (как показалось по картинке).
+1
timaktaev, #
ишо хачу. Когда будет Часть 2?
0
ashby, #
You've made my day. Пообещал себе, что если будет хоть один запрос, то сделаю в кратчайшие сроки. Так что в самое ближайшее время
0
timaktaev, #
Я сам занимаюсь промдизайном. Но несмотря на то, что электронику еще не запускал всяко ею интересуюсь. Рад, что немножко вдохновил ))
+3
Amomum, #
Intel отзывает микроконтроллеры для процессоров из-за обнаруженного дефекта

Микроконтроллеры для процессоров? О_О
0
ashby, #
Amomum, спасибо за внимательность, текст исправлен. Ссылка была на новость 2011 года — «Корпорация Intel отзывает партию чипсетов для семейства процессоров Sandy Bridge».
+1
vvzvlad, #
Читал, читал, и вдруг статья кончилась.
0
ashby, #
Значит будет продолжение.
0
jAN, #
Два месяца в России? В России восемь недель вполне может длиться банальный цикл «ожидание поставки компонентов».
С другой стороны, в этом время тоже есть чем заняться.
0
ashby, #
Я строил свою поставку комонент, которая позволяет произвести ОО за два месяца в россии там, где «ожидание поставки» занимает 8 недель. Но это получается дорого.
0
jAN, #
На чём она основывалась, если не секрет?
0
ashby, #
На закупках по стокам + проверенные поставщики. Никакой магии.
+1
binariti, #
Судя по КДПВ они там придумали что-то вроде этого
image
0
vvzvlad, #
Кстати, цвета кожи на картинке тоже не просто так выбраны.
0
mbr, #
Описана исключительно техническая часть. Хотелось бы все-таки больше про то, как проводится анализ рынка, прогнозируемые объемы продаж. А то получается, что сделали вундервафлю, вложили много $$$, а она нафиг никому не нужна.
0
ashby, #
Продакт менеджменту в электронике я планировал посвятить отдельный текст, если это будет кому-то интересно.

Глобально на самом деле есть два подхода:
  • Сделать вундервафлю, вложить много $$$, попытаться извлечь профит, зафейлить, сделать вундервафлю2, вложить $$$$, извлечь профит и т д.
  • Потратить много времени на изучение рынка, планирование, договориться с покупателями, опросить пользователей, создать подробные спеки, сделать и потом долго извлекать профит из хорошего продукта.


Есть примеры успеха и в одном подходе и в другом. Первый веселее, во втором думать надо.
0
mbr, #
Да, было бы очень интересно.
0
jonic, #
Какого рода тестирование? Кто его проводит? Что в него входит? Очень интересно было бы прочитать про сертификацию.
0
ashby, #
Тут, как говорится, кто на что горазд.

Обычно делаются предсертификационные испытания и то, что жестко требуеся — ЭМС, безопасность, климатика например.
Если продукт работает в какой-то системе, то испытания «в поле» и т д.

Просто тема на самом деле настолько большая, что сложно однозначно ответить на все вопросы. Про саму сертификацию постараюсь рассказать в следующей части.
0
jonic, #
буду с нетерпением ждать следующей части! :)
0
alliv, #
Подписываюсь под каздым словом уважаемого ashby. Несколько скомканное и максимально краткое изложение действительсности, но тем не менее абсолютно всё верно.

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

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