Технический центр проекта «Возвращенные имена» находится в Красноярске. Он образован ЗАО "Maxsoft" и Красноярским обществом "Мемориал", которые более 10 лет ведут совместную работу на стыке информационных технологий и истории политических репрессий в СССР.
Мы предложили, реализовали и отстаиваем следующую программно-техническую концепцию проекта «Возвращенные имена»:
Разработка полнофункциональной БДВИ и всего необходимого инструментария для ее обслуживания (рабочие места администратора и операторов региональных пунктов, Web-сайт для доступа к БДВИ через интернет, средства работы с базой различных групп пользователей и т.п.) - это большая и серьезная работа. Мы предлагали разбить ее на этапы продолжительностью от полугода до года и придерживаемся этого подхода.
Дело в том, что в подобных проектах невозможно заранее сформулировать все требования к Системе, невозможно предвидеть все проблемы эксплуатации Системы. Невозможно предвидеть также грядущие в ближайшие год-два программные и технологические новшества. Мы были уверены лишь в том, что делаем первый шаг в правильном направлении. Неверно было бы рассчитывать получить окончательный продукт в результате одного длительного периода разработки. Стратегически верно – запланировать в течение нескольких лет выпуск нескольких последовательных версий продукта. В этом была суть наших предложений.
На первом этапе мы предложили выпустить пилотную версию системы, включающую в себя Web-сайт, версию базы данных в среде MS SQL-2000, средства для дистанционного заполнения базы через сайт, средства выполнения простых поисковых дистанционных запросов к базе. Первоначальный объем базы порядка 100.000 записей, взятый из 2-3 региональных баз. Система устанавливается на провайдерских ресурсах Макссофт. В процессе эксплуатации этой версии подтверждаются (или опровергаются) принятые подходы, а также:
Следующая версия, которую мы назвали базовой, могла бы включать расширение базовых функций, e-mail и ftp-средства доставки информации, развитые средства взаимодействия с поставщиками, средства слияния анкет и т.д.
И, наконец, полнофункциональная версия БДВИ включает развитый функционал пользователя-исследователя
При таком поэтапном подходе предусматривается следующее:
Параллельно с развитием БДВИ развивается СЛП (Стандартное Локальное Приложение). Следует отметить, что в самом первом варианте концепции не предусматривалась СЛП (предполагалось, что ввод в БДВИ будет идти непосредственно с рабочих мест посредством интернета), однако очень скоро мы пришли к выводу, что необходимо вводить данные локально, а потом пакетом передавать их в БДВИ.
СЛП также развивается версионно. Версионный подход к разработке принят в связи со сложностью задачи: постепенно охватываются все новые и новые категории репрессированных, увеличивается функциональная мощность программы.
Программа ввода является частью программного комплекса проекта "Возвращенные имена" и предназначена для ввода архивной информации о репрессированных в локальные базы на местах. Цель разработки - дать единый рабочий инструмент участникам партнерской сети, унифицировать вводимую информацию для последующего объединения ее в глобальной базе.
В качестве среды реализации избрана широко распространенная, развитая, компактная СУБД Access-97. Возможна модификация приложения к Access-20002002.
Основную характеристику предметной области можно выразить словом множественность. Множественность категорий репрессий, множественность видов и форматов документов-источников, потенциальная множественность значений буквально каждого атрибута репрессированного, и, наконец, потенциальная множественность репрессий, постигающих репрессированного.
При постановке задачи было решено на первом этапе ограничиться четырьмя категориями репрессированных.
Структура базы должна обеспечивать единообразное описание атрибутов общих для всех категорий и расширяться за счет полей (таблиц) характерных для каждой категории репрессии и вида источника. Интерфейс должен позволять простую настройку на соответствующие наборы полей. Введено понятие стандарта для каждой категории. Стандарт – согласованный и утвержденный минимум полей, который рекомендовано заполнять партнеру. Реально партнер может вводить информации меньше стандарта, но это будет считаться недостатком предъявленных данных. За пределами стандарта, в документах-источниках может находиться существенная информация о репрессированном, которая может включаться в описание по желанию партнера. Расширенный вариант содержит большее количество полей. Реализованная совокупность всех полей по данной категории образует так называемый вариант все поля.
Версия программы (1.19) пока поддерживает две из перечисленных категорий, а именно первую (АСД) и вторую (ПФЛ). Готовятся к выходу версии, поддерживающие остальные категории. В последующем могут добавиться новые категории, как то: депортированные, раскулаченные, лишенные прав и т.д.
Программа ввода появилась как некоторое временное решение в связи с тем, что СЛП не было готово к моменту начала работы партнерских организаций.
Первоначальный график разработки СЛП был таким:
Однако в первом полугодии 2001 г. (да и во втором тоже) СЛП не было готово к эксплуатации – в значительной степени из-за отсутствия справочников. Причины этого были как субъективные (Методический центр приступил работе над справочниками на полгода позже намеченного срока), так и объективные:
В конечном счете, многие из требуемых справочников были разработаны, причем на достаточно высоком уровне, однако несоблюдение графика разработки привело к весьма существенным последствиям. Когда стало очевидно, что справочников в обозримом будущем не будет, но работа партнерских организаций начинается в ближайшие месяцы, срочно была создана так называемая программа ввода, главное отличие которой от СЛП заключалось в отсутствии унифицированных справочников с заменой их на текстовый ввод в поле или на открытые справочники, заполняемые самим пользователем. Кроме того, эта программа была рассчитана только на работу с архивно-следственными делами (такие категории репрессированных, как заключенные, спецпоселенцы и другие в программе не учитывались).
Это был вынужденный вариант. Отсутствие справочников не позволяло достичь требуемого уровня унифицированности данных. Опытную эксплуатацию программы ввода на «продвинутых» и лояльно относящихся к проекту организациях провести не удалось, поскольку на это уже не было времени. Поэтому сразу же началась «штатная» эксплуатация программы. Проблемы, которые при опытной эксплуатации решались бы с небольшим количеством технически грамотных партнеров, проявились сразу у многих организаций, многие из которых к тому же имели невысокую компьютерную грамотность. Поэтому ряд партнерских организаций не рискнули воспользоваться программой или, в конечном счете, от неё отказались. Также не смогли ею воспользоваться и партнерские организации, работающие не с архивно-следственными делами. Тем не менее, 28284 записи были введены за год пятью партнерскими организациями именно в программе ввода. Их замечания были учтены, программа ввода прошла несколько этапов доработки, и в августе 2002 г. мы распространяли уже достаточно устойчивую версию 1.17. То есть, этап опытной эксплуатации программы ввода прошел, хотя не в таком режиме, как мы предполагали вначале.
Еще одна проблема, связанная со срывом графика, заключалась в том, что, когда, наконец, начали поступать результаты работы Методического центра, разработчик СЛП уже не имел сил и времени на проработку и внедрение их, поскольку был полностью занят обслуживанием партнерских организаций, выявлением и исправлением ошибок в программе ввода и ее доработкой. Сейчас, когда острота ситуации сгладилась, поток вопросов уменьшился, началось планомерное преобразование программы ввода в СЛП. Уже добавлен второй тип репрессий (проверочно-фильтрационные лагеря), можно приступать и к внедрению справочников.
Цели пилотного проекта заключались в следующем:
Исходя из этих целей, было сформулировано задание на разработку, которое состояло из следующих задач:
За отчетный период создана пробная, функционирующая, версия информационной системы. Все запланированные задачи выполнены.
Создана первая версия сайта проекта. Веб-сайт предоставляет средства для выполнения простых и составных запросов к базе данных, предоставляет работающему с сайтом всю, имеющуюся на сегодняшний день в базе, информацию о репрессированных, включая информацию о поставщике данных. Помимо формы для работы с базой, на сайте публикуются информационные материалы проекта "Возвращенные имена".
Функционал сайта расширен, теперь он фигурирует в качестве информационного центра проекта.
Создана версия базы в среде MS SQL-2000. Была определена и разработана физическая структура и состав БД, количество, состав и расположение файловых групп (filegroups), оптимально соответствующие решаемой задаче - обеспечение быстрого, параллельного доступа многих пользователей как к часто используемым данным, так и индексам. Добавлены поля, отвечающие за идентификацию принадлежности записей локальной Базе, (идентификация поставщика).
По замыслу, структура централизованной базы должна максимально соответствовать структуре базы стандартного локального приложения (СЛП). В ходе работ, на этапах проектирования Единой базы, ее заполнения и отладки запросов, выявились дополнительные требования к структуре базы СЛП, которые были учтены. В частности, при переносе в среду MS SQL2000 пришлось переработать структуру таблицы Biography, поскольку она не отвечала критериям скорости работы с ней.
В базу помещены таблицы, содержащие биографический блок данных и информацию о репрессиях. Текущая версия базы содержит 37 таблиц. 4 таблицы ЕЭБД почти полностью соответствуют таблицам из СЛП.
Поскольку разработка пилотного варианта БДВИ началась значительно позже разработки СЛП, позднее появление справочников меньше сказалось на функциональной мощности БДВИ. Справочники, поступившие весной 2002 г. успешно внедрены, остальные будут внедряться по мере поступления.
В базе представлено 104700 персоналий. Этот объем создан на основе архивов пяти региональных организаций – Красноярского Мемориала, Рабочей группы Приморской краевой Книги памяти жертв политических репрессий (Владивосток), Ярославской Книги памяти, Московского и Томского Мемориалов.
Успешная аккумуляция разнородных баз подтверждает правильность выбранного направления работы. Следует, однако, отметить, что в указанных базах (кроме красноярской) количество полей существенно меньше количества полей в БДВИ, поэтому многие поля БДВИ оказались незаполненными. Также ряд записей оказались отбракованными из-за ошибок в наименованиях географических объектов.
На сайте реализованы средства дистанционного редактирования данных. Разработано программное обеспечение, которое позволяет дистанционно изменять и удалять информацию в базе данных.
Реализованные средства поисковых запросов позволяют производить выборку по основным параметрам (установочные данные) в любой их комбинации (ФИО, дата рождения, пол, место рождения, дата и место смерти). Реализован расширенный поиск по ФИО и дате, когда ищущий знает только приблизительные условия поиска.
Система физически расположена на 2х серверах (веб-сервер и MS SQL2000 сервер) хостинг-площадки компании Maxsoft. С момента запуска сбоев в функционировании системы не наблюдалось.
В дальнейшем предполагается улучшение отказоустойчивости системы и сохранности данных. По мере необходимости (увеличение объема информации в БД) будут наращиваться технические характеристики системы.
Результат описанной работы можно наблюдать в интернете по адресу HTTPS://vi.krsk.ru/
По первоначальному плану, предполагалось, что после отработки технических решений на пилотной версии, будет создаваться базовая версия, которая включала бы в себя расширение базовых функций, e-mail и ftp-средства доставки информации, развитые средства взаимодействия с поставщиками, средства слияния анкет и т.д. А уже затем создается окончательная версия, включающая к тому же развитый функционал пользователя-исследователя. Этот подход полностью соответствовал принципу версионности и позволял двигаться к цели постепенно, после каждого шага проводя корректировку целей и средств.
В рамках этого подхода более эффективно преодолеваются и внешние по отношению к проекту препятствия, такие как прекращение или уменьшение финансирования, невыполнение графика работ партнерами. Шаги становятся более мелкими, но движение к цели не прекращается. Примером этого может служить первая базовая версия, реализуемая вместо более мощной и более дорогой базовой версии.
Первая базовая версия решает одну из основных задач очередного этапа развития проекта «Возвращенные имена»: автоматизацию импорта в БДВИ данных из партнерских баз. В нее включаются все возможности, реализованные в пилотном проекте, а также ряд указанных ниже программных механизмов:
Этот шаг очень важен и своевременен. Дело в том, что партнерские организации постепенно переходят на работу с унифицированной программой ввода. Уже сейчас накоплен массив данных в едином стандарте на 28000 человек. Следовательно, процесс ввода и объединения данных переходит из экспериментальной фазы в производственную. Пора приступать к аккумуляции данных, подготовленных партнерскими организациями, в БДВИ и постепенному наращиванию ее объема.
Между тем, в пилотной версии не предусматривались средства автоматического или полуавтоматического импорта данных из программы ввода (это просто не входило в задачи пилотного проекта). Импорт 107 000 данных был осуществлен ручным способом, за счет приведения разнородных данных, взятых из различных источников, к стандарту БДВИ. Это была непростая и весьма объемная задача, учитывая разнообразие технических решений, структур БД и отсутствие унифицированного подхода. Разумеется, это было сделано однократно, для апробирования технических решений. «Штатная» работа БДВИ подразумевает, что данные от партнерских организаций регулярно поступают в едином формате и едином стандарте качества, а процесс их слияния в БДВИ предельно автоматизирован.
Собственно говоря, от первоначально предполагавшейся базовой версии данная версия отличается только отсутствием механизмов поиска записей об одном и том же человеке в БДВИ, а также экспорта данных из БДВИ в программу ввода для конкретной партнерской организации. Это – задача следующего этапа.
Еще одна задача следующего этапа – построение полной системы верификации данных. В текущей версии верификация осуществляется де-факто, но в ограниченном объеме. Так, например, в программе ввода версии 1.17 (которая в данный момент используется для ввода, из которой осуществляется импорт в БДВИ) отсутствуют географический справочник, а в БДВИ он уже есть. При импорте данных из программы ввода происходит автоматическая идентификация позиции справочника по текстовым полям, содержащим географические названия (районы, области и пр.). Если соответствующее название не находится в справочнике, запись отбраковывается. Однако, предстоит построить более полную многоуровневую систему верификации.
Первоначально предполагалось, что сайт vi.krsk.ru будет содержать только тестовую базу данных, минимальные сведения о проекте и файловый архив. Также предполагалось, что сайт будет предназначен для весьма небольшого круга людей, непосредственно участвующих в проекте. Поэтому сайт не регистрировался в поисковых машинах и каталогах, не содержал счетчиков.
Однако со временем потребовалось расширить функционал сайта и сделать его аккумулирующим информационным центром проекта. Кроме того, появилась потребность представить проект более широким кругам общественности. Так на сайте появились разделы «Архив», «Новости», «О проекте», «Часто задаваемые вопросы». На сайт выложены: текст концепции проекта, сборник докладов конференции в Нижнем Тагиле в 2000 г., методические материалы, программное обеспечение. Технически не составляло проблем организовать на сайте и обсуждение проблем, связанных с проектом «Возвращенные имена», однако практика показала, что даже в пределах Рабочей группы культура электронного общения еще не привилась в должной степени, и от этой идеи пока отказались.
Сайт совершенно необходим для проекта «Возвращенные имена», поскольку идет совместная работа территориально удаленных людей и организаций. К сожалению, это до сих пор не осознается участниками проекта – как партнерскими организациями на местах, которые им пользуются крайне редко, так и центрами проекта, которые не используют этот мощный инструмент для своей работы.
Разумеется, не все проходило гладко, не все задачи были выполнены, не все сроки соблюдены. Проделана большая работа, в том числе и Техническим центром, но можно было (и нужно было) достичь большего. Не касаясь общих проблем проекта, хотелось бы обсудить проблемы, которые в той или иной степени коснулись именно работы Технического центра. На наш взгляд, существенными оказались несколько факторов.
Несоответствие структуры управления поставленной задаче. Разработка и эксплуатация программного обеспечения – это процесс, требующий соблюдения определенной технологии и достаточно жесткого централизованного управления. То есть, это производственный процесс. Это условие соблюдалось внутри Технического центра, однако управление разработкой в целом осуществлялось организационными методами, свойственными научной работе, причем в рамках ряда отдельных грантов. Отчасти это имело смысл, поскольку разработка была весьма наукоемкой. Однако отсутствие вертикали управления привело к тому, что некоторые участники проекта декларировали свою ответственность только перед грантодателем, но не перед координаторами различных уровней (координатором проекта, региональными координаторами). Если на уровне партнерской организации это имело локальные последствия, в ключевых точках – повлияло на результаты работы над проектом в целом.
Недооценка взаимосвязанности выполнения работ. Обычно грантополучатели, даже работающие в рамках одного проекта, достаточно независимы по срокам и результатам. Каждый отвечает только за себя. Проект же «Возвращенные имена» осуществлялся по весьма жесткому графику, в котором результат работы одних партнеров сильно зависел от результатов работы других партнеров. Успешная работа партнерских организаций в регионах существенно зависела как от работы Технического центра, так и от работы региональных координаторов. В свою очередь, работа Технического центра не могла осуществляться без результатов работы Методического центра. В этой ситуации даже от грантодателя зависело очень многое – обычная передвижка сроков заключения договоров или реального перечисления денег могла вызвать цепную реакцию сбоев графика
Самый яркий пример тому - ситуация с разработкой справочников, описанная выше. Этот пример показывает, как несоблюдение сроков всего лишь по некоторым пунктам может сильно осложнить работу проекта в целом. Нужно, чтобы участники проекта, особенно находящиеся на ключевых (с точки зрения соблюдения общего графика) точках, осознавали свою ответственность не только за свой участок работы, но и за проект в целом. Иначе качественное, но несвоевременное (не по срокам сдачи отчетности грантодателю, а по сравнению с запланированным графиком работ) выполнение гранта в несколько десятков тысяч рублей может поставить под угрозу проект стоимостью в сотни тысяч долларов («потому что в кузнице не было гвоздя…»).
Излишняя жесткость графика финансирования. Возвращаясь к ситуации с СЛП, заметим, что участники проекта вполне осознавали последствия нарушения графика разработки. В ноябре 2001 года обсуждалась возможность сдвига начала работы партнерских организаций как минимум на полгода, а лучше на год. Это было бы очень верным решением и с точки зрения качества работы, и с точки зрения эффективного вложения средств. Именно за этот год Технический центр совместно с Методическим центром завершил бы создание СЛП со всеми необходимыми справочниками, позволяющего работать как минимум с двумя-тремя типами репрессий, успел бы провести опытную эксплуатацию СЛП. Этот оптимизм основан на фактах: в январе-августе 2002 г. Методический центр подготовил основополагающие справочники, как по установочным данным, так и по данным, связанным с архивно-следственными делами. Если бы не отвлечение на срочную разработку и поддержку программы ввода (на что ушел весь 2002 г.), эти справочники были бы до конца 2002 г. внедрены в СЛП и, таким образом, одна из важнейших задач проекта – унификация поступающих данных, была бы выполнена в должном объеме. Это подтверждается тем, что справочники летом 2002 г. были успешно внедрены в пилотную версию БДВИ – то есть, даже сдвиг начала работы с партнерскими организациями всего на полгода мог бы серьезно улучшить ситуацию.
Однако это оказалось невозможным именно из-за условий финансирования: средства были выделены на 2002 г., и освоить их можно было только в 2002 г. Это – фактор, который серьезно повлиял на результаты работы.
Несмотря на неизбежные, ожидаемые или неожиданные сложности, мы считаем, что достигнут несомненный прогресс в развитии проекта:
Теперь главное – не останавливаться. Конечно, следует ожидать, что без финансирования часть партнеров отсеется – но они и сейчас были балластом, поскольку воспринимали проект «Возвращенные имена» только как источник финансирования для своих собственных проектов. Оставшиеся – будут работать, и именно их работа представляет наибольшую ценность.
Что же касается Технического центра – он будет продолжать работать и при отсутствии внешнего финансирования.
Будет осуществляться прием данных от партнерских организаций и экспорт их в БДВИ.
Непрерывную работу по созданию новых версий программы ввода в то время, пока не будут изысканы другие источники, будет финансировать компания Maxsoft. Основная задача на ближайший год – внедрение справочников в программу ввода и поддержка как минимум двух дополнительных типов репрессированных – заключенных и спецпоселенцев и, таким образом, превращение её в полнофункциональное СЛП.
Компанией же Maxsoft будет поддержано версионное развитие БДВИ. При наличии внешнего финансирования будет сделана базовая версия в полном запланированном объеме. При отсутствии такового новые версии будут появляться более мелкими шагами. Среди первоочередных задач – построение системы верификации данных, поступающих от партнерских организаций, а затем – механизм отыскания и слияния записей об одном и том же человеке.
Отсутствие финансирования уменьшит возможность личных встреч. Следовательно, возрастет роль электронного общения и сайта проекта. Практика развития интернета показывает, что именно сайты являются сейчас центрами кристаллизации «комьюнити», то есть групп людей, объединенных общими интересами и общими целями. В качестве примера можно привести сайт improvement.ru, вокруг которого сформировался мощный коллектив тайм-менеджеров. Люди, которые еще недавно не слышали друг о друге, создали виртуальный коллектив, успешно осуществляющий совместные проекты. Мы надеемся, что такой коллектив возникнет (а частично уже возник) вокруг сайта проекта «Возвращенные имена».