Проектирование базы данных для автоматизации контроля сессионной успеваемости студентов ВУЗа и составления приложения к диплому

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    277,49 Кб
  • Опубликовано:
    2013-01-22
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Проектирование базы данных для автоматизации контроля сессионной успеваемости студентов ВУЗа и составления приложения к диплому

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ЭКОНОМИКИ, СТАТИСТИКИ И ИНФОРМАТИКИ.

Кафедра ПИЭ








Курсовой проект

По дисциплине «Базы данных»

на тему «Проектирование БД для автоматизации контроля сессионной успеваемости студентов ВУЗа и составления приложения к диплому»

Выполнили:

Студенты группы ДКБ-301

Никитина И.А., Бондарик А.В.

Руководитель:

К.э.н, доцент кафедры ПИЭ

Корнеев Д.Г.



Москва, 2010

Оглавление

1. Постановка задачи.

. Выбор методологии проектирования и СУБД.

. Описание предметной области.

. Описание структуры базы данных.

. Ограничения целостности связи заданы в схеме данных:

. Проектирование физической структуры базы данных.

. Реализация проекта в MS SQL Server 2008.

. Использованная литература:

1. 
Постановка задачи


Предметной областью нашей курсовой работы является ВУЗ. Для контроля над сессионной успеваемостью студентов высшего учебного заведения необходимо спроектировать базу данных.

Целью данного курсового проекта является автоматизация контроля над сессионной успеваемостью студентов ВУЗа, позволяющая хранить и получать объективную информацию об успеваемости студентов ВУЗа, количестве задолженностей в целом по ВУЗу и на каждого студента, а так же может формировать приложение к диплому.

Обучение может осуществляться одновременно только по одной специальности. Обучение производится по специальностям и направлениям (бакалавриат и магистратура).

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

Контрольные мероприятия включают в себя зачет, экзамен, курсовую работу (курсовой проект).

Если студент имеет академические задолженности за предшествующий период обучения, то он заносится в так называемый список «должников», формируемый деканатом (обновляется еженедельно) и до дальнейшей сессии не допускается.

Оценки подразделяются на неудовлетворительные и удовлетворительные.

В подкласс неудовлетворительные оценки входят: недопуск, неуд, незачет, неявка.

В подкласс удовлетворительные оценки входят: зачтено, отлично, хорошо, удовлетворительно.

Темы курсовой работы\курсовых проектов закреплены, как за студентом, так и за дисциплиной.

У каждой дисциплины имеется определенное количество часов, выделяемое на её изучение.

Для данной предметной области следует выделить следующие ограничения целостности:

.        Ключевые поля каждой таблицы должны иметь непустые, уникальные значения.

.        Поле «форма обучения» может принимать одно из 5 значений: очное, вечернее, дистанционное, заочное, экстернат.

Студенты обучающиеся дистанционно или в экстернате могут быть не прикреплены к определенной группе.

.        Поле «основа обучения» может принимать одно из 2-х значений: бюджетное, платное.

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

.        Поле выпускающая кафедра может принимать одно из 5-ти значений: ПИЭ, УЗиПИМ, КОиБАС, МОиАИС, АСОИиУ.

.        Поле «вид к/м» может принимать одно из 7-ми значений: зачет, экзамен, курсовая работа, курсовой проект, производственная практика, преддипломная практика, защита ВКР.

.        Поле «оценка», класс «успешная» может принимать одно из 4-х значений: зачет,3,4,5.

.        Студент может одновременно обучаться только в одной группе.

При создании базы данных необходимо также создавать запросы. Запросов может быть очень много. Необходимо реализовать наиболее важные из них:

1.      Необходимо выводить полную информацию по успеваемости по данному студенту.

.        Необходимо выводить полную информацию по успеваемости специальности в целом.

.        Необходимо выводить список должников.

.        Необходимо формировать приложение к диплому.

 

2.  Выбор методологии проектирования и СУБД


При проектировании базы данных для контроля над сессионной успеваемостью студентов ВУЗа после описания предметной области необходимо выбрать метод построения инфологической модели (ER-модели) и СУБД, в которой будет реализован проект.

Для построения ER-модели была выбрана программа Design IDEF 3.5. Мы выбрали данную программу, так как, на наш взгляд, она является наиболее простой в использовании (для построения ER-модели).

Существует большое число СУБД. На ее выбор оказывают влияние следующие факторы:

Ø По функциональным возможностям СУБД: настольные (FoxPro, MS Access, Paradox) и корпоративные (Oracle, MS SQL).

Ø  По типу использования языков: открытые, замкнутые, смешанные.

Ø  По числу уровней в архитектуре: одноуровневые, двухуровневые, трехуровневые.

Ø  По выполняемым функциям СУБД: информационные, операционные.

Ø  По сфере возможности применения: универсальные, специализированные.

Для построения самой базы данных нами была выбрана СУБД MS SQL Server 2008. Это система управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов - Transact-SQL.

Microsoft SQL Server является наиболее популярной платформой управления базами данных для операционной системы Windows и их анализа. Это стабильный и мощный сервер баз данных, отличающийся высокой надежностью и защищенностью. Отлично масштабируется и подходит для выполнения бизнес-проектов любого уровня сложности. Надежность: Ms SQL Server 2008 имеет функцию динамического шифрования базы данных, файлов и журналов без изменений в самих приложениях. Эффективность: Общий набор политик для множества операций с базами данных уменьшают временные затраты при повседневном обслуживании. Интеллектуальность: При использовании больших таблиц имеется способность работать с подобными объемами данных благодаря улучшенной производительности запросов. Представление пользователям необходимой информации, мощных средств создания сложных отчетов, генерация отчетов напрямую в Microsoft Word\Excel. Это всё позволяет использовать Ms SQL Server 2008 как для небольшого предприятия, так и для корпорации.

3.  Описание предметной области


Инфологическая модель предметной области - это формализованное описание предметной области, выполненное безотносительно к используемым в дальнейшем программным и техническим средствам. Инфологическая модель должная быть динамической и позволять легкую корректировку. К основным требованиям, предъявляемым к инфологической модели, можно отнести следующие: 1) модель должна содержать всю необходимую и достаточную информацию для последующего проектирования базы данных; 2) должная быть понятна лицам, принимающим участие в создании и использовании.

Проектируя инфологическую модель предметной области, необходимо построить ER-модель. Для этого описываются объекты и связи между объектами. Инфологическая модель проектирования базы данных для контроля за сессионной успеваемостью студентов содержит следующие объекты:

Студент. Объект описывает определенного студента и имеет следующие свойства: Фамилия, Имя, Отчество, табельный номер, специальность, основа обучения, кол-во академических задолженностей, код группы (внешний ключ). Ключом является табельный номер.

Группа. Объект описывает группу, к которой принадлежит студент и имеет следующие свойства: название, код группы, выпускающая кафедра. Ключом является код группы.

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

Преподаватель. Объект описывает определенного преподавателя и включает свойства: табельный номер (ключ), ФИО, должность, код кафедры (внешний ключ). Фамилия - инверсный вход.

Кафедра. Объект описывает определенную кафедру, к которой принадлежит преподаватель. Объект имеет свойства: код кафедры (ключ), полное название и ФИО заведующего кафедрой.

Вынесение на сессию. Объект описывает вынесение предмета на сессию для группы. Имеет следующие свойства: код предмета(внешний ключ), код группы(внешний ключ) семестр. Ключом являются код предмета, код группы и семестр.

Контрольное мероприятие. Объект описывает определенное контрольное мероприятие, проходимое в определенную дату, по определенному предмету, для определенных студентов, у определенного преподавателя или комиссии. Объект имеет следующие ключевые свойства: табельный номер студента (внешний ключ), код предмета (внешний ключ), дата (внешний ключ) - и не ключевые свойства: оценка, вид к/м, вид сдачи, номер комиссии (внешний ключ), табельный номер преподавателя (внешний ключ), номер оправдательного документа, дата оправдательного документа.

Объекты студент и группа связаны неидентифицирующей связью многие к одному (nulls allowed) с кардинальным числом one or more.

Объекты студент и служебная записка связаны, имеют связь многие ко многим.

Объекты студент и недопуск связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объекты студент и контрольное мероприятие связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объекты предмет и вынесение на сессию связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объекты предмет и контрольное мероприятие связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объекты предмет и преподаватель связаны связью многие ко многим.

Объекты предмет и недопуск связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объекты предмет и служебная записка связаны неидентифицирующей связью многие к одному(nulls allowed) с кардинальным числом one or more.

Объекты служебная записка и недопуск связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объекты преподаватель и недопуск связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объекты преподаватель и комиссия связаны связью многие ко многим.

Объекты преподаватель и кафедра связаны неидентифицирующей связью многие к одному (no nulls) с кардинальным числом one or more.

Объекты преподаватель и контрольное мероприятие связаны неидентифицирующей связью многие ко одному(nulls allowed) с кардинальным числом one or more.

Объекты преподаватель и служебная записка связаны неидентифицирующей связью многие ко одному(nulls allowed) с кардинальным числом one or more.

Объекты комиссия и распоряжение связаны идентифицирующей связью многие к одному (no nulls) с кардинальным числом 1.

Объекты комиссия и контрольное мероприятие связаны неидентифицирующей связью один ко многим (nulls allowed) с кардинальным числом one or more.

Объект дата связан идентифицирующей связью один ко многим с кардинальным числом zero, one or more с объектами контрольное мероприятие и недопуск.

Объект Экстернат_сессия и студент связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

Объект Экстернат_сессия и предмет связаны идентифицирующей связью один ко многим с кардинальным числом zero, one or more.

ER-модель для проектирования базы данных для учета за сессионной успеваемостью студентов, построенная при помощи программы Design IDEF 3.5:

4. 
Описание структуры базы данных

база данные управление server

Логическая структура базы данных должна быть спроектирована и описана для конкретной СУБД. Для нашей базы данных была выбрана СУБД MS SQL Server. Необходимо перейти от ER-модели к таблицам в базе данных.

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

Группа (код_группы, название группы, вид группы, выпуск кафедра)

Служебная записка (номер сз, дата сз, таб_номер студента, код предмета, таб_номер преподавателя)

Кафедра (код кафедры, сокращенное название)

Преподаватель (таб_номер преподавателя, ФИО, должность, код кафедры)

Комиссия (номер комиссии, название, номер распоряжения, дата распоряжения)

Предмет (код предмета, название)

Комиссия_преподаватель (номер комиссии, таб_номер преподавателя)

Предмет_преподаватель (таб_номер преподавателя, код предмета)

Вынесение на сессию(код группы, код предмета, семестр)

Недопуск (номер сз, дата сз, таб_номер_преподавателя, код предмета, таб_номер_студента, дата)

Контрольное мероприятие (код предмета, таб_номер_студента, дата, таб_номер_преподавателя, вид к/м, вид сдачи, оценка, номер оправдательного документа, дата оправдательного документа)

Экстернат_сессия (семестр, таб_номер_студента, код предмета, вид к/м, дата)

Служебная_студент (номер сз, дата сз, таб_номер_студента)

5. 
Ограничения целостности связи заданы в схеме данных



6.  Проектирование физической структуры базы данных


Физическая модель - это привязка логической модели к конкретной среде хранения и методам хранения данных. При проектировании физической модели базы данных необходимо описать среду и метод хранения информации. Для этого необходимо изучить особенности организации данных выбранной СУБД. Для проектирования базы данных для контроля за сессионной успеваемостью студентов была выбрана СУБД MS SQL Server 2008. Для хранения данных в этой СУБД используются таблицы. В них хранится вся информация о предметной области. Наша база данных включает несколько взаимосвязанных таблиц. Объекты, которые были описаны при построении инфологической модели предметной области (п. 3), в базе данных являются таблицами.

Ниже для примера приведена таблица, в которой хранятся записи о студентах:


Приведена таблица, в которой хранятся записи о дисциплинах:

 

7. Реализация проекта в MS SQL Server 2008


При проектировании базы данных для контроля за сессионной успеваемостью студентов ВУЗа разработка начинается с объектов данных. Т. е. Сначала строятся таблицы и создаются запросы. В процессе проектирования нашей базы данных было построено 8 таблиц и создано 5 основных запросов. Таблица необходимы для того, чтобы хранить информацию о предметной области. Они создавались в режиме конструктора (описаны поля таблиц, ограничения целостности) и непосредственно запросами. После создания таблиц были установлены связи между таблицами (т.е. создана схема данных). После этого были построены запросы. Запросы необходимы для того, чтобы реализовать информационные потребности пользователей.

CREATE TABLE SPEC

(_spec         integer NOT NULL,      nchar(40)

);UNIQUE INDEX IXSPEC ON SPEC

(_spec         ASC

);TABLE DISC

(_disc         integer NOT NULL,      nchar(40),

asi     integer,_kaf          integer

);UNIQUE INDEX IXDISC ON DISC

(_disc         ASC

);TABLE SVYAZ

(_spec         integer,_disc        integer,_polya      integer NOT NULL

);UNIQUE INDEX IXSVYAZ ON SVYAZ

(_polya       ASC

);TABLE KAFEDRI

(_kaf integer NOT NULL,      nchar(40),   nchar(40)

);UNIQUE INDEX IXKAFEDRI ON KAFEDRI

(_kaf ASC

);TABLE STUDENTIKI

(        integer NOT NULL,      nchar(40),   nchar(40),estvo    nchar(40),_spec   integer

);UNIQUE INDEX IXSTUDENTIKI ON STUDENTIKI

(        ASC

);TABLE KURSA4I

(enocka       integer,       integer NOT NULL,_temi       integer,_disc        integer

);UNIQUE INDEX IXKURSA4I ON KURSA4I

(        ASC

);TABLE TEMI

(_temi         integer NOT NULL,_kurs      nchar(40),_disc    integer

);UNIQUE INDEX IXTEMI ON TEMI

(_temi         ASC

(        integer,       datetime,    integer NOT NULL,_disc       integer NOT NULL

);UNIQUE INDEX IXZA4ETKA ON ZA4ETKA

(        ASC,_disc  ASC

);TABLE SPEC(PRIMARY KEY (kod_spec));TABLE DISC(PRIMARY KEY (kod_disc));TABLE SVYAZ(PRIMARY KEY (id_polya));TABLE KAFEDRI(PRIMARY KEY (kod_kaf));TABLE STUDENTIKI(PRIMARY KEY (id));TABLE KURSA4I(PRIMARY KEY (id));TABLE TEMI(PRIMARY KEY (kod_temi));TABLE ZA4ETKA(PRIMARY KEY (id,kod_disc));TABLE DISC(FOREIGN KEY (kod_kaf) REFERENCES KAFEDRI);TABLE SVYAZ(FOREIGN KEY (kod_spec) REFERENCES SPEC);TABLE SVYAZ(FOREIGN KEY (kod_disc) REFERENCES DISC);TABLE STUDENTIKI(FOREIGN KEY (kod_spec) REFERENCES SPEC);TABLE KURSA4I(FOREIGN KEY (id) REFERENCES STUDENTIKI);TABLE KURSA4I(FOREIGN KEY (kod_temi) REFERENCES TEMI);TABLE KURSA4I(FOREIGN KEY (kod_disc) REFERENCES DISC);TABLE TEMI(FOREIGN KEY (kod_disc) REFERENCES DISC);TABLE ZA4ETKA(FOREIGN KEY (id) REFERENCES STUDENTIKI);TABLE ZA4ETKA(FOREIGN KEY (kod_disc) REFERENCES DISC);

После создания таблиц, связей и запросов мы приступили к заполнению таблиц.

Таблица Дисциплины:

insert into DISC

values (100, 'Иностранный язык', 360, 207)

insert into DISC(101, 'Физическая культура', 408, 102)into DISC(102, 'Геометрия и топология', 200, 201)into DISC(104, 'Математический анализ (1)', 150, 201)into DISC

values (105, 'Математический анализ (2)', 150, 201)into DISC(106, 'Информатика и программирование (1)', 180, 501)into DISC(107, 'Информатика и программирование (2)', 170, 501)

insert into DISC(108, 'Физика', 210, 101)into DISC(109, 'Экономика', 100, 804)

insert into DISC(110, 'Основы информационной безопасности', 110, 401)

insert into DISC(112, 'Базы данных', 190, 701)into DISC(113, 'Операционные системы', 220, 101)into DISC(114, 'Теория вероятностей', 100, 703)

insert into DISC(115, 'Основы компьютерной безопасности', 160, 401)

insert into DISC(116, 'Методы программирования', 210, 501)

insert into DISC(117, 'Системы и сети передачи информации', 210, 101)

insert into DISC(119, 'Отечественная история', 80, 804)into DISC(120, 'Философия', 70, 804)into DISC(121, 'Математическая логика', 110, 703)into DISC(122, 'Функциональный анализ', 250, 201) into DISC(123, 'Корпоративные информационные системы', 220, 301)into DISC(124, 'Проектирование информационных систем', 190, 701)

insert into DISC(126, 'Интернет-программирование', 135, 202)into DISC

values (128, 'Аппаратные средства выч техники', 98, 101)

Таблица Студенты:into STUDENTIKI(08012, 'Никитина', 'Ирина', 'Андреевна', 80801)

insert into STUDENTIKI(08017, 'Рубцов', 'Артем', 'Александрович', 90105)into STUDENTIKI(08005, 'Бондарик', 'Александр', 'Владимирович', 10503)into STUDENTIKI(08032, 'Хомченко', 'Екатерина', 'Александровна', 230102)into STUDENTIKI(08024, 'Самчук', 'Виктория', 'Игоревна', 80800)into STUDENTIKI(08014, 'Акивис', 'Владимир', 'Александрович', 80802)into STUDENTIKI(08007, 'Позднякова', 'Ирина', 'Александровна', 80801)into STUDENTIKI(80022, 'Макагон', 'Алексей', 'Константинович', 10503)into STUDENTIKI(80020, 'Кореев', 'Олег', 'Алексеевич', 90105)into STUDENTIKI(80011, 'Климова', 'Дарья', '', 80800)into STUDENTIKI(80019, 'Гудков', 'Максим', 'Константинович', 230102)

Таблица Кафедры:into KAFEDRI(101, 'АСОИиУ', 'Микрюков А.А.')into KAFEDRI(102, 'ФВиС', 'Ростеванов А.Г.')into KAFEDRI(201, 'ВМ', 'Никишкин А.В.')into KAFEDRI(301, 'КИС', 'Нуралиев Б.Г.')into KAFEDRI(401, 'КОИБАС', 'Баяндин Н.И.')into KAFEDRI(501, 'МОиАИС', 'Комлева Н.В.')into KAFEDRI(601, 'ПИвО', 'Татаринова М.А.')into KAFEDRI(701, 'ПИвЭ', 'Тельнов Ю.Ф.')into KAFEDRI(801, 'РИО', 'Хохлов Ю.Е.')into KAFEDRI(901, 'УЗиПИМ', 'Уринцов А.И.')into KAFEDRI(702, 'ТРИС', 'Юхневич Л.А.')into KAFEDRI(202, 'БВС', 'Шмид А.В.')into KAFEDRI(205, 'И', 'Федосеев С.В.')into KAFEDRI(207, 'ИЯ', 'Турук И.Ф.')into KAFEDRI(703, 'ПМ', 'Мастяева И.Н.')into KAFEDRI(804, 'ФиГН', 'Завражин А.В.')

Таблица Специальности:into SPEC(230102, 'АСОИиУ')into SPEC(090105, 'КОИБАС')into SPEC(010503, 'МОиАИС')into SPEC(080800, 'ПИ')into SPEC(080801, 'ПИвЭ')into SPEC(080802, 'ПИвМ')

8. Использованная литература


1)Диго С.М., «Базы Данных», Москва, «Финансы и статистика», 2005г.

2)Советов Б.Я., Цехановский В.В., Чертовской В.Д. <http://www.zakazi.msk.ru/categoryview.aspx?author=601>, «Базы данных: Теория и практика»М: Высшая Школа,2007г.

Похожие работы на - Проектирование базы данных для автоматизации контроля сессионной успеваемости студентов ВУЗа и составления приложения к диплому

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!