Сравнительный анализ моделей жизненного цикла программного обеспечения | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 27 апреля, печатный экземпляр отправим 1 мая.

Опубликовать статью в журнале

Авторы: ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №28 (318) июль 2020 г.

Дата публикации: 09.07.2020

Статья просмотрена: 8642 раза

Библиографическое описание:

Нарыжная, Н. Ю. Сравнительный анализ моделей жизненного цикла программного обеспечения / Н. Ю. Нарыжная, Л. Г. Шарифова. — Текст : непосредственный // Молодой ученый. — 2020. — № 28 (318). — С. 28-32. — URL: https://moluch.ru/archive/318/72498/ (дата обращения: 16.04.2024).



В статье авторы проводят сравнительный анализ моделей жизненного цикла программного обеспечения на основе метода анализа критериев.

Ключевые слова: жизненный цикл, программное обеспечение, программный продукт.

Жизненный цикл — совокупность последовательно меняющихся состояний организации, каждое из которых соответствует определенному комплексу управленческих характеристик и типовой модели поведения компании. В свою очередь жизненный цикл программного обеспечения (ПО) является периодом времени, представляющий собой непрерывный процесс построения и развития информационной системы, который начинается с момента принятия решения о необходимости создания программного продукта и заканчивается его полным изъятием из эксплуатации.

Жизненный цикл информационной системы включает в себя такие стадии, как планирование, анализ, проектирование, реализацию, внедрение и эксплуатацию [1].

Проектирование и испытания информационных систем регламентируются стандартами, ведущим из которых является международный стандарт ISO/IEC 12207. Рекомендации данного стандарта являются общими для различных моделей. Под моделью подразумевается структура, определяющая последовательность выполнения процессов, направленных на решение задач, возникающих на протяжении жизненного цикла программного обеспечения.

В настоящее время известно большое количество моделей жизненного цикла, но наиболее распространенными являются: каскадная, прототипная, спиральная. Рассмотрим их поподробнее.

Классической моделью ЖЦ ПО является каскадная модель. Это была первая модель, которая формализовала структуру этапов разработки ПО, придавая особое значение исходным требованиям и проектированию, а также созданию документации на ранних этапах процесса разработки. Схема каскадной модели ЖЦ ПО представлена на рис. 1.

Каскадная модель жизненного цикла ПО

Рис. 1. Каскадная модель жизненного цикла ПО

Внешне ее жизненный цикл напоминает поток воды водопада, который последовательно проходит через фазы выработки системных требований, выработки требований к ПО, анализа, проектирования, кодирования, тестирования, интеграции и поддержки [2].

Таким образом, можно сделать вывод, что сущность данной модели заключается в том, чтобы процесс создания программного продукта был разбит на последовательные этапы, в результате завершения которых будут формироваться промежуточные продукты, не способные изменяться на последующих шагах. Таким образом, главным недостатком данной модели является низкая гибкость в управлении проектом. Другими словами, если появится необходимость внести в проект какие-либо изменения, то это повлечет существенные дополнительные затраты для организации.

К достоинствам данной модели можно отнести простоту применения, способность планировать сроки завершения всех работ, соответствующие ресурсы и набор проектной документации, которая формируется после завершения каждого этапа.

Следовательно, можно прийти к выводу, что наиболее эффективно применение каскадной модели при разработке проектов, требования которых не изменяются в течении жизненного цикла; при разработке проекта, ориентированного на построение системы или продукта такого же типа; при разработке проекта, связанного с переносом уже существующего продукта или системы на новую платформу [3].

В качестве следующей модели предлагаю рассмотреть модель прототипирования. Прототипирование — это процесс построения рабочей модели системы, в которой пользователь и программист разрабатывают предварительный план или модель проекта. На рис. 2 показан процесс прототипирования, который основывается на многократном повторении итераций.

Процесс прототипирования

Рис. 2. Процесс прототипирования

Ее особенностью является то, что заказчик начинает знакомиться с системой на ранних этапах разработки. При этом разработчик демонстрирует пользователям готовый макет, а пользователи оценивают его функционирование. После этого выявляются проблемы, над устранением которых совместно работают пользователи и разработчики. Как показано на рис. 2, данный процесс будет продолжаться до тех пор, пока пользователи не будут удовлетворены степенью соответствия программного продукта.

Таким образом, главным преимуществом создания прототипов является возможность улучшить взаимопонимание между всеми участниками процесса и свести к минимуму риск получения продукта, не соответствующего выдвигаемым требованиям.

Но, как и в любой модели жизненного цикла, есть и свои недостатки. Минусом данной модели является то, что существует риск затягивания фазы создания прототипов, и как следствие это способно привести к удорожанию проекта за счет включения незапланированных итераций. Предлагаемая авторами модель лучше всего применять в проектах, в которых заранее отсутствуют четко сформулированные требования, или же когда выполняется новая, не имеющая аналогов разработка.

Спиральная модель жизненного цикла программного обеспечения.

Она является классическим примером эволюционной стратегии конструирования программного обеспечения. Ее отличительной особенностью является сочетание в себе возможности двух предыдущих моделей. Так на этапах анализа и проектирования степень удовлетворения потребностей заказчика актуально проверять путем создания прототипов. Данное решение позволяет уточнить требования, цели и характеристики проекта, определить качество разработки, спланировать работы следующего витка спирали [4]. В последствии будет выбран такой вариант, который будет обоснованно удовлетворять действительным требованиям заказчика.

К недостаткам данной модели следует отнести:

  1. дороговизну оценки рисков, так как оценка рисков после прохождения каждой спирали связана с большими затратами;
  2. усложненную структуру жизненного цикла;
  3. бесконечность спирали, это связано с тем, что каждая ответная реакция заказчика на созданную версию может порождать новый цикл, что затягивает завершение работы над проектом.

Подробная схема данной модели представлена на рис. 3.

Спиральная модель жизненного цикла ПО

Рис. 3. Спиральная модель жизненного цикла ПО

Учитывая вышеуказанные преимущества и недостатки, можно прийти к выводу, что спиральную модель ЖЦ целесообразно применять при разработке долгосрочных проектов, при разработке проектов, использующих новые технологии, или проектов с ожидаемыми существенными изменениями.

Методика выбора на основе анализа критериев.

В основе данной методики лежит использование таблицы, где по заданным критериям даются качественные оценки трем моделям жизненного цикла — каскадной, прототипной, спиральной. Данная методика позволяет наглядно сравнить характеристики. Согласно данной методике, наиболее приемлемой моделью жизненного цикла будет являться та, в соответствующем столбце которой будет выбрано большее число оценок [5].

Сравнение характеристик, выбранных мною моделей жизненного цикла программного обеспечения, представлена в таблице 1.

Таблица 1

Иллюстрация методики выбора модели жизненного цикла на основе анализа критериев

Характеристика проекта

Модель

Каскадная

Прототипная

Спиральная

Новизна разработки и обеспеченность ресурсами

высокая

средняя

средняя

Длительность приложений

до года

до нескольких лет

до нескольких лет

Легкость использования

просто

просто

сложно

Определение основных требований в начале проекта

да

нет

нет

Масштаб проекта

малые и средние

малые и средние

любые проекты

Внесение изменений

нет

да

да

Разработка итерациями

нет

да

да

Распространение промежуточного ПО

нет

да

да

Управление рисками

нет

да

да

Стоимость будущих версий

высокая

низкая

низкая

Продуктивность приложений

высокая

низкая

высокая

Согласно данной методике, наиболее приемлемой моделью жизненного цикла будет являться та, в соответствующем столбце которой будет выбрано большее число оценок.

В заключении следует отметить, что каждая из представленных моделей жизненного цикла программного обеспечения имеет свои достоинства и недостатки, поэтому последовательность этапов разработки может существенно отличаться. Модели жизненного цикла информационных систем предназначены для использования, в первую очередь, разработчиками этих систем. Очень важно выбрать именно такую модель, которая будет востребована при реальной эксплуатации, в наибольшей степени отвечая характеру проекта и реальным условиям его реализации.

Литература:

  1. Голосовский М. С. Информационно-логическая модель процесса разработки программного обеспечения // Программные системы и вычислительные методы. 2015. № 1. С. 59–68.
  2. Ларкин Е. В., Богомолов А. В., Привалов А. Н. Методика оценивания временных интервалов между транзакциями в алгоритмах сжатия речевых сообщений // Научно-техническая информация. Серия 2: Информационные процессы и системы. 2017. № 9. С. 23–28.
  3. Голосовский М. С. Модель расчета оценок трудоемкости и срока разработки информационных систем на начальном этапе жизненного цикла проекта // Программная инженерия. 2016. Т. 7. № 10. С. 446–455.
  4. Жизненный цикл малого предприятия. — М.: Либеральная Миссия, Новое литературное обозрение, 2016. — 336 c.
  5. Исаев Г. Н. Управление качеством информационных систем — М.:НИЦ ИНФРА-М, 2016. — 248 с.
Основные термины (генерируются автоматически): жизненный цикл, программное обеспечение, модель, каскадная модель, программный продукт, спиральная модель, IEC, большее число оценок, информационная система, приемлемая модель.


Похожие статьи

К вопросу об оценке качества корпоративных информационных...

Модель жизненного цикла — это структура, состоящая из процессов, работ и задач, включающих в себя разработку, эксплуатацию и сопровождение программного продукта, охватывающая жизнь системы от установления требований к ней до прекращения ее...

Сравнительный анализ каскадной и V-образной методологий...

Методология разработки программного обеспечения — это система построения плана работы над созданием программного продукта

Рис. 2. V-образная модель разработки программного обеспечения. Среди общих достоинств каскадной и V-образной моделей...

Концепция моделирования жизненного цикла создания...

Похожие статьи. Модель управления и автоматизации этапов жизненного цикла... Жизненный цикл автоматизированных систем (ЖЦ АС)

К вопросу об оценке качества корпоративных информационных... жизненный цикл, информационная система, каскадная модель...

Методы и средства проектирования информационных систем

В спиральной модели сочетаются преимущества как нисходящей, так и восходящей концепции разработки системы, при этом прототипы могут быть получены на каждой стадии проектирования. Методы проектирования ИС разнообразны, при этом среди специалистов...

Анализ эффективности разработки программных продуктов

В статье исследуется жизненный цикл разработки программных продуктов в ИТ-организациях

Информационная система — это совокупность технического, программного и.

Если для спиральной модели жизненного цикла в процессе разработки и внедрения...

Типы требований к Web-приложению для обработки...

Разработка объектно-ориентированной модели процесса... Основой разработки любого проекта, в том числе проекта сложно программно-информационной системы, является определение и формулировка требований. Программное обеспечение системы менеджмента качества.

Сопровождение систем автоматизации программного...

Информационные технологии. Сопровождение программных средств. http

Модель жизненного цикла — это структура, состоящая из процессов, работ и задач, включающих в

Модель управления и автоматизации этапов жизненного цикла автоматизированных систем...

Оценка качества при разработке программных продуктов для...

Жизненный цикл автоматизированных систем (ЖЦ АС) носит итерационный характер, в процессе его развития для минимизации. - участие в жизненном цикле различного как программно-аппаратного обеспечения, так и проектного и эксплуатирующего персонала.

Технология конструирования программного обеспечения

Каскадная модель модель, при которой все разработки ведутся последующий этап после полного предыдущего.

Так, все разработки программного при использовании модели выполняются

Жизненный цикл программного средства (ПС) — период его эксплуатации...

Похожие статьи

К вопросу об оценке качества корпоративных информационных...

Модель жизненного цикла — это структура, состоящая из процессов, работ и задач, включающих в себя разработку, эксплуатацию и сопровождение программного продукта, охватывающая жизнь системы от установления требований к ней до прекращения ее...

Сравнительный анализ каскадной и V-образной методологий...

Методология разработки программного обеспечения — это система построения плана работы над созданием программного продукта

Рис. 2. V-образная модель разработки программного обеспечения. Среди общих достоинств каскадной и V-образной моделей...

Концепция моделирования жизненного цикла создания...

Похожие статьи. Модель управления и автоматизации этапов жизненного цикла... Жизненный цикл автоматизированных систем (ЖЦ АС)

К вопросу об оценке качества корпоративных информационных... жизненный цикл, информационная система, каскадная модель...

Методы и средства проектирования информационных систем

В спиральной модели сочетаются преимущества как нисходящей, так и восходящей концепции разработки системы, при этом прототипы могут быть получены на каждой стадии проектирования. Методы проектирования ИС разнообразны, при этом среди специалистов...

Анализ эффективности разработки программных продуктов

В статье исследуется жизненный цикл разработки программных продуктов в ИТ-организациях

Информационная система — это совокупность технического, программного и.

Если для спиральной модели жизненного цикла в процессе разработки и внедрения...

Типы требований к Web-приложению для обработки...

Разработка объектно-ориентированной модели процесса... Основой разработки любого проекта, в том числе проекта сложно программно-информационной системы, является определение и формулировка требований. Программное обеспечение системы менеджмента качества.

Сопровождение систем автоматизации программного...

Информационные технологии. Сопровождение программных средств. http

Модель жизненного цикла — это структура, состоящая из процессов, работ и задач, включающих в

Модель управления и автоматизации этапов жизненного цикла автоматизированных систем...

Оценка качества при разработке программных продуктов для...

Жизненный цикл автоматизированных систем (ЖЦ АС) носит итерационный характер, в процессе его развития для минимизации. - участие в жизненном цикле различного как программно-аппаратного обеспечения, так и проектного и эксплуатирующего персонала.

Технология конструирования программного обеспечения

Каскадная модель модель, при которой все разработки ведутся последующий этап после полного предыдущего.

Так, все разработки программного при использовании модели выполняются

Жизненный цикл программного средства (ПС) — период его эксплуатации...

Задать вопрос