Платформа Microsoft .NET Framework стала основой глобальной информационной системы ФНС России
Заказчики: Федеральная налоговая служба (ФНС России) Москва; Государственные и социальные структуры Подрядчики: Ти Ай Системс (TI Systems) Продукт: Microsoft.NET FrameworkДата проекта: 2012/02
|
Технология: Средства разработки приложений
|
Содержание |
Ситуация
Существующая информационная система для управления деятельностью ФНС и автоматизации процессов налогового администрирования была создана более десяти лет назад. За время эксплуатации система морально и технологически устарела и потребовала замены. Предстояло разработать новое централизованное решение, которое поддерживало бы одновременную работу свыше 120 тыс. пользователей из всех налоговых инспекций России и обеспечивало обработку десятков терабайт данных, а кроме того, могло бы размещаться в частном облаке.
Генеральным подрядчиком на конкурсной основе был выбран ФГУП ГНИВЦ ФНС России, а для ускорения разработки было решено поручить исполнение отдельных частей проекта нескольким специализированным компаниям. Чтобы обеспечить целостность архитектуры будущей системы и повысить эффективность совместной работы, требовалось создать пакет базовых инструментов, единых для всей распределенной команды. Использование общих стандартизованных средств разработки помогло бы облегчить интеграцию, ускорить процесс создания системы и добиться лучшего соответствия прикладных подсистем заданным эксплуатационным характеристикам.
Создание такого пакета базовых инструментов – специализированного архитектурного каркаса, учитывающего требования и задачи ФНС – было поручено компании TI Systems, уже имевшей опыт создания подобного пакета в проекте АИС «Налог 2 Москва», и филиалу ГНИВЦ в ПФО.
При выборе платформы разработки в числе возможных вариантов рассматривались предложения Oracle, IBM и других вендоров. Однако, поскольку ИТ-инфраструктура ФНС во многом построена на продуктах Microsoft, предпочтение было отдано Microsoft .NET Framework 4.0. Дополнительным аргументом стал тот факт, что и предшествующая информационная система основывалась на технологиях Microsoft, а значит, ИТ-специалисты, обладающие знанием предметной области ФНС, уже накопили опыт работы с этой платформой. Данные преимущества помогли бы снизить риски и уменьшить затраты на разработку и последующее администрирование системы. Кроме того, в реализации проекта активное участие принимали инженеры Microsoft Consulting Services.
Решение
Объединенная команда разработчиков создала специализированный пакет базовых инструментов под названием «Компоненты прикладной инфраструктуры» (КПИ). В качестве основы используются наборы функций Windows Communication Foundation (WCF) и другие библиотеки, входящие в состав Microsoft .NET Framework 4.0, а также инструментарий от компании Infragistics для создания визуальных интерфейсов.
К настоящему моменту в состав КПИ входят около 20 компонентов, которые образуют ядро архитектуры создаваемой информационной системы и содержат базовые функции взаимодействия прикладной и операционной систем, средства коммуникации между физически распределенными компонентами (унифицированный механизм клиент-серверного взаимодействия), интерфейс пользователя и управление доступом. В частности, компоненты реализуют следующие механизмы:
- единое клиентское приложение;
- унифицированный хост приложений;
- механизм авторизации доступа;
- единый коммуникационный слой;
- мониторинг здоровья системы;
- доступ к данным;
- механизм распараллеливания разработки.
Дополнительно в КПИ была реализована мощная функциональность для создания решений класса BPM (Business Process Management), как полностью автоматических, так и с участием пользователей. Инструменты охватывают весь цикл автоматизации бизнес-процессов — от проектирования до исполнения их в системе, включая мониторинг и управление инфраструктурой исполнения бизнес-процессов, а также оповещение пользователей о событиях, требующих их внимания или выполнения определенных действий.Облачные сервисы для бизнеса: особенности рынка и крупнейшие поставщики. Обзор TAdviser
Сейчас инструментарий KPI используют пять компаний-разработчиков информационной системы ФНС. Созданные ими три прикладные подсистемы с 2011 года находятся в промышленной эксплуатации. Параллельно, также на основе КПИ, разрабатывается еще около десяти прикладных подсистем, которые планируется ввести в опытную эксплуатацию к концу 2012 года.
В настоящее время продолжается развитие функциональных возможностей среды разработки, и, согласно планам, в конце 2012 года появится новая версия КПИ.
«Проект по созданию новой информационной системы для ФНС был технически сложным и масштабным — система должна обслуживать множество площадок, распределенных по всей стране. Надо было обеспечить стабильное функционирование системы для обработки больших объемов данных и поддержки множества пользователей. Такой проект, безусловно, требовал качественно спроектированного ядра системы, чем и стали в итоге компоненты КПИ. Эти компоненты использовались и для создания прототипа, и для нагрузочного тестирования готового решения — с их помощью можно было четко замерять показатели производительности во всех подсистемах, что упрощало локализацию проблемы. Часть проблем удавалось решить за счет модификации самих базовых компонентов. Таким образом, исправления приходилось вносить лишь один раз, а не многократно в каждой из прикладных подсистем»,- Фокин Денис, генеральный директор TI Systems.
Участники проектной команды широко использовали и другие инструменты Microsoft: для планирования работ применялся Project, а управление требованиями, сборкой и тестированием осуществлялось в среде Team Foundation Server (TFS).
Преимущества
Использование для реализации масштабного и сложного проекта единого стандартизованного инструментария способствует повышению эффективности на всех этапах жизненного цикла системы:
- применение КПИ упрощает процессы разработки и интеграции отдельных подсистем, позволяет распределить задачи между несколькими командами исполнителей и при этом сохранить целостность архитектуры системы;
- последующая эксплуатация созданного программного продукта становится менее трудоемкой, поскольку применение типовых интерфейсов и механизмов упрощает инсталляцию, администрирование, конфигурирование и мониторинг решения;
- конечные пользователи работают с целостным унифицированным интерфейсом, что облегчает процесс освоения системы.
Создание среды разработки отделено от создания прикладных систем, поэтому базовые инструменты разрабатываются системными программистами, обладающими достаточной квалификацией для решения низкоуровневых задач, а написание прикладных подсистем поручается тем, кто знаком с предметной областью ФНС. Такое разделение труда повышает продуктивность работы каждого члена проектной команды.
Благодаря использованию типовых протестированных компонентов качество программного продукта оказывается на должной высоте, а сроки разработки сокращаются. Кроме того, системы, строящиеся на основе КПИ, готовы к развертыванию в виртуализированной среде или в облаке.
«Примечательно, что КПИ — это универсальное решение. Оно не заточено под специфику работы и предметную область ФНС, а реализует типовые функции, востребованные при создании практически любых прикладных систем. Эти возможности особенно эффективны при разработке масштабных и высоконагруженных решений. Поэтому КПИ может применяться как самостоятельный продукт и предлагаться другим клиентам в качестве удобной платформы разработки»,- Денис Фокин.
«Создание сложных программных продуктов подразумевает поддержку множества взаимосвязанных процессов, и лишь их правильное сочетание в рамках жизненного цикла ПО позволяет добиться хорошего результата. Microsoft обеспечивает всю необходимую линейку эффективных средств разработки, отладки, тестирования, диагностики и поддержки продуктов, а также организации коллективной работы распределенных команд и управления жизненным циклом приложений нового поколения, Microsoft. — Платформа .NET FrameWork хорошо подкреплена готовыми обучающими материалами, платными и бесплатными ресурсами, сообществами, развивающими готовые библиотеки и решения на базе открытых исходных кодов. В наличии имеется множество готовых адаптированных процессов разработки, средств развертывания, управления и мониторинга готовых решений. Все это помогает компаниям-разработчикам хорошо планировать бизнес и достаточно точно прогнозировать стоимость разработки, минимизируя финансовые риски», - Кирилл Разумовский