5.2.Инструментальные средства проектирования информационных систем.
Во многих случаях эффективную информационную систему не удается построить вручную. Это
объясняется следующими причинами:
- не обеспечивается достаточно глубокий анализ требований к данным
- большая длительность процесса структурирования
- трудность учета и согласования изменений, сделанных в системе несколькими разработчиками
- ограничения сроков на разработку системы
- и т.д.
При разработке крупных информационных систем происходит концентрация сложности на начальных
этапах (анализ требований и проектирование спецификаций системы), в то время как сложность и
трудоемкость последующих этапов остается относительно невысокой. Для преодоления сложностей
начальных этапов разработки предназначен структурный анализ - метод исследования, которое
начинается с общего обзора системы и затем детализуется, приобретая иерехическую структуру со
все большим числом уровней. На каждом уровне расматривается ограниченное число элементов (обычно
от 3 до 6-8), каждый из которых в свою очередь может быть декомпозирован на составляющие
детали на следующем уровне. При этом соблюдаются строгие формальные правила записи информации
(обычно используются диаграммы различных типов).
Такая технология получила название CASE (Computer Aided Software Engeneering
- создание программного обеспечения с помощью компьютера). Основные черты CASE - технологии:
- использование методологии структурного проектирования "сверху-вниз"
- разработка прикладной системы представляется в виде последовательных четко определенных
этапов:
- поддержка всех этапов жизненного цикла информационной системы, начиная с самых общих
описаний предметной области до получения и сопровождения готового программного
продукта
- поддержка репозитария, хранящего спецификации проекта информационной системы на всех
этапах ее разработки
- возможность одновременной работы с репозитарием многих разработчиков
- автоматизация различных стандартных действий по проектироваанию и реализации
приложения
Как правило, CASE-системы поддерживают следующие этапы процесса разработки:
- Моделирование и анализ деятельности пользователей в рамках предметной области.
Здесь осуществляется функциональная декомпозиция, определение иерархий (вложенности)
функций, построение диаграмм потоков данных. Перечень информационных объектов,
которыми манипулируют функции, передается на следующий этап проектирования.
- Концептуальное моделирование - создание модели "сущность-связь" на основе перечня
объектов, полученного на предыдущем этапе. Здесь уточняются характеристики каждого
объекта (атрибуты), устанавливаются связи между объектами.
- Реляционное моделирование - преобразование модели "сущность-связь" в соответствии
с требованиями реляционной модели (реляционная модель допускает только бинарные
связи, не разрешает существование атрибутов у связей, не поддерживает связи
типа n : m). Правила порождения реляционных отношений из модели
"сущность-связь" мы рассмотрим в разделе 5.5.
- Генерация схемы базы данных. Результатом выполения данного этапа является набор
SQL-операторов, описывающих создание схемы базы данных (CREATE TABLE, CREATE INDEX,...),
с учетом особенностей целевой СУБД.
- Генерация прототипов программных модулей по иерахии функций и потокам данных. Для
каждого модуля автоматически подготавливается описание используемых им фрагментов
данных (таблицы, атрибуты, индексы), а также создаются заготовки экранных форм или
отчетов.
Литература:
Следующая глава: 5.3.Функциональное моделирование.
Введение в базы данных. (c) Зеленков
Ю.А. (yz@yars.free.net) 1997 г.
(c) Центр Интернет ЯрГУ