Разработка программного обеспечения
![]() | Эту статью предлагается удалить. |
Разрабо́тка програ́ммного обеспе́чения (англ. software development) — деятельность по созданию нового программного обеспечения[1].
Разработка программного обеспечения как инженерная дисциплина является составной частью (областью) программной инженерии, наряду с дисциплинами, отвечающими за функционирование и сопровождение программных продуктов[2].
Сложность разработки ПО
[править | править код]![]() | Этот раздел нужно дополнить. |
Современный тренд в разработке программного обеспечения – растущая сложность. Аналитики говорят, что из-за всё более высокой сложности разработки ПО повышается порог вхождения в профессию. Из-за высокого порога возникла парадоксальная ситуация, когда разработчиками люди становятся не благодаря своим знаниям и навыкам, а по случайности[3]
Разработка на платформе «1С:Предприятие»
[править | править код]«1С:Предприятие» — коммерческая low-code-платформа для создания прикладных бизнес-решений, широко распространённая в странах ЕАЭС. По оценкам TAdviser, её продукты используют более половины российских компаний малого и среднего бизнеса, а совокупная доля «1С» на рынке корпоративных систем автоматизации превышает 50 %.
Архитектура и язык
[править | править код]- Трёхуровневая модель**: клиентское приложение ↔ сервер приложений ↔ СУБД.
- Мета-ориентированный подход**: конфигурация описывается набором метаданных, из которых система автоматически формирует структуру базы данных, пользовательский интерфейс и бизнес-логику.
- 1С-Script** — встроенный язык с сильной динамической типизацией и собственным запросным диалектом, позволяющим обращаться к данным без SQL.
Среды разработки
[править | править код]Среда | Ключевые особенности | Год появления |
---|---|---|
Конфигуратор | Классическая IDE, поставляется вместе с платформой; поддержка Thick/Thin/Web-клиентов. | 1996 |
1C:EDT | Расширение Eclipse: Git-интеграция, работа с проектами в файловой структуре, статический анализ. | 2017 |
Переход на EDT позволил внедрять гибкие методологии (Agile) и CI/CD-процессы, поскольку конфигурации теперь хранятся в системах контроля версий.
Экосистема и повторное использование
[править | править код]- Библиотека стандартных подсистем (БСП) — набор типовых модулей (аутентификация, обмен данными, интерфейс), де-факто стандарт для корпоративных решений.
- Популярные open-source-утилиты: runner, vanessa-runner, тест-фреймворк Vanessa-Automation, генератор документации DocumentationGenerator.
CI/CD и DevOps
[править | править код]Использование пакетных инструментов позволяет выстраивать полный конвейер:
- экспорт конфигурации в файловую структуру (designer /dumpcfg);
- проверка кода и юнит-тесты (vanessa-run);
- сборка и публикация релизов (Docker, GitLab CI, GitHub Actions);
- автоматизированное обновление баз заказчика.В. Ермаков. «DevOps-подход к 1С:Практика внедрения». Infostart, 2024-06-05.
Распространение
[править | править код]- Более 1 000 000 рабочих мест пользователей задействованы в проектах «1С:ERP».«Монитор внедрений 1С:ERP». 1C.ru, 2025-02-18.
- Сертифицированных разработчиков ≈ 300 000 (данные 1С-University, 2024).
- Поддерживаются мобильные клиенты (iOS, Android) и web-фронтенд на HTML5.
Особенности методологии
[править | править код]Исторически проекты «1С» стартовали по каскадной модели (Waterfall), что связано с крупными внедрениями «под ключ». Однако перенос конфигураций в системы контроля версий и развитие EDT стимулируют переход на Agile, спринты 1–2 недели и релиз-флоу с feature-branch-моделью.[4]
Значение для отрасли
[править | править код]- Формирует уникальные паттерны разработки (метаданные ⇄ код, декларативная БД, автогенерация UI).
- Служит драйвером рынка low-code решений в РФ и странах СНГ.
- Является примером адаптации мировых DevOps-практик к проприетарной платформе.
- ↑ Development Архивная копия от 8 июля 2016 на Wayback Machine // Macmillan Dictionary:
the process of creating a new product or method. - ↑ Программная инженерия — приложение систематического, дисциплинированного, измеримого подхода к разработке, функционированию и сопровождению программного обеспечения, а также исследованию этих подходов; то есть, приложение дисциплины инженерии к программному обеспечению (ISO/IEC/IEEE 24765-2010 Systems and software engineering — Vocabulary)
- ↑ Качко, Ю. Сложность программирования убивает разработчиков : [арх. 27 сентября 2022] // Digital World — цифровое будущее сегодня. — 2021. — 11 ноября.
- ↑ А. Пономарёв. «Scrum-подход при разработке на 1С». Доклад на «1С:ERP Focus», 2025-04-22.
Процесс и методологии
[править | править код]Процесс разработки программного обеспечения (англ. software development process) — это процесс, посредством которого потребности пользователей преобразуются в программный продукт (the process by which user needs are translated into a software product). Процесс разработки программного обеспечения является составной частью программной инженерии и описывается в стандарте ISO 24765:2010[1].
Существует несколько моделей процесса разработки ПО:
- каскадная модель (англ. waterfall model), другие названия: водопадная, последовательная;
- модель итеративной и инкрементальной разработки (англ. iterative and incremental development, IID), другие названия: эволюционная модель, итерационная модель, инкрементальная модель;
- спиральная модель (англ. spiral model).
См. также
[править | править код]- Алгоритм
- Единая система программной документации
- Информатика
- Программирование
- Парадигма программирования
- Структурное программирование
- Тестирование программного обеспечения
- Проблемно-ориентированное проектирование
- Логическое программирование
- Bus factor
Литература
[править | править код]- Соммервилл, И. Инженерия программного обеспечения = Software Engineering : [пер. с англ.]. — 6-е изд. — М. : Вильямс, 2002. — 642 с. — ISBN 5-8459-0330-0.
- Гринфилд, Дж. Фабрики разработки программ (Software Factories): потоковая сборка типовых приложений, моделирование, структуры и инструменты = Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools : [пер. с англ.] / Дж. Гринфилд, К. Шорт, С. Кук … [и др.]. — М. : Диалектика, 2006. — 592 с. — ISBN 978-5-8459-1181-0.
- Единая система программной документации : ГОСТ 19.
- ГОСТ Р ИСО/МЭК 12207-2010 : Информационная технология. Системная и программная инженерия. Процессы жизненного цикла программных средств.
Примечания
[править | править код]- ↑ Software development process // ISO/IEC/IEEE 24765:2010 : Systems and software engineering — Vocabulary.
Ссылки
[править | править код]- IEEE Standards Association:Software Engineering — Descriptions (англ.)
- Институт программной инженерии Университета Карнеги-Меллон (англ.)
![]() | Для улучшения этой статьи по информационным технологиям желательно: |