Курсовий проект пояснювальна записка система дистанційного навчання програмуванню. Підсистема слухача. Студент гр. Пзас-06 2



Сторінка4/4
Дата конвертації13.03.2016
Розмір0.82 Mb.
1   2   3   4
2.3.9 Клас UserSelectedListItem
Даний клас знаходиться у просторі імен ISL.Models.TaskStatisticsModels. Об’єкти даного класу. Об’єкти даного класу є допоміжними, використовуються для групування інформації про користувача. Клас має властивості:

а) public Guid Id { get; set; } – унікльний ідентифікатор користувача;

б) public string Text { get; set; } – ПІБ користувача.

3 ВИБІР ПРОГРАМНОГО СЕРЕДОВИЩА

3.1 Опис та обґрунтування вибору програмного середовища
Програмний продукт розроблювався за допомогою інтегрованого середовища програмування Microsoft Visual Studio 2010 під платформу .NET Framework 4.0. База даних, що використовувалась у проекті – MS SQL Server 2008. Технологія роботи з базою даних – LINQ to SQL. Візуальний інтерфейс користувача було реалізовано за допомогою технології ASP.NET MVC 2.0.

Платформа, на якій проходила розробка програмного забезпечення, була вибрана враховуючи декілька причин. По-перше, платформа .NET Framework на даний момент є однією з найпоширеніших у світі платформ. Ця платформа встановлена на багатьох комп’ютерах, тому можливість використання розробленого програмного продукту на інших комп’ютерах висока. Крім того, платформа .NET Framework для реалізації функцій даної системи пропонує велику кількість програмних засобів та технологій, що є великою допомогою у роботі. Версія 4.0 потрібна, тому що на даний момент це є достатньо нова версія, і саме у ній є технологія, яка використовувалась у даному проекті – ASP.NET MVC 2.0.

LINQ to SQL є дуже зручною технологію роботи з базою даних. Завдяки ній можна автоматично згенерувати набір класів, функціональність яких дозволяє легко виконувати вибірку даних з конкретної бази (як з однієї, так і з декількох таблиць), легко модифікувати, додавати та видаляти дані. Більш докладно можливості цієї технології розглянуті у [13] та[14]. Зважаючи на те, що велика кількість задач, що мала виконуватись система, були пов’язані з роботою з базою даних, використання цієї технології значно спростило розробку.

ASP.NET MVC є дуже потужною технологією організації бізнес-логіки та візуального інтерфейсу користувача у веб-застосуванні. Можливості, які надає ця технологія (використання aspx- та ascx-файлів, використання master-сторінок, можливості по організації роумінгу, тощо) є дуже високими. Докладніше про цю технологію та її можливості інформацію можна знайти у [15] та [16]. Використання цієї технології також значно спростило розробку.

Середовищем розробки було обрана Microsoft Visual Studio 2010. Саме це надає можливість програмувати на платформі .NET Framework 4.0 та використання технологій, що були перелічені вище.

СУБД MS SQL Server 2008 була використана через те, що ця СУБД надає всі можливості, які були потрібні для використання бази даних у даному проекті. У наступному розділі буде розглянута структура бази даних, що була розроблена для даного програмного продукту.


3.2 База даних
База даних (БД) — впорядкований набір логічно взаємопов'язаних даних, що використовується спільно, та призначений для задоволення інформаційних потреб користувачів. У технічному розумінні включно й система керування БД.

Головним завданням БД є гарантоване збереження значних обсягів інформації (т.зв. записи даних) та надання доступу до неї користувачеві або ж прикланій програмі. Таким чином БД складається з двох частин — збереженої інформації, та системи управління нею. З метою забезпечення ефективності доступу записи даних організовують як множину фактів (елемент даних).

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

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

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

Перша нормальна форма (1НФ, 1NF) утворює ґрунт для структурованої схеми баз даних:

а) кожна таблиця повинна мати основний ключ: мінімальний набір колонок, які ідентифікують запис;

б) уникнення повторень груп (категорії даних, що можуть зустрічатись різну кількість раз в різних записах) правильно визначаючи не-ключові атрибути;

в) атомарність: кожен атрибут повинен мати лише одне значення, а не множину значень.

Друга нормальна форма (2НФ, 2NF) вимагає, аби дані, що зберігаються в таблицях із композитним ключем не залежали лише від частини ключа:

а) схема бази даних повинна відповідати вимогам першої нормальної форми;

б) дані, що повторно з'являються в декількох колонках виносяться в окремі таблиці.

Третя нормальна форма (3НФ, 3NF) вимагає, аби дані в таблиці залежали винятково від основного ключа:

а) схема бази даних повинна відповідати всім вимогам другої нормальної форми;

б) будь-яке поле, що залежить від основного ключа та від будь якого іншого поля, має виноситись в окрему таблицю.
3.3 Структура бази даних
Інформація про користувачів системи зберігається в таблицях aspnet_Users, aspnet_UsersInRoles, aspnet_Roles. Таблиця aspnet_Users (рис. 3.1) зберігає інформацію о користувачах даного програмного забезпечення.

Рисунок 3.1 – Схема таблиць aspnet_Users, aspnet_UsersInRoles, aspnet_Roles, Subscriptions


Поле UserId – індифікатор користувача. Поле UserNamе – ім’я користувача. Поле LoweredUserNamе – ім’я користувача маленькими літерами. Поле ApplicationId – індифікатор ПЗ яке використовує Membership Provider. Поле LastActivityDate – дата останньої аутентифікації в системі.

В таблиці aspnet_Roles зберігаються ролі користувачів у системі (наприклад студент, адміністратор, викладач). Ця таблиця має такі поля: ApplicationId – індифікатор ПЗ, RoleId – індифікатор групи, LoweredRoleNamе – ім’я групи маленькими літерами, Description – додаткова інформація. Для того щоб зв’язати окремих користувачів з їх ролями створена таблиця aspnet_UsersInRoles, яка має всього два поля – UserId, RoleId.

Кожному користувачу надається можливість встановлювати підписки за різними параметрами: Tag – підписка по тегу, AuthorId – підписка на матеріали користувача з вказаним ідентифікатором. Ці параметри можуть бути скомбіновані будь яким чином.

В даному проекті користувачам (викладачам) надається можливість додавати лекції, коментар до лекції, відповіді до коментарів, файли до лекції. Для реалізації цього функціоналу потрібно було створити таблиці Posts, PostAttachments, PostComments, Comments, CommentReplies, схема яких наведена на рисунку 3.2.



Рисунок 3.2 – Таблиці Posts, PostAttachments, PostComments, Comments, CommentReplies

Таблиця Posts містить наступні поля: Id – ідентифікатор посту, PartialId – порядковий номер за автором, OwnerId – ідентифікатор автора лекції, Date – час публікації лекції, Text – текст лекції, Title – назва лекції, Tag – тег лекції. Таблиця PostAttachments зберігає інформацію про файли, які додані до лекції. Таблиця PostComments утримує інформацію про коментарії до лекції. Коментари до лекції зберігаються в таблиці Comments. Вона має наступні поля: Id – ідентифікатор коментару, OwnerId – ідентифікатор автора коментару, Date – час публікації коментару, Text – текст коментару.

До кожної лекції можуть бути додані завдання для розв’язання студентами. Студенти розв’язують їх та додають свої рішення до бази даних. Для збереження даних застосовуються таблиці Tasks, Solutions, SolutionAttachments та Attachments (рис. 3.3).



Рисунок 3.3 – Таблиці Tasks, Solutions, SolutionAttachments, Attachments


Таблиця Tasks має наступні поля: Id – ідентифікатор завдання, StandardSolutionId – ідентифікатор еталонного рішення завдання, Name – назва завдання, Text – текст завдання. Таблиця Solutions має наступні поля: : Id – ідентифікатор рішення, OwnerId – ідентифікатор автора рішення, Mark – оцінка рішення, Date – час відправки рішення, Text – текст рішення, TaskId - ідентифікатор завдання, IsCorrect – правильність рішення. Таблиця SolutionAttachments виконує функцію зв’язування інформації о завантажених файлах з рішеннями. Таблиця Attachments утримую інформацію про завантажений файл(його назву).

Студенти ВНЗ поділени на студентськи групи, а викладачі закріплені за окремими кафедрами. Ця інформація зберігається в таблиці Groups (рис. 3.4). та вона має наступні поля: Id – ідентифікатор групи, Name – назва групи, IsStudent – студентська група, чи ні, IsActive – чи існує група(кафедра).



Рисунок 3.4 – Схема таблиці Groups


До кожної лекції можно додати тест. Тест складається з питань та варіантов відповідей. Для збереження інформації в цьому ПЗ використовуються таблиці Tests, Questions, Answers (рис. 3.5).

Рисунок 3.5 – Таблиці Tests, Questions, Answers


Таблиця Test складається з наступних полей: Id – ідентифікатор тесту, Text – текст тесту, PostId – ідентифікатор лекції. Таблиця Questions має такі поля: TestId – ідентифікатор тесту, Id – ідентифікатор питання, Text – текст питання. Таблиця Answers містить варіанти відповідей на питання. Має наступні поля: Id – ідентифікатор відповіді, Text – текст відповіді, IsCorrect – правильна відповідь чи ні, QuestionId - ідентифікатор питання.

4 АНАЛІЗ МОЖЛИВИХ ВИКОРИСТАНЬ

4.1 Виклик, загрузка, системні вимоги
Для функціонування програми необхідно, що на машині, де запускається програма, були проінстальовані такі програми:

а) .NET Framework 4.0;

б) MS SQL Server 2008;

в) IIS 7.5.

Крім того, на машині повинна бути скопійована база даних цієї програми (ISL.mdf і ISL_log.LDF) та сам виконуваний файл ISL.exe. Також необхідна бібліотека ISLData.dll. Для запуску програми необхідно запустити на виконання файл ISL.exe.

Системні вимоги для роботи даної програми не перевищують вимог для програм, які потрібно встановити для нормального функціонування системи.


4.2 Графічний інтерфейс користувача
Перша сторінка програмного забезпечення – сторінка аутентифікації (рис. 4.1). Для викладачів, студентів, та усіх інших користувачів вона є єдиною незалежно від їх прав чи групи. Вхід до системи призводиться лише при правильному вводі логіна та пароля.

Рисунок 4.1 – Сторінка аутентифікації користувача


Якщо користувач не має аккаунту, він може зареєструватись як студент або викладач на сторінці вибору реєстрації (рис 4.2).

Рисунок 4.2 – Сторінка вибору ролі при реєстрації


Студент та викладач мають різні права. Викладач має можливість створювати лекції, додавати до них завдання, перевіряти їх, створювати тести, відповідати на коментари. Студент має можливість підписуватись на лекції, завантажувати рішення, проходити тести.

Реєстрація студента складається з того що потрібно заповнити усі поля форми на рисунку 4.3. У випадку невірних даних, інформація про помилку буде виведена у верхній частині екрану.


Рисунок 4.3 – Сторінка вибору ролі при реєстрації


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

Рисунок 4.4 – Сторінка вибору ролі при реєстрації


Для того щоб переглянути усіх викладачів зареєстрованих в системі достатньо зайти на відповідну сторінку (рис 4.5).

Рисунок 4.5 – Список викладачів


Лектор має можливість писати лекції за допомогою html або візуального редактора. Форма лекції зображена на рисунку 4.6.

Рисунок 4.6 – Сторінка створення лекції


Форма складається з поля вводу назви. Тут розташован візуальний редактор html, який має режим переходу в ручне редагування html, панель інструментів за допомогою якої можно змінити розмір, стиль, колір шрифту, створити список, встановити тип вирівнення тексту, вставити малюнок, гіперпосилання та додатковий контент.

До лекції існує можливість додати коментарій у спеціальній формі, розташованій нижче тексту лекції. Для того щоб відправити його, користувачу необхідно натиснути кнопку «Добавить» (рис. 4.7).



Рисунок 4.7 – Сторінка додавання коментару

Лектор має можливість додати до лекції тест. Тест складається з питань та варіантів відповідей до них. Створити та зберегти на сервері тест за допомогою форми наведеної на рисунку 4.8.

Рисунок 4.8 – Сторінка створення тесту.

ВИСНОВОК

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

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

Окрім підсистеми слухача, іншими учасниками проекту були розроблені і інші частини загального веб-застосування. Таким чином, загальним результатом комплексного курсового проекту стала система дистанційної освіти, яку можна використовувати на практиці.

При виконанні курсового проекту були отримані навички роботи з інтегрованим середовищем програмування Microsoft Visual Studio 2010, знання з розробки об’єктно-орієнтованих програм та програмування на платформі .NET Framework 4.0, знання з використання технологій LINQ to SQL та ASP.NET MVC 2.0.

ПЕРЕЛІК ПОСИЛАНЬ





  1. Кульша М. Б. Основи організації дистанційної освіти. [Текст] / М. Б. Кульша. – М. : ИНФРА-М, 2007. – 208 с.

  2. Пересада М. І. Ефективна організація навчального процесу. [Текст] / М. І. Пересада. – М. : ИНФРА-М, 2003. – 175 с.

  3. Порівняльний аналіз ефективності форм навчання. [Електронний ресурс] – Режим доступу: www.news.in.ua/post/56342845 – 15.03.2003 р. – Загол. з екрану.

  4. Коптілов Д. В. Структура дидактичних матеріалів. . [Текст] / Д. В. Коптілов. – М. : Вільямс, 2008. – 390 с.

  5. Наочне представлення освітньої інформації. Правильна підготовка презентацій [Електронний ресурс] – Режим доступу: http://www.gorg.ucoz.com/education/rus – 24.09.2008 р. – Загол. з екрану.

  6. Кокін Ю. В. Принципи дистанційної освіти. [Текст] /Ю. В. Кокін. – Спб. : Арго, 2005. – 356 с.

  7. Самоперевірка знань. [Електронний ресурс] – Режим доступу: www.sxarcer.com/answers/ 98759 – 12.01.2007 р. – Загол. з екрану.

  8. Кокін Ю. В. Організація самостійної роботи студента. [Текст] /Ю. В. Кокін. – Спб. : Арго, 2006. – 290 с

  9. History of the RSS fork (dive into mark). [Електронний ресурс] – Режим доступу: http://diveintomark.org/archives/2002/09/06/history_of_the_rss_fork – 06.09.2002 р. – Загол. з екрану.

  10. Засоби Google Charts [Електронний ресурс] – Режим доступу: http://code.google.com/intl/ru-RU/apis/charttools/ - 10.06.2005 р. – Загол. з екрану.

  11. Сандерсон С. Pro ASP.NET MVC Framework. [Текст] /С. Сандерсон. – М. : АПресс, 2009. – 618 с.

  12. Розробка через тестування – Википедия. [Електронний ресурс] – Режим доступу: http://ru.wikipedia.org/wiki/Разработка_через_тестирование – 16.05.2008 р. – Загол. з екрану.

  13. Канджиал. Дж. Entity Framework Tutorial. [Текст] / Дж. Канджилал. – М. : Packt publishing, 2008. – 228 с.

  14. Хірані З. Entity Framework learning guide. [Текст] / З. Хірані. – М. : Packt publishing, 2008. – 520 с.

  15. Троелсен Е. Мова програмування C# 2008 та платформа .NET 3.5 Framework. [Текст] / Е. Троелсен. – М. : Вільямс, 2009. – 1344с.

  16. Мак-Дональд М. MVC: Model View Controller в .NET 3.0 для профессионалов. [Текст] / М. Макдональд. – М. : Вільямс, 2008. – 992 с
1   2   3   4


База даних захищена авторським правом ©refs.in.ua 2016
звернутися до адміністрації

    Головна сторінка