Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
07_Метод_указания_по_КР.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
173.57 Кб
Скачать

ОБЩИЕ РЕКОМЕНДАЦИИ ПО ВЫПОЛНЕНИЮ КУРСОВОЙ РАБОТЫ

Предметная область и тема курсовой работы предлагаются студентом и согласуются с преподавателем, или назначаются преподавателем. Программные средства, необходимые для реализации курсовой работы обосновываются и выбираются студентом и согласуются с преподавателем.

По выбранной теме в некоторой предметной области необходимо разработать базу данных и комплекс программ по управлению этой базой.

Курсовая работа должна содержать следующие разделы:

  1. Внешняя модель предметной области, которая должна включать описание представлений о предметной области не менее 2-х пользователей в следующем виде:

1.1Описание объектов предметной области, их атрибутов и связей между объектами;

1.2Описание функциональных зависимостей, имеющих место в предметной области;

1.3Описание способов, форм обработки и представления сведений о хранимой в базе данных информации (не менее 3-х запросов);

1.4Дополнительные требования;

1.5Модель предметной области в виде схемы "Объекты связи".

  1. Логическая (концептуальная) модель предметной области с использованием реляционной модели. При этом необходимо выполнить следующее:

    1. разработать схемы базовых отношений;

    2. описать домены атрибутов всех отношений;

    3. построить множество функциональных зависимостей;

    4. построить неприводимое множество функциональных зависимостей;

    5. построить один супер – ключ, доказать его уникальность.

    6. по супер - ключу построить один составной потенциальный ключ. Доказать его потенциальность.

    7. Выбрать первичный ключ. Обосновать выбор.

    8. Провести нормализацию отношений до уровня не ниже 3НФ. На каждом этапе нормализации обосновывать выбор первичных ключей для каждого отношения.

    9. Разработать предикат для проверки целостности базы данных.

    10. Описать требуемые виртуальные отношения.

    11. Разработать реляционные выражения для реализации запросов.

3. Физическая (внутренняя) модель, которая должна содержать тексты программ для создания и поддержки всех используемых отношений, визуализацию запросов в виде экранных форм и документов. При реализации внутренней модели особое внимание уделить выполнению следующих правил Кодда:

- физическая независимость данных;

- логическая независимость данных;

- дистрибутивная независимость.

Разрабатываемое программное обеспечение должно реализовывать сетевой, многопользовательский способ доступа, содержать инструкции по инсталляции программного обеспечения и базовых отношений. Требуется обеспечить простое изменение основных констант, характеризующих предметную область типа: название организации, фамилия руководителя и т.д.

ОСНОВНЫЕ ТЕРМИНЫ И ПОНЯТИЯ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ

Объект – сущность предметной области.

Атрибут  (имя Атрибута, реквизит) – параметр объекта предметной области. (Свойство некоторой сущности).

Пример: Фамилия, Возраст – свойства объекта сотрудник.

Домен (атрибута) – множество допустимых значений, которые может принимать атрибут.

Пример: Возраст є [18…80]

Схема отношения – конечное множество [имен] атрибутов, определяющих объект. (Мощность схемы отношения = арности кортежей.)

Отношение – конечное множество кортежей (подмножество прямого произведения), составленных из допустимых значений атрибутов схемы отношений.                

Фамилия

Должность

Возраст

Схема отношения

Отношение

Кортеж

Значение атрибута

Иванов

Петренко

Директор

Бухгалтер

40

35

Петров

Менеджер

36

Сидоров

Инженер

27

                                                                            

Ключ (первичный ключ) – множество атрибутов, значение которых уникальным  образом идентифицирует кортеж в отношении.

Схема реляционной базы – множество используемых в приложениях схем отношений      данных.

Реляционная база данных (РБД) – множество отношений (предполагается, что отношения логически связаны между собой). 

Реляционные операции – операции над отношениями. Результатом любой реляционной операции является также отношение. 

Реляционное выражение – выражение над отношениями, составленное из реляционных операций. Реляционное выражение – тоже отношение.

Реляционный запрос – описание свойств (условий), которые должны удовлетворять интересующие пользователя данные.

Эквивалентной формой описания запроса является реляционное выражение. Именно эквивалентной  т. к. есть 2 формы запросов.

СУБД – набор программных средств, обеспечивающих хранение и обработку данных в базе. Взаимодействие прикладной программы с базой данных выполняется через СУБД. Приложение взаимодействует с СУБД на некотором языке.

Язык описания данных (ЯОД) – язык, позволяющий описать структуру БД и создать БД с требуемой структурой.

Язык манипулирования данными (ЯМД) – язык, позволяющий описать действия по чтению, добавлению, обновлению и удалению данных в БД.

Язык запросов – часть языка манипулирования данными, предназначенный для удобного определения сложных реляционных запросов.

Целостность базы данных (или логическая целостность данных)– свойство БД, при наличии, которой БД содержит полную и непротиворечивую информацию, необходимую и достаточную для корректного функционирования приложений (в отличие от физической целостности).

Ограничения целостности – набор условий, определяющие целостность базы данных.

Различают ограничения диапазонов возможных значений атрибутов и структурные ограничения (т.е. ограничения на кортежи, имеющиеся в отношениях).

Примером ограничения диапазонов является определение доменов атрибутов.  Примером структурного ограничения является  определение первичных ключей.

Транзакция – неделимая операция по изменению содержания БД. Выполнение транзакции завершается двумя способами:

  • отмена транзакции (возврат в предыдущее состояние);

  • регистрация транзакции: проверка и, при необходимости, восстановление целостности БД.

Итак, до и после выполнения транзакции база данных гарантированно находится в целостном состоянии. В течение выполнения транзакции целостность базы данных не контролируется.

Защита баз данных – это:

  • защита БД от физических и логических разрушений;

  • обеспечение санкционированного доступа к данным. Разрушенная база данных не обладает целостностью и требует восстановления. Каждый пользователь может иметь свои санкции для доступа к базе данных (свою видимую область БД, свои права на выполнение каждой из операций над данными). Для предотвращения физического доступа к данным используется хранение закодированных данных. Кодирование и декодирование автоматически выполняется СУБД незаметно для приложений и пользователей.

            

  1. Основные реляционные операции

Операция объединения (соединения) – объединение множества кортежей двух отношений в одно общее отношение. Операция определена для двух отношений одинаковой арности.

Пусть R и S – отношения арности n. 

Объединение RS = { (V1,V2 … Vn) \ (V1…Vn) є R (V1 … Vn) є S }

Операция разности отношений – разностью двух отношений арности n называется отношение (арности n), в которую включены  кортежи первого отношения, не принадлежащие одновременно второму отношению.                                                         

 Пусть R и S – отношения арности n. 

       Разность: R – S = { (V1 … Vn) \ (V1 … Vn) є R  (V1 … Vn) є S}

Операция декартового произведения – двух отношений R (арности n), и S (арности m) называется отношение арности m+n кортежи, которого составлены из кортежей R и S.

Пусть R – отношение арности n, S – отношение арности m.

Декартовое произведение: R= {(V1 … Vn)};  S= {(W1 … Wm)}

RхS = {(V1…Vn, W1…Wm) \ (V1…Vn)єR(W1…Wm)є S}

 Операция проекции – это унарная операция, заключающаяся в проектировании отношения на заданную схему (отношения). Схема проектирования получается из схемы исходного отношения,  удаления ряда атрибутов и (или) перестановки атрибутов исходной схемы.  

Пусть R – отношение арности n, обозначим πi1,i2…im (R) – проекцию R на атрибуты i1, i2, …im, где 1≤ij≤n.

Проекция: πi1,i2…im (R) = {(a1 … am) \ $ (b1 … bn) є R \ aj = bij " j = 1 … m }

Пример: π2,1(R) – составлен из второго и первого элемента R.

Операция селекции – это унарная операция над отношением, заключающаяся в выборе из этого отношения множества кортежей, удовлетворяющих заданному условию.

Пусть F (предикат на множества атрибутов) – логическая формула, в которую входят:

  • константы;

  • имена атрибутов;

  • функции;

  • операции отношения <, >, ≤, ≥≠, =;

  • логические операции ,,¬.

Селекцией отношения R по формуле F – это отношение: δF(R )={(V1…Vn)єR| F≡1}       

Естественное соединение.

Пусть отношение А имеет атрибуты{X1, X2…Xm, Y1, Y2…Yn}, а отношение В {Y1, Y2…Yn, Z1, Z2, …Zk}.

Атрибуты Y1, Y2 … Yn, и только они являются общими для этих отношений. Пусть атрибуты с одинаковыми именами определены на одних и тех же доменах.

Для простоты множества атрибутов обозначим буквами: X,Y,Z

Естественным соединением А и В (A Join B) называется отношение с атрибутами X, Y, Z, состоящими из кортежей (x, y, z), таких, для которых в отношении А атрибуты X=xY=y, при этом в отношении В атрибуты Y=yZ=z.

(A Join B) JoinС = A Join  (B Join C)

      Пример: А = {код, имя, статус, город} – поставщики, В = {номер, вес, город} – детали

                     A:

Код

Имя

Статус

Город

1

Иванов

20

Москва

2

Петров

10

Казань

3

Сидоров

30

Казань

4

Семенов

20

Москва

5

Конкин

30

Новгород

В:

Номер

Вес

Город

1

12

Москва

2

17

Казань

3

17

Ростов

4

14

Москва

5

12

Казань

6

19

Москва

A Join B:

Код

Имя

Статус

Город

Номер

Вес

1

Иванов

20

Москва

1

12

1

Иванов

20

Москва

4

14

1

Иванов

20

Москва

6

19

2

Петров

10

Казань

2

17

2

Петров

10

Казань

5

12

3

Сидоров

30

Казань

2

17

3

Сидоров

30

Казань

5

12

4

Семёнов

20

Москва

1

12

4

Семёнов

20

Москва

4

14

4

Семёнов

20

Москва

6

19

Примеры операций над отношениями:

R:

A

B

C

a

b

с

d

a

f

c

b

d

S:

D

E

F

b

g

a

d

a

f

R  S:

a

b

с

d

a

f

c

b

d

b

g

f

Схему необходимо выбрать дополнительно

R – S:

a

b

c

c

b

d

R  S

A

B

C

D

E

F

a

b

c

b

g

a

d

a

f

b

g

a

c

b

d

b

g

a

a

b

c

d

a

f

d

a

f

d

a

f

c

b

d

d

a

f

A,C (R):

A

C

a

с

d

f

c

d

δB=b (R )

A

B

C

a

b

c

c

b

d

Необходимые сведения из теории проектирования реляционных баз данных

  1. Внешняя модель предметной области, которая должна включать описание представлений о предметной области не менее 2-х пользователей в следующем виде…

Внешняя модель (представления пользователей) это описание предметной области как ее представляют каждый из двух выбранных пользователей. При выборе пользователей из предметной области необходимо помнить, что информационная система еще только разрабатывается, и пользователи реализуют свои должностные обязанности без средств автоматизации. Язык описания внешней модели это язык предметной области, базирующийся на национальном языке. В курсовой работе это русский язык, в котором используется необходимая специальная терминология из предметной области. Сложные и неочевидные термины в этой части курсовой работы должны быть пояснены. Внешняя модель должна содержать подробное описание действий каждого пользователя, связанные с выполнением им своих служебных обязанностей в отношении обработки информации до внедрения информационной системы. Этой информации должно быть достаточно для полноценного проектирования реляционной базы данных.

1.1Описание объектов предметной области, их атрибутов и связей между объектами…

В представлениях пользователей должны быть введены объекты, их свойства (атрибуты) и связи между объектами. Объекты это существенные понятия, необходимые пользователю для описания действий, связанных с выполнение им своих должностных обязанностей. В модели должно содержаться сведения только о тех объектах и их свойствах, с которыми сталкиваются пользователи в своей работе. В курсовой работе должна быть отражена реальная ситуация, когда множества объектов в описаниях различных пользователей не совпадают, т.к. должностные обязанности пользователей не должны совпадать. Исходя из этого же, у совпадающих объектов различных пользователей множества свойств не должны совпадать.

1.2Описание функциональных зависимостей, имеющих место в предметной области…

Необходимо подробно описать ограничения, накладываемые на объекты, их свойства и связи.

1.3Описание способов, форм обработки и представления сведений о хранимой в базе данных информации (не менее 3-х запросов)…

В рамках курсовой работы исходим из предположения, что пользователи регулярно подготавливают сведения об некоторых множествах объектов, с которыми они имеют дело в своей работе. Эти сведения имеют вид отчетов. Каждый отчет имеет заголовок, шапку отчета, таблицу отчета и подписи под таблицей. В таблице приводятся значения свойств объектом. В заголовке описываются общие свойства объектов, включенных в отчет. В подписях под таблицей могут содержаться, например, итоговые числа и подписи ответственных лиц. Каждый пользователь заинтересован не менее, чем в одном отчете. Всего отчетов в курсовой работе должно быть не менее трех. Подробное описание всех отчетов должно содержаться во внешней модели. Рекомендуется избегать описания отчетов о «всех» и (или) об «одном известном объекте». Такие отчеты не представляют интереса, и их можно заменить работой с напечатанными заранее справочниками. Предпочтение следует отдавать отчетам, содержащим сведения о нескольких объектах. По этим отчетам, подготовленным рассматриваемыми пользователями, ответственными лицами принимаются некоторые решения. Например, ежемесячно подготавливать списки трех наиболее покупаемых товаров данной фирмы. В описании такого отчета следует уточнить, что понимает пользователь под понятием «… наиболее покупаемые товары».