
2.2 Спецификации локальных ограничений и правил
В данном подразделе для построенных выше исходных моделей выявляются и записываются локальные ограничения целостности и операционные правила, а именно:
– ограничения атрибутов и агрегатов (таблица 2.1);
– ограничения кортежей (таблица 2.2);
– ограничения уникальности (таблица 2.3);
– динамические ограничения (таблица 2.4);
– прочие ограничения (таблица 2.5);
– операционные правила (таблица 2.6).
Столбец «Источник» в указанных таблицах содержит ссылки на предыдущий этап проекта, где содержится определение, на основании которого специфицирован данный объект. Символ «+» означает, что соответствующий атрибут, агрегат или ограничение добавлено на текущем этапе проектирования.
Таблица 2.1
Ограничения атрибутов и агрегатов
Имя атрибута или агрегата |
Источник (разд. 1.3) |
Тип |
Размер |
Границы или допустимые значения |
Структура |
Условие |
Многозначность |
Значение по умолчанию | |
мин |
макс | ||||||||
Функция 1 «Регистрация вызова» | |||||||||
1.1. ФИО оператора |
1.1 | агрегат |
|
|
|
|
1 |
1 |
|
1.2. « .Фамилия |
+ |
строка рус. букв |
<=30 |
А…Яя |
1) |
|
1 |
1 |
|
1.3. « .Имя |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
1.4. « .Отчество |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
1.5. Личный номер |
1.2 |
строка цифр |
6 |
|
|
1 |
1 |
| |
1.6. Дата вызова |
2.1 |
дата |
|
|
|
|
1 |
1 |
тек. дата |
1.7. Время вызова |
2.2 |
время |
|
|
|
|
1 |
1 |
тек. время |
1.8. Причина вызова |
2.3 |
строка рус. букв |
<=50 |
|
|
|
1 |
1 |
|
1.9. Адрес |
2.4 |
строка рус. букв |
<=100 |
|
|
|
1 |
1 |
|
1.10. Номер отряда |
2.6 |
строка цифр |
3 |
|
|
|
1 |
1 |
|
1.11 ФИО позвонившего |
3.1 | агрегат |
|
|
|
|
0 |
1 |
|
1.12. « .Фамилия |
+ |
строка рус. букв |
<=30 |
А…Яя |
1) |
|
0 |
1 |
|
1.13. « .Имя |
+ |
« |
« |
« |
1) |
|
0 |
1 |
|
1.14. « .Отчество |
+ |
« |
« |
« |
1) |
|
0 |
1 |
|
1.15.Телефон звонившего |
3.2 | строка цифр |
<=10 |
|
|
|
1 |
1 |
|
1.16 Нпп |
+ | положит. целое |
|
|
|
|
1 |
1 |
4) |
Функция 2 «Учет кадров» | |||||||||
2.1. ФИО сотрудника |
1.1 |
агрегат |
|
|
|
|
1 |
1 |
|
2.2. « .Фамилия |
+ |
строка рус. букв |
<=30 |
А…Яя |
1) |
|
1 |
1 |
|
2.3. « .Имя |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
2.4. « .Отчество |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
2.5. Паспортные данные |
1.2 |
строка цифр |
11 |
|
|
|
1 |
1 |
|
2.6. Телефон |
1.4 |
строка цифр |
6 |
|
|
0 |
1 |
| |
2.7. Семейное положение |
1.5 |
положит. целое |
1 |
|
|
1 |
1 |
| |
2.8. Дети 2.9. « .Нпп |
1.6 + |
агрегат положит. целое |
|
|
|
0 1 |
М 1 |
4) | |
2.10. « .Дата рождения |
+ |
дата |
|
3) |
1 |
1 |
| ||
2.11. « .Пол |
+ |
символ |
|
|
1 |
1 |
| ||
2.12. Образование |
1.7 |
строка рус. букв |
<=30 |
А…Яя |
|
|
1 |
1 |
|
2.14. Зар. плата |
1.8 |
строка цифр |
|
|
1 |
1 |
| ||
2.15. Дата рождения |
1.9 |
дата |
|
2) |
1 |
1 |
| ||
2.16. Личный номер |
1.10 |
строка цифр |
6 |
|
|
1 |
1 |
| |
2.17. Группа крови |
1.11 |
положит. целое |
2 |
1...4, +,- |
|
|
1 |
1 |
|
2.18. Карьера |
|
агрегат |
|
|
|
|
1 |
М |
|
2.19. « . Нпп |
+ |
положит. целое |
|
|
|
|
1 |
1 |
4) |
2.20. « .Должность |
2.1 |
строка рус. букв |
<=30 |
А…Яя |
|
|
1 |
1 |
|
2.21. « .Звание |
2.2 |
строка рус. букв |
<=30 |
А…Яя |
|
|
1 |
1 |
|
2.22. « .Код подразд - ия |
2.3 |
строка цифр |
6 |
|
|
|
1 |
1 |
|
2.23. « .Дата назначения |
2.4 |
дата |
|
|
|
3) |
1 |
1 |
тек. дата |
2.24. « .Дата увольнения |
2.5 |
дата |
|
|
|
3) |
0 |
1 |
|
2.25. « .Название подр-ия |
+ |
|
|
|
|
|
1 |
1 |
|
2.26. « .Код звания |
+ |
строка цифр |
6 |
|
|
|
0 |
1 |
|
2.27. « .Код должности |
+ |
строка цифр |
6 |
|
|
|
1 |
1 |
|
Функция 3 «Учет материальной части» | |||||||||
3.1. ФИО сотрудника |
1.1 |
агрегат |
|
|
|
|
1 |
1 |
|
3.2. « .Фамилия |
+ |
строка рус. букв |
<=30 |
А…Яя |
1) |
|
1 |
1 |
|
3.3. « .Имя |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
3.4. « .Отчество |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
3.5. Личный номер |
1.2 |
строка цифр |
6 |
|
|
|
1 |
1 |
|
3.6. Имущество |
2 |
агрегат |
|
|
|
|
1 |
М |
|
3.7. « .Название |
2.1 |
строка рус. букв |
<=30 |
|
|
|
1 |
1 |
|
3.8. « .Идент. номер |
2.2 |
строка цифр |
6 |
|
|
|
1 |
1 |
|
Функция 4 «График дежурств» | |||||||||
4.1. Нпп |
+ |
положит. целое |
|
|
|
|
1 |
1 |
4) |
4.2. Наряд |
|
агрегат |
|
|
|
|
1 |
М |
|
4.3. « .Нпп |
+ |
полож. целое |
|
|
|
|
1 |
1 |
4) |
4.4. « .Личный номер |
2.1 |
строка цифр |
6 |
|
|
|
1 |
1 |
|
4.5. « .Звание |
2.3 |
строка рус. букв |
<=30 |
А…Яя |
|
|
1 |
1 |
|
4.6. « .Номер группы |
2.4 |
строка цифр |
3 |
|
|
|
1 |
1 |
|
4.7. « .ФИО |
2.2 |
агрегат |
|
|
|
|
1 |
1 |
|
4.8. « .Фамилия |
+ |
строка рус. букв |
<=30 |
А…Яя |
1) |
|
1 |
1 |
|
4.9. « Имя. |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
4.10. « .Отчество |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
4.11. ФИО оператора |
1.2 |
агрегат |
|
|
|
|
1 |
1 |
|
4.12. « .Фамилия |
+ |
строка рус. букв |
<=30 |
А…Яя |
1) |
|
1 |
1 |
|
4.13. « .Имя |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
4.14. « .Отчество |
+ |
« |
« |
« |
1) |
|
1 |
1 |
|
4.15. Л/номер оператора |
1.3 |
строка цифр |
6 |
|
|
|
1 |
1 |
|
4.16. Дата заступления |
1.4 |
дата |
|
|
|
|
1 |
1 |
|
Функция 5 «Отчет о вызове» | |||||||||
5.1. Нпп вызова |
1.1 |
полож. целое |
|
|
|
|
1 |
1 |
4) |
5.2. Номер отчета |
1.2 |
строка цифр |
6 |
|
|
|
1 |
1 |
|
5.3. Мероприятия |
1.3 |
текст |
<=256 |
|
|
|
1 |
1 |
|
5.4. Примечания |
1.4 |
текст |
<=256 |
|
|
|
0 |
1 |
|
Примечания:
1) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные — строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.
2) Дата рождения > Текущая дата – 100 лет; Дата рождения < Текущая дата – 20 лет.
3) Значение даты <= Текущей даты.
4) Следующее значение (инкремент).
Таблица 2.2.
Ограничения кортежей
№ п/п |
Источник |
Группа атрибутов |
Ограничение |
Функция 1 «Регистрация вызова» | |||
|
В данной функции ограничения на кортежи не выявлены. | ||
Функция 2 «Учет кадров» | |||
2.1 |
+ |
Дата рождения, Дата назначения |
Дата назначения – Дата рождения >= 20 лет |
2.2 |
+ |
Дата назначения, Дата увольнения |
Дата увольнения > Дата назначения |
2.3 |
+ |
Дата рождения ребенка, Дата рождения сотрудника |
Дата рождения сотрудника < Дата рождения ребенка |
Функция 3 «Учет материальной части» | |||
|
В данной функции ограничения на кортежи не выявлены. | ||
Функция 4 «График дежурств» | |||
4.1 |
+ |
Л/номер оператора, л/номер спасателя |
Л/номер дежурного ≠ л/номер оперативника |
Таблица 2.3.
Ограничения уникальности
№ п/п |
Источник |
Группа атрибутов |
Среди каких экземпляров имеет место уникальность |
Функция 1 «Регистрация вызова» | |||
1.1 |
+ |
Нпп |
среди всех вызовов |
1.2 |
+ |
Личный номер |
среди всех сотрудников |
Функция 2 «Учет кадров» | |||
2.1 |
+ |
Личный номер |
среди всех сотрудников |
2.2 |
+ |
Фамилия, Имя, Отчество |
« |
2.3 |
+ |
Паспортные данные |
« |
2.4 |
+ |
Дети.Нпп |
среди всех детей одного сотрудника |
2.5 |
+ |
Карьера.Нпп |
среди всех мест работы одного сотрудника |
2.6 |
+ |
Карьера.Дата назначения |
« |
2.7 |
+ |
Карьера.Дата увольнения |
« |
Функция 3 «Учет материальной части» | |||
3.1 |
+ |
Инвентарный номер |
среди всего имущества |
3.2 |
+ |
Личный номер сотрудника |
среди всех сотрудников |
Функция 4 «График дежурств» | |||
4.1 |
+ |
Нпп |
среди всех дежурств |
4.2 |
+ |
Дата заступления |
« |
4.3 |
+ |
Наряд.Нпп |
среди всех нарядов |
4.4 |
+ |
Наряд.Оперативник.Личный номер |
среди всех сотрудников наряда |
4.5 |
+ |
Оператор.Личный номер |
среди всех сотрудников |
Функция 5 «Отчет о вызове» | |||
5.1 |
+ |
Нпп |
среди всех вызовов |
5.2 |
+ |
Номер протокола |
среди всех протоколов |
Динамические ограничения
В функциях 1-5 динамические ограничения не выявлены
Таблица 2.5.
Другие ограничения
№ п/п |
Источник |
Группа атрибутов |
Ограничение |
Функция 1 «Регистрация вызова» | |||
1.1 |
+ |
Нпп |
Последовательность номеров, соответствующая вызовам, должна начинаться с 1 и не иметь пропусков |
1.2 |
+ |
Нпп, Дата вызова, время вызова |
Хронологическая последовательность значений «Дата вызова», «Время вызова» упорядоченных по «Нпп» |
Функция 2 «Учет кадров» | |||
2.1 |
+ |
Карьера.Дата увольнения |
«Дата увольнения», соответствующая данному сотруднику, может быть незаполненной только для последнего места его работы (текущей) |
2.2 |
+ |
Карьера.Нпп, Дата назначения, Дата увольнения |
Хронологическая последовательность значений «Дата назначения», «Дата увольнения» в агрегате «Карьера», соответствующих одному сотруднику, упорядоченных по «Нпп» |
2.3 |
+ |
Карьера.Нпп |
Последовательность номеров, соответствующая должностям, должна начинаться с 1 и не иметь пропусков |
2.4 |
+ |
Дети.Нпп, Дата рождения |
Хронологическая последовательность значений «Дата рождения» в агрегате «Дети», соответствующих одному сотруднику, упорядоченных по «Нпп» |
2.5 |
+ |
Дети.Нпп |
Последовательность номеров, соответствующая должностям, может начинаться с 0 и не иметь пропусков |
Функция 3 «Учет материальной части» — ограничения не выявлены | |||
|
|
|
|
Функция 4 «График дежурств» | |||
4.1 |
4.1 |
Дежурство.Нпп,Дата заступления |
Хронологическая последовательность значений «Дата заступления» в связях «Дежурство» упорядоченных по «Нпп» |
4.2 |
4.2 |
Дежурство.Нпп |
Последовательность номеров, соответствующая номерам дежурств, должна начинаться с 1 и не иметь пропусков |
4.3 |
4.3 |
Наряд.Нпп |
Последовательность номеров, соответствующая нарядам, должна начинаться с 1 и не иметь пропусков |
Функция 5 «Отчет о вызове» | |||
5.1 |
5.1 |
Отчет.Нпп |
Последовательность номеров, соответствующая вызовам, должна начинаться с 1 и не иметь пропусков |
Таблица 2.6.
Операционные правила
№ п/п |
Источник (табл. 1.3) |
Группа атрибутов |
Ограничение |
Функция 1 «Регистрация вызова» — Правила не выявлены | |||
|
|
|
|
Функция 2 «Учет кадров» | |||
2.1 |
+ |
Атрибуты, относящиеся к сотруднику: Личный номер, Фамилия, Имя, Отчество, … и т.д. |
При удалении записи о каком-либо сотруднике все сведения о нем переносятся в архивную базу с указанием даты-времени, причины удаления и имени пользователя, выполнившего удаление. Эти сведения хранятся в архивной базе не менее 1 года, а затем могут быть автоматически удалены |
Функция 3 «Учет материальной части» | |||
3.1 |
+ |
Атрибуты относящиеся к имуществу: Название, Идент. номер. |
При удалении записи о каком-либо имуществе все сведения о нем переносятся в архивную базу с указанием даты-времени, причины удаления и имени пользователя, выполнившего удаление. Эти сведения хранятся в архивной базе не менее 1 года, а затем могут быть автоматически удалены |
Функция 4 «График дежурств» — Правила не выявлены | |||
|
|
|
|
Функция 5 «Отчет о вызове» — Правила не выявлены | |||
|
|
|
|