Средства автоматизированной разработки приложений
Проектирование БД можно проводить с помощью автоматизированных систем разработки приложений, так называемых CASE (Computer Aided Software Engineering) систем. Автоматизированные системы разработки приложений представляют собой программные средства, поддерживающие процессы создания и сопровождения информационных систем, такие как анализ и формулировка требований, проектирование приложений, генерация кода, тестирование, управление конфигурацией и проектом. Хотя эти системы предназначены для автоматизации разработки любых программных продуктов, в действительности они преимущественно используются для разработки БД. Основная цель CASE систем состоит в том, чтобы отделить процесс проектирования программного обеспечения от его кодирования и последующих этапов разработки (тестирование, документирование и т.д.), а также автоматизировать весь процесс создания программных систем, или инжиниринг. В таких системах допускается возврат к предыдущему этапу разработки, или реинжиниринг. Большую популярность эти системы завоевали вследствие наличия хороших диаграммных средств визуализации проектирования и средств генерации сопроводительной документации.
Процесс разработки баз данных с помощью CASE систем на этапе концептуального проектирования обычно проводится с помощью модели «сущность-связь». Модель «сущность-связь» необходимо рассматривать как способ концептуального проектирования данных, а не как самостоятельную модель данных. Результатом проектирования практически всегда (или до недавнего времени) являлась реляционная модель данных. В последнее время с появлением расширенной модели типа «сущность-связь» и объектно-ориентированной модели данных, конечным результатом проектирования все чаще стали являться объектно-реляционная и объектно-ориентированная модели данных.
Для автоматизации проектирования объектно-ориентированных баз данных CASE системы предоставляют специальный язык Unified Modeling Language (UML), который можно определить как промышленный объектно-ориентированный стандарт моделирования. Его составляющими можно назвать языки OMT (Object Modeling Technique) и OOSE (Object-Oriented Software Engineering). Большую роль в создании этого языка сыграл консорциум OMG (Object Management Group), включающий ряд ведущих производителей программного обеспечения.
CASE системы различаются по ориентации, по функциональной полноте и типу используемой модели. По ориентации можно выделить CASE системы, предназначенные:
1. только для анализа предметной области,
2. для анализа и проектирования,
3. для проектирования баз данных,
4. для полной разработки приложений.
К числу последних можно отнести Borland Builder (Delphi) и MS Visual Studio. По функциональной полноте разделяются:
· на системы, предназначенные для решения отдельных задач проектирования,
· на интегрированные системы, поддерживающие весь цикл разработки.
По типу используемой модели разделяются:
1. на структурные,
2. объектно-ориентированные,
3. комбинированные.
Примерами CASE систем могут служить: ERWin (Logic Works), Rational Rose (Rational Software) (OODBMS), S-Designer (SPD), DataBase Designer, Developer/Designer 2000 (Oracle Corp.).
Упражнения
3.1. Сформулируйте назначение ключей в реляционной модели данных.
3.2. Какие задачи решает теория нормализации данных.
3.3. Опишите проблемы, связанные с наличием повторяющихся данных.
3.4. Сформулируйте правила нормализации.
3.5. Дайте определение первой нормальной формы.
3.6. Дайте определение второй нормальной формы.
3.7. Дайте определение третьей нормальной формы.
3.8. Зачем необходимо разбивать информацию, хранящуюся в одной таблице, на несколько связанных таблиц в реляционной модели данных.
3.9. Следуя правилам нормализации разработайте схему данных расписания занятий, представленную на Error! Reference source not found..
3.10. Схема отношения АВИАЛИНИИ содержит следующие атрибуты: HP — номер рейса; НС — номер самолета; НЭ — номер экипажа; ДВ — день вылета; МБ—место вылета; МП — место прибытия; МС — модель самолета; КП — количество пассажиров; ФК, — фамилия командира; СК — стаж командира.
Заданы следующие F-зависимости:
НРàМВ ВВ МП, HG ДВàНЭ.
Привести пример ненормализованного отношения для схемы АВИАЛИНИИ и преобразовать его, используя F-зависимости, в отношение в 1НФ, 2НФ и 3HФ.
3.11. Найти замыкание множества атрибутов Х=(А, С, Е, К, Р), используя такие F-зависимости:
KLàM, MQàL, BCàL,
PQRàT, BKàQ, AQàR. АСàВ, MPàD
3.12. Дано множество F-зависимостей F:
ТàК, В ТàЧ,
ВàП, ПàС.
Здесь С — строительный кооператив; П — продавец домов; Т — тип дома; В — владелец домов; Ч — число домов одного типа, относящихся к владельцу; К.— квартирная плата владельцу. Найти ключ отношения R(К, Ч, В, Т, П, С). Сколько имеется ключей?
3.13. Пусть Л — множество F-зависимостей, где И — идентификатор продавца (см. упражнение 4.3):
ТàК, ИàП,
ВàП, П ИàС,
В ТàЧ, В ИàП,
ПàИ
Найти минимальное покрытие множества F1
3.14. Дано множество F-зависимостей F2 {смысл атрибутов см. в упражнении 3.12):
ТàК, ИàП,
ВàП, ИàС,
В ТàЧ, ПàС,
ПàИ
1.Найти схему отношения в ЗНФ, которой удовлетворяют указанные F-зависимости.
2.Показать работу алгоритма синтеза схем отношений в ЗНФ на примере множества F2.
3.15. Пусть атрибут К содержит перечень квартирных платежей. Тогда имеем MV-зависимость ТààК. Найти 4НФ следующего множества зависимостей (смысл атрибутов см. в упражнении 3.12):
ТààК, В ТàЧ.
ВàП ПàС.