Описание жизненного цикла ПО
1. Общие положения
Настоящий документ описывает процессы, обеспечивающие поддержание жизненного цикла программного обеспечения “Новогис”.
2. Процессы жизненного цикла ПО “Новогис”
2.1. Жизненный цикл ПО “Новогис”
Жизненный цикл ПО включает в себя следующие основные этапы:
- анализ требований,
- проектирование;
- программирование;
- тестирование;
Схема жизненного цикла ПО приведена ниже (Рисунок 1)

2.2. Определение жизненного цикла ПО
Проект, как правило, определяет один или более жизненных циклов ПО посредством выбора мероприятий для каждого из процессов, установления их последовательности и назначения ответственных за эти мероприятия.
В конкретном проекте последовательность этих процессов определяется его характерными особенностями: составом выполняемых функций и сложностью системы, объёмом и сложностью ПО, стабильностью требований, использованием результатов предыдущих разработок, концепциями, положенными в основу разработки, наличием аппаратного обеспечения.
Обычная последовательность процессов в цикле, следующая: требования, проект, кодирование и интеграция.
Процессы жизненного цикла ПО могут иметь итерационный характер, то есть, могут повторяться. Время выполнения и степень уточнения при совершении итерационных шагов изменяются в зависимости от степени наращивания функций в процессе разработки, сложности, степени уточнения требований, наличия аппаратуры, наличия обратной связи в предшествующие процессы и от других особенностей проекта.
Различные этапы жизненного цикла ПО, выбранного для реализации, связаны между собой последовательным процессом интеграции и мероприятиями процесса верификации.
2.3. Критерии перехода между процессами
Критерии используются для определения, можно ли начинать или повторно начинать некоторый процесс. Каждый процесс жизненного цикла ПО определяет мероприятия, связанные с обработкой входных данных для получения выходных данных.
Процесс может порождать обратные связи в другие процессы, а также использовать обратные связи из других процессов. Формирование обратной связи включает решение вопросов, каким образом информация распознается, контролируется и используется для принятия решения принимающим процессом. Примером обратной связи являются сообщения о проблемах.
Критерии перехода зависят от запланированной последовательности процессов разработки ПО и интегральных процессов, на них также может влиять уровень ПО. Примерами критериев перехода могут быть следующие:
- рассмотрения процесса верификации завершены,
- входным объектом является идентифицированная единица конфигурации,
- анализ трассируемости для входного объекта завершен.
Если удовлетворены критерии перехода для данного вида процесса, то нет необходимости в том, чтобы к моменту его начала были получены все входные данные.
3. Проектирование, разработка и тестирование ПО
Проектирование, разработка и тестирование ПО являются основными шагами в создании программной части, удовлетворяющей всем необходимым требованиям.
3.1. Анализ системных требований
Анализ системных требований заключается в установлении требований к программным элементам системы и включает в себя:
- анализ требований к программным элементам системы и их интерфейсам;
- корректность и тестируемость требований к программным элементам;
- проверка совместимости и прослеживаемости между требованиями к программным средствам и требованиями к системе в целом;
- определение приоритетов реализации требований к программным средствам;
- приемка и обновление требований к программным средствам (по мере необходимости);
- оценка изменений в требованиях к программным средствам по стоимости и графикам работ;
- доведение требований к программным средствам до сведения заинтересованных сторон.
Анализ требований к программным элементам системы и их интерфейсам включает в себя:
- спецификацию функциональных характеристик и возможностей, включая эксплуатационные, физические характеристики и условия окружающей среды, при которых будет применяться программная составная часть;
- внешние интерфейсы к программной составной части;
- требования к документации пользователя;
- операции пользователя и требования к их выполнению;
Ответственные за организацию работ: Руководитель ИТ отдела
3.2. Проектирование архитектуры ПО
Проектирования архитектуры ПО заключается в обеспечении проекта для программных средств, которые реализуются и могут быть верифицированы относительно требований.
Проектирования архитектуры ПО включает в себя:
- разработку проекта архитектуры ПО и установку базовых линий, описывающих составные части ПО, которые будут реализовывать требования к программным средствам;
- определение внутренних и внешних интерфейсов каждой программной составной части;
- установление согласованности и прослеживаемости между требованиями к ПО и реализуемому проекту в целом.
Руководитель группы разработки и разработчик (разработчики) должны оценить архитектуру программной составной части, проекты по интерфейсам и базе данных, учитывая следующие критерии:
- прослеживаемость к требованиям программной составной части;
- внешняя согласованность с требованиями программной составной части;
- внутренняя согласованность между программными компонентами;
Ответственный сторона: руководитель ИТ отдела.
3.3. Реализация (программирование) ПО
Реализация (программирование) ПО заключается в создании исполняемых программных блоков, которые должным образом отражают проектирование ПО.
Реализация (программирование) ПО включает в себя:
- определение критериев верификации для всех программных блоков относительно требований;
- изготовление программных блоков, определенных проектом;
- установление совместимости и прослеживаемости между программными блоками, требованиями и проектом;
- завершение верификация программных блоков относительно требований и проекта. Ответственный сторона: Руководитель ИТ отдела.
3.4. Тестирование ПО
Тестирование (квалификационное тестирование) ПО заключается в подтверждении того, что комплексированный программный продукт удовлетворяет установленным требованиям.
Тестирование (квалификационное тестирование) ПО включает в себя:
- определение критериев для комплексированных программных средств с целью демонстрации соответствия с требованиями к программным средствам;
- верификация комплексированных программных средств с использованием определенных критериев;
- запись (регистрация) результатов тестирования
Ответственный сторона: Руководитель ИТ отдела.