ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.11.2023
Просмотров: 56
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Существует целый ряд стандартов, регламентирующих ЖЦ программного обеспечения ИС, а в некоторых случаях и процессы разработки. • Значительный вклад в теорию проектирования и разработки информационных систем внесла компания IBM, предложив еще в середине 1970-х годов методологию BSP (Business System Planning – методология организационного планирования). ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 28 • Наиболее известные стандарты: • ГОСТ 34.601-90 • ISO/IEC 12207:1995 • Custom Development Method (CDM) по разработке прикладных информационных систем (методика Oracle) • Rational Unified Process (RUP) • Microsoft Solution Framework (MSF) • Extreme Programming (XP). ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 29 • ГОСТ 34.601-90 – распространяется на автоматизированные системы и устанавливает стадии и этапы их создания. Кроме того, в стандарте содержится описание содержания работ на каждом этапе. Стадии и этапы работы, закрепленные в стандарте, в большей степени соответствуют каскадной модели жизненного цикла. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 30 • ISO/IEC 12207:1995 – стандарт на процессы и организацию жизненного цикла. Распространяется на все виды заказного программного обеспечения. • Стандарт не содержит описания фаз, стадий и этапов. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 31 • Custom Development Method (CDM) по разработке прикладных информационных систем (методика Oracle) – технологический материал, детализированный до уровня заготовок проектных документов, рассчитанных на использование в проектах с применением Oracle. • Применяется CDM для классической модели ЖЦ (предусмотрены все работы/задачи и этапы), а также для технологий "быстрой разработки" (Fast Track) или "облегченного подхода", рекомендуемых в случае малых проектов. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 32 • Rational Unified Process (RUP) – итеративная модель разработки, содержит четыре фазы: начало, исследование, построение и внедрение. • Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. • Суть работы в рамках RUP – это создание и сопровождение моделей на базе UML. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 33 • Microsoft Solution Framework (MSF) – сходна с RUP, так же включает четыре фазы:анализ, проектирование, разработка, стабилизация, является итерационной, предполагает использование объектноориентированного моделирования. MSF в сравнении с RUP в большей степени ориентирована на разработку бизнес приложений. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 34 • Extreme Programming (XP) – экстремальное программирование (самая новая среди рассматриваемых методологий) сформировалось в 1996 году. В основе методологии командная работа, эффективная коммуникация между заказчиком и исполнителем в течение всего проекта по разработке ИС, а разработка ведется с использованием последовательно дорабатываемых прототипов. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 35 В соответствии с базовым международным стандартом ISO/IEC 12207 все процессы ЖЦ программного обеспечения ИС делятся на три группы: • Основные процессы: приобретение; поставка; разработка; эксплуатация; сопровождение. • Вспомогательные процессы: документирование; управление конфигурацией; обеспечение качества; разрешение проблем; аудит; аттестация; совместная оценка; верификация. • Организационные процессы: создание инфраструктуры; управление; обучение; усовершенствование.
Жизненным циклом программного обеспечения называют период от момента появления идеи создания некоторого программного обеспечения до момента завершения его поддержки фирмой-разработчиком или фирмой, выполнявшей сопровождение.
Состав процессов жизненного цикла регламентируется международным стандартом ISO/IEC 12207: 1995 «Information Technologe — Software Life Cycle Processes» («Информационные технологии — Процессы жизненного цикла программного обеспечения»). ISO — International Organization for Standardization — Международная организация по стандартизации. IEC -International Electrotechnical Commission — Международная комиссия по электротехнике.
Этот стандарт описывает структуру жизненного цикла программного обеспечения и его процессы. Процесс жизненного цикла определяется как совокупность взаимосвязанных действий, преобразующих некоторые входные данные в выходные. На рис. 1.9 представлены процессы жизненного цикла по указанному стандарту. Каждый процесс характеризуется определенными задачами и методами их решения, а также исходными данными и результатами.
Процесс разработки (development process) в соответствии со стандартом предусматривает действия и задачи, выполняемые разработчиком, и охватывает работы по созданию программного обеспечения и его компонентов в соответствии с заданными требованиями, включая оформление проектной и эксплуатационной документации, а также подготовку материалов, необходи-
Рис. 1.9.Структура процессов жизненного цикла программного
обеспечения
мых для проверки работоспособности и соответствия качества программных продуктов, материалов, необходимых для обучения персонала, и т. д. По стандарту процесс разработки включает следующие действия:
• подготовительную работу — выбор модели жизненного цикла (см. да
лее), стандартов, методов и средств разработки, а также составление плана
работ;
• анализ требований к системе — определение ее функциональных воз
можностей, пользовательских требований, требований к надежности и безо
пасности, требований к внешним интерфейсам и т. д.;
• проектирование архитектуры системы — определение состава необ
ходимого оборудования, программного обеспечения и операций, выполняе
мых обслуживающим персоналом;
• анализ требований к программному обеспечению — определение функ
циональных возможностей, включая характеристики производительности,
среды функционирования компонентов, внешних интерфейсов, специфика-
ций надежности и безопасности, эргономических требований, требований к используемым данным, установке, приемке, пользовательской документации, эксплуатации и сопровождению;
• проектирование архитектуры программного обеспечения — определе
ние структуры программного обеспечения, документирование интерфейсов
его компонентов, разработку предварительной версии пользовательской до
кументации, а также требований к тестам и плана интеграции;
• детальное проектирование программного обеспечения — подробное
описание компонентов программного обеспечения и интерфейсов между ни
ми, обновление пользовательской документации, разработка и документиро
вание требований к тестам и плана тестирования компонентов программно
го обеспечения, обновление плана интеграции компонентов;
• кодирование и тестирование программного обеспечения — разработку
и документирование каждого компонента, а также совокупности тестовых
процедур и данных для их тестирования, тестирование компонентов, обнов
ление пользовательской документации, обновление плана интеграции про
граммного обеспечения;
• интеграцию программного обеспечения — сборку программных компо
нентов в соответствии с планом интеграции и тестирование программного
обеспечения на соответствие квалификационным требованиям, представля
ющих собой набор критериев или условий, которые необходимо выполнить,
чтобы квалифицировать программный продукт, как соответствующий своим
спецификациям и готовый к использованию в заданных условиях эксплуата
ции;
• квалификационное тестирование программного обеспечения — тести
рование программного обеспечения в присутствии заказчика для демон
страции его соответствия требованиям и готовности к эксплуатации; при
этом проверяется также готовность и полнота технической и пользователь
ской документации
• интеграцию системы — сборку всех компонентов системы, включая
программное обеспечение и оборудование;
• квалификационное тестирование системы — тестирование системы на
соответствие требованиям к ней и проверка оформления и полноты докумен
тации;
• установку программного обеспечения — установку программного обес
печения на оборудовании заказчика и проверку его работоспособности;
• приемку программного обеспечения — оценку результатов квалифика
ционного тестирования программного обеспечения и системы в целом и до
кументирование результатов оценки совместно с заказчиком, окончательную
передачу программного обеспечения заказчику.
Указанные действия можно сгруппировать, условно выделив следующие основные этапы разработки программного обеспечения [10] (в скобках
указаны соответствующие стадии разработки по ГОСТ 19.102-77 «Стадии разработки»):
• постановка задачи (стадия «Техническое задание»);
• анализ требований и разработка спецификаций (стадия «Эскизный
проект»);
• проектирование (стадия «Технический проект»);
• реализация (стадия «Рабочий проект»).
Традиционно разработка также включала этап сопровождения (началу этого этапа соответствует стадия «Внедрение» по ГОСТ). Однако по международному стандарту в соответствии с изменениями, произошедшими в индустрии разработки программного обеспечения, этот процесс теперь рассматривается отдельно.
Условность выделения этапов связана с тем, что на любом этапе возможно принятие решений, которые потребуют пересмотра решений, принятых ранее (см. § 1.5).
Постановка задачи.В процессе постановки задачи четко формулируют назначение программного обеспечения и определяют основные требования к нему. Каждое требование представляет собой описание необходимого или желаемого свойства программного обеспечения. Различают функциональные требования, определяющие функции, которые должно выполнять разрабатываемое программное обеспечение, и эксплуатационные требования,
Реферат: Жизненный цикл и этапы разработки программного обеспечения
Жизненным циклом программного обеспечения называют период от момента появления идеи создания некоторого программного обеспечения до момента завершения его поддержки фирмой-разработчиком или фирмой, выполнявшей сопровождение.
Состав процессов жизненного цикла регламентируется международным стандартом ISO/IEC 12207: 1995 «Information Technologe — Software Life Cycle Processes» («Информационные технологии — Процессы жизненного цикла программного обеспечения»). ISO — International Organization for Standardization — Международная организация по стандартизации. IEC -International Electrotechnical Commission — Международная комиссия по электротехнике.
Этот стандарт описывает структуру жизненного цикла программного обеспечения и его процессы. Процесс жизненного цикла определяется как совокупность взаимосвязанных действий, преобразующих некоторые входные данные в выходные. На рис. 1.9 представлены процессы жизненного цикла по указанному стандарту. Каждый процесс характеризуется определенными задачами и методами их решения, а также исходными данными и результатами.
Процесс разработки (development process) в соответствии со стандартом предусматривает действия и задачи, выполняемые разработчиком, и охватывает работы по созданию программного обеспечения и его компонентов в соответствии с заданными требованиями, включая оформление проектной и эксплуатационной документации, а также подготовку материалов, необходи-
Рис. 1.9.Структура процессов жизненного цикла программного
обеспечения
мых для проверки работоспособности и соответствия качества программных продуктов, материалов, необходимых для обучения персонала, и т. д. По стандарту процесс разработки включает следующие действия:
• подготовительную работу — выбор модели жизненного цикла (см. да
лее), стандартов, методов и средств разработки, а также составление плана
работ;
• анализ требований к системе — определение ее функциональных воз
можностей, пользовательских требований, требований к надежности и безо
пасности, требований к внешним интерфейсам и т. д.;
• проектирование архитектуры системы — определение состава необ
ходимого оборудования, программного обеспечения и операций, выполняе
мых обслуживающим персоналом;
• анализ требований к программному обеспечению — определение функ
циональных возможностей, включая характеристики производительности,
среды функционирования компонентов, внешних интерфейсов, специфика-
ций надежности и безопасности, эргономических требований, требований к используемым данным, установке, приемке, пользовательской документации, эксплуатации и сопровождению;
• проектирование архитектуры программного обеспечения — определе
ние структуры программного обеспечения, документирование интерфейсов
его компонентов, разработку предварительной версии пользовательской до
кументации, а также требований к тестам и плана интеграции;
• детальное проектирование программного обеспечения — подробное
описание компонентов программного обеспечения и интерфейсов между ни
ми, обновление пользовательской документации, разработка и документиро
вание требований к тестам и плана тестирования компонентов программно
го обеспечения, обновление плана интеграции компонентов;
• кодирование и тестирование программного обеспечения — разработку
и документирование каждого компонента, а также совокупности тестовых
процедур и данных для их тестирования, тестирование компонентов, обнов
ление пользовательской документации, обновление плана интеграции про
граммного обеспечения;
• интеграцию программного обеспечения — сборку программных компо
нентов в соответствии с планом интеграции и тестирование программного
обеспечения на соответствие квалификационным требованиям, представля
ющих собой набор критериев или условий, которые необходимо выполнить,
чтобы квалифицировать программный продукт, как соответствующий своим
спецификациям и готовый к использованию в заданных условиях эксплуата
ции;
• квалификационное тестирование программного обеспечения — тести
рование программного обеспечения в присутствии заказчика для демон
страции его соответствия требованиям и готовности к эксплуатации; при
этом проверяется также готовность и полнота технической и пользователь
ской документации
• интеграцию системы — сборку всех компонентов системы, включая
программное обеспечение и оборудование;
• квалификационное тестирование системы — тестирование системы на
соответствие требованиям к ней и проверка оформления и полноты докумен
тации;
• установку программного обеспечения — установку программного обес
печения на оборудовании заказчика и проверку его работоспособности;
• приемку программного обеспечения — оценку результатов квалифика
ционного тестирования программного обеспечения и системы в целом и до
кументирование результатов оценки совместно с заказчиком, окончательную
передачу программного обеспечения заказчику.
Указанные действия можно сгруппировать, условно выделив следующие основные этапы разработки программного обеспечения [10] (в скобках
указаны соответствующие стадии разработки по ГОСТ 19.102-77 «Стадии разработки»):
• постановка задачи (стадия «Техническое задание»);
• анализ требований и разработка спецификаций (стадия «Эскизный
проект»);
• проектирование (стадия «Технический проект»);
• реализация (стадия «Рабочий проект»).
Традиционно разработка также включала этап сопровождения (началу этого этапа соответствует стадия «Внедрение» по ГОСТ). Однако по международному стандарту в соответствии с изменениями, произошедшими в индустрии разработки программного обеспечения, этот процесс теперь рассматривается отдельно.
Условность выделения этапов связана с тем, что на любом этапе возможно принятие решений, которые потребуют пересмотра решений, принятых ранее (см. § 1.5).
Постановка задачи.В процессе постановки задачи четко формулируют назначение программного обеспечения и определяют основные требования к нему. Каждое требование представляет собой описание необходимого или желаемого свойства программного обеспечения. Различают функциональные требования, определяющие функции, которые должно выполнять разрабатываемое программное обеспечение, и эксплуатационные требования,