Разработка алгоритмов и программных средств подсистемы документооборота системы управления содержанием информационного сервера
Рефераты >> Программирование и компьютеры >> Разработка алгоритмов и программных средств подсистемы документооборота системы управления содержанием информационного сервера

MySQL может использоваться в среде многих UNIX-подобных систем, а также в среде Microsoft Windows.

Как и в случае РНР, исходный код MySQL можно свободно выгружать и изменять. [1]

Глава 2. Подсистема организации документооборота «InfoBeacon»

2.1. Архитектура и функциональность подсистемы

Давайте предположим, что в группу Web-разработчиков онлайн-издания некоторой компании входят хороший администратор-оформитель, редакторы тематических разделов и авторы статей. Сайт содержит регулярно обновляемые страницы новостей со всего мира, новостей и обзоров из сферы высоких технологий, спортивной и музыкальной рубрик. Главная страница отображает заголовки новейших статей по каждой из четырех категорий.

В этом онлайн-издании администратор-оформитель обеспечивает привлекательный вид содержимого, а также контролирует содержание материалов и безопасность системы в целом. С другой, стороны авторы пишут замечательные статьи, но не умеют толком оформлять свои работы для представления в Web.

Задача состоит в том, чтобы позволить каждому сконцентрироваться на своей работе и объединить результаты усилий, чтобы получилась оперативная служба новостей.

Основные требования, которые будут предъявляться к этой системе:

· увеличение продуктивности работы, позволив авторам сконцентрироваться на статьях, а дизайнеру - на оформлении;

· позволить редактору просматривать статьи и выбирать те, которые будут публиковаться;

· создать единообразный внешний вид сайта с использованием шаблонов страниц;

· предоставить авторам доступ только к предназначенным для них областям сайта;

· предотвратить изменение актуального содержимого.

Первым делом, необходимо продумать способ ввода содержимого в систему. Для этого существует три возможности.

1. FTP

Авторам и дизайнерам можно предоставить FTP-доступ к областям Web-сервера. Это позволит им загружать на сервер файлы со своих локальных компьютеров. Для загружаемых файлов потребуется выработать строгий стандарт именования (который позволит четко идентифицировать принадлежность изображений к тем или иным статьям). С другой стороны, можно воспользоваться основанной на Web системой, которая будет решать упомянутые задачи отдельно от загрузки файлов через FTP.

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

2. Метод загрузки файлов

HTTP-протокол предоставляет метод загрузки файлов при помощи Web-браузера. Язык РНР позволяет решать эту задачу очень просто и эффективно.

Кроме того, метод загрузки файлов дает возможность хранить текст в базе данных вместо файлов. Для этого выполняется чтение во временный файл и сохранение его содержимого в базе данных, а не копирование в другую область файловой системы.

3. Интерактивное редактирование

Пользователи должны иметь возможность, создавать и редактировать документы без задействования FTP-протокола либо другого метода загрузки файлов. Вместо этого авторам, например, можно предоставить большое текстовое поле, в котором они смогут редактировать содержимое своих статей.

Несмотря на относительную простоту этого метода, он зачастую оказывается весьма эффективным. Web-браузер не предоставляет каких-либо возможностей по редактированию текста, кроме лишь функций копирования и вставки, за реализацию которых отвечает операционная система. Однако, когда требуется внести лишь небольшие изменения, скажем, исправить орфографическую ошибку, при помощи подобных функций подобное осуществляется достаточно быстро. [1]

Как и при методе загрузки файлов, данные формы можно записать в файл либо сохранить в базе данных.

В нашем проекте реализуется как раз последний метод ввода содержимого в систему.

Итак, после того, как статья введена, ее можно отправить на редактирование. Для этого выбирается тематика статьи (в нашей системе это новости, компьютеры, спорт и музыка) и после этого материал отсылается соответствующему редактору. При входе редактора в систему у него появляется список статей, предназначенных для редактирования. Он может начать редактирование, написать сообщение автору статьи либо написать свою статью. При написании статью в чужой раздел у него будут права обычного автора на эту статью. Кстати, статью может редактировать и автор, пока редактор не нажмет ссылку «Готово». После нажатия этой ссылки статья становится недоступной ни для редактора, ни для автора. Она переходит в распоряжение администратора. Он может ее редактировать, удалить либо, что наиболее вероятно, опубликовать ее на сайте.

Из рис.3 видно, что на протяжении своего маршрута документ попадает к трем участника процесса документооборота. То есть весь процесс обработки документа можно условно разделить на три этапа: создание, редактирование и публикация. Однако это разделение, как и названия этапов, достаточно условны потому, что границы между этими этапами не такие конкретные, как может показаться с первого взгляда. Например, администратор имеет доступ к документу еще на этапе редактирования. Он может следить за ходом редактирования, а также имеет право сам править или даже удалить документ. На схеме это никак не указано, так как в общем-то это дополнительная функция системы и принципиально ничего не изменяет в архитектуре системы. Она только дает больше прав администратору.

Подпись: 3
Администратор сайта
(публикация)

Рис. 3. Маршруты документов в системе

На рис. 4 показано, как эта подсистема маршрутизации документа вписывается в общую логическую структуру информационного сервера.

Рис. 4. Описание логической структуры информационного сервера

2.2. Организация политики безопасности в рамках подсистемы

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

После входа автора в систему переменной сеанса auth_user присваивается значение. Информация, введенная в форме входной регистрации, передается в сценарий login.php, который сравнивает имя пользователя и пароль с соответствующим значениями базы данных. В случае успешного входа пользователь перемещается на страницу, на которой он пребывал ранее, с помощью значения глобальной переменной HTTP_REFERER. Это означает, что сценарий, входа в систему может вызываться из любой страницы приложения.


Страница: