Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция № 13 Средства автоматизации проектирован...doc
Скачиваний:
7
Добавлен:
20.09.2019
Размер:
199.68 Кб
Скачать

8.2. Модели жизненного цикла

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

Основным нормативным документом, регламентирующим жизненный цикл программного обеспечения, является международный стандарт ISO/IEC 12207 (International Organization of Standardization – Международная организация по стандартизации/International Electrotechnical Commission – международная комиссия по электротехнике). В документе определяется структура жизненного цикла, содержащая процессы, действия и задачи, которые должны быть выполнены при создании программного обеспечения.

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

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

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

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

Спиральная модель жизненного цикла позволяет устранить недостатки предыдущих моделей. На начальных этапах (анализ и проектирование) реализуемость технических решений проверяется с помощью создания прототипов (рис. 8.1).

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

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

8.3. Модели структурного проектирования

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

Наиболее распространенные модели и диаграммы графического представления:

    • диаграммы сущность-связь или ER-диаграммы служат для наглядного представления схем баз данных;

    • диаграммы потоков данных – Data Flow Diagrams (DFD) служат для иерархического описания модели системы;

    • метод структурного анализа и проектирования – Structured Analysis and Design Technique (SADT) служит для построения функциональной модели объекта;

    • схемы описания иерархии вход-обработка-выход – Hierarchy plus Input-Processing-Output (HIPO) служит для описания реализуемых программой функций и циркулирующих внутри нее потоков данных;

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