Жизненным циклом (ЖЦ) ПО называют период от мо-мента появления идеи создания ПО до момента завершения его поддержки разработчиком или фирмой, выполнявшей сопровождение.
ЖЦ состоит из ряда процессов, состав которых регла-ментируется стандартом ISO/IEC 12207: 1995.
Процесс ЖЦ определяется как совокупность взаимо-связанных действий, преобразующих некоторые входные данные в выходные.
По стандарту процесс разработки включает следующие действия:
• подготовительную работу–выбор модели ЖЦ, стандартов, методов и средств разработки, а также составление плана работ;
• анализ требований к системе–определение ее функциональных возможностей, пользовательских требований, требований к надежности и безопасности, требований к внешним интерфейсам и т.д.;
• проектирование архитектуры системы–определение состава необходимого оборудования, ПО;
•анализ требований к ПО–определение функциональных возможностей, среды функционирования компонентов, внешних интерфейсов, спецификаций надежности и безопасности, эргономических требований, требований к используемым данным, установке, приемке, пользовательской документации, эксплуатации и сопровождению;
• проектирование архитектуры ПО–определение структуры ПО, документирование интерфейсов его компонентов, разработку предварительной версии пользовательской документации, а также требований к тестам и плана интеграции;
• детальное проектирование ПО – подробное описание компонентов ПО и интерфейсов между ними, обновление пользовательской документации, разработка и документирование требований к тестам и плана тестирования компонентов программного обеспечения, обновление плана интеграции компонентов;
• кодирование и тестирование ПО – разработку и документирование каждого компонента, а также совокупности тестовых процедур и данных для их тестирования, тестирование компонентов, обновление пользовательской документации, обновление плана интеграции программного обеспечения;
• интеграцию ПО–сборку программных компонентов в соответствии с планом интеграции и тестирование программного обеспечения на соответствие квалификационным требованиям, представляющих собой набор критериев или условий, которые необходимо выполнить, чтобы квалифицировать программный продукт, как соответствующий своим спецификациям и готовый к использованию в заданных условиях эксплуатации;
• квалификационное тестирование ПО–тестирование ПО в присутствии заказчика для демонстрации его соответствия требованиям и готовности к эксплуатации; при этом проверяется также готовность и полнота технической и пользовательской документации
• интеграцию системы–сборку всех компонентов системы, включая ПО и оборудование;
• квалификационное тестирование системы–тестирование системы на соответствие требованиям к ней и проверка оформления и полноты документации;
• установку программного обеспечения–установку программного обеспечения на оборудовании заказчика и проверку его работоспособности;
• приемку программного обеспечения–оценку результатов квалификационного тестирования программного обеспечения и системы в целом и документирование результатов оценки совместно с заказчиком, окончательную передачу программного обеспечения заказчику.
· ГОСТ 19.102-77 «Стадии разработки»
Указанные действия можно сгруппировать, выделив следующие основные этапы разработки ПО (ГОСТ 19.102-77 «Стадии разработки»):
• постановка задачи (стадия «Техническое задание»);
• анализ требований и разработка спецификаций (стадия «Эскизный проект»);