Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод.ук.по выполнению КР.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.33 Mб
Скачать

2. Разработка описания программного продукта

Структура спецификации информационного продукта имеет следующий вид:

  1. Уникальное название информационного продукта.

  2. Имя задачи управления (блока функциональной модели), с которой соотнесен информационный продукт. Используется для позиционирования информационного продукта с точки зрения информационной поддержки управления сложным объектом.

  3. Имя пользователя (отдела, специалиста, другого информационного продукта), информационного продукта («имя собственное» продукта).

  4. «Повествовательное» резюме, дающее общее представление об информационном продукте в терминологии пользователя (обычно достаточно одного абзаца).

  5. Описание функций, реализуемых комплексом программ, функциональных групп программ, пакетом прикладных программ.

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

  • Описание классов входных данных предполагает указание состава данных, источников данных.

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

  1. Частота использования: отчет о том, как часто продукт будет использоваться различными пользователями.

  2. Анализ важности информационного продукта с точки зрения управления сложным объектом.

  3. Ограничения, накладываемые на информационные продукты, определяемые с позиций поддержки реализации задач управления.

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

  5. Схему тестирования интеграции источников данных и программных продуктов (компонент) в составе подсистемы, обеспечивающей получение информационного продукта.

  6. Схемы верификации, испытаний, аттестации, тестирования внешних функций, тестирования приемлемости. В качестве основы для организации испытаний может быть выбран ГОСТ 34.603-92 «Виды испытаний автоматизированных систем». Документирование испытаний описывается ниже.

  7. Ограничения на среду эксплуатации (требования к минимальным характеристикам комплекса технических средств, обеспечивающего функционирование программного продукта).

  1. Разработка функциональной модели программы

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

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

В качестве примера рассмотрим методологию SADT, предложенную Дугласом Россом. На ее основе разработана, в частности, известная методология IDEF0 (Icam DEFinition). Методология SADT представляет собой набор методов, правил и процедур, предназначенных для построения функциональной модели объекта какой-либо предметной области.

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

• графическое представление блочного моделирования. На SADT-диаграмме функции представляются в виде блока, а интерфейсы входа-выхода – в виде дуг, соответственно входящих в блок и выходящих из него. Интерфейсные дуги отображают взаимодействие функций друг с другом;

  • строгость и точность отображения.

Правила SADT включают:

  • уникальность меток и наименований;

  • ограничение количества блоков на каждом уровне декомпозиции;

  • синтаксические правила для графики;

  • связность диаграмм;

  • отделение организации от функции;

  • разделение входов и управлений.

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

Рис. 3. Функциональный блок и интерфейсные дуги

Блоки на диаграмме размещают по «ступенчатой» схеме в соответствии с последовательностью их работы или доминированием, которое понимается как влияние, оказываемое одним блоком на другие. В функциональных диаграммах SADT различают пять типов влияний блоков друг на друга :

  • вход-выход блока подается на вход блока с меньшим доминированием, т. е. следующего (рис. 4а);

  • управление. Выход блока используется как управление для блока с меньшим доминированием (рис. 4.б);

  • обратная связь по входу. Выход блока подается на вход блока с большим доминированием (рис. 4.в);

  • обратная связь по управлению. Выход блока используется как управляющая информация для блока с большим доминированием (рис. 4.г);

  • выход-исполнитель. Выход блока используется как механизм для другого блока (рис. 4.д);

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

Рис.4 Типы влияний блоков:

а – вход; б – управление; в – обратная связь по входу;

г – обратная связь по управлению; д – выход-исполнитель

На рис.5 приведены четыре диаграммы и их взаимосвязи, показывающие структуру SADT-модели. Каждый компонент модели может быть декомпозирован на другой диаграмме. Детальная диаграмма иллюстрирует внутреннее строение блока «родительской» диаграммы.

Рис. 5 Структура SADT-модели. Декомпозиция диаграмм

Иерархия диаграмм

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

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

Все диаграммы связывают друг с другом иерархической нумерацией блоков: первый уровень – А0, второй – Al, A2 [и т. п., третий — A11, A12, А13 и т. п., где первые цифры – номер родительского блока, а последняя – номер конкретного блока детальной диаграммы.

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

На рис. 6-8 представлены различные варианты выполнения функций и соединения дуг с блоками.

Последовательность операций, время их выполнения не указываются на SADT-диаграммах. Обратные связи, итерации, продолжающиеся процессы и перекрывающиеся (по времени) функции могут быть изображены с помощью дуг. Обратные связи могут выступать в виде комментариев, замечаний, исправлений и т. д. (см. рис. 8).

Рис. 6. Одновременное выполнение

Рис. 7. Соответствие родительской и детальной диаграмм

Рис. 8. Пример обратной связи

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

Диаграмма, представленная на рис. 9, а, является диаграммой верхнего уровня. Она иллюстрирует исходные данные программы и ожидаемые результаты.

Рис. 9. Функциональные диаграммы для программы сортировки массива:

а – диаграмма верхнего уровня; б – уточняющая диаграмма

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

11 – размер массива;

12 – массив;

С1 – выбор метода;

R1 – вывод описания метода;

R2 – отсортированный массив.