Разработка СЭД: что сможет дать "Конструктор решений"
Использование решений-конструкторов не является чем-то новым – многие разработчики не раз говорили о том, что тот или иной продукт имеет функцию конструктора и позволяет на его основе создавать готовое ПО. Тем не менее, их возможности ограничены, и на деле продуктом такой работы становятся лишь весьма ограниченные по функционалу решения. Новый инструмент со старым называнием анонсировала компания "ДоксВижн", заявив, что в реальностиэто совершенно иной продукт, существенно отличающийся от своих предшественников. В чем же заключаются эти отличия и насколько новый "Конструктор решений" облегчит жизнь и интеграторам, и заказчикам?
Многие производители средств автоматизации бизнес-процессов заявляют о наличии различных продуктов, выполняющих функцию конструктора, т.е. позволяющих строить готовые приложения. Однако, как показывает практика, возможности таких решений ограничены – в основном они могут менять уже имеющиеся объекты или строить подобные приложения на их основе. Ранее в линейке решений компании "ДоксВижн" таким "конструктором" являлась "Универсальная карточка", с помощью которой строили решения "без программирования", например ServiceDesk.
В 2010 году"ДоксВижн" выпустила новый продукт "Конструктор решений" для СЭД DocsVision, позволяющий не только гибко настраивать уже имеющееся ПО, но и создавать абсолютно новые решения в любой предметной области.
Новый конструктор решений позволяет существенно сократить издержки на создание заказных решений и тиражных продуктов, а также расширяет сферу применения системы DocsVision на предприятиях.
Конструируем по-новому
В первую очередь, новый инструмент позволяет компаниям (как интеграторам, так и конечным пользователям) расширить предметные области, для которых можно создавать решения.Это достигается за счет возможности строить решения, точно отвечающие поставленной задаче, т.е. без "натяжки" на существующие объекты. Ведь если раньше все создаваемые карточки имели общую природу и можно было делать лишь им подобные, то теперь таких ограничений нет. Кроме того, за счет использования конструктора появляется возможность быстрого прототипирования (без программирования) решений любой сложности, что, в свою очередь, позволяет за достаточно короткий период времени создать реальную базу для обсуждения деталей с заказчиком. Помимо этого, новый инструмент сокращает сроки разработки, а также уменьшает затраты на нее. Компании получают возможность переиспользования любых созданных решений и их частей.
Конструктор имеет гибкий механизм настройки и модификации решений, а также удобный механизм распространения и большие возможности дальнейшей модификации решения после внедрения. Помимо всего прочего, отдельным преимуществом использования конструктора для конечных пользователей являются возможность самостоятельно создавать несложные решения без привлечения партнеров.
Среди основных технических достоинств конструктора – настраиваемая разметка (или дизайн) карточек, тонкая настройка прав доступа к операциям с помощью автомата состояний и ролевой модели, привязка пользовательского интерфейса к этапам жизненного цикла карточки, настройка стилей визуального оформления, интеграция с OfficeCommunicationServer, удобная скриптовая модель, позволяющая писать отклики на любые события, создавать общие методы и переменные, наследовать код и подключать внешние сборки, гибко настраиваемый механизм уведомлений (без использования Workflow), автоматически ведущаяся история операций в карточке, а также богатая объектная модель.
Перемены в разработке
Процесс разработки решения обычно состоит из четырех этапов: создания прототипа решения или пользовательского интерфейса, демонстрации его заказчику, доработки прототипа согласно замечаниям заказчика и создания решения на его основеи, наконец,внедрения решения вкупе с его настройкой в процессе внедрения. Сравним, как выглядел процесс разработки сложного решения раньше и что изменил конструктор. Возьмем случай, когда решение в старом варианте приходилось писать с нуля, поскольку возможностей универсальной карточки не хватало.
Этапы разработки сложного решения
Задачи | По-старому | С использованием "Конструктора решений" |
Прототипирование | ||
Создание прототипа UI | Рисование макета UI в продуктах а-ля Visio. Только UI | Создание сразу работающего с данными прототипа, а не просто прототипа UI Быстро. Не требует ресурса программиста |
Создание решения | ||
Доработка прототипа UI до работающего образца | Программирование UI карточек в VisualStudio. Под силу только программисту | Изменение ранее разработанного прототипа. Быстро. Не требует ресурса программиста |
Реализация чтения/сохранения данных | Программирование работы с данными. Трудоемко. Под силу только программисту | Привязка ранее разработанного UI к схемам данных карточек. Быстро. Не требует ресурса программиста |
Описание бизнес-логики | Программирование. Трудоемко. Под силу только программисту | Написание скриптов с использованием высокоуровневой объектной модели. Можно подключать готовые сборки. Может выполнять непрограммист |
Создание и привязка различных UI для различных видов, состояний, пользователей | Программирование. Сложно. Под силу только программисту | Решается настройками. Легко. Не требует ресурса программиста |
Создание инсталляционного пакета | Программирование инсталляции, специальный язык. Трудоемко. Под силу только программисту | Создание инсталляции с помощью специального Мастера (Визарда). Быстро. Не требует ресурса программиста |
Настройка автоматов состояний | Нет средств настройки | Настраивается с помощью справочника |
Настройка прав доступа в зависимости от состояний | Нет средств настройки | Настраивается с помощью справочника |
Внедрение решения | ||
Настройка прав доступа в зависимости от ролей пользователей | Ограничена. Возможна только настройка на уровне дескрипторов безопасности для пользователей и групп | Возможна также настройка прав доступа с помощью справочника к конкретным операциям как для статических, так и для контекстно-зависимых ролей |
Настройка уведомлений | Через создание бизнес-процессов. Трудоемко | Настраивается с помощью шаблонов уведомлений. Быстро. Не требует ресурса программиста |
Модификация внедренного решения на стороне заказчика | Нет средств модификации | Доступны все возможности разработки и настройки |
Источник: "ДоксВижн", 2011
Таким образом, при использовании конструктора разработка решения становится быстрее и проще, поскольку для большинства операций программным обеспечением предусмотрены специальные средства. Качество "итогового продукта"улучшается, так как уменьшается количество уникального для решения кода. Кроме того, увеличивается соответствие решения ожиданиям пользователей - за счет возможности выполнения практически всех работ аналитиками или инженерами по внедрению, являющимися специалистами в предметной области.
Помимо всего прочего, как уже говорилось, "Конструктор решений" позволяет существенно расширить возможности настройки, а также разрешает модификацию уже внедренного решения, причем осуществляется это теми же самыми средствами, какими ведется разработка.
Короткая ссылка на материал: //cnews.ru/link/a2585