Прагма В.К.СКарта

Cодействовать развитию и реализации.

ЧКВФ "Прагма В.К.С"

Телефон: (044)237-74-89, 453-42-85

Факс: (044)456-83-59

Эл. почта: office@pragmavcs.kiev.ua

Группа компаний «КУРС»

Центр развития дистрибъюции

ЧКВФ «Прагма В.К.С» , г. Киев, ул.Выборгская 94,1 корпус, офис 112

Form Server

ИТ решения «КУРС» помогают мне делать

себя и совершенствовать организацию.

Телефон: (044)237-74-89, 453-42-85

Факс: (044)456-83-59

Эл. почта: office@pragmavcs.kiev.ua

Бизнес маркетинговая информационная система - мой выход из «клиентоориентированных» кризисов.

Обзор технологий для сбора электронных форм

Задача сбора электронных форм является в настоящее время одной из самых актуальных тем в мире ИТ. Сама потребность сбора существовала практически всегда. Действительно, сбор с внешних пользователей (источников) данных в электронном виде с адекватной проверкой является типовой задачей во многих бизнес-процессах. Сбор заявок, анкет, форм мониторинга используется в той или иной мере во всех областях экономической деятельности. Однако технологии, которые позволяют решать эту проблему эффективно, появились только в последнее время.

1. Принят стандарт описания логики форм xForms. Достигли зрелости проекты с открытым исходным кодом, обеспечивающие создание шаблонов форм, соответствующих этому стандарту.

2. Приняты открытые стандарты представления текстовых документов: ODF и OOXML. Появились бесплатные офисные приложения, способные конкурировать с продуктами компании Microsoft.

3. Достигли зрелости XML-базы данных (базы данных, предназначенные для хранения XML-документов).

 

На сегодняшний день можно говорить о том, что прошла апробация первой волны решений, направленных на сбор электронных форм (Microsoft, Adobe и IBM). Она доказала принципиальную применимость этих технологий, но также показала, что сделать их эффективными возможно только при значительных изменениях многих архитектурных элементов, лежащих в их основе.

Все технологии для сбора электронных форм, реализованные в различных бизнес-приложениях, принципиально можно разделить на два типа по способу сбора данных:

1. Ввод данных напрямую в СУБД, например, при помощи on-line интерфейса.

2. Сбор форм в виде документов. Документы могут заполняться в режимах on-line или off-line, однако принципиально то, что в системе, вплоть до физического уровня, все данные документа рассматриваются как единое целое.

 

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

Однако все решения, основанные на этом принципе, обладают одним серьезным недостатком: пользователь должен иметь постоянное подключение к базе данных (или реплике базы данных).

Более того, как показывает практика, в режиме on-line неудобно обрабатывать документы, данные которых разбросаны по реляционным таблицам . Довольно сложно вносить изменения в структуру документа. Требуются громоздкие (пусть и отлаженные) решения для извлечения документа и внесения его в базу данных. Именно поэтому даже при наличии постоянного подключения к базе данных при решении задачи сбора электронных форм часто приходится использовать технологии второго типа - сбор форм в виде документов.

Одним из первых удачных решений в этом направлении стало (и до сих пор является самым распространенным) использование в качестве средства сбора форм MS Excel. Смысл технологии заключается в следующем. Создается файл Excel с требуемой формой. Пользователь заполняет форму и пересылает в центр обработки анкет. В этом центре производится проверка анкеты и ее автоматическая передача с помощью скрипта в базу данных.

В более совершенном варианте данные сначала п в формат dbf или csv (еще лучше XML) и в этом виде передаются в центр обработки.

Излишне говорить, что Excel не обеспечивает адекватного контроля качества введенных в документ данных. Пользователь всегда может создать документ, который не будет корректно интерпретирован системой.

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

Появление формата XML в конце 90-х годов открыло новые возможности для создания продуктов, обеспечивающих сбор более сложных форм. Один из этих продуктов был основан на формате XFA (в настоящий момент развивается компанией Adobe), второй - на формате XFDL (в настоящий момент развивается компанией IBM). Кроме того, компания Microsoft с выходом MS Office 2003 реализовала свой подход, основанный на XSLT-преобразованиях XML-файла с данными в файл XHTML.

Одновременно с появлением этих продуктов стал разрабатываться стандарт для описания электронных форм XForms, окончательная редакция версии 1.0 которого появилась в 2007 году. К настоящему моменту уже появился ряд проектов с открытым исходным кодом, которые позволяют работать с шаблонами в формате XForms.

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

Для этого существуют объективные причины:

1. Плохо решена проблема связи формы с внешними справочниками в случае с off-line заполнением форм.

2. Плохо решена проблема создания электронной и печатной версии формы.

3. Созданные решения получились очень громоздкими, а потому сложными в реализации и поддержке.

 

Объяснить эти проблемы довольно просто. Во-первых, разработчики указанных решений оказались первопроходцами. Если технологии создания баз данных достигли своей зрелости уже в 70-х годах, то технологии обработки электронных документов появились значительно позднее. Не будет преувеличением сказать, что эти технологии получили серьезное развитие только во второй половине 90-х годов с появлением стандарта XML, хотя, безусловно, многие результаты относятся к более раннему периоду.

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

Например, совершенно ясно, что печатная форма документа должна представляться в стандартах ODF или OOXML, т.к. эти стандарты используются для описания форматов файлов для текстовых процессоров и электронных таблиц. Существует огромное количество задач, в которых помимо широких возможностей по форматированию, предоставляемых этими форматами, пользователь должен иметь возможность доработать печатные формы и в части форматирования, и даже в части содержания. Форматы XFA и XFDL, безусловно, содержат широкие возможности форматирования данных. Но они по определению будут уступать возможностям ODF и OOXML.

С другой стороны, для представления электронного вида документа в настоящий момент имеет смысл использовать только формат XHTML. Безусловно, продукты как IBM, так и Adobe умеют конвертировать данные из своих форматов и в ODF, и в OOXML, и в XHTML. Однако нецелесообразно производить лишние действия, когда можно задавать форматы напрямую. Это усложняет работу дизайнера, который должен понимать, как те или иные элементы будут отображаться в другом формате. Это усложняет само решение.

Краткое описание приложения Form Server

Объединение всех описанных выше технологий позволило создать продукт Form Server, который дает возможность решать задачи сбора данных более технологично, чем это практикуется в настоящее время. При этом новые технологические возможности и невысокие затратына внедрение и поддержку этого продукта делают возможным его применение для очень широкого круга задач.

Программное обеспечение Form Server позволяет собирать формы в электронном виде и сохранять их в виде XML-файлов либо в файловой системе, либо в XML-базе данных. Кроме того, заполненные формы могут быть переданы во внешнее хранилище.

Программное обеспечение для сбора форм обладает следующими характеристиками.

· Эффективное создание шаблонов форм

· Шаблоны форм описываются в соответствии со стандартом XForms.

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

· Для каждой формы может быть разработана версия для печати. При этом документ передается в файл формата табличного процессора (OOXML или ODF). Большинство настроек пользователь может изменить без помощи ИТ-специалиста, редактируя шаблон документа в форматах OOXML или ODF с помощью визуального редактора.

· Предусмотрена возможность создания документов на основе других документов.

· Гибкая архитектура ПО

· ПО реализовано в трехзвенной архитектуре. Оно может быть легко развернуто при помощи дистрибутива. Это позволяет использовать данное решение для заполнения форм в режиме офф-лайн, когда пользователь разворачивает и использует все решение на одной локальной машине.

· ПО построено в сервисной архитектуре, что позволяет легко интегрировать его с другими программными средствами.

· ПО реализовано на языке Java и независимо от операционной системы (Windows, UNIX/Linux).

· Удобные средства управления сбора отчетностью

· Для упрощения заполнения отчетности в системе реализован механизм заданий. Задание представляет собой набор шаблонов, который должен заполнить пользователь в рамках подготовки пакета отчетности. Это удобно, например, при заполнении пакета форм в режиме офф-лайн, когда пользователь получает задание, открывает его в системе и заполняет формы, шаблоны которых содержатся в задании.

· Заполненные формы могут быть экспортированы из Системы или импортированы в Систему с помощью пакетов, подписанных электронной подписью.

· Приложение позволяет собирать формы других форматов, если, как в случае с Acroforms, существуют бесплатные Java библиотеки, обеспечивающие возможность просмотра и/или заполнения форм.

· В системе реализована система безопасности, позволяющая гибко определять права на работу с формами, содержащимися в системе.

 

 

· Сравнительный анализ технологий, используемых для сбора форм

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

1. Ключевыe особенности приложения Form Server Использует только ПО с открытым исходным кодом

2. Эффективно решает проблемы использования внешних справочников при заполнении форм в режиме off-line

3. Позволяет реализовать систему многоступенчатого сбора форм

4. Позволяет комбинировать средства сбора. Например, для массового сбора простых форм можно использовать формат Acroforms, а для сбора более сложных форм с ограниченного количества респондентов - xForms

5. Эффективно решает проблему представления формы в электронном и бумажном виде за счет использования наиболее адекватных международных стандартов в обоих случаях: XHTML/ODF.