2 ОГРАНИЧЕНИЯ ЦЕЛОСТНОСТИ И ОПЕРАЦИОННЫЕ
Данный раздел
посвящен составлению спецификаций
исходных локальных ограничений
целостности и операционных правил.
2.1 Спецификации
локальных ограничений и правил
В данном подразделе
выявляются и записываются локальные
ограничения целостности и операционные
правила, а именно:
– ограничения
атрибутов и агрегатов (таблица 1.3);
– ограничения
кортежей (таблица 2.1);
– ограничения
уникальности (таблица 2.2);
– динамические
ограничения (таблица 2.3);
– прочие
ограничения (таблица 2.4);
– операционные
правила (таблица 2.5).
Таблица 2.1.
Ограничения
кортежей
№
п/п
|
Группа
атрибутов
|
Ограничение
|
Функция
1 «Учет кадров»
|
1.1
|
Дата
рождения, Дата прихода
|
Дата
прихода – Дата рождения
>= 25 лет
|
1.2
|
Дата
прихода, Дата ухода
|
Дата
ухода > Дата прихода
|
1.4
|
Учебное
заведение, Место работы
|
Дата
окончания обучения < Дата прихода
|
1.5
|
Успеваемость
|
Успеваемость
<=
5
|
Функция 2
«Учет
сведений о клиентах»
|
2.2
|
Дата
рождения, Дата прихода
|
Дата
прихода – Дата рождения
>= 25 лет
|
2.3
|
Дата
прихода, Дата ухода
|
Дата
ухода > Дата прихода
|
2.4
|
Дата
рождения, Дата открытия
|
Дата
рождения < Дата открытия >=18 лет
|
Функция
3 «Материально-техническое
снабжение»
|
3.1
|
Дата
закупки, Дата поставки
|
Дата
закупки > Дата поставки >= 1 день
|
3.2
|
Дата
выпуска, Дата закупки
|
Дата
выпуска <
Дата закупки
|
Функция
4 «Проведение
рекламных мероприятий»
|
4.1
|
Дата
заключения, Дата окончания
|
Дата
заключения <
Дата
окончания
|
4.2
|
Набор
персонала, Обучение персонала
|
Набор
персонала <
Обучение
персонала
|
4.3
|
Разработка
идеи мероприятия, Разработка дизайна
рекламы
|
Разработка
идеи мероприятия > Разработка дизайна
рекламы. На разработку идеи мероприятия
и дизайна рекламы расходуются
дополнительные средства
|
4.5
|
Разработка
дизайна рекламы, Разработка дизайна
униформы
|
Разработка
дизайна рекламы >Разработка дизайна
униформы. На разработку идеи мероприятия
и дизайна униформы расходуются
дополнительные средства
|
4.6
|
Покупка
оборудования,
Доставка
оборудования
|
Покупка
оборудования < Доставка оборудования.
На покупку оборудования расходуются
дополнительные средства
|
Функция
5 «Изготовление
рекламной продукции»
|
5.1
|
Дата
начала, Дата окончания
|
Дата
начала < Дата окончания
|
5.2
|
Разработка
дизайна печатной продукции, Печать
рекламы
|
Разработка
дизайна печатной продукции < Печать
рекламы. На разработка дизайна печатной
продукции и печать рекламы расходуются
дополнительные средства
|
5.3
|
Покупка
оборудования, Доставка оборудования
|
Покупка
оборудования < Доставка оборудования.
На покупку и доставку оборудования
расходуются дополнительные средства
|
5.4
|
Печать
рекламы, Доставка рекламы
|
Печать
рекламы < Доставка рекламы. На печать
и доставку рекламы расходуются
дополнительные средства
|
Таблица 2.2.
Ограничения
уникальности
№
п/п
|
Группа
атрибутов
|
Среди
каких экземпляров имеет место
уникальность
|
Функция
1 «Учет кадров»
|
1.1
|
Табельный
номер
|
среди всех
сотрудников
|
1.2
|
Фамилия,
Имя, Отчество
|
«
|
1.3
|
Номер
паспорта
|
«
|
1.4
|
Телефон.Нпп
|
среди всех
телефонов одного сотрудника
|
1.5
|
Телефон.Номер
|
«
|
1.6
|
Место.Нпп
|
среди всех мест
работы одного сотрудника
|
1.7
|
Место.Дата
прихода
|
«
|
1.8
|
Должность.Нпп
|
среди всех
должностей сотрудника на одном месте
работы
|
1.9
|
Должность.Дата
назначения
|
«
|
Функция 2
«Учет
сведений о клиентах»
|
2.1
|
Фамилия,
Имя,
Отчество
|
среди
всех сотрудников
|
2.2
|
Телефон,
Нпп
|
среди
всех телефонов одного сотрудника
|
2.3
|
Телефон,
Номер
|
«
|
2.4
|
Место
работы,
Нпп
|
среди
всех мест работы одного сотрудника
|
2.5
|
Место
работы, Дата прихода
|
«
|
2.6
|
Дата
рождения
|
среди
всех сотрудников
|
2.7
|
Номер
счета
|
Среди
всех счетов
|
2.8
|
Название
банка
|
Среди
всех банков
|
2.9
|
Сведения
о задолжностях по кредитам
|
Среди
всех кредитов
|
Функция
3 «Материально-техническое
снабжение»
|
3.1
|
Название,
Код оборудования,
|
Среди
всего оборудования
|
3.2
|
Производитель
|
Среди
всех производителей
|
3.3
|
Поставщик
|
Среди
всех поставщиков
|
Функция
4 «Проведение
рекламных мероприятий»
|
4.1
|
Договор
с заказчиком
|
Среди
всех договоров
|
4.2
|
Разработка
идеи мероприятия
|
Среди
всех идей
|
Функция
5 «Изготовление
рекламной продукции»
|
5.1
|
Оборудование
|
Среди
всего оборудования
|
5.2
|
Типография
|
Среди
всех типографий
|
Таблица 2.3.
Динамические
ограничения
№
п/п
|
Группа
атрибутов
|
Ограничение
|
Функция
1 «Учет кадров» —
динамические ограничения не выявлены
|
Функция 2
«Учет
сведений о клиентах»
|
2.1
|
Расходы
в месяц
|
Расходы
в месяц
←
Расходы
в месяц
±
Х
- значение
атрибута «Расходы
в месяц»
может увеличиваться или уменьшаться.
При покупке оборудования, разработке
дизайна рекламы и т.д. расходы
увеличиваются
|
2.2
|
Сумма
счета
|
Сумма
счета
←
Сумма
счета
±
Х
- значение
атрибута «Сумма
счета»
может увеличиваться или уменьшаться.
При покупке оборудования, разработке
дизайна рекламы и т.д. сумма счета
уменьшается
|
Функция
3 «Материально-техническое
снабжение»
|
3.1
|
Дата
выпуска
|
Дата
выпуска
←
Дата
выпуска
±
Х
—
значение атрибута «Дата выпуска»
может лишь увеличиваться или уменьшаться
|
3.2
|
Дата
закупки
|
Дата
закупки
←
Дата
закупки
±
Х
—
значение атрибута «Дата закупки»
может лишь увеличиваться на или
уменьшаться
|
3.3
|
Дата
поставки
|
Дата
поставки
←
Дата
поставки
±
Х
—
значение атрибута «Дата
поставки»
может лишь увеличиваться или уменьшаться
|
3.4
|
Объем
поставки
|
Объем
поставки
←
Объем
поставки
±
Х
—
значение атрибута «Объем
поставки»
может лишь увеличиваться или
уменьшаться. При покупке оборудования
объем поставки увеличивается
|
3.5
|
Цена
|
Цена
←
Цена
±
Х
—
значение атрибута «Цена»
может лишь увеличиваться или
уменьшаться. Цена меняется в зависимости
от сложности заказа
|
Функция
4 «Проведение
рекламных мероприятий»
|
4.1
|
Сумма
|
Сумма
← Сумма ±
Х
— значение атрибута «Сумма» может
лишь увеличиваться на единицу. Сумма
меняется в зависимости от сложности
заказа
|
4.2
|
Дата
заключения
|
Дата
заключения ← Дата заключения ±
Х
—
значение атрибута «Дата
заключения»
может лишь увеличиваться или
уменьшаться. Сумма меняется в
зависимости от сложности заказа
|
4.3
|
Дата
окончания
|
Дата
окончания ← Дата окончания ±
Х
—
значение атрибута «Дата
окончания»
может лишь увеличиваться или уменьшаться
|
Функция
5 «Изготовление
рекламной продукции»
|
5.1
|
Время
выполнения
|
Время
выполнения ← Время выполнения ±
Х
— значение атрибута «Время
выполнения»
может лишь увеличиваться или уменьшаться
|
5.2
|
Стоимость
|
Стоимость
← Стоимость ±
Х
— значение атрибута «Стоимость»
может лишь увеличиваться или
уменьшаться. Стоимость меняется в
зависимости от сложности заказа
|
5.3
|
Дата
начала
|
Дата
начала ← Дата начала ±
Х
—
значение атрибута «Дата
начала»
может лишь увеличиваться или уменьшаться
|
5.4
|
Дата
окончания
|
Дата
окончания ← Дата окончания ±
Х
—
значение атрибута «Дата
окончания»
может лишь увеличиваться или уменьшаться
|
5.5
|
Сумма
|
Сумма
← Сумма ±
Х
— значение атрибута «Сумма» может
лишь увеличиваться на единицу.
Сумма
меняется в зависимости от сложности
заказа
|
Таблица 2.4.
Другие
ограничения
№
п/п
|
Группа
атрибутов
|
Ограничение
|
Функция
1 «Учет кадров»
|
1.1
|
Место.Дата
ухода
|
«Дата ухода»,
соответствующая данному сотруднику,
может быть незаполненной только для
последнего места его работы (текущей)
|
1.2
|
Место.Нпп,
Дата прихода,
Дата
ухода
|
Хронологическая
последовательность значений «Дата
прихода», «Дата ухода» в агрегатах
«Место работы», соответствующих
одному сотруднику, упорядоченных по
«Номеру места»
|
1.3
|
Должность.Нпп,
Дата назначения
|
Хронологическая
последовательность значений «Дата
назначения» в агрегатах «Карьера»,
соответствующих одному «Месту работы»
одного сотрудника, упорядоченных по
«Номеру должности»
|
1.4
|
Место.Нпп
|
Последовательность
номеров, соответствующая местам
работы одного сотрудника, должна
начинаться с 1 и не иметь пропусков
|
1.5
|
Должность.Нпп
|
Последовательность
номеров, соответствующая должностям
на одном месте работы одного сотрудника,
должна начинаться с 1 и не иметь
пропусков
|
Функция 2
«Учет
сведений о клиентах»
|
2.1
|
Место.Дата
ухода
|
«Дата
ухода», соответствующая данному
сотруднику, может быть незаполненной
только для последнего места его работы
(текущей)
|
2.2
|
Место.Нпп,
Дата прихода,
Дата
ухода
|
Хронологическая
последовательность значений «Дата
прихода», «Дата ухода» в агрегатах
«Место работы», соответствующих
одному сотруднику, упорядоченных по
«Номеру места»
|
2.3
|
Счет
в банке
|
Последовательность
номеров, соответствующая номерам
банковских счетов одного сотрудника,
должна начинаться с 1 и не иметь
пропусков
|
Функция
3 «Материально-техническое
снабжение»
|
3.1
|
Код
оборудования
|
Последовательность
номеров, соответствующая кодам
оборудования одного сотрудника,
должна начинаться с 1 и не иметь
пропусков
|
3.2
|
Номер
оборудования
|
Последовательность
номеров, соответствующая номерам
оборудования одного сотрудника,
должна начинаться с 1 и не иметь
пропусков
|
3.3
|
Код
производителя
|
Последовательность
номеров, соответствующая кодам
производителя, должна начинаться с
1 и не иметь пропусков
|
3.4
|
Код
поставщика
|
Последовательность
номеров, соответствующая кодам
поставщиков, должна начинаться с 1 и
не иметь пропусков
|
Функция
4 «Проведение
рекламных мероприятий»
|
4.1
|
Дата
заключения, Дата окончания
|
Хронологическая
последовательность значений «Дата
заключения», «Дата окончания» в
агрегатах «Договор с заказчиком»,
соответствующих одному сотруднику,
упорядоченных по «Номеру договора»
|
Функция
5 «Изготовление
рекламной продукции»
- ограничения не выявлены
|
Таблица 2.5.
Операционные
правила
№
п/п
|
Группа
атрибутов
|
Ограничение
|
Функция
1 «Учет кадров»
|
1.1
|
Атрибуты,
относящиеся к сотруднику:
Табельный
номер, Фамилия, Имя, Отчество,
… и т.д.
|
При
удалении записи о каком-либо сотруднике
все сведения о нем переносятся в
архивную базу с указанием даты-времени,
причины удаления и имени пользователя,
выполнившего удаление. Эти сведения
хранятся в архивной базе не менее 1
года, а затем могут быть автоматически
удалены. При удалении записи количество
записей уменьшается на единицу.
|
Функция 2
«Учет
сведений о клиентах»
|
2.1
|
Атрибуты,
относящиеся к сотруднику:
Табельный
номер, Фамилия, Имя, Отчество,
… и т.д.
|
При
удалении записи о каком-либо сотруднике
все сведения о нем переносятся в
архивную базу с указанием даты-времени,
причины удаления и имени пользователя,
выполнившего удаление. Эти сведения
хранятся в архивной базе не менее 1
года, а затем могут быть автоматически
удалены. При удалении записи количество
записей уменьшается на единицу.
|
2.2
|
Атрибуты,
относящиеся к банку:
Номер счета, Название банка, Дата
открытия,
Сумма счета, …
и т.д.
|
При
обновлении записи о клиенте все
сведения перезаписываются в базе
данных. Старые сведения переносятся
в архивную базу с указанием даты-времени,
причины изменения и имени пользователя,
выполнившего изменение. Эти сведения
хранятся в архивной базе 2 года, а
затем автоматически удаляются. При
удалении записи количество записей
уменьшается на единицу, а при добавлении
– увеличивается на единицу.
|
Функция
3 «Материально-техническое
снабжение»
|
3.1
|
Атрибуты,
относящиеся к оборудованию: Код
оборудования, Название, Тип оборудования,
… и
т.д.
|
При
добавлении данных об оборудовании,
они переносятся в базу данных, с
указанием имени пользователя,
выполнившего добавление. Эти сведения
будут храниться вечно, если не будут
удалены. При добавлении записи
количество записей уменьшается на
единицу. По умолчанию при добавлении
атрибута «Код оборудования» код
продолжает нумерацию предыдущих
кодов.
|
3.2
|
Атрибуты,
относящиеся к производителю: Код
производителя, Страна,
Город
|
При
удалении записи о каком-либо
производителе все сведения о нем
переносятся в архивную базу с указанием
даты-времени, причины удаления и имени
пользователя, выполнившего удаление.
Эти сведения хранятся в архивной базе
не менее 1 года, а затем могут быть
автоматически удалены. При удалении
записи количество записей уменьшается
на единицу.
|
3.3
|
Атрибуты,
относящиеся к поставщику: Код
поставщика, Страна,
Город,
… и
т.д.
|
При
обновлении записи об оборудовании
все сведения перезаписываются в базе
данных. Старые сведения переносятся
в архивную базу с указанием даты-времени,
причины изменения и имени пользователя,
выполнившего изменение. Эти сведения
хранятся в архивной базе 2 года, а
затем автоматически удаляются. При
удалении записи количество записей
уменьшается на единицу, а при добавлении
– увеличивается на единицу.
|
Функция
4 «Проведение
рекламных мероприятий»
|
4.1
|
Атрибуты,
относящиеся к договору с заказчиком:
Номер
договора, Дата заключения, Дата
окончания, …
и т.д.
|
При
удалении записи о каком-либо договоре
с заказчиком все сведения о нем
переносятся в архивную базу с указанием
даты-времени, причины удаления и имени
пользователя, выполнившего удаление.
Эти сведения хранятся в архивной базе
не менее 1 года, а затем могут быть
автоматически удалены. При удалении
записи количество записей уменьшается
на единицу.
|
4.2
|
Атрибуты,
относящиеся к разработке идеи
проведения рекламного мероприятия:
Разработка идеи мероприятия, Разработка
дизайна рекламы, Разработка дизайна
униформы
|
При
обновлении записи о разработке идеи
проведения рекламного мероприятия
все сведения перезаписываются в базе
данных. Старые сведения переносятся
в архивную базу с указанием даты-времени,
причины изменения и имени пользователя,
выполнившего изменение. Эти сведения
хранятся в архивной базе 2 года, а
затем автоматически удаляются. При
удалении записи количество записей
уменьшается на единицу, а при добавлении
– увеличивается на единицу.
|
4.3
|
Атрибуты,
относящиеся к подготовке мероприятия:
Набор
персонала, Обучение персонала, Покупка
оборудования
|
При
добавлении данных о подготовке
мероприятия, они переносятся в базу
данных, с указанием имени пользователя,
выполнившего добавление. Эти сведения
будут храниться вечно, если не будут
удалены. При увеличении записи
количество записей увеличивается
на единицу. По умолчанию при наборе
персонала пол нового сотрудника
обозначается «М».
|
4.4
|
Атрибуты,
относящиеся к проведению мероприятия:
Фотоотчет, Видеоотчет
|
При
удалении записи о какой-либо проведению
мероприятия все сведения о нем
переносятся в архивную базу с указанием
даты-времени, причины удаления и имени
пользователя, выполнившего удаление.
Эти сведения хранятся в архивной базе
не менее 1 года, а затем могут быть
автоматически удалены. При удалении
записи количество записей уменьшается
на единицу.
|
Функция
5 «Изготовление
рекламной продукции»
|
5.1
|
Атрибуты,
относящиеся к требованиям заказчика:
Оборудование, Срок
Дата
начала, …
и т.д.
|
При
удалении записи о каким-либо требованиям
заказчика все сведения о нем переносятся
в архивную базу с указанием даты-времени,
причины удаления и имени пользователя,
выполнившего удаление. Эти сведения
хранятся в архивной базе не менее 1
года, а затем могут быть автоматически
удалены. При удалении записи количество
записей уменьшается на единицу.
|
5.2
|
Атрибуты,
относящиеся к банку:
Номер счета, Название банка, Дата
открытия,
Сумма счета, …
и т.д.
|
При
удалении записи о каком-либо банке
все сведения о нем переносятся в
архивную базу с указанием даты-времени,
причины удаления и имени пользователя,
выполнившего удаление. Эти сведения
хранятся в архивной базе не менее 1
года, а затем могут быть автоматически
удалены. При удалении записи количество
записей уменьшается на единицу.
|
2.2 Вывод
В результате
анализа информационного обеспечения
функций выявлены и сформулированы
ограничения и правила поддержания
целостности данных, которые должны быть
учтены при дальнейшем проектировании.
Общее число ограничений на уровне
атрибутов составляет 61 (в том числе
динамических 9), на уровне кортежей —
13, на уровне множеств кортежей — 0 и на
уровне базы данных — 0. Операционные
правила выявлены и сформулированы для
уровня 30.
3.2
Нормализация локальных ER-моделей
3.2.1 Функция 1
«Учет кадров»
Нормализованная
ER-модель
для данной функции представлена на
рис. 3.1 (в конце раздела).
Нормализованная
модель содержит:
– четыре
самоидентифицирующих сущности:
«Сотрудник», «ФИО», «Образование»,
«Телефон».
– три связи типа
«многие ко многим»: «Место», «Учебное
заведение», «Контакт».
– одну связь типа
«один к одному»: «Карьера»
Сущность «Сотрудник»
содержит данные о табельном номере,
дате рождения и поле сотредника.
Сущность «ФИО»
содержит данные о фамилии, имени, отчестве
сотрудника.
Сущность «Телефон»
содержит данные о номере и типе телефона.
Сущность «Образование»
содержит данные об учебном заведении,
которое окончил сотрудник.
Связь «Место»
задает подразделения, в которых работал
и работает в настоящее время сотрудник.
Связь «Учебное
заведение» задает учебное заведение,
в котором учился сотрудник.
Связь «Контакт»
задает номер телефона по порядку среди
других телефонов.
Связь «Карьера»
задает подразделения, в которых работал
сотрудник.
3.2.2 Функция 2
«Учет
сведений о клиентах»
Нормализованная
ER-модель
для данной функции представлена на
рис. 3.2 (в конце раздела).
Нормализованная
модель содержит:
– три
самоидентифицирующиеся сущности:
«Телефон», «Клиент», «Счет в банке».
– две связи типа
«многие ко многим»: «Контакт», «Место
работы».
– одну связь типа
«один к одному»: «Карьера».
Сущность «Телефон»
содержит данные о номере и типе телефона.
Сущность «Клиент»
содержит данные о ФИО клиента, коде
клиента, дате рождения и поле клиента.
Сущность «Счет в
банке» содержит данные о номере счета,
названии банка, сведений о задолжностях
по кредитам, дате открытия, сумме счета
и расходов в месяц.
Связь «Место»
задает подразделения, в которых работал
и работает в настоящее время сотрудник.
Связь «Карьера»
задает подразделения, в которых работал
сотрудник.
Связь «Контакт»
задает номер телефона по порядку среди
других телефонов.