<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Frank Michael Kraft&#039;s Blog &#187; admin</title>
	<atom:link href="http://www.bpmnforum.net/blog27/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bpmnforum.net/blog27</link>
	<description>Unifying Applications and Business Process Management in the Cloud</description>
	<lastBuildDate>Mon, 23 Jan 2012 15:28:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.2</generator>
		<item>
		<title>The role of Choreography modeling in a SOA</title>
		<link>http://www.bpmnforum.net/blog27/bpmn/the-role-of-choreography-modeling-in-a-soa/</link>
		<comments>http://www.bpmnforum.net/blog27/bpmn/the-role-of-choreography-modeling-in-a-soa/#comments</comments>
		<pubDate>Tue, 13 Jan 2009 20:38:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[BPMN]]></category>
		<category><![CDATA[Choreography]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[Contract]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[SOA]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=10</guid>
		<description><![CDATA[[ad] A SOA consists of Process Components, each of which fulfil a certain business functionality, that interact with each other. One possibility is that a Composite Application does call Services of an underlying Business Process Platform &#8211; be it synchronously &#8230; <a href="http://www.bpmnforum.net/blog27/bpmn/the-role-of-choreography-modeling-in-a-soa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>[ad]<br />
A SOA consists of Process Components, each of which fulfil a certain business functionality, that interact with each other. One possibility is that a Composite Application does call Services of an underlying Business Process Platform &#8211; be it synchronously or asynchronously. Another possibility is, that Process Components of an unterlying Business Process Platform communicate with each other by mainly asynchronous web services. Examples for the first were mentioned above while examples for the second could be a Process Component for Supplier Relationship Management including Purchasing and a Process Component for handling the Delivery, that exchange asynconous XML messages with each other. Another example is the message exchange between a seller and a buyer.<br />
The modeling of a choreography can adress both purposes. It does focus on the exchange of the messages alone &#8211; i.e. internal details of the process components are not modeled in such a model.<br />
However it can server as a Top-Down Design methodology &#8211; if new Process Components will need to be designed, or &#8211; it can serve as a contract between two communication participants, that are adapted to the message exchange.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpmn/the-role-of-choreography-modeling-in-a-soa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The role of BPMN in a Service Oriented Architecture: Services</title>
		<link>http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture-services/</link>
		<comments>http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture-services/#comments</comments>
		<pubDate>Tue, 13 Jan 2009 20:38:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[BPMN]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[BPM]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[State]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=7</guid>
		<description><![CDATA[[ad] The one critical success factor of a Business Process Platform is the design of re-usable services. If a Business Process Package is developed for integrated use only, there are difficulties to expose the functionality of the Business Process Package &#8230; <a href="http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture-services/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>[ad]<br />
The one critical success factor of a Business Process Platform is the design of re-usable services.</p>
<p>If a Business Process Package is developed for integrated use only, there are difficulties to expose the functionality of the Business Process Package as Services, because the integrated functionalities are often inverwoven so that it is hard to find a service interface that does not have unwanted side effects.</p>
<p>However if a Business Process Platform is built from scratch with the goal of exposing re-usable services from the beginning, then there is a better chance. They need to fulfil certain criteria. The services need to<br />
1) Be fine granular &#8211; fulfillig only a small step.<br />
2) Have defined preconditions in terms of the state of the Business Process<br />
3) Transform the Business Process from one defined state into a next defined state<br />
4) Have a clear business semantic</p>
<p>For example, if there is a Business Process Package offering a service to post an invoice, and the Business Process Package would start the payment automatically, then of course this is a very coarse granular service. A service consumer &#8211; modeled in BPMN &#8211; would rather have two steps<br />
1) collect data for invoice<br />
2) Post Invoice (including all &#8220;internal&#8221; steps)</p>
<p>But if a Business Process Platform is designed for exposing re-usable services, then it would offer serveral fine granular services, in our example<br />
1) create invoice<br />
2) Submit to approval<br />
3) approve / reject<br />
4) Post invoice<br />
5) Start Payment</p>
<p>If this is the case, it makes sense to have a service consumer &#8211; which is modeled for example in BPMN &#8211; that contains several steps and conditions, like when (not if !) Approval is started, a workflow for approval / rejection, and so on.</p>
<p>However even in this architecture it is important to design wich decisions need to remain inside of the process platform and which can be outside of it. Sometimes the buzzwording demands, that all services are freely composable and all process relevant decisions need to be done in a process layer. This &#8211; of course &#8211; is not true.</p>
<p>First of all there are certain constraints, that the Business Process Platform demands, that a Service Client needs to comply to. For example there is no sense in creating a process, which first posts an Invoice and then afterwards does Approve it, if the platform as in most cases would demand the other way round.</p>
<p>Fruthermore not all decisions should be made outside of the platform. For example the decision if an approval is necessecary at all or not should be inside of the platform, not outside. Imagine a BPMN process services consumer where the conditions resides: If amount of invoice > 1000€ demand approval, otherwise not. This is nice but without effect. Because a different service client of the platform (e.g. User Interface) could simply go by the approval, even if the value would be 10.000€, because the condition is not enforced by the platform. To avoid this kind of unwanted behaviour the decision if or if not the approval is necessary needs to reside within the platform. Outside it can only be decided, if approval is given or rejection.</p>
<p>Therefore the platform must not offer a service operation: &#8220;Pass by Approval&#8221; but only &#8220;Check if Approval is relevant&#8221; or &#8220;Submit to Approval including Check if it is relevant&#8221;.</p>
<p>So the granularity and design of the services which are offered is decisive for the success of a service oriented architecture and the goal to make services consumable by a process consumer which is modeled by BPMN.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The role of BPMN in a Service Oriented Architecture</title>
		<link>http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture/</link>
		<comments>http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture/#comments</comments>
		<pubDate>Tue, 13 Jan 2009 20:15:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[BPMN]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[BPM]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[SOA]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=3</guid>
		<description><![CDATA[Often BPMN models are made to document existing processes in a company. Which is a first step, because the transparency serves a purpose. The purpose is to improve the process. Only to know a process and to monitor a process &#8230; <a href="http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Often BPMN models are made to document existing processes in a company. Which is a first step, because the transparency serves a purpose. The purpose is to improve the process. Only to know a process and to monitor a process is valuable as a first step, but in the end improvements need to be made.</p>
<p>One improvement may be to automate certain parts of the process or to integrate them better. This can be done in various ways. One way is to develop new software, that does fulfill the specification given in the process models. Another way is to change existing software &#8211; especially the exchange of information between it. A third possibility could be to execute BPMN processes as workflows, if they represent workflow relevant parts and after a BPMN execution environment has been established.</p>
<p>But the most visionary possibility is that the BPMN processes are used as web service composition. Either by encasulating the existing or new developed software by web services, or by inclusion of pubic webservices &#8211; which can be done in simple cases. However a critical success factor in this approach is<br />
1) the reusability of the web services and<br />
2) the integration of the processes over the web services.</p>
<p>If the integration of processes over the web services is left to BPMN alone, then this can be only applied to simple cases. Standard Business Processes need to be integrated on their own, and the BPMN serves as a layer for automation, i.e. for triggering the next step that would otherwise wait for completion too long. Also it can be used for event correlation and as a result the trigger of a next step.</p>
<p>This approach works good, if the underlying Business Process Implementation follows certain criteria. This is already mentioned 1) and 2) and furthermore<br />
3) the Business Process Implementation itself is modeled and thereby transparent and<br />
4) It is flexible &#8211; i.e. Extensible.</p>
<p>If a Business Process Implementation fulfils 1) through 4) i want to call it a &#8220;Business Process Platform&#8221;.</p>
<p>So in a Business Process Platform BPMN can serve as the means to document the implemented Business Processes for the Purpose of Transparency and an index for Extension Points.</p>
<p>So in essence the Business Process Platform provides the Web Services, which are documented by BPMN. As we said these need to be consumed. If we have an execution environment, that is able to execute BPMN processes for the consumption of these web services, then I would call it a &#8220;BPMN Composite Environment&#8221;. If we have a Toolset, that allows the integrated model driven development of Composition Content and Platform Extensions, I would call it a Composite Integrated Development Environment. or Composite IDE.</p>
<p>So BPMN can play the role of glue in such a scenario. However also other model types are needed &#8211; most obviously WSDL.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpmn/the-role-of-bpmn-in-a-service-oriented-architecture/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

