Русский
Русский
English
Статистика
Реклама

Программное обеспечение

Инжиниринг производительности систем хранения данных

14.12.2020 20:04:49 | Автор: admin
Всем привет! Каждый день наша большая и дружная команда инженеров решает сложные задачи и вносит вклад в создание высокотехнологичных продуктов систем обработки и хранения данных. Мы решили познакомить вас с их рутиной поближе, и сегодня начинаем серию интервью с коллегами, чтобы от первого лица рассказать обо всех нюансах их работы.
image
Производительность одна из ключевых характеристик качественного программного обеспечения: прочие характеристики систем хранения данных не будут оценены по достоинству, если она работает медленно или нестабильно. Сегодня мы беседуем с Сергеем Качкиным kachini руководителем отдела технической экспертизы департамента прикладных исследований и технической экспертизы компании YADRO.

У его профессии несколько названий: аналитик производительности, performance engineer, performance tester. И все они достаточно мало распространены в России. Между тем инжиниринг производительности помогает создавать эффективные компьютерные системы, которые работают быстро и надежно. Его задача изучить, почему система функционирует не так, как хотелось бы, разобраться в причинах медленной или не соответствующей целевым параметрам работы, выявлять и находить проблемные места, помогать их устранять.

Сергей Качкин рассказал о поиске узких мест в программном стеке и оптимизации производительности СХД, о том, чем занимается его команда.

Сергей, как вы пришли в компанию YADRO? Был ли у вас уже опыт работы с OpenPOWER?
До этого я работал у другого вендора, занимался поддержкой проприетарной версией ОС UNIX на IA64 (не путать с x86) процессорах в части производительности ядра. Архитектура EPIC не похожа на RISC, она совсем другая. Так что опыт работы с OpenPOWER в компании YADRO у меня первый, и перестройка заняла какое-то время. Но идея у OpenPOWER, несмотря на некоторый минимализм, та же самая, поэтому всё можно освоить.

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

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

Как вы обеспечиваете контроль качества и выявление узких мест в стеке программного обеспечения?
Методы можно разделить на два подвида. Первый это системно-ориентированный подход (system centric approach). Он ориентирован на ресурсы: мы анализируем загрузку отдельных компонентов системы и на основании полученных результатов делаем предположение, где имеется узкое место.

Второй это подход, ориентированный на приложение (application centric approach), когда объектом исследования становятся приложения целиком или отдельные процессы в Linux. Мы смотрим, что делает приложение, какую работу выполняет. Полезная эта работа, или оно делает что-то бесполезное, то есть попусту тратит время. Если приложение в состоянии ожидания, мы смотрим, чего оно ждёт. Обычно это аппаратные или программные ресурсы, механизмы синхронизации.

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

Как понять, что СХД работает на пределе? Как определить, что запас производительности исчерпан? Какие параметры об этом свидетельствуют? Какие основные метрики используются для оценки производительности СХД?
Обычному пользователю доступно несколько метрик. Основная это время отклика. Важно его абсолютное значение. Кроме времени отклика важна также пропускная способность. Если с ростом нагрузки время отклика начинает расти, при этом показатели IOPS и объем передаваемых данных не увеличиваются, то это означает, что какой-то ресурс СХД близок к насыщению. Как известно, система хранения работает настолько быстро, насколько быстро может функционировать ее самый медленный ресурс.

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

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

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

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

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

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

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

Каковы должны быть масштабы оптимизации СХД? Охватывает ли она также ПО/оборудование серверов, инфраструктуру (SAN)? Предполагает ли обязательную тесную интеграцию программного и аппаратного стеков?
С точки зрения performance engineering система рассматривается целиком, в комплексе, то есть приложение, хост (сервер), инфраструктура хранения данных, (SAN), СХД. Важно представлять, как работает приложение, потому что именно оно генерирует запросы к СХД. Всё это, конечно, учитывается и используется.

Считается, что самый оптимальный вариант использования накопителей разных типов в СХД многоуровневое хранение данных. Можно ли тиринг рассматривать как средство увеличения производительности системы хранения?
Вообще говоря, тиринг похож на кэширование у них есть общие элементы. Разница лишь в том, что при кэшировании данные дублируются, то есть они находятся и на SSD (в кэше), и на диске, а при тиринге хранятся только в одном месте. То есть, если кэширование это способ оптимизации производительности, то и тиринг тоже можно рассматривать как метод оптимизации.

В чем вы видите преимущества/недостатки программно-определяемых СХД (SDS) с точки зрения анализа производительности и оптимизации системы? Может быть, это более простые, более гибкие решения?

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

Одна из целей компании разработка оптимизированных продуктов для искусственного интеллекта, интернета вещей и сетей пятого поколения. Как вы считаете, насколько сложная это задача? Что будут представлять собой такие продукты?
На данный момент для хранения сырых данных в ИИ часто используют файловые хранилища, для тренинга и построения моделей SDS, то есть это почти всегда распределенные решения. По моему ощущению, во многих компаниях ИИ сейчас используется как некий эксперимент, на него смотрят и пытаются понять, чем он может быть полезен. Поэтому и требования к железу не очень жесткие. Если работает хорошо, не работает можно подождать день-другой. По мере того, как работа ИИ в компаниях будет более критичной, возрастут и требования к дисковым подсистемам. Мы увидим новые СХД решения для ИИ и интернета вещей уже mission critical-класса.

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

Как вам видится роль виртуализации в СХД? Способствует ли она устранению узких мест в ПО или наоборот?И как взаимосвязаны производительность и надежность системы? Можно ли сохранить надежность, увеличивая производительность?
Конечно, виртуализация добавляет сложности, но она может быть полезна для изоляции одной функциональности СХД от другой. В целом это дополнительные издержки и усложнения, поэтому рассматривать ее следует критически, с осторожностью.

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

Сейчас появляются новые классы памяти типа Storage Class Memory, Persistent Memory, совершенствуются флэш-накопители. Как это влияет на архитектуру систем? Успевает ли программное обеспечение за этими изменениями?
Ну, по крайней мере, старается. Вообще, появление быстрой памяти в значительной степени изменило работу performance-инженеров вообще в отрасли. До появления SSD подавляющее большинство проблем с производительностью ИТ систем были связаны с вводом-выводом систем хранения. Потому что есть быстрые процессоры и диски (HDD) с механическими элементами, которые на много порядков медленнее процессора. Поэтому приходилось за счёт алгоритмов пытаться сгладить задержки от медленных дисков.

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

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

Зона доступа 30 способов, которые позволят разблокировать любой смартфон. Часть 1

21.09.2020 16:09:27 | Автор: admin


В своей работе компьютерные криминалисты регулярно сталкиваются с кейсами, когда надо оперативно разблокировать смартфон. Например, данные из телефона нужны следствию, чтобы понять причины суицида подростка. В другом случае помогут выйти на след преступной группы, нападающей на водителей-дальнобойщиков. Бывают, конечно, и милые истории родители забыли пароль от гаджета, а на нем осталось видео с первыми шагами их малыша, но таких, к сожалению, единицы. Но и они требуют профессионального подхода к вопросу. В этой статье Игорь Михайлов, специалист Лаборатории компьютерной криминалистики Group-IB, рассказывает о способах, которые позволяют экспертам-криминалистам обойти блокировку смартфона.

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


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

Насколько обычная блокировка экрана мобильного устройства препятствует извлечению специалистами данных из него, говорит тот факт, что ФБР США заплатило крупную сумму за разблокировку iPhone террориста Сайеда Фарука, одного из участников теракта в калифорнийском городе Сан-Бернардино [1].

Методы разблокировки экрана мобильного устройства


Как правило, для блокировки экрана мобильного устройства используется:

  1. Символьный пароль
  2. Графический пароль

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

  1. Разблокировка по распознаванию отпечатка пальца
  2. Разблокировка по распознаванию лица (технология FaceID)
  3. Разблокировка устройства по распознаванию радужной оболочки глаза

Социальные методы разблокировки мобильного устройства


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

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

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

  • при введении десяти неправильных паролей на мобильных устройствах компании Apple данные пользователя могут быть стерты. Это зависит от настроек безопасности, которые установил пользователь;
  • на мобильных устройствах под управлением операционной системы Android может быть использована технология Root of Trust, которая приведет к тому, что после введения 30 неправильных паролей данные пользователя буду либо недоступны, либо стерты.

Способ 1: cпроси пароль


Это покажется странным, но пароль разблокировки можно узнать, просто спросив у владельца устройства. Как показывает статистика, примерно 70% владельцев мобильных устройств охотно сообщают пароль. Особенно, если это сократит время исследования и, соответственно, владелец быстрее получит свое устройство назад. Если нет возможности спросить пароль у владельца (например, владелец устройства умер) или он отказывается его раскрыть пароль можно узнать у его близких родственников. Как правило, родственники знают пароль или могут подсказать возможные варианты.

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

Способ 2: подгляди пароль


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

Вариантом данного метода является использование записей камер видеонаблюдения, на которых запечатлен владелец, разблокирующий устройство с помощью графического пароля [2]. Описанный в работе Cracking Android Pattern Lock in Five Attempts [2] алгоритм, путем анализа видеозаписей, позволяет предположить варианты графического пароля и разблокировать устройство за несколько попыток (как правило, для этого нужно сделать не более пяти попыток). Как утверждают авторы, чем сложнее графический пароль, тем проще его подобрать.

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

Способ 3: найди пароль


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


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

Способ 4: отпечатки пальцев (Smudge attack)


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


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

Способ 5: искусственный палец


Если устройство может быть разблокировано по отпечатку пальца, а исследователь имеет образцы отпечатков рук владельца устройства, то на 3D-принтере можно изготовить трехмерную копию отпечатка пальца владельца и использовать ее для разблокировки устройства [3]:


Для более полной имитации пальца живого человека например, когда датчик отпечатка пальца смартфона еще детектирует тепло 3D-модель надевается (прислоняется) к пальцу живого человека.

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

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

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

Способ 6: рывок (Mug attack)


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

Рекомендация по защите: Думаю, если против вас собираются применять такие меры, то дело плохо. Но тут нужно понимать, что случайная блокировка обесценивает этот способ. А, например, многократное нажатие кнопки блокировки на iPhone запускает режим SOS, который в дополнение ко всему выключает FaceID и включает требование кода пароля.

Способ 7: ошибки в алгоритмах управления устройством


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

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

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

Способ 8: уязвимости в сторонних программах


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

Примером подобной уязвимости может быть похищение данных из iPhone Джеффа Безоса, основного владельца Amazon. Уязвимость в мессенджере WhatsApp, проэксплуатированная неизвестными, привела к краже конфиденциальных данных, находившихся в памяти устройства [6].

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

Рекомендация по защите: Нужно обновлять не только ОС, но и прикладные программы, которыми вы пользуетесь.

Способ 9: корпоративный телефон


Корпоративные мобильные устройства могут быть разблокированы системными администраторами компаний. Так, например, корпоративные устройства Windows Phone привязываются к аккаунту Microsoft Exchange компании и могут быть разблокированы ее администраторами. Для корпоративных устройств Apple существует сервис Mobile Device Management, аналогичный Microsoft Exchange. Его администраторы также могут разблокировать корпоративное iOS-устройство. Кроме того, корпоративные мобильные устройства можно скоммутировать только с определенными компьютерами, указанными администратором в настройках мобильного устройства. Поэтому без взаимодействия с системными администраторами компании такое устройство невозможно подключить к компьютеру исследователя (или программно-аппаратному комплексу для криминалистического извлечения данных).

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

Способ 10: информация из сенсоров


Анализируя информацию, получаемую от сенсоров устройства, можно подобрать пароль к устройству с помощью специального алгоритма. Адам Дж. Авив продемонстрировал возможность подобных атак, используя данные, полученные акселерометром смартфона. В ходе исследований ученому удалось правильно определить символьный пароль в 43% случаях, а графический пароль в 73% [7].

Рекомендация по защите: Внимательно следите за тем, каким приложениям вы выдаете разрешение на отслеживание различных сенсоров.

Способ 11: разблокировка по лицу


Как и в случае с отпечатком пальца, успех разблокировки устройства с использованием технологии FaceID зависит от того, какие сенсоры и какой математический аппарат используются в конкретном мобильном устройстве. Так, в работе Gezichtsherkenning op smartphone niet altijd veilig [8] исследователи показали, что часть исследуемых смартфонов удалось разблокировать, просто продемонстрировав камере смартфона фотографию владельца. Это возможно, когда для разблокировки используется лишь одна фронтальная камера, которая не имеет возможности сканировать данные о глубине изображения. Компания Samsung после ряда громких публикаций и роликов в YouTube была вынуждена добавить предупреждение в прошивку своих смартфонов. Face Unlock Samsung:


Более продвинутые модели смартфонов можно разблокировать, используя маску или самообучение устройства. Например, в iPhone X используется специальная технология TrueDepth [9]: проектор устройства, с помощью двух камер и инфракрасного излучателя, проецирует на лицо владельца сетку, состоящую из более чем 30 000 точек. Такое устройство можно разблокировать с помощью маски, контуры которой имитируют контуры лица владельца. Маска для разблокировки iPhone [10]:


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

Рекомендация по защите: не используйте разблокировку по фото только системы с полноценными сканерами лица (FaceID у Apple и аналоги на Android-аппаратах).

Основная рекомендация не смотреть в камеру, достаточно отвести взгляд. Если даже зажмурить один глаз шанс разблокировать сильно падает, как и при наличии рук на лице. Кроме того, для разблокировки по лицу (FaceID) дается всего 5 попыток, после чего потребуется ввод кода-пароля.

Способ 12: использование утечек


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


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

Способ 13: типовые пароли блокировки устройств


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

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


Как видно на скриншоте части рабочего окна программы UFED Physical Analyzer, устройство заблокировано достаточно необычным PIN-кодом fgkl.

Не стоит пренебрегать иными устройствами пользователя. Например, анализируя пароли, сохраненные в кэше веб-браузера компьютера владельца мобильного устройства, можно понять принципы генерации паролей, которых придерживался владелец. Просмотреть сохраненные пароли на компьютере можно с помощью утилиты компании NirSoft [11].

Также на компьютере (ноутбуке) владельца мобильного устройства могут быть Lockdown-файлы, которые могут помочь получить доступ к заблокированному мобильному устройству фирмы Apple. Об этом методе будет рассказано далее.

Рекомендация по защите: используйте везде разные, уникальные пароли.

Способ 14: типовые PIN-коды


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

Если ничего не помогает можно воспользоваться следующей информацией: исследователи провели анализ и нашли наиболее популярные PIN-коды (приведенные PIN-коды покрывают 26,83% всех паролей) [12]:

PIN Частота, %
1234 10,713
1111 6,016
0000 1,881
1212 1,197
7777 0,745
1004 0,616
2000 0,613
4444 0,526
2222 0,516
6969 0,512
9999 0,451
3333 0,419
5555 0,395
6666 0,391
1122 0,366
1313 0,304
8888 0,303
4321 0,293
2001 0,290
1010 0,285
Применение данного перечня PIN-кодов к заблокированному устройству позволит разблокировать его с вероятностью ~26%.

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

Способ 15: типовые графические пароли


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

Простые паттерны [14]:


Паттерны средней сложности [14]:


Сложные паттерны [14]:



Список самых популярных графических паттернов по версии исследователя Jeremy Kirby [15].
3>2>5>8>7
1>4>5>6>9
1>4>7>8>9
3>2>1>4>5>6>9>8>7
1>4>7>8>9>6>3
1>2>3>5>7>8>9
3>5>6>8
1>5>4>2
2>6>5>3
4>8>7>5
5>9>8>6
7>4>1>2>3>5>9
1>4>7>5>3>6>9
1>2>3>5>7
3>2>1>4>7>8>9
3>2>1>4>7>8>9>6>5
3>2>1>5>9>8>7
1>4>7>5>9>6>3
7>4>1>5>9>6>3
3>6>9>5>1>4>7
7>4>1>5>3>6>9
5>6>3>2>1>4>7>8>9
5>8>9>6>3>2>1>4>7
7>4>1>2>3>6>9
1>4>8>6>3
1>5>4>6
2>4>1>5
7>4>1>2>3>6>5

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

Рекомендация по защите: лучше вообще не использовать графические ключи.

Способ 16: буквенно-цифровые пароли


Если на устройстве можно использовать буквенно-цифровой пароль, то в качестве кода блокировки владелец мог использовать следующие популярные пароли [16]:

  • 123456
  • password
  • 123456789
  • 12345678
  • 12345
  • 111111
  • 1234567
  • sunshine
  • qwerty
  • iloveyou
  • princess
  • admin
  • welcome
  • 666666
  • abc123
  • football
  • 123123
  • monkey
  • 654321
  • !@#$%^&*
  • charlie
  • aa123456
  • donald
  • password1
  • qwerty123

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

Способ 17: облачные или локальные хранилища


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

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

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

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

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

Например, после террористического акта в Пенсоконе копии данных, хранящихся в iCloud, были переданы ФБР. Из заявления Apple:

В течение нескольких часов, после первого запроса ФБР, 6 декабря 2019 года, мы представили широкий спектр информации, связанной с расследованием. С 7 по 14 декабря мы получили шесть дополнительных юридических запросов и в ответ предоставили информацию, включая резервные копии iCloud, информацию об аккаунте и транзакциях для нескольких учетных записей.

Мы отвечали на каждый запрос незамедлительно, зачастую в течение нескольких часов, обмениваясь информацией с офисами ФБР в Джексонвилле, Пенсаколе и Нью-Йорке. По запросам следствия было получено много гигабайт информации, которую мы передали следователям. [17, 18, 19]

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

Способ 18: Google-аккаунт


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

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

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

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

Если устройство в момент исследования не подключено к интернету (например, SIM-карта заблокирована или на ней недостаточно денег), то подобное устройство можно подключить к Wi-Fi по следующей инструкции:

  • нажать иконку Экстренный вызов
  • набрать *#*#7378423#*#*
  • выбрать Service Test Wlan
  • осуществить соединение с доступной Wi-Fi-сетью [5]

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

Способ 19: гостевой аккаунт


На мобильных устройствах под управлением операционной системы Android 5 и выше может быть несколько аккаунтов. Для доступа к данным дополнительного аккаунта может отсутствовать блокировка PIN-кодом или графическим кодом. Для переключения нужно кликнуть на иконку аккаунта в правом верхнем углу и выбрать другой аккаунт:


Для дополнительного аккаунта доступ к некоторым данным или приложениям может быть ограничен.

Рекомендация по защите: тут важно обновлять ОС. В современных версиях Android (9 и выше с патчами безопасностями от июля 2020 года) учетная запись гостя, как правило, не дает никаких возможностей.

Способ 20: специализированные сервисы


Компании, занимающиеся разработкой специализированных криминалистических программ, в том числе предлагают услуги по разблокировке мобильных устройств и извлечению данных из них [20, 21]. Возможности подобных сервисов просто фантастические. С помощью них можно разблокировать топовые модели Android- и iOS-устройств, а также устройства, находящиеся в режиме восстановления (в которое устройство переходит после превышения количества попыток неправильного ввода пароля). Недостатком данного метода является высокая стоимость.

Фрагмент веб-страницы сайта компании Cellebrite, где описывается, из каких устройств они могут извлечь данные. Устройство может быть разблокировано в лаборатории разработчика (Cellebrite Advanced Service (CAS)) [20]:


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

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

P.S. Об этих кейсах, инструментах и многих других полезных фишках в работе компьютерного криминалиста эксперты Лаборатории Group-IB рассказывают в рамках обучающего курса Digital Forensics Analyst. После прохождения 5-дневного или расширенного 7-дневного курсов выпускники смогут эффективнее проводить криминалистические исследования и предовтращать киберинциденты в своих организациях.

P.P.S. Остросюжетный Telegram-канал Group-IB об информационной безопасности, хакерах, APT, кибератаках, мошенниках и пиратах. Расследования по шагам, практические кейсы с применением технологий Group-IB и рекомендации, как не стать жертвой. Подключайтесь!

Источники
  1. ФБР нашло хакера, готового взломать iPhone без помощи Apple
  2. Guixin Yey, Zhanyong Tang, Dingyi Fangy, Xiaojiang Cheny, Kwang Kimz, Ben Taylorx, Zheng Wang. Cracking Android Pattern Lock in Five Attempts
  3. Дактилоскопический датчик Samsung Galaxy S10 удалось обмануть с помощью отпечатка пальца, напечатанного на 3D-принтере
  4. Dominic Casciani, Gaetan Portal. Phone encryption: Police 'mug' suspect to get data
  5. Как разблокировать телефон: 5 способов, которые работают
  6. Дуров назвал причиной взлома смартфона Джеффа Безоса уязвимость в WhatsApp
  7. Датчики и сенсоры современных мобильных устройств
  8. Gezichtsherkenning op smartphone niet altijd veilig
  9. TrueDepth в iPhone X что это, принцип работы
  10. Face ID в iPhone X обманули с помощью 3D-печатной маски
  11. NirLauncher Package
  12. Анатолий Ализар. Популярные и редкие PIN-коды: статистический анализ
  13. Мария Нефедова. Графические ключи так же предсказуемы, как пароли 1234567 и password
  14. Антон Макаров. Обход графического пароля на Android-устройствах www.anti-malware.ru/analytics/Threats_Analysis/bypass-picture-password-Android-devices
  15. Jeremy Kirby. Unlock mobile devices using these popular codes
  16. Андрей Смирнов. 25 самых популярных паролей в 2019 году
  17. Мария Нефедова. Конфликт между властями США и компанией Apple из-за взлома iPhone преступника усугубляется
  18. Apple responds to AG Barr over unlocking Pensacola shooter's phone: No.
  19. Law Enforcement Support Program
  20. Cellebrite Supported Devices (CAS)

Подробнее..

Новое поколение Android malware использует машинное обучение для обхода антивирусного ПО

12.10.2020 10:15:25 | Автор: admin

Системы антивирусного ПО становятся все совершеннее. Но и разработчики malware не сидят без дела, создавая более продвинутые версии зловредного программного обеспечения для самых разных платформ и операционных систем.

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

Зловреды для Android? Они существуют много лет, одним больше, другим меньше


В целом, все так и есть, но malware, которое обнаружили эксперты по ИБ из Microsoft, удивляет своими возможностями. Речь идет о AndroidOS/MalLocker.B, одной из разновидностей вымогателей для Android.

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

Результат работы одного из представителей семейства ransomware прежних версий

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

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

Разработчики Android ввели в последних версиях ОС несколько изменений, которые позволяли избежать этой опасности:

  • Заменили SYSTEM_ALERT_WINDOW другими типами вызова окна сообщения об ошибках/уведомлениях.
  • Ввели запрос пользователя о разрешение использования SYSTEM_ALERT_WINDOW для разных приложений, а не всех вместе.
  • Добавили возможность деактивации окна SYSTEM_ALERT_WINDOW пользователем.

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

Но сейчас все изменилось, разработчики зловредного ПО тоже оказались не лыком шиты.

Что конкретно делает AndroidOS/MalLocker.B?


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

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


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


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

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


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

Обход защиты и способы распространения


Разработчики AndroidOS/MalLocker.B научили свое детище обходить как штатную систему безопасности Google, так и сторонние антивирусные решения. Сделано это путем маскировки некоторых функций и возможностей ransomware.

Так, любое Android-приложение включает manifest file, который содержит названия и детали всех программных компонентов. Разработчики зловредного ПО в обычной ситуации маскируют и скрывают некоторые важные компоненты. Создатели нового ransomware выбрали иной путь они обфусцируют код, который не позволяет антивирусным приложениям обнаружить вредонос. Кроме того, файл скрывают в другой папке, так что ransomware может работать, но не показывать истинности своих намерений.

Новый вредонос вряд ли проникнет в Google Play Store, но в сторонние каталоги приложений оно сможет попасть без особых проблем. Сейчас ransomware распространяется разработчиками на форумах, обычных веб-сайтах, сторонних каталогах приложений для Android. Здесь ничего нового, тактика киберпреступников стандартная замаскировать зловредный софт под популярное приложение, видеоигру, плеер или еще что-то подобное.

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

Подробнее..

Бесполезное видеонаблюдение или принцип Чабудо китайских производителей

03.12.2020 20:22:40 | Автор: admin

Легендарная пыль

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

Если посмотреть на большинство крупных брендов, то на деле все они использует OEM поставки от одних и тех же китайских производителей почти с одним и тем же софтом внутри (Dahua и Hikivision).

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

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

Скриншот программы SmartPSSСкриншот программы SmartPSSСкриншот программы SmartPSSСкриншот программы SmartPSSСкриншот программы CMSСкриншот программы CMS

Большие системы

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

Видеоаналитика

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

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

Представленный на рынке софт для видео наблюдения можно разделить на следующие категории:

  1. Небольшие программы, open source и подручные самописные средства.

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

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

  4. VSaaS (video surveillance as a service) - Облачные решения для записи и хранения видеозаписей с облачными сервисами. Такие сервисы часто предлагают уже преднастроенные ip камеры, привязанные к собственным облачным сервисам.

Cиний туман похож на ...

VSaaS значительно упрощает подключение устройств, но в этом случае приходится ежемесячно оплачивать услуги для каждой из ip камер. Эти услуги не дешевы и стоимость сильно зависит от желаемого срока хранения видеозаписей на сервере. Если вы хотите использовать, например, 10 камер, то стоимость выльется в существенную сумму - от 1000 до 30000 долларов в год в зависимости от срока хранения архива без учета стоимости оборудования. Т.е. каждый ежемесячный платеж может быть больше, чем стоимость самого оборудования. Стоимость облачных камер, как правило, существенно выше рыночных аналогов, несмотря на одинаковое железо внутри. Узким местом VSaaS является пропускная способность канала передачи данных.

При круглосуточной трансляции видео 1920х1080 (HD) в течение одного месяца каждая ip камера может съесть до 648 Гб интернет-трафика. При большой нагрузке провайдер может понижать скорость вашего соединения. Одна камера с высокой четкостью изображения, использующая продвинутые алгоритмы сжатия, например, H.264, генерирует поток данных со скоростью 2 - 10 Мбит/с. С другой стороны, средняя скорость исходящего канала в мире сейчас составляет только 5 Мбит/с.

Получается разрыв между текущими запросами пользователей VSaaS и возможностями каналов интернет провайдеров. Использование нескольких камер становится проблематичным, особенно для камер высокого разрешения. Суммарный поток данных при использовании 150 видеокамер разрешением 2 Мп (30 fps) для охраны периметра, имеет нагрузку на канал связи более 1 Гб/с. Удаленный просмотр, запись видео становятся ненадежными и невозможными. В итоге, облачное видеонаблюдение может превратиться в туманное с потерей важных данных. Многие пользователи уже успели разочароваться в таких сервисах из-за потери важных кадров.

Нейронные сети или из тумана снова в облако

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

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

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

Необходимо учитывать ограничения по скорости передачи, а также наличие сложных топологий с трансляцией адресов (NAT) и сетевыми экранами. Как правило, большинство технологий, которые для этого используются, требуют присвоения камере или видеорегистратору дорогостоящего белого IP адреса, сложной процедуры настройки с использованием сервисов VPN, UPnPct или DDNS.

Боль пользователей

Интернет провайдеры предоставляют услуги подключения к сети интернет на основании динамически изменяющихся IP адресов из определенного массива. При каждом входе в сеть этот адрес для пользователя изменяется, что требует систематической перенастройки камер системы видеонаблюдения. Провайдер может предоставлять внутренний IP адрес подсети, который будет отличаться от внешнего адреса. Белый статический IP адрес провайдер выделяет на платной основе и стоит эта услуга недешево. Как известно, общее количество IPv4 - адресов в мире ограничено и все они были розданы уже много лет назад. IPv6 - адреса многие камеры до сих пор не поддерживают. Но главная проблема использование внешнего IP адреса для IP камеры крайне небезопасно. IP камера - это простенький и малозащищенный микрокомпьютер, что приводит к большому количеству взломов и утечек информации.

Децентрализация без политики

В последнее время благодаря новым решениям и технологии P2P (peer to peer) можно установить и настроить удаленное видеонаблюдение самостоятельно и очень легко.

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

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

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

Простота настроек сетевого оборудования - основное преимущество Р2Р технологии перед другими способами передачи сигнала. Возможность работы с серыми и динамическим IP позволяет установить видеонаблюдения в местах, где нет доступа к проводному интернету. Достаточно будет приобрести 3G/4G модем с поддержкой Wi-Fi и настроить программное обеспечение.

Зачем платить облаку, если можно наблюдать бесплатно?

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

Подробнее можно посмотреть на видео.

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

Почему китайские производители камер создают программы с интерфейсом в стиле Чабудо?

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

Облачный сервис для камер HikivisionОблачный сервис для камер Hikivision

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

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

Мнимая свобода выбора

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

Куда мы идём? Что будет дальше?

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

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

Новая бесплатная программа

Web Camera Pro - бесплатная программа, которая написана на Qt, С++ как мультиплатформенное решение. Вы можете использовать любую ip или usb камеру для полноценной системы видеонаблюдения с удаленным доступом из любой точки мира и с минимальными затратами.

Интерфейс Web Camera Pro:

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

Видеоинструкция:

https://www.youtube.com/watch?v=OvSQ1C5Lsd8

https://www.youtube.com/watch?v=CreFNidJqZI

https://www.youtube.com/watch?v=fRJdZATpixg

Скачать бесплатную версию Web Camera Pro можно здесь:

http://free-video-surveillance.com/home-security-camera

Подробнее..

Как закон о предустановке российского софта изменит отечественный IT-рынок

24.03.2021 18:04:11 | Автор: admin

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

Равные возможности

С 1 апреля на всех продаваемых в России смартфонах, планшетах, ПК и умных телевизорах должны стоять отечественные приложения. Продажа цифровой техники без предустановленного российского ПО будет считаться нарушением федерального законодательства. Даже на торговые полки нельзя будет выставлять такие устройства. Если человек купил гаджет в упаковке без предустановленных отечественных приложений, он может пожаловаться в Роспотребнадзор. Наказывать за продажу электроники без предустановленных приложений начнут позже с 1 июля штраф для физлиц составит от 30 тыс. до 50 тыс., для компаний 50-200 тыс. рублей. Соответствующие поправки в Кодекс об административных правонарушениях РФ 16 марта приняла Госдума.

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

Нововведение обеспечит равные условия конкуренции для иностранных и отечественных разработчиков ПО, отмечают в Федеральной антимонопольной службе (ФАС). В конечном счете [от этого] выиграют все: разработчики, производители устройств, разработчики приложений и потребители, у которых появится дополнительная возможность для выбора, сказали RSpectr.com в ФАС.

Соавтор закона, председатель комитета по экономической политике, промышленности, инновационному развитию и предпринимательству Госдумы Сергей Жигарев объясняет требование по предустановке отечественного ПО заботой о российском потребителе. Чтобы человек сам выбирал, пользоваться ли ему зарубежными или российскими приложениями. Например, когда вы покупаете айфон, там уже стоят приложения Apple. Если же там будут установлены привычные Яндекс, Mail.Ru, Кинопоиск и прочее, у человека будет выбор, какими приложениями пользоваться, а какие удалить, пояснил он.

Не только в России

Идея о том, что пользователи могут сами выбирать приложения, а между глобальными цифровыми гигантами и местными IT-компаниями должны быть равные конкурентные условия, реализуется не только в России. В январе этого года в Германии вступил в силу закон об ограничении конкуренции (Gesetz gegen Wettbewerbsbeschrnkungen, GWB). С его помощью правительство ФРГ намерено ограничить влияние транснациональных корпораций и добиться более справедливой конкуренции в сфере цифровых услуг.

Инициатива Германии может вдохновить ЕС на создание закона, который предоставит Европейской комиссии широкие полномочия для регулирования цифрового рынка,пишетнемецкий журнал Business & Diplomacy.

Эксперты из ФРГ позитивно оценивают аналогичный процесс в нашей стране.

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

Депутат федерального парламента Германии от Свободной демократической партии Александр Кулитц (Alexander Kulitz) предлагает понаблюдать, сможет ли РФ с помощью нового закона изменить рыночную монополию иностранных цифровых транснациональных корпораций и продвинуть собственное ПО. Он подчеркивает, что Россия и Евросоюз одновременно занялись защитой своих цифровых рынков от монополии IT-гигантов.

Что станет обязательным

На какие типы устройств должно быть установлено российское ПО, говорится в постановлении правительства 1867от 18 ноября 2020 года. В канун нового года кабмин утвердил переченьиз 16 классов программ для предустановки. В список вошли наиболее популярные браузеры, поисковики, навигационная система Яндекса, электронная почта и новостной агрегатор Mail.ru, антивирус Kaspersky, а также Мой офис, Госуслуги и платежная система Мир. В аудиовизуальные сервисы для телевизоров включены Яндекс, ivi, More.tv, Okko, Premier, Start, Wink, Кинопоиск, НТВ Плюс, Первый канал, Смотрим. Предустановленные программы будут доступны на смартфонах, планшетах, умных телевизорах, ноутбуках и ПК, произведенных после 1 апреля 2021 года,разъяснилоМинцифры 15 марта.

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

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

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

Также появление предустановленных приложений соцсетей на смартфонах может негативно сказаться на рынке аудиовизуального контента, прогнозирует заместитель генерального директора по правовым вопросам Института развития интернета (АНО ИРИ) Борис Едидин. Пока там [в соцсетях] еще много нелицензионного контента, и таким образом он станет доступнее, отмечает он.

На этом фоне компании разработчики отобранных в перечень приложений расширят свою пользовательскую аудиторию, отмечает технический директор компании Техносерв Юрий Корчуков. Сначала [пользователям] будут предложены версии продуктов с базовым функционалом для дальнейшего стимулирования перехода на расширенные версии и другие продукты, рассказалRSpectr.com Корчуков. По его словам, рост клиентской базы будет способствовать улучшению программ за счет получения отзывов о качестве их работы и актуальности наполнения.

B Apple тоже

Продукция Samsung уже продается с пакетом приложений от Яндекса. Huawei и LG Electronics пообещалиМинцифре, что все их новые модели будут соответствовать требованиям российского законодательства. Компания Apple долго думала, но также согласилась с новыми правилами, сообщилиСМИ в середине марта. Корпорации пришлось подстроиться под законодательство РФ для обеспечения своей ценовой политики, считают в компании Информзащита. Продукция Apple успешно продается на отечественном рынке, выручка составляет в России почти 200 млрд рублей, прибыль растет, и вряд ли корпорация допустит ослабление своих позиций, говорит представитель Информзащиты.

Но согласие с требованием о предустановке приложений страны это прецедент для Apple, отмечают участники рынка. Он показывает всему миру, что это возможно, поэтому в ближайшие годы мы можем увидеть аналогичные требования к компании от правительств других государств, считает гендиректор IT-компании Omega Алексей Рыбаков. Впрочем, опыт локализации своих устройств для отдельных рынков у американской корпорации все же есть. Apple перенесла данные iCloud на территорию Китая, изменила набор программного обеспечения App Store и конструкцию телефона в стране продавался iPhone с двумя физическими SIM-картами, рассказывает директор по IT компании Oberon Дмитрий Пятунин.

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

Так считает гендиректор Доктор Веб Борис Шаров. Процесс предустановки требует полной технологической совместимости устанавливаемого софта и железа это становится заботой как для производителей устройств, так и для разработчиков. Нетрудно догадаться, что процесс довольно хлопотный, и каждый хотел бы получить за это какую-то компенсацию, прокомментировал он RSpectr.com. Эксперт отмечает, что для производителей такой компенсацией станет сохранение доли на российском рынке, для разработчиков увеличение аудитории.

За и против

Закон о предустановке отечественного ПО добавил юридических и технических проблем производителям электроники, говорит директор по связям с общественностью Ассоциации торговых компаний и товаропроизводителей электробытовой и компьютерной техники (РАТЭК) Антон Гуськов. Многие производители жалуются, что разработчики не хотят заключать никаких договоров: берите [наше ПО], мол, и все. Но без договора в этой ситуации невозможно, рассказывает он. При этом отношения между производителем устройств и разработчиком ПО должны быть безвозмездными, отмечается в регулирующем выполнение требования о предустановке постановлении. Но Налоговый кодекс РФ не предусматривает безвозмездных отношений между юридическими лицами, обращает внимание Гуськов.

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

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

Влияние нормы о предустановке российских мобильных приложений на российский IT-рынок не будет ощутимым, уверен директор Центра Solar appScreener компании Ростелеком-Солар Даниил Чернов. Последует незначительный прирост использования российского ПО на устройствах, предназначенных для нашего рынка. Просто большее количество пользователей узнает о существовании некоторых отечественных продуктов, сказал он RSpectr.com.

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

Выбор остается за пользователем

Для пользователей нововведение не повлечет каких-либо негативных последствий, считают участники рынка. Напротив, отечественные сервисы лучше ориентированы под запросы россиян, чем абстрактные услуги глобальных корпораций, отмечает гендиректор DZ Systems, создатель Яндекс.Маркета Дмитрий Завалишин. Те, кто ездит по России, предпочитают использовать Яндекс.Карты, они детальнее, быстрее обновляются, их создатели лучше понимают нашу страну и ее особенности, сказал он RSpectr.com. Но при установке предлагаемых приложений нужно быть готовыми, что они займут полтора гигабайта памяти в смартфоне или другом устройстве, предупреждает ведущий аналитик Mobile Research Group Эльдар Муртазин.

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

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

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

В целом, заключают эксперты, преимущества нового закона ощутят несколько категорий участников рынка:

  • компании разработчики ПО, чьи продукты попадут в списки Минцифры, расширят пользовательскую аудиторию;

  • пользователи по умолчанию получат доступ к локализованным базовым версиям привычных сервисов;

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

Подробнее..

Гибрид компьютера и IP-телефона. Анатомия аппаратной платформы GM-Box. Часть 2 разработка

16.10.2020 16:14:58 | Автор: admin

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

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

Запуск разработки серийного продукта

Наступил долгожданный момент, когда после множества презентаций мы получили инвестиции и начали подготовку к разработке серийной версии нашего продукта. GM-Box стал превращаться, конечно не из гадкого утенка в прекрасного лебедя, но из прототипа во вполне симпатичное и рабочее серийное изделие. Собранные на этапе прототипирования инсайты и знания о нашем продукте мы оформили в виде технического задания (ТЗ). Формат выбрали в международной нотации - Product Requirement Document (PRD), потому что готовились к общению с иностранными подрядчиками.

Без ТЗ получается ХЗБез ТЗ получается ХЗ

Перед нами стояли следующие задачи:

  • промышленный дизайн;

  • разработка конструкции корпуса и молдинга для литья пластика;

  • разработка схемотехники и трассировка печатных плат;

  • разработка Firmware, системного, прикладного и серверного программного обеспечения;

  • организация цепочки и снабжения компонентами, в том числе серийного литья пластика;

  • сборка и тестирование печатных плат;

  • узловая сборка, заливка софта, испытания (приемочные, приемо-сдаточные и т. д.);

  • организация ремонта, технического обслуживания и поддержки;

  • организация логистики (в т. ч. международной);

  • управление качеством;

И, конечно же, мы бились над извечной дилеммой делать всю разработку самим (In House Design - IHD) или заказать на стороне (Original Design and Manufacturing - ODM). Выполнение всех задач внутри требовало немаленькой команды профи разных направлений, а еще много специального оборудования и софта. Это недоступная роскошь для стартапа, и мы решили скомбинировать IHD и ODM. Вот какими были наши ключевые требования к потенциальным партнерам:

  • опыт разработки x86 платформ на современных SoC, включая BIOS и EC;

  • опыт разработки продуктов сегментов: планшеты, телефоны;

  • опыт разработки сложных пластиковых корпусов;

  • высокий уровень качества продукции, услуг;

  • опыт организации и сопровождения крупносерийного производства собственных продуктов.

Изучив рынки России и Беларуси, мы с удивлением осознали, что не можем найти компанию, соответствующую всем нашим ожиданиям. Тогда, хоть и с тревогой, но мы приняли решение ехать в более дальнее зарубежье в поисках партнера. Шел 2017 год Мы нашли азиатскую ODM компанию с нужным нам технологическим стеком, опытом и хорошим качеством. В итоге разделение между нами и ODM перечисленных выше задачах получилось такое: 60% (мы) на 40% (ODM). Работа закипела, и мы начали готовить требования к внешнему виду изделия.

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

Нам предстояло описать, как наше устройство будет выглядеть внешне, со стороны пользователя, взаимодействовать с ним и окружающим пространством, интерьером корпоративного офиса или его рабочего места дома в случае удаленки. Функциональные и нефункциональные, технические требования, определяющие форму и содержание, были собраны в ТЗ, их было достаточно много. Одним из ключевых требований было обеспечить удобную и стильную реализацию синергии в продукте смартфона и GM-Box.

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

Скетчи на бумагеСкетчи на бумагеСкетчи на доске для рисованияСкетчи на доске для рисования

Дальше перешли к 3D моделированию в Autodesk Inventor. Было безумно много вариантов дизайна на разный вкус и цвет.

Коллаж рендеров концепта GM-Box G1Коллаж рендеров концепта GM-Box G1

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

Презентация одной из последних версий дизайнаПрезентация одной из последних версий дизайна

В итоге родился промышленный дизайн будущего серийного продукта.

Рендер финального дизайна GM-Box G1Рендер финального дизайна GM-Box G1

Корпус, механика

Мы глубоко проработали дизайн и даже элементы внутренней механики, но все это нужно было связать с начинкой нашего изделия электроникой и обеспечить технологичность при серийном производстве. На базе 3D модели нашего дизайна и требований ТЗ наш ODM партнер начал проработку конструкции. Моделирование делали в Pro Engineer и присылали нам презентации с картинками и вопросами. В ответ мы моделировали в Autodesk Inventor и отправляли им свои идеи. Начитавшись про методологии разработки известных мировых брендов, мы погрузились в длительный итерационный процесс создания MDP (Minimum Desirable Product), сохраняя 3 его точки опоры:

  • гештальт продукта;

  • дизайн;

  • качество.

Инженерная работа над 3D моделью GM-Box G1Инженерная работа над 3D моделью GM-Box G1

Расскажу коротко о самых сложных узлах, попивших у нас крови.

Раскладная опора (нога)

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

Вентиляционная решетка

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

Интерфейс подключения смартфона

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

Конечно, были непростые задачи и с другими частями конструкции. Вот самые запомнившиеся элементы:

  • система охлаждения;

  • клавиатура;

  • трубка;

  • держатель кабелей;

  • внешние микрофоны;

  • слот батарейки часов реального времени;

  • собираемость изделия.

Финалом работы над корпусом стали:

  • подробная 3D модель GM-Box;

  • Mockup образец (неработающий опытный образец).

Целью изготовления Mockup образцов было подтвердить соответствие дизайна, 3D модели и материалов ожиданиям заказчика (нас) и пользователей. Технологически процесс их изготовления состоял из операций:

  • 3D печать;

  • фрезеровка напечатанной заготовки;

  • ручная доработка: снятие заусенцев, ошкуривание, шлифование;

  • покраска;

  • финальная сборка и "доработка напильником".

Mockup образец GM-Box G1Mockup образец GM-Box G1

Что-то пошло не так

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

Образец - Mockup2Образец - Mockup2

В поисках нашего гештальта для MDP (писал об этом выше) мы потратили 4 месяца на дизайн и дополнительное прототипирование:

  • искали альтернативные варианты дизайна клавиатуры и трубки;

  • прототипировали;

  • обсуждали;

  • вносили изменения в дизайн изделия и его 3D модель;

  • вносили изменения в 3D модель конструкции.

Варианты нового дизайна клавиатуры Варианты нового дизайна клавиатуры Прототипы клавиатурыПрототипы клавиатурыФинальная версия дизайнаФинальная версия дизайна

Электроника

Параллельно с созданием корпуса мы начали разработку электроники. Нам предстояло решить следующие задачи:

  • разработка архитектуры;

  • выбор элементной базы;

  • компоновка печатных плат и устройства;

  • расчет себестоимости, оптимизация;

  • Design For Manufacturing (DFM) анализ и доработка;

  • наладка (брингап) электроники.

Этапы разработки электронной части в связке с корпусом\механикой и софтом у нас получились такие:

  • Mockup прототип, пустышка, полноразмерный неработающий образец;

  • EVT инженерные образцы, частично работающие, позволяющие отлаживать софт;

  • DVT полнофункциональные опытные образцы с косяками;

  • DVT2 - полнофункциональные опытные образцы без косяков;

  • PVT образцы, собранные на конвейере по серийной технологии;

  • MP серийные изделия.

Очень похоже на наш отечественный процесс разработки по ГОСТ 15: ЭП, ТП, РКД, постановка на производство.

Отрисовку схемотехники и топологию печатных плат выполнял ODM партнер. Использовали Cadence ORCAD. Буквально через 3 недели после готовности топологии появились первые образцы системных плат, и мы поехали их брингапить в Азию.

Один из первых запусков электроникиОдин из первых запусков электроникиРабота программистов в командировке над bring up электроникиРабота программистов в командировке над bring up электроники

Сначала железо запускали и тестировали на Win10, т. к. много готовых утилит, примеров, референсов для наладки. После того как железо ожило на Win10 мы перешли к проверке и доработке на Linux Ubuntu. Это был итерационный процесс поузловой наладки и доработки BIOS и программы EC контроллера. Больше всего досталось нашим программистам, т. к. железо без софта не работает, а софт у нас на Linux Ubuntu и заточен под особенности продукта. Пришлось сильно попотеть в раскуривании работы чипов и общей логики работы устройства и отдельных узлов. Ну и конечно перед нами стояла задача финальной валидации работоспособности продукта на этом этапе разработки (EVT).

Снаружи GM-BOX все просто, а под капотом много интересных штук:

Это настоящий компьютер!Это настоящий компьютер!

Программное обеспечение

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

Архитектура нашего программного обеспечения GM SMART SYSTEMАрхитектура нашего программного обеспечения GM SMART SYSTEM

Если серьезно, то наш софт это достаточно сложный набор компонентов:

  • Firmware;

  • системное ПО;

  • серверное ПО;

  • мобильное ПО.

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

Вкратце расскажу сейчас только про устройство Firmware, как крайне важный компонент для оживления электроники. Это даст более цельное понимание устройства нашей аппаратной платформы.

Firmware GM-Box G1 состоит из:

  • BIOS (Basic Input Output System) обязательная часть х86 платформ;

  • EC (Embedded Controller) система управления аппаратной инфраструктурой (питание, сброс, периферия).

BIOS для x86 платформ на рынке предлагают несколько вендоров: AMI, Insyde и т.д. У каждого такого продукта есть свои преимущества и недостатки. Сделать оптимальный выбор и разработать BIOS под нашу аппаратную платформу нам помог наш ODM партнер с учетом: своего опыта, наличия лицензий, исходников и тулчейна для разработки. Итого, мы получили рабочий BIOS, исходники и тулчейн для возможности модификации.

EC контроллер аппаратно реализован на чипе IT8987. Это интегрированное решение для управления инфраструктурой простеньких ПК. Внутри ядро классического микроконтроллера х8051. Программа для EC тоже разрабатывалась ODM, но мы потом кое-что дописали сами. Итого, мы получили рабочую прошивку EC, исходники и тулчейн для возможности модификации.

Упаковка

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

Наша упаковка должна решать следующие задачи:

  • защита изделия от повреждения во время транспортировки и хранения;

  • удобное паллетирование и одиночное хранение;

  • удобное размещение компонентов изделия для легкого доступа к ним пользователя;

  • понятный процесс подготовки и включения изделия;

  • дополнение образа качественного, инновационного продукта.

Мы снова воодушевились, взяли для примера лучшие бренды электроники и получилось вот такое решение:

3D рендер пользовательской упаковки3D рендер пользовательской упаковки

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

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

Ожидание - реальностьОжидание - реальность

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

Ложемент кабеля телефонной трубкиЛожемент кабеля телефонной трубки

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

Заключение

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

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

Полезные ссылки

1. В чем разница MVP и MDP?

2. От дизайна до производства: Как обеспечивается качество продуктов Apple

Подробнее..

Перевод Быстрое развертывание любого приложения вместе с Waypoint

19.10.2020 18:20:51 | Автор: admin

К публикуемым в нашем блоге авторским статьям и переводным материалам про лайфхаки/интересные находки мы решили добавить разбор нового проекта. Waypoint опенсорсный проект, предоставляющий разработчикам последовательный рабочий процесс сборки, развертывания и релиза приложений на любой платформе. Waypoint позволяет разработчикам провести свои приложения от разработки до производственной среды в одном файле и развертывать приложения с помощью одной команды: waypoint up. Waypoint из коробки поддерживает Kubernetes, HashiCorp Nomad, Amazon ECS, Google Cloud Run, экземпляры контейнеров Azure, Docker, Buildpacks и не только. Читайте дальше, чтобы увидеть небольшой пример, узнать больше о функциях Waypoint и о проблемах, которые решает инструмент.



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

Упрощение развертывания


Waypoint был создан нами по одной простой причине: разработчики хотят просто развертывать приложения. У HashiCorp есть возможность работать со всеми типами организаций и отдельных лиц нашего сообщества, что ставит нас перед проблемами, с которыми сталкиваются разработчики при развертывании приложений и в разрезе доступности для пользователей. Мы общаемся с десятками отдельных пользователей каждый день через GitHub Issues, дискуссионные форумы, электронную почту и т.д. Каждую неделю мы встречаемся более чем с 500 компаниями, чтобы обсудить их текущие разработки и операционные проблемы.

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

Другая проблема, которую мы увидели, зависит от приложения, ведь инструменты часто самые разные: Docker и kubectl для Kubernetes, HashiCorp Packer и Terraform для виртуальных машин, свои инструменты у каждой бессерверной платформы и т.д. Эта фрагментация снова создает проблему обучения отдельного человека. Для команд это уже проблемы последовательности и сложности.

С помощью Waypoint мы стремимся решить эти две проблемы. Waypoint предоставляет одну простую команду для развертывания любого приложения: waypoint up. Рабочий процесс одинаков для любой платформы: Kubernetes, Nomad, EC2, Google Cloud Run и еще более десятка других будет поддерживаться к моменту запуска. Waypoint расширяется с помощью плагинов для любой логики сборки, развертывания и релиза. Разработчики просто хотят развертывать приложения. Waypoint просто делает это.

Функциональность


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

  • waypoint up: единственная команда для сборки, развертывания и релиза приложения. Waypoint использует файл конфигурации, хранящийся вместе с кодом приложения, для определения того, как будет работать. Подробнее о жизненном цикле приложения Waypoint рассказывается в документации Waypoint.
  • URL-адреса развертывания и приложения: Разворачиваемые с помощью Waypoint приложения получают общедоступный URL waypoint.run с действующим сертификатом TLS, который генерируется Let's Encrypt. Используйте этот адрес, чтобы быстро просмотреть развернутые приложения и поделиться ими с лругими людьми.
  • Выполнение команд: выполняйте команды в контексте развертывания через waypoint exec. Вы можете использовать exec для открытия оболочки в вашем приложении, а через нее выполнять отладку, миграцию и другие задачи. Здесь можно узнать больше о команде waypoint exec.
  • Логи: Waypoint предоставляет доступ к моментальному снимку журналов вашего приложения в режиме реального времени. Эти журналы полезны, когда вам нужно отладить поведение развивающегося приложения. Однако они не заменяют комплексные решения для логирования, такие как Datadog или Splunk. Логи агрегируются и доступны через CLI и веб-интерфейс. Здесь можно узнать больше о логах.
  • Веб-интерфейс: в дополнение к простому и мощному CLI, в Waypoint есть веб-интерфейс, позволяющий просматривать сборки, развертывания и релизы проектов и приложений. Сегодня веб-интерфейс можно только читать. Мы непрерывно разрабатываем его и расширим функциональность в будущем. Более того, в графическом интерфейсе будут подсказки о том, как использовать интерфейс командной строки
  • Плагины: логика сборки, развертывания и выпуска полностью расширяема с помощью плагинов. Waypoint поставляется с более чем десятком встроенных плагинов, и любой желающий может расширить функциональность Waypoint, написав свой собственный плагин.


Пример рабочего процесса


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

project = "HashiCorp Waypoint"app "waypoint-up" {    build {        use "docker" {}        registry {            use "docker" {                image = "hashicorp/wpmini"                tag = gitrefpretty()            }         }              }    deploy {        use "kubernetes" {            probe_path="/"            service_port=80        }     }    release {        use "kubernetes" {            load_balancer=true            port=80         }     }}

Сборка, развертывание, релиз


Файл конфигурации Waypoint описывает три основных этапа жизненного цикла приложения: сборку, развертывание и релиз.

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

  • Развертывание берет собранный на предыдущем этапе артефакт и помещает его на целевую платформу развертывания, делая развертывание доступным по URL или через другие внутренние методы

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

Поднимаем Waypoint


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



Можно выполнять этапы жизненного цикла отдельно друг от друга. Это полезно при взаимодействии с Github Actions и инструментами CI/CD, подобными CricleCI и Jenkins. Узнать больше об автоматизации рабочего процесса приложения с помощью Waypoint можно здесь.

Адреса приложения и развертывания


Развернутые с помощью Waypoint приложения получают общедоступный URL вида waypoint.run с действительным сертификатом TLS, автоматически сгенерированным Let's Encrypt. Используйте этот адрес, чтобы быстро посмотреть развернутые приложения и поделиться ими. Мы предоставляем этот URL через бесплатный общедоступный сервис компании HashiCorp. Функция необязательна и может быть отключена. В примере выше наш URL recently-pleasant-duck--v1.waypoint.run. Обратите внимание, что этот адрес уже не работает, приложение выполнялось только для этого поста в блоге. Вы можете посмотреть определенную версию развертывания по ссылке вида recently-pleasant-duck--vN.waypoint.run, где N номер версии развертывания. Эта функция очень полезна, чтобы поделиться предрелизной версией вашего приложения с вашей командой.



Логирование в Waypoint


Waypoint дает доступ к моментальному снимку логов приложения в режиме реального времени. Эти логи полезны, когда нужно отладить поведение развивающегося приложения. Однако они не заменяют комплексные решения для логирования. Логи агрегируются и доступны для просмотра через интерфейс командной строки и веб-интерфейс. Эта функция логов работает вне зависимости от платформы. Используете ли вы Kubernetes, EC2, Google Cloud Run или другую платформу, вы можете согласовано просматривать логи. С помощью пользовательского интерфейса можно просматривать логи нескольких развернутых на разных платформах приложений.



Waypoint exec


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



Другие возможности


Этот список только краткий обзор некоторых функций Waypoint. Waypoint может применяться для управления конфигурацией приложения через переменные окружения, интегрируется с вашей CI или Github. Рабочие пространства при меняются, чтобы создавать отдельные среды для отдельных веток. Кроме того, вы можете написать плагин и это еще не всё.Waypoint это бренд нового проекта. Мы рассчитываем, что продолжим добавлять новую функциональность в ближайшие месяцы.

Waypoint и существующие приложения


Если у вас уже есть приложение и рабочий процесс развертывания, вы можете почувствовать сомнение в том, сможете ли использовать. Мы не ждем, что команды разработки немедленно перестроят и с нуля перестроят свой рабочий процесс для Waypoint. Но у нас есть плагин docker pull и возможность локального выполнения, позволяющая адаптировать Waypoint для приложения с уже настроенным рабочим процессом. Кроме того, у нас есть документация, которая описывает интеграцию Waypoint в другие CI: CircleCI или Jenkins. Эта функция позволяет просмотреть историю развертывания в интерфейсе Waypoint, выполнять команду exec, логирование, конфигурацию приложения и не только это. Приложив немного усилий, вы получаете преимущества Waypoint, пока обдумываете, хотите ли перейти на более управляемый плагин. Когда у вас много приложений, этот подход позволяет сочетать рабочие процессы и сравнивать их.

Полная расширяемость плагинами


Логика жизненного цикла полностью расширяемая. Waypoint работает на той же системе плагинов, что и Terraform. мы полагаем, что написать плагин для Waypoint так же просто (если не проще), чем для Terraform. В Waypoint встроено более десятка плагинов с самого начала. Мы надеемся и ожидаем, что со временем, с помощью сообщества открытого ПО, это число резко возрастет. У Terraform при запуске было около 6 провайдеров. Сегодня у Terraform 300 провайдеров. Мы верим, что такое возможно и для развертывания приложений. Если вам интересно написать плагин, пожалуйста, прочитайте наше руководство для авторов плагинов и посмотрите исходный код встроенных плагинов Waypoint 0.1 на Github.

Ссылки проекта
  • Попробуйте Waypoint, посетив страницу начала работы, чтобы посмотреть демонстрацию быстрого старта или выполнить инструкции, которые ссылаются на примеры приложений NodeJS, Python, Ruby, Java и многих других языках, фреймворках и облачных платформах.
  • Дайте нам обратную связь. Waypoint как проект все еще находится на ранней стадии, и мы хотели бы обратиться к сообществу за обратной связью через дискуссионный форум HashiCorp. Вы также можете посетить страницу сообщества и узнать, как внести свой вклад в проект.
  • Напишите плагин. Мы будем рады вашей помощи в продолжении улучшения Waypoint. Если у вас есть идея плагина Waypoint, опубликуйте ее на GitHub или предложите ее на форуме Waypoint в HashiCorp.
  • Поделитесь своим приложением. Если вы развернули приложение с помощью Waypoint, сделайте снимок экрана, где оно работает, с URL-адресом Waypoint, и опубликуйте в Twitter с тегом #WaypointUp HashiCorp. Если вы хотите, чтобы другие люди увидели работу приложения, поделитесь URL Waypoint. Мы выделим приложения сообщества в ближайшие недели.


Специально для хабровчан мы сделали промокод HABR, дающий дополнительную скидку 10% к скидке указанной на баннере.

image




Рекомендуемые статьи


Подробнее..

Перевод Понятность ПО самый важный показатель, который вы не отслеживаете

24.11.2020 14:17:12 | Автор: admin

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


Основные идеи

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

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

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

  • Система является понятной, если она отвечает следующим критериям: завершенность, компактность, открытость и структурированность.

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

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

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

Пример

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

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

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

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

Что такое понятность?

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

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

  • Завершенность. Система должна поставляться с определенным набором исходной информации (исходный код, документация и т.д.). У инженера должна быть вся важная информация о системе.

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

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

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

Понятность среды выполнения

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

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

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

Наблюдаемость и понятность не одно и то же

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

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

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

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

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

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

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

Борьба со сложностями

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

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

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

Понятность нового ПО

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

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

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

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

Понятность существующего ПО

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

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

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

Заключение

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

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


Подробнее о курсе "Software Architect". Посмотреть открытый урок по теме "Мониторинг и Алертинг" можно здесь.


Читать ещё:

Подробнее..

Разработка инфраструктуры вождения автомобилей высокой автономности (HAD)

12.03.2021 10:04:49 | Автор: admin

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

1. ВВЕДЕНИЕ

Помимо преимуществ у автономных автомобилей есть и немало серьезнейших проблем.

  • Водить даже обычный автомобиль бывает очень непросто, но ситуация дополнительно осложняется, если нужна автоматическая отказоустойчивая система, способная работать в любых условиях вождения с крайне низкими показателями допустимых ошибок. Автономные автомобили образуют и потребляют огромные объемы данных. При этом в новом отчете прогнозируется рост глобального рынка автомобилей с сетевыми возможностями на 270% к 2022 году. Предполагается, что к 2022 году будет продано свыше 125 миллионов пассажирских автомобилей с возможностями сетевого подключения [1].

  • Суммарные расходы на разработку автономных систем вождения могут достигать миллиардов долларов, при этом стоимость оборудования одного автомобиля всем необходимым для полностью автономного вождения также будет весьма велика и может достигать 100 тысяч долларов [2].

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

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

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

Во все времена существования автомобилей именно технологии определяли самые современные возможности безопасности. С 70-х годов автопроизводители стали выпускать подушки безопасности, что позволило избежать множества человеческих жертв. Применение антиблокировочных тормозных систем, которыми автомобили оснащаются с 90-х годов, привело к снижению столкновений без человеческих жертв на 6-8% [3]. Тем не менее почти 1,3 миллиона человек ежегодно становятся жертвами дорожно-транспортных происшествий [4].

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

По мере роста экономики и урбанизации все более остро встает проблема перегруженности дорожных сетей. Средний городской житель проводит на дороге 40 минут в день. Таким образом, за год такой житель тратит 167 часов (свыше четырех полных рабочих недель) на сидение за рулем, и в течение этого времени он не может обращать внимание ни на что иное, кроме собственно вождения автомобиля.

Беспилотные автомобили будут играть важную роль в будущем умных городов и повлияют на построение и устройство городской инфраструктуры. В настоящее время только в США свыше 700 миллионов выделенных парковочных мест, занимаемая ими общая площадь сравнима с площадью всего штата Коннектикут. Автомобиль в среднем занимает парковочное место в течение всего 4% времени, тогда как при использовании беспилотных автомобилей коэффициент использования возрастает до 75% [5]. По этим причинам автономные автомобильные парки станут важным компонентом в умных городах будущего.

Распространение автономных автомобилей и транспортных решений совместного пользования может повлечь объединение бизнес-моделей агрегаторов такси и каршеринга.

Отчет, опубликованный компанией Allied Market Research, гласит, что объем глобального рынка автономных автомобилей составил 54,23 млрд долларов в 2019 году, а к 2026 году может вырасти до 556,67 млрд долларов, при этом совокупные темпы годового роста с 2019 по 2026 год составят 39,47% [6]. Для систем вождения высокой автономности (HAD) и полуавтономных функций в расширенных системах помощи водителям (ADAS) требуется платформа, способная получать и обрабатывать данные как в ядре, так и на границе сети. Высокопроизводительные решения HPE для хранения и архивации данных повышают надежность развертывания, обеспечивают защиту данных и их готовность к анализу. Множество решений HAD могут предоставляться по модели как услуга или по другим моделям потребления с оплатой по мере использования. Именно в этой области действуют решения пакета HPE GreenLake, упрощая обслуживание ИТ-инфраструктуры и сохраняя конфиденциальность и контроль над ней.

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

1.1. Общие характеристики задачи

Составные части процесса разработки автономного автомобиляСоставные части процесса разработки автономного автомобиля
  1. Обнаружение. Решения HAD опираются на технологии автомобильных встроенных датчиков. Основные датчики: спутниковая система геопозиционирования (GPS), блок инерциальных датчиков (IMU), камеры, лидары, радары, ультразвуковые источники, а также различные датчики, установленные внутри автомобиля и в его силовом агрегате. Некоторые технологии уже широко применяются (например, GPS и камеры), тогда как другие (например, лидары) в настоящий момент достаточно дороги, однако по мере развития автономных автомобилей такие системы будут становиться дешевле и компактнее. Таким образом, на первом этапе необходимо преобразовать объем данных, поступающих от всего комплекса датчиков автомобиля, в подробное представление окружающей обстановки.

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

  3. Распознавание объектов. На этапе обнаружения выделяются объекты вокруг автомобиля: другие автомобили, дорожная разметка, знаки дорожного движения, пешеходы, маршруты движения и т. п. Цель обнаруживать окружающие объекты и на основании этих данных строить картину окружающей обстановки, причем как при наличии карты высокого разрешения, так и на новой неизвестной местности. Разумеется, важно и обнаружение знаков дорожного движения, и обмен информацией между автомобилем и инфраструктурой, а также с другими автомобилями (V2X).

  4. Восприятие. Для восприятия требуется передать модели новые собранные данные для распознавания объектов и их взаимоотношения с более крупными областями вокруг автомобиля. Компоненты этого этапа: локализация (где автомобиль?), контекстуализация (какая вокруг обстановка, возможно с использованием карт высокого разрешения?), распознавание объектов (интеграция данных с лидаров и с других датчиков) и отслеживание объектов (с помощью интеллектуальных моделей).

  5. Принятие решения. Решение это подготовка к действию. Что автомобиль должен сделать? Повернуть? Затормозить? Продолжить ехать прямо? Бортовой компьютер автомобиля принимает решения на основе данных с датчиков, обработанных в контексте окружающей обстановки. Модели обучаются с помощью алгоритмов машинного обучения и огромного объема данных, полученных с комплексов автомобильных датчиков. это позволяет создать алгоритмы, способные предсказывать потенциальные события на основе поступающей в реальном времени ситуативной информации. После этого можно применять логические схемы для определения предпочитаемой последовательности действий. Основная цель состоит в составлении стратегии вождения: уклонении от препятствий, планировании поведения, управлении на основе данных GPS, планировании маршрутов, прогнозировании явно незафиксированных событий.

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

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

Высокоуровневый вид компонентов разработки полного цикла системы HADВысокоуровневый вид компонентов разработки полного цикла системы HAD

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

  • Модель в контуре управления (MIL). Тестирование модели системы и операционной среды без проведения тестов на оборудовании HAD (часто выполняется на обычных рабочих станциях). Проверка MIL обычно проводится на ранних этапах цикла разработки.

  • Программное обеспечение в контуре управления (SIL). Испытание и проверка автоматически созданного кода, используемого в контроллере системы. Тестирование SIL часто происходит в сэмулированной среде, также без проверки на системном оборудовании HAD.

  • Оборудование в контуре управления (HIL). Тестирование и проверка системного оборудования HAD для выявления всех ошибок в архитектуре оборудования или вызванных используемым компилятором.

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

2. УРОВНИ АВТОНОМНОСТИ

В соответствии с подходом SAE (Society of Automotive Engineers), который поддерживается Национальным управлением по безопасности движения автотранспорта США (NHTSA), автономность автомобилей определяется по шестиуровневой иерархии (с Уровня 0 по Уровень 5).

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

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

  • Уровень 2. Частичная автоматизация. Автомобиль может совершать маневры (перестраиваться из ряда в ряд), ускоряться и замедляться. При этом человек по-прежнему постоянно контролирует движение автомобиля и выполняет все остальные аспекты задачи динамического вождения.

  • Уровень 3. Условная автоматизация. Автомобиль выполняет все аспекты задачи динамического вождения, но человек должен быть способен вмешаться в управление при необходимости.

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

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

Классификация уровней автономности HAD, установленная Обществом автомобильных инженеров США (SAE) [7: https://www.sae.org/standards/content/j3016_201806/]Классификация уровней автономности HAD, установленная Обществом автомобильных инженеров США (SAE) [7: https://www.sae.org/standards/content/j3016_201806/]

Последние инвестиции и корпоративные приобретения свидетельствуют об интересе отрасли к разработке HAD и о стремлении как можно скорее добиться автономности Уровня 5. Корпорация Ford инвестировала 1 миллиард долларов в Argo AI [8]. Корпорация GM инвестировала средства в Lyft и приобрела Cruise Automation [9]. Корпорация Volvo создала совместное предприятие с Uber [10]. Корпорация Uber приобрела Otto [11]. Корпорация Intel инвестировала 15,3 миллиарда долларов для приобретения Mobileye [12]. Корпорации Hyundai и Toyota объявили о собственных инвестициях в исследования и разработку HAD. Это лишь небольшая, но достаточно репрезентативная выборка деятельности в этой весьма динамичной отрасли.

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

Инициатива достижения Уровня 5 набирает все большие обороты. Тем временем крупнейшие автопроизводители осваивают направление автономных автомобилей самостоятельно либо заключают партнерские соглашения с другими компаниями, разрабатывающими такие программы. Все производители по-разному подходят к решению проблемы. Компания Waymo (принадлежит корпорации Alphabet/Google) объявила, что интересуется только Уровнем 5. Другие компании, такие как Uber и Ford, готовятся к Уровню 4 [13]. Корпорации Daimler и Bosch объявили [14] о планах разработки автономных автомобилей Уровней 4 и 5 с возможным стартом производства к началу следующего десятилетия. Другие компании выбрали последовательное развитие: по мере совершенствования технологий HAD они проходят каждый из уровней.

3. СБОР, ПРЕОБРАЗОВАНИЕ И АНАЛИЗ ДАННХ

Чтобы объединить все составные части инфраструктуры HAD, требуется организовать передачу больших объемов данных из автомобиля в центр обработки данных и в обратном направлении. Установленные в автомобиле (на границе сети) камеры, лидары и другие датчики генерируют огромные объемы данных, а в центре обработки данных производится обучение моделей ИИ и их настройка для принятия решений в реальном времени во время езды.

Поток данных от набора датчиков одного автомобиля составляет в среднем 33 Гбит/с, это примерно 120 ТБ данных за 8-часовую поездку. Технологии еще находятся на этапе разработки, поэтому в силу действующих правовых норм потребуется хранить весь объем данных с автономных автомобилей. Однодневный тест-драйв парка из 80 автомобилей это около 10 ПБ исходных данных. Следовательно, небольшой парк автомобилей будет генерировать от 100 до 500 ПБ данных в день.

3.1. Основные принципы

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

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

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

4. ПОИСК КОМПЛЕКСНОГО РЕШЕНИЯ HAD

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

Конечная цель (уровень 5) в реализации автономных автомобилей повсеместно доступный каршеринг, причем все без исключения люди, находящиеся в автомобиле, являются его пассажирами (а не водителями), а часть пути автомобиль может проезжать вообще без людей в салоне. При этом автомобили будут обмениваться данными друг с другом, постоянно предупреждая о своих намерениях и ходе движения по маршруту. Для этого будут использоваться технологии беспроводной связи, такие как Wi-Fi и 5G.

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

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

Потоки данных в системе HADПотоки данных в системе HADВысокоуровневый вид компонентов разработки системы HADВысокоуровневый вид компонентов разработки системы HAD

4.1. Регистрация данных

Бортовое оборудование тестовых автомобилей собирает данные, поступающие от датчиков, и сохраняет их, при этом скорость потока данных может превышать 30 Гбит/с. Например, если эксплуатационный парк из 80 автомобилей собирает 18 ТБ данных за 8-часовую смену при скорости 5 Гбит/с в каждом автомобиле, за всю смену будет сгенерировано 1,44 ПБ сырых данных. сли же такой же автомобильный парк генерирует данные на скорости 30 Гбит/с в каждом автомобиле, за смену будет создано 8,64 ПБ данных.

Для таких высоких скоростей данных рекомендуется конвергентная система для границы сети HPE Edgeline EL8000. Это универсальная модульная конвергентная платформа, объединяющей вычислительные ресурсы и ресурсы хранения данных, и допускающая подключение датчиков. Системы HPE EL8000 могут работать в более жестких условиях окружающей среды, чем стандартное ИТ оборудование, и поддерживают удаленное управление. HPE EL8000 это идеальный регистратор данных, представляющий собой интегрированное расширение центра обработки данных.

Система HPE EL8000 может принимать десятки гигабит данных в секунду от лидаров, радаров и видеопотоков, это практичная конвергентная автомобильная вычислительная платформа для тестирования и разработки. Каналы ввода-вывода шины PCIe в системах HPE EL8000 связаны напрямую с ЦП, обеспечивается непосредственный доступ к внутренней шине ЦП. Таким образом, данные напрямую движутся в память и из памяти, а также в кэш процессора и в другие устройства PCIe.

HPE EL8000 это не просто модуль хранения данных. Эта система поддерживает 64-разрядные ЦП x86 и специализированные ускорители вычислений, в том числе видеоускорители (GPU) и П ИС. В этом отношении HPE EL8000 представляет первый шаг конвейера преобразования данных. HPE EL8000 может устранить одно из узких мест потока данных за счет автоматической разметки содержимого тегами на лету. При этом снижается объем необходимых операций предварительной обработки.

4.2. Получение данных

Существует два способа выгрузки данных.

  • Замена физических носителей. Система HPE EL8000 оборудована накопителями с поддержкой горячей замены; можно вставлять накопители в автомобильную систему и извлекать их. При этом в качестве носителей данных используются твердотельные накопители, чтобы свести к минимуму риск потери данных при манипуляциях и транспортировке. Носители информации передаются в местный центр сбора информации, информация с них считывается и по высокоскоростным каналам передачи данных передается в ЦОД.

  • Выгрузка данных по высокоскоростным локальным сетям в станции сбора данных или центры обработки данных. В этом случае для выгрузки данных с автомобилей в станции сбора данных используется локальная сеть. Станции сбора данных расположены в центрах обработки данных, где автомобили подключают непосредственно к сети ЦОД. После подключения автомобили выгружают данные в указанные целевые системы по каналам с пропускной способностью 100 Гбит/с.

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

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

Различные файловые системы. Производительность и масштабируемостьРазличные файловые системы. Производительность и масштабируемость

4.3. Озеро данных

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

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

Для параллельных файловых систем также доступны программные интерфейсы доступа по традиционным файловым протоколам систем POSIX, а также интерфейсы Hadoop, традиционные для Больших данных.

Некоторые клиенты пользуются другими распределенными крупномасштабными средами, включая Hadoop Distributed File System (HDFS), Ceph и даже решения, совместимые с S3. Например, HDFS работает на стандартном оборудовании и легко масштабируется. HDFS также назначить разные уровни хранения данных в зависимости от их температуры. Самые горячие данные, к которым требуется быстрый доступ, размещаются на самых быстрых накопителях, а холодные данные на менее скоростных дисках. Такой подход дает возможность создать озеро данных с невысокими затратами и оптимизировать систему с точки зрения важности данных и потребности в них.

4.4. Методики Программное обеспечение в контуре управления (SIL) и Оборудование в контуре управления (HIL)

В отчете, опубликованном в 2016 году [15], корпорация RAND подсчитала, что для снижения количества ДТП со смертельным исходом на 20 % автономные автомобили должны проехать около 11 миллиардов миль. сли использовать парк из 100 автомобилей, которые ездят круглосуточно 365 дней в году со средней скоростью 25 миль в час, для выполнения этой задачи потребуется 518 лет. Очевидно, требуется другое решение.

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

Корпорация HPE располагает опытом создания и поставки систем моделирования для автомобильных компаний во всем мире. В этих решениях HPE обычно использует шасси HPE Apollo 2000 Gen10 с серверами HPE XL170r для вычислений с использованием центрального процессора и с серверами HPE XL190r для вычислений с использованием видеокарт (GPU).

Индивидуальные рабочие процессы SIL создаются на основе системы контроля и управления (CMS). Система CMS поддерживает планирование событий по времени и обработку очередей действий, которые будут выполняться параллельно в зависимости от наличия свободных ресурсов.

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

Модель Оборудование в контуре управления (HIL) также можно интегрировать в основную сеть ЦОДа для организации высокоскоростного доступа к озеру данных. Поскольку требуется очень высокий уровень производительности, для конфигурации HAD предпочтительно использовать высокоскоростные среды передачи данных, такие как InfiniBand и Intel Omni-Path. Также стоит предусмотреть дополнительные каналы Ethernet 10 Гбит/с для реализации глобальной связности и индивидуальных проектов HIL.

4.5. Архивация и резервное копирование

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

Кроме того, в силу действующего законодательства и собственных политик, компании может также потребоваться архивация и резервное копирование данных. Для длительного хранения данных корпорация HPE предлагает решение Data Management Framework (DMF). Это иерархический диспетчер хранения данных с более чем 20-летней историей успешной эксплуатации. HPE DMF автоматически отслеживает свободное пространство в управляемой файловой системе. За счет этого гарантируется наличие необходимого свободного места, а системные администраторы избавляются от рутинной необходимости постоянно отслеживать загрузку ресурсов хранения данных и добавлять новые.

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

Ленточное решение HPE DMF построено на основе ленточной библиотеки HPE TFinity ExaScale на базе технологии Spectra. TFinity ExaScale это самая вместительная в мире отдельно стоящая система хранения данных [16]. Одна библиотека TFinity EE способна хранить до 53 450 ленточных картриджей на 44 шкафах.

При использовании технологии сжатия TS1150 емкость системы превышает 1 эксабайт. Благодаря решению Dual Robotics и 72 накопителям LTO-8 скорость записи достигает примерно 21 ГБ/с, а емкость 100,2 ПБ при использовании картриджей 8350 LTO-8 (четыре дорожки).

5. УСЛУГИ И РЕШЕНИЯ ПАРТНЕРОВ

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

5.1. Создание

Организация HPE Pointnext Services создает полнофункциональную платформу для клиентов от центра обработки данных до конечных устройств (в данном случае это станции сбора данных и автомобильные регистраторы данных) и вплоть до готовых приложений для разработчиков. В зависимости от потребностей и целей клиента специалисты HPE Pointnext Services в области ИИ и обработки данных помогут:

  • исследовать цели и приоритеты сценариев использования для бизнеса, данных и участников ИТ-экосистемы;

  • определить функциональность ИИ и аналитики, необходимую для достижения поставленных целей;

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

5.2. Выполнение

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

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

5.3. Потребление

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

5.4. Партнеры

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

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

6. ЗАКЛЮЧЕНИЕ

В дорожно-транспортных происшествиях во всем мире ежегодно гибнет около 1,35 миллиона человек. Аварии на дорогах обходятся большинству стран в 3% их внутреннего валового продукта. От 20 до 50 миллионов человек получают несмертельные травмы, часто приводящие к нетрудоспособности [18].

Автомобили высокой автономности стремительно растущий рынок, цель повышение безопасности и здоровья общества. По оценкам специалистов, если распространение автономных автомобилей достигнет 10, 50 и 90%, это может привести к снижению числа человеческих жертв соответственно на 1100, 9600 и 21 700 человек в США за год [19].

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

Предложения HPE позволяют удовлетворить потребности автомобильной промышленности в современных решениях ИИ и высокопроизводительных вычислений для облачных развертываний HAD. При этом клиенты могут приобрести и эксплуатировать решения самостоятельно, а также заключить договор с HPE (используя HPE Pointnext Services, HPE GreenLake и другие предложения услуг) и поручить нашей корпорации обработку некоторых или всех вычислительных задач для HAD. Корпорация HPE предлагает полный ассортимент вычислительных систем, сетевых решений, систем хранения данных и технической поддержки и услуг по всему миру, гарантируя, что разработчики уже сегодня могут приступить к созданию оптимальных решений HAD для надежных и безопасных транспортных сетей будущего.

Подробнее..

Software Freedom Conservancy мы подаем иск против нарушителей лицензии GPL

04.10.2020 14:17:49 | Автор: admin

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

Какими бы мягкими ни были условия лицензии, если ее условия нарушены, за это можно привлечь к юридической ответственности. Именно этим и собирается заняться правозащитная организация Software Freedom Conservancy (SFC) из США, которая оказывает помощь проектам ПО с открытым кодом. SFC заявила о том, что больше не потерпит нарушений со стороны производителей IoT-гаджетов и других устройств.

В чем проблема


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

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

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

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

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

Что изменилось?


Некоммерческая правозащитная организация Software Freedom Conservancy (SFC) решила поступить именно так обратиться в суд с требованием наказать нарушителей законодательства. Например, планируется организовать показательный процесс на территории США против одного из крупных производителей электроники, компании, не соблюдающей условия GPL-лицензии.

Многие годы организация SFC пыталась доносить мысль о пользе открытого ПО и недопустимости воровства идей, кода и продуктов. Но, как говорилось выше, производители продолжают выпускать устройства с закрытыми прошивками на основе Linux, нарушая условия лицензии. Проблемное ПО поставляется с холодильниками, электронными нянями, виртуальными помощниками, звуковыми панелями, дверными звонками, камерами безопасности, автомобильными системами, AV-ресиверами и телевизорами.

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

А что такое GPL?



Вспомнить суть лицензии и ее особенности. GNU General Public License (GPL) свободная лицензия для ПО. GPL дает возможность пользователям использовать, распространять, изучать и модифицировать программы.

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

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

Простой пример ПО под GPL ядро Linux и ряд утилит GNU, которые входят в состав большинства дистрибутивов GNU/Linux.

Что еще предпримет SFC


Организация планирует работать сразу в трех направлениях:

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

Что касается последнего пункта, то SFC собирается выбрать определенный класс продуктов из категории встраиваемых решений на базе Linux и разработать для них альтернативные, полностью свободные прошивки. Они будут базироваться на коде, открытом производителем в результате устранения нарушений GPL. Примерно такую схему использовал проект OpenWrt, воспользовавшись кодом прошивки для WRT54G.


Брэдли Кун, исполнительный директор SFC, утверждает, что сейчас настало время применить самые жесткие юридические меры, которые помогут привлечь нарушителей к ответственности. Опыт у организации есть. Например, в 2010 году SFC добилась компенсации в размере $138 тыс. от компании Westinghouse Digital Electronics, нарушившей условия лицензии GPL. Компания использовала прошивку с открытым кодом, но исходники прошивки не публиковались. Кроме штрафа, компании запретили продавать устройства с проблемным ПО.

Инициатива организации поддержали другие представители отрасли. В частности, Фонд ARDC (Amateur Radio Digital Communications) уже выделил организации SFC грант, размером 150 тысяч долларов.

SFC защищает 44 проекта с открытым исходным кодом, включая эмулятор QEMU, свободная реализация Win32 API WINE, свободная реализация протокола SMB/CIFS Samba, встраиваемая ОС для домашних маршрутизаторов OpenWrt, а также пакет консольных утилит Busybox.

Подробнее..

Готов релиз Fedora Linux для смартфонов

04.10.2020 16:16:23 | Автор: admin

Скриншот десктопной версии Fedora Linux
Linux и вся open source отрасль продолжают активно развиваться. Только недавно евангелист открытого ПО Эрик Реймонд рассказывал о том, что в недалеком будущем, по его мнению, Windows перейдет на ядро Linux. Ну а сейчас появился релиз Fedora Linux для смартфонов.

Над этим проектом работает группа Fedora Mobility. Интересно, что она не проявляла особой активности в течение 10 лет, а теперь вышла из спячки и начала активно работать. Что касается браузера, то он рассчитан пока только для установки на PinePhone, смартфон, созданный стараниями сообщества Pine64. Вскоре группа обещает представить версию браузера и для других смартфонов, включая Librem 5 и OnePlus 5/5T.

Сейчас в репозитории Fedora 33 (rawhide) появился набор пакетов для мобильных устройств с пользовательской оболочкой Phosh, которая управляется с сенсорного экрана. Развивается она компанией Purism для телефона Librem 5. В ее состав входит композитный сервер Phoc, который работает поверх Wayland. Он базируется на технологиях GNOME (GTK, Gsettings, Dbus).

Разработчики открыли возможность применить окружение KDE Plasma Wayland. Правда, в репозитории пока нет соответствующих пакетов. Что касается уже доступных приложений и компонентов, то вот список:

  • oFono стек для доступа к телефонии.
  • chatty мессенджер на базе libpurple.
  • carbons XMPP-плагин для libpurple.
  • pidgin доработанная версия программы для мгновенного обмена сообщениями pidgin, из которой используется библиотека libpurple для chatty.
  • purple-mm-sms плагин к libpurple для работы с SMS, интегрируемый с ModemManager.
  • purple-matrix плагин к сети Matrix для libpurple.
  • purple-telegram плагин к Telegram для libpurple.
  • calls интерфейс для набора номера и приёма звонков.
  • feedbackd интегрируемый с Phosh фоновый процесс для физической обратной связи (вибросигнал, светодиодные индикаторы, звуковые сигналы).
  • rtl8723cs-firmware прошивка для Bluetooth-чипа, применяемого в PinePhone.
  • squeekboard экранная клавиатура с поддержкой Wayland.
  • pinephone-helpers скрипты для инициализации модема и переключения звуковых потоков при выполнении телефонного звонка.
  • gnome-terminal эмулятор терминала.
  • gnome-contacts адресная книга.

Немного о смартфоне PinePhone


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


Характеристики PinePhone:

  • Четырехъядерный SoC ARM Allwinner A64.
  • GPU Mali 400 MP2.
  • 2 или 3 ГБ ОЗУ.
  • 5.95-дюймовый экран (1440720 IPS).
  • Micro SD (с поддержкой загрузки с SD-карты).
  • 16 или 32 ГБ eMMC.
  • Порт USB-C с USB Host и совмещенным видеовыходом для подключения монитора.
  • 3.5 мм mini-jack.
  • Wi-Fi 802.11 b/g/n, Bluetooth 4.0 (A2DP), GPS, GPS-A, GLONASS.
  • Две камеры (2 и 5Mpx).
  • Съемный аккумулятор 3000mAh.
  • Аппаратно-отключаемые модули LTE/GNSS, WiFi, микрофоном и динамиками.

Развернуть полноценное рабочее место можно в любом месте и в любое время. Стоимость девайса вполне доступная всего $200.

ОС postmarketOS, основа которой Alpine Linux, это дистрибутив Linux для мобильных устройств.

Подробнее..

Из песочницы Только неБитрикс!. Почему не стоит игнорировать изучение этого фреймворка

30.08.2020 16:23:02 | Автор: admin
image

Часто отпрограммистов PHP можно услышать: Онет! Только неБитрикс!. Многие специалисты нехотят связываться фреймворком, считают его некрасивым инеудобным. Однако вакансий битрикс-разработчиков скаждым годом становится все больше. Уже сейчас программисты, которые работают сБитриксом, одни изсамых востребованных среди специалистов PHP.

Когда-то ябыл разработчиком1С, аувлечение PHP помогло мне вырасти доруководителя подразделения веб-разработки вNeti. Я постараюсь объяснить, почему программистам полезно изучить фреймворк Bitrix.

Как япознакомился сБитриксом


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

Первомуже клиенту, который кнам обратился, требовался битрикс-разработчик. Заказчику нужно было собрать государственный сервис для поддержки малого бизнеса. Клиент искал профессионала, который разрабатывает для Битрикса, знает объектно-ориентированное программирование иумеет писать сложные запросы.

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

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

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

image
Востребованность программистов PHP. Данные на 26 августа 2020 года. Источник: hh.ru.

Но, несмотря напотребности рынка, программисты PHP нехотят связываться сБитриксом. Одни работали сним поверхностно инеразобрались вего возможностях, другие несталкивались ссистемой вообще, ноотносятся кней плохо из-за негативных статей или отрицательных отзывов. Около30% кандидатов, скоторыми связывается наш HR-менеджер, отказываются отсобеседования, когда узнают, что нужно писать для Битрикса. Гораздо больше потенциальных сотрудников отсеиваются еще раньше, когда указывают врезюме, что неготовы работать сфреймворком.

Яхочу объяснить программистам PHP, почему стоит обратить внимание наБитрикс. Но, чтобы небыть голословным, сначала расскажу, почему клиенты выбирают эту систему ичем продукты фирмы 1С-Битрикс привлекают бизнес основного потребителя услуг программирования.

Почему клиенты выбирают Битрикс


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

Интернет-магазины


Клиент, который купит иустановит 1СБитрикс: Управление сайтом влицензии Малый бизнес или выше, сразу получит:

  • Встроенную интеграцию почти совсеми российскими службами доставки, будьто Boxberry или Деловые линии. Чтобы выбрать службу доставки, ненадо ничего дополнительно подключать. Достаточно поставить галочку напротив нужного оператора.
  • Работающие понашему законодательству системы онлайн-оплаты (Яндекс-касса, Сбербанк-онлайн).
  • Встроенную синхронизацию с1С: Управление торговлей, 1С: Бухгалтерия, 1С: Зарплата иуправление персоналом.

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

image
В рейтинге CRM по реальным установкам на сайтах за сентябрь 2019 года, составленном компанией iTrack, 1С-Битрикс занимает первое место среди коммерческих CRM

Корпоративные сайты


Большинство решений нарынке узкоспециализированные: только CRM или только инструмент для управления проектами. Битрикс24, корпоративный сайт, объединяет всебе большое количество функционала. Это онлайн-офис ссистемой управления продажами, настроенными бизнес-процессами, чатом, лентой новостей. ВБитрикс24 можно вести учет рабочего времени, управлять проектами, ставить задачи сотрудникам.

Чтобы собрать нечто похожее самостоятельно, клиенту придется купить много отдельных сервисов иобъединитьих. Это затратно повремени иденьгам быстрее идешевле поставить коробку Битрикс24. Обилие функций водном месте подкупает: компании смотрят напродукт синтересом имногие нанего переходят.

Потребители видят, что запустить интернет-магазин или корпоративный портал, интегрированный синформационной системой предприятия, наБитриксе легко инедорого. Сделать тоже самое наOpenCart или WordPress дольше идороже. Разрабатывать подобное решение нафреймворках Laravel, Symfony или Yii2 более трудозатратно.

Решения для государственных организаций


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

Зачем нужны битрикс-разработчики


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

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

Какие доработки чаще всего требуются заказчикам:

  • Добавить функционал. Например, насайты для медицинских центров добавляют функционал онлайн-записи наприем, историю обращений икарточку пациента. Этих возможностей нет вкоробке.
  • Настроить интеграцию. Часто клиентам нужна интеграция Битрикса сдругими системами. Например, заказчики хотят, чтобы сотрудник вличном кабинете видел зарплату, остатки отпусков идругую информацию, которую дает отдел кадров. Изначально этих возможностей нет вБитриксе и, чтобы все работало, требуется программист.
  • Исправить серверную часть. Некоторым клиентам ненравится серверная часть коробки: имкажется, что внутренние механизмы системы работают медленно. Таким заказчикам нужны оптимизация ирефакторинг кода.

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

За что программисты не любят Битрикс


Программисты PHP нехотят связываться сБитриксом считают его неинтересным, слишком сложным, тяжелым, неизящным ипереоцененным. Гораздо проще найти разработчика Laravel, Symfony или Yii2.

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

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

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

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

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

Битрикс восновном известен как CMS. Большинство разработчиков знают Битрикс как CMS для создания сайтов-визиток.80% программистов использовали только базовые функции иникогда непогружались внутрь, непытались изучать систему иядро фреймворка: ORM, Highload-блоки, мастера, визарды. Пощупали Битрикс снаружи непонравилось, аразвернуть непопытались. Это как попробовать съесть мандарин вкожуре.

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

Становление Битрикса похоже настановление 1С


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

Ноэтого непроизошло. Укомпании настолько сильный маркетинговый штат, что 1С завоевала рынок. Сначала она заинтересовала предприятия малого исреднего бизнеса, апрограммные продукты набазе восьмого ядра привели фирме 1С крупных клиентов. Сейчас 1С: Предприятие используют 1500000организаций.

Разработчики, которые стояли натом, что программировать на1Снизко инеинтересно, оказались неправы. Нельзя сказать, что они остались неудел. Они все равно востребованы, нонамного меньше. Большинство специалистов все-таки пришло ктому, что надо перепрофилироваться на1С.

Тоже самое происходит сБитриксом. Скаждым годом Битрикс все популярнее уклиентов, нобольшинство программистов PHP нехочет сним работать, хотя это перспективное ивысокооплачиваемое направление.

Перспективы Битрикса


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

Специалисты, которые работают с Laravel, Symfony или любым другим MVC фреймворком PHP, останутся востребованными. У этих решений большая доля рынка, но достаточно специфические задачи.

Я считаю, через несколько лет Битрикс заберет 8090% рынка, потому что он в первую очередь ориентирован на бизнес. Если посмотреть красочные фото или видео конференций, посвященных Битриксу, становится ясно, как на них реагируют владельцы предприятий.

image
Конференция BitrixPower, прошедшая 4 октября 2019 года в Москве. Источник: группа 1С-Битрикс во ВКонтакте

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

История о том, как мы на 1С запилили продукт для интеграции с goods и не смогли остановиться

28.01.2021 18:09:16 | Автор: admin

Разработка и запуск нового продукта - это всегда риск. Зайдет, не зайдет. Все зависит от возможностей (люди, деньги), компетенций, опыта, да и в целом понимания, зачем все это делать. Даже самая детально проработанная стратегия может в итоге провалиться. Главное понимать, в чем реальная польза продукт, тогда и процесс разработки пойдет увереннее.

С таким подходом мы пришли в 2019 к разработке готового решения для автоматизации торговли на маркетплейсах - RDV Маркет. Сделали его на бессмертной системе 1С. Ее мы знаем от и до, и убеждены, что для запуска нового проекта с точки зрения бизнеса - это наиболее подходящий вариант. Но об этом позже. Пока расскажем, как все начиналось, и к чему в итоге привело. Погнали.

Что было в самом начале

Начали работу в 2018 году. Нас пригласили для интеграции goods с магазином М. Видео. Работу над процессом начали с построения архитектуры OMS (система управления заказами) вместе сразработчиками и аналитиками goods.

Наша команда выступала в качестве бизнес-консультантов. Мы прописывали ТЗ для проектной команды заказчика, строили алгоритм действий, что и как должно работать. На стороне M.Видео специалисты занимались подготовкой и выгрузкой товарных предложений (фидов), а сами заказы поступали через API goods.

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

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

Почему 1С?

Итак, М. Видео продавал через goods, а мы вплотную занимались вопросом упаковки интеграции в отдельную автоматизированную систему. Долго не раздумывали, на чем будем делать - мы знали 1С, какие у нее есть возможности, поэтому решение запилили именно на ней. Плюсы у нее весьма ощутимые.

Во-первых, с типовыми конфигурациями работает большинство компаний. Таким образом, им будет проще начать работу с нашим решением, так как все будет происходить в их привычной "среде обитания". Все операции в общем окне 1С!

Во-вторых, система надежна. Ее уровня нагрузки достаточно для работы крупных компаний с количеством пользователей > 1000. В 1С можно спокойно систематизировать и масштабировать процессы под потребности компании.

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

Да, сам интерфейс привлекательным не назовешь. Не ждите от нас крутых скринов :) Тут 1С себе не изменяет. Но для нас в данном случае важнее всего все-таки возможности системы, ее адаптивность и гибкость.

Начали работу над RDV Маркет

У нас была четкая цель - получить решение, которое встраивается в 1С и автоматизирует процессы торговли на маркетплейсе. Все просто.

Что делали.

Шаг 1. Собрали обратную связь от продавцов goods, кто на какой учетной системе работает. Для этого сделали рассылку по базе и узнали, что у большинства установлены:

  • 1С:ERP;

  • 1С:Комплексная автоматизация;

  • 1С:Управление торговлей.

Была еще 1С УНФ (управление небольшой фирмой), но так как у нее мало функций под расширенную автоматизацию складских процессов, решили пока что ее не рассматривать. Но, возможно, придумаем что-то и с этой конфигурацией.

Шаг 2. Начали прорабатывать функционал и roadmap первой версии продукта. За основу взяли спринтовый вариант управления разработкой, с которым экспериментировали на goods. И где-то в течение первого полугодия выпустили первый релиз системы.

В функционал первой версии заложили автоматическую выгрузку товарного ассортимента в каталог (YML). Так как на примере goods поняли, что при увеличении количества товаров ручная работа с выгрузкой - это неэффективно, трата времени.

В планах было запустить 2 версии продукта. Взяли идею 1С про ПРОФ И КОРП. Собственно, отличия были соответствующие - в КОРП был шире функционал.

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

Также в первой версии мы вплотную подошли к реализации функционала по автоматизации процесса комплектации заказов и учета отгрузки товаров.

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

Над чем работали дальше, попутно закрывая баги

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

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

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

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

Вопрос по работе с остатками стоял довольно остро. Разберем на простом примере. Магазин отправил на витрину 5 позиций, которые заказали покупатели. Но в это время в оффлайн уже было продано 2 товара из отправленных. Из-за того что на витрине маркетплейса никто не обновил остатки (в системе отображались только примерные данные), с маркетплейса было продано 5 товаров, но по факту в оформление ушло 3. То есть остальные заказы пришлось отменить. А с этим частить нельзя.

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

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

Не goods единым: с кем работаем сейчас

Goods развивался, привлекая все больше продавцов. А мы двигались дальше - хотели запартнериться с другими популярными маркетплейсами. На рынке уже активно вели свою деятельность Wildberries, Ozon и Беру (сейчас это Яндекс.Маркет). Мы начали с последнего. Причем начали довольно дерзко уверенно, сразу разместив информацию об интеграции с Беру у себя на сайте. Хотя на тот момент формального партнерства еще не было. Но так как их API была в открытом доступе, то мы успели все протестировать и настроить полноценную интеграцию с маркетплейсом.

Далее нас заметил Wildberries, который пришел к нам, когда продавал только по модели FBO (продажа со склада маркетплейса). Не так давно на WB случился прорыв - он заработал по схеме FBS (продажа со склада продавца). Здесь можно посмотреть, как мы настроили работу по новой схеме в 1С.

Чуть позже к нам присоединился Ozon - маркетплейс с непростой системой резервов. Площадка работает таким образом, что товар резервируется сразу, как только покупатель оформил заказ. Допустим, клиент неверно ввел данные карты, чтобы все исправить и оплатить покупку, ему дается 30 минут.

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

Работаем с Wildberries, Ozon, Я.Маркет, goods, а недавно подключили AliExpressРаботаем с Wildberries, Ozon, Я.Маркет, goods, а недавно подключили AliExpress

Кликайте сюда, чтобы разобраться подробнее, что и как работает в RDV Маркет.


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

В общем, работаем.

Готовы ответить на вопросы, подробнее рассказать про функционал - welcome в RDV Маркет!

Подробнее..

Перевод Перерасти ПО код это современное электричество

21.06.2021 12:17:59 | Автор: admin
image

Десять лет назад Марк Андриссен написал для Wall Street Journal статью под названием "Софт пожирает мир", в которой говорит о фундаментальном сдвиге роли, которую ПО играет в экономике. В прошлом IBM, Oracle или Microsoft продавали технологии другим компаниям как инструмент. Они продавали компьютеры и ПО GE, P&G и Citibank. Теперь есть поколение компаний, которые и создают ПО, и самостоятельно используют его, чтобы войти на рынок другой отрасли, а часто и изменить его. Uber и Airbnb не продают ПО компаниям, владеющим такси или отелями, Instacart не продаёт ПО компаниям, занимающимся продуктами питания, а Transferwise не продаёт ПО банкам.

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

Но также любопытно будет взглянуть на отдельные отрасли, которые уже были подорваны программным обеспечением, и подумать над тем, что случилось дальше. Первой, очевидно, стала отрасль звукозаписей. Технологии значительно повлияли на музыкальный бизнес, но сегодня никто в сфере технологий об этом особо не задумывается. 15 или 20 лет назад музыка была способом продажи устройств и удержания людей в экосистеме, но возникновение сервисов стриминга по подписке означало, что музыка больше не является сильным стратегическим оружием ты не потеряешь свою библиотеку музыки, если перейдёшь с iPhone на Android, или даже со Spotify на Apple Music. В то же время, абсолютный размер рынка стал очень мал по сравнению с тем, чем стала сфера технологий в прошлом году общие доходы отрасли звукозаписи составили менее 20 миллиардов долларов (половина от максимума, который был в 2000 году), а доходы Apple составили 215 миллиардов. Больше никого не заботит музыка.

Нечто подобное произошло и с книгами. Amazon занимает половину рынка, электронные книги стали реальным бизнесом (хоть и остались нишевыми), а самиздат стал вертикальным, но я подозреваю, что если бы у Apple был выбор, она не стала бы снова заниматься электронными книгами. Как и в случае с музыкой, здесь нет возможности стратегического давления: общие доходы рынка книг США в прошлом году составили около 25 миллиардов, а доходы Amazon в США 260 миллиардов. Никого в сфере технологий не интересуют онлайн-продажи книг или электронные книги.

Однако в более фундаментальном смысле, с точки зрения музыки и книг, большинство споров и вопросов относятся к индустрии музыки и книг, а не к технологиям или ПО. Spotify судится с Apple по поводу правил комиссий App Store, но во всём остальном все вопросы Spotify связаны с музыкой. Почему исполнители не зарабатывают больше денег на стриминге? Спрашивайте у лейблов. Почему Интернет не убил лейблы или издателей? Спрашивайте у любителей музыки и книг.

Думаю, то же самое происходит сегодня с телевидением и кинематографом. Технологии (а теперь и локдаун) разрушили старую модель и изменили все правила, но вопросы о новых моделях это вопросы о телевидении и кино, а не о программном обеспечении. Что произойдёт с гарантированной долей Тома Круза от выручки фильма, если он стал частью пакета, используемого для продажи подписок на стриминговый сервис? Каков срок жизни шоу на Netflix, кому переходят права на спортивные трансляции, и как будут устроены периоды релизов, когда снова откроются кинотеатры? Не спрашивайте меня всё это вопросы для Лос-Анджелеса, а не для Кремниевой долины. Netflix использовал технологии в качестве рычага для попадания на телевизионный рынок, но, повторюсь, все вопросы о его будущем это вопросы о телевидении. Тем временем, фильмы и телевидение (что бы это сегодня не значило), как и музыка с книгами, имеют ограниченное стратегическое значение для крупных технологических платформ Amazon использует их как мотиватор к покупке подписок Prime, а Apple только как маркетинговый инструмент. Контент больше не главное.

Сегодня телевидение интересно технологическим компаниям не из-за контента или из-за возможности продавать устройства, а потому, что на кону 65 миллиардов долларов, потраченных в США на рекламу, и, в более широком смысле, потому, что бывшие ранее отдельными рынками для рекламы, маркетинга, розничной аренды, доставки и многого другого, теперь становятся существенным общим рынком стоимостью 7-800 миллиардов долларов. Само телевидение интересно не очень многим.

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

Но после того, как технологии всё изменят, вопросы снова будут касаться в основном розницы, а не технологий. Какой это продукт, как ты о нём узнал, и как его получить? Это вопросы ретейла, бренда и маркетинга. Разумеется, ретейлер, продающий через новый онлайн-канал, должен быть в этом хорош, но тогда он должен быть хорош и в физическом канале. Наличие большого онлайн-опыта это условие для входа на рынок, но благодаря инструментам наподобие Shopify и Stripe он всё больше становится просто слоем в стеке. Однако правильной реализации онлайна недостаточно если бы Netflix показывал бы заново Друзей или Скорую помощь, то дело было бы не в качестве приложения, а Hulu не так популярен, как Netflix, не из-за качества сжатия. Правильная реализация онлайна и необходима, и сложна, но ваш успех будет определяться вопросами ретейла, телевидения или музыки.

На самом деле, то же относится и к Tesla: автономность это определённо вопрос ПО, но с электроприводом не всё так очевидно. Tesla бык в том, что она программная компания, и медведь в том, что автомобильная компания.

В начале статьи я упомянул Walmart как компанию, изменившую лицо рынка ретейла, но она также изменила ретейл благодаря пониманию того, что автомобилями уже владеют массы людей. Вероятно, автомобилестроение создало больше миллионеров в ретейле и недвижимости, чем в автомобильной отрасли производство автомобилей было просто одной из отраслей, но массовое владение автомобилями изменило всё остальное. Часто я думаю, что это хорошая точка зрения на современное состояние технологий: 80% взрослого населения мира имеет сегодня смартфон, что же мы можем с этим сделать? Именно это и означает софт пожирает мир. Но можно ещё и сказать, что Walmart не был создан людьми из автомобильной отрасли, из Детройта. Он был создан ретейлерами. Сэм Уолтон родился на десять лет позже появления Model T, а сегодняшние выпускники MBA родились в год выпуска Netscape. В какой-то момент в этой обстановке будет расти каждый, и все компании будут софтверными, а важные вопросы будут связаны не с ПО.



На правах рекламы


Облачный хостинг для размещения сайтов от маленького блога на Wordpress до серьёзных проектов и порталов с миллионной аудиторией. Создайте собственный тарифный план в пару кликов, максимальная конфигурация 128 ядер CPU, 512 ГБ RAM, 4000 ГБ NVMe!

Подписывайтесь на наш чат в Telegram.

Подробнее..

Обновленный LibreOffice 7.1 корпоративный пакет отдельно, редакция для комьюнити отдельно

04.02.2021 18:19:53 | Автор: admin
Источник

Офисный пакет LibreOffice 7.1, поддерживаемый The Document Foundation, получил очередное обновление. ПО готово для установки для дистрибутивов Linux, Windows и MacOS. Обновление пакета совместная работа курирующих проект компаний и членов комьюнити. Большую часть изменений (73%) внесли сотрудники Collabora, Red Hat и CIB, остальные заслуга энтузиастов.

Что нового в LibreOffice 7.1, читайте под катом.

LibreOffice 7.1: Community и Enterprise


Офисный пакет разделили на две редакции: одна для комьюнити ПО и получила название LibreOffice Community, вторая под названием LibreOffice Enterprise создана для корпоративного использования.

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

Для продуктов семейства LibreOffice Enterprise будет предоставлена поддержка и длительный доступ к обновления ПО. Также этот тариф будет включать такие функции, как SLA (Service Level Agreements).

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

Оба ответвления, впрочем, остались на одной технологической платформе LibreOffice Technology. Это неизменная единая кодовая база для создания решений на основе LibreOffice. Интересно, что все изменения и со стороны Community, и со стороны Enterprise, будут вноситься в эту же базу. Вытекшие из одного устья, LibreOffice Community и LibreOffice Enterprise существуют как бы отдельно, но все равно стекаются в одно к концу своего пути. Это значит, что следующее обновление офисного пакета опять может стать единым.
Продукты, созданные на LibreOffice Technology, доступны в сборках для популярных ОС (Windows, macOS, Linux и ChromeOS), мобильных платформ (Android и iOS) и для облачного применения (LibreOffice Online).

Это про концептуальные изменения, а что насчет технических нюансов?

LibreOffice 7.1: что нового


В интерфейсе


  • При первом запуске программы теперь можно выбрать стиль интерфейса и тип панелей.


  • Добавлен виджет для предпросмотра стилей в панель инструментов Notebookbar.
  • Теперь получать расширения, пиктограммы, макросы или шаблоны можно без установки расширений и ручной загрузки. Новый диалог Additions позволяет подгружать их из внешних хранилищ.


В Writer


  • Добавлен Style Inspector, показывающий все атрибуты стилей и символов, а также свойства ручного форматирования.


  • В меню (вкладка) Formatting Aids теперь можно выбрать применяемый по умолчанию способ закрепления добавляемых изображений.
  • Шаблоны для документа зависят от языка, выбранного в Writer, а не от системной локали.


  • Обеспечено определение типа Unicode, даже при импорте текстовых файлов без маркера последовательности байтов (BOM).
  • Добавлена поддержка табличных формул PRODUCT, ABS, SIGN и COUNT, чтобы ПО было более совместимым с MS Word.
  • Теперь можно переключать видимость имен полей ввода ( View Field Names) и выделять мышью пустые поля. Для полей, совместимых с Word, доступен переключатель, позволяющий скрывать как команды, так и результат.
  • Операция поиска и замены информации стала более быстрой.
  • Для старых PDF-документов, созданных в OpenOffice.org 2.2 и более старых выпусках, при импорте реализовано преобразование вложенных таблиц в таблицы с разбивкой на уровне строк (rowspan). Последние более качественно экспортируются в форматы Word и HTML.

В Calc


  • Теперь можно отключать вставки клавишей Enter (Tools Options LibreOffice Calc General).
  • Выделять элементы в окне Autofilter можно кликом на любой строке.
  • Сбросить все значения можно одной кнопкой Reset All (в диалоге Solver).
  • Работа с объединенными ячейками стала проще: легче заполнять, выделять и копировать их структуры.
  • Улучшились функции проверки правописания и поиска в Autofilter.
  • В функции Indirect появилась поддержка имен, ограниченных текущим листом.

В Impress и Draw


  • Новые анимационные эффекты, добавлена поддержка анимации на основе движка для стимуляции физических процессов. Также в Impress теперь можно менять анимацию сразу для нескольких объектов.


  • Добавлены реалистичные размытые тени от объектов.
  • В Draw для встроенных PDF-файлов добавлены видимые метки о наличии заверения документа цифровой подписью.
  • В консоли управления презентацией появились новые кнопки Pause/Resume и Exit.

И еще парочка обновлений


  • В Math в панель Element добавлены новые примеры и реализована полная поддержка HTML-цветов, некоторые из которых можно выбрать через интерфейс в панели Element.
  • Расширенную коллекцию макросов для LibreOffice можно вызывать из скриптов на Basic и Python.
  • В системе импорта теперь можно определить тип пустых файлов по их расширению. Например, при попытке открытия pptx и dotx нулевого файлы будут открыты в указанных форматах.
  • Импорт и экспорт документов в формате docx, xlsx и pptx стал лучше. Расширена поддержка импорта SmartArt.

С полным списком можно ознакомиться здесь. Также разработчики кратко продемонстрировали нововведения в ролике на YouTube.


Подробнее..

Учет рабочего времени с расчетом баланса

31.07.2020 16:11:33 | Автор: admin
Автоматизация процессов учета рабочего времени повышает эффективность работы компании, упрощает контроль трудовой дисциплины и расчет заработной платы и нивелирует влияние человеческого фактора. Однако жесткие алгоритмы учета рабочего времени могут вызвать негативную реакцию сотрудников. Контролировать дисциплину и сохранить комфортный климат в коллективе позволяет учет рабочего времени c расчетом баланса по алгоритму гибкого графика.



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

Применение


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

Алгоритмы учета


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



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

Например, при рабочем дне с 9:00 до 17:45 и обеденном перерыве в 45 минут сотрудник может прийти на 15 минут позже в 9:15 и уйти на 15 минут раньше в 17:30. Время, потраченное на приходы позже и уходы раньше в рамках заданных отклонений, сотрудник может отработать. Время, отведенное на обед, сотрудник может использовать частями.

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



Графики работы


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



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

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



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

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



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



Построение табеля


В случае положительного баланса рабочего времени табель заполняется согласно месячной норме (например, в случае стандартной месячной нормы 40 часов в неделю или 160 в месяц в табеле будет установлена ежедневная норма 8 часов на каждый день).

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

Поскольку табель формируется по стандартной форме T-13 и соответствует нормам и требованиям российского трудового законодательства, он может быть экспортирован в 1С для расчета зарплаты без изменений

Гибкий учет рабочего времени в системах PERCo позволяет контролировать баланс отработанного времени и автоматически формировать корректный табель УРВ в рамках ТК РФ. За текущим балансом сотрудники могут следить самостоятельно.
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru