ЛР2. Отчет по лабораторной работе Модели жизненного цикла программной среды
Скачать 194.57 Kb.
|
Министерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования «ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ» (ТУСУР) Кафедра автоматизированных систем управления (АСУ) ЛАБОРАТОРНАЯ РАБОТА №2 Отчет по лабораторной работе «Модели жизненного цикла программной среды» по дисциплине Программная инженерия Вариант 4 Студент гр. з-440П8-4 Авдюшина М.С. «11» Октябрь 2022 г. Руководитель доцент каф. АСУ, канд. техн. наук _______ И. О. Фамилия «___» __________ 20__ г. Томск 2022 СодержаниеВведение 3 1ПОНЯТИЕ ЖИЗНЕННОГО ЦИКЛА 4 2ОПИСАНИЕ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММЫ 9 Заключение 12 Список использованных источников 13 ВведениеНеобходимо разработать приложение Windows «Калькулятор». Приложение предназначено для любых пользователей и должно содержать все арифметические операции (с соблюдением приоритетов) и желательно (но не обязательно) несколько математических функций. Цель работы: общее знакомство с моделями жизненного цикла программных систем, согласно стандартам ГОСТ ИСО/МЭК 12207-99 и ГОСТ Р ИСО/МЭК 9126-93, и приложение их к разработке приложения Windows «Калькулятор». Порядок выполнения работы: Продолжить изучение стандартов ГОСТ ИСО/МЭК 12207-99 и ГОСТ Р ИСО/МЭК 9126-93. Дать понятие жизненного цикла программного продукта и его структуры. Дать понятие процесса и составить классификацию процессов жизненного цикла программного продукта. На основании стандарта провести анализ его применимости к разработке программного обеспечения по выбранной теме. По результатам изучения стандарта оформить отчёт о проделанной работе. ПОНЯТИЕ ЖИЗНЕННОГО ЦИКЛАЖизненный цикл (ЖЦ) — развитие системы, продукта, услуги, проекта или других изготовленных человеком объектов, начиная со стадии разработки концепции и заканчивая прекращением применения. Модель ЖЦ — структура процессов и действий, связанных с жизненным циклом, организуемых в стадии, которые также служат в качестве общей ссылки для установления связей и взаимопонимания сторон. Процесс — совокупность взаимосвязанных или взаимодействующих видов деятельности, преобразующих входы в выходы. Цель процесса — цель высокого уровня выполнения процесса и вероятные выходы эффективной реализации процесса. Выход процесса — наблюдаемый результат успешного достижения цели процесса. Формулировка выхода процесса описывает один из следующих результатов: изготовление какого-либо артефакта; существенное изменение состояния; удовлетворение заданных ограничений, например требований, конечных целей и т. п. Продукт — результат процесса. Проект — попытка действий с определенными начальными и конечными сроками, предпринимаемая для создания продукта или услуги в соответствии с заданными ресурсами и требованиями. Жизненный цикл (ЖЦ) программного обеспечения — это период времени, начинающийся с момента принятия решения о создании программного продукта (ПП), и заканчивается в момент его полного изъятия из эксплуатации. Этот цикл — процесс построения и развития программного обеспечения (ПО). Стадия — часть процесса создания ПП, которая ограничена определёнными временными рамками и заканчивающаяся выпуском конкретного продукта, определяемого заданными для данной стадии требованиями. Можно выделить следующие стадии ЖЦ ПП: формирование требований (концепции) на основе анализа предметной области; проектирование; реализация; ввод в эксплуатацию; эксплуатация. Завершается жизненный цикл выводом из эксплуатации. Для каждой стадии определяют: состав и последовательность выполняемых работ, получаемые результаты, методы и средства, необходимые для выполнения работ, роли и ответственность участников и т. д. Стандарт ИСО/МЭК 12207 описывает процессы жизненного цикла программного обеспечения. Он определяет ЖЦ ПП как структуру декомпозиции работ. Стандарт ИСО/МЭК 12207 устанавливает структуру работ в пределах ЖЦ программных средств. Жизненный цикл начинается от замысла или потребности, которая может быть удовлетворена полностью или частично программным средством, и завершается прекращением применения этого программного средства. Такая архитектура создается совокупностью процессов и взаимосвязями между этими процессами. Определение процессов жизненного цикла основывается на двух базовых принципах: связности и ответственности. Принцип связности: процессы жизненного цикла являются связными и соединяются оптимальным образом, считающимся практичным и выполнимым. Принцип ответственности: процесс передается под ответственность какой-либо организации или стороне в пределах жизненного цикла программного средства. ИСО/МЭК 12207 группирует действия, которые могут быть выполнены в течение жизненного цикла программной системы, в семь групп. Четыре из них являются группами процесса в контексте системы, а три — группами специальных процессов программных средств. Группы процесса в контексте системы: процессы соглашения; процессы организационного обеспечения проекта; процессы проекта; технические процессы. Группы специальных процессов программных средств: процессы реализации программных средств; процессы поддержки программных средств; процессы повторного использования программных средств. Каждый из процессов ЖЦ в пределах этих семи групп описан в терминах его цели и желательных выходных результатов и перечисляет деятельность и задачи, которые должны быть выполнены для достижения этих результатов. Процесс жизни любой системы или программного продукта может быть описан посредством модели жизненного цикла, состоящей из стадий. Модель жизненного цикла представляется в виде последовательности стадий, которые могут перекрываться и (или) повторятся циклически в соответствии с областью применения, размером, сложностью, потребностью в изменениях и возможностями. Каждая стадия описывается формулировкой цели и выходов. Процессы и действия жизненного цикла отбираются и исполняются на этих стадиях для полного удовлетворения цели и результатов этой стадии. Основные моделей жизненного цикла: Каскадная модель. Поэтапная модель с промежуточным контролем. Спиральная модель. Инкрементная модель. Каждый тип модели ЖЦ обладает своими преимуществами и недостатками. Для реализации приложения Windows «Калькулятор» была выбрана спиральная модель ЖЦ. Преимущества спиральной модели ЖЦ: ускорение разработки (раннее получение результата за счёт прототипирования); постоянное участие заказчика в процессе разработки; разбиение большого объема работы на небольшие части; снижение риска (повышение вероятности предсказуемого поведения системы). Основные недостатки спиральной модели связаны с её сложностью: сложность анализа и оценки рисков при выборе вариантов; сложность поддержания версий продукта; сложность оценки точки перехода на следующий цикл; бесконечность модели — на каждом витке заказчик может выдвигать новые требования, которые приводят к необходимости следующего цикла разработки. Основная проблема спирального цикла — определение момента перехода на следующий этап. Для её решения необходимо ввести временные ограничения на каждый из этапов ЖЦ. Переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков. На рисунке 1.1 представлена схема спиральной модели. Рисунок 1.1 — Схема спиральной модели Стандарт и ГОСТ Р ИСО/МЭК 9126 и его преемники являются основой для широкого набора процедур по определению качества программного обеспечения. Процесс оценивания качества ПО, согласно данным стандартам, состоит из трёх последовательных стадий: Подготовка к оцениванию, включающая три этапа: выбор используемых метрик качества; определение уровней ранжирования для каждой метрики; определение критерия оценки. Оценивание, включающее в себя три этапа: измерение значений выбранных метрик для получения значения количественного признака; ранжирование измеренных значений; получение обобщенной (интегральной) оценки качества. ОПИСАНИЕ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММЫМетодология IDEF0 — методология описания бизнес-процессов с помощью функциональных диаграмм. Отличается широким спектром использования. Позволяет детально описать процессы. Контекстная диаграмма приложения Windows «Калькулятор» представлена на рисунке 2.1. Рисунок 2.1 — Контекстная диаграмма приложения Windows «Калькулятор» На рисунке 2.2 представлена декомпозиция первого уровня приложения Windows «Калькулятор». Рисунок 2.2 — Декомпозиция первого уровня ИС «Автостоянка» Ранее в техническом задании был определён состав и содержание работ по созданию приложения Windows «Калькулятор». Анализ объекта автоматизации — 30 дней. Анализ предметной области, выявление слабых мест аналогичных приложений, беседа с потенциальными пользователями. Создание и разработка технического задания и проекта автоматизации — 25 дней. Описание объекта исследования, составление технического задания на разработку, расчет эффективности разработки, утверждение проекта руководителем объекта автоматизации. Создание приложения согласно проекту автоматизации — 45 дней. Изучение требований к системе, разработка алгоритмов, написание программных модулей, тестирование, отладка. Опытная эксплуатация — 30 дней. Проводится пробная работа пользователей с ПП. Внедрение системы — 5 дней. Практическая эксплуатация приложения Windows «Калькулятор» и его основных функций. Для проектирования приложения Windows «Калькулятор» будет применяться спиральная модель. Спиральная модель ЖЦ приложения Windows «Калькулятор» представлена на рисунке 2.3. Рисунок 2.3 — Спиральная модель ЖЦ приложения Windows «Калькулятор» ЗаключениеВ результате выполнения данной лабораторной работы было проведено общее знакомство с моделями жизненного цикла программных систем, согласно стандартам ГОСТ ИСО/МЭК 12207-99 и ГОСТ Р ИСО/МЭК 9126-93, и приложение их к разработке приложения Windows «Калькулятор». Модели были построены в программе Microsoft Visio 2022. Отчёт был подготовлен в программе Microsoft Word 2022. Список использованных источниковАфонин, В. В. Моделирование систем. М.: Интернет-университет информационных технологий, Бином. Лаборатория знаний, 2016. 231 c. ГОСТ 34.003-90. Информационная технология. Комплекс стандартов на автоматизированные системы. Автоматизированные системы. Термины и определения. ГОСТ Р ИСО/МЭК 9126-93 Информационная технология. Оценка программной продукции. Характеристики качества и руководства по их применению. ГОСТ Р ИСО/МЭК ТО 16326-2002. Программная инженерия. Руководство по применению ГОСТ Р ИСО/МЭК 12207 при управлении проектом. Катаев М. Ю. Методические указания по выполнению лабораторных работ по курсу «Программная инженерия». Томск: Факультет дистанционного обучения, ТУСУР, 2013. 191 с. |