Специальность «Программное обеспечение вычислительной техники и автоматизированных систем» Ижевск 2009 Мамаев Михаил Владимирович Платформа для портала кафедры «Программное обеспечение» Дипломная работа © Мамаев М.В., 2009 © ИжГТУ, Научный руководитель: к.т.н., профессорТарасов В. Г.
2 Целью работы является создание платформы для портала, обеспе- чивающей организацию хранилища учебно методических материалов и предоста-влеющей интерфейс взаимо- действия для интеграции со стороних сервисов.
Создание механизма организации базы знаний Создание механизма хранилища медиа - данных Создание механизмов расширения функциональности Разработка единой системы авторизации Интеграция со сторонними сервисами 3
4
5 БД портала.... БД проектов
6 Представление Управление Модель
7 Все в портале представлено в виде связанных страниц. Отсутствие административного интерфейса. Контроль версий для страниц. Каждый пользователь может править страницы. Добавлена новая функциональность : тематические разделы – проекты ; права назначаются на страницы ; взаимные блокировки ; функциональные страницы ; поддерживается HTML- разметка ; типы страницы и шаблоны ; использование расширений синтаксиса – « декораторы ».
8 text/html – страницы в разметке HTML; text/wiki – страницы в Вики - разметке ; text/php – функциональные страницы ; text/news – новостные страницы ;...
9
10 Изображения сгруппированы по категориям. При отправке изображения на сервер автоматически формируются заготовки размером 640x480, 320x240 и 160x120. Описание хранится в БД, сами изображения в файловой системе (структура каталогов воспроизводит дерево категорий). Использовать изображения может любой пользователь, но удалить - только владелец. Изображение, которое используется на страницах, удалить нельзя.
11
12 Декоратор – это логически независимый элемент страницы. Web-part (MS share point), Гаджет
13 Декоратор – это класс на PHP. class CSample { /// Инициализация public function Init() { } /// Установка параметров public function SetParam ($name, $value) { } /// Выполнение. public function Run() { echo "Класс - пример декоратора(текст выведен из него)"; } // [decorator name="CSample" id="test" ]
14 Студенты Администраторы Пользователи Группы Системные группы: Администраторы Пользователи Модераторы Системные пользователи: Admin Гость
15 Администратор Владелец Пользователь Группа Права для группы Персональные права Владелец Права: -Запрет -Просмотр -Редактирование -Владелец
16 BACS - программный комплекс, предназначенный для проведения соревнований по спортивному программированию. Также может использоваться в учебном процессе для проверки лабораторных работ, связанных с программированием. phpBB (PHP Bulleting Board) популярный бесплатный веб-форум с открытым исходным кодом, разработанный на скриптовом языке PHP, поддерживающий различные СУБД. Moodle (модульная объектно-ориентированная динамическая учебная среда) свободная система управления обучением (LMS).
17 Организация базы знаний ; Возможность написания расширений синтаксиса ; Предоставление API и библиотек для расширения и интеграции сторонних сервисов ; Гибкая система прав ; Легкая смена оформления ; Вмешательство в код системы.
18 + Механизмы расширения + Функциональные страницы + Система прав доступа к страницам + Организация базы знаний + Простота системы + Простота написания расширений + Гибкость + не требует использования коммерческого ПО + организация базы знаний + отделение медиа-данных от страниц + простота системы
Разработан удобный механизм организации базы знаний ; Разработано хранилище медиа - данных – галерея ; Создан универсальный механизм рас - ширения – « декоратор », и API; Разработан гибкий механизм авторизации и прав доступа ; Получена возможность интеграции с другими сервисами. 19
Цель работы Задачи Схема подсистем и их взаимодействия Схема базы данных MVC Механизмы создания базы знаний Типы страниц Взаимные блокировки и версионность Хранилище медиа - данных Хранилище медиа - данных : формы галереи Расширения синтаксиса - декораторы Устройство декораторов Единая система авторизации : Пользователи и группы Единая система авторизации : Права доступа к странице Интеграция со сторонними сервисами Функциональные возможности Аналоги Заключение 21