<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Комментарии к записи: Еще одно предупреждение относительно сообщений в BPMN</title>
	<atom:link href="http://mainthing.ru/item/607/feed/" rel="self" type="application/rss+xml" />
	<link>https://mainthing.ru/ru/item/607/</link>
	<description>BPM-блог Анатолия Белайчука</description>
	<pubDate>Sat, 18 Apr 2026 08:54:25 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.5</generator>
		<item>
		<title>Автор: Anatoly Belychook</title>
		<link>https://mainthing.ru/ru/item/607/#comment-2610</link>
		<dc:creator>Anatoly Belychook</dc:creator>
		<pubDate>Thu, 13 Nov 2014 15:23:00 +0000</pubDate>
		<guid isPermaLink="false">http://mainthing.ru/?p=607#comment-2610</guid>
		<description>Можно и так.</description>
		<content:encoded><![CDATA[<p>Можно и так.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Вадим</title>
		<link>https://mainthing.ru/ru/item/607/#comment-2609</link>
		<dc:creator>Вадим</dc:creator>
		<pubDate>Thu, 13 Nov 2014 15:17:55 +0000</pubDate>
		<guid isPermaLink="false">http://mainthing.ru/?p=607#comment-2609</guid>
		<description>А если в ProcessB расположить B1 не на одной из линий потока управления, выходящих из шлюза, а на линии, входящей в этот шлюз?</description>
		<content:encoded><![CDATA[<p>А если в ProcessB расположить B1 не на одной из линий потока управления, выходящих из шлюза, а на линии, входящей в этот шлюз?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Bernd Ruecker</title>
		<link>https://mainthing.ru/ru/item/607/#comment-1630</link>
		<dc:creator>Bernd Ruecker</dc:creator>
		<pubDate>Tue, 05 Feb 2013 13:20:27 +0000</pubDate>
		<guid isPermaLink="false">http://mainthing.ru/?p=607#comment-1630</guid>
		<description>We currently support both possibilities in some way. But the interesting question in scenario 2 is: What happens if the process now will never catch the message from the queue (because it took a different path, it was canceled, correlation was corrupt, ....). I think this is hard to solve in a generic way serving all use cases. 

But it is a pretty important discussion when going down to implementation details. We therefor described exactly that pattern in our book as well.

But actually I like the idea of having a phone icon instead of a message :-)</description>
		<content:encoded><![CDATA[<p>We currently support both possibilities in some way. But the interesting question in scenario 2 is: What happens if the process now will never catch the message from the queue (because it took a different path, it was canceled, correlation was corrupt, &#8230;.). I think this is hard to solve in a generic way serving all use cases. </p>
<p>But it is a pretty important discussion when going down to implementation details. We therefor described exactly that pattern in our book as well.</p>
<p>But actually I like the idea of having a phone icon instead of a message <img src='https://mainthing.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Anatoly Belychook</title>
		<link>https://mainthing.ru/ru/item/607/#comment-1625</link>
		<dc:creator>Anatoly Belychook</dc:creator>
		<pubDate>Sat, 26 Jan 2013 07:33:35 +0000</pubDate>
		<guid isPermaLink="false">http://mainthing.ru/?p=607#comment-1625</guid>
		<description>Bruce

There are systems that implement only (1), there are systems that implement only (2), there are systems that let user to choose between (1) and (2), there are systems that let user set up the expiration time for the message - setting it to zero means (1). The funniest part is that all these vendors are members of BPMN standard committee.

From pure modeling perspective I don't think queueing is a good idea. The reason is this: if we assume queueing for messages then it'd be logical to expect the same for signals - if the process B came late to signal catcher event then it might get it from the queue just as a message. But this would be obviously a bad idea because a signal may be received anywhere - shall we keep the signal in the queue forever? Therefore signals must be synchronous; messages should better too for the sake of consistent behaviors of messages and signals.

Communication via data is of limited use here because it doesn't generate an event. Well there is a conditional event in theory but I didn't see it implemented in a process engine yet.</description>
		<content:encoded><![CDATA[<p>Bruce</p>
<p>There are systems that implement only (1), there are systems that implement only (2), there are systems that let user to choose between (1) and (2), there are systems that let user set up the expiration time for the message - setting it to zero means (1). The funniest part is that all these vendors are members of BPMN standard committee.</p>
<p>From pure modeling perspective I don&#8217;t think queueing is a good idea. The reason is this: if we assume queueing for messages then it&#8217;d be logical to expect the same for signals - if the process B came late to signal catcher event then it might get it from the queue just as a message. But this would be obviously a bad idea because a signal may be received anywhere - shall we keep the signal in the queue forever? Therefore signals must be synchronous; messages should better too for the sake of consistent behaviors of messages and signals.</p>
<p>Communication via data is of limited use here because it doesn&#8217;t generate an event. Well there is a conditional event in theory but I didn&#8217;t see it implemented in a process engine yet.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Bruce Silver</title>
		<link>https://mainthing.ru/ru/item/607/#comment-1624</link>
		<dc:creator>Bruce Silver</dc:creator>
		<pubDate>Sat, 26 Jan 2013 00:49:40 +0000</pubDate>
		<guid isPermaLink="false">http://mainthing.ru/?p=607#comment-1624</guid>
		<description>Are there really engines that follow 1?  I think queuing of the message is assumed.  Also, I believe that Process A implicitly does not know the state of Process B.  If knowledge of the state is required, better to use shared data (data store) than message.</description>
		<content:encoded><![CDATA[<p>Are there really engines that follow 1?  I think queuing of the message is assumed.  Also, I believe that Process A implicitly does not know the state of Process B.  If knowledge of the state is required, better to use shared data (data store) than message.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Anatoly Belychook</title>
		<link>https://mainthing.ru/ru/item/607/#comment-1622</link>
		<dc:creator>Anatoly Belychook</dc:creator>
		<pubDate>Wed, 23 Jan 2013 05:36:22 +0000</pubDate>
		<guid isPermaLink="false">http://mainthing.ru/?p=607#comment-1622</guid>
		<description>Scott

Sure it's the best solution.</description>
		<content:encoded><![CDATA[<p>Scott</p>
<p>Sure it&#8217;s the best solution.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Scott Francis</title>
		<link>https://mainthing.ru/ru/item/607/#comment-1621</link>
		<dc:creator>Scott Francis</dc:creator>
		<pubDate>Tue, 22 Jan 2013 23:18:37 +0000</pubDate>
		<guid isPermaLink="false">http://mainthing.ru/?p=607#comment-1621</guid>
		<description>Interestingly, IBM BPM makes this a configuration option for the listener.  I don't think the way the listening is configured is "right" from a style perspective, but it is basically functionally complete.  You can model for either listening only to messages sent after you arrive at the listener, or you can model for listening to messages that may have arrived before you arrive at the listener.  (option 1 or 2 - either one can be handled). 

Sometimes the genius of the "and" is the right answer :)</description>
		<content:encoded><![CDATA[<p>Interestingly, IBM BPM makes this a configuration option for the listener.  I don&#8217;t think the way the listening is configured is &#8220;right&#8221; from a style perspective, but it is basically functionally complete.  You can model for either listening only to messages sent after you arrive at the listener, or you can model for listening to messages that may have arrived before you arrive at the listener.  (option 1 or 2 - either one can be handled). </p>
<p>Sometimes the genius of the &#8220;and&#8221; is the right answer <img src='https://mainthing.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
</channel>
</rss>
