Автоматизированная система контроля и управления версиями электронных материалов для рабочих групп
Русин Александр Олегович, 14.08.2008
Труды международной научно-технической конференции "Информационные системы и технологии - 2000" НГТУ, Новосибирск, 2000г.
Доклад от компании НооЛаб / см.также тезисы к докладу /
Содержание
АннотацияВ докладе рассматривается задача управления электронными материалами (ЭМ), над которым ведет работу коллектив (рабочая группа) в рамках единого проекта (задания, темы) и предлагаются решения по автоматизации контроля и управления ЭМ (версиями ЭМ).
В качестве основного метода автоматизации обращения рабочих групп (РГ) с ЭМ, фондами и архивами, предлагается создание специализированной информационной системы управления электронными материалами (далее сокращенно АСУ ЭМ). Описываются функции и механизмы работы предложенной системы, дается краткий обзор варианта системы, разработанного автором.
Постановка задачиПредприятия и организации, использующие в своей деятельности современные информационные технологии, зачастую состоят из одной или нескольких рабочих групп, предметом повседневной работы которых являются электронные материалы. ЭМ могут не только появляться на промежуточных стадиях работ, но также являться результатом труда коллектива (у журналистов, программистов, дизайнеров и т.д.).
Для организованного управления материалами в коллективе, организации оборота материалов (обмена ЭМ между сотрудниками), должна быть создана некоторая система, решающая задачи: - Контроль версий ЭМ, обеспечение сотрудников самыми свежими версиями.
- Сдача законченного материала (последней версии) в архив, публикация ЭМ внутри коллектива.
- Группировка ЭМ, в том числе создаваемых разными сотрудниками. Управление группами ЭМ такое же, как отдельными материалами.
- Распределение ответственности за ЭМ и их группы между сотрудниками.
- Восстановление старой версии ЭМ (откат к старой версии).
- Обеспечение возможности гибкого поиска ЭМ в фонде.
- Получение истории создания ЭМ или группы ЭМ.
- Надежное хранение, архивирование, создание резервных копий фонда ЭМ, наработанного коллективом.
Методы решения задачи Основной метод решения поставленной задачи, который выбран и реализован автором - разработка специализированной системы, АСУ ЭМ. Данная система берет на себя функции по хранению материалов, их группировке, ведению списка версий (истории). А также система реализует ряд правил оперирования с ЭМ и их группами и следит за выполнением этих правил.
Реализованные решенияПолный фонд ЭМ хранится централизованно, на одном из компьютеров РГ, либо на специально выделенном сервере. Средствами файловой системы содержимое фонда получить/изменить нельзя, кроме специально оговоренных случаев.
Для доступа к фонду материалов и выполнения всевозможных операций создан набор программ (серверное ПО АСУ ЭМ), который устанавливается на тот же компьютер, где хранится фонд.
Для доступа к фонду и выполнения ограниченного набора операций с любого компьютера, подключенного посредством локальной сети к серверу, создан набор программ (клиентское ПО АСУ ЭМ), который устанавливается на рабочие места пользователей. Каждый сотрудник РГ, который предполагает работать с фондом ЭМ, должен установить на свой компьютер клиентское ПО.
Каждый пользователь, желающий работать с фондом материалов, должен зарегистрироваться на сервере. Регистрация заключается во вводе имени и пароля, а также определении администратором уровня доступа для данного пользователя. Уровень доступа пользователя определяет, какие материалы будут доступны, а какие нет. Это является методом разграничения доступа и обеспечения конфиденциальности. Администратор - должностное лицо из числа пользователей, имеющее расширенные права, которые позволяют ему выполнять ряд сервисных операций, необходимых для организации и обслуживания фонда ЭМ.
Каждый пользователь может отправлять ЭМ (то есть файлы) на сервер со своего локального компьютера. При этом сервер запоминает пользователя, отправившего данный материал, и считает его автором.
Автор может обновить один из своих материалов, отправив на сервер файл новой версии (с измененным содержимым). При этом сервер продолжает хранить и старую, и новую редакции материала.
Каждый пользователь может получить с сервера один из материалов своих коллег, если уровень доступа позволяет это. При этом сервером будет предложена самая свежая редакция материала.
Автор может признать одну или несколько последних редакций материала неактуальными (например, в результате ошибочного пути развития материала) и вернуться к одной из прежних версий, начав обновлять ее. При этом сервер продолжает хранить отвергнутую (тупиковую) ветвь развития, на тот случай, если впоследствии автор изменит свое решение.
Набор материалов (группа) может быть объединена. При этом создается папка или модуль. Папка в АСУ ЭМ аналогична папке в файловой системе. Модуль аналогичен папке за тем исключением, что он, как и отдельный материал, имеет версии (редакции). Версия модуля символизирует набор ЭМ (группу), притом все составляющие группы доведены до определенной логически законченной редакции и совместно представляют (с точки зрения автора) нечто целое и завершенное. Изменив группу ЭМ (исключив некоторые материалы или дополнив), отредактировав какие-либо из материалов, автор может объявить готовой другую версию (редакцию) модуля. В папке или модуле, наравне с файлами, могут содержаться другие папки и/или модули. Автором папки (модуля) считается пользователь, выполнивший его создание.
Каждый пользователь может получить папку или модуль, если его права доступа позволяют это. В этом случае на локальной машине пользователя будет создана папка файловой системы, в которую помещено запрошенное содержимое.
Редактирование ЭМ (файлов) пользователи выполняют на локальных машинах. Сервер исполняет роль архива и места публикации материалов, к которому обращаются пользователи за работами коллег. При этом у пользователей пропадает необходимость обращения к компьютерам друг друга.
Наличие информации об авторстве позволяет определить пользователя, несущего ответственность за тот или иной материал. Папка и модуль также содержат информацию об авторстве, что позволяет определить ответственность за их содержимое.
Хранение на сервере всех версий (редакций) файлов и папок позволяет в любой момент просмотреть историю их развития.
Хранящийся централизованно, фонд электронных материалов позволяет выполнять резервное копирование и/или архивирование.
Совместными действиями серверного и клиентского ПО АСУ ЭМ предпринимаются попытки по своевременному оповещению пользователя о выпуске коллегами новых редакций материалов. Особенно для тех материалов, которые пользователь получал с сервера. Это снижает вероятность оперирования устаревшими материалами коллег.
Клиентское ПО не производит на локальной машине никаких действий без подтверждения (разрешения) со стороны пользователя.
Клиентское ПО требует от пользователя минимального количества действий для отправки/получения материалов, аналогично процедуре копирования файлов на компьютере (или даже меньше). Этим достигается удобство и простота, мотивирующая пользователей к применению механизмов АСУ ЭМ по ведению фонда материалов.
В качестве сервисных функций АСУ ЭМ реализует также возможность автоматической нумерации версий материалов, возможность поиска материалов по различным критериям, автоматическое создание резервной копии фонда и некоторые другие.
Структура фонда электронных материаловФонд ЭМ представляет собой специальным образом организованную базу данных (БД), имеющую структуру. Элементы этой БД - материалы и их группы (модули, папки). При этом для каждого элемента БД может быть создано множество записей - столько, сколько существует версий соответствующего материала или группы.
С одной стороны, все ЭМ и их группы организованы в виде дерева подобно файловой системе: на верхнем уровне расположен проект (заголовок БД), в нем содержатся материалы и группы, в каждой группе могут также содержаться ЭМ и подгруппы и т.д.
С другой стороны, каждый ЭМ и модуль имеет историю - в частном случае это список (от первой до последней версии), в общем - дерево. Ветвления в истории материала начинаются в тот момент, когда автор принимает решение вернуться к ранее пройденной версии. При этом отвергнутая ветвь продолжает храниться, а от одной из предыдущих версий материала начинает расти новая ветвь.
Фонд материалов АСУ ЭМ основан на объектно-ориентированной базе данных с сетевым принципом организации. В БД хранятся объекты (материалы, папки, модули) и отношения между ними (связи) : отношения принадлежности, отношения "следующая-предыдущая версия", в перспективе могут быть заданы и любые другие отношения (например, "материал-приложение").
Архитектура и реализация АСУ ЭМПредложенная модель наиболее эффективно и просто реализуется по клиент-серверной технологии. При этом серверное ПО устанавливается на компьютер, который по возможности должен функционировать круглосуточно. Основные требования по надежности системы лежат на серверной части. Клиентская часть системы отвечает за предоставление информации о фонде ЭМ пользователю, получение его распоряжений, передачу команд на сервер и возврат результата.
В зависимости от того, на какой технологии (на каком протоколе) основан механизм соединения клиентской и серверной части АСУ ЭМ, система может функционировать в масштабах от локальной вычислительной сети до Internet.
Потенциально возможна и распределенная организация АСУ ЭМ, но этот механизм конкурирует с принципом централизации фонда ЭМ и потому наряду с достоинствами вносит ряд сложностей и недостатков.
Реализованная АСУ ЭМПри участии автора данной модели реализована АСУ ЭМ, действующая на платформе Wintel в масштабах локальной вычислительной сети. Система функционирует без ограничения количества пользователей и реализует большинство описанных в докладе решений.
Опытная эксплуатация системы в коллективе программистов продемонстрировала применимость и обоснованность решений, описанных в докладе. Система не противоречит сложившимся принципам работы с ЭМ, но позволяет повысить организованность и упорядоченность фонда материалов.
На современных персональных компьютерах реализованная система показала хорошую производительность и высокую надежность.
Наибольшей сложностью в реализации системы, которая до сих пор окончательно не была преодолена, является пользовательский интерфейс клиентской части, в задачи которого входит отображение структуры фонда ЭМ. Одновременно растущие пересекающиеся деревья ЭМ (дерево иерархии и деревья версий) непривычны для пользователей и сложны в оперировании. Однако этот недостаток не аннулирует эффект от применения АСУ ЭМ и может быть минимизирован в ходе доработки пользовательского интерфейса системы.
ЗаключениеОписанная в докладе автоматизированная система управления версиями электронных материалов позволяет повысить организованность и эффективность работы коллектива, деятельность которого неразрывно связана с созданием и обработкой ЭМ. Предложенная АСУ ЭМ реализуема, а в результате ее эксплуатации проявляются важные качества, одно из которых - надежное хранение и резервное копирование информации в масштабах от рабочей группы до целого предприятия.
Выражение признательностиАвтор выражает признательность Ладыгину Б.Г. за полезные обсуждения и плодотворное участие в процессе реализации описанной в докладе АСУ ЭМ.
Литература:Горбунов-Посадов М.М. Конфигурации программ. - М., Малип, 1994.
Русин Александр Олегович, 14.08.2008
|