
- •Компьютерные технологии в науке и образовании
- •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.2 Контекстная диаграмма и детализация процессов
Декомпозиция DFD осуществляется на основе процессов: каждый процесс может раскрываться с помощью DFD нижнего Уровня.
Важную специфическую роль в модели играет специальный вид DFD - контекстная диаграмма, моделирующая систему наиболее общим образом. Контекстная диаграмма отражает интерфейс системы с внешним миром, а именно, информационные потоки между системой и внешними сущностями, с которыми она должна быть связана. Она идентифицирует эти внешние сущности, а также, как правило, единственный процесс, отражающий главную цель или природу системы насколько это возможно. И хотя контекстная диаграмма выглядит тривиальной, несомненная ее полезность заключается в том, что она устанавливает границы анализируемой системы. Каждый проект должен иметь ровно одну контекстную диаграмму, при этом нет необходимости в нумерации единственного ее процесса.
DFD первого уровня строится как декомпозиция процесса, который присутствует на контекстной диаграмме.
Построенная диаграмма первого уровня также имеет множество процессов, которые в свою очередь могут быть декомпозированы в DFD нижнего уровня. Таким образом строится иерархия DFD с контекстной диаграммой в корне дерева. Этот процесс декомпозиции продолжается до тех пор, пока процессы могут быть эффективно описаны с помощью коротких (до одной страницы) миниспецификаций обработки (спецификаций процессов).
При таком построении иерархии DFD каждый процесс более низкого уровня необходимо соотнести с процессом верхнего уровня. Обычно для этой цели используются структурированные номера процессов.
4.3.3 Декомпозиция данных и соответствующие расширения диаграмм потоков данных
Индивидуальные данные в системе часто являются независимыми. Однако иногда необходимо иметь дело с несколькими независимыми данными одновременно.
Например, в системе имеются потоки ЯБЛОКИ, АПЕЛЬСИНЫ и ГРУШИ. Эти потоки могут быть сгруппированы с помощью введения нового потока ФРУКТЫ. Для этого необходимо определить формально поток ФРУКТЫ как состоящий из нескольких элементов-потомков. Такое определение задается с помощью формы Бэкуса-Наура (БНФ) в словаре данных (эту форму мы рассмотрим на след. лекции). В свою очередь поток ФРУКТЫ сам может содержаться в потоке-предке ЕДА вместе с потоками ОВОЩИ, МЯСО и др. Такие потоки, объединяющие несколько потоков, получили название групповых.
Аналогичным образом осуществляется и декомпозиция потоков через границы диаграмм, позволяющая упростить детализирующую DFD. Пусть имеется поток ФРУКТЫ, входящий в детализируемый процесс. На детализирующей этот процесс диаграмме потока ФРУКТЫ может не быть вовсе, но вместо него могут быть потоки ЯБЛОКИ и АПЕЛЬСИНЫ (как будто бы они переданы из детализируемого процесса). В этом случае должно существовать БНФ-определение потока ФРУКТЫ, состоящего из подпотоков ЯБЛОКИ и АПЕЛЬСИНЫ, для целей балансирования.
Применение этих операций над данными позволяет обеспечить структуризацию данных, увеличивает наглядность и читабельность диаграмм.
Для обеспечения декомпозиции данных и некоторых других сервисных возможностей к DFD добавляются следующие типы объектов:
1) ГРУППОВОЙ УЗЕЛ. Предназначен для расщепления и объединения потоков. В некоторых случаях может отсутствовать (т.е. фактически вырождаться в точку слияния/расщепления потоков на диаграмме).
2) УЗЕЛ-ПРЕДОК. Позволяет увязывать входящие и выходящие потоки между детализируемым процессом и детализирующей DFD.
3) НЕИСПОЛЬЗУЕМЫЙ УЗЕЛ. Применяется в ситуации, когда декомпозиция данных производится в групповом узле, при этом требуются не все элементы входящего в узел потока.
4) УЗЕЛ ИЗМЕНЕНИЯ ИМЕНИ. Позволяет неоднозначно именовать потоки, при этом их содержимое эквивалентно. Например, если при проектировании разных частей системы один и тот же фрагмент данных получил различные имена, то эквивалентность соответствующих потоков данных обеспечивается узлом изменения имени. При этом один из потоков данных является входным для данного узла, а другой - выходным.
5) Текст в свободном формате в любом месте диаграммы.