<?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; Action</title>
	<atom:link href="http://www.bpmnforum.net/blog27/tag/action/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>Thu, 22 Jul 2010 08:33:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Behaviour Modelling Notation for Information Systems Design.</title>
		<link>http://www.bpmnforum.net/blog27/model-driven/model-driven-architecture/behaviour-modelling-notation-for-information-systems-design/</link>
		<comments>http://www.bpmnforum.net/blog27/model-driven/model-driven-architecture/behaviour-modelling-notation-for-information-systems-design/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 15:42:30 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[Model Driven Architecture]]></category>
		<category><![CDATA[Model Driven Development]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[Behavior]]></category>
		<category><![CDATA[Constraint]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[MDA]]></category>
		<category><![CDATA[State]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog27/uncategorized/behaviour-modelling-notation-for-information-systems-design/</guid>
		<description><![CDATA[Continuing my thoughts about the MDA Conference I want  [...]]]></description>
			<content:encoded><![CDATA[<p>Continuing my thoughts about the MDA Conference I want to make some remarks about (Kalnis, Celms, Kalnina, &amp; Sostaks, 2009).</p>
<p>It was rightly stated in the presentation, that UML sequence diagrams are insufficient to model behavior and that a new kind of modeling method is needed. Also the lack of a modeling method for operations of a class was obvious – nobody knows in which sequence they have to be called – if not prose does describe it. Therefore a new modeling method was proposed, that displays classes as swim lanes containing the operation definitions of the class as nested activities containing actions. In this &#8220;action language&#8221; sequences can be expressed by arrows between actions of one swim lane and other swim lanes.</p>
<p>In my opinion this idea points into the right direction. Actions / operations must be set into relation with regards to their mutual constraints and a simple graphical notation for this is needed.</p>
<p>I did not understand however why it is necessary to distinguish between operations and actions, because in my opinion the actions in this method reveals details of the inner structure of the operations, which is in my opinion not relevant. Furthermore in my opinion the flow based modeling (arrows) leads into a model explosion, if big examples (business use cases) are modeled.</p>
<p>In my opinion the suggestion of (Engels, 2009) was more appropriate to the task in this aspect.</p>
<h1>References</h1>
<p>Engels, G. (2009). Keynote: Automatic generation of behavioral code &#8211; too ambitious or even unwanted? In M. Aksit, E. Kindler, A. McNeile, &amp; E. Roubtsova (Hrsg.), <em>First European Workshop on Behaviour Modelling in Model Driven Architecture (BM-MDA).</em> Amsterdam, The Netherlands: Centre for Telematics and Information Technology Workshop Proceedings.</p>
<p>Kalnis, A., Celms, E., Kalnina, E., &amp; Sostaks, A. (2009). Behaviour Modelling Notation for Information Systems Design. In M. Aksit, E. Kindler, A. McNeile, &amp; E. Roubtsova (Ed.), <em>First European Workshop on Behaviour Modelling in Model Driven Architecture (BM-MDA)</em> (pp. 29-40). Amsterdam, The Netherlands: Centre for Telematics and Information Technology Workshop Proceedings.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/model-driven/model-driven-architecture/behaviour-modelling-notation-for-information-systems-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Weaving Executeability into UML Class Diagrams</title>
		<link>http://www.bpmnforum.net/blog27/model-driven/model-driven-architecture/weaving-executeability-into-uml-class-diagrams/</link>
		<comments>http://www.bpmnforum.net/blog27/model-driven/model-driven-architecture/weaving-executeability-into-uml-class-diagrams/#comments</comments>
		<pubDate>Sat, 27 Jun 2009 11:48:59 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[Model Driven Architecture]]></category>
		<category><![CDATA[Model Driven Development]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[Behavior]]></category>
		<category><![CDATA[Business Object]]></category>
		<category><![CDATA[Constraint]]></category>
		<category><![CDATA[Contract]]></category>
		<category><![CDATA[Executable]]></category>
		<category><![CDATA[MDA]]></category>
		<category><![CDATA[State]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog27/?p=323</guid>
		<description><![CDATA[Again about the First European Workshop on Behavior Mod [...]]]></description>
			<content:encoded><![CDATA[<p>Again about the First European Workshop on Behavior Modelling in Model Driven Architecture [<a href="http://www.ou.nl/eCache/DEF/2/06/802.html" target="_blank">BM-MDA</a>].</p>
<p>The second Presentation was about Weaving Executeability into UML Class Diagrams from Elvinia Riccobene of the Universtià degli Studi di Milano, Italy.</p>
<p>The introductory criticue about describing object contracts with a constraint language only (like OCL &#8211; or pre- and postconditions of methods / operations as mentioned before) was, that it was not possible to change the state of an object or a system by a postcondition. It was said, that it was better to describe this in an Abstract State Machine (ASM).</p>
<p>An ASM does not only describe preconditions for the execution of a function, but also the transition of the state &#8211; i.e. it is directly executable &#8211; platform independently (and thereby simulateable).</p>
<p>My personal opinion about this is, that in modelling the behavior of a business object a certain kind of nondeterminism is needed. For example if there would be a function &#8220;check credit limit&#8221; for a customer &#8211; this can be quite complex in terms of business functionality. So in an ASM you have the choice to model all the complexity of this decision, but then it is not a model any more, but it is the system implementation itself. So there is no other way than to do an abstraction and only model that ther outcome can be (granted, denied) or (granted, denied, manual decision needed) or whatever decision result needs to be modeled. If that is true, even in the ASM some nondeterminism is needed, which leads to limited executeability (i.e. a user must decide or chance or some simplified algorithm or the formalism is used for state space search).</p>
<p>But then the difference to modelling postconditions is not so big, because, the postcondition only states as well, that the result of the operation can be (granted, denied) or (granted, denied, manual decision needed). If the result is unary, then also the postcondition modelling can be used for execution.</p>
<p>In the succeeding part of the presentation it was explained in detail how ASM and UML class diagrams (as one example of any metamodel) can be weaved together to form new classes which are able to model the behavior in this language. But in my opinion first a common understanding on the more fundamental questions should be tried to reached, which I mentioned, before too much specific should deviate us from the discussion.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/model-driven/model-driven-architecture/weaving-executeability-into-uml-class-diagrams/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Process Instances and a Business Process Platform</title>
		<link>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-practice/process-instances-and-a-business-process-platform/</link>
		<comments>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-practice/process-instances-and-a-business-process-platform/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 19:44:55 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPMN in Practice]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[Ad-Hoc]]></category>
		<category><![CDATA[Business Object]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Process Instance]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=239</guid>
		<description><![CDATA[If there is an architecture with a Business Process Pla [...]]]></description>
			<content:encoded><![CDATA[<p>If there is an architecture with a Business Process Platform, then there is the question, which role do the process instances play in such a system.</p>
<p>The business processes are reflected by business objects themselves, which are linked with each other. Events are correlated to the business objects. This makes sense, because the business objects are clearly identifiable, because they are related to a concrete business transaction. There are concrete customers related with it, suppliers, products, dates &#8211; the things that make them easy to identify and find.</p>
<p>In contrast, if there are process instances, which have only an anonymous ID, like a Globally Unique Identifier (GUID), then the relationship to a concrete business transaction is rather loosely. Therefore it is hard to manage them. Furthermore if there are business attributes inside of the process instance, typically they are in generic containers (not always) and therefore difficult to use in queries.</p>
<p>So which process instances are needed within a Business Process Platform beside the business objects themselves? Probably some for approval. Some for ad-hoc processes. Not much more comes to my mind.</p>
<p>Monitoring a business process itself is a different story. For this not process instances are needed, but chains of business objects that are actually process objects and some process instances &#8211; that I already mentioned.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-practice/process-instances-and-a-business-process-platform/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ad-Hoc Processes</title>
		<link>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-research/ad-hoc-processes/</link>
		<comments>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-research/ad-hoc-processes/#comments</comments>
		<pubDate>Mon, 23 Feb 2009 07:00:43 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPMN in Research]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[Ad-Hoc]]></category>
		<category><![CDATA[Business Object]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[Constraint]]></category>
		<category><![CDATA[Executable]]></category>
		<category><![CDATA[State]]></category>
		<category><![CDATA[Workflow]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=204</guid>
		<description><![CDATA[Unstructured, Semi-Structured and Structured Processes  [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.actionbase.com/unstructured-semi-structured-and-structured-processes">Unstructured, Semi-Structured and Structured Processes</a> makes a distinction between</p>
<ul>
<li>structured,</li>
<li>unstructured and</li>
<li>semi-structured</li>
</ul>
<p>processes, that I like. It is interesting, that in the definition of process the emphasis on the post is less on the sequence of activities, but more on the business goal to reach. That was, what I proposed earlier. And it makes sense. In the end it is more important, what the result of a process is, than what has been done or should be done in which order to try to (!) achieve it. I said &#8220;try to&#8221; because sometimes just doing a thing can not guarantee that the desired result is achieved. That&#8217;s why I say that the result is more important than the doing of an activity or task itself.<br />
Of course it is inevitable that when a business process is implemented in an business process platform, that it is structured. Otherwise it is impossible to implement the business functionality that transforms the business objects that are part of the business process from one state to another. That is said modulo that there may be some generic functionality like a process engine for workflow or generally for execution of modeled process parts of course.<br />
BPMN supports some Ad-Hoc modeling cababilities. There are Ad-Hoc tasks where the sequence is not defined or where it is not defined if none, one or all of them are executed. However one would expect, that any task that can be executed is modeled &#8211; at least if it is not, it can not be system supported. Also it is a difference, if the Ad-Hoc cababilities are on the process type level, or on the instance level, meaning that a concrete process instance can be adapted to a new, unexpected flow, sequence or even new Ad-Hoc Tasks.<br />
However the more the tasks become Ad-Hoc the more they become an empty shell. What do I mean by this?<br />
Create an Ad-Hoc task &#8220;Calculate stock losses based on financial crisis&#8221;. Of course if this is done the first time, there is no busines logic implementation for this. Even if there is a SOA service offering the solution, there needs to be some implementation of calling the service, which means gathering and providing the needed parameters and using the result in other processes.<br />
So &#8211; as soon as a process is implemented in a business process platform it has at least some constraints.<br />
Which is ok &#8211; because it has been formalized, because it&#8217;s execution is more repetitive.<br />
On the other hand especially in times of crisis the importance of Ad-Hoc processes grows to account for the need to compensate unforeseen difficulties in the daily &#8220;business as usual&#8221;.<br />
The important thing is, that the structured, the unstructured and the semi-structured processes can be integrated as seamless as possible. This is only possible, if there is a common notion of result of a process or of an activity in the process. Furthermore it is an interesting question &#8211; especially in semi-structured processes &#8211; how much constraints are desribed.</p>
<ul>
<li>None Constraints: Unstructured.</li>
<li> Some Constraints: Semi-Structured.</li>
<li>All Constraints: Structured.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-research/ad-hoc-processes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What is a Process? Procedure vs. Process</title>
		<link>http://www.bpmnforum.net/blog27/bpm/what-is-a-process-procedure-vs-process/</link>
		<comments>http://www.bpmnforum.net/blog27/bpm/what-is-a-process-procedure-vs-process/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 07:00:45 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPM]]></category>
		<category><![CDATA[BPMN]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[State]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=164</guid>
		<description><![CDATA[What is a Process? This discussion seems to be still on [...]]]></description>
			<content:encoded><![CDATA[<p>What is a Process? This discussion seems to be still ongoing, and I have my own take on this.</p>
<p>In <a href="http://www.it-director.com/blogs/Mark_McGregor/2009/1/procedure_vs_process.html">Procedure vs. Process</a> it is discussed from the angle of if it is a sequence or order of action or not sequence or order. Also Merriam-Webster dictionary is cited to say that a process is</p>
<blockquote><p>a series of actions or operations conducing to an end ; especially : a continuous operation or treatment especially in manufacture</p></blockquote>
<p>I fundamentally disagree with this definition. In my opinion the series of action is only one half of a process. The state is the other half. A process must always have a defined state. Either it is not started, it is finished or in the middle &#8211; in process. If it is in process, it needs to be further defined, what the detailed state is. So if a process is modeled in terms of actions, then the question is, which state do the individual actions have.</p>
<p>In the Blog <a href="http://www.column2.com/2009/02/links-for-2009-02-02/">Column 2 &#8211; links for 2009-02-02</a> we see the statement that refutes the difference between process and procedure as claimed by <a href="http://www.it-director.com/blogs/Mark_McGregor/2009/1/procedure_vs_process.html">Procedure vs. Process</a> . For my taste this is a little bit a too technical discussion.</p>
<p>I rather approach it from a little bit different angle. For me a busines process is the sum of all business objects and process objects that are needed to achieve a common busines goal, their state, their actions and the constraints between the actions and the state.</p>
<p>You might argue, that I define process by process &#8211; i.e. business process by process object. But they are different. Process objects are like workflows and have a rather small business goal , but a business process has a much broader scope. All process objects are small business processes, but not vice versa.</p>
<p>By such a definition I exclude such things like interactions with the system, because they do not have a state. So adding a sales order, saving it, adding another sales order and saving it is no business process by this definition, because it has not state and it does not achieve a common business goal. A business process would be to deliver goods which have been ordered by customer orders and bill them, and collect payments for them. This is a common business goal and the whole process has a state which is reflected in the state of it&#8217;s business objects, namely the customer order, the delivery, the invoice and the payment.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpm/what-is-a-process-procedure-vs-process/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What can happen without model governance?</title>
		<link>http://www.bpmnforum.net/blog27/bpm/bpm-governance/what-can-happen-without-model-governance/</link>
		<comments>http://www.bpmnforum.net/blog27/bpm/bpm-governance/what-can-happen-without-model-governance/#comments</comments>
		<pubDate>Mon, 16 Feb 2009 07:00:19 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPM Governance]]></category>
		<category><![CDATA[BPMN in Practice]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[BPM]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Governance]]></category>
		<category><![CDATA[Modeling Purpose]]></category>
		<category><![CDATA[Process]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=171</guid>
		<description><![CDATA[A blog entry titled "Model and Pasta" has inspired me t [...]]]></description>
			<content:encoded><![CDATA[<p>A blog entry titled <a href="http://blog.actionbase.com/?p=44">&#8220;Model and Pasta&#8221;</a> has inspired me to ask: What can happen without model governance?</p>
<p>This may happen: The right means are used for the wrong purpose, and the result is a disaster.</p>
<p>I have already discussed, that the <a href="http://www.bpmnforum.net/blog/bpmn/bpmn-in-practice/more-on-modeling-purpose/">modeling purpose</a> does determine the outcome of a modeling exercise.</p>
<p>So what happens, if you use the right modeling language for the wrong purpose? It ends up in spaghetti models.</p>
<p>If you try to use a BPMN model for the purpose of model driven development &#8211; as mentioned in the blog (i.e. to generate coding) &#8211; for a business process with many special cases, then the result can be a spaghetti model. But this is not because BPMN is not good, it is because the right means for the wrong purpose has been used.</p>
<p>What is the level of detail that should be modeled? By which modeling technique it should be modeled? These difficult questions are best solved within the scope of a model governance process. As soon as a model become a subsitute for coding only &#8211; i.e. it is not human readable any more &#8211; it misses it&#8217;s purpose. Then it would be better to code. A governance process makes sure, that it is still human readable.</p>
<p>Furthermore it needs to be considered, that BPMN is not the only modeling language in the world and should not be used for purposes, where other means are better. I will elaborate on this later.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpm/bpm-governance/what-can-happen-without-model-governance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The role of Governance in BPMN Modeling</title>
		<link>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-practice/the-role-of-governance-in-bpmn-modeling/</link>
		<comments>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-practice/the-role-of-governance-in-bpmn-modeling/#comments</comments>
		<pubDate>Sat, 14 Feb 2009 15:04:50 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPMN in Practice]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[BPM]]></category>
		<category><![CDATA[Governance]]></category>
		<category><![CDATA[Process]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=166</guid>
		<description><![CDATA[BPMN as a standard does define modeling elements and th [...]]]></description>
			<content:encoded><![CDATA[<p>BPMN as a standard does define modeling elements and their relationships. Furthermore it defines execution semantics, as far as this is applicable.</p>
<p>In itself this is not sufficient to achieve a consistent model quality in designing BPMN models. More is needed. The missing element is a governance process.</p>
<p>What is a governance process in this context?</p>
<p>What you need to design high quality (BPMN) models is experience. It is always possible to solve a certain modeling problem is different ways. Which is the best way for which kind of modeling problem? Unter which circumstances is which solution better? Is a certain solution consistently applied across a large set of models, if the underlying modeling problem is the same? What are the modeling rules, what are the patterns?</p>
<p>Theoretically it is possible, that a single person has all the experience needed. But still then this single persons approach differs from an approach of another single person. Also it is not clear if this single person is always available. Furthermore we are humans and we err.</p>
<p>So the elements of a governance process, that produces consistently high quality in modeling are these:</p>
<ol>
<li>A defined number of modeling experts with different background, which collaborate over a long period of time with some, but little fluctuation.</li>
<li>A defined review process with enought time to study a model for all reviewers (experts) and the possibility to accept or reject a model.</li>
<li>The possibility to raise issues, discuss pros and cons and find solutions.</li>
<li>A list of quality criteria, patterns and modeling guidelines which each model needs to fulfill. This grows over time by common action of the experts.</li>
</ol>
<p>Each expert that takes part in such a governance expert council will learn from each new model review and the common expertise will rise. The quality level of models can be held consistently high. Futhermore is the feedback of such an governance expert council to the standard &#8211; in this case BPMN &#8211; invaluable, because they are those who find out even the subtle weaknesses of the standard over time. Each modeler, that commits to the governance process learns more than any theoretical class can ever teach him.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpmn/bpmn-in-practice/the-role-of-governance-in-bpmn-modeling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>BPM elements and the BPM enabled Application Trend</title>
		<link>http://www.bpmnforum.net/blog27/bpm/bpm-elements-and-the-bpm-enabled-application-trend/</link>
		<comments>http://www.bpmnforum.net/blog27/bpm/bpm-elements-and-the-bpm-enabled-application-trend/#comments</comments>
		<pubDate>Mon, 02 Feb 2009 14:03:30 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPM]]></category>
		<category><![CDATA[BPM Business Semantics]]></category>
		<category><![CDATA[BPM Governance]]></category>
		<category><![CDATA[BPM Monitoring]]></category>
		<category><![CDATA[BPM Process Design]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[Behavior]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Governance]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[State]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=106</guid>
		<description><![CDATA[What are the elements of this business process space co [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>What are the elements of this business process space context? A comprehensive answer is too long for this post, but it should include process metrics, process design, business semantics, and process governance [...] Kiran Garimella</p></blockquote>
<p>from <a href="http://www.ebizq.net/blogs/bpmblog/2007/03/the_death_of_bpm_it_aint_over.php">http://www.ebizq.net/blogs/bpmblog/2007/03/the_death_of_bpm_it_aint_over.php</a><br />
That is an concise list of what is important within BPM, although I to not share the view of the author, that BPM is a kind of proces operating system. ImhO it is a design principle and a management paradigm. It must be supported by system design, to become effective, but it is not an operating system, upon which higher level solutions will be developed. Yes, it is an architecture &#8211; and the Business Process Platform architecture that I already mentioned is one important part of it. But it is not merely a separate software layer.<br />
Now let us look a little more into detail of these elements:</p>
<li>Business Semantics</li>
<li>Process Design</li>
<li>Process Metrics</li>
<li>Process Governance</li>
<p>Ad 1) Business Semantics.<br />
It is obvious, that it is inevitable to take into accound the process, that is realized by Business Objects (Ordering, Selling, Payment, Stockkeeping, Billing, &#8230;) if the process semantics is important. Each of the Business Object types have a business semantics. Each of their states has and the actions, that can be performed with them (like release). It is not possible to ignore them, if an holistic view on the process semantics is necessary. The other way round said: It is often necessary to realize the process semantics by means of implementing Business Objects, because it is so sophisticated business semantics &#8211; if I mention prices calcuation for example.<br />
Ad 2) It is impossible to do process design and not take into account the process, that has been implemented in Business Objects already &#8211; if it is not a very simple case like a very simple workflow. But even with a simple worflow, there often is a Business Object (Invoice, Project, Order, &#8230;) behind it. So the process can not be designed completely free, but within the limitations of the Business Objects, that are going to be used. Or the other was round: if the Process is Designed completely free, then Business Objects need to be implemented or extended to realize such a behavior.<br />
Ad 3) Process Metrics.<br />
Is it possible to think of process metrics and not take into account the state of Business Objects? Plainly said: No. It is relevant, if orderes are Released or not, if Invoices are posted or not and how long it takes from ordering an Order (i.e. reaching the state ordered of the Order) and posting an invoice (i.e. reaching the state posted of the Invoice). So process metrics need a tighter integration with Applications &#8211; in the form of a Business Process Platform BPP.<br />
Ad 4) Process Goverance<br />
Process governance can only be realized, if the necessary process metrics is provided. As a result of process governance, the process needs to be adapted. This can &#8211; in certain limits &#8211; be done by changing some modeled workflows. But often it is needed to utilize different functionality which is implemented in Business Objects or to adapt Business Object functionality. This can only be done, if the application has been built in a way, which makes this possible cost effectively &#8211; i.e. by conforming to a BPP architecture.<br />
So the different elements of BPM can better be reached, if BPM is tighter integrated into applications &#8211; i.e. if applications are BPM enabled &#8211; and if a Business Process Platform (BPP) programming model is followed.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpm/bpm-elements-and-the-bpm-enabled-application-trend/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trend in BPM: BPM enabled Applications</title>
		<link>http://www.bpmnforum.net/blog27/bpm/trend-in-bpm-bpm-enabled-applications/</link>
		<comments>http://www.bpmnforum.net/blog27/bpm/trend-in-bpm-bpm-enabled-applications/#comments</comments>
		<pubDate>Sat, 31 Jan 2009 13:05:53 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPM]]></category>
		<category><![CDATA[Business Process Platform]]></category>
		<category><![CDATA[Model Driven]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[State]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=101</guid>
		<description><![CDATA[“By the year 2012, BPM will be subsumed into major ap [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>“By the year 2012, BPM will be subsumed into major applications.” Simon Hayward</p></blockquote>
<p>See also:<br />
<a href="http://www.ebizq.net/blogs/bpmblog/2007/03/the_death_of_bpm_it_aint_over.php">http://www.ebizq.net/blogs/bpmblog/2007/03/the_death_of_bpm_it_aint_over.php</a><br />
An interesting statement. Especially in the light of the remarks about &#8220;What is a Process?&#8221; that I made earlier:<br />
<a href="http://www.bpmnforum.net/blog/bpmn/bpmn-in-research/what-is-a-business-process/">http://www.bpmnforum.net/blog/bpmn/bpmn-in-research/what-is-a-business-process/</a><br />
I suggested, that there are commonalities between Process Objects (Workflows) and Business Objects (like a Sales Order). They have a state, they have actions or activities, they have constraints. There are differences, but as long as we focus on the commonalities, we can think of utilizing this common ground for common frameworks.<br />
Applications are made up of business objects and their relations. Very often these business objects are programmed. In contrast workflows are modeled. So if we can achieve modeling business objects in an application, then the business object model is the foundation for better integration of BPM functionality with the application. I call such a modeled application Business Process Platform or BPP.<br />
To not remain too abstract, I make a concrete example.<br />
Think of a Project Management Application, that has a Business Object &#8220;Project&#8221;. Now, a Project BO is created. Before the Project is released, there must be an approval. So &#8211; when does this Approval start? It needs to start, if the Project business object has reached a certain state &#8211; for example &#8220;Data Entry finished&#8221;. Only then a workflow or task needs ot be started. The workflow or task is what we traditionally understand as being part of BPM and what we model by BPMN for example. But if the state &#8220;Data Entry Finished&#8221; of the Business Object &#8220;Project&#8221; is also modeled, then the foundation has been created to use it in a generic framework, that enables BPM &#8211; for example by providing events to the workflow to start.<br />
Furthermore if the Approval is finished, a subsequent step (action, activity) must be performed with the Project business object: Release, changing the state to Released.<br />
That is a very simple example, but often difficult to achieve if not these preconditions are met:</p>
<ol>
<li>The state of the business object is modeled.</li>
<li>The action of the business object is modeled.</li>
<li>The action is provided as web service</li>
<li>There is a generic framework utilizing it to make the integration of the workflow and the business object happen.</li>
</ol>
<p>This can only be achieved, if an application is designed from the beginning to provide such modeling information. This had not been completely done in the past. But there is no reason why this should not work. However if an application fulfils 1-4 it should be called a Business Process Platform or BPP.</p>
<p>So with the upcoming advent of BPP, the Applications will be BPM enabled.</p>
<p>[ad]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpm/trend-in-bpm-bpm-enabled-applications/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Executable BPMN 2.0</title>
		<link>http://www.bpmnforum.net/blog27/bpmn/executable-bpmn-20/</link>
		<comments>http://www.bpmnforum.net/blog27/bpmn/executable-bpmn-20/#comments</comments>
		<pubDate>Tue, 27 Jan 2009 15:59:25 +0000</pubDate>
		<dc:creator>Frank Michael Kraft</dc:creator>
				<category><![CDATA[BPMN]]></category>
		<category><![CDATA[BPMN Standard]]></category>
		<category><![CDATA[Model Driven Development]]></category>
		<category><![CDATA[Action]]></category>
		<category><![CDATA[BPM]]></category>
		<category><![CDATA[Choreography]]></category>
		<category><![CDATA[Executable]]></category>
		<category><![CDATA[Process]]></category>

		<guid isPermaLink="false">http://www.bpmnforum.net/blog/?p=94</guid>
		<description><![CDATA[[ad]

There have been complaints, that BPMN 2.0 is only [...]]]></description>
			<content:encoded><![CDATA[<p>[ad]</p>
<p>There have been complaints, that BPMN 2.0 is only designed with the goal of defining an executable process modeling language and that this impairs the usage of the modeling language for the purposes that it is currently most often used for: documentation.<br />
<a href="http://www.brsilver.com/wordpress/2009/01/19/bpmn-20-update/">http://www.brsilver.com/wordpress/2009/01/19/bpmn-20-update/</a><br />
The complaint is that a model would not be counted as valid, if it is not executable. The demand is that it should also be valid, if it is not executable.<br />
To shed some more light on the issue it is necessary to discuss several aspects. These come to my mind immediately:</p>
<ol>
<li> Choreography Modeling and Execution</li>
<li> The concept of enforceability</li>
<li> Conformance</li>
<li> Abstract Processes</li>
</ol>
<p>Ad 1) A new feature in BPMN 2.0 is the choreography model. Modeling a choreography model with BPMN 2.0 means modeling an abstract process representing the view of an independent observer on the exchange of the messages that are exchanged between participants. This process is by definition abstract, because it is “in the middle between” the participants. So by definition such a process can never be executed directly or be executable. It can only be realized by means of processes within the participants. But the realization is not necessary for a choreography model to be valid.<br />
Ad 2) Enforceability of a choreography process is an attribute, that holds true, if a choreography model can be realized at all. Not all choreography models are able to be realized. This is completely independent of any technology. It is because of logic only. To make an example If we define this process between John, Mark and Jane, which are in different cities: First John calls Mark and tells him the weather. Then after this Jane calls Mark and they plan the weekend trip. This process is not enforceable. Because Jane cannot know when John has called Mark. So to make the process enforceable, John or Mark need to call Jane to tell her, that John and Mark have phoned. Which of both is better is another thing – but the first process is not enforceable – completely independent of the technology.<br />
So yes, there are some rules in BPMN 2.0 Choreography model that must be kept with a choreography process so that the enforceability is not destroyed. But this has merely logical reasons.<br />
Ad 3) There is a difference between Process Modeling Conformance and Process Execution Conformance. Process Modeling Conformance does explicitly not require that the Process Execution Semantics is kept. However the Process Execution Semantics is most clearly defined. But because this is optional, it is only for those who want to execute. And for those, an execution semantics is very helpful.<br />
Ad 4) Abstract Processes are Processes that have the process type abstract. By definition they are not executed as is, but they are an abstraction of the process, that is really executed.<br />
Good discussion though and I might continue to post on this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpmnforum.net/blog27/bpmn/executable-bpmn-20/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
