Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проверка структуры фирмы / 5 сообщений из 5, страница 1 из 1
10.12.2012, 16:19
    #38072753
aslan1980
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка структуры фирмы
Добрый день знатоки
Ну вообще создал структуру на основе следующих бизнес процессов компании Х.

1) Сотрудник может не иметь или же иметь несколько иждивенцев
2) Сотрудник может работать в нескольких департаментах, а несколько сотрудников могут работать в одном департаменте.
3) Сотрудник может иметь несколько специальностей
4) Сотрудник может иметь несколько образований
5) Сотрудник может пройти несколько тренингов, а может вообще не пройти
6) Один из сотрудников управляет департаментом

Теперь пожалуйста

1) проверти мою структуру, все ли там правильно

2) Правильно ли проведена нормализация таблиц

3) Правильно ли атрибут дата приема на работу указать в таблице сотрудники ?
...
Рейтинг: 0 / 0
10.12.2012, 16:33
    #38072798
Кот Матроскин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка структуры фирмы
aslan1980,
Таблица "Управляющий" - лишняя, с ней возможна ошибка целоcтности, когда сотрудник в департаметнте не работает, но им управляет.
Лучше в связующую таблицу "Сотрудник-департамент" добавить ссылку на справочник должностей (в простейшем случае соcтоящий из двух записей "рядовой", "руководитель").
"Дату приема на работу" - тоже стоит перенести в эту связующую таблицу
...
Рейтинг: 0 / 0
10.12.2012, 16:34
    #38072801
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка структуры фирмы
aslan1980,

1. У разных сотрудников может найтись общий иждивенец
2. Весьма смущает невозможность двух сотрудников с одинаковой специальностью
3. Аналогично с образованием и тренингами
4. Поля ФИО повторяются в двух таблицах. Это ни на какие мысли не наводит?
5. Дата приёма - не совсем атрибут сотрудника. Бывает, что сотрудник несколько раз с перерывами работает в одной организации.
6. Сущность "управляющий" нужна только для странного атрибута "ранг управляющего"?
7. Немного смущает список атрибутов в Образовании
...
Рейтинг: 0 / 0
11.12.2012, 15:29
    #38074307
aslan1980
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка структуры фирмы
Да с вашей критикой полностью согласен

я переделал структуру и вот она

К softwarer

4. Поля ФИО повторяются в двух таблицах. Это ни на какие мысли не наводит? Да наводит, но там хранятся ФИО иждивенцев

что предлагаете по этому поводу ?

Проверте пожалуйста что еще не так ?
...
Рейтинг: 0 / 0
11.12.2012, 16:22
    #38074435
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка структуры фирмы
aslan1980Да наводит, но там хранятся ФИО иждивенцев что предлагаете по этому поводу ?
Я пока что не вижу необходимости хранить информацию по людям в одной таблице, а информацию по людям - в другой. Более того, это ведёт к некоторым несуразицам, например: представьте себе, что стоит задача добавить в структуру "исторический аспект". И оказывается, что Вася Пупкин до 2010-го года был иждивенцем, а с 2011-го стал сотрудником.

aslan1980Проверте пожалуйста что еще не так ?
1. В развязках "многие ко многим" обычно не требуется отдельный первичный ключ (вроде Код Сотрудник Иждивенец), с этой ролью лучше справляется составной ключ (Код Сотрудника, Код Иждивенца).

2. Непонятно, что за миграция ключа сквозь развязку (например, атрибут Код Сотрудника в сущности Тренинг или Образование).

3. Ну и наконец, удивляет единственный на всю структуру пунктир из "Сотрудники тренинг", особенно в связке с "SN" (что, я так подозреваю, означает Set Null, и если так, немного не очень обдумано)
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проверка структуры фирмы / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]