четверг, 20 января 2011 г.

ARS Знакомство

Содержание

  1. Знакомство
  2. Формы
  3. Меню
  4. Активные ссылки
  5. Фильтры и эскалации
Прошло полторы недели с тех пор как я устроился на новую работу в T-Sistems CIS. С того момента, я, собственно и начал изучать эту новую для себя технологию. Предлагаю вам изучить ее вместе со мной, по мере написания/чтения новых записей в моем блоге. Упоминаний в рунете о ней я нашел крайне мало, поэтому решил восполнить брешь. Итак, начнем.

Что это такое?

В принципе, этот параграф вы можете прочитать и в английской википедии (хотя материал все-таки и различается: тут более углублен, в вики же более поверхностный, зато больше охват) так что он к прочтению желателен. Для начала, расшифруем аббревиатуру: Action Request System. Правда адекватного предназначению системы перевода я дать так и не смог. Чтож, разберем функционал по косточкам и каждый сам для себя решит, как же правильно перевести это название системы действий по запросам. Создала ее американская компания BMC. Это приложение, имеющее клиент-серверную архитектуру. Окружение клиента можно разделить на два типа: для пользователей (непосредственно, среда, которая рисует все формочки, берет данные и так далее) и для разработчиков - IDE на платформе Eclipse, в которой и разрабатываются все пользовательские приложения.

Структура AR System


Структура Action Request System (ARS)
Рассматривая схему с точки зрения пользователя (представлена выше), архитектуру ARS можно разбить на 4 уровня:
  1. Уровень клиента - либо клиентское приложение из состава Remedy User либо веб-клиент, не требующий установки дополнительного ПО;
  2. Mid Tier - уровень, появившийся сравнительно недавно в связи с добавлением веб-клиента, который обеспечивает связь веб-браузера с сервером AR System;
  3. Сервер ARS - непосредственно само серверное приложение, занимающееся обработкой запросов пользователей;
  4. Уровень данных - базы данных, в которых ARS хранит всю информацию о созданных на ее основе приложений;
Ключевые понятия здесь - это так называемые:
  • формы;
  • меню;
  • активные ссылки;
  • фильтры;
  • эскалации.
На основе этих элементов создаются и остальные, перечисленные в вики по ссылке выше (гайды, приложения и так далее).
То есть, набор форм, ссылок, фильтров и эскалаций можно номинально назвать приложением. Разберем все эти непонятные слова по пунктам.

Формы

Формы - это как ни странно самые что ни на есть классические формы в понимании визуального программирования. То есть, некое окно на экране, где могут быть размещены многочисленные управляющие элементы, такие как: кнопки, текстовые поля, выпадающие списки, чекбоксы и так далее. Формы бывают нескольких видов, только один из которых предназначен для хранения данных, записываемых в ее поля. Но об этом будет рассказано в более поздних записях на эту тему. В википедии показана картинка-пример формы, она же приведена ниже.
Пример формы в Action Request System (ARS)

Меню

Это не те привычные менюшки, которые вы привыкли видеть в приложениях (Файл->Действие, Помощь->О программе и так далее). Эти меню больше похожи на выпадающие списки, после щелчка по элементу которого, в поле, привязанном к данному меню будет введено значение выбранного элемента. Например есть текстовое поле:
При клике на кнопку все-таки появится менюшка привычного всем вида, НО рядом с кнопкой. К примеру, мы хотим ввести в туда страну, причем не ее имя, а ее условный код (uk, rus, fr, ge). Меню, к примеру, двух уровней, где первый уровень - материк, а второй непосредственно страна. В выпадающем меню будут выведены привычные нам имена (United Kingdom, Russia, Germany), а при клике по пункту - появится его короткое обозначение. Таким образом, получается что-то между обычным меню и выпадающим списком.

Активные ссылки

Вот тут название довольно странное. Почему они так названы (Active Links) доподлинно известно, наверное, только небольшому кругу разработчиков из BMC Software. Нам же остается строить догадки. Впрочем, суть их довольно проста. Это некоторые объекты, которые срабатывают на действие пользователя, на которое они привязаны:
  • щелчок по кнопке;
  • сохранение информации в форме;
  • наведение курсора мыши на метку чекбокса;
  • и так далее.
То есть, если в предыдущем пункте мы могли создать красивую форму (все зависит исключительно от ваших творческих способностей), то теперь эта форма "ожила" и может совершать какие-то действия. Например, выдать ошибку о том что балда-юзер не заполнил все необходимые поля в форме.

Фильтры

Фильтры объяснить проще всего людям, знакомым с базами данных как триггеры, то есть, это по сути то же самое что и активные ссылки, но выполняющиеся постфактум на стороне сервера. Людям, не знакомым с базами данных можно дать следующее объяснение. Представьте что вы дегустируете отличное французское вино с целью определить сорт и урожай винограда, но вам не показывают ни бутылку ни этикетку. Когда вы вдыхаете букет вина это можно сравнить с активной ссылкой, а когда вы сделали глоток и уже почувствовали вкус - сработал фильтр (вкусовые рецепторы), который рассказал вам о вкусе этого вина. Конечно, опытные сомелье начнут со мной спорить, доказывая что с задачей можно справится и просто вдохнув аромат, но зачем чесать правое ухо левой рукой?

Эскалации

Их можно сравнить с Cron в *NIX или планировщиком задач в Microsoft Windows. Это практически независимые элементы, которые выполняют заданные действия в определенное время. Например, каждую субботу в 23:00 может очищаться таблица со временными данными.

Другие объекты

Как уже было сказано, существуют и другие объекты более высокого уровня чем перечисленные. К ним можно отнести:
  1. Гайды активных ссылок - по сути объединение ссылок, выполняющиеся одна за другой;
  2. Гайды фильтров - аналогично ссылкам;
  3. Приложения - служат для логической группировки форм с целью их более удобного поиска.

Зачем это надо?

А действительно, зачем? Не задумывались на протяжении всей статьи? Вот и правильно. На самом деле, ARS - это отличная платформа для быстрого создания приложений, которые могут работать как в специальной среде BMC Remedy ARS User так и в вашем веб-браузере. Разработчики практически полностью лишаются необходимости писать код, за исключением редких случаев, где необходимо написать прямой запрос к БД. Такие разработчики, скажем честно, дешевы для компании, в плане минимальных затрат на их обучение и ввода в проект. То есть, если мы имеем большой проект, в котором не хватает рабочих рук, мы можем просто нанять разработчика со стороны, обучить его за пару недель и посадить работать. Мечта, не правда ли?

With best regards!

Комментариев нет:

Отправить комментарий