Файл: Этапы разработки, тестирования и ввода в эксплуатацию мобильных приложений (Каскадная модель разработки программной системы).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 455

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ВВЕДЕНИЕ

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

К международным организациям по стандартизации относятся следующие: ISO - International Organization for Standardization, ITU - International Telecommunication Union, IEC - International Electrotechnical Commission.

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

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

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

Основным стандартом, определяющим структуру жизненного цикла, является ГОСТ Р ИСО/МЭК 12207-02.

Объект исследования – программные системы.

Предмет исследования – жизненный цикл программной системы.

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

В соответствии с целью была определена необходимость постановки и решения следующих задач:


– описать каскадную модель разработки программной системы;

– описать спиральную модель разработки программной системы;

– описать этапы жизненного цикла проекта автоматизации;

– описать процесс тестирования и отладки программной системы;

– разработать программную систему.

Глава 1. Жизненный цикл разработки программной системы

1.1. Каскадная модель разработки программной системы

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

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

– каскадная модель (70-80-е годы 20 века);

– спиральная модель (80-90-е годы 20 века)[2].

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

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

Все этапы завершается запуском полно­го комплекта документов, достаточных для того, чтобы дальнейшая разработка могла вестись другой командой разработчиков[3].

Положительные стороны практического использования каскадного подхода в процессе разработки программной системы зак­лючаются в следующем:

– на всех этапах формирования конечного набора проектных документов, которая отвечает четким критериям по полноте и согласованности[4];


– выполняемые этапы работ позволяют соблюдать поставленные сроки по завершению необходимых работ и осваивать некоторые затраты на разработку программной системы[5].

Рисунок 1 – Каскадная схема разработки программной системы

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

К данной категории относятся прикладные программные системы реального времени, сложные расчетные прикладные программные системы и дру­гие подобные задачи[7].

Однако, следует отметить, что в процессе практического применения данного подхода появляется определенные его определенные недостатки, которые вызваны прежде всего тем, что реальный процесс по созданию программной системы никогда в полной мене не укладывался в такую жесткую схему[8].

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

В результате реальный процесс по созданию программной системы принимает следую­щий вид, представленный на рис. 2.

Рисунок 2 – Схема реального процесса разработки программной системы по каскадной схеме

Основным недостатком каскадного подхода является существен­ное запаздывание с получением результатов. Согласование резуль­татов с пользователями производится только в точках, планируе­мых после завершения каждого этапа работ, требования к ИС «за­морожены» в виде технического задания на все время ее создания[9].

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


1.2. Спиральная модель разработки программной системы

Для преодоления проблем при использовании каскадной модели разработки программной системы была предложена спиральная модель жизненного цикла, делающая упор на начальных этапах жизненного цикла: анализ и проектирование. На перечисленных этапах реализуе­мость технических решений может быть проверена за счет создания прото­типов системы[10].

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

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

Рисунок 3 – Схема спиральной модели жизненного цикла

Разработка итерациями отражает объективно существующий спиральный цикл по созданию программной системы[11]. Неполное завершение работ на всех этапах позволяет выполнить переход на следующий этап, не дожидаясь завершения работы на текущем этапе. При итера­тивном способе разработки недостающую работу можно будет выполнить на следующей итерации[12].

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

1.3. Этапы жизненного цикла проекта автоматизации

Понятие жизненного цикла является одним из ключевых понятий методологии непосредственного проектирования информационных систем. Жизненный цикл информационной системы – это непрерывный процесс, начинающийся с момента принятия соответствующего решения о создании информационной системы и заканчивающийся в момент полного изъятия ее из эксплуатации[13].


Основным стандартом, определяющим структуру жизненного цикла, является ГОСТ Р ИСО/МЭК 12207-02. Согласно стандарту структура жизненного цикла основывается на трех группах процессов:

– основные процессы (заказ, поставка, разработка, эксплуатация, сопровождение);

– вспомогательные процессы:

    • документирование – работы по разработке, выпуску, редактированию, распространению и непосредственному сопровождению документов, в которых нуждаются все заинтересованные лица[14];
    • управление конфигурацией включает работы: определение и установление состояния прикладных программных объектов в системе; управление изменениями и выпуском объектов; обеспечение полноты, совместимости и правильности информационных объектов; управление хранением, обращением и поставкой объектов;
    • обеспечение качества – работы по обеспечению соответствия создаваемой информационной системы и реализуемых процессов жизненного цикла установленным требованиям и утвержденным планам[15];
    • верификация – работы соответствующего субъекта по проверке соответствия создаваемых промежуточных результатов установленным требованиям по мере реализации программного проекта;
    • аттестация – работы соответствующего субъекта по проверке полного соответствия требований и конечного продукта функциональному назначению системы;
    • совместный анализ – работы по оценке текущего состояния или результатов какой-либо непосредственной работы программной системы[16];
    • аудит – работы независимых экспертов по определению соответствия деятельности субъекта принятым требованиям, планам и условиям договора;
    • разрешение проблем – работы по непосредственному анализу и устранению проблем, обнаруженных при непосредственной реализации проекта.

– организационные:

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