- •База данных
- •1.3 Первичное описание информационного обеспечения
- •1.4 Вывод
- •2 Выявление ограничений и правил поддержания целостности
- •2.1 Уровень атрибутов
- •2.3 Уровень множеств кортежей
- •2.4 Уровень базы данных
- •2.5 Вывод
- •3.1 Составление локальных исходных er-моделей
- •3.2 Нормализация локальных er-моделей
- •Код сотрудника
- •Код товара
- •Код сотрудника
- •Код сотрудника
- •Дата проверки
- •Код пок-ля
- •Код арендатора
- •Код сотрудника
- •3.3 Спецификация ограничений и правил поддержания целостности
- •5.2 Спецификация ограничений и правил поддержания целостности
- •5.3 Sql-код для создания реляционной модели
- •Create trigger Сотрудник
1.4 Вывод
В результате анализа предположительного функционирования гипотетической автоматизированной системы «Рынок» выбраны пять автоматизируемых функций, охватывающих всю среду функционирования системы, информационное обеспечение которых соответствует указанным в таблице объектам предметной области и включает несколько атрибутов, охватывающих сведения о сотрудниках, арендаторах, арендованного оборудования и склада, а также о продаваемом товаре.
2 Выявление ограничений и правил поддержания целостности
Данный раздел посвящен выявлению ограничений и правил поддержания целостности данных, которые будут размещаться в базе данных. Рассматриваются ограничения и правила для отдельных атрибутов, кортежей, множеств кортежей и базы данных в целом.
2.1 Уровень атрибутов
В данном подразделе для функций, определенных в разд. 1.2, выявляются ограничения и правила на уровне атрибутов, выбранных в разд. 1.3. В первую очередь путем анализа отдельных атрибутов определяются характеристики доменов, из которых атрибуты объектов, участвующих в выполнении автоматизируемых функций, берут свои значения. Далее анализируются возможные изменения значений атрибутов с целью выявления динамических ограничений и операционных правил, относящихся к отдельным атрибутам.
2.1.1 Функция 1 «Учет кадров»
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.1. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.1 Домены атрибутов для функции 1 «Учет кадров»
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1 Код сотрудника |
Числовая строка (6) |
|
1) |
|
|
+ |
|
1.2 Фамилия |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.3 Имя |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.4. Отчество |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.5. Пол |
Строка русских букв |
М или Ж |
|
|
|
+ |
|
1.6. Количество детей |
Числовая строка (2) |
|
|
+ |
|
| |
1.7. Социальный номер |
Числовая строка (12) |
|
|
|
+ |
| |
1.8. Должность |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
1.9. Стаж |
Числовая строка (2) |
|
|
|
|
| |
1.10 Оклад |
Числовая строка (6) |
|
|
|
|
| |
1.11 Дата приема |
Дата |
>= 23.05.90 <= Тек. Дата |
|
|
|
+ |
|
2.1.Серия |
Числовая строка (4) |
|
|
|
|
+ |
|
2.2. Номер |
Числовая строка (6) |
|
|
|
|
+ |
|
2.3. Дата рождения |
Дата |
|
|
3) |
|
+ |
|
2.4. Дата выдачи |
Дата |
|
|
5) |
|
|
|
2.5. Кем выдан |
Строка русских букв |
А…Яя |
|
|
|
|
|
2.6. Семейное положение |
Строка русских букв |
А…Яя |
|
|
|
|
|
3.1. Индекс |
Числовая строка (6) |
|
|
|
|
|
|
3.2. Город |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
3.3. Улица |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
3.4. дом |
Числовая строка (3) |
|
|
|
|
+ |
|
3.5. Квартира |
Числовая строка (3) |
|
|
|
|
+ |
|
3.6. Район |
Строка русских букв |
А…Яя |
|
|
|
|
|
3.7. Телефон |
Числовая строка (12) |
|
4) |
|
+ |
|
|
Примечания:
1) ггппнн, где гг – год поступления; пп – номер подразделения; нн – порядковый номер сотрудника в подразделении;
2) русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.
3) Дата рождения > Текущая дата – 100 лет; Дата рождения < Текущая дата – 16 лет.
4) (цифровой код города) цифровой номер, возможны разделители-дефисы.
5) Дата выдачи >= дата рождения + 14 лет.
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, не выявлены.
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.2.
Таблица 2.2 Операционные правила на уровне атрибутов для функции 1 «учет кадров»
Атрибут |
Операционное правило |
Код сотрудника
Стаж Оклад |
При увольнении сотрудника его идентифицирующий код освобождается При работе сотрудника каждый год к стажу прибавляется 1 При изменении должности меняется оклад |
2.1.2 Функция 2 «Аренда мест»
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.3. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.3 Домены атрибутов для функции 2 «Аренда места»
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1. Код арендатора |
Числовая строка (5) |
|
1) |
|
|
+ |
|
1.2. Фамилия |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.3. Имя |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.4. Отчество |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.5. Пол |
Строка русских букв |
М или Ж |
|
|
|
+ |
|
1.6. Количество детей |
Числовая строка (2) |
|
|
+ |
|
| |
1.7. Социальный номер |
Числовая строка (12) |
|
|
|
+ |
| |
2.1.Серия паспорта |
Числовая строка (4) |
|
|
|
|
+ |
|
2.2. Номер паспорта |
Числовая строка (6) |
|
|
|
|
+ |
|
2.3. Дата рождения |
Дата |
|
|
3) |
|
+ |
|
2.4. Дата выдачи |
Дата |
|
|
5) |
|
|
|
2.5. Кем выдан |
Строка русских букв |
А…Яя |
|
|
|
|
|
2.6. Семейное положение |
Строка русских букв |
А…Яя |
|
|
|
|
|
3.1. Индекс |
Числовая строка (6) |
|
|
|
|
|
|
3.2. Город |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
3.3. Улица |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
3.4. дом |
Числовая строка (3) |
|
|
|
|
+ |
|
3.5. Квартира |
Числовая строка (3) |
|
|
|
|
+ |
|
3.6. Район |
Строка русских букв |
А…Яя |
|
|
|
|
|
3.7. Телефон |
Числовая строка (12) |
|
4) |
|
+ |
|
|
4.1. Код товара |
Числовая строка (6) |
|
|
|
|
+ |
|
4.2. Название товара |
Строка русских букв |
А…Яя |
|
|
|
|
|
4.3. Номер лицензии |
Числовая строка (15) |
|
|
|
|
|
|
5.1. Арендная плата |
Числовая строка (6) |
|
|
|
|
+ |
|
5.2. Дата начала аренды |
Дата |
|
|
|
|
|
|
5.3 Дата конца аренды |
Дата |
|
|
7) |
|
|
|
5.4. Код аренд. места |
Числовая строка (4) |
|
6) |
|
|
+ |
|
Примечания:
1) ггппнн, где гг – год начала аренды; ннн – порядковый номер арендатора;
2) русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.
3) Дата рождения > Текущая дата – 100 лет; Дата рождения < Текущая дата – 16 лет.
4) (цифровой код города) цифровой номер, возможны разделители-дефисы.
5) Дата выдачи >= дата рождения + 14 лет.
6) ррнн, где рр- номер ряда; нн – порядковый номер в ряду;
7) Дата конца ареды – Дата начала аренды <14 дней
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, не выявлены.
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.4.
Таблица 2.4 Операционные правила на уровне атрибутов для функции 2 «Аренда мест»
Атрибут |
Операционное правило |
Код арендатора Код аренд.места |
При уходе арендатора его идентифицирующий код освобождается При уходе арендатора код аренд.места освобождается |
2.1.3 Функция 3 «Аренда оборудования»
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.5. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.5 Домены атрибутов для функции 3 «Аренда оборудования»
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1. Код арендатора |
Числовая строка (5) |
|
1) |
|
|
+ |
|
1.2. Фамилия |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.3. Имя |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.4. Отчество |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.5. Код аренд. места |
Числовая строка (4) |
|
3) |
|
|
|
|
2.1. Код оборудования |
Числовая строка (4) |
|
|
|
|
+ |
|
2.2. Вид оборудования |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
2.3. Количество |
Числовая строка (4) |
|
|
|
|
+ |
|
2.4. Дата начала аренды |
Дата |
|
|
|
|
|
|
2.5. Дата конца аренды |
Дата |
|
|
|
|
|
|
Примечания:
1) ггппнн, где гг – год начала аренды; ннн – порядковый номер арендатора;
2) русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами;
3) ррнн, где рр- номер ряда; нн – порядковый номер в ряду;
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, не выявлены.
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.6.
Таблица 2.6 Операционные правила на уровне атрибутов для функции 3 «Аренда оборудования»
Атрибут |
Операционное правило |
Код арендатора Код аренд.места Код оборудования |
При уходе арендатора его идентифицирующий код освобождается При уходе арендатора код аренд.места освобождается При вводе нового оборудования его код=коду предыдущего + 1, а при удалении записи об оборудовании коды последующих уменьшаются на 1. |
2.1.4 Функция 4 «Аренда склада»
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.7. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.7 Домены атрибутов для функции 4 «Аренда склада»
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1. Код арендатора |
Числовая строка (5) |
|
1) |
|
|
+ |
|
1.2. Фамилия |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.3. Имя |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.4. Отчество |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.5. Серия паспорта |
Числовая строка (4) |
|
|
|
|
+ |
|
1.6. Номер паспорта |
Числовая строка (6) |
|
|
|
|
+ |
|
2.1. Арендная плата |
Числовая строка (6) |
|
|
|
|
+ |
|
2.2. Дата начала аренды |
Дата |
|
|
|
|
|
|
2.3 Дата конца аренды |
Дата |
|
|
3) |
|
|
|
2.4. Код аренд. ячейки |
Числовая строка (4) |
|
|
|
|
+ |
|
2.5. Название хранимого товара |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
2.6. Количество хранимого товара |
Числовая строка (4) |
|
|
|
+ |
|
|
Примечания:
1) ггппнн, где гг – годначала аренды; ннн – порядковый номер арендатора ;
2) русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.
3) Дата конца ареды – Дата начала аренды <14 дней
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, не выявлены.
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.8.
Таблица 2.8 Операционные правила на уровне атрибутов для функции 3 «Аренда оборудования»
Атрибут |
Операционное правило |
Код арендатора Код аренд.ячейки |
При уходе арендатора его идентифицирующий код освобождается При отказе арендатора от ячейки код аренд.ячейки освобождается |
2.1.5 Функция 5 «Санконтроль»
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.9. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.9 Домены атрибутов для функции 5 «Санконтроль»
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1. Код арендатора |
Числовая строка (5) |
|
1) |
|
|
+ |
|
1.2. Фамилия |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.3. Имя |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.4. Отчество |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
1.5. Серия паспорта |
Числовая строка (4) |
|
|
|
|
+ |
|
1.6. Номер паспорта |
Числовая строка (6) |
|
|
|
|
+ |
|
2.1. Код товара |
Числовая строка (6) |
|
|
|
|
+ |
|
2.2. Название товара |
Строка русских букв |
А…Яя |
|
|
|
|
|
2.3. Номер лицензии |
Числовая строка (15) |
|
|
|
|
|
|
2.4. Количество товара |
Числовая строка (6) |
|
|
|
+ |
|
|
3.1. Название показателя |
Строка русских букв |
А…Яя |
|
|
|
|
|
3.2. Значение показателя |
Строка русских букв |
А…Яя |
|
|
|
|
|
3.3. Дата проверки |
Дата |
|
|
4) |
|
|
|
3.4. Результат проверки |
Строка русских букв |
А…Яя |
|
|
|
|
|
4.1. Код сотрудника |
Числовая строка (6) |
|
3) |
|
|
+ |
|
4.2. Фамилия |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
4.3. Имя |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
4.4. Отчество |
Строка русских букв |
А…Яя |
2) |
|
|
+ |
|
4.5. Должность |
Строка русских букв |
А…Яя |
|
|
|
+ |
|
Примечания:
1) ггппнн, где гг – год начала аренды; ннн – порядковый номер арендатора ;
2) русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.
3) ггппнн, где гг – год поступления; пп – номер подразделения; нн – порядковый номер сотрудника в подразделении;
4) Дата проверки =< Текущей даты
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, не выявлены.
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.10.
Таблица 2.10 Операционные правила на уровне атрибутов для функции 5 «Санконтроль»
Атрибут |
Операционное правило |
Код арендатора Код товара |
При уходе арендатора его идентифицирующий код освобождается При удалении товара с продажи его код освобождается |
2.2 Уровень кортежей
В данном подразделе для функций, определенных в разд. 1.2, выявляются ограничения и правила на уровне групп атрибутов, составляющих кортежи. В первую очередь анализируется обязательность присутствия значений определенных атрибутов в составе кортежей, а также значения, присваиваемые атрибуту по умолчанию в случае отсутствия значения. Далее анализируются ограничения на совокупность значений нескольких атрибутов в пределах кортежа. Наконец, рассматриваются возможные изменения значений кортежей с целью выявления динамических ограничений и операционных правил, относящихся к отдельным кортежам.
2.2.1 Функция 1 «учет кадров »
Статические ограничения для данной функции на уровне кортежей для групп атрибутов приведены в табл. 2.11.
Таблица 2.11 Статические ограничения для групп атрибутов на уровне кортежей функции 1 «учет кадров »
№ п/п |
Группа атрибутов |
Ограничение |
1 |
2.3 Дата рождения 1.11 Дата приема |
Дата приема – Дата рождения >= 16 лет |
2 |
2.3 Дата рождения 2.4. Дата выдачи паспорта |
Дата выдачи>=Дата рождения+14
|
Операционные правила для кортежей атрибутов соответствующих данной функции, приведены в табл. 2.12.
Таблица 2.12 Операционные правила на уровне кортежей функции 1 «Учет кадров»
№ п/п |
Группа атрибутов |
Ограничение |
1 |
Код сотрудника |
Код сотрудника больше предыдущего на 1 |
2.2.2 Функция 2 «аренда мест »
Статические ограничения для данной функции на уровне кортежей для групп атрибутов приведены в табл. 2.13.
Таблица 2.13 Статические ограничения для групп атрибутов на уровне кортежей функции 2 «аренда мест »
№ п/п |
Группа атрибутов |
Ограничение |
1 |
1.9 Дата рождения 1.10 Дата приема |
Дата приема – Дата рождения >= 16 лет |
2 |
5.2. Дата начала аренды 5.3 Дата конца аренды |
Дата начала аренды < Дата конца аренды |
Операционные правила для кортежей атрибутов соответствующих данной функции, приведены в табл. 2.14.
Таблица 2.14 Операционные правила на уровне кортежей функции 2 «Аренда мест»
№ п/п |
Группа атрибутов |
Ограничение |
1 |
Код арендатора |
Код арендатора больше предыдущего на 1 |
2 |
Код арендного места |
Код арендного места больше предыдущего на 1 |
2.2.3 Функция 3 «аренда оборудования »
Статические ограничения для данной функции на уровне кортежей для групп атрибутов приведены в табл. 2.15.
Таблица 2.15 Статические ограничения для групп атрибутов на уровне кортежей функции 3 «аренда оборудования »
№ п/п |
Группа атрибутов |
Ограничение |
1 |
5.2. Дата начала аренды 5.3 Дата конца аренды |
Дата начала аренды < Дата конца аренды |
Операционные правила для кортежей атрибутов соответствующих данной функции, приведены в табл. 2.16.
Таблица 2.16 Операционные правила на уровне кортежей функции 3 «Аренда оборудования»
№ п/п |
Группа атрибутов |
Ограничение |
1 |
Код арендатора |
Код арендатора больше предыдущего на 1 |
2 |
Код арендного места |
Код арендного места больше предыдущего на 1 |
3 |
Код оборудования |
Код оборудования больше предыдущего на 1 |
2.2.4 Функция 4 «аренда склада »
Статические ограничения для данной функции на уровне кортежей для групп атрибутов приведены в табл. 2.17.
Таблица 2.17 Статические ограничения для групп атрибутов на уровне кортежей функции 4 «аренда склада »
№ п/п |
Группа атрибутов |
Ограничение |
1 |
5.2. Дата начала аренды 5.3 Дата конца аренды |
Дата начала аренды < Дата конца аренды |
Операционные правила для кортежей атрибутов соответствующих данной функции, приведены в табл. 2.18.
Таблица 2.18 Операционные правила на уровне кортежей функции 4 «Аренда склада»
№ п/п |
Группа атрибутов |
Ограничение |
1 |
Код арендатора |
Код арендатора больше предыдущего на 1 |
2 |
Код арендованной ячейки |
Код арендованной ячейки больше предыдущей на 1 |
2.2.5 Функция 5 «Сан контроль »
Статические ограничения для данной функции на уровне кортежей для групп атрибутов приведены в табл. 2.19.
Таблица 2.19 Статические ограничения для групп атрибутов на уровне кортежей функции 5 «Сан контроль »
№ п/п |
Группа атрибутов |
Ограничение |
1 |
Дата проверки |
Дата проверки<Текущая дата |
Операционные правила для кортежей атрибутов соответствующих данной функции, приведены в табл. 2.20.
Таблица 2.20 Операционные правила на уровне кортежей функции 5 «Сан контроль »
№ п/п |
Группа атрибутов |
Ограничение |
1 |
Код сотрудника |
Код сотрудника больше предыдущего на 1 |
2 |
Код арендатора |
Код арендатора больше предыдущего на 1 |
3 |
Код товара |
Код товара больше предыдущего на 1 |