Иванов Константин Евгеньевич

Розробка програмних та апаратних засобів системи управління контентов факультетського рівня

Автореферат


Автор: Іванов Костянтин Євгенійович
Науковий керівник: Анопрієнко Олександр Якович

Вступ

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

Web 2.0 надає колосальні можливості в створенні єдиної колективної бази знань. У даній роботі розглядається розробка аналогічної бази знань студентами і викладачами. Основною метою є надання можливості пошуку вирішень тих або інших завдань зосереджених в одному місці. Кожен студент в процесі вчення стикається з деякими проблемами, які були вже успішно вирішені до нього. Питання чи «винаходити велосипед знову?» є одним з найпопулярніших в освітньому процесі. Відповідь на дане питання кожен повинен приймати особисто для себе, що буде основоположним критерієм при розробці факультетського порталу з базою знань і елементами соціальної мережі.

Мета і завдання

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

Актуальність роботи

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

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

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

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

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

Основний вміст роботи

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

У даний список залучили різні CMS і CMF системи. Далі приведемо пояснення даних абревіатур. CMS – каркасна система для управління вмістом. CMF — це інструментарій для створення систем управління вмістом, а також веб-сервера-додатків взагалі. Ряд CMS, надаючих API для розширення своєї функціональності, претендують на звання CMF, хоча провести чіткий кордон між CMS і CMF деколи складно. До прикладів CMF, що також є готовими CMS, можна віднести такі системи, як Cairo CMS, Plone, MODx, Drupal, TYPO3.[1].

Framework — термін, що має розмите значення. Зазвичай використовується в програмуванні, позначаючи «просту концептуальну структуру, використовувану для вирішення складного, проблемного завдання». Значення цього терміну істотно залежить від контексту його використання.

Вибір кращих CMS і їх аналіз. За результатами порівняльної характеристики тих, що лідирують 50 CMS(CMF) до детального аналізу були представлені наступні: Drupal, Joomla, Wordpress, TYPO3, MediaWiki.

Отже, проаналізувавши вищезгадані системи, можна зробити висновок, що можливими для використання в даному проекті залишаються лише дві схожі системи: Drupal і Joomla. Щорічна премія "Краща Open Source Content Management System написана на платформі Php/mysql", за версією видавництва Packt Publishing, присуджена системі Drupal. Це гідне звання система займає вже не перший рік підряд. Треба відзначити, що Drupal фінішував із значним і таким, що з року в рік збільшується розривом, залишивши далеко позаду Joomla. Детальніше вивчивши систему Drupal визначено, що дана система повністю задовольняє поставленим вимогам і надає можливість створення не лише соціального співтовариства і єдиної бази знань, але також і реалізації безлічі додаткових функцій.

Структура системи. Структура системи змальована далі:
Рисунок 1 – Структура системи (анімоване зображення, 7 кадрів, цикличне повторення, розмір 24 КБ)

Внаслідок того, що дана система є орієнтованою для веб-сервера, вона повинна знаходитися на видаленому комп'ютері-сервері, що має постійне підключення до Інтернет. На даному комп'ютері-сервері буде встановлено спеціалізоване програмне забезпечення – http-сервер Apache, який є найпопулярнішим в світі серед безкоштовних аналогічних серверів.

У зв'язку з тим, що ми вирішили використовувати систему Drupal, яка написана на мові PHP (PHP: препроцесор гіпертексту, інструменти для створення персональних веб-сторінок – мова програмування, створена для генерування html-сторінок на веб-сервері-сервері і роботи з базами даних. В даний час підтримується переважною більшістю хостингу-провайдерів, входить в LAMP — «стандартний» набір для створення веб-сайтів), нам необхідний даний модуль для нашого веб-сервера-сервера.

У якості систему управління базою даних використовуватимемо найгнучкішу з доступних на даний момент – СУБД MYSQL. MYSQL (сленг. «мускул») – вільна система управління базами даних (СУБД). MYSQL є власністю компанії Sun Microsystems, що здійснює розробку і підтримку додатка. Поширюється під GNU General Public License і під власною комерційною ліцензією, на вибір.Окрім цього компанія MYSQL AB розробляє функціональність за замовленням ліцензійних користувачів, саме завдяки такому замовленню майже в найраніших версіях з'явився механізм реплікації. MYSQL є рішенням для малих і середніх застосувань. Входить в LAMP. Зазвичай MYSQL використовується як сервер, до якого звертаються локальні або видалені клієнти, проте в дистрибутив входить бібліотека внутрішнього сервера, що дозволяє включати MYSQL в автономні програми. Гнучкість СУБД MYSQL забезпечується підтримкою великої кількості типів таблиць: користувачі можуть вибрати як таблиці типа MYISAM, що підтримують повнотекстовий пошук, так і таблиці INNODB, що підтримують транзакції на рівні окремих записів. Більш того, СУБД MYSQL поставляється із спеціальним типом таблиць EXAMPLE, що демонструє принципи створення нових типів таблиць. Завдяки відкритій архітектурі і gpl-ліцензуванню, в СУБД MYSQL постійно з'являються нові типи таблиць.

Етапи роботи системи:

  1. користувач здійснює яку-небудь дію на порталі через веб-броузер, який посилає деякий запит веб-серверу;
  2. веб-сервер визначає кому призначений запит і передає його ядру нашої системи;
  3. ядро системи перевіряє запит, що поступив, на коректність і виконання вимог безпеки;
  4. якщо вищезгадані вимоги дотримані, починається збір запитаної інформації ядром системи, в ролі якої можуть бути:
    • деякі поля з бази даних;
    • графічні і мультимедіа файли;
    • виконання зовнішніх функцій (програм, модулів).
  5. ядро створює кінцеву html-сторінку і відправляє її до веб-браузеру користувача.

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

На основі аналізу визначено, що портал повинен надавати наступні можливості:

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

Апробація роботи

Дана робота була представлена на четвертій міжнародній науково-технічній конференції студентів, аспірантів і молодих учених в секції «web-технології і електронна комерція»[2].

Висновки

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

На завершальному етапі роботи планується максимально зменшити навантаження на сервер шляхом кешування більшості контента і потім спрогнозувати можливу кількість зареєстрованих користувачів і відвідувачів з метою визначення оптимальних технічних характеристик і параметрів web-сервера для даного порталу.

Перелік літератури

  1. Википедия. CMS (http://ru.wikipedia.org/wiki/CMS).
  2. Википедия. CMF (http://ru.wikipedia.org/wiki/CMF).
  3. Википедия. Apache HTTP-сервер (http://ru.wikipedia.org/wiki/Apache).
  4. «Информатика и компьютерные технологии». Сборник материалов четвертой международной научно-технической конференции студентов, аспирантов и молодых ученых. – Донецк, ДонНТУ, 2008, 510 стр.
  5. Merser D. Building powerful and robust websites with Drupal6. – Birmingham-Mumbai: PACKT Publishing, 2008, 400 p.
  6. Котеров Д., Костарев А. PHP 5. Наиболее полное руководство – Санкт-Петербург: БХВ-Петербург, 2005, 1121 стр.
  7. Справочник для WEB-программиста, 2007 (http://spravkaweb.ru).
  8. Вандюк Д., Вестгейт М. CMS Drupal: руководство по разработке системы управления сайтом –Киев:Вильямс, 2008, 390 стр.
  9. Официальный сайт русского сообщества Drupal (http://drupal.ru).
  10. Архаров Р. Строим сайты на Drupal. – электронный журнал «PC Magazine», 2008 (http://pcmag.ru/solutions/sub_detail.php?ID=32535).
  11. Drupal Revealed as 2008 Open Source CMS Award Winner – PACKT Publishing (http://www.packtpub.com/article/2008-open-source-cms-award-winner-announced).