2005.654700.Бд.Кп.Пз асои-315.1
2 Проектирование исходных локальных моделей
Данный раздел посвящен проектированию исходных локальных моделей базы данных. Для каждой автоматизируемой функции строится иерархическая модель данных. Специфицируются исходные локальные ограничения целостности и операционные правила.
2.1 Составление исходных локальных моделей
В данном подразделе на основе описательных моделей данных, полученных на предшествующих этапах проектирования для каждой автоматизируемой функции, строятся исходные концептуальные модели иерархического вида в графической форме. Рисунки, содержащие исходные модели, приведены в конце раздела.
2.1.1 Функция 1 «Учет кадров»
Исходная иерархическая модель для данной функции, полученная на основе описания, приведенного в разд. 1, представлена на рисунке 2.1.
Состав и структура модели. Модель содержит единственную сущность «Сотрудник», набор атрибутов которой имеет сложную структуру: простой агрегат «ФИО», повторяющиеся агрегаты «Телефон» и «Место работы». Последний агрегат, в свою очередь, содержит повторяющийся агрегат «Карьера».
Обобщение атрибутов. Исходные атрибуты, отражающие различные телефоны, имеющиеся у служащего («служебный», «домашний», «мобильный» и т. д.), обобщены в повторяющийся агрегат «Телефон» с атрибутами «Номер по порядку», «Номер телефона», «Тип телефона», «Примечание».
2.1.2 Функция 2 «…»
Исходная иерархическая модель для данной функции, полученная на основе описания, приведенного в разд. 1, представлена на рисунке 2.2.
Состав и структура модели. Модель содержит единственную сущность «…», ...
Обобщение атрибутов. Для данной функции обобщение атрибутов не производилось.
2.2 Спецификации локальных ограничений и правил
В данном подразделе для построенных выше исходных моделей выявляются и записываются локальные ограничения целостности и операционные правила, а именно:
– ограничения атрибутов и агрегатов (таблица 2.1);
– ограничения кортежей (таблица 2.2);
– ограничения уникальности (таблица 2.3);
– динамические ограничения (таблица 2.4);
– прочие ограничения (таблица 2.5);
– операционные правила (таблица 2.6).
Столбец «Источник» в указанных таблицах содержит ссылки на предыдущий этап проекта, где содержится определение, на основании которого специфицирован данный объект. Символ «+» означает, что соответствующий атрибут, агрегат или ограничение добавлено на текущем этапе проектирования.
Таблица 2.1
Ограничения атрибутов и агрегатов
Имя атрибута или агрегата |
Источник (разд. 1.3) |
Тип |
Размер |
Границы или допустимые значения |
Структура |
Условие |
Многозначность |
Значение по умолчанию |
|
мин |
макс |
||||||||
Функция 1 «Учет кадров» |
|||||||||
1.1. Табельный номер |
1 |
строка цифр |
6 |
|
1) |
|
1 |
1 |
|
1.2. ФИО |
2 |
агрегат |
|
|
|
|
1 |
1 |
|
1.3. « .Фамилия |
+ |
строка рус. букв |
<=30 |
А…Яя |
2) |
|
1 |
1 |
|
1.4. « .Имя |
+ |
« |
« |
« |
2) |
|
1 |
1 |
|
1.5. « .Отчество |
+ |
« |
« |
« |
2) |
|
1 |
1 |
|
1.4. Дата рождения |
3 |
дата |
|
3) |
1 |
1 |
|
||
… |
|
|
|
|
|
|
|
|
|
1.11. Стаж |
11 |
положит. целое |
|
вычисл. 4) |
|
|
1 |
1 |
|
1.11. Дата приема |
+ |
« |
|
>= 23.02.96 <= тек. дата |
|
|
1 |
1 |
текущ. дата |
… |
|
|
|
|
|
|
|
|
|
1.20. Телефон |
21 |
агрегат |
|
|
|
|
0 |
М |
|
1.21. « .Нпп |
21а |
положит. целое |
|
|
|
|
1 |
1 |
инкр. 5) |
1.22. « .Номер |
21б |
строка |
|
|
6) |
|
1 |
1 |
|
1.23. « .Тип |
21в |
строка рус. букв |
|
7) |
|
|
1 |
1 |
|
1.24. « .Примечание |
21г |
текст |
|
|
|
|
0 |
1 |
|
… |
|
|
|
|
|
|
|
|
|
1.30. Место работы |
31 |
агрегат |
|
|
|
|
1 |
М |
|
1.31. « .Нпп |
31а |
положит. целое |
|
|
|
|
1 |
1 |
инкр. 5) |
1.30. « .Код подразделения |
31б |
строка цифр |
4 |
|
|
|
1 |
1 |
|
1.30. « .Дата прихода |
31в |
дата |
|
|
|
|
1 |
1 |
|
1.30. « .Дата ухода |
31г |
« |
|
|
|
|
0 |
1 |
|
… |
|
|
|
|
|
|
|
|
|
Функция 2 «…» |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Функция 3 «…» |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Функция 4 «…» |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Функция 5 «…» |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Примечания:
1) ггппнн, где гг – год поступления; пп – номер подразделения; нн – порядковый номер сотрудника в подразделении;
2) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.
3) Дата рождения > Текущая дата – 100 лет; Дата рождения < Текущая дата – 16 лет.
4) Вычисляется как суммарное время работы на каждой должности в различных подразделениях организации по значениям атрибутов Дата прихода, Дата ухода.
5) Следующее значение (инкремент).
6) Необязательный (цифровой код города) цифровой номер, допустимы разделители-дефисы.
7) «служ», «дом», «мбл», «проч»
Таблица 2.2.
Ограничения кортежей
№ п/п |
Источник |
Группа атрибутов |
Ограничение |
Функция 1 «Учет кадров» |
|||
1.1 |
+ |
Дата рождения, Дата прихода |
Дата прихода – Дата рождения >= 25 лет |
1.2 |
+ |
Дата прихода, Дата ухода |
Дата ухода > Дата прихода |
1.3 |
|
|
|
Функция 2 «…» |
|||
2.1 |
|
|
|
2.2 |
|
|
|
Функция 3 «…» |
|||
3.1 |
|
|
|
3.2 |
|
|
|
Функция 4 «…» |
|||
4.1 |
|
|
|
4.2 |
|
|
|
Функция 5 «…» |
|||
5.1 |
|
|
|
5.2 |
|
|
|
Примечания:
Таблица 2.3.
Ограничения уникальности
№ п/п |
Источник |
Группа атрибутов |
Среди каких экземпляров имеет место уникальность |
Функция 1 «Учет кадров» |
|||
1.1 |
+ |
Табельный номер |
среди всех сотрудников |
1.2 |
+ |
Фамилия, Имя, Отчество |
« |
1.3 |
+ |
Номер паспорта |
« |
1.4 |
+ |
Телефон.Нпп |
среди всех телефонов одного сотрудника |
1.5 |
+ |
Телефон.Номер |
« |
1.6 |
+ |
Место.Нпп |
среди всех мест работы одного сотрудника |
1.7 |
+ |
Место.Дата прихода |
« |
1.8 |
+ |
Должность.Нпп |
среди всех должностей сотрудника на одном месте работы |
1.9 |
+ |
Должность.Дата назначения |
« |
Функция 2 «…» |
|||
2.1 |
|
|
|
2.2 |
|
|
|
Функция 3 «…» |
|||
3.1 |
|
|
|
3.2 |
|
|
|
Функция 4 «…» |
|||
4.1 |
|
|
|
4.2 |
|
|
|
Функция 5 «…» |
|||
5.1 |
|
|
|
5.2 |
|
|
|
Примечания:
Таблица 2.4.
Динамические ограничения
№ п/п |
Источник |
Группа атрибутов |
Ограничение |
Функция 1 «Учет кадров» — динамические ограничения не выявлены |
|||
Функция 2 «…» |
|||
2.1 |
|
Курс |
Курс ← Курс + 1 — значение атрибута «курс» может лишь увеличиваться на единицу |
2.2 |
|
… |
|
Функция 3 «…» |
|||
3.1 |
|
|
|
3.2 |
|
|
|
Функция 4 «…» |
|||
4.1 |
|
|
|
4.2 |
|
|
|
Функция 5 «…» |
|||
5.1 |
|
|
|
5.2 |
|
|
|
Примечания:
Таблица 2.5.
Другие ограничения
№ п/п |
Источник |
Группа атрибутов |
Ограничение |
Функция 1 «Учет кадров» |
|||
1.1 |
+ |
Место.Дата ухода |
«Дата ухода», соответствующая данному сотруднику, может быть незаполненной только для последнего места его работы (текущей) |
1.2 |
+ |
Место.Нпп, Дата прихода, Дата ухода |
Хронологическая последовательность значений «Дата прихода», «Дата ухода» в агрегатах «Место работы», соответствующих одному сотруднику, упорядоченных по «Номеру места» |
1.3 |
+ | Должность.Нпп, Дата назначения |
Хронологическая последовательность значений «Дата назначения» в агрегатах «Карьера», соответствующих одному «Месту работы» одного сотрудника, упорядоченных по «Номеру должности» |
1.4 |
+ | Место.Нпп |
Последовательность номеров, соответствующая местам работы одного сотрудника, должна начинаться с 1 и не иметь пропусков |
1.5 |
+ | Должность.Нпп |
Последовательность номеров, соответствующая должностям на одном месте работы одного сотрудника, должна начинаться с 1 и не иметь пропусков |
Функция 2 «…» |
|||
2.1 |
+ |
Авторский вклад |
Баланс авторских вкладов: сумма авторских вкладов по всем соавторам одной публикации должна составлять 100% |
2.2 |
… |
|
|
Функция 3 «…» — ограничения не выявлены |
|||
|
|
|
|
|
|
|
|
Функция 4 «…» |
|||
|
|
|
|
|
|
|
|
Функция 5 «…» |
|||
|
|
|
|
|
|
|
|
Примечания:
Таблица 2.5.
Операционные правила
№ п/п |
Источник (табл. 1.3) |
Группа атрибутов |
Ограничение |
Функция 1 «Учет кадров» |
|||
1.1 |
1.3 |
Атрибуты, относящиеся к сотруднику: Табельный номер, Фамилия, Имя, Отчество, … и т.д. |
При удалении записи о каком-либо сотруднике все сведения о нем переносятся в архивную базу с указанием даты-времени, причины удаления и имени пользователя, выполнившего удаление. Эти сведения хранятся в архивной базе не менее 1 года, а затем могут быть автоматически удалены |
Функция 2 «…» — Правила не выявлены |
|||
2.1 |
|
|
|
2.2 |
|
|
|
Функция 3 «…» |
|||
3.1 |
|
|
|
3.2 |
|
|
|
Функция 4 «…» |
|||
4.1 |
|
|
|
4.2 |
|
|
|
Функция 5 «…» |
|||
5.1 |
|
|
|
5.2 |
|
|
|
Примечания: