История начинается
Жизнь не стоит на месте. Это проявляется во всем, в том числе и в динамике обновления программного обеспечения. Платформа 1С и прикладные решения на ее основе - не исключения.
Каждый год, месяц, день фирма "1С" и ее партнеры трудятся в поте лица, чтобы прикладные решения и технологическая платформа отвечали требованиям бизнеса во всех аспектах.
Однажды, мне была поставлена задача определить частоту обновления некоторых прикладных решений, чтобы составить план работ по обновлению информационных баз на регулярной основе. Анализируя собранную информацию, я открыл для себя много интересного. Все это совпало с моими экспериментами с GIT, .NET Core, QlikView, PostgreSQL и некоторыми другими библиотеками. Интересное сочетание, не так ли?
В итоге, результаты экспериментов вылились в следующее:
- Был создан репозиторий на GitHub, в котором хранится история изменений релизов. На момент написания статьи, в нем хранится история изменений с начала 2019 года. Информация в нем автоматически обновляется раз в 30 минут (почти), если, конечно, изменения есть или на моем облаке не произошел сбой. Или, если меня не заблокировали :)
- Автоматическое обновление данных в репозитории реализовано с помощью службы на .NET Core с помощью стандартных библиотек платформы, а также с помощью libgit2Sharp. Плюс некоторые другие возможности и фичи.
- Все собранные данные были мной загружены в небольшую базу данных на PG в нормализованном виде. Сделано это для удобства их обработки.
- В конечном счете, данные из базы были подгружены в один из самых популярных инструментов бизнес-анализа - QlikView Desktop, бесплатную версию для персонального использования в ограниченном режиме.
Именно результаты анализа данных QlikView в части выпуска релизов мы с Вами и рассмотрим далее. Этакий бизнес-анализ уровня "детский сад". Кто знает, может Вы найдете что-нибудь интересное. А если будет интерес, то тему можно будет и продолжить.
В общем, хотите ли Вы знать:
- Какое прикладное решение самое обновляемое?
- В каких странах продукты на платформе "1С" пользуются большей популярностью?
- Сколько "мертвых" решений?
- Бывают ли сдвиги сроков в выпуске релизов?
- Какие дни в фирме "1С" рабочие? :)
Если да, то добро пожаловать! Но перед этим пару важных отступлений.
А теперь, поехали!
Техническая сторона
Очень кратко пробежимся по технической стороне реализации. Некоторые из особенностей уже были озвучены выше.
- История изменений (всех изменений, не только выпуска новых релизов) хранится и обновляется в репозитории на GitHub.
- Служба получения данных о релизах и обновления информации в репозитории / базе PG реализована на .NET Core (C#) и выполняет следующие функции:
- С помощью библиотеки PuppeteerSharp реализовано получение данных со страницы releases.1c.ru/total c авторизацией на сайте. Для авторизации используется ограниченная учетная запись без возможности загрузки обновлений, без подписки ИТС или каких-либо купленных продуктов. Поэтому объем информации для получены ограничен информацией, находящейся на главной странице.
- Библиотека HtmlAgilityPack помогает разобрать HTML-страницу и извлечь из нее значимые данные.
- Используя библиотеку libgit2sharp выполняется обновление данных в репозитории (локальном и на GitHub).
- ADO.NET провайдер Npgsql берет на себя все что связано с созданием базы данных PG и выгрузкой в нее данных.
- С помощью других встроенных в .NET Core библиотек выполняется остальная работа.
- Потребителем данных в базе PG является приложение QlikView Desktop. Подробнее о его работе Вы можете посмотреть здесь, в отличном видео от Сергея Полехина. Начните свой путь в BI!
Исходный код .NET-службы в общий доступ выкладывать не планируется.
Интересные интересности
А теперь самое интересное - результаты анализа собранных данных за первые 6 месяцев 2019 года. Начнем от простого к сложному.
Сколько их всего
Посмотрим сколько всего продуктов имеем на сайте в каждой категории и общее количество.
Как мы видим, больше всего релизов в категориях:
- Отраслевые решения - 425
- Типовые конфигурации фирмы "1С" для России - 117
- Конфигурации проекта "На платформе 1С:Предприятие 8" - 58
Графически это можно представить так.
Таким образом, было бы логично, если бы больше всего обновлений выпускалось бы для категорий, в которые входят больше всего продуктов. Это мы проверим ниже.
Самой большой категорией является - "Отраслевые решения". Это можно объяснить тем, что типовые конфигурации для России являются родительскими решениями для множества отраслевых продуктов. Каждое отраслевое решение - это чаще всего адаптация типового функционала. Именно поэтому отраслевых конфигураций намного больше.
Самые обновляемые категории
По составу категорий мы определились, но как обстоят дела с количеством выпущенных релизов в каждой из них?
Статистика подтверждает высказывание, что из-за особенностей отраслевых решений и их зависимости (не всегда) от типовых конфигураций - они также получают и большее количество выпущенных релизов. Вот так это выглядит на графике.
Отраслевые решения - наше все!
Первые 3 категории находятся в ТОП как по количеству продуктов, так и по количеству выпущенных релизов. Для остальных категорий ситуация уже не столь однозначная. Например, по количеству продуктов конфигурации для Казахстана занимают 4 место среди всех категорий, а по количеству выпущенных релизов находятся только на 5 позиции. Посмотрим на статистику с другой стороны.
Частота выпуска релизов
С категориями мы разобрались, но что за этим скрывается? Давайте посмотрим, как часто выпускаются релизы. Вот информация за первое полугодие 2019 года.
Максимальное количество выпуска релизов было в апреле, но и в январе-феврале оно также сохранялось на высоком уровне. С мая количество выпущенных релизов неуклонно падало. Возможно, дело в отпусках и "деловом" затишье :)
Аналогичная тенденция прослеживается и для отдельных взятых категорий. Если рассчитать среднее количество в месяц, то получим 370 релизов. Вот такая месячная пропускная способность.
В случае, если рассчитать количество выпущенных релизов в день за этот же период, то получим пропускную способность - 18 релизов в день.
Масштабы поистине впечатляют!
На острие релизов
Давайте посмотрим какой продукт чаще всего обновляется. Закройте глаза, откройте свой разум и, прежде чем читать дальше, ответе: "Какой продукт на базе платформы "1С" обновляется чаще всего?".
Честно сказать, я изначально предполагал, что это будет 1С:Бухгалтерия предприятия или 1С:Управление торговлей 11.x. Но ошибся, и можно сказать что очень сильно! Вот статистика по ТОП 50 самым обновляемым решениям в первом квартале 2019 года.
Удивлены? Самым обновляемым является "1С:Библиотека стандартных подсистем, редакция 3.0"! Такого я точно не ожидал. С другой стороны, это может быть логичным, ведь БСП является ядром всех типовых и большинства отраслевых решений, что требует сопровождения для нее. Умеешь же ты удивлять, БСП!
Далее четыре позиции подряд занимает 1С:Бухгалтерия в различных вариантах (базовая, КОРП и т.д.). Тут я не удивился, ведь это решение остается одним из самых востребованных бизнесом, а значит и держать его актуальным очень важно. Особенно в условиях меняющегося законодательства. Все те, кто говорит, что "1С" - это только бухгалтерия! Вот Ваш шанс, вот Ваше доказательство! (на самом деле это шутка).
Остальные позиции занимают отраслевые решения и некоторые другие типовые и спец. решения на платформе. Далее выводы делать только Вам!
"Мертвые души"
Все ли продукты в списке релизов до сих пор "живы" и обновляются? Давайте попытаемся это узнать.
Определим, что если для продукта не выпускалось обновлений более 1 года, то от считается "мертвым". Да, понимаю, что подобный подход сработает не во всех случаях, но для упрощения будем придерживаться этого способа. Для этого будем анализировать все актуальные версии, а не только релизы первого полугодия 2019 года. Вот что из этого вышло.
Таким образом, в списке релизов содержатся 55% актуальных продуктов. Остальные из них либо устаревшие, либо находятся в замороженном состоянии без доработки функционала.
Примерами стабильных продуктов, которые и "мертвыми" не назовешь, но и обновлений они не получают, можно назвать:
- 1С:Конвертация данных 2.0 - без обновлений 1837 дней.
- 1С:Конвертация данных 3.0 - без обновлений 786 дней.
- И многие другие решения.
Для меня было очень интересно узнать, что для КД 3.0 обновлений уже не выпускается больше 2 лет.
Изменение планов
Часто ли изменяются планы выпуска релизов? На сколько сдвигаются сроки выпуска продуктов? Как и у всех нас, в фирме "1С" тоже бывают ситуации, когда ранее запланированный к выпуску релиз отодвигают в дате публикации. Иногда это могут быть дни, недели и даже месяцы!
Сразу определимся что такое сдвиг сроков. В нашем случае появление нескольких плановых дат публикации релиза. При этом количество дней сдвига сроков определяется как:
- максимальная дата плановой публикации релиза (последняя плановая дата) - минимальная дата плановой публикации релиза (первая дата)
Вот статистика по ТОП 25 продуктам, у которых максимальные сдвиги сроков по выпуску запланированных обновлений.
Кроме отраслевых конфигураций, в списке "опаздунов" есть и флагманские решения той же ERP 2. Для более наглядного анализа можно посмотреть на сдвиги сроков с учетом конкретных плановых версий конфигураций.
Картина дополнена плановой версией релизов, чтобы понимать конкретнее какой релиз был сдвинут. Так, например, версия ERP 2.4.8 была анонсирована 22 февраля 2019 года, когда актуальной версией релиза ERP была 2.4.6.230. При этом изначальная плановая дата выпуска была 29 марта 2019 года. Но потом что-то пошло не так и релиз откладывался 11 раз! Последняя плановая дата была назначена на 30 мая 2019 и релиз все же был опубликован. Опубликованная версия ERP в это день была 2.4.8.57.
Вот так обычно происходит сдвиг сроков для выпуска обновлений продуктов "1С", но ничего страшного в этом случае не заметно. Пока откладывалась версия 2.4.8, фирма "1С" выпустила 10 релизов ERP! Все таки продукт не простой и все можно понять.
Примеры на остальных продуктах мы рассматривать не будем, хоть такая информация у нас и есть. Просто знаем что и такое бывает. Если нужна более подробная информация, то Вы можете достать ее самостоятельно из репозитория GitHub.
Рабочие дни фирмы "1С"
Вы работаете по выходным? А как думаете, работают ли сотрудники фирмы "1С" по выходным? Наверняка мы не знаем, но давайте посмотрим на статистику по выпуску релизов в разрезе дней недели. Анализируем информации все также за первое полугодие 2019 года. Соберем общее количество выпущенных за полгода релизов в разрезе дней недели.
Наибольшая активность наблюдается в четверг, пятницу, но не сильно отличается от остальных рабочих дней. В субботу активность по выпуску релизов снижается в 2 раза. В воскресенье активности практически нет. Посмотрим на это под другим углом, и просуммируем не количество выпущенных релизов, а количество изменений информации о релизах (плановые даты, демоверсии и др.) на сайте.
Как мы видим, эта информация также подтверждает высокую активность в рабочие дни, ее снижение в 2 раза в субботу и почти полное отсутствие в воскресенье.
Работают ли сотрудники фирмы "1С" в выходные? На самом деле трудно сказать, ведь информация на сайте может обновляться отложено, поэтому наверняка тут сказать мы не сможем. Что точно можно сказать, что на сайте можно ждать обновления информации даже в выходные дни!
Популярность продуктов по странам мира
Еще одной интересная аналитика - это попытка определить популярность решений на платформе "1С" через призму количества выпущенных релизов в разрезе категорий. Как мы уже видели, решения разбиты по категориям для разных стран (не все решения, но значительная часть).
Думаю, ничего нового мы здесь не увидим:
- На первом месте, конечно же, Россия. Родина "1С"!
- Далее с большим отставанием по популярности идут Казахстан, Беларусь, Молдова и Кыргызстан.
- Остальные страны занимают незначительную долю в обновляемых решениях.
Конечно, эта статистика не отражает реальную картину, т.к. нет отдельных категорий для Западной Европы, Канады, США, ОАЭ и так далее. Но общую тенденцию понять можно - решения на базе "1С" наиболее востребованы в странах бывшего СССР.
История продолжается
Мы сделали поверхностный анализ данных о выпуске релизов фирмой "1С" за первое полугодие 2019 года. Какие выводы из всего этого можно сделать?
- Фирма "1С" имеет достаточно большую пропускную способность по выпуску обновлений для своих продуктов:
- 370 релизов в месяц!
- 18 релизов в день!
- Основная работа ведется для отраслевых решений и типовых конфигураций для России.
- Самыми обновляемыми продуктами являются:
- 1С:БСП 3.0 (что для меня было настоящим открытием)
- 1С:Бухгалтерия 3 (в различных версиях)
- Далее уже идут отраслевые решения и другие продукты.
- Список продуктов содержит 55% активно обновляемых решений (которые обновлялись хотя бы раз за последний год).
- При этом некоторые решения хоть и не обновляются, но все же активно используются. Те же КД 2.0/3.0 и некоторые другие.
- Сдвиг сроков при выпуске плановых релизов - тоже бывает: от 1 дня до 2 месяцев. Но в целом это редкость и не является критическим для клиентов компании.
- Решения на базе платформы "1С" пользуются большим спросом в странах бывшего СССР.
- В фирме "1С" иногда все же "кипит" работа в выходные дни, но это не точно :)
На этом все. Надеюсь, Вам понравилось :)
Заходите в репозиторий, все данные в Вашем распоряжении. Вопросы по технической реализации - задавайте в личных сообщениях.