ИДЕНТИФИКАЦИЯ ПРОЕКТНЫХ ПРОБЛЕМ В ЭЛЕКТРОННЫХ ФОРМАХ
IDENTIFICATION OF DESIGN ISSUES IN ELECTRONIC FORMS

Предшествующий уровень техники
В процессе проектирования электронной формы (формы, которая заполняется на компьютере) с помощью программы для проектирования электронных форм может возникнуть множество ошибок. Ошибки могут возникнуть в различные моменты в течение процесса проектирования, и они могут быть связаны с различными проблемами, такими как проблемы импорта, проблемы форматирования, проблемы совместимости, проблемы времени выполнения и т.п.
Ошибка несовместимости по местоположению является одним из примеров частых ошибок. Ошибка несовместимости по местоположению может возникнуть из-за того, что некоторые электронные формы имеют функциональные возможности, которые работают, когда электронная форма используется на автономном компьютере, но не работают, когда электронная форма используется в иной среде времени выполнения. Например, если электронная форма спроектирована для использования на автономном компьютере, то в электронной форме будут доступны более сложные возможности, такие как проверка правописания и файловые вложения, которые будут внедрены как функциональные возможности. Тем не менее, если та же электронная форма будет размещена на web-сервере, так чтобы ее можно было заполнять посредством web-браузера, то более сложные возможности будут недоступны, что, соответственно, приведет к ошибке несовместимости по местоположению.
Ошибка несовместимости по местоположению является лишь одной из множества возможных проектных ошибок, которые могут возникнуть в процессе проектирования электронной формы. Потенциальные проектные ошибки могут иметь различную степень серьезности и масштаб. Определенные ошибки препятствуют работе электронной формы, тогда как более сложные ошибки могут привести к некорректной работе электронной формы. Состояния ошибки в электронных формах нежелательны, поскольку они могут привести к неудовлетворительному взаимодействию с конечным пользователем электронной формы. Кроме того, состояния ошибки в электронных формах могут нарушить целостность данных, которые электронная форма должна сохранять.
Поскольку ошибки нежелательны, важно и полезно идентифицировать и устранять их в течение процесса проектирования. Для способствования идентификации и удаления ошибок программы проектирования электронных форм отмечают или выводят сообщения о потенциальных проектных ошибках в течение выполнения этапа или процесса, который связан с определенным типом ошибки. Вывод этого предупреждения часто является единственным моментом, когда пользователь программы для проектирования электронных форм уведомляется о проектной проблеме, являющейся ошибкой или потенциальной возможностью возникновения ошибки. Например, уведомление об ошибке импорта может быть выведено пользователю программы для проектирования электронных форм только в течение импорта файла. В качестве другого примера, уведомление об ошибке несовместимости может быть выведено пользователю программы для проектирования электронных форм только в течение фазы публикации электронной формы. Таким образом, идентификация и устранение одной ошибки может потребовать много времени, поскольку ошибка не устраняется непосредственно после ее идентификации. Подобный спорадический способ уведомления пользователя об ошибках может привести к увеличению времени, требуемого для процессов проектирования, а также для идентификации и устранения ошибки.
При проектировании электронной формы существует ряд потенциальных источников ошибок. Для многих из этих источников ошибок уведомления об ошибке генерируются только тогда, когда происходит ошибка или когда при определенном действии, таком как публикация электронной формы, выявляется наличие ошибки. Различные источники и способы идентификации ошибок делают сложным уведомление пользователя обо всех ошибках, которые существуют или потенциально существуют в заданное время. Наряду с тем, что уведомление об ошибках полезно для пользователя программы для проектирования электронных форм, вышеописанные способы идентификации и уведомления об ошибках могут быть неудобны, нестабильны и крайне неэффективны.
Сущность изобретения
Раздел "Сущность изобретения" приведен, чтобы представить в упрощенной форме выборку концепций, которые подробно описываются ниже в разделе "Подробное описание". Раздел "Сущность изобретения" не предназначен ни для определения ключевых или существенных признаков заявленного изобретения, ни для использования в качестве вспомогательного средства при определении объема сущности формулы изобретения.
Раскрыта технология для идентификации проектных проблем в течение процесса генерации электронных форм. В одном подходе принимается выбираемая пользователем среда выполнения, которая должна быть применена к электронной форме. В электронной форме выполняется проверка проекта формы. Уведомляющий объект генерирует список проектных проблем, идентифицированных посредством проверки проекта формы. Список проектных проблем отображается в интерфейсе пользователя.
Перечень чертежей
Прилагаемые чертежи, которые включены в состав данного описания и являются его частью, иллюстрируют варианты осуществления технологии для идентификации проектных проблем в электронных формах и вместе с описанием служат для разъяснения описанных ниже принципов. На чертежах:
фиг.1 - схема примера компьютерной системы 100, используемой согласно вариантам осуществления настоящей технологии для идентификации проектных проблем в электронных формах;
фиг.2 - схема одного варианта осуществления настоящей системы для идентификации проектных проблем в электронных формах;
фиг.3 - схема одного варианта осуществления интерфейса пользователя настоящей системы для идентификации проектных проблем в электронных формах;
фиг.4 - схема одного варианта осуществления фрейма приложения, в котором используется настоящая система для идентификации проектных проблем в электронных формах;
фиг.5 - схема последовательности операций, выполняемых согласно одному варианту осуществления настоящей технологии для идентификации проектных проблем в электронных формах;
фиг.6 - схема последовательности операций, выполняемых согласно одному варианту осуществления настоящей технологии для идентификации проектных проблем в электронных формах;
фиг.7 - схема одного варианта осуществления диалогового окна настоящей системы для идентификации проектных проблем в электронных формах;
фиг.8 - схема одного варианта осуществления диалогового окна настоящей системы для идентификации проектных проблем в электронных формах;
фиг.9А - схема одного варианта осуществления области задач средства проверки (контролера) проекта настоящей системы для идентификации проектных проблем в электронных формах;
фиг.9В - схема одного варианта осуществления области задач контролера проекта настоящей системы для идентификации проектных проблем в электронных формах;
фиг.9С - схема одного варианта осуществления области задач контролера проекта настоящей системы для идентификации проектных проблем в электронных формах;
фиг.10 - схема одного варианта осуществления области проектирования и области задач контролера проекта настоящей системы для идентификации проектных проблем в электронных формах;
фиг.11 - схема одного варианта осуществления области проектирования и области задач контролера проекта настоящей системы для идентификации проектных проблем в электронных формах;
фиг.12 - схема одного варианта осуществления области проектирования и области задач контролера проекта настоящей системы для идентификации проектных проблем в электронных формах.
Следует отметить, что упомянутые чертежи не вычерчены в масштабе, если не указано иного.
Подробное описание
Ниже подробно описаны варианты осуществления технологии для идентификации проектных проблем в электронных формах, примеры которых проиллюстрированы в прилагаемых чертежах. Несмотря на то что технология для идентификации проектных проблем в электронных формах описана в привязке к различным вариантам осуществления, следует понимать, что эти варианты осуществления не предназначены для ограничения настоящей технологии для идентификации проектных проблем в электронных формах. Наоборот, представленная технология для идентификации проектных проблем в электронных формах подразумевается охватывающей альтернативы, модификации и эквиваленты, которые подпадают под объем различных вариантов осуществления, определяемый прилагаемой формулой изобретения. Сверх того, в следующем подробном описании ряд особых деталей изложен, чтобы предоставить подробное и полное понимание настоящей технологии для идентификации проектных проблем в электронных формах. Тем не менее, настоящая технология для идентификации проектных проблем в электронных формах может быть применена без этих конкретных деталей. В других случаях хорошо известные способы, процедуры, компоненты и схемы подробно не описаны, чтобы не усложнять описание аспектов настоящих вариантов осуществления.
Если специально не указано иного, следует понимать, что в настоящем подробном описании такие термины, как "принимать", "выполнять", "генерировать", "отображать", "выбирать", "прокручивать", "выделять", "представлять", "проверять", "идентифицировать", "сообщать", "запрашивать", "предотвращать", "предоставлять", "обновлять" и т.п. относятся к действиям и процессам компьютерной системы или иного схожего электронного вычислительного устройства. Компьютерная система или схожее электронное вычислительное устройство манипулирует и преобразует данные, представленные как физические (электронные) величины в регистрах и памяти компьютерной системы, в другие данные, схожим образом представленные как физические величины в памяти или регистрах или ином подобном устройстве хранения, передачи или отображения информации. Настоящая технология для идентификации проектных проблем в электронных формах также хорошо подходит для других компьютерных систем, таких как, например, оптические и механические компьютеры. В добавление, следует понимать, что в вариантах осуществления настоящей технологии для идентификации проектных проблем в электронных формах один или более этапов могут быть выполнены вручную.
Ссылаясь на фиг.1, части технологии для идентификации проектных проблем в электронных формах состоят из читаемых и исполняемых компьютером инструкций, которые хранятся, например, в используемых компьютером носителях компьютерной системы. То есть фиг.1 иллюстрирует один пример типа компьютера, который может использоваться для реализации вариантов осуществления настоящей технологии для идентификации проектных проблем в электронных формах. Фиг.1 иллюстрирует пример компьютерной системы 100, используемой согласно вариантам осуществления настоящей технологии для идентификации проектных проблем в электронных формах. Очевидно, что показанная на фиг.1 система является лишь примером и настоящая технология для идентификации проектных проблем в электронных формах может работать на или во множестве различных компьютерных систем, включающих в себя сетевые компьютерные системы общего назначения, встроенные компьютерные системы, маршрутизаторы, коммутаторы, серверные устройства, клиентские устройства, различные промежуточные устройства/узлы, автономные компьютерные системы и т.п. Как показано на фиг.1, компьютерная система 100 хорошо приспособлена для того, чтобы соединяться с периферийными машиночитаемыми носителями 102, такими как, например, дискеты, компакт-диски и т.п.
Система 100 с фиг.1 включает в себя шину 104 адреса/данных для передачи информации, а также процессор 106А, соединенный с шиной 104, для обработки информации и инструкций. Как показано на фиг.1, система 100 также хорошо приспособлена к многопроцессорному окружению, в котором присутствует множество процессоров 106A, 106B и 106C. Кроме того, система 100 также хорошо подходит для того, чтобы иметь один процессор, такой как, например, процессор 106А. Процессоры 106A, 106B и 106C могут быть микропроцессорами любого типа. Система 100 также включает в себя функциональные возможности хранения данных, такие как используемая компьютером энергозависимая память 108, например ОЗУ, соединенная с шиной 104, для хранения информации инструкций для процессоров 106A, 106B и 106C. Система 100 также включает в себя используемую компьютером энергонезависимую память 110, например ПЗУ, соединенную с шиной 104 для хранения статической информации и инструкций для процессоров 106A, 106B и 106C. В системе 100 также присутствует блок 112 хранения данных (например, магнитный или оптический диск и привод диска), соединенный с шиной 104 для хранения информации и инструкций. Система 100 также включает в себя опциональное алфавитно-цифровое устройство 114 ввода, включающее в себя алфавитно-цифровые и функциональные клавиши, соединенное с шиной 104 для передачи информации и выборов команд в процессор 106A или процессоры 106A, 106B и 106C. Система 100 также включает в себя опциональное управляющее устройство 116 с курсором, соединенное с шиной 104 для передачи информации ввода пользователя и выборов команд в процессор 106A или 106A, 106B и 106C. Система 100 настоящего варианта осуществления также включает в себя опциональное устройство 118 отображения, соединенное с шиной 104 для отображения информации.
Ссылаясь на фиг.1, опциональное устройство 118 отображения может представлять собой жидкокристаллический дисплей, электронно-лучевую трубку, плазменное устройство отображения или иное устройство отображения, подходящее для создания графических изображений и алфавитно-цифровых знаков, распознаваемых пользователем. Опциональное устройство 116 управления с курсором предоставляет возможность пользователю компьютера динамически сигнализировать перемещение видимого символа (курсора) по экрану устройства 118 отображения. Известно множество реализаций устройства 116 управления с курсором, в том числе трекбол, мышь, сенсорная панель, джойстик или специальные клавиши на алфавитно-цифровом устройстве 114 ввода, способные сигнализировать перемещение в заданном направлении или вид перемещения. Также очевидно, что курсор может быть направлен и/или активирован посредством ввода с алфавитно-цифрового устройства 114 ввода путем использования особых клавиш и последовательностей команд клавиш. Система 100 также хорошо подходит для того, чтобы курсор направлялся посредством другого средства, такого как, например, голосовые команды. Система 100 также включает в себя устройство 120 ввода/вывода для соединения системы 100 с внешними модулями. Например, в одном варианте осуществления устройство 120 ввода/вывода представляет собой модем для установления проводного или беспроводного соединения между системой 100 и внешний сетью, такой как, но не ограничиваясь этим, Интернет. Ниже приведено более подробное описание настоящей технологии для идентификации проектных проблем в электронных формах.
Ссылаясь на фиг.1, показаны различные другие компоненты для системы 100. В частности, операционная система 122, приложения 124, модули 126 и данные 128 показаны как хранящиеся в одном из или некоторой комбинации используемой компьютером энергозависимой памяти 108, например в ОЗУ, и блоке 112 хранения данных. В одном варианте осуществления настоящая технология для идентификации проектных проблем в электронных формах, например, хранится как приложение 124 или модуль 126 в ячейках памяти внутри ОЗУ 108 и областях памяти в блоке 112 хранения данных.
Общее описание технологии для идентификации проектных проблем в электронных формах
В качестве обзора в одном варианте осуществления целью настоящей технологии для идентификации проектных проблем в электронных формах является способ идентификации проектных проблем, которые могут возникнуть в течение процесса проектирования электронной формы. В одном варианте осуществления эти проектные проблемы идентифицируются посредством множества объектов-контролеров проекта. Уведомляющий объект собирает и классифицирует идентифицированные проектные проблемы и форматирует их для отображения пользователю в одной панели задач контролера проекта в интерфейсе пользователя. Это консолидированное представление списка идентифицированных проектных проблем предоставляет пользователю единообразное средство для распознавания и взаимодействия с потенциальными проблемами в течение всего проектирования электронной формы. Кроме того, в различных вариантах осуществления это единое представление списка проектных проблем служит в качестве исходной точки для различных функций. Эти функции включают в себя, например, выявление источников проектных проблем в проектируемой форме, исправление проектных проблем и быстрое удостоверение в том, что проектные проблемы в электронной форме были исправлены.
На фиг.2 представлена схема одного варианта осуществления системы 200 для идентификации проектных проблем в электронных формах. В следующем описании сначала приведено описание физической структуры настоящей системы для идентификации проектных проблем в электронных формах. Далее следует описание работы настоящего изобретения. Что касается физической структуры, то система 200 состоит из контролера 210 проекта формы, уведомляющего объекта 220, интерфейса 230 пользователя и шины 240 для передачи сообщений. Контролер 210 проекта формы соединен с уведомляющим объектом 220 через шину 240. Интерфейс 230 пользователя соединен с уведомляющим объектом 220 посредством двунаправленного соединения.
Контролер 210 проекта формы служит в качестве центрального объекта-контролера проекта для регистрации множества клиентских объектов-контролеров проекта формы, которые включают в себя: контролер 211 совместимости времени выполнения, контролер 212 обратной совместимости, контролер 213 ошибки связывания, контролер 214 ошибки частей решения, контролер 215 ошибки импорта и контролер 216 совместимости в автономном режиме (режиме офф-лайн). Несмотря на то что показаны шесть объектов-контролеров (211-216), следует понимать, что возможно использование большего или меньшего количества таких объектов. Каждый объект-контролер (211-216) проекта формы предназначен для проверки конкретного источника ошибок в электронной форме. Например, контролер 211 совместимости времени выполнения проверяет конкретно наличие ошибок совместимости времени выполнения в электронной форме.
Когда какое-либо действие инициирует начальную проверку ошибок или обновление проверки ошибок электронной формы, объект-контролер 210 проекта опрашивает зарегистрированные клиентские объекты-контролеры 211-216 проекта формы на предмет списка потенциальных проектных ошибок. Далее, потенциальные проектные ошибки сообщаются в уведомляющий объект 220. В одном варианте осуществления каждый клиентский объект соединен с шиной 240 и независимым образом сообщает потенциальные проектные ошибки в уведомляющий объект 220. В еще одном варианте осуществления потенциальные проектные ошибки, идентифицированные клиентскими объектами 211-216, передаются через объект-контролер 210 проекта в уведомляющий объект 220. В одном варианте осуществления отдельные объекты-контролеры 211-216 проекта также генерируют предупредительные сообщения на основании идентифицированных потенциальных проектных ошибок. Все сгенерированные предупредительные сообщения также принимаются уведомляющим объектом 220.
Уведомляющий объект 220 консолидирует полученные сообщения о потенциальных ошибках, чтобы сгенерировать единый список связанных проектных проблем. В варианте осуществления, где уведомляющий объект 220 также принимает предупреждения, эти предупреждения также доступны для консолидации в списке связанных проектных проблем. В одном варианте осуществления уведомляющий объект 220 также содержит логику для генерации предупреждений на основании потенциальных проектных ошибок, о которых в него поступили сообщения. В таком варианте осуществления эти предупреждения также доступны для компиляции в список проектных проблем, который генерируется уведомляющим объектом 220. Консолидированный список проектных проблем может содержать в себе потенциальные проектные ошибки, предупреждения или некоторую комбинацию потенциальных проектных ошибок и предупреждений.
Интерфейс 230 пользователя соединен с уведомляющим объектом 220 для получения списка проектных проблем, скомпилированных уведомляющим объектом 220. Интерфейс 230 пользователя также предоставляет в уведомляющий объект 230 выбранную информацию, которая принимается в ответ на взаимодействие пользователя с различными частями интерфейса 230 пользователя. В качестве примера, в одном варианте осуществления интерфейс 230 пользователя предоставляет в уведомляющий объект 220 регулирующие директивы для форматирования электронной формы. Уведомляющий объект 220 использует эту регулирующую информацию, чтобы регулировать генерацию списков проектных проблем. В добавление, в одном варианте осуществления уведомляющий объект 220 также передает эту информацию в контролер 210 проекта формы для использования при регулировании клиентских объектов-контролеров (211-216) проекта формы в части ошибок, наличие которых требуется проверить.
Фиг.3 представляет собой схему одного варианта осуществления интерфейса 230 пользователя настоящей системы 200 для идентификации проектных проблем в электронных формах. В представленном на фиг.3 варианте осуществления интерфейс 230 пользователя состоит из фрейма 331 приложения, области 332 проектирования, диалоговых окон 333 и панели 334 задач контролера проекта.
На фиг.3 фрейм 331 приложения представляет собой область верхнего уровня, где все элементы интерфейса 230 пользователя могут отображаться пользователю. Каркас 331 приложения подходит для включения в его состав других элементов интерфейса пользователя, таких как известные элементы в типичных вычислительных окружениях для графических интерфейсов пользователя. Диалоговые окна 333 используются для выполнения различных функций, таких как предоставление пользователю информации, вывод пользователю запросов на предоставление информации, предоставление пользователю выбираемой ссылки или некоторая комбинация этих и других известных применений диалоговых окон. Область 332 проектирования интерфейса 230 пользователя предназначена для проектирования электронной формы. Область 322 проектирования отображает электронную форму и также используется для предоставления возможности взаимодействия с пользователем. Панель 334 задач контролера проекта в интерфейсе 230 пользователя предназначена для отображения проектных проблем, таких как предупреждения и потенциальные проектные ошибки, которые были идентифицированы в электронной форме, разрабатываемой в области 332 проектирования.
Фиг.4 представляет собой схему одного варианта осуществления фрейма 331 приложения, в котором используется настоящая система 200 для идентификации проектных проблем в электронных формах. Каркас 331 приложения с фиг.4 иллюстрирует примеры представлений выпадающего меню 410 и панели 420 инструментов, основанной на иконках. Меню 410 и панель 420 инструментов используются совместно с областью 332 проектирования и панелью 334 задач контролера проекта. Пустая область 332 проектирования формы с фиг.4 представляет собой изображение, которое еще не содержит элементов электронной формы. На фиг.4 область 334 задач контролера проекта показана без каких-либо предупреждений или потенциальных проектных ошибок. Функциональные возможности, связанные с вариантом осуществления области 334 задач контролера проекта, описаны более подробно ниже со ссылкой на фиг.9A, 9B и 9C.
В следующем описании подробно изложен порядок работы настоящей технологии для идентификации проектных проблем в электронной форме. Ссылаясь на фиг.5 и 6, схемы 500 и 600 последовательности операций иллюстрируют примеры этапов, используемых различными вариантами осуществления настоящей технологии для идентификации проектных проблем в электронных формах. Схемы 500 и 600 последовательности операций включают в себя процессы, которые в различных вариантах осуществления выполняются процессором под управлением читаемых и выполняемых компьютером инструкций. Читаемые и исполняемые компьютером инструкции хранятся, например, в средствах хранения информации, таких как используемая компьютером энергозависимая память 108, используемая компьютером энергонезависимая память 110 и/или блок 112 хранения данных с фиг.1. Читаемые и исполняемые компьютером инструкции используются, чтобы управлять или работать вместе с, например, процессором 106A или процессорами 106A, 106B и 106C с фиг.1. Несмотря на то что в схемах 500 и 600 последовательности операций раскрыты конкретные этапы, эти этапы являются лишь примерами. То есть варианты осуществления хорошо подходят для выполнения различных других этапов или вариаций этапов, указанных в схемах 500 и 600 последовательности операций. Очевидно, что этапы в схемах 500 и 600 последовательности операций могут быть выполнены в порядке, отличающемся от показанного, и что могут быть выполнены не все этапы из схем 500 и 600 последовательности операций.
Ссылаясь на схему 500 последовательности операций с фиг.5, на этапе 502 настоящая технология для идентификации проектных проблем в электронных формах принимает выбранную пользователем среду выполнения, которую требуется применить к электронной форме. Среда выполнения представляет собой выбор совместимости, выполняемый пользователем посредством интерфейса 230 пользователя, причем он определяет, в каких средах предполагается применять электронную форму. Это важный выбор, поскольку каждая среда выполнения может предлагать различный набор свойств приложения, которые будут использоваться с электронной формой. Кроме того, каждый выбор среды выполнения, по существу, налагает различные группы требований для конструирования электронной формы.
Например, среда выполнения, как правило, специфицирует платформу, на которой предполагается использовать электронную форму, например персональный компьютер, сервер или электронную форму с web-доступом, в которую данные вводятся из удаленного местоположения. Прием выбора среды выполнения регулирует идентификацию проектных проблем в электронной форме. В одном варианте осуществления настоящая технология для идентификации проектных проблем в электронных формах выводит пользователю запрос среды выполнения в качестве начального этапа процесса проектирования электронной формы. Принятая среда выполнения является одним из множества регулирующих директив, которые управляют набором правил, используемых для проверки потенциальных проектных ошибок, которые могут возникнуть в течение проектирования электронной формы. В одном варианте осуществления среда выполнения принимается в ответ на пользовательский выбор, который выполняется в любой момент в течение процесса проектирования электронной формы. Это полезно в тех случаях, когда пользователь может изменить выбранную среду выполнения после начала проектирования электронной формы. Такой подход также предоставляет возможность пользователю видеть типы проектных проблем, которые могут возникнуть, если электронная форма, спроектированная для одной среды выполнения, используется в другой среде выполнения.
На фиг.7 показана схема одного варианта осуществления диалогового окна 700 настоящей системы 200 для идентификации проектных проблем в электронных формах. Диалоговое окно 700 представляет собой пример диалогового окна, которое может быть представлено, чтобы запросить у пользователя информацию в начале процесса проектирования электронной формы. Выбираемая область 705 предоставляет возможность пользователю сделать выбор, который инициирует проектирование нового шаблона электронной формы. Выбираемая область 705 содержит область 710, которая запрашивает у пользователя выбор ввода совместимости из выпадающего меню, которое содержит множество сред, для совместимости с которыми может быть спроектирована электронная форма. Выбор совместимости может содержать среду выполнения, версию программы проектирования электронных форм, для совместимости с которой будет спроектирована электронная форма, или некоторую комбинацию этих опций. Выбираемая область 705 также содержит область 720, которая запрашивает у пользователя ввод из множества выбираемых иконок. Каждая выбираемая иконка в области 720 предоставляет возможность выбора источника данных для электронной формы. Источниками данных являются такие локации, как web-служба, база данных, Расширяемый Язык Разметки (XML) и т.п.
Одна область 730 выбора ввода предоставляет пользователю возможность открыть шаблон электронной формы из любого источника из множества выбираемых источников. Еще одна область 740 выбора ввода предоставляет пользователю ссылку на выбираемый список электронных форм, которые могут быть заполнены. После выполнения выборов ввода пользователь нажимает кнопку 750 OK, чтобы закрыть диалоговое окно 700 и перейти к выбранным действиям. Альтернативно, пользователь может выбрать кнопку 760 Отменить, чтобы закрыть диалоговое окно 700 и продолжить без вовлечения выбранных действий.
На фиг.8 показана схема одного варианта осуществления диалогового окна 800 настоящей системы 200 для идентификации проектных проблем в электронных формах. Диалоговое окно 800 представляет собой еще один пример диалогового окна, представляемого, чтобы запросить у пользователя информацию. Диалоговое окно 800 хорошо подходит для предоставления возможности пользователю делать выборы относительно проекта электронной формы в любой момент в течение процесса проектирования электронной формы. Выбираемая область 810 запрашивает у пользователя выбор совместимости времени выполнения из выпадающего меню. Выбор совместимости времени выполнения содержит: среду выполнения, для работы в которой будет спроектирована электронная форма, версию программы проектирования электронных форм, для совместимости с которой будет спроектирована электронная форма, или некоторую комбинацию этих двух опций. Выбираемая область 820 является конкретным примером класса выбираемых областей для обеспечения возможности проверки совместимости, которая опционально может быть включена в состав диалогового окна 800. Как показано, выбираемая область 820 запрашивает пользователя отметить или отменить отметку выбора, который приведет к генерации отчетов, в которых приводится список проблем совместимости структуры, относящихся к предыдущим версиям программы проектирования электронных форм. После выполнения выборов ввода пользователь нажимает кнопку 830 OK, чтобы закрыть диалоговое окно 800 и перейти к выбранным действиям. Альтернативно, пользователь может выбрать кнопку 840 Отменить, чтобы закрыть диалоговое окно 800 и продолжить без вовлечения выбранных действий.
Ссылаясь вновь на фиг.5, на этапе 504 настоящая технология для идентификации проектных проблем в электронных формах выполняет проверку проекта электронной формы. Проверка проекта формы идентифицирует состояния потенциальной проектной ошибки, которые являются или могут стать проектными проблемами электронной формы. В одном варианте осуществления проверка проекта формы выполняется автоматически в ответ на действия пользователя, которые могут изменить форму так, что появляется вероятность возникновения потенциальных проектных ошибок, которые ранее не были идентифицированы. Например, после импорта документа электронной формы автоматически выполняется проверка проекта формы, чтобы идентифицировать потенциальные проектные ошибки, которые могут возникнуть в результате импорта файла. В еще одном варианте осуществления пользователь также может селективно инициировать проверку проекту формы. Селективная инициация выполняется, например, в ответ на взаимодействие пользователя с кнопкой обновления, которая предоставлена в части интерфейса 230 пользователя. Инструмент селективного обновления полезен для обновления списка проектных проблем после того, как в проектируемой электронной форме были сделаны изменения.
Проверка проекта формы выполняется посредством множества отдельных объектов-контролеров проекта формы (211-216 с фиг.2). Каждый отдельный объект-контролер проекта формы (например, 211) выделен для проверки электронной формы в части одной категории или источника ошибок. В одном варианте осуществления объекты-контролеры 211-216 проекта формы управляются так, чтобы выполнять проверку на проектные ошибки по правилам, которые соответствуют установленной регулирующей директиве среды выполнения. В еще одном варианте осуществления некоторые объекты-контролеры проекта управляются так, чтобы выполнять проверку на ошибки, такие как ошибки времени выполнения, тогда как другие объекты-контролеры проекта следуют другим регулирующим директивам и проверяют на наличие иных ошибок. В других вариантах осуществления в добавление к среде выполнения другие регулирующие директивы управляют проектными ошибками, которые были проверены и идентифицированы различными объектами-контролерами 211-216 проекта.
В одном варианте осуществления список клиентских объектов-контролеров 211-216 проекта формы, зарегистрированных в контролере 210 проекта формы, является расширяемым. Расширяемость предоставляет возможность пользователю добавлять дополнительные клиентские объекты-контролеры проекта, которые не являются частью исходного набора объектов-контролеров проекта, поставленных с программным обеспечением контролера проекта электронной формы. Такой вариант осуществления представляет возможность добавления новых функциональных возможностей. В одном варианте осуществления расширяемость также обеспечивает возможность добавления объектов-контролеров проекта, спроектированных третьей стороной и сконфигурированных так, чтобы работать с программным обеспечением для проектирования электронных форм.
В одном варианте осуществления клиентские объекты-контролеры 211-216 проекта состоят из статических объектов-контролеров проекта формы и динамических объектов-контролеров проекта формы. Статические объекты-контролеры проекта формы, такие как контролер 215 ошибок импорта, выполняют проверку структуры только в ответ на событие, такое как импорт файла или вложения. Впоследствии, когда выполняются проверки обновления, статические объекты-контролеры проекта выполняют только проверку сгенерированного списка проектных проблем и удаляют ошибки и предупреждения, которые больше не применимы. Динамические объекты-контролеры проекта формы, такие как контролер 212 обратной совместимости, проверяют на наличие ошибок, которые могут возникнуть в различные моменты и в различных местах в структуре электронной формы, в противоположность ошибкам, которые возникают только в определенных точках процесса проектирования, например при создании или публикации. В одном варианте осуществления динамические объекты-контролеры проекта формы выполняют полную проверку проекта электронной формы каждый раз, когда они используются для проверки на наличие проектных ошибок или для обновления списка проектных проблем, который уже был сгенерирован.
На этапе 506 с фиг.5 настоящая технология для идентификации проектных проблем в электронных формах генерирует список проектных проблем, идентифицированных посредством проверки проекта формы. Список потенциальных проектных ошибок генерируется уведомляющим объектом 220. Список проектных проблем состоит из потенциальных проектных ошибок и предупреждений, которые хранятся в уведомляющем объекте 220. В одном варианте осуществления этот список структурирован по категориям, причем каждая категория содержит списки соответствующих потенциальных проектных ошибок и предупреждений. Например, в одном варианте осуществления каждая категория в сгенерированном списке соответствует непосредственно одному или более объектам-контролерам 211-216 проекта, каждый из которых используется для выполнения проверки для определенной категории или источника ошибок. Например, одна категория в сгенерированном списке ошибок содержит проектные проблемы времени выполнения, которые соответствуют контролеру 211 совместимости времени выполнения. Еще одна категория содержит проблемы обратной совместимости, которые соответствуют контролеру 212 обратной совместимости. Другие категории содержат проектные проблемы, которые соответствуют другим объектам-контролерам проекта. В одном варианте осуществления, в котором используется этот способ генерации списка ошибок, подразделенного на категории, упомянутый список генерируется с одной категорией ошибок, соответствующих каждому объекту-контролеру 211-216 проекта. В таком варианте осуществления одна потенциальная проектная ошибка или предупреждение, которое было идентифицировано посредством (или относится к) более чем одного объекта-контролера 211-216 проекта, появляется в списке несколько раз под каждой категорией, к которой он относится.
На этапе 508 с фиг.5 настоящая технология для идентификации проектных проблем в электронных формах отображает список проектных проблем в интерфейсе пользователя. Список проектных проблем, который состоит из предупреждений и потенциальных проектных ошибок и генерируется уведомляющим объектом 220, отображается так, чтобы пользователь мог видеть данный список. Если список проектных проблем генерируется в категориях согласно вышеописанному порядку, то отображаемый список проектных проблем подразделяется на категории проектных проблем. В таком варианте осуществления каждая категория из множества категорий проектных проблем соответствует, по меньшей мере, одному из множества объектов-контролеров 211-216 проекта, который имеет идентифицированное предупреждение или потенциальную проектную ошибку. Отображение подразделенного таким образом списка проектных проблем помогает пользователю при определении того, какое значение имеет конкретное предупреждение или потенциальное состояние проектной ошибки относительно разрабатываемой электронной формы.
В одном варианте осуществления список проектных проблем отображается в одной области 334 задач контролера проекта в фрейме 331 приложения интерфейса 230 пользователя (фиг.3 и 4). Отображение идентифицированных проектных проблем в одной области интерфейса 230 пользователя предоставляет пользователю единообразное средство для просмотра и взаимодействия с предупреждениями и потенциальными проектными ошибками, которые идентифицируются как проектные проблемы при проектировании электронной формы. Это единое отображение также служит в качестве единой стартовой точки для исправления состояний, которые вызывают идентификацию, уведомление и отображение этих проектных проблем. Пример такого отображения показан на фиг.9А.
Фиг.9А представляет собой схему одного варианта осуществления области 334 задач контролера проекта настоящей системы 200 для идентификации проектных проблем в электронных формах. На фиг.9A идентифицированы несколько подобластей области 334 задач контролера проекта. Область 910 предоставляет индикатор выбора совместимости, связанного с разрабатываемой электронной формой. Область 910 также служит в качестве выбираемой пользователем ссылки на диалоговое окно, такое как диалоговое окно 800, которое предоставит пользователю возможность инициировать изменение выбора совместимости в любое время в течение процесса проектирования формы.
Выбираемая область 920 предоставляет визуальное отображение проектных проблем, которые были идентифицированы в разрабатываемой электронной форме. Выбираемая область 920 подразделена на категории проектных проблем, как показано заголовками 930 и 940 категорий проектных проблем. Заголовок 930 категории связан с объектом-контролером 211 проекта (фиг.2), а заголовок 940 категории связан с объектом-контролером 212 проекта (фиг.2). Несмотря на то что на фиг.9А показано две категории, в других вариантах осуществления может быть представлено большее или меньшее количество категорий в зависимости от количества категорий идентифицированных проектных проблем, которые выбраны для отображения. Элементы 931-935 представляют связанные с категорией 930 проектные проблемы, которые могут быть выбраны пользователем. Элемент 941 представляет связанную с категорией 940 проектную проблему, которая может быть выбрана пользователем. Пользователь прокручивает перечисленные категории и проектные проблемы путем взаимодействия с полосой 945 прокрутки. Если пользователь нажимает кнопку 950 обновления, то обновляется проверка проекта электронной формы и, соответственно, обновляются отображенные проектные проблемы в области 920. Когда пользователь нажимает кнопку 960 опций, ему предоставляется возможность выбирать опции отображения ассоциированных проектных проблем, отображаемых в области 920. В одном варианте осуществления один или более цифровых индикаторов типа счетчика (не показаны) отображаются в области 334 задач контролера проекта, чтобы предоставить пользователю оперативное визуальное представление количества проектных проблем, потенциальных проектных ошибок или предупреждений. Подобный индикатор типа счетчика предоставляет пользователю возможность быстро определять, устранило ли выполненное действие проектные проблемы из отображенного списка.
Один вариант осуществления области 334 задач контролера проекта предоставляет возможность предотвращения отображения, по меньшей мере, одной категории проектных проблем в ответ на выбор пользователя. Это полезно для уменьшения количества отображаемых проектных проблем. Также полезно, если пользователь решил, что определенная категория проектных проблем несущественна или была достаточно обработана и, соответственно, более не требует отображения. Еще один вариант осуществления предоставляет возможность предотвращения отображения в области задач поднабора проектных проблем, по меньшей мере, одной категории проектных проблем в ответ на выбор пользователя. Предотвращение отображения категории проектных проблем полезно, например, если пользователь решает, что определенный тип предупреждений или потенциальных проектных ошибок нелогичен или уже обработан, но продолжает отображаться, как, например, в случае, когда статический объект-контролер проекта формы один раз генерирует список обновлений и динамически не удаляет предупреждения по мере того, как пользователь исправляет указанные проблемы. Селективное предотвращение отображения конкретного поднабора предупреждений или ошибок, которые могут возникнуть в одной категории или нескольких категориях, предотвращает дальнейшее отображение выбранного поднабора без деактивации отображения всей категории проблем. Использование этой опции селективного предотвращения предоставляет возможность пользователю структурировать отображение проектных проблем, так что отображаются только важные проектные проблемы. Фиг.9B и 9C иллюстрируют опциональное предотвращение, описанное выше.
Фиг.9В представляет собой схему одного варианта осуществления области 334 задач контролера проекта настоящей системы 200 для идентификации проектных проблем в электронных формах. Фиг.9B иллюстрирует пример диалогового окна 970 опций, которое отображается, когда пользователь нажимает кнопку опций 960. Элементы 910, 920, 930, 940, 950 и 960 аналогичны элементам, описанным на фиг.9A. В показанном варианте осуществления диалоговое окно 970 опций предоставляет пользователю возможность селективно активировать или деактивировать отображение нескольких категорий 976-979 предупреждений путем добавления или удаления проверки в выбираемом окне 971-974, находящемся рядом с каждым предупреждением 976-979. Как показано, был отменен выбор области 974, чтобы деактивировать отображение предупреждений 979 обратной совместимости. Когда пользователь нажимает кнопку 975 ОК, выполняется отмена этого выбора.
Очевидно, что в других вариантах осуществления пользователю может быть отображено большее или меньшее количество выбираемых опций. В других вариантах осуществления диалоговое окно, такое как диалоговое окно 970, также используется для расширения уровней предупреждений и/или ошибок, которые отображаются. Кроме того, в одном варианте осуществления категории 976-979 служат в качестве выбираемых текстовых ссылок. Например, при выборе выбираемой текстовой ссылки 976 пользователь направляется к области для селективного выбора опций, таких как частота представления предупреждений или ошибок импорта, или для выбора опций, чтобы селективно активировать или деактивировать отображение поднаборов категорий предупреждений и ошибок.
Фиг.9С представляет собой схему одного варианта осуществления области 334 задач контролера проекта настоящей системы 200 для идентификации проектных проблем в электронных формах. Фиг.9C иллюстрирует пример результата, который проистекает при вводе опции отмены выбора, описанной в привязке к фиг.9B. Элементы 910, 920, 930-935, 940, 950 и 960 аналогичны элементам, описанным на фиг.9A. Тем не менее, категория 940 проектных проблем и выбираемая проектная проблема 941 больше не отображаются из-за того, что имела место отмена выбора предупреждений обратной совместимости.
Проектные проблемы состоят из предупреждений и потенциальных проектных ошибок, которые имеют широкий спектр источников. Как упоминалось выше, проектные проблемы могут быть отображены в категориях, относящихся к этим источникам. Тем не менее, независимо от источника каждое предупреждение или потенциальная проектная ошибка в списке проектных проблем также классифицируется по трем типам проектных проблем: проектные проблемы, относящиеся к отображению, проектные проблемы, относящиеся к узлу, и глобальные проектные проблемы.
Тип классификации проектных проблем регулирует тип информации, которая представляется пользователю для описаний заданной проектной проблемы. Связанные с отображением проектные проблемы представляют собой видимые области в электронной форме, и, соответственно, пользователь может видеть этот тип ошибки в электронной форме. Например, если изображение не импортируется должным образом, пользователь может просмотреть область 332 проектирования программы проектирования электронной формы и увидеть, что импортированное изображение не отображается должным образом в разрабатываемой электронной форме.
Относящиеся к узлу проблемы обычно происходят в схеме данных за отображением или в свойствах, таких как логика, связанная с узлом в электронной форме. Относящаяся к узлу ошибка или предупреждение может быть описана пользователю, но она не может быть выведена как визуальная ошибка в электронной форме. Например, роль пользователя может быть связана с конкретным узлом. Тем не менее, если выбранная роль пользователя является такой, что она была недоступна в предыдущей версии программы для проектирования электронных форм, то возникает потенциальная ошибка обратной совместимости, которая приводит к несовместимости этого узла электронной формы при ее использовании в предыдущей версии программы. Несмотря на то что относящаяся к узлу ошибка представляет потенциальную проблему с этим узлом, она визуально не проявляется, как, например, дефект в электронной форме, отображенной в области 332 проектирования.
Глобальные проектные проблемы являются элементами, такими как несовместимые функциональные особенности, связанные со всей электронной формой. Например, выбор настройки, которая предоставляет возможность передачи заполненной формы посредством электронной почты. Если среда выполнения определяет, что разрабатываемая электронная форма не поддерживает передачу по электронной почте, то эта настройка является глобальной ошибкой, которая может препятствовать использованию всей формы. Глобальная ошибка может быть описана для пользователя, но она визуально не появляется как дефект в электронной форме, отображенной в области 332 проектирования.
Ссылаясь на фиг.5, в одном варианте осуществления на этапе 510 настоящая технология для идентификации проектных проблем в электронных формах выбирает элемент управления в области проектирования формы в ответ на взаимодействие пользователя с одной из отображенных проектных проблем. Этот этап описывает взаимодействие пользователя с относящейся к отображению проектной проблемой. Это взаимодействие пользователя проводит к тому, что интерфейс 230 пользователя (фиг.2) программы проектирования электронных форм автоматически выбирает элемент управления, связанный с относящейся к отображению проектной проблемой, с которой взаимодействовал пользователь. Элемент управления выбирается в электронной форме, отображаемой, например, в области проектирования программы проектирования электронных форм. Выбор элемента управления переводит его в состояние для манипуляции пользователем.
В одном варианте осуществления каждая проектная проблема, отображенная в области 334 задач контролера проекта, содержит ссылку на дополнительную информацию. В результате взаимодействия с отображенным предупреждением или потенциальной проектной ошибкой в определенном порядке, таком как путем использования устройства управления с курсором для выполнения на нем щелчка, может быть автоматически инициирован ряд других действий. Природа других, автоматически инициируемых, действий регулируется посредством классификации проектной проблемы, с которой выполняется взаимодействие, и информации, доступной для представления. Фиг.10 иллюстрирует пример элемента управления, выбранного в ответ на взаимодействие пользователя с отображенной проблемой, связанной с отображением. Подробное описание фиг.10 изложено ниже.
На этапе 512 с фиг.5 в одном варианте осуществления настоящая технология для идентификации проектных проблем в электронных формах прокручивает выбранный элемент управления, чтобы привести его в видимую область. Этот этап описывает еще одно автоматическое действие, инициируемое посредством взаимодействия пользователя с относящейся к отображению проектной проблемой. Если выбранный элемент управления находится вне видимой области экрана, то автоматическая прокрутка приведет его в видимую область путем регулирования отображенной части формы так, что выбранный элемент управления переходит в видимую область 332 проектирования. Если выбранный элемент управления уже находится в видимой части экрана в области 332 проектирования, автоматическая прокрутка меняет положение выбранного элемента управления так, что он может с легкостью просматриваться пользователем, который может взаимодействовать с ним. Это может включать в себя такие действия, как центровка выбранного элемента управления в области 332 проектирования или позиционирование выбранного элемента управления в верхней части области 332 проектирования. В некоторых случаях, когда выбранный элемент управления уже должным образом расположен в области 332 проектирования интерфейса пользователя, автоматическая прокрутка только подтверждает положение элемента управления и не предпринимает дальнейших действий. Автоматическая прокрутка выбранного элемента управления на электронной форме в видимую часть области 32 проектирования полезна, поскольку она представляет автоматически выбранный элемент управления в видимой части области 332 проектирования. Автоматическая прокрутка к выбранному элементу управления электронной формы экономит время, которое пользователь потратил бы, прокручивая область 332 проектирования интерфейса пользователя в процессе поиска элемента управления, связанного с состоянием ошибки. Фиг.10 иллюстрирует пример элемента управления, к которому прокручивается область проектирования, в ответ на взаимодействие пользователя с отображенной проблемой, связанной с отображением.
На этапе 514 с фиг.5 в одном варианте осуществления настоящая технология для идентификации проектных проблем в электронных формах выделяет выбранный элемент управления, чтобы предоставить визуальный индикатор потенциальной проектной ошибки. Этот этап описывает еще одно автоматическое действие, инициируемое посредством взаимодействия пользователя с относящейся к отображению проектной проблемой. Автоматическое выделение элемента управления в ответ на взаимодействие пользователя с приведенной в списке проектной проблемой помогает пользователю найти элемент управления в, например, области проектирования в интерфейсе пользователя. Выделение может представлять собой изменение цвета выбранного элемента управления на цвет, отличающийся от цвета других элементов управления. Выделение выбранного элемента управления также может содержать автоматическое выполнение других действий, чтобы привлечь внимание пользователя к этому элементу управления. Выделение действий может содержать автоматические операции, такие как приведение выбранного элемента управления к миганию, увеличению размера или представлению иных визуальных идентификаторов для привлечения внимания пользователя.
На этапе 516 с фиг.5 в одном варианте осуществления настоящая технология для идентификации проектных проблем в электронных формах представляет диалоговое сообщение, описывающее потенциальную проектную ошибку. Этот этап описывает еще одно автоматическое действие, инициируемое посредством взаимодействия пользователя с относящейся к отображению проектной проблемой. В одном варианте осуществления диалоговое сообщение автоматически появляется в интерфейсе пользователя в ответ на взаимодействие пользователя с приведенной в списке проектной проблемой. Диалоговое сообщение, которое может возникнуть в форме диалогового окна, предоставляет пользователю более детальную информацию о причине, по которой предупреждение или состояние потенциальной проектной ошибки было идентифицировано как проектная проблема. В одном варианте осуществления диалоговое сообщение располагается рядом с выбранным элементом управления. В одном варианте осуществления диалоговое сообщение также предоставляет предложение относительно того, как исправить состояние, которое послужило причиной идентификации предупреждения или потенциальной проектной ошибки. В одном варианте осуществления представляется более одного диалогового сообщения. Например, небольшое сообщение представляется в окне рядом с выбранным элементом управления, тогда как большее и более подробное сообщение представляется в отдельном диалоговом окне, расположенном где-нибудь внутри видимой области интерфейса пользователя. Фиг.10 иллюстрирует пример диалогового окна, представленного рядом с элементом управления в ответ на взаимодействие пользователя с показанной проблемой, связанной с отображением.
Как упомянуто выше, фиг.10 представляет собой схему одного варианта осуществления области 332 проектирования и области 334 задач контролера проекта настоящей системы 200 для идентификации проектных проблем в электронных формах. Фиг.10 иллюстрирует примеры действий, которые имеют место в ответ на взаимодействие пользователя с выбранной проектной проблемой 932, показанной в области 334 задач контролера проекта. Элементы 910-960 аналогичны элементам, описанным в привязке к фиг.9A, за исключением того, что выбираемый элемент 932 был выбран путем взаимодействия пользователя. Текст в выбираемом элементе 932 подчеркнут, чтобы показать выбор элемента 932. Выбираемый элемент 932 представляет собой связанную с отображением проектную проблему, которая относится к элементу управления рисунка, который не поддерживается.
Область 332 проектирования отображается вместе с областью 334 задач контролера проекта. Области 1010, 1020, 1030, 1040 и 1050 представляют части электронной формы, которая разрабатывается в области 332 проектирования. В ответ на взаимодействие пользователя с выбираемой проектной проблемой 932 интерфейс пользователя программы проектирования электронных форм автоматически выбрал область 1020, которая связана с областью рисунка, связанного с выбираемой проектной проблемой 932 (элемент управления рисунка не поддерживается). Маленькая иконка 1021 ошибки представляется как визуальный индикатор того, чтобы рисунок был импортирован в область 1020, но по некоторой причине не отображается должным образом. В добавление к выбору области 1020, область 1020 была автоматически прокручена в видимую часть области 332 проектирования, где она опционально выделяется (не показано). Кроме того, рядом с ней было автоматически представлено опциональное диалоговое окно 1060. Как показано на фиг.10, окно 1060 представляет собой небольшое сообщение, которое представлено в окне рядом с областью 1020 элемента управления и которое предоставляет пользователю дополнительные разъяснения относительно проектной проблемы, связанной с выбираемой областью 932 и элементом управления 1020.
В одном варианте осуществления в ответ на взаимодействие пользователя с отображенной глобальной проектной проблемой пользователю будет представлено диалоговое окно, дополнительно описывающее природу глобальной проектной проблемы. Фиг.11 иллюстрирует пример диалогового окна, представленного в ответ на взаимодействие пользователя с отображенной глобальной проблемой.
Фиг.11 представляет собой схему одного варианта осуществления области 332 проектирования и области 334 задач контролера проекта настоящей системы 200 для идентификации проектных проблем в электронных формах. Фиг.10 иллюстрирует примеры действий, которые имеют место в ответ на взаимодействие пользователя с выбранной проектной проблемой 931, показанной в области 334 задач контролера проекта. Элементы 910-960, идентичные элементам, описаны в привязке к фиг.9A с двумя исключениями. Во-первых, выбор совместимости в области 910 был изменен так, чтобы включать в себя использование уровня сервера в качестве требования совместимости для проектируемой формы. Во-вторых, выбираемый элемент 931 был выбран путем взаимодействия пользователя. Текст в выбираемом элементе 931 подчеркнут, чтобы показать выбор элемента 931. Выбираемый элемент 931 является глобальной проектной проблемой, которая относится к ролям пользователя, которые не поддерживаются в отображенной форме.
В области 332 проектирования области 1010, 1020, 1021, 1030, 1040 и 1050 идентичны областям, описанным в привязке к фиг.10, за исключением того, что область 1020 уже не выбрана. В ответ на взаимодействие пользователя с выбираемой проектной проблемой 931 диалоговое окно 1062 было автоматически открыто. Диалоговое окно 1062 предоставляет пользователю дополнительное описание глобальной проектной проблемы, связанной с выбираемой областью 931. Кроме того, диалоговое окно 1062 предоставляет пользователю предложение о том, как устранить ошибку, связанную с выбираемой проектной проблемой 931. Пользователь закрывает диалоговое окно 1062 путем нажатия кнопки 1063 ОК.
В одном варианте осуществления в ответ на взаимодействие пользователя с отображенной проектной проблемой, связанной с узлом, пользователю представляется диалоговое сообщение, дополнительно описывающее природу связанной с узлом проектной проблемы. Фиг.12 иллюстрирует пример диалогового окна, представленного в ответ на взаимодействие пользователя с отображенной проблемой, связанной с узлом.
Фиг.12 представляет собой схему одного варианта осуществления области 332 проектирования и области 334 задач контролера проекта настоящей системы 200 для идентификации проектных проблем в электронных формах. Фиг.12 иллюстрирует примеры действий, которые имеют место в ответ на взаимодействие пользователя с выбираемой проектной проблемой 934, показанной в области 334 задач контролера проекта. Элементы 910-960, идентичные элементам, описаны в привязке к фиг.9A с двумя исключениями. Во-первых, выбор совместимости в области 910 был изменен так, чтобы включать в себя использование уровня сервера в качестве требования совместимости для проектируемой формы. Во-вторых, путем взаимодействия пользователя был выбран выбираемый элемент 934, который отображает сообщение "Функция текущей роли пользователя не поддерживается". Текст в выбираемом элементе 934 подчеркнут, чтобы показать выбор элемента 934. Выбираемый элемент 934 представляет собой связанную с узлом проектную проблему, которая относится к отсутствию поддержки функции текущей роли пользования.
В области 332 проектирования, области 1010, 1020, 1021, 1030, 1040 и 1050 идентичны областям, описанным в привязке к фиг.10, за исключением того, что область 1020 уже не выбрана. В ответ на взаимодействие пользователя с выбираемой проектной проблемой 934 диалоговое окно 1064 было автоматически открыто. Диалоговое окно 1064 предоставляет пользователю дополнительное разъяснение о связанной с узлом проектной проблеме, которая относится к выбираемой области 934. Кроме того, диалоговое окно 1064 предоставляет пользователю предложение о том, как устранить ошибку, связанную с выбираемой проектной проблемой 934. Путем нажатия кнопки 1066 редактирования свойств, которая предоставлена в диалоговом окне 1064, пользователь переходит в области ввода, где свойства узла, связанные с выбираемой проектной проблемой 934, могут быть отредактированы пользователем, чтобы исправить идентифицированную проектную проблему. Пользователь закрывает диалоговое окно 1064 путем нажатия кнопки 1065 ОК.
На фиг.6 показана схема 600 последовательности операций, выполняемых согласно еще одному варианту осуществления настоящей технологии, для идентификации проектных проблем в электронных формах. Операции, указанные в схеме 600, функционируют тем же образом, что и операции, указанные в схеме 500, однако описание процессов различается, чтобы явно выделить преимущества настоящей технологии для идентификации проектных проблем в электронных формах.
На этапе 602 с фиг.6 настоящая технология для идентификации проектных проблем в электронных формах принимает регулирующие директивы для форматирования электронной формы. Этап 602 аналогичен этапу 502 со схемы 500 последовательности операций, в котором в интерфейсе 230 пользователя принимается выбранная пользователем среда выполнения. Тем не менее, прием регулирующих директив также содержит прием большего количества информации, чем только выбор среды выполнения. Прием регулирующих директив также содержит прием такой информации, как выбор источника данных для ввода данных в электронную форму, выбор версии программного обеспечения, для совместимости с которой разрабатывается электронная форма, а также прием информации, относящейся к тому, должны ли генерироваться уведомления о проблемах обратной совместимости в течение процесса проектирования формы.
Среда выполнения представляет собой место назначения, в котором ожидается использование формы, и она может представлять собой такую среду, как автономный компьютер, сервер, точка web-доступа или т.п. Среда выполнения может также содержать комбинацию этих типов сред. Источник данных для формы может представлять собой такой источник, как ввод пользователя автономного компьютера, web-служба, база данных или схема, такая как Расширяемый Язык Разметки (XML). Версия программного обеспечения, для совместимости с которой проектируется форма, определяет, какие проблемы совместимости идентифицируются в течение генерации электронной формы.
В одном варианте осуществления интерфейс 230 пользователя (фиг.2) запрашивает у пользователя ввести регулирующие директивы для форматирования электронной формы в качестве стартового условия процесса генерации формы. В одном варианте осуществления пользователь селективно вводит или изменяет регулирующие директивы для процесса генерации формы в любой момент в процессе генерации формы. В случае когда для некоторых или всех регулирующих директив не принимается какой-либо информации, применяются настройки по умолчанию.
На этапе 604 с фиг.6 настоящая технология для идентификации проектных проблем в электронных формах выполняет проверку проекта электронной формы. Проверка проекта формы выполняется множеством объектов-контролеров 211-216 проекта (фиг.2) с применением правил, соответствующих принятым регулирующим директивам. Этап 604 аналогичен этапу 504 с фиг.5 с одним исключением. Оно заключается в том, что контролеры 211-216 проекта формы на этапе 604 ограничены набором правил, который соответствует набору регулирующих директив, как описано в привязке к этапу 602. Принятые регулирующие директивы предоставляют больше информации, чем только среда выполнения, как описано для этапа 504. В силу более конкретных правил, которые проистекают из принятых регулирующих директив, контролеры 211-216 проекта формы, вероятно, идентифицируют большее количество потенциальных проектных ошибок или другие потенциальные проектные ошибки.
На этапе 606 схемы 600 последовательности операций с фиг.6 настоящая технология для идентификации проектных проблем в электронных формах генерирует список потенциальных проектных ошибок, идентифицированных по результатам проверки проекта формы. Список потенциальных проектных ошибок генерируется в уведомляющем объекте. Этот этап аналогичен этапу 506 схемы 500 последовательности операций, и он соответствует описанию этапа 506 с одним исключением. Оно заключается в том, что сгенерированный список состоит только из потенциальных проектных ошибок, а не большой категории проектных проблем, которая содержит не только потенциальные проектные ошибки, но и предупреждения. В других вариантах осуществления этап 606 расширен так, чтобы охватывать весь список проектных проблем, в который входят предупреждения и потенциальные проектные ошибки, идентифицированные по результатам проверки проекта формы.
На этапе 608 с фиг.6 настоящая технология для идентификации проектных проблем в электронных формах отображает список потенциальных проектных ошибок в единой области 334 задач контролера проекта (фиг.3 и 9А) интерфейса пользователя. Этап 608 аналогичен этапу 508 со схемы 500 последовательности операций, и отображение ошибок в единой области 334 задач контролера проекта интерфейса пользователя соответствует описанию проектных проблем, описанному в привязке к этапу 508 и фиг.9A.
Ссылаясь по-прежнему на этап 608, в одном варианте осуществления отображенный список потенциальных проектных ошибок также подразделен на категории ошибок, причем каждая из множества категорий ошибок соответствует, по меньшей мере, одному из множества объектов-контролеров 211-216 проекта (фиг.2). Один вариант осуществления также содержит функциональную возможность для предотвращения отображения, по меньшей мере, одной из категорий ошибок в области 334 задач контролера проекта. Предотвращение имеет место в ответ на выбор пользователя в диалоговом окне, связанном с областью задач или доступном из области задач, как описано в привязке к этапу 508 (фиг.5 и фиг.9B и 9C). Один вариант осуществления также содержит функциональную возможность для обновления отображения списка потенциальных проектных ошибок в области 334 задач контролера проекта в ответ на нажатие пользователем кнопки обновления, такой как кнопка 950 обновления (фиг.9A), которая доступна из области 334 задач контролера проекта или связана с ней. В варианте осуществления, где ошибки и предупреждения отображаются вместе в области 334 задач контролера проекта, кнопка 950 обновления также активирует обновление предупреждений в области задач.
На этапе 610 с фиг.6 настоящая технология для идентификации проектных проблем в электронных формах представляет диалоговое окно, содержащее специфический для конкретного контекста текст ошибки. Причем это диалоговое окно представляется в ответ на взаимодействие пользователя с одной из потенциальных проектных ошибок, отображенных в области 334 задач контролера проекта (фиг.3 и 9A). Как описано выше, ошибки классифицируются на следующие типы: относящиеся к отображению, относящиеся к узлу и глобальные. Несмотря на то что на разрабатываемой форме видны только ошибки, относящиеся к отображению, все три типа потенциальных ошибок могут быть описаны пользователю, например, путем связывания диалогового окна с отображенной ошибкой. Фиг.10, 11 и 12 и соответствующие описания предоставляют примеры диалоговых окон, представляемых в ответ на взаимодействие пользователя с относящимися к отображению, относящимися к узлу и глобальными проблемами и ошибками.
Несмотря на то что настоящее изобретение было описано в привязке к структурным особенностям и/или методологическим действиям, следует понимать, что объем, определенный в прилагаемой формуле изобретения, не ограничен конкретными особенностями или действиями, описанными выше. Скорее, описанные выше конкретные структурные особенности и действия раскрыты как примеры форм осуществления пунктов формулы изобретения.