Промышленный подход к разработке на платформе «1С:Предприятие»

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

Основные практики, применяемые на проектах

1. Методологии разработки

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

  • Scrum. При этом подходе проект разбивается на короткие итерации (спринты). Команда работает по чёткому графику, регулярно встречается на митингах, ежедневных созвонах. Этот подход удобен, когда требования могут меняться в процессе работы, так как можно создавать спринты под разработку дополнительных функций и модулей ПО;
  • Kanban. Подходит для проектов с непрерывным потоком работы. Команда использует визуальные доски с указанием дедлайнов для контроля выполнения отдельных задач. Подход помогает равномерно распределить нагрузку и быстро реагировать на срыв сроков или форс-мажорные ситуации;
  • Waterfall. Линейная модель с последовательными этапами: от сбора требований к внедряемому решению до реализации и передачи ПО в эксплуатацию. Используется в тех случаях, когда структура проекта понятна заранее, а требования остаются стабильными на протяжении всего цикла разработки.
Выбор методологии в первую очередь зависит от масштаба проекта и индивидуальных требований заказчика, связанных с особенностями бизнес-процессов предприятия. Наша команда адаптирует используемые на проекте методологии под специфику вашего бизнеса.

2. Системы контроля версий

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

  • Git. Позволяет:
    • вести централизованную историю изменений по каждому проекту;
    • разделять разработку на ветки, например для разных задач или команд;
    • безопасно сливать ветки и разрешать конфликты между версиями и отдельными частями ПО;
    • быстро откатываться к рабочим версиям при сбоях.
Интерфейс Git
Интерфейс платформы Git
  • GitLab. Это платформа для хранения репозиториев со следующими возможностями:
    • доступом к репозиториям с разграничением прав;
    • визуальными интерфейсами для работы с задачами и кодом;
    • встроенными инструментами CI/CD для автоматического запуска тестов и сборок при каждом обновлении.

CI/CD – методология автоматизации процессов разработки и доставки обновлений.

•    CI (Continuous Integration) – означает, что изменения регулярно вносятся в общий код и автоматически проверяются. Это позволяет быстрее находить ошибки.
•    CD (Continuous Delivery) – автоматическая сборка и подготовка обновлений к установке.
Системы контроля версий делают процесс разработки прозрачным и предсказуемым. Технический директор или руководитель проекта в любой момент может увидеть, кто и когда вносил изменения, на каком этапе находится доработка, какие версии конфигураций и модулей находятся в работе.
3. Автоматизация

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

  • Автоматическое тестирование. После каждого изменения система автоматически проверяет, осталась ли работа ключевых функций стабильной. Тесты запускаются по заранее заданным сценариям и выявляют ошибки еще до того, как решение попадёт в эксплуатацию. Это особенно важно при работе с критичными бизнес-процессами, например расчётом заработной платы и налогами. В экосистеме 1С доступны собственные инструменты тестирования: «1С:Сценарное тестирование» и «1С:Тестировщик». Первый позволяет создавать и выполнять наборы тестов по заданным сценариям, второй — проверять корректность выполнения отдельных методов и процедур. Такие инструменты помогают выстроить системную работу с качеством кода и ускоряют отладку.
  • Сборка конфигурации. Избавляет команду от ручной работы при подготовке обновлений. Система объединяет доработки, проверяет целостность конфигурации, присваивает номер версии и формирует финальный дистрибутив. Такой подход снижает риски и ускоряет выпуск новых релизов, что крайне важно в проектах с несколькими разработчиками или сложной архитектурой, где ручной контроль практически невозможен.
4. Модульность
Модульная разработка — подход, при котором система строится из отдельных логических блоков. Каждый из них отвечает за свою область задач, имеет чёткие границы и может развиваться независимо от остальных. Такой подход повышает гибкость проекта, упрощает поддержку и дает возможность переопределять отдельные участки кода без вмешательства в остальную часть конфигурации.
Модульная структура решений на практике
«1С:Зарплата и управление персоналом» состоит из множества модулей. Среди них:
  • кадровый — отвечает за приём, перемещение и увольнение сотрудников, ведение штатного расписания и учёт отсутствий:
  • расчётный — включает правила расчёта заработной платы, премий, удержаний и налогов;
  • отчётность — формирует регламентированную отчетность в СФР, ФНС, ФСС;
  • интеграции — обеспечивает обмен данными с бухгалтерией, внешними сервисами и контролирующими органами.
Такое деление позволяет быстрее подстроить конфигурацию под бизнес-процессы конкретной компании, упрощает навигацию по проекту, ускоряет доработки и снижает вероятность ошибок при развитии системы.
В промышленной разработке также используют типовые модули — заранее подготовленные, многократно используемые компоненты ПО. В первую очередь речь идет о модулях из «1С:Библиотеки стандартных подсистем» (БСП). Это справочники пользователей, журналы регистрации, системы прав, обмена с внешними системами, работы с файлами и многое другое.
Использование типовых модулей из БСП позволяет снизить трудозатраты на разработку, повысить стабильность решений и обеспечить совместимость с будущими обновлениями платформы.
5. Командная работа
В промышленной разработке над проектом всегда работает не один специалист, а целая команда. Чтобы обеспечить нужный заказчику результат, важны четкое распределение ролей, прозрачность процессов и удобные инструменты для коммуникации.

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

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

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

  • 1С:ITIL. Помогает выстроить процессы поддержки и развития IT-систем и сервисов по стандартам ITSM. С его помощью можно регистрировать инциденты, управлять изменениями, вести учёт конфигураций и формировать отчёты. Такой подход особенно важен при сопровождении доработанных решений и работе с несколькими линиями поддержки;
Справка: IT Service Management, или ITSM – подход к управлению IT-услугами как полноценным сервисом для бизнеса. Он основан на стандартизированных процессах, например управлении инцидентами, проблемами, изменениями и конфигурациями. Самый известный набор практик – стандарты ITIL (Information Technology Infrastructure Library). 
  • «Битрикс24». Используют для управления задачами и коммуникацией. В системе удобно формулировать требования к работе, назначать ответственных, отслеживать сроки и статус исполнения отдельных этапов работы. Это позволяет держать проект под контролем и оперативно решать возникающие проблемы.

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

6. Стандартизация

В промышленной разработке важно, чтобы код был понятен любому специалисту в команде или новому человеку в штате как при разработке, так и спустя месяцы после релиза. Этого позволяют добиться единые стандарты оформления кода: от наименований объектов и переменных до структуры модулей, стиля комментариев и ведения документации. Для платформы «1С:Предприятие» разработана система стандартов и методик разработки конфигураций «1С:Предприятие 8». Она описывает правила, подходы и практики, которые делают код читаемым, поддерживаемым и пригодным для масштабирования. Ознакомиться с документацией можно на сайте ИТС, для доступа не нужна подписка.

7. Тестирование

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

В энтерпрайз-разработке применяют несколько видов тестирования:

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

8. Документирование

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

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

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

9. Управление проектами

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

Управление проектами можно разделить на три этапа:

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

Пример графика разработки ПО

Пример графика разработки

  • отслеживание задач. Контроль сроков, приоритетов и текущего статуса работ. Такие инструменты уже упоминались выше. Например, «Битрикс24» позволяет формализовать процессы, настроить напоминания и вовремя реагировать на отклонения от плана;
  • управление рисками. Систематический поиск потенциальных проблем, их оценка и минимизация последствий. Это может быть анализ зависимости между задачами, план действий в случае срыва сроков, резервирование ресурсов на критичных участках.
Преимущества промышленного подхода к разработке
Улучшение качества ПО. Использование автоматического и сценарного тестирования, единых стандартов оформления кода и методик разработки снижает количество ошибок, повышает надёжность и стабильность программ и сервисов.
Ускорение разработки. Автоматизация рутинных процессов и модульный подход позволяют быстро внедрять новые функции, оперативно вносить изменения и выпускать обновления.
Улучшение управляемости. Прозрачные процессы, стандартизация, система контроля версий и инструменты отслеживания задач позволяют держать проект под контролем: видеть актуальный статус задач, оперативно реагировать на изменения и эффективно распределять ресурсы.
Облегчение поддержки. Документирование архитектуры и пользовательских сценариев, модульная структура конфигурации и единый стиль кода упрощают сопровождение и развитие решений, в том числе если проект переходит к другой команде.
Снижение рисков. Методологии управления проектами, контроль версий и автоматизированная проверка кода помогают минимизировать риски сбоев, задержек и ошибок, возникающих из-за человеческого фактора.
Хотите, чтобы ваша система 1С развивалась стабильно и без сбоев? Обратитесь в «Хэндисофт». Мы внедряем и дорабатываем решения 1С с соблюдением стандартов промышленной разработки. Нажмите на кнопку, чтобы заказать консультацию. Наш менеджер свяжется с вами в течение рабочего дня.
Заказать консультацию