- •База данных
- •Введение
- •1.2 Выбор и описание автоматизируемых функций
- •1.3 Первичное описание информационного обеспечения
- •1.4 Вывод
- •2 Выявление ограничений и правил поддержания целостности
- •2.1 Уровень атрибутов
- •2.2.1 Функция 1 “Продажа билетов”.
- •2.2.2 Функция 2 “Возврат билетов”.
- •2.2.3 Функция 3 “Бронирование билетов”.
- •2.2.4 Функция 4 “Заказ транспортных средств”.
- •2.2.5 Функция 5 “Учет кадров”.
- •2.3 Уровень множеств кортежей
- •2.3.1 Функция 1 “Продажа билетов”.
- •2.3.2 Функция 2 “Возврат билетов”.
- •2.3.3. Функция 3 “Бронирование билетов”.
- •2.3.4 Функция 4 “Заказ транспортных средств”.
- •2.3.5 Функция 5 “Учет кадров”.
- •2.4 Уровень базы данных
- •2.4.1 Функция 1 “Продажа билетов”.
- •2.4.2 Функция 2 “Возврат билетов”.
- •2.4.3 Функция 3 “Бронирование билетов”.
- •2.4.4 Функция 4 “Заказ транспортных средств”.
- •2.4.5 Функция 5 “Учет кадров”.
- •2.5 Вывод
- •3.1.2 Функция 2 “Возврат билетов”
- •3.1.4 Функция 4 “Заказ транспортных средств”
- •3.1.5 Функция 5 “Учет кадров”
- •3.2.1 Функция 1 “Продажа билетов”
- •3.2.2 Функция 2 “Возврат билетов”
- •3.2.3 Функция 3 “Бронирование билетов”
- •3.2.4 Функция 4 “Заказ транспортных средств”
- •3.2.5 Функция 5 “Учет кадров”
- •3.3 Спецификация ограничений и правил поддержания целостности
- •5.2 Спецификация ограничений и правил поддержания целостности
- •5.3 Sql-код для создания реляционной модели
- •5.4 Вывод
- •6.2 Sql-код локальных просмотров для автоматизируемых функций
1.4 Вывод
В результате анализа предположительного функционирования гипотетической автоматизированной системы “Продажа автобусных билетов” выбраны пять автоматизируемых функций, охватывающих предметную область, информационное обеспечение которых соответствует восьми объектам предметной области и включает 42 атрибута, охватывающих сведения об объектах системы.
2 Выявление ограничений и правил поддержания целостности
Данный раздел посвящен выявлению ограничений и правил поддержания целостности данных, которые будут размещаться в базе данных. Рассматриваются ограничения и правила для отдельных атрибутов, кортежей, множеств кортежей и базы данных в целом.
2.1 Уровень атрибутов
В данном подразделе для функций, определенных в разд. 1.2, выявляются ограничения и правила на уровне атрибутов, выбранных в разд. 1.3. В первую очередь путем анализа отдельных атрибутов определяются характеристики доменов, из которых атрибуты объектов, участвующих в выполнении автоматизируемых функций, берут свои значения. Далее анализируются возможные изменения значений атрибутов с целью выявления динамических ограничений и операционных правил, относящихся к отдельным атрибутам.
2.1.1 Функция 1 “Продажа билетов”.
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.1.1.1.Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.1.1.1 Домены атрибутов для функции 1 “Продажа билетов”.
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1 Фамилия пассажира |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.2 Имя пассажира |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.3 Отчество пассажира |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.4 Адрес |
Строка символов |
А…Яя, 0…9 |
2) |
|
+ |
+ |
|
1.5 Телефон |
Числовая строка |
0…9 |
3) |
|
+ |
|
Нет |
2.1 Номер билета |
Целое число |
0…9 |
|
|
|
+ |
|
2.2 Номер маршрута |
Целое число |
0…9 |
|
|
+ |
+ |
|
2.3 Число |
Целое число |
0…9 |
|
5) |
+ |
+ |
|
2.4 Месяц |
Целое число |
0…9 |
|
6) |
+ |
+ |
|
2.5 Год |
Целое число |
0…9 |
|
7) |
+ |
+ |
|
2.6 Время |
Вещественное число |
0…9 |
|
8) |
+ |
+ |
|
2.7 Номер места |
Целое число |
0…9 |
|
9) |
|
+ |
нет |
3.1 Серия |
Строка символов |
0…9 |
4) |
|
|
+ |
|
3.2 Вид документа |
Строка русских букв |
а…я |
|
|
+ |
+ |
Студ. билет |
Примечания:
1) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные буквы строчные); возможны двойные фамилии, разделенные дефисом; многословные имена, разделенные пробелами.
2) Адрес записывается в таком формате:
район _ улица_ номер дома - номер корпуса - номер квартиры
3) (цифровой код города) цифровой номер, возможны разделители-дефисы
4) Возможны разделители – пробелы .
5) Число>=1,<=31.
6) Месяц >=1, <=12.
7) Год = текущий год или год = текущий год +1.
8) Время <= 24.00.
9) Номер места<= количество мест в транспортном средстве
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.1.2.
Таблица 2.1.1.2. Динамические ограничения на уровне атрибутов для функции 1 “Продажа билетов”.
Атрибут |
Динамическое ограничение |
2.1 Номер билета |
Целое число. Новый номер билета получается прибавлением единицы к предыдущему номеру. |
2.7 Номер места |
Целое число. Новый номер не должен повторяться с предыдущими. |
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.1.3.
Таблица 2.1.1.3. Операционные правила на уровне атрибутов для функции 1 “Продажа билетов”.
Атрибут |
Операционное правило |
1.5 Телефон 2.7 Номер места 3.2 Вид документа |
При отсутствии значений атрибутов, им присваиваются значения по умолчанию. |
2.1.2. Функция 2 “Возврат билетов”.
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.1.2.1. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.1.2.1 Домены атрибутов для функции 2 “Возврат билетов”.
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1 Фамилия раб.авт. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.2 Имя раб.авт. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.3 Отчество раб.авт. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.4 Код раб.авт. |
Строка символов |
А…Яя, 0…9 |
2) |
|
|
+ |
0 - 00 |
2.1 Номер билета |
Целое число |
0…9 |
|
|
|
|
|
2.2 Номер маршрута |
Целое число |
0…9 |
|
|
+ |
+ |
|
2.3 Число 2.4 Месяц 2.5 Год |
Целое число Целое число Целое число |
0…9 0…9 0…9 |
|
3) 4) 5) |
+ + + |
+ + + |
|
2.6 Время |
Вещественное число |
0…9 |
|
6) |
+ |
+ |
|
2.7 Номер места |
Целое число |
0…9 |
|
7) |
|
+ |
нет |
Примечания:
1) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные буквы строчные); возможны двойные фамилии, разделенные дефисом; многословные имена, разделенные пробелами.
2) Русская буква – двухзначное число.
3) Число>=1,<=31.
4) Месяц >=1, <=12.
5) Год = текущий год или год = текущий год +1.
6) Время <= 24.00.
7) Номер места<= количество мест в транспортном средстве
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.2.2.
Таблица 2.1.2.2. Динамические ограничения на уровне атрибутов для функции 2 “Возврат билетов”.
Атрибут |
Динамическое ограничение |
1.4 Код работника автовокзала |
Новый код получается из старого прибавлением единицы, при достижении числа 99 буква кода меняется на следующую букву алфавита. |
2.1 Номер билета |
Новый номер получается прибавлением единицы к предыдущему |
2.7 Номер места |
Целое число. Новый номер не должен повторяться с предыдущими. |
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.2.3.
Таблица 2.1.2.3. Операционные правила на уровне атрибутов для функции 2 “Возврат билетов”.
Атрибут |
Операционное правило |
1.4 Код раб.авт. 2.7 Номер места |
При отсутствии значений атрибутов, им присваиваются значения по умолчанию. |
2.1.3. Функция 3 “Бронирование билетов”.
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.1.3.1. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.1.3.1. Домены атрибутов для функции 3 “Бронирование билетов”.
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1 Фамилия раб.авт. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.2 Имя раб.авт. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.3 Отчество раб.авт. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.4 Код раб.авт. |
Строка символов |
А…Яя, 0…9 |
2) |
|
|
+ |
0 - 00 |
1.5 Фамилия пассажира |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.6 Имя пассажира |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.7 Отчество пассажира |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.8 Адрес |
Строка символов |
А…Яя, 0…9 |
3) |
|
+ |
+ |
|
1.9 Телефон |
Числовая строка |
0…9 |
4) |
|
+ |
|
нет |
Примечания:
1) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные буквы строчные); возможны двойные фамилии, разделенные дефисом; многословные имена, разделенные пробелами.
2) Русская буква – двухзначное число.
3) Адрес записывается в таком формате:
район _ улица_ номер дома - номер корпуса - номер квартиры
4) (цифровой код города) цифровой номер, возможны разделители-дефисы
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.3.2.
Таблица 2.1.3.2. Динамические ограничения на уровне атрибутов для функции 3 “Бронирование билетов”.
Атрибут |
Динамическое ограничение |
1.4 Код работника автовокзала |
Новый код получается из старого прибавлением единицы, при достижении числа 99 буква кода меняется на следующую букву алфавита. |
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.3.3.
Таблица 2.1.3.3. Операционные правила на уровне атрибутов для функции 3 “Бронирование билетов”.
Атрибут |
Операционное правило |
1.4 Код работника автовокзала . 1.9 Телефон |
При отсутствии значений атрибутов, им присваиваются значения по умолчанию. |
2.1.4 Функция 4 “Заказ транспортных средств”.
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.1.4.1. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.1.4.1 Домены атрибутов для функции 4 “Заказ транспортных средств”.
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1 Фамилия админис. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.2 Имя админис. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.3 Отчество админис. |
Строка русских букв |
А…Яя |
1) |
|
|
|
|
1.4 Код админис. |
Строка символов |
А…Яя, 0…9 |
2) |
|
|
+ |
|
1.5 Наименование транспортного средства |
Строка русских букв |
А…Яя |
|
|
+ |
+ |
Автобус |
1.6 Номер маршрута |
Целое число |
0…9 |
|
|
+ |
+ |
|
1.7 Количество автобусов |
Целое число |
0…9 |
|
|
+ |
+ |
1 |
1.8 Количество микроавтобусов |
Целое число |
0…9 |
|
|
+ |
+ |
1 |
1.9 Количество автомобилей |
Целое число |
0…9 |
|
|
+ |
+ |
1 |
Примечания:
1) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные буквы строчные); возможны двойные фамилии, разделенные дефисом; многословные имена, разделенные пробелами.
2) Русская буква – двухзначное число.
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, не выявлены.
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.4.2.
Таблица 2.1.4.2. Операционные правила на уровне атрибутов для функции 4 “Заказ транспортных средств”.
Атрибут |
Операционное правило |
1.5 Наименование транспортного средства |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
1.7 Количество автобусов |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
1.8 Количество микроавтобусов |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
1.9 Количество автомобилей |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
2.1.5. Функция 5 “Учет кадров”.
Домены, из которых атрибуты, относящиеся к данной функции, берут свои значения, приведены в табл. 2.1.5.1. Здесь же для компактности записи приведены статические ограничения для отдельных атрибутов на уровне кортежей: повторяемость, обязательность и значения по умолчанию (относящиеся, строго говоря, к операционным правилам).
Таблица 2.1.5.1. Домены атрибутов для функции 5 “Учет кадров”.
Атрибут |
Тип (размер) |
Границы |
Структура |
Условие |
Повторяемость |
Обязатель-ность |
Значение по умолчанию |
1.1 Фамилия сотрудника |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.2 Имя сотрудника |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.3 Отчество сотрудника |
Строка русских букв |
А…Яя |
1) |
|
+ |
+ |
|
1.4 Паспортные данные |
Строка символов |
0…9 |
2) |
|
|
+ |
|
1.5 Адрес |
Строка символов |
А…Яя, 0…9 |
3) |
|
+ |
|
|
1.6 Телефон |
Числовая строка |
0…9 |
4) |
|
+ |
|
нет |
1.7 Семейное положение |
Логический |
Да - нет |
|
|
+ |
|
нет |
1.8 Дети |
Строка русских букв |
А…Яя |
1) |
|
+ |
|
нет |
1.9 Образование |
Строка русских букв |
А…Яя |
|
|
+ |
+ |
высшее |
1.10 Номер трудовой книжки |
Числовая строка |
0…9 |
|
|
|
+ |
|
1.11 Заработная плата |
Вещественное число |
0…9 |
|
6) |
+ |
+ |
минимальная |
1.12 Дата рождения |
Дата |
0…9 |
5) |
7) |
+ |
|
|
2.2 Должность |
Строка русских букв |
А…Яя |
|
|
+ |
|
|
2.3 Дата назначения |
Дата |
0…9 |
5) |
8) |
+ |
|
|
2.4 Дата увольнения |
Дата |
0…9 |
5) |
8) |
+ |
|
|
Примечания:
1) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.
2) Возможны разделители – пробелы .
3) Адрес записывается в таком формате:
район _ улица_ номер дома - номер корпуса - номер квартиры
4) (цифровой код города) цифровой номер, возможны разделители-дефисы
5) В форме ччммгг – число, месяц, год.
6) >= минимальная зар.плата, <=30000.
7) Дата рождения>= текущая дата - 100 лет;
Дата рождения<=текущая дата – 18 лет
8) <=текущая дата, >=текущая дата – 50 лет
Динамические ограничения атрибутов объектов, участвующих в реализации данной функции, не выявлены.
Операционные правила для атрибутов объектов, участвующих в реализации данной функции, приведены в табл. 2.1.5.2.
Таблица 2.1.5.2. Операционные правила на уровне атрибутов для функции 5 “Учет кадров”.
Атрибут |
Операционное правило |
1.6 Телефон |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
1.7 Семейное положение |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
1.8 Дети |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
1.9 Образование |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
1.11 Заработная плата |
При отсутствии значения атрибута, ему присваивается значение по умолчанию. |
2.2 Уровень кортежей
В данном подразделе для функций, определенных в разд. 1.2, выявляются ограничения и правила на уровне групп атрибутов, составляющих кортежи. Далее анализируются ограничения на совокупность значений нескольких атрибутов в пределах кортежа. Наконец, рассматриваются возможные изменения значений кортежей с целью выявления динамических ограничений и операционных правил, относящихся к отдельным кортежам.