Книга знаний

Инф. технологии

Mista Engine 2. Документация движка

Документация по новому движку для замечательного форумаАвтор статьи: kot_bcc | Редакторы: Asmody, Волшебник,
Последняя редакция №10 от 28.02.10 | История
URL: http://kb.mista.ru/article.php?id=781

Ключевые слова: mista engine


Требования к движку


Версия 1.0

      Внешние интерфейсы


      Движок форума должен поддерживать следующие внешние интерфейсы:
      • HTML/AJAX
        Данный интерфейс является основным для входа на форум и общения, а также для администрирования форума.

        Интерфейс является надстройкой над интерфейсом XML/RSS/SOAP с использованием AJAX.

        Интерфейс построен на идеологии визуальных форм (страниц) с отделённым от содержания дизайном. Все формы и варианты оформления описываются декларативно, хранятся в каталоге форм в БД либо на компьютере пользователя и создаются по мере необходимости в браузере пользователя специальным скриптом - активатором форм. Механизм управления формами предусматривает управление версиями. Формы (страницы) состоят из набора контейнеров-панелей, содержащих примитивы. Панель и примитив - основные элементы интерфейса. Примитивы создаются разработчиками движка. Пользователь (и разработчик) может, с помощью дизайнера форм создать форму, разместить на ней одну или несколько панелей. На панелях можно размещать любые примитивы из набора предопределенных.
        Основными примитивами являются:
        • Список (таблица)

        • Ссылка
        • Кнопка

        • Редактор
        • Объект



        Интерфейс включает следующий набор предопределённых форм:
        • Список тем
        • Список сообщений
        • Список пользователей
        • Личная карточка пользователя

        • Персональные настройки

        • Расширенный редактор сообщения

        • Журнал действий

        • Панель управления правами

        • Пульт разработчика

        • Дизайнер пользовательских форм
        • Дизайнер оформления


        Неотсортированные требования (должно отсюда исчезнуть):
        • Максимальный переход на AJAX и технологии Web 2.0

        • Форма ввода сообщения по аналогии с формой ввода темы
        • Дата рождения в личную карточку

        • Более гибкая персональная настройка внешнего вида и поведения форума (личные настройки)
        • Возможность форматирования сообщений с защитой от злоупотреблений

        • Возможность прицепления файлов / картинок к сообщениям (частично реализовано)
        • Оценка полезности сообщений участниками

        • Аватары участников по личной настройке (частично реализовано)
        • Панель администрирования форума

        • Возможность посетителям обратить внимание модераторов на конкретный пост/ветку (кнопка "Пожаловаться")
        • Запрос причины на удаление / закрытие / утопление ветки

        • Возможность посетителям создать личную ветку со страницы правил
        • Файлы в Книге знаний, их модерирование

        • Редизайн главной страницы Книги знаний
        • Новые теги для оформления статей в Книге знаний

        • Якоря в статьях для гиперссылок
        • Фильтрация статей по автору / редактору.

        • Теги для именованных гиперссылок
        • Редизайн статической версии Базы знаний

        • Раскраска фрагментов программ на разных языках

      • XML/RSS/SOAP
        Данный интерфейс является единственным для доступа к слою внутренней логики форума. Остальные интерфейсы используют этот интерфейс для получения/модификации информации. Интерфейс построен на идеологии асинхронных/синхронных веб-сервисов как для внешних, так и для внутренних клиентов.
        Неотсортированные требования (должно отсюда исчезнуть):
        • Поддержка RSS 2.0


      • WAP/КПК
        Данный интерфейс оптимизирован для использования на медленных устройствах с бедными визуальными возможностями. Большая часть возможностей интерфейса предопределена и реализована на стороне сервера, как надстройка над интерфейсом XML/RSS/SOAP. Интерфейс построен на идеологии "бедных" веб-страниц (форм). Динамическое отображение данных обеспечивается обработкой серверных php-скриптов.
        Интерфейс состоит из набора следующих статических (преднастроенных в html) форм:
        • Простой список тем
        • Простой список сообщений
        • Простой список пользователей
        • Простая личная карточка пользователя

        • Простые персональные настройки

        • Простой журнал действий

        Неотсортированные требования (должно отсюда исчезнуть):
        • Модерирование в версии для КПК

        • Сохранение сессии в версии для КПК
        • Распознавание ссылок



      Архитектура


      Движок написан на PHP 5 (предположительно. ЯП и инструменты реализации обсуждаются) с использованием классов и возможностью использования различных СУБД в качестве хранилища данных и метаданных.

      Архитектура движка поделена  на следующие слои:
      • Слой хранения данных (СХД)
        Этот слой обеспечивает хранение, архивацию, изменение и различные операции над данными и метаданными, необходимые для работы слоя внутренней логики. Встроенные механизмы безопасности этого слоя обеспечивают целостность и аутентичность используемых данных. СХД экспортирует определения следующих классов:
        • Класс Поле

        • Класс Запись
        • Класс Таблица

        • Класс Запрос
        • Класс Представление

        • Класс Индекс
        • Класс Ссылка

        • Класс БД
        • Класс Каталог


      • Слой внутренней логики (СВЛ)
        СВЛ обеспечивает выполнение высокоуровненвых операций над данными и метаданными форума, используя возможность обращения к методам классов СХД. Встроенные мехнизмы безопасности этого слоя обеспечивают разделение доступа к данным в зависимости от ролей. В СВЛ определены служебные механизмы для управления пользователями, темами, сообщениями и статьями, а также автоматизированные элементы поддержки (боты). СВЛ экспортирует определения следующих классов:
        • Класс Ветка

        • Класс Фильтр
        • Класс Пользователь

        • Класс Роль
        • Класс Действие

        • Класс Форма
        • Класс Сценарий

        • Класс Сервис
        • Класс Список

        • Класс Хранилище
        • Класс Контроль


      • Интерфейсный слой (ИС)
        ИС обеспечивает взаимодействие органических и неорганических участников форума с СВЛ. Встроенные механизмы безопасности этого слоя обеспечивают идентификацию и аутентификацию пользователей. В СВЛ определены механизмы для управления сессиями, способами предоставления и модификации информации(внешние интерфейсы) и оптимизации нагрузки на СВЛ. ИС содержит определения следующих сервисов:
        • Класс XML




      Неотсортированные требования (должно отсюда исчезнуть):
      • Отделение содержания от оформления

      • Оптимизация структуры базы, многоуровневое кеширование, сокращение трафика, перенос нагрузки на клиента (JavaScript)
      • Переход на собственный поисковый движок

      • Настройка прав (ролей) пользователей (хард-модеры, лайт-модеры, ведущие секций, инженеры знаний)
      • Автоматическое формирование статической базы знаний с ветками форума и статьями КЗ

      • Полуавтоматическое формирование выпусков рассылки на основе статей КЗ
      • Рубрикатор Книги знаний

      • Улучшение работы ТелепатБота
      • Новые боты

      • Механизм управления баннерами
      • Фонд для поощрений разработчиков движка, авторов

      • Таргетинг рекламы
      • Установка часового пояса в личных настройках

      • Личные сообщения между участниками


      Инфраструктура разработки


      Инфраструктура позволяет разработчикам эффективно и комфортно поддерживать жизненный цикл форума, как продукта. Инфраструктура включает в себя:
    • Файловое хранилище с поддержкой версионности
    • Форумы для общения и координации

    • Хранилище документов и регламентов с возможностью мультидоступа и обеспечением версионности
    • Инструменты управления требованиями и ошибками

    • Инструменты тестирования


    • Неотсортированные требования (должно отсюда исчезнуть):
      • Организация механизма коллективной разработки



    Архитектура движка


      Ещё не сделано - Здесь будет документация



    Руководство пользователя


      Ещё не сделано - Здесь будет документация

Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2025 | Mista.ru

Яндекс.Метрика