Месяц: Февраль 2009

Jedi Manifesto

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

Для чего это нужно?

  1. Определив цели, их гораздо легче достичь 🙂
  2. Хотелось бы чтобы каждый участник имел представление о клубе, и смог внести свой вклад
  3. Имея четкие задачи, можно смело заявлять о себе, как о сформировавшемся коммунити.

Предлагаю вынести на голосование следующие пункты нашего манифеста Джедаев:

  1. Мы встречаемся, чтобы побеседовать на IT и околокомпьютерные темы и попить пива.
  2. Наши встречи носят неформальный, но вежливый характер.
  3. Мы хотим проводить наши заседания на родном языке, т.е. русском.
  4. Нами движет желание стать лучше, повысить свой профессиональный уровень за счёт обмена реальным опытом.Нам интересны мы сами — как люди, как новые знакомые, как коллеги.
  5. В ходе встреч мы обсуждаем проблемы интересные большинству участвующих.
  6. Мы люди с широким кругозором и не ограничиваемся какой-то отдельной платформой или технологией.
  7. Мы не боимся задавать глупых вопросов.
  8. Мы вообще не боимся задавать вопросов и участвовать в дискуссиях.
  9. Мы приветствуем иницативу и вклад в развитие клуба.
  10. Мы несём возмездие во имя луны.

Список будет видоизменяться и дополняться по ходу обсуждения и следующих встреч.
Все комментарии приветствуются.

There is something about ILOG…

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

Можно много говорить о том, что есть лучший продукт в данной области. Можно оперировать понятием цены, а можно еще раз посмотреть на картинку от уважаемого во всем мире экспертного издания Gartner. Можно создать свой продукт, который будет лучше решать мелкие оперативные задачи, а можно «жизнь положить», дабы понять, как же работает этот «замечательный» BizTalk. Но, повторю еще раз: ни одно программное обеспечение не может и не должно стоить дороже, чем оно позволит вам сэкономить/заработать. Не занимайтесь overengineering-ом, реально смотрите на вещи: какие процессы берут больше всего времени? что можно автоматизировать? какая коммерческая выгода может стоять за возможностью быстро менять условия бизнеса?

Это для бизнеса. Для разработчиков выгода очевидна: пускай бизнес занимается бизнесом. Компании, правила валидации, расчеты скидок — это их головная боль. Вы хотите создавать новую функциональность, интегрировать решения, оптимизировать работу базы данных — пожалуйста. Найдите подходящую вашим условиям BRMS (Business Rule Management System) — и научите других ею пользоваться. Найдите именно BRMS, а не простой BRE (Business Rule Engine), коим сейчас является JBoss Drools. Причины очевидны: ни одна секретарша не поймет смысл кода правила. Она поймет обычное выражение на понятном и привычном языке. Она поймет, когда ей графически пояснят, кто, где и зачем изменил что-либо. Она же понимает Word и Excel, да? Так пускай она создает бизнес-правила в Office и сохраняет их в Sharepoint? (Речь идет, например, о продукте ILOG Rules for .NET)

Что остается вам? Ведь вам чем-то придется заниматься; не просто же вы инсталлируете систему, пойдете пить кофе и выдумывать новый изящный алгоритм интеграции пива с водкой путем синхронизации их потоков в желудке.

Вам придется решить некоторые вопросы по инфраструктуре (в скобках ответы для ILOG):
1) куда вы «поставите» BRMS? (три варианта: stand-alone application, embedded container, jar в вашем приложении)
2) как вы будете «общаться» с BRMS? (поддерживаются все необходимые стандарты с точки зрения SOA)
3) какую модель данных вы используете для создания правил? (в случае множества приложений есть возможность использования динамической модели, основанной на HashMap-ах; все модели создаются и вербализируются в Rule Studio (модуль для Eclipse), а правила можно создать, напимер, и через удобный вэб-интерфейс с помощью мышки и меню в стиле drag-and-drop)
4) какие языки должна корректно поддерживать вербализация этих объектов, что бы та самая секретарша поняла, о чем речь? (out-of-the-box: английский, немецкий, французский, испанский, японский, упрощенный китайский; в разработке есть и другие языки, как то русский, например; каждый будет видеть необходимое правило на том языке, который ему наиболее понятен)
5) как организовать систему доступа и безопасности? (не имеет по умолчанию своей системы доступов; вы можете использовать или LDAP, или ActiveDirectory, или чего-нибудь еще на свое усмотрение. используя общую систему допусков для всей фирмы, кто-то сможет лишь создавать правила, кто-то — проверять их, кто-то — ставить им статус «к исполнению»)
6) что делать, если модель разрастется до невероятных размеров и станет тяжело определять, какое свойство необходимо в данный момент? (есть поддержка domain-ов, т.е. при определении конкретной категории (domain), wizard правила будет давать только используемые в данной категории объекты)
7) как избежать дублицирования кода, когда многие процессы схожи в каких-либо деталях? (есть возможность переписывания выполнения каких-либо правил, исходя из контекста; создается общий алгоритм, и, в зависимости от предопределенных условий, выполняются те или иные правила, написанные один раз каждое)
8) как тестировать полученные правила? (а почему бы не через тот же самый Excel?)
9) как скалировать систему при увеличении потока информации? (не имеет ограничений по скалированию; с точки зрения нагрузки, системе все равно, сколько в ней правил — 1000 или 100; она работает одинаково быстро, выбирая оптимальный алгоритм запуска в зависимости от задачи приложения)
10) как проверить систему на целостность и правила на адекватность? (встроенный аналитический tool найдет и те правила, которые взаимно исключают друг друга, и те, которые никогда не выполняются)
11) как получить поддержку? (профессиональные консультанты всегда подскажут наилучшее решение в той области, где вы хотите применить BRMS. ведь найти неизведанные до вас места достаточно трудно: опыт работы с eBay, VISA, JPMorgan, FannieMae, First Union, Nokia, FedEx, US Department of Homeland Security, Mexican Tax Department, Lufthansa, British Airways, Nissan, Hallmark, Pfizer работает на вас, а front-line support, например, находится на расстоянии одного телефонного звонка по Эстонии)

Полноценный тренинг и для разработчиков, и для аналитиков длится 4-5 дней. Это не сложно и намного проще, чем запустить ракету в космос. Но о деталях имплементации стоит задумываться не раньше, чем родится финансово обоснованная мысль об изменении модели построения системы. Ведь бесплатных решений не бывает — это все блеф. У одних — платная поддержка, а для других требуется серьезное инвестирование ресурсов, дабы понять, как заставить это работать в текущей среде. А еще и «заплатки» самому писать…

И последнее: сейчас везде популярно вставлять такие словечки как BPM (Business Process Management) и SOA (Service-Oriented Arhitecture). Да, для BPM третьего поколения BRMS является неотъемлимой частью. А знаете ли вы, что в мире, например, у Oracle нет ни одного примера решения формата world-wide enterprise-wide BPM? Рефакторинг систем с точки зрения SOA — это огромные затраты и «много крови». Очень много. Поэтому, если уж и следовать трендам, то стоит начать с выбора BRMS, а дальше… может, вам и не потребуется ничего больше. 😉

Страница 2 из 2

создано с помощью WordPress & Автор темы: Anders Norén