<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>EE 615 Spring 2010&#039;s Blog</title>
	<atom:link href="http://ee615spring2010.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://ee615spring2010.wordpress.com</link>
	<description>UAB School of Engineering - Information Engineering Management Program</description>
	<lastBuildDate>Tue, 15 Nov 2011 11:16:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='ee615spring2010.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>EE 615 Spring 2010&#039;s Blog</title>
		<link>http://ee615spring2010.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://ee615spring2010.wordpress.com/osd.xml" title="EE 615 Spring 2010&#039;s Blog" />
	<atom:link rel='hub' href='http://ee615spring2010.wordpress.com/?pushpress=hub'/>
		<item>
		<title>XML Process Definition Language (XPDL)</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/29/michael-2/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/29/michael-2/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 13:50:08 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[23 April 2010]]></category>
		<category><![CDATA[XML Process Definition Language]]></category>
		<category><![CDATA[XPDL]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=92</guid>
		<description><![CDATA[I&#8217;m here to write about the XML Process Definition Language. It wouldn&#8217;t make sense to define it unless you have an understanding of the different aspects of XPDL. With that said, my goal is to properly define and layout the different aspects behind XPDL so the readers of this post will read something meaningful when [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=92&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m here to write about the XML Process Definition Language. It wouldn&#8217;t make sense to define it unless you have an understanding of the different aspects of XPDL. With that said, my goal is to properly define and layout the different aspects behind XPDL so the readers of this post will read something meaningful when I define it. </p>
<p>We will start with XML. XML, or Extensible Markup Language, is a set of guidelines, or rules, for encoding data eletronically. W3C defines XML in it&#8217;s XML 1.0 Specification. XML&#8217;s purpose is to make the transmission of data over the Internet more simple and usable. There are several schema systems and programming interfaces based on many different XML languages but XML by itself is just a set of rules that defines how to encode data. Let&#8217;s say you have a computer program that you use to enter orders for a new car. Let&#8217;s also say that computer program send the order to another computer system. It would be beneficial for the order to be sent in XML so the back-end system knows if the data is properly formatted. I&#8217;ll give an example of what this order may look like: </p>
<p class="Blockquotewebkit-indent-blockquote" style="margin:0;"><span style="font-size:x-small;font-family:Verdana;">&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8 ?&gt; </span> </p>
<p><span style="font-size:10pt;background:white;color:black;font-family:Verdana;" lang="RU">  &lt;auto_order&gt;<br />
    &lt;auto_year&gt;2010&lt;/auto_year&gt;<br />
    &lt;auto_make&gt;Cheverolet&lt;/auto_make&gt;<br />
    &lt;auto_model&gt;Cobalt&lt;/auto_model&gt;<br />
    &lt;auto_color&gt;Black&lt;/auto_color&gt;<br />
  &lt;/auto_order&gt;</span> </p>
<p>This is obviously an over-generalized example but as you can see, it would be obvious for the back-end system to sort through this data and validate if it is correct or not.</p>
<p>Now that you have a general understanding of XML, let&#8217;s talk about Business Processes. A business process is a collection of tasks or activities that outputs a particular product or service for a specific customer. It is common that business processes are put on paper as a flowchart. An example of a business process could be the steps necessary to create a widget in a factory. Another business process could be the activities involved in sending data from one system to another. Why is it so important to document and know the many different business processes in your job or industry? Without knowing these processes, you can not accurately measure the efficiency and effectiveness of these processes. </p>
<p>Before I start rambling, let&#8217;s get into the subject at hand: XPDL or XML Process Definition Language. The organization Workflow Management Coalition, or WfMC, were the first to define and standardize XPDL. As I mentioned before, different products communicate with each other using XML. Even though XML is a standard, these different products were using XML in their own ways. The WfMC saw a need for improvement in this communication of data and created a standard XML format for these workflow products to interchange Business Process definitions. This standard became XML Process Definition Language. Let me clarify that XPDL is not a format to communicate to actual data. XPDL is used to communicate the Business Process definitions. </p>
<p>One area the greatly benefited from XPDL is Business Process Modeling Notation or BPMN. BPMN is a graphical representation for defining the business processes in a workflow. Before XPDL was standardized, there wasn&#8217;t an efficient way for workflow products to communicate these business processes in a graphical way. For instance, XPDL contains elements to hold graphical information, such as the X and Y position of the nodes, as well as executable aspects which would be used to run a process. </p>
<p>In summary, XML Process Definition Language is a way for workflow products to communicate Busines Process definitions over XML in a standardized, simple format. XPDL revolutionized the communication of BPMN and remains to be the best format for doing so. While XPDL is only used in a specialized, niche area of industry, it&#8217;s importance should not be overlooked. </p>
<p>By: Michael </p>
<p>Refrences:<br />
1. http://en.wikipedia.org/wiki/XPDL<br />
2. http://www.pcmag.com/encyclopedia_term/0,2542,t=XPDL&amp;i=55083,00.asp<br />
3. http://en.wikipedia.org/wiki/Business_Process_Modeling_Notation<br />
4. http://en.wikipedia.org/wiki/Workflow_Management_Coalition<br />
5. http://www.wfmc.org/xpdl.htmlhttp://www.wfmc.org/xpdl.html<br />
6. http://en.wikipedia.org/wiki/XML<br />
7. http://en.wikipedia.org/wiki/Business_Process</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/92/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=92&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/29/michael-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>
	</item>
		<item>
		<title>Web Services Choreography Description Language (WS-CDL)</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/29/suman/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/29/suman/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 13:32:50 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[23 April 2010]]></category>
		<category><![CDATA[Web Services Choreography Description Language]]></category>
		<category><![CDATA[WS-CDL]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=87</guid>
		<description><![CDATA[Introduction Web Services (WS) are becoming the prominent paradigm for distributing, computing, and electronic business, while there is an increasing surge to provide online Business-to- Business collaborations. Web Services are unable to handle true peer-to-peer collaborations. Never the less, Web Services Choreography Description Language (WS-CDL) is the solution to such a need. WS-CDL is a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=87&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Introduction</p>
<p>Web Services (WS) are becoming the prominent paradigm for distributing, computing, and electronic business, while there is an increasing surge to provide online Business-to- Business collaborations.  Web Services are unable to handle true peer-to-peer collaborations. Never the less, Web Services Choreography Description Language (WS-CDL) is the solution to such a need. WS-CDL is a Web service specification developed by W3C; it provides peer-to-peer collaborations for participants from different parties. </p>
<p>The WS-CDL is an XML-based language, where ordered message exchanges result in accomplishing a common business goal. The WS-CDL specification is targeted for composing any type of Web Service participant regardless of the supporting platform or programming model used by the hosting environment.<br />
Goals of WS-CDL</p>
<p>Here are some goals of WS-CDL: </p>
<p>•	Reusability: The same choreography definition is usable by different participants operating in different contexts with different software.<br />
•	Cooperative: Choreographies define the sequence of exchanging messages between two (or more) independent participants or processes by describing how they should cooperate.<br />
•	Multi-Party: Choreographies can be defined involving any number of participants or processes.<br />
•	Semantics: Choreographies can include human-readable documentation and semantics for all the components in the choreography.<br />
•	Compensability: Existing Choreographies can be combined to form new Choreographies that may be reused in different contexts.<br />
•	Exception Handling: Choreographies can define how exceptional or unusual conditions that occur at the same time as the choreography is performed are handled. </p>
<p>WS-CDL Model Overview</p>
<p>In order to facilitate interoperable, peer-to-peer collaborations between parties, web services commit to mutual responsibilities by establishing relationships. Their collaboration takes place in a jointly agreed set of ordering and constraint rules, whereby information is exchanged between the parties.</p>
<p>The WS-CDL model consists of the following entities:</p>
<p>•	Participant Types, Role Types and Relationship Types: Within Choreography, information is always exchanged between parties within or across trust boundaries. A Role Type enumerates the observable behavior a party exhibits in order to collaborate with other parties. A Relationship Type identifies the mutual commitments that must be made between two parties for them to collaborate successfully.<br />
•	Information Type, Variables and Tokens: Variables contain information about commonly observable objects in collaboration, such as the information exchanged or the observable information of the Roles involved. Tokens are aliases that can be used to reference parts of a Variable. Both Variables and Tokens have Types that define the structure of what the Variable contains or the Token references<br />
•	Choreographies: Choreographies define collaborations between interacting parties:<br />
o	Choreography Life-line: The Choreography Life-line expresses the progression of collaboration.<br />
o	Choreography Exception Blocks: An Exception Block specifies what additional interactions should occur when a Choreography behaves in an abnormal way<br />
o	Choreography Finalizer Blocks:  A Finalizer Block describes how to specify additional interactions that should occur to modify the effect of an earlier successfully completed Choreography, for example to confirm or undo the effect<br />
•	Channels: A Channel realizes a point of collaboration between parties by specifying where and how information is exchanged<br />
•	Work Units: A Work Unit prescribes the constraints that must be fulfilled for making progress and thus performing actual work within a Choreography<br />
•	Activities and Ordering Structures: Activities are the lowest level components of the Choreography that perform the actual work.<br />
•	Interaction Activity: An Interaction is the basic building block of a Choreography, which results in an exchange of information between parties and possible synchronization of their observable information changes and the actual values of the exchanged information<br />
•	Semantics: Semantics allow the creation of descriptions that can record the semantic definitions of every component in the model</p>
<p>An Example of WS-CDL in use</p>
<p><img border="0" src="http://www.iemprogram.com/site/courses/ee615spring2010/suman/suman1.jpg"></p>
<p>In figure1 , Company A and Company B wishes to integrate their Web Services based applications. The respective business analysts at both companies agree upon the services involved in the collaboration, their interactions, and their common ordering and constraint rules under which the interactions occur. In this example, Choreography specifies the interactions between services across business entities ensuring interoperability, while leaving actual implementation decisions in the hands of each individual company.<br />
Conclusion</p>
<p>WS-CDL enables the business stake holder, the business analyst, the enterprise architect and the application engineer to share their views of the same system in a synchronized fashion, by providing the means for each level of detail for each stake holder to be captured without that detail being necessarily exposed to the others. Also WS-CDL provides the necessary provenance to enforce requirements at each level. </p>
<p>By: Suman</p>
<p>References<br />
1)	http://www.w3.org/TR/2004/WD-ws-cdl-10-20041217/<br />
2)	http://www.ibm.com/developerworks/xml/library/ws-choreography/index.html<br />
3)	http://www.service-architecture.com/web-services/articles/ws_choreography_description_language_cdl.html<br />
4)	http://www.infoq.com/news/2007/11/wscomposition<br />
5)	http://student.cse.fau.edu/~jsloan11/CEN6076/168_ChoreographyExecutionEngine.pdf</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/87/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=87&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/29/suman/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>

		<media:content url="http://www.iemprogram.com/site/courses/ee615spring2010/suman/suman1.jpg" medium="image" />
	</item>
		<item>
		<title>Web Services</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/29/kn/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/29/kn/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 13:08:43 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[23 April 2010]]></category>
		<category><![CDATA[Web Services]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=85</guid>
		<description><![CDATA[Introduction Web services make application functionality available over the Internet in a standardized, programmatic way. Applications that couldn&#8217;t be accessed except by following rigid proprietary protocols can now talk to one another over the Internet, regardless of their native language, platform or internal protocols. Web services have resulted from the convergence of three important events. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=85&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Introduction</p>
<p>Web services make application functionality available over the Internet in a standardized, programmatic way. Applications that couldn&#8217;t be accessed except by following rigid proprietary protocols can now talk to one another over the Internet, regardless of their native language, platform or internal protocols.<br />
Web services have resulted from the convergence of three important events. The first was the emergence of the Internet as a cost-effective and widespread infrastructure. The second was the adoption of XML as a standard. And the third was the emergence of a set of common Web services standards&#8211;namely, the Simple Object Access Protocol (SOAP) and Web Services Description Language (WSDL)&#8211;which have been accepted by major platform vendors in place of proprietary standards such as CORBA and DCOM.<br />
Web services have special behavioral characteristics:</p>
<p>XML-based</p>
<p>Web Services uses XML at data representation and data transportation layers. Using XML eliminates any networking, operating system, or platform binding.<br />
Loosely coupled</p>
<p>A consumer of a web service is not tied to that web service directly. The web service interface can change over time without compromising the client&#8217;s ability to interact with the service.<br />
Coarse-grained</p>
<p>Businesses and the interfaces that they expose should be coarse-grained. Web services technology provides a natural way of defining coarse-grained services that access the right amount of business logic.</p>
<p>Ability to be synchronous or asynchronous</p>
<p>Aynchronicity refers to the binding of the client to the execution of the service. In synchronous invocations, the client blocks and waits for the service to complete its operation before continuing. Asynchronous operations allow a client to invoke a service and then execute other functions. </p>
<p>Supports Remote Procedure Calls (RPCs)</p>
<p>Web services allow clients to invoke procedures, functions, and methods on remote objects using an XML-based protocol. </p>
<p>Supports document exchange<br />
One of the key advantages of XML is its generic way of representing not only data, but also complex documents. </p>
<p>Web Service Architecture</p>
<p>Two ways to view the web service architecture.<br />
 	 Examine the individual roles of each web service actor.<br />
 	 Examine the emerging web service protocol stack.<br />
________________________________________</p>
<p>Web Service Roles</p>
<p>There are three major roles within the web service architecture:<br />
 	Service provider: </p>
<p>This is the provider of the web service. The service provider implements the service and makes it available on the Internet.<br />
 	Service requestor </p>
<p>This is any consumer of the web service. The requestor utilizes an existing web service by opening a network connection and sending an XML request.<br />
 	Service registry </p>
<p>This is a logically centralized directory of services. The registry provides a central place where developers can publish new services or find existing ones. It therefore serves as a centralized clearinghouse for companies and their services.<br />
________________________________________</p>
<p>Web Service Protocol Stack</p>
<p>A second option for viewing the web service architecture is to examine the emerging web service protocol stack. The stack is still evolving, but currently has four main layers.</p>
<p> 	Service transport layer is responsible for transporting messages between applications. Currently, this layer includes HTTP, SMTP, FTP, and newer protocols, such as Blocks Extensible Exchange Protocol (BEEP).</p>
<p> 	XML messaging layer is responsible for encoding messages in a common XML format so that messages can be understood at either end.</p>
<p> 	Service description layer is responsible for describing the public interface to a specific web service. Currently, service description is handled via WSDL.</p>
<p> 	Service discovery layer is responsible for centralizing services into a common registry, and providing easy publish/find functionality.</p>
<p>Over the past few years, three primary technologies have emerged as worldwide standards that make up the core of today&#8217;s web services technology. </p>
<p>   XML-RPC is the simplest XML based protocol for exchanging information between computers.<br />
   SOAP is an XML-based protocol for exchanging information between computers.<br />
   WSDL is an XML-based language for describing Web services and how to access them.<br />
   UDDI is an XML-based standard for describing, publishing, and finding Web services.</p>
<p>As a part of Web Services implementation, we will create following two components:<br />
Service provider or publisher: The service provider implements the service and makes it available on the Internet or intranet.</p>
<p> 	Service requestor or consumer: The requestor utilizes an existing web service by opening a network connection and sending an XML request.<br />
Types of Web Services:</p>
<p>	Big Web Services: use XML messages that follow the SOAP standard and have been popular with traditional enterprise.</p>
<p>	Representational State Transfer (REST or RESTful): which are more easily integrated with HTTP than SOAP because they do not require XML messaging or WSDL definitions.<br />
Web Service Benefits:<br />
•	Exposing the existing function on to network<br />
•	Connecting Different Applications.<br />
•	Standardized Protocol<br />
•	Low Cost of communication</p>
<p>Conclusion: Web services utilize existing IT infrastructures and allow companies to wrap legacy applications in a standardized, consistent and reusable format so every investment can be leveraged. They provide a low-cost way to connect internal applications and collaborate among business partners.</p>
<p>By: KN</p>
<p>References</p>
<p>http://www.ebizq.net/topics/web_services/features/1542.html?page=1</p>
<p>http://www.tutorialspoint.com/webservices/index.htm</p>
<p>http://msdn.microsoft.com/library/ee958158.aspx</p>
<p>http://en.wikipedia.org/wiki/Web_service</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/85/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=85&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/29/kn/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>
	</item>
		<item>
		<title>Business Process Execution Language (BPEL)</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/29/jill/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/29/jill/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 03:33:33 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[23 April 2010]]></category>
		<category><![CDATA[BPEL]]></category>
		<category><![CDATA[Business Process Execution Language]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=83</guid>
		<description><![CDATA[What is BPEL? BPEL, also referred to as WS-BPEL or Web Services Business Process Execution Language, is an XML based language used for orchestrating web services. BPEL is considered “programming in the large”. In 1975, long before the emergence of web services and BPEL, Frank DeRemer and Hans Kron discussed “programming in the large” in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=83&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>What is BPEL?</p>
<p>BPEL, also referred to as WS-BPEL or Web Services Business Process Execution Language, is an XML based language used for orchestrating web services. BPEL is considered “programming in the large”.  In 1975, long before the emergence of web services and BPEL, Frank DeRemer and Hans Kron discussed “programming in the large” in a way that that is very helpful in understanding the purpose of BPEL: </p>
<p>“We distinguish the activity of writing large programs from that of writing small ones. By large programs we mean systems consisting of many small programs (modules), possibly written by different people. We need languages for programming-in-the-small […] for writing modules. We also need a “module interconnection language” for knitting those modules together into an integrated whole” </p>
<p>In this reference, one can look at the business process as the large program/system , the web service as the small program/module, and BPEL as the yarn that knits the web services together.  BPEL has grown in popularity over recent years as Services Oriented Architecture (SOA) has emerged as one of the leading standards for system development. </p>
<p>History </p>
<p>BPEL, like many technical standards, emerged from cooperation of companies that started off developing their own specifications.   In the early 2000’s, Microsoft and IBM were both developing their own standards for orchestrating web services.  Microsoft was developing XLANG and IBM was developing WSFL, Web Services Flow Language.  In 2002, Microsoft, IBM, and BEA jointly developed the initial version of BPEL, BPEL4WS 1.0, and submitted the specification to OASIS for publication.  SAP and Siebel joined these companies in developing BPEL4WS 1.1.   When WS-BPEL 2.0 was </p>
<p>The Technical Side </p>
<p>BPEL is an XML-based programming language.  Just like other programming languages, it includes constructs for conditional branching, looping, variable declaration, simple data manipulation, and sequential command processing.   Most importantly, BPEL provides constructs for messaging and invoking web services and for handling the transactional state of the BPEL process.   </p>
<p>BPEL can invoke web services in two manners, synchronously and asynchronously.   An asynchronous web service call employs a “fire and forget” pattern, the BPEL message invokes a web service and then continues on with its processing.  A synchronous web service follows a request and response pattern.  In a synchronous call the BPEL process invokes a web service and then waits for a reply to continue processing. </p>
<p>BPEL also handles transactional state processing for web services. BPEL processes can have execution times that span from a number of seconds periods to long periods of time from days to months depending on response time of the web services being called.  Both long and short running BPEL processes must be capable of being rolled back if the need arises.   BPEL provides a construct called compensation to handle this situation.  Compensation is the reversing of business process steps that have previously been executed. </p>
<p>What BPEL is NOT </p>
<p>BPEL is not a graphical representation of a business process.  Although Business Process Modeling Notation (BPMN), a flow charting notation for businesses, can be mapped to the BPEL specification, there is no direct mapping of BPEL back to a graphical format.  </p>
<p>BPEL is not used for defining business processes which include human interaction.  By itself, WS-BPEL is only capable of defining the communication and interaction of web services.  Two extensions to BPEL, WS-HumanTask and BPEL4People, are currently being developed with the purpose of adding the ability to account for human activities in business processes. </p>
<p>BPEL Tools </p>
<p>Although the BPEL XML file provides all of the information necessary to describe and invoke web services as part of business process, an engine is needed to execute that process.   Many BPEL engines are available today.  There are open source engines such as ActiveBPEL  and Open ESB as well as commercial engines provided by large vendors including Oracle, SAP, and Websphere.   A number of IDE’s are also available, including Eclipse and JDeveloper, to assist with generating BPEL XML documents.  </p>
<p>Conclusion </p>
<p>Service oriented architecture is becoming the new standard for building large IT systems.  The BPEL specification is an enabler of more widespread and standard use of the web services exposed in the SOA model .  </p>
<p>By: Jill</p>
<p>Sources: </p>
<p>1) http://bpel.xml.org/history<br />
2) http://en.wikipedia.org/wiki/Bpel<br />
3) DeRemer, F. and Kron, H. (1975). Programming-in-the large versus programming-in-the-small. In Proceedings of the international conference on Reliable software, pages 114-121, New York, NY, USA. ACM.<br />
4) Oasis: Web Services Business Process Execution Language Version 2.0, Primer, 9 May 2007<br />
5) http://www.oracle.com/technology/tech/soa/mastering-soa-series/part3.html</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/83/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=83&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/29/jill/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>
	</item>
		<item>
		<title>Model-Driven Architecture (MDA)</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/29/christopher/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/29/christopher/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 03:24:56 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[23 April 2010]]></category>
		<category><![CDATA[MDA]]></category>
		<category><![CDATA[Model-Driven Architecture]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=81</guid>
		<description><![CDATA[Model-Driven Architecture is basically literal in translation. It basically means using a model as a basis for development. I will list some definitions: Model-driven architecture (MDA) is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=81&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Model-Driven Architecture is basically literal in translation.  It basically means using a model as a basis for development.  I will list some definitions:</p>
<p>Model-driven architecture (MDA) is a software design approach for the development of software systems.  It provides a set of guidelines for the structuring of specifications, which are expressed as models.  Model-driven architecture is a kind of domain engineering, and supports model engineering of software systems. It was launched by the Object Management Group (OMG) in 2001.</p>
<p>Model-Driven Architecture is a “philosophy” of how models should be used in the software development process.  Developers across the software industry are embracing this philosophy as they apply and evolve MDA principles as defined by the OMG.</p>
<p>The OMG Model-Driven Architecture (MDA) addresses the life cycle that spans design, deployment, integration, and management of applications.  The OMG’s MDA initiative is an evolving conceptual architecture for a set of industry-wide technology specifications that support a model-driven approach to software development.</p>
<p>Model-Driven Architecture (MDA) is a style of enterprise application development and integration, based on using automated tools to build a system-independent model and transform them into efficient implementations.  The Object Management Group (OMG) has defined standards for representing MDA models, but the principles and practice of MDA are still evolving.  At one extreme, MDA is little more than a front end to writing code in traditional programming languages, such as C++ and Java.  At the other extreme, some authors expect an almost magical increase in power by simply using models.  Some believe that MDA has the potential to greatly reduce development time and greatly increase the suitability of appplications; it does so not by magic, but by providing mechanisms by which developers can capture their knowledge of the domain and the implementation technology more directly in a standardized form and by using this knowledge to produce automated tools that eliminate much of the low-level work of development.  More importantly, MDA has the potential to simplify the more challenging task of integrating existing application and data with new systems that are developed.</p>
<p>From my research, there are three main ideas or complimentary foundations of MDA I would like to briefly discuss.</p>
<p>1.	Direct representation<br />
2.	Automation<br />
3.	Open Standards</p>
<p>Direct representation</p>
<p>Shift the focus of software development away from the technology domain toward the ideas and concepts of the problem domain.  Reducing the semantic distance between problem domain and representation allows a more direct coupling of solutions to problems, leading to more accurate designs and increased productivity.</p>
<p>Perhaps the greatest difficulty associated with software development is the enormous semantic gap that exists between domain-specific concepts encountered in modern software applications, such as business process management or telephone call processing, and standard programming technologies used to implement them. This is true even with the use of present-day “high-level” software frameworks, such as .NET, J2EE, or various Web service architectures and standards. While these frameworks do raise the level of abstraction above that found in today’s programming languages, such as Java or C#, they are still focused primarily on computer concepts rather than application-level concepts. Hence, the effort required to implement complex applications is still formidable because the semantic gap is so large</p>
<p>Clearly, the more directly we can represent concepts in the application domain, the easier it becomes to specify our systems. Conversely, the greater the distance between the application domain and the model, the less value we get from modeling. Thus, although it is still beneficial to model C# or Java programs using UML–because UML hides a lot of irrelevant detail related to programming language syntax–the full value of MDA is only achieved when the modeling concepts map directly to domain concepts rather than computer technology concepts.</p>
<p>Of course, there are many different application domains, often requiring very different concepts. Furthermore, as experience and knowledge grow, these domains become increasingly more complex and sophisticated. It does not require much insight to realize that different domains will need different, domain specific languages (DSLs). </p>
<p>Domain-specific languages have been around for a long time. Graphical User Interface (GUI) builder systems allow developers to build interfaces by directly selecting and manipulating buttons and other interface widgets, rather than writing pages of repetitive code using a graphics library. Query-by-example database systems allow users to construct simple queries by entering values in a table, rather than writing SQL code. A WYSIWYG desktop publishing application, such as FrameMaker® or Microsoft Word®, is a lot faster and less error-prone than scripting a document in Unix LaTeX.</p>
<p>Domain-specific languages make assumptions about the domain to greatly reduce the size of the specification by exploiting regularities. Only certain kinds of buttons or queries can be used in a GUI. There are things that you can do in troff that you cannot do in a WYSIWYG application. In exchange for the restrictions, however, there is a great simplification in representation that more than justifies the occasional limitation. In fact, the regularity imposed by a domain framework often benefits users by ensuring that all applications use a similar style.</p>
<p>Automation</p>
<p>Direct representation of an application problem is useful for capturing thoughts (the “modeling language as sketch” approach), but if humans must translate the model into an implementation language it will take a lot of time and introduce a lot of errors. MDA increases speed and reduces errors by using automated tools to transform domain-specific models into implementation code. This is the same thing that compilers do for traditional programming languages. Automated model transformations can be applied for other purposes as well. For example, they can be used to provide custom views of complex systems from various viewpoints. They can be used to transform a model based on one type of formalism to a different one, perhaps one that is suitable for some kind of specialized analysis, such as performance or schedulability analyses.</p>
<p>Automation can also analyze models for various flaws, for example, to verify whether a given specification possesses desired safety and liveness properties. Testing can also be automated through generation and execution of test cases or through formalized analysis techniques such as model checking and theorem proving.</p>
<p>Yet another important form of automation available in MDA is the ability to execute models directly, using run-time interpreters. This is, in effect, a transformation directly to execution.<br />
Automation is not magic. An MDA framework makes assumptions about the application domain and the implementation environment. These assumptions constrain the model and permit efficient mappings from the model to the execution domain. For example, in a GUI builder, the buttons all have a regular form, and, more importantly, they are all used in a particular way. The logic of the domain can be built into the application framework, rather than being written by the developer from scratch each time.</p>
<p>Open Standards</p>
<p>Industry-wide standards achieve more than just reuse; they also encourage the emergence of an entire ecosystem of tool vendors addressing many different needs. No single vendor can afford to address all needs. Big vendors, such as IBM, Microsoft, and Sun, can afford the investment needed for large integrated platforms, but they rarely cover the full spectrum of smaller niche markets that may require highly specialized domain knowledge. Small niche vendors can succeed in relatively small markets if they can minimize their development costs by building specialized knowledge on top of generic platform tools. But, they cannot succeed if their tools will not work with the generic tools or if they do not have access to the entire population of users because the big vendors have fragmented the market. The success of automation requires an ecosystem of a few large vendors, many medium vendors, and hundreds of small niche vendors, together providing much more capability to users than any one vendor could supply alone. But this ecosystem will be attractive to vendors and users only if standards ensure that the many tools work together. The CASE industry of the 1980’s failed in part because each vendor tried to do everything alone.</p>
<p>A good example of a software ecosystem surrounds Adobe® Photoshop®, an application that has revolutionized graphics design. A number of independent vendors supply add-ins, such as additional filters, that extend the power of Photoshop. Other vendors supply images that can be used with Photoshop. The combination of generic functionality and optional additions allows users to tailor solutions to their needs that no vendor could afford to develop alone, because the add-ins and images all adhere to a set of standards. </p>
<p>The presence of standards is generally a sign of the maturity of an industry. The MDA standards adopted to date—in particular, the UML and MOF modeling language standards—represent the consolidation of years of experience in the design and usage of software modeling languages in various situations and domains. In the future, we would expect standardization at higher levels and across various domains as well. Proposals are under development in OMG for the domains of Business Process Definition, Business Rules, Business Vocabularies, Life Sciences, Health Care, and Financial Services. </p>
<p>Conclusion</p>
<p>Model Driven Architecture gets power by building models that directly represent domain concepts. Domain-specific languages may either be built on top of general languages such as UML or through meta-modeling frameworks such as MOF. By using frameworks that explicitly model assumptions about the application domain and the implementation environment, automated tools can analyze models for flaws and transform them into implementations, avoiding the need to write large amounts of code and eliminating the errors caused by programming. Not all lower-level programming will be eliminated, of course, but much highly repetitive boilerplate code that realizes standard implementation patterns can be automatically generated. A marketplace of vendors of various sizes and interests can provide a range of capabilities that no single vendor can provide-provided standards exist so that vendors will be able to integrate with other tools of complementary capabilities. </p>
<p>MDA is not a vision of some future since it has already proven itself many times over in diverse application domains; instead, it is a map that, if we choose to follow it, will help us develop better software systems faster.</p>
<p>By: Christopher</p>
<p>References:</p>
<p>1.	 http://www.-ol.ibm.com/software/rational/uml/mda/<br />
2.	MDA Journal, May 2004, An MDA Manifesto, by Booch, Brown, Iyengar, Rumbaugh and Selic<br />
3.	http://www.omg.org/mda/<br />
4.	Enterprise Architecture A to Z, Chapter 7, Daniel Minoli.<br />
5.	Http//en.wikipeida.org/Model-Driven_architecture.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/81/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=81&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/29/christopher/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>
	</item>
		<item>
		<title>Service Oriented Architecture (SOA)</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/29/jaret/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/29/jaret/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 03:10:39 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[23 April 2010]]></category>
		<category><![CDATA[Service Oriented Architecture]]></category>
		<category><![CDATA[SOA]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=77</guid>
		<description><![CDATA[Traditional object oriented programming code reuse was achieved by building code libraries that could be reused (consumed) in other projects. A major drawback to this method becomes evident when the consumed library needs to be updated. Also, developing new projects are still time consuming even with the progress made by using pre-build resource libraries. Service [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=77&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Traditional object oriented programming code reuse was achieved by building code libraries that could be reused (consumed) in other projects. A major drawback to this method becomes evident when the consumed library needs to be updated. Also, developing new projects are still time consuming even with the progress made by using pre-build resource libraries. Service Oriented Architecture (SOA) has the ability to help solve these issues and several others.</p>
<p>What is it?</p>
<p>SOA is an architecture design principals for publishing software code (normally in the form of services) and consuming said published code. The publishing and consuming of these services is accomplished because they use a standard communication definition. This means the published code and the consuming code do not have to be the same language or platform. The services do not have to reside on the same network or even in the same company! </p>
<p><img border="0" src="http://www.iemprogram.com/site/courses/ee615spring2010/jaret/jaret1.jpg"><br />
Figure 1 &#8211; Wikipedia</p>
<p>It also represents a shift in the mindset for companies’ business units. Code and applications developed for a business unit is normally only for that business unit and not shared throughout the company. This means that if another business unit is creating an application that has to do some of the same functions, it has to re-create those functions. Using SOA, functions can be created for one business unit and published on the network to be consumed by other business units’ projects.</p>
<p>What are the benefits?</p>
<p>Using and SOA architecture provides several benefits. As stated above, SOA promotes code reuse in the form of published services. These services can be consumed by other applications across the enterprise and the services can be updated and maintained with fewer overheads since the services can be updated without the consuming applications needing code changes. The cost of developing the services can be spread over the many business units that consume them, helping to keep development costs down. Once enough services are published, new application development can almost be reduced to simply consuming the needed services. Little if any custom code is needed with enough services being published. One of the largest benefits is the increased ability for Business-to-Business interaction. Businesses can publish services their customers and partners can consume that increase the scope and speed of the business they can do with their customers and partners. Most importantly, they retain more control over their code since they did not have to provide SDKs<a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftn1">[1]</a> or DLLs <a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftn2">[2]</a>that could be reverse engineered.</p>
<p>What are the problems?</p>
<p>As with all things IT, there are some problems, perceived or real. One has to remember that SOA is architecture and that architecture can be implemented using various technologies. Most problems that have been noted are related to the technology used to implement SOA, not really SOA itself. An example of this is in using web services with SOAP<a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftn3">[3]</a>. There is an overhead cost associated with serialization and de-serialization of SOAP XML messages as compared to native RPC<a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftn4">[4]</a> calls. Another issue is the management of metadata<a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftn5">[5]</a>. As an SOA environment grows, the amount of metadata to describe the services and what they offer can become difficult to manage.</p>
<p>Another issue that is not really technology is the fact that to properly design SOA architecture, the Business managers must work hand in hand with the IT architects. It is this close cooperation that will produce a successful SOA structure that meets the needs of the business drivers.</p>
<p>What is my opinion?</p>
<p>The ease of code re-uses, an ability to quickly combine services to create new applications, and increased Business to Business interaction capabilities well out weigh the drawbacks I have read about. I do not feel it is the end all solution to IT in business, but I do feel it is an important component.</p>
<p>I believe that SOA combined with advances in grid and cloud computing are going to enable the development of new ways to deliver powerful applications quickly and on more client platforms than before. For instance, presentation devices like the iPhone and iPad could consume an application that helps coordinate disaster relief. It could take input from the user and run complex calculations in the cloud based on real time data that is constantly updated to provide the best solution for the moment and needs forecasts generated from past trends. The presentation device provides minimum computing power but connects the user to the services and resources that do the heavy lifting.  A single company or a group of companies could provide these services that are combined to create the application.</p>
<p>By: Jaret</p>
<p>References</p>
<p>Wikipedia Service Oriented Architecture<br />
<a href="http://en.wikipedia.org/wiki/Service-oriented_architecture">http://en.wikipedia.org/wiki/Service-oriented_architecture</a></p>
<p>Service Oriented Architecture for Dummies<br />
Hurtwiz, Bloor, Baroudi, and Kaufman</p>
<p>Enterprise Architecture A to Z<br />
Daniel Minoli</p>
<p>Dictionary.com<br />
<a href="http://www.dictionary.com/">http://www.dictionary.com</a></p>
<hr size="1" /><a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftnref1">[1]</a> (SDK, or &#8220;Software Development Kit&#8221;) Software provided by a software vendor to allow their products to be used with those of other software vendors.</p>
<p><a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftnref2">[2]</a> Dynamically Linked Library (DLL) A <a href="http://dictionary.reference.com/browse/library">library</a> which is linked to <a href="http://dictionary.reference.com/browse/application+programs">application programs</a> when they are loaded or run rather than as the final phase of <a href="http://dictionary.reference.com/browse/compilation">compilation</a>.<strong> </strong></p>
<p><a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftnref3">[3]</a> Simple Object Access Protocol (SOAP) A minimal set of conventions for invoking <a href="http://dictionary.reference.com/browse/code">code</a> using <a href="http://dictionary.reference.com/browse/XML">XML</a> over <a href="http://dictionary.reference.com/browse/HTTP">HTTP</a>.</p>
<p><a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftnref4">[4]</a> Remote Procedure Call (RPC) A <a href="http://dictionary.reference.com/browse/protocol">protocol</a> which allows a program running on one <a href="http://dictionary.reference.com/browse/host">host</a> to cause code to be executed on another host without the programmer needing to explicitly code for this.</p>
<p><a href="http://ee615spring2010.wordpress.com/wp-admin/post-new.php#_ftnref5">[5]</a> Metadata &#8211; data about data; &#8220;a library catalog is metadata because it describes publications&#8221;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=77&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/29/jaret/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>

		<media:content url="http://www.iemprogram.com/site/courses/ee615spring2010/jaret/jaret1.jpg" medium="image" />
	</item>
		<item>
		<title>Just In Time (JIT)</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/22/april/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/22/april/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 17:35:12 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[2 April 2010]]></category>
		<category><![CDATA[JIT]]></category>
		<category><![CDATA[Just In Time]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=75</guid>
		<description><![CDATA[Just-in-time (JIT) is best defined as an inventory strategy that exists to improve a business’s return on investment by reducing in-process inventory and associated carrying costs. To meet the JIT objectives, the process relies on signals that are known as Kanban. These signals tell production when to make the next part. When JIT is implemented [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=75&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just-in-time (JIT) is best defined as an inventory strategy that exists to improve a business’s return on investment by reducing in-process inventory and associated carrying costs.  To meet the JIT objectives, the process relies on signals that are known as Kanban.   These signals tell production when to make the next part.  When JIT is implemented correctly, it can improve an organization’s: return on investment, quality, and efficiency.</p>
<p>The key elements of JIT, and the techniques for achieving JIT, are:<br />
•	Load leveling &#8211; This technique involves determining appropriate quantities and types of products needed in a given day to meet the customers orders. This allows organizations to produce products with a variety of customer specifications each day, in a smooth sequence that minimizes inventory and delay.<br />
•	Production Sequencing &#8211; This involves calculating the pattern for making each product type in the required amount for any given day.<br />
•	Kanban &#8211;  Often referred to as the &#8220;nervous system&#8221; of lean production, kanban is a key technique that determines the processes of production quantities, and in doing so, facilitates JIT production and ordering systems. Kanban&#8217;s &#8220;pull&#8221; system creates greater flexibility on the production floor, so the organization only produces what is ordered.</p>
<p>Kanban (signals) are a critical part of the Just-in-time system. Therefore, it is important when implementing the kanban system, to focus on four important &#8220;rules&#8221;.<br />
1.	Kanban works from upstream to downstream in the production process (i.e., starting with the customer order). At each step, only as many parts are withdrawn as the kanban instructs, helping ensure that only what is ordered is made. The necessary parts in a given step always accompanies the kanban to ensure visual control.<br />
2.	The upstream processes only produce what has been withdrawn. This includes only producing items in the sequence in which the kanban are received, and only producing the number indicated on the kanban.<br />
3.	Only products that are 100 percent defect-free continue on through the production line. In this way, each step uncovers and then corrects the defects that are found, before any more can be produced.<br />
4.	The number of kanban should be decreased over time. Minimizing the total number of kanban is the best way to uncover areas of needed improvement. By constantly reducing the total number of kanban, continuous improvement is facilitated by concurrently reducing the overall level of stock in production.</p>
<p>Once the just-in-time and kanban systems are in place the benefits that are realized are:<br />
•	Reduced setup time &#8211; Cutting setup time allows the company to reduce or eliminate inventory for &#8220;changeover&#8221; time. The tool used here is single-minute exchange of dies (SMED).<br />
•	The flow of goods from warehouse to shelves improves &#8211; Small or individual piece lot sizes reduce lot delay inventories, which simplifies inventory flow and its management.<br />
•	Employees with multiple skills are used more efficiently &#8211; Having employees trained to work on different parts of the process allows companies to move workers where they are needed.<br />
•	Production scheduling and work hour consistency synchronized with demand &#8211; If there is no demand for a product at the time, it is not made. This saves the company money, either by not having to pay workers overtime or by having them focus on other work or participate in training.<br />
•	Increase emphasis on supplier relationships &#8211; A company without inventory does not want a supply system problem that creates a part shortage. This makes supplier relationships extremely important.<br />
•	Supplies come in at regular intervals throughout the production day &#8211; Supply is synchronized with production demand and the optimal amount of inventory is on hand at any time. When parts move directly from the truck to the point of assembly, the need for storage facilities is reduced.<br />
•	Eliminates over production &#8211; Overproduction affects the environment by increasing the number of products that must be scrapped/discarded as waste; increasing the amount of raw materials used in production; increasing the amount of energy/emissions/wastes that are generated by the processing of the unneeded output. </p>
<p>JIT also has its share of drawbacks as well.<br />
•	Can result in more frequent runs for parts/materials<br />
•	May not succeed in reducing/eliminating overproduction<br />
•	Overproduction can cause damaged goods and inventory storage space.</p>
<p>The philosophy behind JIT is simple: The just-in-time system is the planned elimination of all waste and continuous improvement of productivity, with the objective of producing the right part in the right place at the right time.  Waste results from any activity that adds cost without adding value, such as the unnecessary moving of materials, the accumulation of excess inventory, or the use of faulty production methods that create products requiring subsequent rework.  </p>
<p>By: April</p>
<p>References:</p>
<p>http://www.epa.gov/lean/thinking/kanban.htm</p>
<p>http://www.strategosinc.com/just_in_time.htm</p>
<p>http://smallbusiness.dnb.com/manage/finances/12375503-1.html</p>
<p>http://en.wikipedia.org/wiki/Just-in-time_(business)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/75/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=75&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/22/april/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>
	</item>
		<item>
		<title>Capability Maturity Model Integration (CMMI)</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/22/td/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/22/td/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 17:27:07 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[2 April 2010]]></category>
		<category><![CDATA[Capability Maturity Model Integration]]></category>
		<category><![CDATA[CMMI]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=73</guid>
		<description><![CDATA[Or how I learned to love continuous process improvement. At first glance, the name looks like someone, or a group, simply grabbed four words, slapped them together to form a new idea. The first point is to get our brains around the name. Relating the name to processes, the idea is created for continuous improvement [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=73&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Or how I learned to love continuous process improvement.</p>
<p>At first glance, the name looks like someone, or a group, simply grabbed four words, slapped them together to form a new idea.</p>
<p>The first point is to get our brains around the name. Relating the name to processes, the idea is created for continuous improvement using mature models of a process to improve quality and potentially reduce costs.<br />
One hypothesis is since it was ‘founded’ at Carnegie Mellon, the acronym for CMMI was a tip of the hat to Carnegie Mellon Institute. It is a registered service mark with the Software Engineering Institute (SEI) at Carnegie Mellon University in Pittsburgh, PA..</p>
<p>Breaking down the name…</p>
<p>Capability = able to do something;<br />
Maturity = seasoned, aged, more developed;<br />
Model = a representation, standard or example;<br />
Integration = bringing all ingredients together.</p>
<p>Roughly translating, a seasoned and well thought example of how to do something that is repeatable and efficient using a model or best practices, and those involved learn from their mistakes or successes, constantly evolving or maturing the process which in turn improves quality, reduces costs, etc..</p>
<p>It is a methodology of continuous process improvement and apparently is a standard similar to ISO 9001 (i).  The difference being that ISO 9001 sets a minimum standard of quality and CMMI a means to continually improve the development cycle (ii). </p>
<p>From the SEI/CMMI website, ‘CMMI is a process improvement approach that provides organizations with the essential elements of effective processes that ultimately improve their performance. CMMI can be used to guide process improvement across a project, a division, or an entire organization. (iii) Processes are identifiable actions or steps to an end or goal within organizations. Having a process that is poorly defined, insufficiently detailed, unrealistic or any other of a number issues, means the process will be flawed. CMMI helps eliminate those issues. ‘While process is often described as a node of the process-people-technology triad, it can also be considered the “glue” that ties the triad together. (iv)</p>
<p>How does it help? CMMI uses ‘maturity’ stages or layers to identify the age and wisdom of a process or organization. Those layers are initial, managed, defined, quantitatively managed and optimizing. No one step can be skipped to achieve varying levels of maturity.</p>
<p>•	Initial- Process(es) that are poorly defined, unreliable and in many cases consistently over budget.<br />
•	Managed- Process(es) are still basic but planned and more refined. Some basic measurements and requirements are established.<br />
•	Defined- Processes are now defined with specific and generic goals. Further, processes are standardized for consistency throughout the organization.<br />
•	Quantitatively managed- Processes now have statistical, quantitative and qualitative measurements for process enhancement, improvement and control.<br />
•	Optimizing- Processes are now in focus with continual improvements using the various previously established methods of control, statistical measurements and methods.</p>
<p>Gleaned from a previous class, this is reminiscent of Bruce Tuckman’s ‘Forming, Storming, Norming, Performing’ of group development.  Where the ‘initial’ and ‘managed’ phases may be represented by the ‘forming’ phase of a group. ‘Defined’ is represented as ‘storming.’ Layer 4, ‘quantitatively managed’ represents ‘norming.’ And the last layer of ‘performing’ is ‘optimizing.’ At each level, the group/process is sharpened and better organized.</p>
<p>One difference though is CMMI requires organizations utilizing various processes, big or small, to be certified or ‘recognized’ at different levels. Much like using a whetstone to hone a knife as a process is ‘sharpened,’ the process is identified at a certain stage until ‘level 5’ is achieved.</p>
<p>Using the CMMI models (currently V1.2) there are three areas for process improvement also known as ‘constellations.’ Those are 1) development, 2) services, and 3) acquisitions. ‘CMMI models are collections of best practices that you can compare to your organization’s best practices and guide improvement to your processes. (vi)</p>
<p>CMMI-DEV- Deals with development organizations and processes like software.<br />
CMMI-SVC- Relatively new offering for service oriented industries, but similar mature models and best practices for the service industry.<br />
CMMI-ACQ- Refers to models improving processes related to solution acquisitions. Improves control of projects and processes to meet the needs of an organization.</p>
<p>For greater detail and to drive down in the detail of CMMI, please see http://www.sei.cmu.edu/reports/06tr008.pdf</p>
<p>Within all of these is a framework. This framework provides the structure which includes models, manuals and training to build the previously mentioned constellations. This framework also helps identify the levels of maturity. For more detail of this framework and the varying levels at which a process is ‘mature,’ please visit http://en.wikipedia.org/wiki/Capability_Maturity_Model_Integration.</p>
<p>Bottom line, when you see CMMI, think continuous process improvement, at any level and almost any size organization.</p>
<p>By: TD</p>
<p>i  http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci930057,00.html<br />
ii  http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci930057,00.html<br />
iii  http://www.sei.cmu.edu/cmmi/index.cfm<br />
iv  http://www.sei.cmu.edu/library/assets/cmmi-overview071.pdf page 7<br />
v  http://en.wikipedia.org/wiki/Forming,_storming,_norming_and_performing<br />
vi  http://www.sei.cmu.edu/cmmi/index.cfm</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/73/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=73&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/22/td/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>
	</item>
		<item>
		<title>Lean Six Sigma</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/22/greg/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/22/greg/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 17:03:13 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[2 April 2010]]></category>
		<category><![CDATA[Lean Six Sigma]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=71</guid>
		<description><![CDATA[The base of both Lean and Six Sigma flash back to the time when the greatest pressure for quality and speed were in the manufacturing of goods. Lean climbed as a method for optimizing automotive manufacturing; Six Sigma was developed as a quality initiative to eliminate defects by reducing variation in processes in the semiconductor [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=71&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The base of both Lean and Six Sigma flash back to the time when the greatest pressure for quality and speed were in  the manufacturing of goods. Lean climbed as a method for optimizing automotive manufacturing; Six Sigma was developed as a quality initiative to eliminate defects by reducing variation in processes in the semiconductor industry.</p>
<p>In short, what sets Lean Six Sigma apart from its individual components is the recognition that you cannot just improve quality or just improve speed. You need the balanced processes that can help an organization to focus on improving service quality, as defined by the customer within a set time limit.</p>
<p>Six Sigma is a business management strategy realized by Motorola Corporation in 1981.  With Six Sigma the goal is to reduce process variation statistically.</p>
<p>Lean is the practice of breaking down processes to the minimum required to be productive while also eliminating non-value added waste.  Basically the bloated processes lose weight, or become “lean”.  Lean is usually employed by determining and visually mapping the flow of processes, flowcharts can be used.  Lean is often employed in five distinct steps—identify value, define value streams, determine flow, define pull, and improve process.</p>
<p>Lean Six Sigma is a business process improvement technique that maximizes value by achieving the speediest rate of improvement in customer satisfaction, cost, quality, process speed, and invested capital. The fusion of Lean and Six Sigma improvement methods is required because:<br />
•	Lean cannot bring a process under statistical control<br />
•	Six Sigma alone cannot dramatically improve process speed or reduce invested capital<br />
•	Both enable the reduction of the cost and reduction of the complexity of business processes.  A lean process is a less complex process.</p>
<p>I conducted a brief interview of a classmate who has a foundational knowledge of lean, six sigma, and lean six sigma.  I will allow my source to remain anonymous.  This is her thoughts.</p>
<p>Lean—“power to the workers” </p>
<p>She explained that with lean the process improvement teams often get the best improvement results by surveying those who actually perform the work in the path of the process.  Those with the hands-on knowledge of the flow usually know what is broken and sometimes have improvement ideas that can be included in the BPI plans.</p>
<p>Six Sigma—“solely based on data”</p>
<p>She explained that Six Sigma used alone in BPI initiatives will be focused on data gathering and data analyzing. </p>
<p>Lean Six Sigma—“gives you more tools to work with”</p>
<p>The combination of two seemingly disparate methodologies can prove to solve A BPI initiative from all the angles required to reach genuine and measurable improvement.   </p>
<p>One of these tools that will help standardize BPI across a business or organization is DMAIC.  I have been discussing Business Process Improvement in the posting for over a dozen paragraphs now, so I was overdue to introduce another complex acronym.  Please allow me to define DMAIC.</p>
<p>Define the problem<br />
Measure the key aspects of the current process and collect relevant date.<br />
Analyze the data to investigate and verify cause-and-effect relationships.<br />
Improve the current process based upon data analysis<br />
Control the future state process to ensure that any deviations from target are corrected before they result in defects.</p>
<p>One could write an entire book and hold graduate courses on the use of DMAIC.  There are also countless other tools to use with DMAIC.  The book ‘The Lean Six Sigma Pocket Toolbook” introduces DMAIC on page one with the well written and inspiring sentence that follows:</p>
<p>The structure of DMAIC encourages creative thinking within boundaries such as keeping the basic process, product, or service.</p>
<p>The book ‘The Lean Six Sigma Pocket Toolbook” also recognizes that some processes are to badly broken ….</p>
<p>From the book—If your process is so badly broken that you need to start from scratch or if you are designing a new product, service, or process, use Design for Lean Six Sigma (DMEDI)</p>
<p>As an outsider researching Lean Six Sigma I have found that using these techniques as  a combined BPI toolkit makes a lot of sense and can be very powerful the hands of skilled and dedicated teams. Although, there are purists on both sides of the Lean vs. Six Sigma debate those claims their way is the only way to improve business processes.  </p>
<p>I will close by saying that Lean Six Sigma as it has evolved from the two methodologies is very powerful and is logical to use each for its strengths.  Use Lean for improved process flow.  Use Six Sigma to reduce process variation.</p>
<p>By: Greg</p>
<p>References:<br />
1.	http://en.wikipedia.org/wiki/Six_Sigma<br />
2.	http://www.articlesbase.com/business-articles/lean-versus-six-sigma-whats-the-controversy-what-the-difference-595677.html<br />
3.	http://www.armyobt.army.mil/<br />
4.	Interview with IEM Classmate.<br />
5.	George, Rowlands, Price, Maxey (2005).  “The Lean Six Sigma Pocket Toolbook”, McGraw-Hill Companies</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/71/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=71&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/22/greg/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>
	</item>
		<item>
		<title>Kaizen</title>
		<link>http://ee615spring2010.wordpress.com/2010/04/22/lynn/</link>
		<comments>http://ee615spring2010.wordpress.com/2010/04/22/lynn/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 16:53:47 +0000</pubDate>
		<dc:creator>ee615spring2009</dc:creator>
				<category><![CDATA[2 April 2010]]></category>
		<category><![CDATA[Kaizen]]></category>

		<guid isPermaLink="false">http://ee615spring2010.wordpress.com/?p=67</guid>
		<description><![CDATA[I’m very interested in process improvement concepts. I was somewhat familiar with Lean Six Sigma and other methodologies, but had never heard of Kaizen. So I took this as an opportunity to learn about a new methodology. Origin Kaizen was introduced to us by the Japanese just after World War II when Japan’s economy was [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=67&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I’m very interested in process improvement concepts. I was somewhat familiar with Lean Six Sigma and other methodologies, but had never heard of Kaizen. So I took this as an opportunity to learn about a new methodology.</p>
<p>Origin<br />
Kaizen was introduced to us by the Japanese just after World War II when Japan’s economy was struggling. But over the last 30 years has gained momentum in the United States, appearing first in the west with Japanese car manufacturers.</p>
<p>It originates from the words represented below &#8211; loosely translated, means continuous improvement.</p>
<p><img border="0" src="http://www.iemprogram.com/site/courses/ee615spring2010/lynn/lynn1.jpg"></p>
<p>About the Kiazen methodology:<br />
–	It is based on the concept that everything can be improved.<br />
–	It encourages looking at a current process, whether broken or not, and assessing that process for improvement.<br />
–	It is people driven. To ensure success, the process should be embraced by employees, provoking a spirit of collaboration, bringing about improvements internally from within the organization by the people who participate in the workflow. Every worker is encouraged to make small suggestions in support of improvements.<br />
–	Its focus is on small incremental changes, always working toward improvement.</p>
<p>Eastern –vs- Western Philosophies<br />
Perhaps one of the things that make Kaizen successful is the eastern philosophy that ALL people are important to the success or failure of the business. Traditional western management styles dictate a divide among staff by work type. Managers are seen as the leaders and the decision makers. They are often removed from the actual workers who are in a better position to provide them with ways to improve a certain process. Or at the very least, inform them of inefficiencies in a process.</p>
<p>The western management style is often, “if it ain’t broke, don’t fix it”. A style that is reactive rather than proactive. Changes are only implemented for reasons that impact the bottom line in a positive way. You almost never see the boss unless something is wrong. This has a negative effect on staff, it fosters negative behaviors, such as employees waiting to be told what to do, instead of acting on their own and feeling empowered to perform their job. I’ve taken the table below from one of my resources, Graphic Products, Inc. I believe it illustrates the differences in the 2 philosophies quite well.</p>
<p><img border="0" src="http://www.iemprogram.com/site/courses/ee615spring2010/lynn/lynn2.jpg"></p>
<p>Benefits<br />
Research suggests that where Kaizen methodologies are properly implemented, unexpected results occur. Managers become better leaders, service line staff become better employees and the whole organization becomes more unified, all working toward a common goal. This methodology cultivates an environment of solidarity. But these kinds of realizations are only received by organizations who sincerely seek new, big or small, ideas from all sources. </p>
<p>Toyota, one of the largest automotive manufacturers is a pioneer in Kaizen principles. They claim they received 75,000 suggestions from 7,000 employees – 99% were actually implemented.</p>
<p>Implementing any new process requires change. Change is often difficult to effect in any cultural. According to research, implementing Kaizen principles takes time and dedication, but does produce favorable results when executed properly.</p>
<p>Conclusion<br />
How can you go wrong fostering an environment where every employee is encouraged to look for a way to make a process better?! </p>
<p>In my own personal experience with culture change, it’s important early “in the game” to advertise small wins. Talk about where successes have been realized and what lessons have already been learned and gain some confidence and respect. That goes a long way.</p>
<p>In my research, I found “The 10 Commandments of Improvement” from Gemba Research LLC. They made me think about things with a different perspective. We are such a culture of negative thinking. I like these and plan to use them in future process improvement initiatives.</p>
<p>1.	Abandon fixed ideas.<br />
2.	Think of ways to make it possible.<br />
3.	No excuses needed.<br />
4.	Go for the simple solution, not the perfect one.<br />
5.	Correct mistakes right away.<br />
6.	Use your wits, not your wallet<br />
7.	Problems are opportunities.<br />
8.	Repeat “why” five times.<br />
9.	Seek ideas from many people.<br />
10.	There is no end to improvement.</p>
<p>By: Lynn</p>
<p>References:<br />
Gemba Research LLC– www.gemba.com<br />
Graphic Products, Inc.– www.graphicproducts.com<br />
Army Business Transformation Knowledge Center<br />
Value Based Management- www.valuebasedmanagement.net/methods_kaizen.html</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ee615spring2010.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ee615spring2010.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ee615spring2010.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ee615spring2010.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ee615spring2010.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ee615spring2010.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ee615spring2010.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ee615spring2010.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ee615spring2010.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ee615spring2010.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ee615spring2010.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ee615spring2010.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ee615spring2010.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ee615spring2010.wordpress.com/67/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ee615spring2010.wordpress.com&amp;blog=11406440&amp;post=67&amp;subd=ee615spring2010&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ee615spring2010.wordpress.com/2010/04/22/lynn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cc387594cc9c4d0d72abcc962f293f37?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ee615spring2009</media:title>
		</media:content>

		<media:content url="http://www.iemprogram.com/site/courses/ee615spring2010/lynn/lynn1.jpg" medium="image" />

		<media:content url="http://www.iemprogram.com/site/courses/ee615spring2010/lynn/lynn2.jpg" medium="image" />
	</item>
	</channel>
</rss>
