Інформаційна система ВНЗ

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Зміст

Введення

Постановка завдання

Глава 1 Проектування БД

1.1 Концептуальне проектування БД

1.2 Формулювання обмежень цілісності

1.3 Фізичне проектування

Глава 2 Проектування інтерфейсу

2.1 Інтерфейс введення / коригування БД

2.2 Генерація звітів

Глава 3 Програмна реалізація

Висновок

Список літератури

Введення

Одним з найважливіших умов забезпечення ефективного функціонування будь-якої організації є наявність розвиненої автоматизованої інформаційної системи (АІС). Під АІС розуміють всі системи, що реалізують автоматизований збір, обробку та маніпулювання даними та включають технічні засоби обробки даних, програмне забезпечення та обслуговуючий персонал. Сучасною формою АІС є автоматизовані банки даних (АБД), які включають до свого складу обчислювальну систему, одну або декілька БД, систему управління базами даних (СКБД) і набір прикладних програм (ПП).

Мета даної курсової роботи - розробка інформаційної системи Вузу. Інформаційна система Вузу передбачає облік успішності студентів різних груп.

Відповідно до поставленої мети в роботі передбачається вирішити такі завдання:

- Збір даних;

- Концептуальне проектування бази даних;

- Формулювання обмежень цілісності;

- Фізичне проектування;

- Розробка програми;

- Генерація звітів.

Для забезпечення надійності системи управління даними необхідно виконати наступні основні вимоги:

- Цілісність і несуперечність даних,

- Достовірність даних,

- Простота управління даними,

- Безпека доступу до даних.

Постановка завдання

Завдання. Студенти, організовані в групи, навчаються на одному з факультетів, очолюваному деканатом, в функції якого входить контроль за навчальним процесом. У навчальному процесі беруть участь викладачі кафедр, адміністративно відносяться до одного з факультетів. Викладачі поділяються на такі категорії: асистенти, викладачі, старші викладачі, доценти, професори. Асистенти та викладачі можуть навчатися в аспірантурі, ст. викладачі, доценти, можуть очолювати наукові теми, професора - наукові напрями. Викладачі будь-який з категорії в свій час могли захистити кандидатську, а доценти та професори і докторську дисертацію, при цьому викладачі можуть займати посади доцента і професора тільки, якщо вони мають відповідно звання доцента і професора.

Навчальний процес регламентується навчальним планом, в якому вказується, які навчальні дисципліни на яких курсах і в яких семестрах читаються для студентів кожного року набору, із зазначенням кількості годин на кожен вид занять з дисципліни (види занять: лекції, семінари, лабораторні роботи, консультації, курсові роботи, ІР і т.д.) і форми контролю (залік, іспит). Викладач може вести заняття по одній або декількох дисциплінах для студентів як свого, так і інших факультетів. Відомості про проведені іспитах і заліках збираються деканатом.

Після закінчення навчання студент виконує дипломну роботу, керівником якої є викладач з кафедри, що відноситься до того ж факультету, де навчається студент, при цьому викладач може керувати кількома студентами.

Потрібно розробити інформаційну систему Вузу.

Глава 1 Проектування БД

1.1 Концептуальне проектування БД

Поставлену задачу реалізуємо за допомогою E - R-проектування БД.

Для цього представимо предметну область «Навчальний процес» як взаємодія наступних сутностей: кожен «Студент» здає іспит за деякою «дисципліни» згідно з навчальним планом. У навчальному процесі бере участь «Викладач», який здійснює читання навчального курсу та контроль знань «Студента». У навчальному процесі також бере участь «Кафедра», яка організовує роботу «Викладача».

Таким чином визначити суті, ми можемо за допомогою набору простих фраз:

Викладач читає дисципліну

Студент здає (іспит) дисципліну

Викладач працює на кафедрі.

У цьому описі предметної області сутність - це, як правило, іменник, а зв'язок - дієслово. Одні й ті ж іменники позначають одні й ті ж сутності. У даному прикладі можна виділити сутності Викладач, Студент і Кафедра.

На підставі уважного вивчення предметної області виділимо наступні сутності моделі «сутність-зв'язок» («Entity Relationship» - ER-моделі): «Студент», «Кафедра», «Викладач», «Дисципліна» і зобразимо їх у вигляді графічних позначень (прямокутник , у верхній частині якого записано ім'я суті, а нижче перераховуються атрибути, причому ключові атрибути позначаються підкресленням).

Визначення сутності «Студент» в E - R-моделі.

СТУДЕНТ

Номер залікової книжки

ПІБ

Група

Місто

Визначення сутності «Кафедра» в E - R-моделі.

КАФЕДРА

Назва кафедри

Телефон

Визначення сутності «Викладач» в E - R-моделі.

ВИКЛАДАЧ

Табельний номер

ПІБ

Вчений ступінь

Кафедра

Визначення сутності «Предмет навчального плану» у E - R-моделі.

ДИСЦИПЛІНА

Код предмета

Назва предмету

Кількість годин

Для успішної класифікації зв'язків введемо наступні припущення:

  • Кожен викладач обов'язково числиться на який-небудь кафедрі.

  • Кожен викладач може вести кілька курсів, і кожен викладач веде хоча б один предмет, кожен курс може читатися кількома викладачами.

  • Студент отримує оцінки за кількома курсами; можливо, що студент не має жодної оцінки; можливі курси, також можливі предмети, за якими не має оцінки жоден студент.

При цих припущеннях E - R діаграму предметної області можна представити наступним чином (жирним шрифтом виділено ключові атрибути).










Рис. 1. E - R діаграма завдання «Успішність студентів».

За даними E - R-діаграми побудуємо набір відносин, із зазначенням для кожного передбачуваних первинних ключів.

У нашій роботі ступінь зв'язку 1: N буде відповідати припущенням, що на одній кафедрі може бути безліч викладачів. Обов'язковий клас приналежності для сутності «Викладач» означає, що за кожним викладачем обов'язково закріплена одна кафедра. Наведемо ER діаграму для цього випадку.



Ступінь бінарної зв'язку M: N означає, що кожен студент може складати кілька дисциплін, а кожна дисципліна може здаватися кількома студентами. E - R діаграми для цього випадку наведена нижче.



Примірники отриманих відносин:

Студент Здає Дисципліну

заліковки


ПІБ

заліковки


Дисципліна

Оцінка

Дисципліна

Колич. годин

101

Іванов

101

Математика

5

Математика

120

120

Сидоров

101

Фізика

4

Фізика

80

203

Кузнєцов

120

Інформатика

5

Філософія

150

245

Петров

245

Сопромат

4

Сопромат

90



203

Механіка

4

Механіка

120



203

Фізика

5

Інформатика

150

Ступінь бінарної зв'язку M: N означає, що кожен викладач може вести кілька предметів, а кожен предмет може читатися кількома викладачами. Обов'язковий клас приналежності говорить про те, що за кожною дисципліною обов'язково повинен бути закріплений викладач. E - R діаграми та примірники відносин для цього випадку наведені нижче.



Примірники отриманих відносин:

Викладач Читає Дисципліна

Таб.

ПІБ

Дисципліна

Таб.

Дисципліна

Колич. годин

101

Іванов

Математика

101

Математика

120

120

Сидоров

Фізика

101

Фізика

80

203

Кузнєцов

Інформатика

101

Філософія

150

245

Петров

Сопромат

120

Сопромат

90



Механіка

120

Механіка

120



Фізика

120

Інформатика

150

Провівши аналіз на наявність функціональних залежностей ми виділили такі функціональні залежності:

1. № заліковки (NZ) ® ПІБ (FIO), Група (GRUPPA), Місто (TOWN)

2. № заліковки (NZ), Код дисципліни (S _ ID) ® Оцінка (MARK)

3. Код дисципліни (S _ ID) ® Найменування (SUBS), Колич. Годин (HOUR)

5. Код дисципліни (S _ ID) ® Таб. № (TN)

6. Таб. № (TN) ® ПІБ (FIO), Вчений ступінь (UCHSTEPEN), Кафедра (KAFEDRA)

1.2 Формулювання обмежень цілісності

Обмеження цілісності, як обмеження на значення ключових полів в зв'язкових таблицях служать для збереження логічної структури баз даних. Як правило, обмеження цілісності реалізуються на рівні додатків і є складовою частиною технічного завдання на їх розробку. Деякі СУБД здатні підтримувати певні види обмежень на рівні організації оточення програми. Вимоги цілісності для ключових полів кожного відносини наведені в таблицях.

Таблиця Student (відношення «Студент»).

Ім'я поля

Опис

Тип

Примітка

Вимога

NZ

залікової книжки

+

ключ

Унікальність в межах відносини; при оновленні значення в зв'язковою таблиці повинні змінюватися одночасно; при видаленні одночасно видаляється інформація з зв'язковий таблиці.

FIO

ПІБ

Alpha



GRUPPA

Група студента

Alpha



TOWN

Місто

Alpha



Таблиця Marks (відношення «Оцінки»).

Ім'я поля

Опис

Тип

Примітка

Вимога

NZ

залікової книжки

Long integer


Повинен належати домену Student. NZ

S_ID

Код дисципліни

Long integer


Повинен належати домену Subs. S _ ID

MARK

Оцінка за предмет

Number



Таблиця Sub s (відношення «Дисципліна»).

Ім'я поля

Опис

Тип

Примітка

Вимога

S_ID

Код дисципліни

+

ключ

Унікальність в межах відносини; при оновленні значення в зв'язковою таблиці повинні змінюватися одночасно; при видаленні одночасно видаляється інформація з зв'язковий таблиці.

Subs

Найменування дисципліни

Alpha



Hour

Кількість годин

Number



Таблиця Subj (відношення «Дісціпліна2»).

Ім'я поля

Опис

Тип

Примітка

Вимога

S_ID

Код дисципліни

Long integer


Повинен належати домену Subs. S _ ID

TN

Табельний номер викладача

Long integer


Повинен належати домену Prepodavatel. TN

Таблиця Prepodavatel (відношення «Викладач»).

Ім'я поля

Опис

Тип

Примітка

Вимога

TN

Табельний номер викладача

+

ключ

Унікальність в межах відносини; при оновленні значення в зв'язковою таблиці повинні змінюватися одночасно; при видаленні одночасно видаляється інформація з зв'язковий таблиці.

FIO

ПІБ викладача

Alpha



UCHSTEPEN

Вчений ступінь

Alpha



KAFEDRA

Назва кафедри

Alpha



Таблиця Kafedra (відношення «Кафедра»).

Ім'я поля

Опис

Тип

Примітка

Вимога

KAFEDRA

Назва кафедри

Alpha



TELEPHON

телефону кафедри

Long integer



1.3 Фізичне проектування

В якості вихідних даних для фізичного проектування приймемо найпростішу ситуацію:

  • Завдання реалізується на одному робочому місці.

  • Багатокористувацький доступ до бази даних не передбачений.

У нашому випадку таблиці зберігаються у форматі DB; всі файли бази даних розташовуються на локальному диску. Тут же зберігаються файли підтримки СУБД і файли прикладної програми.

Важлива частина фізичного проектування - вибір індексних виразів для побудови індексів і вибір формату зберігання індексів. Для забезпечення швидкості роботи, особливо на операціях вибірки та пошуку, необхідна індексація по всіх ключових полях таблиць (див. таблиці вище).

Для створення таблиць ми використовуємо Database Desktop програми Borland Delphi. Входимо в меню File -> New -> Table і вибираємо тип таблиці Paradox 7. І заповнюємо поля таблиці. Створені таблиці (див. Додаток 1) будуть зберігається в форматі DB.

Глава 2 Проектування інтерфейсу

Функціонально додаток складається з трьох частин:

- Інтерфейс введення / коригування БД

- Підсистема генерації друкованих форм.

- Допоміжні функції.

Кожній з цих частин відповідає опція головного меню програми.

2.1 Інтерфейс введення / коригування БД

Головне меню являє собою ієрархічну систему з власне головного меню і спливаючих меню, що дозволяють уточнити вибір, зроблений в меню. Передача управління в процедуру обробки обраної команди відбувається при виборі належної опції спливаючого меню. Для передачі управління використовується механізм управління подіями.

Меню програми виглядає наступним чином.

Рис. 2. Структурна схема (дерево діалогу)

Інтерфейс введення / коригування даних дозволяє вводити, виправляти або коригувати інформацію в БД. На програмну підтримку інтерфейсу покладається завдання відслідковування як коректності дій оператора, так і обмежень цілісності.

Інтерфейс складається з двох рівнів. На першому з них надається доступ до однієї з чотирьох довідників - «Студенти», «Предмети», «Викладачі» або «Кафедри». Для доступу до цих довідників використовується екранна форма (див. Додаток 2), в якій відображається вміст довідника у вигляді таблиці. На формі розміщені спеціальні кнопки для редагування, додавання та видалення запису. При натисканні на кнопку «Редагувати» відкривається вікно (див. Додаток 2), в якому містяться поля для редагування. Кнопка «Додати» додає рядок у таблицю, а кнопка "Видалити" відповідно видаляє запис.

Вибравши на екрані, наприклад, довідник «Студенти» (див. Додаток 2), користувач отримує доступ до інформації, що міститься в даному довіднику, тобто він отримує доступ до особистих даних студентів: ПІБ студента, номер залікової книжки, група, в якій навчається студент, а також місто, в якому він проживає. Отримавши доступ до даної інформації, користувач може здійснювати введення і коректування даних. Аналогічно і з іншими довідниками. Вибравши в меню довідник «Предмети», на екранній формі (див. Додаток 3) користувач може побачити список дисциплін, код дисциплін і кількість годин для кожної дисципліни. Вибравши в меню довідник «Викладачі» (див. Додаток 3), користувач на екранній формі отримує доступ до особистої інформації викладачів: табельної номером викладача, ПІБ, наукового ступеня і на якій кафедрі він працює. Вибравши в меню довідник «Кафедри» (див. Додаток 4) користувач бачить список кафедр та їх телефони.

2.2 Генерація звітів

Оскільки вся інформація зберігається у вигляді декомпозиції, остільки для видачі на друк звітів необхідно виконувати зворотне злиття таблиць. Це можна робити або на логічному рівні, використовуючи динамічні зв'язки, або на фізичному рівні.

Практично у всіх сучасних СУБД, де використовується сучасна техніка програмування, це питання вирішується таким чином. Всі СУБД мають у своєму розпорядженні будь - яким підмножиною мови запитів SQL, вбудованим в систему. Ця мова надає можливість коректної взаємодії з сервером, а також створити об'єднання таблиць будь-якої складності, в тому числі і з вкладеними угрупуваннями і агрегатуванням даних усього лише в одній команді Select. Крім гнучкості та потужності запити SQL відрізняються ще й високим швидкодією - у порівнянні із запитом на мові навігаційного типу вибірка виконується іноді в десятки разів швидше.

В якості робочого алгоритму обрана наступна послідовність дій:

- За допомогою команди Select створюється вибірка в курсорі SQL.

- Цей курсор встановлюється як поточна робоча область і з нього відбувається виведення на друк.

Для виведення звіту користувач може вибрати в меню вкладку «Друк». При натисканні на «Друк» відкривається екранна форма (див. Додаток 4), на якій зображено дві кнопки «Висновок звіту № 1» і «Висновок звіту № 2». При натисканні на одну з кнопок, виводиться звіт (див. Додаток 5).

Глава 3 Програмна реалізація

Для реалізації БД і розробки інтерфейсу ми використовуємо середовище програмування Delphi.

Головне меню програми створюємо наступним чином.

Створюємо новий проект і на формі (Form 1) розміщуємо наступні компоненти (див. Додаток 6):

  1. MainMenu - цей компонент служить для створення меню програми, у властивості Items ми прописуємо наше меню, яке складається з довідників, звітів, «про програму» і «вихід».

  2. Button - в даному компоненті ми змінюємо властивість Caption на «Вихід», клацаємо два рази по компоненту та в процедурі прописуємо Close; тобто при натисканні на цю кнопку відбувається закриття вікна.

Потім для здійснення доступу до наших створеним в Database Desktop таблицям ми створюємо додатковий модуль Data Module (див. Додаток 6). На цьому модулі ми розміщуємо наступні компоненти:

  1. Query 1 - у даному компоненті у властивості DatabaseName ми прописуємо шлях у нашої БД, у властивості SQL ми прописуємо текст запиту: Select * from Student

І властивості Action ми встановлюємо значення True.

2. DataSource 1 - цей компонент забезпечує доступ до БД через компонент Query 1. У властивості DataSet ми вибираємо Query 1.

3. Table 1 - у цьому компоненті у властивості DatabaseName ми прописуємо шлях у нашої БД, а властивості TableName ми вибираємо потрібну нам таблицю. Потім встановлюємо для властивості Action значення True.

4. DataSource 2 - цей компонент ми пов'язуємо з компонентом Table 1 за допомогою властивості DataSet,

Далі створюємо нову форму (Form 3). На ній розміщуємо наступні компоненти (див. Додаток 6):

  1. DBGrid 1 - даний компонент ми використовуємо для відображення вмісту наших довідників. У властивості DataSource ми прописуємо DataM.DataSource2, тим самим отримуючи доступ до довідника.

  2. Розміщуємо кнопку редагування, використовуючи при цьому компонент Button. Для того, щоб при натисканні на цю кнопку з'явилося вікно редагування створимо ще одну форму (див. нижче Form 7). Потім клацнемо по кнопці два рази і напишемо текст програми у процедурі.

procedure TForm3.Button1Click (Sender: TObject);

begin

Form7.Show; / / відображення вікна редагування

end;

  1. Розміщуємо кнопку «Додати», використовуючи компонент Button. Клацаємо двічі по компоненту і у вікні, у процедурі procedure TForm3.Button2Click (Sender: TObject) прописуємо наступний текст:

procedure TForm3.Button2Click (Sender: TObject);

begin / / вставка нової рядки

DataM.Table1.Insert;

DataM.Table1.FieldByName ('FIO'). AsString: = '';

DataM.Table1.FieldByName ('GRUPPA'). AsString: = '';

DataM.Table1.FieldByName ('TOWN'). AsString: = '';

DataM.Table1.Post;

end;

  1. Розміщуємо кнопку «Видалити», використовуючи все той же компонент Button. Клацаємо два рази і пишемо наступний текст:

procedure TForm3.Button3Click (Sender: TObject);

begin

DataM.Table1.Delete; / / видалення запису

end;

  1. Аналогічно розміщуємо кнопку «Закрити» і пишемо наступний текст:

procedure TForm3.Button4Click (Sender: TObject);

begin

Close;

end;

Створюємо ще одну форму (Form 4), розміщуючи на ній наступні компоненти (див. Додаток 7):

  1. Кнопку Button з назвою «Перегляд звіту № 1», клацаємо по ній два рази і пишемо наступне:

procedure TForm4.Button1Click (Sender: TObject);

begin

Form5.QuickRep1.Preview; / / вивід звіту

end;

  1. Кнопку Button з назвою «Перегляд звіту № 2», клацаємо по ній два рази і пишемо наступне:

procedure TForm4.Button3Click (Sender: TObject);

begin

Form6.QuickRep1.Preview;

end;

  1. Кнопку Button з назвою «Закрити», клацаємо по ній два рази і пишемо наступне:

procedure TForm4.Button2Click (Sender: TObject);

begin

Close;

end;

Створюємо нову форму (Form 5), на якій буде відображатися звіт № 1. Розміщуємо на ній наступні компоненти (див. Додаток 7):

  1. Query 1 - у властивості DatabaseName ми прописуємо шлях у нашої БД. І властивості Action встановлюємо значення True.

У властивості SQL пишемо наступний запит:

Select NZ, FIO, Subs, MARK

from Student, Subs, Marks

where Student.NZ = Marks.NZ and Subs.S_ID = Marks.S_ID

ORDER BY FIO

  1. QuckRep 1 - даний компонент служить для відображення потрібного нам звіту. У властивості DataSet вибираємо Query1.

Створюємо нову форму (Form 6), на якій буде відображатися звіт № 2. Розміщуємо на ній наступні компоненти (див. Додаток 8):

  1. Query 1 - У властивості DatabaseName ми прописуємо шлях у нашої БД. І властивості Action встановлюємо значення True.

У властивості SQL пишемо наступний запит:

Select * from Prepodavatel ORDER BY FIO

  1. QuckRep 1 - даний компонент служить для відображення потрібного нам звіту. У властивості DataSet вибираємо Query1.

Створюємо нову форму (Form 7) - це буде наше вікно для редагування. Розміщуємо наступні компоненти (див. Додаток 8):

  1. Label 1, Label 2, Label 3 - у властивості Caption міняємо назву відповідно «ПІБ», «Група», «Місто».

  2. Edit 1, Edit 2, Edit 3 - для введення значень

  3. Кнопка Button «Виконати», клацаємо по ній два рази і пишемо наступний текст:

procedure TForm7.Button1Click (Sender: TObject);

begin

DataM.Table1.Edit;

DataM.Table1.FieldByName ('FIO'). AsString: = Edit1.Text;

DataM.Table1.FieldByName ('GRUPPA'). AsString: = Edit2.Text;

DataM.Table1.FieldByName ('TOWN'). AsString: = Edit3.Text;

DataM.Table1.Post;

end;

  1. Кнопка Button «Закрити», клацаємо по ній два рази і пишемо наступний текст:

procedure TForm7.Button2Click (Sender: TObject);

begin

Close;

end;

Створюємо останню форму для наших довідників (Form 8), на якій розміщуємо наступні компоненти:

  1. DBGrid 1 - даний компонент ми використовуємо для відображення вмісту наших довідників. У властивості DataSource ми прописуємо DataM.DataSource1, тим самим отримуючи доступ до довідника.

  2. Кнопку Button з назвою «Закрити», клацаємо по ній два рази і пишемо наступне:

procedure TForm8.Button1Click (Sender: TObject);

begin

Close; end;

Для того щоб при виборі в меню довідника відображується потрібні дані, ми клацаємо в компоненті MainMenu за довідником «Студенти» і прописуємо наступний текст програми:

procedure TForm1.N2Click (Sender: TObject);

begin

Form3.Show;

end;

Потім клацаємо по довіднику «Предмети» і пишемо:

procedure TForm1.N3Click (Sender: TObject);

begin

Form8.Show;

DataM.Query1.SQL.Clear;

DataM.Query1.SQL.Add ('Select * from Subs');

DataM.Query1.Active: = true;

end;

Далі клацаємо по довіднику «Викладачі» і пишемо:

procedure TForm1.N4Click (Sender: TObject);

begin

Form8.Show;

DataM.Query1.SQL.Clear;

DataM.Query1.SQL.Add ('Select * from Prepodavatel');

DataM.Query1.Active: = true;

end;

І нарешті, клацаємо по довіднику «Кафедри» і пишемо наступне:

procedure TForm1.N5Click (Sender: TObject);

begin

Form8.Show;

DataM.Query1.SQL.Clear;

DataM.Query1.SQL.Add ('Select * from Kafedra');

DataM.Query1.Active: = true;

end;

За допомогою даних компонентів ми розробили зручний інтерфейс для користувача.

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Диплом
86.5кб. | скачати


Схожі роботи:
Автоматизована інформаційна система обліку руху контингенту студентів ВНЗ
Інформаційна модель упровадження системи якості ВНЗ
Сучасний ВНЗ як відкрита освітня система
Сайт як інформаційна система
Інформаційна система організації
Маркетингова інформаційна система
Інформаційна система WinPost
Маркетингова інформаційна система
Бухгалтерський уч т як інформаційна система
© Усі права захищені
написати до нас