Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Отдел кадров института / БД - курсовик

.doc
Скачиваний:
178
Добавлен:
01.05.2014
Размер:
699.39 Кб
Скачать

Формулировка задания

Требуется создать программную систему для отдела кадров института. Такая система должна обеспечивать хранение сведений о преподавателях и других сотрудниках института. Эти сведения включают в себя паспортные данные сотрудника, данные трудовой книжки, ИНН, номер пенсионного свидетельства, название кафедры или отдела, в котором работает сотрудник, дата поступления на работу в институт, должность, степень, звание, правительственные награды, дата начала и конца отпуска в текущем году. Данные трудовой книжки – это ее номер и дата выдачи, а также даты и номера приказов о зачислении и увольнении, о переходе в другое подразделение или об изменении должности. Кроме того, для преподавателей должна быть известна нагрузка в текущем году (суммарное количество часов), дата заключения контракта, дата окончания контракта, педагогический стаж, и перечень дисциплин, которые он преподает или может преподавать.

Сотрудник отдела кадров может вносить в БД следующие изменения:

  • удалить уволившегося или добавить в базу нового сотрудника;

  • внести новую дату заключения контракта;

  • изменить для каждого сотрудника даты начала и конца отпуска;

  • изменить должность определенного сотрудника.

Сотруднику отдела кадров могут потребоваться следующие сведения:

  • список преподавателей, которые работают на определенной кафедре, с указанием их категории (доцент, ассистент, ассистент к.н., профессор, старший преподаватель) и стажа преподавательской работы?

  • средняя нагрузка ассистентов указанной кафедры?

  • дисциплины, которые читает каждый из доцентов указанной кафедры?

  • количество преподавателей каждой из категорий, работающих в институте?

  • список сотрудников, находящихся в отпуске в определенном месяце;

  • список преподавателей, у которых истек срок контракта.

  • список сотрудников, награжденных медалью «За оборону Ленинграда»?

  • кто из преподавателей может читать указанную дисциплину?

  • кто из сотрудников дольше других работает в институте?

Необходимо предусмотреть возможность выдачи справки о сотрудниках института, находящихся в отпуске в текущем месяце и отчета по кафедрам о преподавателях, читающих каждую из дисциплин. Для каждой кафедры указывается разница между ее средней нагрузкой и средней нагрузкой по институту.

Проектирование базы данных

Разрабатываемая база данных должна хранить следующие сведения:

  • паспортные данные, а именно:

  • фамилия, имя и отчество;

  • год рождения;

  • номер паспорта;

  • дата выдачи;

  • кем выдан

  • место жительства (прописка);

  • данные трудовой книжки, а именно:

  • номер трудовой книжки;

  • дата выдачи;

  • номера приказов о зачислении, увольнении, переходе в другое подразделение или об изменении должности;

  • даты вышеуказанных приказов.

  • ИНН;

  • номер пенсионного свидетельства;

  • название кафедры или отдела, в котором работает сотрудник;

  • дата поступления на работу в институт;

  • должность;

  • степень;

  • звание;

  • правительственные награды;

  • дата начала отпуска в текущем году;

  • дата окончания отпуска в текущем году;

  • для преподавателей дополнительно должны быть указаны:

  • нагрузка в текущем году (суммарное количество часов);

  • дата заключения контракта;

  • дата окончания контракта;

  • категория;

  • педагогический стаж;

  • перечень дисциплин, которые он преподаёт или может преподавать.

Таким образом, имеем примерно 25 атрибутов, значения которых должна хранить база данных. Значит, применять для проектирования метод декомпозиции в данном случае будет весьма непросто и разумней будет использовать метод «сущность-связь».

Можно выделить следующие сущности:

  • сотрудник;

  • преподаватель;

  • паспорт;

  • трудовая книжка;

  • приказ;

  • награды;

  • дисциплина.

Сущности и связи между ними

имеет

имеет

содержит номер

может преподавать

Генерация отношений

Согласно построенной выше диаграмме, «Преподаватель» является категорией общей сущности «Сотрудник», причём общая сущность имеет значительное количество атрибутов, поэтому согласно правилу 8.1, приведённому в конспекте лекций Фомичёвой Т.Г., общая сущность и её категория будут источниками для генерации отдельных отношений, при этом ключ общей сущности добавится в отношение, соответствующее категории.

Преподаватель (№ Паспорта, Нагрузка, Дата закл-я контракта, Дата окон-я котракта,

Категория, Педагогический стаж)

Сущности «Сотрудник» и «Паспорт» имеют степень бинарной связи 1:1 и обязательный класс принадлежности, поэтому, согласно правилу 1, для их представления требуется только одно отношение, к тому же в ином случае будет иметь место дублирование данных (атрибуты «№ паспорта» и «ФИО»). В это же отношение по той же причине должна войти сущность «Трудовая книжка».

Таким образом, имеем следующее отношение:

Сотрудник (ФИО, № паспорта, дата рождения, дата выдачи паспорта, кем выдан паспорт, прописка, № трудовой книжки, дата выдачи труд. книжки, ИНН, № пенс. свид-ва, название кафедры/отдела, степень, звание, дата начала отпуска, дата конца отпуска)

Сущности «Сотрудник» и «Награда» имеют связь 1:n, а класс принадлежности сущности «Награда» - необязательный. Поэтому, должны быть созданы три отношения «Сотрудник», «Награда» и связное отношение «Сотрудник имеет награду», но так как «Награда» имеет только один атрибут «Название», то будет достаточно двух отношений «Сотрудник» и «Сотрудник имеет награду».

Сотрудник имеет награду (№ паспорта, Название)

Сущности «Трудовая книжка» и «Приказ» имеют связь 1:n и обязательный класс принадлежности. Значит, должны быть созданы 2 отношения. В отношение «Приказ» в качестве атрибута должен войти ключ сущности «Трудовая книжка», но так как сущность «Трудовая книжка» вошла в состав сущности «Сотрудник», то в отношение «Приказ» добавим ключ отношения «Сотрудник» - атрибут «№ паспорта».

Приказ (№ приказа, Заголовок, Дата, № паспорта)

Рассмотрим сущности «Преподаватель» и «Дисциплина». Имеется связь n:n и обязательный класс принадлежности обеих сущностей. Должны быть сформированы три отношения: «Преподаватель», «Дисциплина» и связное отношение «Может преподавать», но так как сущность «Дисциплина» имеет только один атрибут, то будет достаточно двух отношений: «Преподаватель» и «Может преподавать».

Может преподавать (№ Паспорта, Название)

После создания таблиц и установления между ними требуемых связей получаем следующую схему данных:

- 5 -

Соседние файлы в папке Отдел кадров института