logo
Ответы Госы_3

54. Классические методы анализа. Структурный анализ. Анализ, который ориентируется на структуры данных.

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

Структурный анализ - один из формализованных методов анализа требований к ПО. Автор этого метода - Том Где Марко (1979)[27]. В этом методе программное изделие рассматривается как преобразователь информационного потока данных. Основной элемент структурного анализа - диаграмма потоков данных. Диаграмма потоков данных ПДД - графическое средство для изображения информационного потока и преобразований, которым подвергаются данные при движении вот входа к выходу системы. Элементы диаграммы имеют вид, показанный на рис. 3.1.

Диаграмма может использоваться для представления программного изделия на любом уровне абстракции. Пример системы взаимосвязанных диаграмм показан на рис. 3.2. Диаграмма высшего (нулевого) уровня представляет систему как единый овал со стрелкой, ее называют основной или контекстной моделью. Контекстная модель используется для указания внешних связей программного изделия.

Для детализации (уточнения системы) вводится диаграмма 1-го уровня. Каждый из преобразователей этой диаграммы - подфункция общей системы. Таким образом, речь идет о замене преобразователя F на целую систему преобразователей. Дальнейшее уточнение (например, преобразователя F3) приводит к диаграмме 2-го уровня. Говорят, что ПДД 1 разбивается на диаграммы 2-го уровня.

Рис. 1. Элементы диаграммы потоков данных

Рис. 2. Система взаимосвязанных диаграмм потоков данных

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

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

Методы анализа, ориентированные на структуры данных

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

Методы, ориентированные на структуры данных, обеспечивают:

1) определение ключевых информационных объектов и операций;

2) определение иерархической структуры данных;

3) компоновку структур данных из типовых конструкций - последовательности, выбора, повторения;

4) последовательность шагов для превращения иерархической структуры данных в структуру программы.

Наиболее известны два метода: метод Варнье-Орра и метод Джексона.

В методе Варнье-Орра для представления структур применяют диаграммы Варнье.

Для построения диаграмм Варнье используют 3 базовых элемента: последовательность, выбор, повторение.

Методика Джексона

Метод Джексона (1975) включает 6 шагов [39]. Три шага выполняются на этапе анализа, а остальные - на этапе проектирования.

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

2. Объект -структура. Действия над объектами представляются диаграммами Джексона.

3. Начальное моделирование. Объекты и действия представляются как обрабатывающая модель. Определяются связи между моделью и реальным миром.

4. Доопределение функций. Выделяются и описываются сервисные функции.

5. Учет системного времени. Определяются и оцениваются характеристики планирования будущих процессов.

6. Реализация. Согласование с системной средой, разработка аппаратной платформы.

55. Проектирование как итерационный процесс. Структуризация системы. Моделирование управления. Декомпозиция на модуле.

Структурирование системы.

Проектирование как сложный итерационный процесс реализуется по этапам. Обычно этапы проектирования САУ задаются ГОСТом или ОСТом данной отрасли промышленности, а уточняются на конкретном предприятии и делятся на следующие: согласование ТЗ(Техническое задание), техническое предложение, эскизный проект, рабочее проектирование, изготовление опытных образцов, испытания. На каждом этапе проектирования совершается очередной «виток» прохождения будущего проекта через вес критерии и ограничения, воздвигаемые целями проектирования и возможностями проектного предприятия Процесс проектирования можно представить сходящейся спиралью. Каждый виток такой спирали обязательно проходит через все критерии и ограничения, сформулированные в ТЗ и уточненные в дальнейшем проектировании.

Известны четыре модели системного структурирования:

- модель хранилища данных;

- модель клиент-сервер;

- трехуровневая модель;

- модель абстрактной машины.

В модели хранилища данных подсистемы разделяют данные, находящиеся в общей памяти. Как правило, данные образуют БД. Предусматривается система управления этой базой.

Модель клиент-сервер используется для распределенных систем, где данные распределены по серверам. Для передачи данных применяют сетевой протокол, например TCP/IP.

Трехуровневая модель является развитием модели клиент-сервер.

Преимущества трехуровневой модели:

- упрощается такая модификация уровня, которая не влияет на другие уровни;

- отделение прикладных функций от функций управления БД упрощает оптимизацию всей системы.

Модель абстрактной машины отображает многослойную систему.

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

Моделирование управления

Известны два типа моделей управления:

- модель централизованного управления;

- модель событийного управления.

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

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

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

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

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

Декомпозиция подсистем на модули

Известны два типа моделей модульной декомпозиции:

- модель потока данных;

- модель объектов.

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

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