УТВЕРЖДЕН
приказом ООО «ФТ-СОФТ» от 15.06.2025 № 38
РЕГЛАМЕНТ ПРОЦЕССА УПРАВЛЕНИЯ РАЗРАБОТКОЙ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
| Проект | Уникальный процесс, состоящий из совокупности скоординированных и управляемых видов деятельности с датами начала и окончания, предпринятых для достижения цели, соответствующей конкретным требованиям, включая ограничения по срокам, стоимости и ресурсам. |
|---|---|
| Процесс | Совокупность взаимосвязанных или взаимодействующих видов деятельности, которые используют «вход» для получения намеченного результата (выхода). |
| Релиз | Устойчивый набор авторизованных изменений в программном продукте, построение, тестирование и развертывание которых выполняется совместно. |
| Рефакторинг | Внесение изменений в программный код, направленные на его улучшение и не связанные с изменением функциональности программного продукта. |
| Трудоемкость | Количество рабочих дней, необходимых одному разработчику на выполнение задачи. |
| Средства автоматизации процесса разработки | Набор программных средств, предназначенных для автоматизации деятельности команды разработки на всех этапах процесса разработки. К основным средствам автоматизации процесса разработки относятся: система управления версиями ПО; система управления задачами; система непрерывной интеграции; система внутреннего документирования проекта. |
Целью процесса управления разработкой ПО является обеспечение стабильно высокого качества новых версий программных продуктов, за счет применения организационных и технических мер, определенных данным регламентом.
Действие регламента распространяется на все программные продукты, выпускаемые компанией.
Для достижения целей процесса управления разработкой ПО должны соблюдаться следующие базовые принципы:
Процесс разработки является итерационным процессом. Результатом каждой итерации должна являться готовая, отделяемая от разработчиков, версия продукта. Каждая итерация включает следующие этапы работы:
На этапе определения требований представители команды разработки выполняют обследование объекта автоматизации при взаимодействии с представителями заказчика – специалистами предметной области.
Собранные в результате обследования сведения об объекте автоматизации должны быть формализованы с использованием средств моделирования, используемых командой разработки.
Результатом этапа определения требований должны являться следующие документы:
На этом этапе должны быть определены цели и задачи, которые должно выполнять разрабатываемое программное обеспечение (ПО), а также запланированы способы проверки выполняемых ПО функций.
Формы согласования с заказчиком должны обеспечивать впоследствии возможность доказательства достигнутых договоренностей (подписанные бумажные документы, электронная почта и пр.).
На этапе определения требований должны использоваться следующие средства автоматизации процесса разработки:
На этапе проектирования командой разработки разрабатываются проектные решения, реализующие требования, определенные на предыдущем этапе.
Разработка проектных решений выполняется в следующей последовательности:
Являться результатом декомпозиции высокоуровневых остановок задач.
Должны содержать конкретные постановки для реализации нового функционала разработчиками.
Задачи должны быть распределены на итерации, составляющие план выполнения разработки ПО, его версии или релиза.
На этапе проектирования решения вырабатываются и принимаются архитектором системы, ведущими разработчиками, а также в результате совместных обсуждений с участием всех участников разработки. Результаты решений обязательно фиксируются в системе внутреннего документирования и системе управления задачами.
Результатом этапа определения требований должны являться следующие документы:
На этапе определения требований должны использоваться следующие средства автоматизации процесса разработки:
При проведении подготовки к этапу разработки должны быть подготовлены:
Процесс разработки должен быть дискретным и поделен на итерации длительностью от двух до четырех недель. Каждый этап должен заканчиваться выпуском следующей версии. Каждая версия должна содержать набор работоспособных компонент, которые могут быть представлены заказчику в качестве прототипа системы.
Для программных компонентов, вошедших в выпускаемую версию, должны выполняться следующие правила:
Работа над версией считается завершенной после успешного выполнения функционального тестирования по определенным сценариям и контрольным примерам.
Процедура выпуска релизов подробно описана в документе «Регламент управления релизами».
Основной целью внедрения средств автоматизации процесса разработки является обеспечение высокого качества результатов разработки программного обеспечения и повышение эффективности работы команды разработки.
Внедрение средств автоматизации процесса разработки обеспечивает выполнение следующих показателей качества результатов работы команды разработки:
Средства автоматизации процесса разработки должны удовлетворять следующим требованиям:
УТВЕРЖДЕН
приказом ООО «ФТ-СОФТ» от 15.06.2025 № 38
РЕГЛАМЕНТ ПРОЦЕССА УПРАВЛЕНИЯ РЕЛИЗАМИ
| Проект | Уникальный процесс, состоящий из совокупности скоординированных и управляемых видов деятельности с датами начала и окончания, предпринятых для достижения цели, соответствующей конкретным требованиям, включая ограничения по срокам, стоимости и ресурсам. |
|---|---|
| Процесс | Совокупность взаимосвязанных или взаимодействующих видов деятельности, которые используют «вход» для получения намеченного результата (выхода). |
| Релиз | Устойчивый набор авторизованных изменений в программном продукте, построение, тестирование и развертывание которых выполняется совместно. |
| Рефакторинг | Внесение изменений в программный код, направленных на его улучшение и не связанных с изменением функциональности программного продукта. |
| Трудоемкость | Количество рабочих дней необходимых одному разработчику на выполнение задачи. |
Целью процесса управления релизами является обеспечение стабильно высокого качества новых версий программных продуктов за счет применения организационных и технических мер, определенных данным регламентом.
Действие регламента распространяется на все программные продукты, выпускаемые компанией.
Для достижения целей процесса управления релизами должны соблюдаться следующие базовые принципы:
Процесс управления релизами включает следующие виды деятельности (этапы):
В таблице ниже представлено распределение ответственности участников процесса на каждом его этапе.
Таблица 1. Описание этапов процесса
| Процесс управления релизами | Процесс управления релизами | Процесс управления релизами | Процесс управления релизами |
|---|---|---|---|
| Этапы процесса → | Планирование и согласование релиза | Разработка и тестирование релиза | Информирование и выпуск релиза |
| Роли ↓ | Планирование и согласование релиза | Разработка и тестирование релиза | Информирование и выпуск релиза |
| Руководство компании | Утверждение плана релиза, бюджета проекта на этап | Приемка результатов разработки | Получение информации о результатах работы |
| Руководитель проекта | Разработка плана релиза | Подготовка и проведение приемо-сдаточных мероприятий | Отправка информации о результатах работы |
| Группа разработки | Выполнение разработки программных компонентов, документации, проведение тестирования | ||
| Заинтересованные лица | Получение информации о планируемых работах | Получение информации о результатах работы |
Схема процесса управления релизами представлена на рисунке « ».
Разработка плана релиза осуществляется руководителем проекта совместно с ведущими специалистами в составе команды разработки. План релиза утверждается представителями руководства компании.
При планировании релиза определяется:
В зависимости от значимости и объема внесенных изменений выделяются следующие виды релизов:
Каждый релиз имеет уникальный идентификатор следующей структуры: XXX.YYY.ZZZ.DDD:
В описание релиза должны входить:
«Разработка подсистемы интеграции и развитие подсистемы аутентификации», «Повышение производительности работы».
В состав релиза входят высокоуровневые задачи, решение которых обеспечивает достижение заявленной цели релиза.
Высокоуровневые задачи (user story) определяют дальнейшее развитие продукта в виде требований к разработке новой функциональности или для рефакторинга. Высокоуровневые задачи далее декомпозируются на конкретные задачи для разработчиков, выполнение которых контролируется в рамках системы управления задачами, используемой в компании. В описании релиза задачи разработчиков не приводятся.
Отдельной высокоуровневой задачей релиза является задача «Исправление ошибок», включающая активности, связанные с устранением ошибок, проблем и замечаний, обнаруженных в работе программного продукта. В формулировке задачи «Исправление ошибок» могут присутствовать ссылки на идентификаторы описаний ошибок, проблем и замечаний из системы управления задачами.
Полный список высокоуровневых задач находится общем плане разработки программного продукта, созданном на основе технического задания.
В описании каждой задачи должны присутствовать трудоемкость ее решения и ее значимость: цифровая характеристика важности решения этой задачи для проекта в целом, принимающая значения от 1 (низкая значимость) до 4 (высокая значимость). Трудоемкость задачи определяется на основании опыта руководителя проекта или оценки разработчика – исполнителя задачи, с последующим согласованием этой оценки руководителем подразделения.
Задачи в состав релиза включаются на основании оценки их значимости, таким образом, чтобы суммарная трудоемкость задач, включенных в релиз, не превышала срок его завершения.
Состав высокоуровневых задач, общие трудозатраты и сроки релиза проходят согласование на уровне руководства компании (или ответственного лица, куратора процесса разработки, определенного руководством компании).
Этап разработки релиза считается завершенной при завершении работы над всеми задачами, входящими в состав релиза.
В случае, если по каким-либо причинам все задачи релиза не могут выполнены в установленные для выхода релиза сроки, по согласованию с руководством компании, выполняется один из сценариев:
После завершения разработки релиза, результаты работы передаются на тестирование, помимо собственно программных компонентов группе тестирования при этом передается список изменений, вошедших в релиз.
Руководитель проекта должен экспертным путем определять время, необходимое для тестирования результатов работы над релизом, для обеспечения соблюдения сроков выхода релиза.
Выполнение процесса разработки релиза обеспечивают следующие средства автоматизации процесса разработки:
Разработка релиза ведется следующим образом:
В зависимости от вида релиза приемка результатов работы осуществляется комиссией (для значимого или малого релизов), состав которой согласуется руководством компании или выполняется сотрудниками подразделения разработки компании в форме тестирования результатов разработки.
Результатом приемки релиза является протокол, содержащий решение о возможности выпуска релиза или список замечаний, сроки их устранения и способ приемки устраненных замечаний (заседание комиссии или отчет об устранении замечаний, подготовленный специалистами отдела разработки).
После полного завершения работы над релизом, заинтересованным лицам рассылается информация о выходе нового релиза, включая сопроводительный документ и варианты получения и развертывания обновлений, содержащих данный релиз.
Сопроводительный документ релиза, содержит следующую информацию:
На этапе выпуска релиза, готовые программные компоненты и документация предоставляются заинтересованным лицам для развертывания и дальнейшего использования программного продукта.
Распространение и развертывание релиза осуществляется способом, специфичным для конкретного программного продукта, как правило в виде инсталляционного пакета.
При любом способе распространения обновлений артефакты для них (инсталляционные пакеты, библиотеки, архивы и пр.) должны быть подготовлены автоматически сервером непрерывной интеграции, развернутым в компании
УТВЕРЖДЕН
приказом ООО «ФТ-СОФТ» от 15.06.2025 № 38
РЕГЛАМЕНТ ПРОЦЕССА ПРОВЕДЕНИЯ ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
| Unit (модульное) тестирование | Тестирование отдельных компонентов, модулей или методов, выполняющееся при помощи разработанных Unit- тестов |
|---|---|
| Автоматическое тестирование | Режим проведения испытаний программного обеспечения, при котором проверки производятся с использованием средств автоматизации процесса разработки, без участия разработчиков или специалистов группы тестирования |
| Интеграционное тестирование | Проверка корректности взаимодействия смежных доработок, подсистем друг с другом и/или с внешними системами |
| Нагрузочное тестирование | Тестирование производительности, сбор показателей и определение производительности и времени отклика подсистемы ответ на внешний запрос с целью установления соответствия требованиям, предъявляемым к данной подсистеме |
| Регрессионное тестирование | Вид тестирования подсистем, направленный на обнаружение ошибок в ранее протестированных версиях и/или на подтверждение работоспособности критически важного функционала. |
| Ручной режим тестирования | Режим проведения испытаний, при котором проверки производятся с участием разработчиков или специалистов группы тестирования |
| Программа и методика испытаний (ПМИ) | Документ содержит список проверок программной системы на соответствие заявленным в Техническом задании функциям |
| Проект | Уникальный процесс, состоящий из совокупности скоординированных и управляемых видов деятельности с датами начала и окончания, предпринятых для достижения цели, соответствующей конкретным требованиям, включая ограничения по срокам, стоимости и ресурсам. |
|---|---|
| Процесс | Совокупность взаимосвязанных или взаимодействующих видов деятельности, которые используют «вход» для получения намеченного результата (выхода). |
| Релиз | Устойчивый набор авторизованных изменений в программном продукте, построение, тестирование и развертывание которых выполняется совместно |
| Рефакторинг | Внесение изменений в программный код, направленные на его улучшение и несвязанные с изменением функциональности программного продукта |
| Средства автоматизации процесса разработки | Набор программных средств, предназначенных для автоматизации деятельности команды разработки на всех этапах процесса разработки. К основным средствам автоматизации процесса разработки относятся: система управления версиями ПО, система управления задачами, сервер непрерывной интеграции, система внутреннего документирования проекта. |
| Функциональное тестирование | Тестирование ПО с целью проверки реализованных функциональных требований, выполнения прикладных функций, решающих задачи пользователя |
Целью процесса проведения тестирования ПО является обеспечение стабильно высокого качества новых версий программных продуктов, за счет проведения тестирования выпускаемых версий ПО, выполняемого в автоматическом и ручном режимах.
Действие регламента распространяется на все программные продукты, выпускаемые компанией.
Для достижения целей процесса управления разработкой ПО должны соблюдаться следующие базовые принципы:
В процессе проведения тестирования участвуют следующие специалисты:
В рамках работ по выпуску релизов ПО тестирование выполняется в следующих режимах:
Функциональное тестирование проводится при добавлении новой или изменении существующей функциональности, с целью проверки доработанного программного
обеспечения новым или измененным функциональным требованиям. Функциональное тестирование может проводиться как в ручном, так и в автоматическом режиме.
Нагрузочное тестирование проводится с целью выявить соответствие ПО требованиям производительности, определения пиковой и средней нагрузки, стабильности системы в целом.
Регрессионное тестирование проводится с целью проверки устойчивой работы обновленной версии с учетом новой функциональности и/или исправления дефектов. Регрессионное тестирование может проводиться как в ручном, так и в автоматическом режиме.
Интеграционное тестирование проводится в случае необходимости провести проверку корректности взаимодействия смежных систем друг с другом.
Регрессионное и интеграционное тестирование выполняются в ходе проведения функционального тестирования в автоматическом и ручном режимах.
Работы по проведению функционального, интеграционного и регрессионного тестирования осуществляют специалисты группы тестирования или группы разработки.
Для проведения Unit-тестирования разработчики создают Unit-тесты с использованием специализированных фреймворков (JUnit, NUnit и т.д.). Unit-тесты создаются по факту внесения любых изменений в программный код, с целью подтверждения корректности работы выполненных изменений, а также отсутствия негативного влияния сделанных изменений на другие модули программной системы.
Как минимум, Unit-тесты должны покрывать все публичные методы модуля (класса).
Unit-тест запускается разработчиком для проверки корректности разработанного программного кода.
Все разработанные Unit-тесты запускаются в пакетном режиме сервером непрерывной интеграции в процессе выполнения сборки, после размещения изменений программного кода в системе управления версиями ПО. Сборка считается выполненной успешно только после успешного выполнения полного пакета Unit-тестов.
Для проведения автоматического функционального тестирования специалистами группы тестирования создаются тесты с использованием специализированных средств для разработки функциональных тестов.
В рамках функционального тестирования выполняется проверка корректности работы функций пользователя, как каждой в отдельности, так и при их совместной работе, например, в рамках автоматизации бизнес-процесса.
В рамках автоматического функционального тестирования также проводится проверка корректности работы интерфейса пользователя.
Работа функций пользователя считается корректной, в случае если она соответствует функциональности, заявленной в Техническом задании на разработку программной системы.
Ручное функциональное тестирование выполняется в целях, аналогичных автоматическому, но тестирование проводят специалисты группы тестирования на основании ПМИ.
К ручному функциональному тестированию, также могут быть привлечены аналитики группы разработки и бизнес-аналитики в рамках проверки корректности работы прикладных модулей.
Нагрузочное тестирование выполняется с целью проверки соответствия выпускаемой версии ПО показателям назначения, определенным в Техническом задании, в части производительности и устойчивости к нагрузкам.
Нагрузочное тестирование выполняется с использованием нагрузочных тестов, разработанных с использованием специализированного программного обеспечения (Apache JMeter и т.д.) специалистами группы тестирования.
Запуск тестов может выполняться в ручном режиме, в ходе мероприятий по выпуску релизов, а также в автоматическом режиме по расписанию с использованием сервера непрерывной интеграции.
Разработку и/или актуализацию ПМИ при выпуске очередного релиза инициирует руководитель проекта. Доработка ПМИ выполняется аналитиком группы разработки.
Актуализация ПМИ проводится аналитиком группы разработки по результатам внесения изменений в ПО перед выпуском новой версии ПО.
В состав ПМИ должны входить задачи, выполненные на момент завершения работы над текущей версией ПО.
Источником для состава тестируемых функций является система управления задачами.
УТВЕРЖДЕН
приказом ООО «ФТ-СОФТ» от 15.06.2025 № 38
пользователя из утвержденного перечня Исполнителю в электронной или устной форме, в котором фиксируется возникшая проблема или вопрос, подлежащие решению.
основных технических параметров, указанных в технической документации, выполнение которых обеспечивает нормальное применение ПО по назначению и использование для выполнения необходимых функций.
восстановления работоспособности ПО.
ПРИМЕЧАНИЕ: заявленный Конечным пользователем при открытии Заявки приоритет может быть изменен специалистом Исполнителя в случае уточнения в ходе выполнения Заявки фактического влияния заявленной проблемы на работоспособность ПО, а также в случае снижения влияния проблемы на работоспособность ПО.
Контактная информация указана в п.3.1.
Заявка подается по установленной форме (Приложение № 2), при заполнении которой указываются следующие сведения:
рекомендованные правообладателем, и использовать только программное обеспечение, на которое у Конечного пользователя имеются надлежащим образом оформленные права с уведомлением Исполнителя за 1 (Один) рабочий день до проведения изменений. Изменения, необходимые для работы с новыми версиями других компонентов (не относящихся к ПО), производятся за счет Конечного пользователя.
ПРОГРАММА ТЕХНИЧЕСКОЙ ПОДДЕРЖКИ
| Объем услуг | Сервисный Центр Консультации Восстановление работоспособности ПО Внесение изменений в текущую конфигурацию системы Профилактическое обслуживание |
|---|---|
| Сервисный центр | Время обслуживания: 24х7 Услуга включает в себя: учет Заявок от Конечного пользователя в АИС; информирование Конечного пользователя о регистрации, изменении статуса, закрытии Заявки; хранение информации об обслуживаемой инфраструктуре. При внесении изменений в инфраструктуру информация в системе изменяется, что позволяет специалистам оперативно получать доступ к информации о текущем состоянии ПО, актуальных установленных версиях продуктов. |
| Консультации | Время обслуживания: 12х7 Время реакции: в течение 4 (четырех) часов Способы обработки заявок: дистанционно Услуга предоставляет возможность получения консультаций специалистов по различным техническим вопросам, связанным с эксплуатацией, конфигурированием, управлением исправным ПО. Консультации предоставляются по вопросам, ответ на который отсутствует в переданной Конечному пользователю эксплуатационной документации. |
| Восстановление работоспособности ПО | Время обслуживания: 12х7 Способы обработки заявок: дистанционно, удаленно Услуга включает в себя: обновление программного обеспечения; содействие Конечному пользователю при проведении изменений в конфигурации компонентов системы, а также анализ негативного воздействия планируемых изменений. |
Форма Заявки
| Номер договора | |
|---|---|
| Наименование компании Конечный пользователь | |
| Обратившийся | ФИО, телефон, электронная почта. |
| Суть Заявки | Не более 2-3 предложений, выражающих суть вопроса или проблемы. |
| Описание Заявки | Дополнительная информация, которая помогает раскрыть суть проблемы или вопроса (например, текст ошибки, которую видит пользователь, или снимок экрана). Рекомендуется также предоставить следующую информацию: дата обнаружения неисправности; периодичность появление неисправности; предпринятые действия; если программное обеспечение находится в эксплуатации, когда возможна остановка для проведения работ. |
| Программное обеспечение | Детальная информация: о программном обеспечении: наименование, номер версии. |
| Приоритет | Критичный приоритет – программное обеспечение не работает, что приводит к остановке всех или одной из обслуживаемых систем. Высокий приоритет – частично нарушена работоспособность, либо значительно снижена отказоустойчивость или производительность программного обеспечения Конечного пользователя, но при этом создается критическая ситуация, при которой полная потеря работоспособности всего технологического процесса Конечного пользователя может произойти в любой момент. Средний приоритет – незначительно нарушена работоспособность, либо производительность программного обеспечения, что не оказывает влияния на бизнес Конечного пользователя. Низкий приоритет – ошибка, которая не существенно ограничивает использование программного обеспечения для выполнения необходимых функций, либо требуется консультация специалиста по техническим вопросам, связанным с эксплуатацией, конфигурированием, управлением исправным программным обеспечением, поиском причины возникновения неисправности. |
Форма акта
| выполненных работ по Заявке № |
|---|
г. _________________ «_____»___________ 202__г.
| КОНЕЧНЫЙ ПОЛЬЗОВАТЕЛЬ: | |||
|---|---|---|---|
| ИСПОЛНИТЕЛЬ: | ИСПОЛНИТЕЛЬ: | ||
| Настоящий Акт составлен представителем Исполнителя: | Настоящий Акт составлен представителем Исполнителя: | Настоящий Акт составлен представителем Исполнителя: | |
| и представителем Конечного пользователя: | и представителем Конечного пользователя: | и представителем Конечного пользователя: | |
| в том, что Исполнителем выполнены работы на следующем программном обеспечении: | в том, что Исполнителем выполнены работы на следующем программном обеспечении: | в том, что Исполнителем выполнены работы на следующем программном обеспечении: | |
| Выявлены следующие неисправности: | Выявлены следующие неисправности: | Выявлены следующие неисправности: | |
| Выполнены следующие работы: | Выполнены следующие работы: | Выполнены следующие работы: | |
| Выданы следующие рекомендации: | Выданы следующие рекомендации: | Выданы следующие рекомендации: | |
| Специалисты, выполняющие работы: | Специалисты, выполняющие работы: | Специалисты, выполняющие работы: | Специалисты, выполняющие работы: | Специалисты, выполняющие работы: | Специалисты, выполняющие работы: | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Дата и время выполнения работ: с | Дата и время выполнения работ: с | Дата и время выполнения работ: с | Дата и время выполнения работ: с | Дата и время выполнения работ: с | по | |||||||
| Длительность: | ч. | мин. | мин. | мин. | Фактическая трудоемкость работ (чел.ч.): | Фактическая трудоемкость работ (чел.ч.): | Фактическая трудоемкость работ (чел.ч.): | |||||
| Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | Замечания Исполнителя: | |
| Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | Замечания Конечного пользователя и оценка качества работ: | |
Стороны подтверждают достоверность приведенной в Акте информации по объему, длительности, трудоемкости работ, дополнительных замечаний не имеют.
Подписи Сторон
| от Исполнителя: | от Конечного пользователя: |
|---|---|
| __________________/________________ / «____» _____________________ 202__ г. | __________________/________________ / «____» _____________________ 202__ г. |