
- •Компьютерные технологии в науке и образовании
- •4.1.1 Цели и этапы разработки консалтинговых проектов
- •4.1.2 Case-технологии - методологическая и инструментальная база консалтинга
- •Лекция 2
- •4.2 Понятие структурного анализа
- •4.2.1 Жизненный цикл программного изделия и его критичные этапы
- •4.2.2 Идеи, лежащие в основе структурных методов
- •4.2.3 Принципы структурного анализа
- •Лекция 3
- •4.3. Диаграммы потоков данных
- •4.3.1 Основные символы диаграммы
- •4.3.2 Контекстная диаграмма и детализация процессов
- •4.3.3 Декомпозиция данных и соответствующие расширения диаграмм потоков данных
- •4.3.4 Построение модели
- •4.3.5 Словарь данных
- •4.3.6 Методы задания спецификаций процессов
- •Лекция 4
- •4.4 Структурированный естественный язык
- •4.4.1 Таблицы решений
- •Лекция 5
- •4.5 Диаграммы "сущность - связь"
- •Лекция 6
- •4.6.Диаграммы атрибутов
- •4.6.1 Категоризация сущностей
- •4.6.2 Построение модели
- •Лекция 7
- •4.7 Спецификации управления
- •Лекция 8
- •4.8 Средства структурного проектирования
- •4.8.1 Структурные карты Константайна
- •4.8.2 Методологии структурного и системного анализа и проектирования
- •4.8.3 Методологии структурного анализа Йодана/Де Марко и Гейна-Сарсона
- •Лекция 9
- •4.9 Sadt - технология структурного анализа и проектирования
- •4.9.1 Иерархия диаграмм
- •4.9.2 Синтаксис sadt - диаграмм
- •4.9.3 Понятие цели системы.
- •4.9.4 Создание функциональных моделей и диаграмм
- •Лекция 10
- •4.10 Характеристики case-средств
- •4.10.5 Локальные средства (eRwin, bPwin, s-Designor, case.Аналитик)
- •4.10.6 Объектно-ориентированные case-средства (Rational Rose)
4.3.5 Словарь данных
Диаграммы потоков данных обеспечивают удобное описание функционирования компонент системы, но не снабжают аналитика средствами описания деталей этих компонент, а именно, какая информация преобразуется процессами и как она преобразуется. Для решения первой из перечисленных задач предназначены текстовые средства моделирования, служащие для описания структуры преобразуемой информации и получившие название словарей данных.
Словарь данных представляет собой определенным образом организованный список всех элементов данных системы с их точными определениями, что дает возможность различным категориям пользователей (от системного аналитика до программиста) иметь общее понимание всех входных и выходных потоков и компонент хранилищ. Определения элементов данных в словаре осуществляются следующими видами описаний:
- описанием значений потоков и хранилищ, изображенных на DFD;
- описанием композиции агрегатов данных, движущихся вдоль потоков, т.е. комплексных данных, которые могут расчленяться на элементарные символы (например, АДРЕС ПОКУПАТЕЛЯ содержит ПОЧТОВЫЙ ИНДЕКС, ГОРОД, УЛИЦУ и т.д.);
- описанием композиции групповых данных в хранилище;
- специфицированием значений и областей действия элементарных
- фрагментов информации в потоках данных и хранилищах;
- описанием деталей отношений между хранилищами.
Содержимое словаря данных
Для каждого потока данных в словаре необходимо хранить имя потока, его тип и атрибуты. Информация по каждому потоку состоит из ряда словарных статей, каждая из которых начинается с ключевого слова - заголовка соответствующей статьи, которому предшествует символ "@".
По типу потока в словаре содержится информация, идентифицирующая:
- простые (элементарные) или групповые (комплексные) потоки;
- внутренние (существующие только внутри системы) или внешние (связывающие систему с другими системами) потоки;
- потоки данных или потоки управления;
- непрерывные (принимающие любые значения в пределах определенного диапазона) или дискретные (принимающие определенные значения) потоки.
Атрибуты потока данных включают:
имена-синонимы потока данных в соответствии с узлами изменения имени;
БНФ-определение в случае группового потока;
единицы измерения потока;
диапазон значений для непрерывного потока, типичное его значение и информацию по обработке экстремальных значений;
список значений и их смысл для дискретного потока;
список номеров диаграмм различных типов, в которых поток встречается;
список потоков, в которые данный поток входит (как элемент БНФ-определения);
комментарий, включающий дополнительную информацию (например, о цели введения данного потока).
4.3.6 Методы задания спецификаций процессов
Спецификация процесса (СП) используется для описания функционирования процесса в случае отсутствия необходимости детализировать его с помощью DFD (т.е. если он достаточно невелик, и его описание может занимать до одной страницы текста). Фактически СП представляют собой алгоритмы описания задач, выполняемых процессами: множество всех СП является полной спецификацией системы. СП содержат номер и/или имя процесса, списки входных и выходных данных и тело (описание) процесса, являющееся спецификацией алгоритма или операции, трансформирующей входные потоки данных в выходные. Известно большое число разнообразных методов, позволяющих задать тело процесса, соответствующий язык может варьироваться от структурированного естественного языка или псевдокода до визуальных языков проектирования (типа FLOW-форм и диаграмм Насси-Шнейдермана) и формальных компьютерных языков.
Независимо от используемой нотации спецификация процесса должна начинаться с ключевого слова (например, @СПЕЦПРОЦ). Требуемые входные и выходные данные должны быть специфицированы следующим образом:
@ВХОД = <имя символа данных>
@ВЫХОД = <имя символа данных>
@ВХОДВЫХОД = <имя символа данных>,
где <имя символа данных> - соответствующее имя из словаря Данных.
Эти ключевые слова должны использоваться перед определением СП, например,
@ВХОД = СЛОВА ПАМЯТИ
@ВЫХОД = ХРАНИМЫЕ ЗНАЧЕНИЯ
@СПЕЦПРОЦ
Для всех СЛОВ ПАМЯТИ выполнить:
Распечатать ХРАНИМЫЕ ЗНАЧЕНИЯ
@
Ситуация, когда символ данных является одновременно входным и выходным, может быть описана двумя способами: либо символ описывается два раза с помощью @ВХОД и @ВЫХОД, либо один раз с помощью @ВХОДВЫХОД.
Иногда в СП задаются пред- и пост-условия выполнения данного процесса. В пред-условии записываются объекты, значения которых должны быть истинны перед началом выполнения процесса, что обеспечивает определенные гарантии безопасности для пользователя. Аналогично, в случае наличия пост-условия гарантируется, что значения всех входящих в него объектов будут истинны при завершении процесса.
Спецификации должны удовлетворять следующим требованиям:
для каждого процесса нижнего уровня должна существовать одна и только одна спецификация;
спецификация должна определять способ преобразования входных потоков в выходные;
нет необходимости (на данном этапе) определять метод реализации этого преобразования;
спецификация должна стремиться к ограничению избыточности - не следует переопределять то, что уже было определено на диаграмме или в словаре данных;
набор конструкций для построения спецификации должен быть простым и стандартным.