Единая информационная система для ВУЗа
В Московском авиационном институте, для которого мы выполняли этот проект, существует довольно много различных отделов: отдел кадров, отдел аспирантуры, бюро приказов, ученый совет, НИРС (научно-исследовательская работа студентов) и т.п. Исторически сложилось так, что у каждого отдела – своя собственная информационная система, с нестандартным форматом данных и никак не связанная с другими отделами. Это делало невозможным внедрение электронного документооборота между подразделениями института.
Кроме этого, у руководства института возникла задача получения единой статистики по всем отделам института для проведения аналитических исследований. Но это было крайне затруднительно без связности электронных систем различных подразделений. Например, вся информация о сотрудниках хранится в отделе кадров. В то же время, некоторые сотрудники участвуют в научной работе (научный отдел и отдел НИРС), но объединение данных практически невозможно из-за того, что в соответствующих подразделениях используются разные базы данных.
Поэтому возникла задача разработки единой информационной системы, которая позволила бы собрать на один центральный сервер сведения из всех отделов, но при этом требовалось сохранить программы, к которым привыкли сотрудники отделов.
Для решения этой проблемы нами была разработана следующая архитектура системы:
Первым этапом являлась разработка структуры общей базы данных (список таблиц, колонок и связей), в которую собираются сведения из всех отделов. Структура создавалась на основе анализа информационных схем в каждом отделе.
Далее для каждого отдела был разработан собственный адаптер данных, который «вытягивал» информацию из базы данных соответствующего отдела и заносил ее через разработанный нами сервер приложений в общую базу данных. Эти адаптеры данных работают незаметно для пользователей и лишь копируют информацию на центральный сервер, нисколько не вмешиваясь в работу отдела и не добавляя новых данных.
Для некоторых отделов, не имевших ранее собственной информационной системы, были разработаны клиентские приложения, работающие с центральным сервером напрямую, без адаптеров.
Доступ клиентского приложения на сервер осуществляется после авторизации, есть возможность устанавливать разным пользователям разные права доступа к информационной схеме.
В информационной системе используется уникальная технология, позволяющая менять информационную схему (например, добавить новые колонки в таблицу «Сотрудники») только на сервере – все изменения автоматически «подхватываются» клиентскими приложениями без переустановки. Это значительно сокращает затраты на обслуживание такой системы, т.к. не требуется личного посещения всех отделов и переустановки клиентского ПО. Для редактирования информационной схемы и прав доступа к ней на сервере реализовано отдельное приложение:
Для выполнения главной задачи системы – анализа собранной информации – нами было разработано специальное приложение, позволяющее формировать произвольные выборки и представлять статистику в удобном графическом виде:
В настоящий момент разработанная система активно используется в Московском авиационном институте и позволяет значительно сократить затраты на сбор и анализ данных. Полученные отчеты широко используются руководством института.
В ближайшее время планируется интеграция системы с веб-сайтом МАИ, для сбора некоторой статистики путем опроса студентов и преподавательского состава. Благодаря использованию нашей инновационной библиотеки NlSql процесс интеграции будет выполнен максимально эффективно и с минимальными затратами.