Курсова БД / Література / rybanov_bd
.pdf–средства конфигурационного управления (PVCS (Intersolv));
–средства тестирования (Quality Works (Segue Software));
–средства документирования (SoDA (Rational Software)).
На сегодняшний день Российский рынок программного обеспечения располагает следующими наиболее развитыми CASE-средствами:
–Vantage Team Builder (Westmount I-CASE);
–Designer/2000;
–Silverrun;
–ERwin+BPwin;
–Design/IDEF;
–S-Designor;
–CASE.Аналитик.
Кроме того, на рынке постоянно появляются как новые для отечественных пользователей системы (например, PRO-IV, System Architect, Visible Analyst Workbench, EasyCASE), так и новые версии и модификации перечисленных систем.
1.3. Обзор CASE-систем
1.3.1. Design/IDEF
Пакет Design/IDEF (Meta Software Corp.) – графическая среда для проектирования и моделирования сложных систем широкого назначения, поддерживающая методологии описания и моделирования системных функций (IDEF0/SADT), структур и потоков данных в системе (IDEF1, IDEF1X, E-R) и поведения системы (IDEF/CPN). Пакет Design/IDEF был использован для создания проектов сложнейших систем, связанных с автоматизацией и компьютеризацией производства, управлением и контролем, телекоммуникациями и аэрокосмонавтикой. Design/IDEF используется как составная часть в некоторых известных пакетах типа CIM (Computer Integrated Manufacturing) и САЕ (Computer Aided Engineering) и принят в
10
качестве стандарта для проектов, финансируемых американскими и европейскими спонсорами. Рассмотрим более подробно основные возможности пакета Design/IDEF:
1.Представление графики: Design/IDEF имеет быструю и высококачественную графику, включающую создание стандартных и пользовательских объектов, выравнивание и манипулирование объектами, выбор атрибутов графических объектов и текста. Дополнительно в Design/IDEF реализованы возможности, требуемые для редактирования и моделирования данных: построение связывающих линий типа «резинка», маршрутизация
исглаживание дуг т.д.
2.Обеспечение непротиворечивости модели: Design/IDEF имеет встроенные возможности, дающие уверенность разработчику, что IDEF-модель
(Integration Definition for Function Modeling) будет точной, целостной и не-
противоречивой на протяжении всего цикла ее создания. Например, при модификации текста, принадлежащего функциональному блоку или дуге в какой-то одной части модели, текст будет динамически скорректирован на всех страницах модели.
3.Поддержка Словаря Данных: Design/IDEF имеет встроенный Словарь Данных, который позволяет хранить информацию и создавать отчеты о функциях и потоках данных в IDEF-модели. Словарь дает возможность определять начальную информацию об объектах и предоставляет разнообразный набор функций сопровождения, восстановления и сохранения целостности файлов данных. Возможности словаря отличаются большой гибкостью и позволяют пользователю вводить неограниченное число параметров для каждого объекта. В сочетании с высококачественной печатью на лазерном принтере, это позволяет разработчику создавать документацию проекта, отвечающую самым высоким требованиям.
4.Генерация отчетов: Design/IDEF предоставляет возможность использовать пять видов отчетов для поддержки и анализа моделей: отчет о кон-
11
троле полноты модели; отчет о функциях; отчет о дугах; отчет о ссылках; IDEF-отчет. Все отчеты могут быть показаны на экране компьютера, отредактированы и распечатаны с помощью текстового редактора. Design/IDEF анализирует и отбирает данные для генерации текстового файла, содержащего информацию о диаграммах и Словаре. Информация, содержащаяся в отчетах, может быть экспортирована для использования в других программах, таких как, например, электронные таблицы, настольные издательские системы и текстовые редакторы.
5.Организация коллективной работы: Design/IDEF поддерживает работу многочисленной группы разработчиков, создающих одновременно большую и сложную IDEF-модель. Подмодели легко интегрируются в одну большую модель.
6.Моделирование данных (IDEF1, IDEF1X и ER – методологии) Design/IDEF дает также возможность создавать информационные модели, которые представляют как собственно данные, так и связи между ними в системе. Информация, содержащаяся в IDEF-моделях, экспортируется в любую базу данных, а сами модели могут быть экспортированы в Design/CPN - пакет динамического моделирования и анализа сложных систем.
Как CASE-пакет по разработке программного обеспечения Design/IDEF поддерживает первые стадии создания программного продукта:
1.Формулировка требований и целей проекта - определение того, что проектируемая система будет делать.
2.Разработка спецификаций – формализованное описание требований.
3.Создание проекта – определение подсистем и взаимодействий между ними.
4.Документирование проекта – создание базы данных проекта, текстуальное описание составных частей проекта.
12
5.Анализ проекта – проверка проекта на полноту и непротиворечивость.
Результатом работы пакета Design/IDEF является проект программной системы, состоящий из двух частей:
1.Проекта функциональной структуры системы, содержащего иерархически связанные страницы с IDEF0-диаграммами и описывающего все модули (вплоть до элементарных функций) системы, их взаимосвязи, входные и выходные параметры.
2.Проекта информационной структуры системы – логической модели
еебазы данных, описывающей все структуры и взаимосвязи данных. Оба проекта проверяются на полноту и непротиворечивость, сопровождаются базой данных проекта и документацией.
Design/IDEF работает в различных операционных средах: можно стро-
ить модели на IBM PC под MS-Windows, Macintosh или под Unix X Window System и переносить диаграммы из одной операционной среды в другую.
1.3.2.Power Designer компании Sybase
В состав Power Designer входят следующие модули:
Process Analyst – средство для функционального моделирования, поддерживает нотацию Йордона-де Марко, Гейна-Сарсона и несколько других. Имеется возможность описать элементы данных (имена, типы, форматы), связанные с потоками данных и хранилищами данных. Эти элементы передаются на следующий этап проектирования, причем хранилища данных могут быть автоматически преобразованы в сущности.
Data Analyst – инструмент для построения модели «сущность-связь» автоматической генерации на ее основе реляционной структуры. Исходные данные для модели «сущность-связь» могут быть получены из DFD- моделей, созданных в модуле Process Analyst. В ER-диаграммах допускаются только бинарные связи, задание атрибутов у связей не поддерживает-
13
ся. Поддерживаются диалекты языка SQL примерно для 30 реляционных СУБД, при этом могут быть сгенерированы таблицы, представления, индексы, триггеры и т.д. В результате порождается SQL-сценарий (последовательность команд CREATE), выполнение которого создает спроектированную схему базы данных. Имеется также возможность установить соединение с СУБД через интерфейс ODBC. Другие возможности: автоматическая проверка правильности модели, расчет размера базы данных, реинжиниринг (построение модельных диаграмм для уже существующих баз данных) и т.д.
Application Modeler – инструмент для автоматической генерации прототипов программ обработки данных на основе реляционных моделей, построенных в Data Analyst. Может быть получен код для Visual Basic, Delphi, а также для таких систем разработки в архитектуре «клиентсервер» как PowerBuilder, Uniface, Progress и др. Генерация кода осуществляется на основе шаблонов, соответственно управлять генерацией можно за счет изменения соответствующего шаблона.
Ознакомительную версию Power Designer, в которой заблокированы функции сохранения построенных моделей, можно получить с российского web-сервера комании Sybase.
1.3.3. Silverrun компании Silverrun Technologies Ltd
CASE-система Silverrun состоит из следующих инструментов:
BPM – построение DFD-диаграмм. Поддерживает нотации Йордона-де Марко, Гейна-Сарсона, Уорда-Меллора и многие другие. Данный инструмент позволяет автоматически проверить целостность построенной модели, причем список критериев проверки определяется пользователем (например: отсутствие имен у элементов модели, потоки данных типа «хранилище – хранилище» или «внешняя сущность – внешняя сущность» и т.д.)
14
ERX – построение диаграмм «сущность-связь». Поддерживаются не только бинарные связи, но и связи более высоких порядков, имеется возможность определения атрибутов у связей. Построенные ER-модели с помощью внешней утилиты могут быть сконвертированы в реляционные структуры (в той версии, с которой я работал, при этом, к сожалению, терялись атрибуты связей).
RDM – инструмент реляционного моделирования, позволяет генерировать SQL-скрипты для создания таблиц и индексов примерно для 25 целе-
вых СУБД.
Следует отметить, что компания Silverrun Technologies Ltd является не только разработчиком CASE-инструментария, но также создала собственную методологию создания информационных систем, получившую название Datarun. Эта методология включает описание всех этапов жизненного цикла информационной системы, перечень и последовательность работ, требования к содержанию и оформлению документов и многое другое.
Ознакомительную версию Silverrun, можно скачать с сервера комании Argussoft. В этой версии имеются ограничения на количество элементов в создаваемых моделях.
1.3.4. BPWin и ERWin компании LogicWorks
LogickWorks выпускает два взаимнодополняющих инструмента проектирования информационных систем:
BPWin – функциональное моделирование на основе методологии IDEF0. Допускается также использовние нотации IDEF3 и DFD в нотации Йордонаде Марко. Имеется возможность экспорта построенных моделей в системы функционально-стоимостного анализа (ABC – Activity Based Costing) и информационного моделирования ERWin.
ERWin – средство информационного моделирования, используется нотация IDEF1X. Поддерживаются свыше 20 целевых СУБД, имеется воз-
15
можность генерации прототипов прикладных программ для Visual Basic,
Delphi и т.д.
1.3.5. Designer/2000 компании Oracle
Данный продукт компании Oracle, возможно, наиболее полно поддерживает все этапы создания приложений обработки данных. Однако, следует оговориться, что, в отличие от других средств, он поддерживает практически одну целевую СУБД – Oracle Server (имеется еще возможность генерации скриптов на ANSI SQL). То же самое касается и средств создания пользовательского интерфейса. Хотя возможна генерация прототипов программ для языков Visual Basic, C, Java, полностью все возможности Designer/2000 реализуются только при использовании его вместе со сред-
ством разработки Oracle Developer/2000.
В состав Oracle Designer/2000 включены следующие модули: 1. Инструментарий анализа предметной области:
–Process Modeler – средство анализа деловой активности организации. Позволяет создать модель структуры организации и привязать к этой модели функции, выполняемые в различных подразделениях, и информационные потоки между функциями. Содержит элементы бизнес-анализа.
–Dataflow Diagrammer – в этом инструменте на базе DFD - диаграмм детализуются функции, описаные в Process Modeler. Используется нотация
Йордона-де Марко.
–Function Hierarchy Diagrammer – этот модуль автоматически выстраивает иерархии функций, определенных в двух предыдущих инструментах, имеется также возможность создавать прототипы функций.
–Entity Relationships Diagrammer – инструмент моделирования данных
(диаграммы «сущность-связь», которыми оперируют функции, определенные в Dataflow Diagrammer. Используется нотация Баркера).
16
–Matrix Diagrammer – иструмент для исследования связей между функциями и данными.
2. Генераторы структур:
–Database Wizard – генерирует реляционные структуры из ERдиаграмм.
–Application Wizard – генерирует иерархию программных модулей конечного приложения обработки данных на основе иерархии функций. При этом может одновременно генерироваться несколько взаимосвязанных подсистем для различных подразделений одной организации. Во время генерации автоматически обнаруживаются одинаковые с точки зрения использования информационных объектов функции, которые могут быть объединены в одном модуле.
3. Инструментарий проектирования приложения:
–Data Diagrammer – инструмент для доработки реляционных структур данных на основе нотации Баркера.
–Module Structure Diagrammer – инструмент для управления структурой программных модулей готового приложения. Здесь определяются типы модулей (меню, экранная форма, отчет) и их иерархии вызовов.
–Module Data Diagrammer – средство для проектирования экранного интерфейса программного модуля на основе используемых им данных. Позволяет без программирования весьма гибко управлять внешним видом и поведением генерируемого модуля.
4. Генераторы данных и кода:
–Server Generator – генерирует базу данных на основе реляционных моделей.
–Генераторы кода – на основе моделей, построенных в Module Data Diagrammer, позволяют создать исходный код для Visual Basic, C, Java а
также инструментов среды Oracle Developer/2000 (Oracle Forms, Oracle Reports). В последнем случае возможна циклическая доработка приложе-
17
ния: в сгенерированный прототип приложения в Developer/2000 вносятся изменения, которые видны для Designer/2000 и не теряются при повторной перегенерации.
– Preferences Navigator – средство управления предпочтениями при генерации программных модулей. Позволяет устанавливать многочисленные опции (например, внешний вид элементов экранного интерфейса) как для проекта в целом, так и для каждого модуля в отдельности.
Также в Oracle Designer/2000 имеется ряд других инструментов: утилита для интерактивного выполнения SQL-запросов, средства управления проектом и т.д
2. МЕТОДОЛОГИИ СТРУКТУРНОГО МОДЕЛИРОВАНИЯ
Структурный анализ – это систематический пошаговый подход к анализу требований и проектированию спецификаций системы независимо от того, является ли она существующей или создается вновь.
Методология структурного анализа и проектирования определяет шаги работы, которые должны быть выполнены, их последовательность, правила распределения и назначения операций и методов.
В настоящее время успешно используются такие методологии, как структурный системный анализ Гейна–Сарсона, структурный анализ и проектирование Йордана–де Марко, SADT и другие.
2.1. Диаграммы потоков данных. Нотация Йордана–де Марко. Нотация Гейна–Сарсона
Диаграммы потоков данных (DFD – Data Flow Diagramm) являются основным средством моделирования функциональных требований проектируемой системы. С их помощью эти требования разбиваются на функциональные компоненты (процессы) и представляются в виде сети, связанной потоками данных. Главная цель таких средств – продемонстрировать, как
18
каждый процесс преобразует свои входные данные в выходные, а также выявить отношения между этими процессами.
Для изображения DFD традиционно используются две различные нотации: Йордана–де Марко и Гейна–Сарсона. Диаграммы потоков данных (DFD – Data Flow Diagramm) строятся из элементов, представленных в
таблице 3.
Таблица 3
Конструктивные элементы диаграммы потоков данных
Элемент |
Нотация Йордона–де Марко |
|
Гейна-Сарсона |
|||
Функция |
|
|
|
|
|
|
|
|
|
|
|
|
|
Поток |
|
|
|
|
|
|
|
|
|
|
|
|
|
данных |
|
|
|
|
|
|
|
|
|
|
|
|
|
Хранилище |
|
|
|
|
|
|
данных |
|
|
|
|
|
|
Внешняя |
|
|
|
|
|
|
сущность |
|
|
|
|
|
|
|
|
|
|
|
|
|
На диаграммах функциональные требования представляются с помощью процессов и хранилищ, связанных потоками данных.
Потоки данных являются механизмами, использующимися для моделирования передачи информации (или даже физических компонент) из одной части системы в другую. Важность этого объекта очевидна: он дает название целому инструменту. Потоки на диаграммах обычно изображаются именованными стрелками, ориентация которых указывает направление движения информации.
Иногда информация может двигаться в одном направлении, обрабатываться и возвращаться назад в ее источник. Такая ситуация может модели-
19
