ГОССТАНДАРТ РОССИИ - Процессы жизненного цикла программных средств
d. требования безопасности, включая требования, относящиеся к методам эксплуатации и сопровождения, воздействию окружающей среды и травмобезопасности персонала;
e. требования защиты, включая требования, относящиеся к допустимой точности информации;
f. эргономические требования, включая требования, относящиеся к ручным операциям, взаимодействию «человек-машина», персоналу и областям, требующим концентрации внимания человека, связанным с чувствительностью объекта к ошибкам человека и обученности персонала;
g. требования к определению данных и базе данных;
h. требования по вводу в действие и приемке поставляемого программного продукта на объекте(ах) эксплуатации и сопровождения;
i. требования к документации пользователя;
j. требования к эксплуатации объекта пользователем;
k. требования к обслуживанию пользователя.
5.3.4.2 Разработчик должен оценить требования к программным средствам по следующим критериям (при этом результаты оценок должны быть документально оформлены):
a. учет требований к системе и проекту системы;
b. внешняя согласованность с требованиями к системе;
c. внутренняя согласованность требований к объектам между собой;
d. тестируемость требований;
e. выполнимость программного проекта;
f. возможность эксплуатации и сопровождения.
5.3.4.3 Разработчик должен провести совместный анализ(ы) в соответствии с подразделом 6.6. После успешного проведения анализа(ов) должно быть зафиксировано состояние требований к программному объекту.
5.3.5 Проектирование программной архитектуры
Данная работа состоит из следующих задач применительно к каждому программному объекту архитектуры (или объекту программной конфигурации, если он определен):
5.3.5.1 Разработчик должен трансформировать требования к программному объекту в архитектуру, которая описывает общую структуру объекта и определяет компоненты программного объекта. Должно быть обеспечено распределение всех требований к программному объекту между его компонентами и дальнейшее их уточнение с точки зрения облегчения технического проектирования. Архитектура программного объекта должна быть документально оформлена.
5.3.5.2 Разработчик должен разработать и документально оформить общий (эскизный) проект внешних интерфейсов программного объекта и интерфейсов между компонентами объекта.
5.3.5.3 Разработчик должен разработать и документально оформить общий (эскизный) проект базы данных.
5.3.5.4 Разработчик должен разработать и документально оформить предварительные версии документации пользователя.
5.3.5.5 Разработчик должен определить и документально оформить предварительные общие требования к испытаниям (тестированию) программного объекта и график сборки программного продукта.
5.3.5.6 Разработчик должен оценить архитектуру программного объекта и эскизные проекты интерфейсов и базы данных по следующим критериям (при этом результаты оценок должны быть документально оформлены):
a. учет требований к программному объекту;
b. внешняя согласованность с требованиями к программному объекту;
c. внутренняя согласованность между компонентами программного объекта;
d. соответетвие методов проектирования и используемых стандартов;
e. возможность технического проектирования; возможность эксплуатации и сопровождения.
5.3.5.7 Разработчик должен провести совместный анализ(ы) в соответствии с подразделом 6.6.
5.3.6 Техническое проектирование программных средств
Данная работа состоит из следующих задач применительно к каждому программному объекту архитектуры (или объекту программной конфигурации, если он определен):
5.3.6.1 Разработчик должен разработать технический проект для каждого компонента программного объекта. Компоненты программного объекта должны быть уточнены на уровне программных модулей, которые можно программировать (кодировать), компилировать и тестировать независимо. Должно быть обеспечено распределение технических требований к компонентам программного объекта между программными модулями. Технический проект должен быть документально оформлен.
5.3.6.2 Разработчик должен разработать и документально оформить технический проект внешних интерфейсов программного объекта, интерфейсов между компонентами программного объекта и между программными модулями. Технический проект интерфейсов должен обеспечить выполнение программирования без потребности в дополнительной информации.
5.3.6.3 Разработчик должен разработать и документально оформить технический проект базы данных.
5.3.6.4 Разработчик должен, при необходимости, уточнить документацию пользователя.
5.3.6.5 Разработчик должен определить и документально оформить требования к испытаниям и программе испытаний программных модулей. Требования к испытаниям должны определять воздействие на программный модуль в пределах установленных к нему требований.
5.3.6.6 Разработчик должен уточнить общие требования к испытанию (тестированию) и программе сборки программных средств.
5.3.6.7 Разработчик должен оценить технический проект и требования к тестированию по следующим критериям (при этом результаты оценок должны быть документально оформлены):
a. учет требований к программному объекту;
b. внешнее соответствие спроектированной архитектуре;
c. внутренняя согласованность между компонентами программного объекта и программными модулями;
d. соответствие методов проектирования и используемых стандартов;
e. возможность тестирования; возможность эксплуатации и сопровождения.
5.3.6.8 Разработчик должен провести совместный анализ(ы) в соответствии с подразделом 6.6.
5.3.7 Программирование и тестирование программных средств
Данная работа состоит из следующих задач применительно к каждому программному объекту архитектуры (или объекту программной конфигурации, если он определен):
5.3.7.1 Разработчик должен разработать и документально оформить следующие продукты:
a. каждый программный модуль и базу данных;
b. процедуры испытаний (тестирования) и данные для тестирования каждого программного модуля и базы данных.
5.3.7.2 Разработчик должен протестировать каждый программный модуль и базу данных, гарантируя, что они удовлетворяют установленным требованиям. Результаты тестирования должны быть документально оформлены.
5.3.7.3 Разработчик, при необходимости, должен уточнить документацию пользователя.
5.3.7.4 Разработчик должен уточнить общие требования к тестированию и программу сборки программных средств.
5.3.7.5 Разработчик должен оценить запрограммированные элементы программного объекта и результаты их тестирования по следующим критериям (при этом результаты оценок должны быть документально оформлены):
a. учет требований к программному объекту и проекту объекта в целом;
b. внешнее соответствие требованиям и проекту программного объекта;
c. внутреннее соответствие между требованиями к программным модулям;
d. тестовое покрытие всех модулей;
e. соответствие методов программирования и используемых для них стандартов;
f. возможность сборки и тестирования;
h. возможность эксплуатации и сопровождения.
5.3.8 Сборка программных средств
Данная работа состоит из следующих задач применительно к каждому программному объекту архитектуры (или объекту программной конфигурации, если он определен):
5.3.8.1 Разработчик должен разработать план сборки для объединения программных модулей и компонентов в программный объект. План должен включать требования к испытаниям (тестированию), процедуры тестирования, контрольные данные, обязанности исполнителя и программу испытаний. План должен быть документально оформлен.
5.3.8.2 Разработчик должен собрать программные модули и компоненты и протестировать их как продукты, разработанные в соответствии с планом сборки. Должно быть обеспечено, чтобы каждая сборка удовлетворяла требованиям к программному объекту и чтобы программный объект был полностью собран в результате данной работы. Результаты сборки и тестирования должны быть документально оформлены.
5.3.8.3 Разработчик, при необходимости, должен уточнить документацию пользователя.
5.3.8.4 Разработчик должен разработать и документально оформить для каждого квалификационного требования к программному объекту — набор тестов, контрольных примеров (исходные и выходные данные, критерии тестирования), процедуры испытаний для проведения квалификационных испытаний программных средств. Разработчик должен обеспечить, чтобы собранный программный объект был готов к квалификационным испытаниям.