Курсовий проект пояснювальна записка система дистанційного навчання програмуванню. Студент гр. Пзас-06 2 Глазунов В. В - nadoest.com ))
Головна
Пошук за ключовими словами:
Схожі роботи
Назва роботи кіл. стор. розмір
Курсовий проект пояснювальна записка система дистанційного навчання... 5 768.66kb.
Курсовий проект пояснювальна записка система дистанційного навчання... 3 632.3kb.
Пояснювальна записка до дипломного проекту бакалавра на тему мікропроцесорна... 2 508.24kb.
Розробка модуля студента для інтерактивної системи дистанційного... 2 440.78kb.
Конкурс на кращий учбовий курс 1 25.7kb.
Проект базової навчальної програми основи здоров'Я 1-4 класи загальноосвітніх... 1 280.08kb.
Розвиток дистанційного навчання в Україні як склодової Інформатизації... 1 67.23kb.
Пояснювальна записка Модуль 1 складається з 2-х розділів які містять... 4 1345.19kb.
«цифрова багатоканальна система передавання з ікм по металевому кабелю» 1 278.42kb.
Інститут вищої освіти кнеу імені Вадима Гетьмана Світовий досвід... 3 546.22kb.
Пояснювальна записка Творчий проект «Виготовлення настінного календаря» 1 176.17kb.
Чи зможе Інтернет замінити телебачення, книги або театр? 1 10.21kb.
Таращанський 1 219.63kb.

Курсовий проект пояснювальна записка система дистанційного навчання програмуванню. - сторінка №1/3
Міністерство освіти і науки України

Харківський національний університет радіоелектроніки

Факультет комп’ютерних наук

Кафедра програмного забезпечення ЕОМ



КОМПЛЕКСНИЙ КУРСОВИЙ ПРОЕКТ

ПОЯСНЮВАЛЬНА ЗАПИСКА



Система дистанційного навчання програмуванню .

Студент гр. ПЗАС-06-2 Глазунов В. В. .

(позначка групи) (прізвище, ініціали )

Дата захисту ________


Робота захищена з оцінкою ______________

Керівник проекту проф. Бондарєв В.М.

( посада, звання ) (прізвище, ініціали)

Комісія


____________
_______________
________________

Харків, 2010р.

ФОРМА № У 6.01


Харківський національний університет радіоелектроніки

(назва вищого навчального закладу)

Кафедра Програмного забезпечення ЕОМ

Дисципліна     ????????????????????????????????????????????

Спеціальність   Програмне забезпечення автоматизованих систем

Курс 4 Група ПЗАС-06-2 Семестр 8

З А В Д А Н Н Я

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



Глазунов Володимир Вікторович

(прізвище, ім’я, по-батькові)

1.Тема роботи  Система дистанційного навчання програмуванню

2. Строк здачі студентом закінченої роботи    1.06.2010

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

4. Зміст розрахунково-пояснювальної записки (перелік питань, які підлягають розробці)   файли RSS

5. Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень)



заполнить

6. Дата видачі завдання    02.02.2010


КАЛЕНДАРНИЙ ПЛАН


Номер

Назва етапів курсової роботи

Строк виконання етапів роботи

Примітки

1

Обрання теми

02.02.2010

Виконано

2

Аналіз предметної галузі

20.03.2010

Виконано

3

Розробка постановки задачі

25.03.2010

Виконано

4

Обрання та розробка алгоритму

10.04.2010

Виконано

5

Розробка прикладної програми

07.05.2010

Виконано

6

Тестування программи

19.05.2010

Виконано

7

Оформлення пояснювальної записки

29.05.2010

Виконано

8

Захист курсової роботи

01.06.2010

Виконано

Студент ___________________

(підпис)

Керівник Бондарєв В. М. _

(підпис) (прізвище, ім’я, по-батькові)
2 лютого 2010

РЕФЕРАТ


Обсяг пояснювальної записки стр., кількість іллюстрацій – 5 , таблиць – 1 , додатків – 2 , джерел та посилань – 15.
Мета курсового проектування – розробити веб-застосування, що дозволяє публікувати та переглядати лекції, публікувати та виконувати тести для перевірки знань, публікувати завдання з програмування, виконує автоматичну перевірку правильності виконання завдання.

Методи дослідження – знання з стандартів RSS-файлів, знання з використання Google Charts API, знання з організації дистанційного навчання студентів

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

Даний проект реалізовано за допомогою інтегрованого середовища Microsoft Visual Studio 2010 та бази даних MS SQL Server 2008.

ЗМІСТ

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



Безперечними перевагами дистанційного навчання є:

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

б) скорочення термінів навчання;

в) зменшення витрат на освіту студента (за рахунок непотрібності використання приміщень для проведення лекцій);

г) незалежність студента від географічного розташування вузу.

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

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

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

Метою розроблюваного курсового проекту було створення програмного продукту, що надавав би можливість організації всіх задач, що пов’язані з дистанційною освітою: доступ до навчальних матеріалів, діалог між студентами та викладачами, перевірка знань студентів.
1. АНАЛІЗ ПРЕДМЕТНОЇ ГАЛУЗІ

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

а) хто приймає участь у організації і проведенні занять;

б) які задачі перед ними стоять;

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

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

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

У подальших розділах аналізу предметної галузі всі ці етапи будуть розглянуті більш детально.

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

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

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

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

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

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

1.2 Задачі, що існують у предметній галузі

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

1.2.1 Учбові матеріали

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

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

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

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

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

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

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

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

1.2.2 Діалог між студентом та викладачем

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

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

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

1.2.3 Самоперевірка знань

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

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

1.2.4 Практична робота

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

1.2.5 Статистика результатів

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

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

Тепер розберемо, яка саме інформація необхідна студентам, а яка – викладачам.

Для студента є важливим така інформація:

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

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

Для викладача є важливим така інформація:

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

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

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

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

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

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

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

Для побудови діаграм та графіків можна використовувати спеціальні засоби, що полегшують цей процес. Одним з таких засобів є сервіс від компанії Google – Google Charts.

1.2.7 Повідомлення про події (новини)

Як було визначено у попередніх розділах, одна з особливостей дистанційної освіти полягає у тому, що дійові особи (студенти та викладачі) можуть виконувати свої задачі у час, який є зручним для кожного з них. Для задач, які не містять у собі взаємодію між дійовими особами (наприклад, перегляд учбового матеріалу), така особливість ніяк не позначається на процесі. Проте для задач, які вимагають взаємодію з іншими дійовими особами (наприклад, коли студент задає питання викладачу, він повинен очікувати відповідь на нього), виникають додаткові складнощі. Розглянемо наведений приклад такої дії. Студент може задати питання викладачу у зручний для нього час. Проте не факт, що у цей час викладач очікує питань і тому одразу на нього відповість. Тому студенту необхідно очікувати, коли на його питання буде надіслана відповідь. У найпростішому випадку зробити це можна за допомогою серії перевірок, чи не надійшла відповідь. Якщо студент працює лише по одному курсу, і виконує небагато дій, що вимагають взаємодію з іншими дійовими особами, то він може запам’ятати, які відповіді він чекає. У цьому разі він може виконувати перевірку отримання кожного відгуку самостійно. Проте це є незручним. Для ситуації, коли студент активно працює над багатьма курсами, запам’ятати усі такі свої дії йому буде важко. Існує ризик, що про деякі він взагалі забуде. Щоб вирішити цю проблему, студенти та викладачі мають мати ще одну задачу – перегляд новин.

Новина – це повідомлення, яке сповіщає про відгук іншої дійової особи на дії користувача. Якщо студент з минулого прикладу може виконувати функцію перегляду новин , то процес стеження за відгуками стає набагато простішим. Йому вже не потрібно переглядати усі свої задані питання в очікуванні відповідей, йому достатньо переглянути список своїх новин, у якому будуть відображена інформація про всі відповіді, що надіслані йому на даний момент. Звичайно, це не вирішує проблеми очікування повністю. Студенту все одно доведеться виконувати серію перевірок своїх новин, щоб швидше узнати, про отримані відповіді. Проте за допомогою використання цієї функції зникає необхідність пам’ятати всі свої дії, за якими може бути отримано відгук. Це значно спрощує роботу у системі дистанційної освіти.

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

Для студента це:

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

б) інформація про появу відповіді на його запитання викладачу чи на його репліку. Така подія є також важливою – викладач може побачити його питання і дати свою відповідь у будь-який час, тому студент має стежити за своїми запитаннями;

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

Для викладача це:

а) інформація про появу запитання викладачу. Така подія є важливою –у студентів можуть виникнути запитання у будь-який час, тому викладач має стежити за усіма своїми лекціями. Окрім цього може розгорнутися дискусія, тому викладачу потрібно також стежити за всіма своїми відповідями;%

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

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

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

1.3 Огляд стандартів RSS

RSS – це технологія, що дозволяє швидко дізнаватися нову інформацію, що публікується на сайтах, що цікавлять користувача. Ця технологія дуже сильно економить час, (наприклад, у випадку, коли користувач регулярно відвідує сайт, щоб подивитися, не з’явилось там щось нове). Якщо сайт підтримує RSS технологію, то він пропонує посилання на файл XML (цей файл також можна назвати RSS-файл, тому що фактично RSS – це один з підвидів XML). В цьому файлі записані останні обновлення сайту. Сайти публікують у таких файлах заголовки та дати появи статей, їх короткий зміст, та інше. Деякі публікують у RSS повні тексти новин і навіть коментарі до них. У цьому випадку користувач зовсім може не заходити на сайт, щоб узнати, що там з’явилось. RSS-стрічка сайту, як правило, не містить графічних елементів його оформлення та реклами, а тому дуже швидко завантажується. Це дозволяє збирати колекцію RSS-стрічок тематики, яка цікавить користувача, і легко стежити за обновленнями декількох сотень сайті, не заходячи на них.

RSS-формат вперше був розроблений у 1997 році. Це була версія 0.90, яку розробили у компанії Netscape для потреб власних веб-проектів. Через те, що ця версія виявилася занадто складною, команія Netscape розробила більш просту версію – 0.91. В подальшому розвитку версія 0.91 була передана компанії UserLand Software, яка збиралася використовувати цей формат як основу для своїх weblog-продуктів та інших веб-застосувань. Паралельно, некомерційною організацією ((RSS-DEV Working Group) створювалася третя версія – новий формат, який, як полагалося, відповідає вихідному формату RSS 0.90. Цей формат, оснований на мові RDF, назвали RSS 1.0. Компанія UserLand не приймала участі у розробці цього нового формату і замість прийняття цього формату вона вирішила розвинути гілку 0.9х і створила версії 0.92, потім 0.93, 0.94 і нарешті 2.0. Зараз актуальними версіями є RSS 0.91, 1.0 2.0. Крім цього існують і інші рішення, які не є видами RSS, проте вирішують схожі задачі. Це, наприклад, протокол публікації Atom. Він оснований на HTTP та дозволяє створювати, змінювати та видаляти ресурси, зібрані у колекції на веб-сайті. Вміст колекцій описується у форматі Atom, а для управління ним використовуються стандартні методи HTTP. Слід відрізняти цей формат від RSS.

Таким чином, існують такі версії RSS:

а) 0.90 – найперший стандарт, який розробила компанія Netscape для свого порталу Netcenter.com. Після відмови компанії від «портального» напрямку стандарт було передано компанії UserLand Software;

б) 0.91 – незначно спрощена версія стандарту 0.90 Як бело згадано вище, розвитком гілки 0.9х займається UserLand. Найпростіший та найдоступніший стандарт, повинен використовуватися, коли потребується елементарний експорт заголовків;

в) 0.92-0.94 – декілька ускладнені та покращені версії 0.91. Дозволяють передавати у каналі мете данні;

г) 1.0 – гілка, що продовжує 0.90. Її підтримкою займається група незалежних розробників RSS – DEV. Стандарт засновано на мові RDF, і він є більш складним, ніж усі попередні, але надає і більше можливостей, наприклад розширення за допомогою модулів;

ґ) 2.0 – це не є нова версія RSS 1.0, як може здаватися, а логічне продовження гілки 0.9х. У ній також додана підтримка модулів;

д) Dublin Core (url) – розширення, створене спеціалістами по зберіганню та каталогізації систематичної інформації. Цей модуль описує, наприклад дату (dc: date), тему (dc: subject), авторські права (dc: rights) кожного елементу каналу.

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

1.4 Аналіз стандарту RSS 2.0

На рис. 1.1 представлений приклад файлу RSS 2.0.

Рисунок 1.1 – Приклад файлу RSS 2.0
Аналіз формату RSS проведений по специфікації RSS 2.0 [0]. Як було зазначено у під час огляду стандартів RSS, файл цього формату являє собою XML-файл. Цей файл має один тег - з обов’язковим атрибутом version. Цей атрибут вказує версію RSS. Якщо документ відповідає специфікації 2.0, то значення цього атрибуту має бути «2.0». Дочірній елемент - один елемент , що включає у себе інформацію о каналі (метадані) та його вміст.

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

1.4.1 Елементи, що характеризують канал

До обов’язкових елементів каналу відносяться елементи , <link>, та <description>. Розглянемо ролі кожного з цих елементів:</p> <p>а) елемент <title> – містить у собі назву каналу, по якому люди будуть посилатися на сервіс. Якщо існує веб-сайт, який містить ту ж інформацію, що і RSS-файл, елемент <title> повинен співпадати з заголовком головної веб-сторінки. Наприклад: <title>Liftoff News;

б) елемент – містить у собі URL веб-сайту, пов’язаного з каналом. Наприклад: http://liftoff.msfc.nasa.gov



наступна сторінка >>