<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Service-Oriented Architecture</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/" />
    <link rel="self" type="application/atom+xml" href="http://www.infosysblogs.com/soa/atom.xml" />
   <id>tag:www.infosysblogs.com,2010:/soa/1</id>
    <link rel="service.post" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1" title="Service-Oriented Architecture" />
    <updated>2010-01-04T12:31:42Z</updated>
    <subtitle>&quot;We didn&apos;t start the fire ... it was always burning since the world&apos;s been turning ...&quot; [Billy Joel 1989].  Is SOA the &quot;Same Old Architecture?&quot; or is it &quot;Simply Over Ambitious?&quot; Let&apos;s apply SOA&apos;s arsenal:: XML, BPM, Services, SOAP, Web Services -  to the real world and find out. Let&apos;s put out some fires.</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.2ysb5-20051201</generator>
 
<entry>
    <title>SOA wishlist for Santa Claus...(and food for thought for rest of us)</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/12/soa_wishlist_for_santa_clausan.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=113" title="SOA wishlist for Santa Claus...(and food for thought for rest of us)" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.113</id>
    
    <published>2009-12-21T08:43:28Z</published>
    <updated>2010-01-04T12:31:42Z</updated>
    
    <summary>I know it’s not fair to pull Santa into the SOA groove but I decided to take a shot to post my top priority wish list for SOA to Santa…just in case if this works, I may solve the world hunger (in SOA context of course) someday….so those who want to have fun, most welcome to read this post, others can take it seriously (including Santa)..</summary>
    <author>
        <name>Rakesh Mishra</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[I know it&rsquo;s not fair to pull Santa into the SOA groove but I decided to take a shot to post my top priority wish list for SOA to Santa&hellip;just in case if this works, I may solve the world hunger (in SOA context of course) someday&hellip;.so those who want to have fun, most welcome to read this post, others can take it seriously (including Santa)..]]>
        <![CDATA[<ol><li><strong>Simplify the scope of SOA</strong> (and so our lives who need to deal with it day in and day out) &ndash; SOA is perfect example of the one of the &lsquo;Doom signs&rsquo; that I talked about my another blog &rdquo;<a href="http://www.infosysblogs.com/bpm-eai/2009/11/are_we_growing_on_a_fundamenta.html" target="_blank"> Are we growing on a fundamentally doomed DNA for tomorrow's IT eco-system</a>&rdquo; . As SOA become popular stuff, there seems to be SOA solution for everything in the life, including marriage problem (that&rsquo;s slight exaggeration but you know what I&rsquo;m talking about). It basically meant that the global SOA framework has millions of stuff to be designed, looked after and &lsquo;reengineered&rsquo; to make it work in SOA way. I think that&rsquo;s way too much. So if there is only one wish that Santa is going to grant, that will be to simplify the scope of SOA so that millions of engineers and consultants who are spending countless hours on SOA with clients can save lot of precious time and energy and deliver exactly as much is needed exactly how it is meant to be.</li><li><strong>Let SOA investments be absolutely business (performance) goal driven</strong> (and given to IT to meet the goals than meeting the specifications only) &ndash; I think Santa can relate to this easily. He doesn&rsquo;t give X-mas gifts to children just like that. He knows what goals he has for those children. SOA investments are somewhat like that. Many of the SOA programs don&rsquo;t really have well defined business goals and in fact for many of such programs, there aren&rsquo;t any expectations from business at all. That scares me a lot while nearly 60% (don&rsquo;t count on this number, it just means majority of it) of the SOA intellectual teachings on the web say that SOA is all about business and yet, most of the SOA programs don&rsquo;t have any clearly defined measurable business goals that are used to define, design and deploy the SOA capabilities.</li><li><strong>Give us freedom from &lsquo;technology minefield&rsquo; to focus on architecture and business</strong> &ndash; That&rsquo;s another issue with Santa. He fortunately or unfortunately doesn&rsquo;t need to rely on technology as such to get his Christmas stuff done. So he will need to spend some more time with me to understand how technology minefields are blocking the focus on the core through which value is created &ndash; Architecture and Business engineering. It seems majority of consumers are badly occupied solving technology problems in order to free up their thinking CPU for going to next step of SOA. </li><li><strong>May every IT portfolio competently adopt SOA as core</strong> of their part of the IT architecture (and save the world from the complications of yet another competency center) &ndash; this is endless debate but because it is my wish list, I think I&nbsp; can be free to ask Santa to make it happen, some may like, others may not. If you fall into any of these two categories (likes and dislikes), you just can&rsquo;t miss reading my another blog (and post your comments of likes and dislikes both welcome equally) &ldquo;<a href="http://www.infosysblogs.com/soa/2008/08/who_needs_the_soa_competency_c.html#more" target="_blank">Who Needs the SOA Competency Center in this world?</a>&rdquo;&nbsp;</li><li><strong>Make&nbsp;all the vapor stuff disappear</strong> (and bless the real stuff no matter how small that might be) &ndash; Unfortunately Santa has not spent any of his time following the fun in the IT industry so it is going to be very difficult for him to understand the problem of a thick vapor layer that has engulfed the real-stuff behind SOA across the globe. So I don&rsquo;t mind spending time with him and I&rsquo;m sure when he understands the seriousness of the vapor problem (no less than global warming and ozone layer depletion in my view), he may not mind casting spell to make all the vapor disappear. Current rate of disappearance is very slow and it is big time hindering the focus on what really SOA could do/should do.</li><li><strong>Orient the top brains (and minds) towards serious and selfless collaboration</strong> to create next breakthrough innovation with SOA &ndash; I mean, how long can industry be talking about the same thing again and again and again and yet again. SOA is a good thing and it has been very kind to industry to give new hopes, new excitement and new view-points. But it got to be moving forward. We all are making small small steps for that but I think it will be just great if top brains across the globe could unite and bring forward best of the innovation in this space that can transform the industry. SOA needs it. Otherwise we all will be sitting in our own small corners and beating our own drums for all small stuff that we could do and our time will be up. We all are selfish to some extent in our business space and competitive landscape so I thought I will leverage the divine power to resolve this problem.</li><li>Save me from feeling guilty of not having &ldquo;seven&rdquo; wishes. It seems everyone has either top 7 or top 10 for whatever they want to say. Unfortunately I got stuck at 6th and I could not figure out what my 7th wish could be. I hope Santa doesn&rsquo;t mind that.</li></ol><p>So that&rsquo;s all I have. It is very difficult for me to anticipate what will be going in the people&rsquo;s head when they read this blog (so risk is entirely mine) but if you have your wish-list for Santa for SOA for 2010 and beyond then treat this blog space as your home and share with us what your wishes are. Who knows, Santa just might be listening to all this and it could turn out to be a rather serious affair. Wish all of you a great X-mas ahead!</p>]]>
    </content>
</entry>
<entry>
    <title>IBM SOA Stack – Scope for Simplification</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/11/ibm_soa_stack_scope_for_simpli.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=112" title="IBM SOA Stack – Scope for Simplification" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.112</id>
    
    <published>2009-11-26T13:18:36Z</published>
    <updated>2009-11-27T09:11:56Z</updated>
    
    <summary><![CDATA[by Rajat BhatlaI had attended a workshop on understanding IBM SOA technologies at IBM South Bank London a few months ago. &nbsp;At the time I was also on a project where we were defining an enterprise SOA based landscape. &nbsp;So...]]></summary>
    <author>
        <name>Guest Author</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>by <strong>Rajat Bhatla</strong></p><p>I had attended a workshop on understanding IBM SOA technologies at IBM South Bank London a few months ago. &nbsp;At the time I was also on a project where we were defining an enterprise SOA based landscape. &nbsp;So it was quite a good timing with live practical experience on one side and IBM on the other. It proved a rich learning experience, combined with interactions with SOA practitioners from different streams, hands on labs and highly experienced IBM staff. In this post I&rsquo;ll just focus on the Websphere stack of tools that we were exposed to, and my takeaway feelings about the set of products that we did hands on with. <br /></p>]]>
        <![CDATA[<p>&nbsp;</p><p>More or less accurately, the IBM SOA stack comprises of the following,<br />Stack comprises of<br /></p><ul><li>Rational Application Developer</li><li>Integration developer (Eclipse)</li><li>Service Registry and Repository</li><li>Process Server</li><li>Business Process Fabric</li><li>Business Monitor</li><li>Business Space</li><li>ESB</li><li>Business Rule engine (inbuilt)</li><li>Business Integration Server</li></ul><p>&nbsp;</p><p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">There was a guiding case study that took us through implementation aspects of each of these tools in building an SOA enabled enterprise stack. &nbsp;There was little coding, mostly configuration around these tools. It was a 3 day workshop, but even then with the number of tools to go through quite packed.<br /></span>  </p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)" /><p style="margin-bottom: 13.5pt; line-height: 16.8pt" class="MsoNormal"><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">Some of my key observations from the experience,</span></p>  <p>&nbsp;</p><ul><li><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">As you might see from the outset, for someone unaccustomed to working with the IBM stack, it has a rather &ldquo;elaborate&rdquo; feel to it. At a high level it seems that modularity offered by providing layer-wise components is useful, but the associated complexity is a bit harder to digest. &nbsp;IBM likely has a sound basis for configuring stack in this way. Possibly better suited to problems and projects of huge scale, where you can afford to dedicate teams to a particular application layer. &nbsp;But, far more often development happens with small teams, and individual developers spanning the all layers of a development. Burdening then with 7 tools to manage their end to end isn&rsquo;t a Project Manager&rsquo;s productivity tip.<br /></span></li></ul><p>  </p><ul><li><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">The core Process server, ESB and App server is basically a Russian doll configuration of one tool built over the other.&nbsp; But if you have to acquire BPM and ESB capability it seems that you have to buy each one separately.&nbsp; Is it not possible for Websphere to be sold as a Core + Plugin configuration?&nbsp; e.g. &nbsp;1) Websphere standalone, 2) Websphere with ESB plug-in and 3) Websphere with ESB and Process Server plugins. Is it, that if it is done this way, clients will not need to buy all the three and then not need to buy some more hardware to stack them on top of each other? May be I am being too harsh, but my argument is that if I need a car with a sat-nav I don&rsquo;t go a buy a new car; I buy a sat-nav. My feel of looking at the 3 products was that they all share a common framework and can possibly be bundled up as one.<br /></span></li></ul><blockquote><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)"><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)"><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">In fact a question had been asked that&nbsp;Process server and ESB appear to be very similar products to the point of BPM looking like a rebadged version of ESB, so what is the distinction? One of the main answers was that Process Server should be used for Stateful orchestrations and ESB for stateless orchestrations. Well, is it then left to the user to define a distinction for himself while having paid extra licensing costs for each layer of the stack?</span></span></span></blockquote><p>  </p><p>  </p><ul><li><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">Thirdly, is it not possible for business fabric, business monitor and business space functions to be woven into the business process server itself? Not just tool integration but inclusive in process server license as well. <br /></span></li></ul><p><br /><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)"><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)"><br /><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">Depending upon initial build requirements of a project one may may need a variable set of tools to start with from this list, chances are as requirements grow in complexity remaining ones will be needed as well.</span></span></span></p><p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">In enterprise architecture, tools are enablers of implementation. When tools become too complex, the effort in adapting to the tools distracts from the core architecture itself and increases cost to business.</span></p><p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(75, 93, 103)">In meeting this premise better, I feel IBM &nbsp;SOA stack needs to be configured or packaged in a way that makes it feel light, more integrated, easy to adapt to and cost effective.<br /></span></p><p>  </p>    <p>&nbsp;</p><p>&nbsp;</p>]]>
    </content>
</entry>
<entry>
    <title>The SOA Architectural Challenges in Practice</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/11/the_soa_architectural_challeng.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=111" title="The SOA Architectural Challenges in Practice" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.111</id>
    
    <published>2009-11-15T22:27:24Z</published>
    <updated>2009-11-15T22:30:16Z</updated>
    
    <summary>by Murteza SalemiReflecting on my recent engagement within educational sector I touched and felt the SOA architectural challenges again. Going to the workshops to understand the requirements and business processes it was quite evident that the challenges for an SOA...</summary>
    <author>
        <name>Guest Author</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>by <strong>Murteza Salemi</strong></p><p>Reflecting on my recent engagement within educational sector I touched and felt the SOA architectural challenges again. Going to the workshops to understand the requirements and business processes it was quite evident that the challenges for an SOA architect do not stop with solving only the technical sides of the SOA architecture. The architect must also coordinate and guide the enterprise&rsquo;s collaboration between business processes, people, information, and technology to ensure the focus remains on achieving enterprise&rsquo;s goals rather than anything else.<br />&nbsp;</p>]]>
        <![CDATA[<p><br />The organisation have a vision and key business drivers that when implemented through SOA it will require a consistent interpretation as it is put on the ground for development. Metrics and dashboards are tangible to business stakeholders to see their vision has translated to real effects.<br />&nbsp;The actual development of SOA will take place step-by-step and project by project. Services that are developed in one and today&rsquo;s project must satisfy future requirements and need, and today&rsquo;s project must be able to leverage the services developed in yesterday&rsquo;s project. <br /></p><p>Services present the capabilities and the structure of business processes, applications, systems, etc. One typical challenge faced in an organisation is that business processes are intertwined with legacy systems and applications and the obvious consequence of this tight coupling is that it is no longer possible to design one without changing the other. Thus, building SOA architecture must not be considered as purely technical exercise but it is also a business exercise that requires the active participation of key business stakeholders. The immediate impact of business involvement is validation and verification of business services required for development.<br /></p><p>Building SOA architecture is a long term journey and should not interrupt the core business functionalities from delivering value and making revenues. SOA will not be built from scratch but it will be depending upon a set of processes and legacy systems. In practice this means that existing business processes and systems will evolve gradually into an SOA and changes are introduced incrementally and rigorously.<br /></p>]]>
    </content>
</entry>
<entry>
    <title>SOA Service Management (Part 1):  Viewpoints of Complexity</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/11/soa_service_management_part_1.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=110" title="SOA Service Management (Part 1):  Viewpoints of Complexity" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.110</id>
    
    <published>2009-11-12T21:57:04Z</published>
    <updated>2009-11-12T22:02:19Z</updated>
    
    <summary><![CDATA[By Anuj Sethi&nbsp;I would like to begin by stating that the title above can be interpreted in multiple ways (yes it&rsquo;s the word &lsquo;Service&rsquo;). Hopefully by the end of this blog you will be able to appreciate why I have...]]></summary>
    <author>
        <name>Guest Author</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>By <strong>Anuj Sethi</strong></p><p>&nbsp;I would like to begin by stating that the title above can be interpreted in multiple ways (yes it&rsquo;s the word &lsquo;Service&rsquo;). Hopefully by the end of this blog you will be able to appreciate why I have stated so. <br />&nbsp;<br />In most organisations the&nbsp;IT part has two sub-organisations: One responsible for design/develops the software&nbsp;(equivalent of a car manufacturing plant, at some level) and another which&nbsp;actually support the running software (equivalent of a car service station). The focus of this blog is on the latter.<br /><br /></p>]]>
        <![CDATA[IT Service Management (as defined by&nbsp;Wikipedia) is a &lsquo;discipline of managing IT systems, philosophically centred on the customer's perspective of IT's contribution to the business&rsquo;. So it&rsquo;s a bit more than supporting client machines, servers, databases and network.<br />&nbsp;<br />A key&nbsp;problem of 'Service Orientation' within IT (including the business part of IT)&nbsp;is bringing in&nbsp;is the explosion of terminology and acronyms. The main reasons of this are 1) vastness of this topic&nbsp;and 2) lack of standardisation. <br /><br />Thus within the space of ITSM and now SOA Service Management there exist&nbsp;an endless list of new and existing terminologies which amplify the problem there by making it probably more complex than it actually is. <br />&nbsp;<br />...'SOA Service Management', 'Runtime governance', 'Change time governance', 'Service Lifecycle Management', 'IT Service Management', 'ITIL', 'Production Support', 'Managed IT' , 'Infrastructure Management'....<br />&nbsp;<br />I cover some points below which describe what is giving birth to this complexity/confusion&nbsp;in Service Management space with respect to SOA. Overall I believe some complexity&nbsp;is real,&nbsp;however some of it is perceived. It&rsquo;s this way due to differences resulting from various viewpoints. <br />&nbsp;<br /><strong>1) Understanding and Interpretation of the word 'Service' </strong>(in context of IT) is not consistent within and across the organisations.&nbsp;Thus at some point every IT organisation is required to define 'Service' in their context,&nbsp;one&nbsp;that gets well accepted within the organisation. Once this is done,&nbsp;the problem gets somewhat simplified.<br />&nbsp;<br /><strong>2) Maturity of IT Service Management discipline.</strong> Although adoption of ITSM/ITIL disciplines is on the rise, not all organisation are in higher maturity state yet. It&rsquo;s fair to state that an organization that has already employed an ITSM and ITIL implementation will have a much easier time defining and implementing runtime SOA governance and service management. Note the key benefit these frameworks provide is 'Governance' through policies and processes. This is building block for SOA service management.<br /><br />To further complicate matters, nowadays there exist multiple&nbsp;frameworks to choose from and decide what&nbsp;&amp; where&nbsp;to use and how they will work together. For e.g.: ITIL, COBIT, MOF, BS15000 ..etc<br />&nbsp;<br />Well ITSM maturity posses the bigger question of overall maturity of IT Governance itself, but let&rsquo;s not go digress there.<br />&nbsp;<br /><strong>3) Proliferation of vendors in the IT estate.</strong> This one is quite obvious, if you have multiple vendors in the existing IT Management estate the&nbsp;complexity is probably already high. Every vendor has viewpoints on how their products are best used, thereby influencing the processes. Seamless integration and transparency are hurdles to cross in all dimensions of ITSM, i.e. Change Management, Release Management, Incident Management, Monitoring...etc.<br />Importantly we all are well aware that product vendors are always on the constant look out of means to sell new products, new versions of existing products. Thus new terminologies, acronyms are born as each vendor tries to differentiate and market the new shiny toys. (SOA momentum is helping them now than any time before.)<br />&nbsp;<br /><strong>4) Operating model complexity.</strong> Another dimension of complexity is introduced due to the operating model of organisations. Typically a lot of IT Support / Infrastructure management is outsourced to multiple vendors under various contracts. Bringing these together into one way of operating/working is a gigantic task which goes beyond architecture/technology. Imagine, this would not be a problem if entire IT support across all architectural layers is outsourced to one single vendor.<br />&nbsp;<br /><strong>5) Increased number of moving parts.</strong>&nbsp;I think this is sometimes exaggerated. &quot;...very dynamic nature of SOA, many components, recombined for reuse..&quot; Yes it&rsquo;s true the number of parts will increase and their management will become critical. However if you look at existing IT service management, it&nbsp;deals with many moving parts even today. A critical application has at least following moving parts: middleware, web/application servers, runtime environments, database, operating systems, hardware, network etc. <br />&nbsp;<br /><strong>6) Inconsistent understanding of SOA within the organisation.</strong> This is somewhat related to point#1, but with SOA adoption usually accompanied with concepts of Reusability - &lsquo;lifecycle view of all assets&rsquo; and Agility &ndash; &lsquo;iterative nature of processes&rsquo;. This is quite a change from existing ways of working. Without adequate education and awareness within the overall IT organisation it&rsquo;s difficult to pull people together towards the new way of working once it&rsquo;s designed.<br />&nbsp;<br /><strong>7) New architecture style</strong> so more complex management of running software. There exists a belief that SOA is new; so application/service management will be done completely differently and there will be huge impact on IT Support/Operate organisations. <br /><br />I have a contrary opinion that existing IT Support organisation will find it easier to adopt SOA than the design/development organisation. Going back to Wikipedia definition of ITSM, IT support/management became &lsquo;Service Oriented&rsquo; quite few years back and standardisation of same is on the rise. If anyone has had a look at ITIL v3, which is in existence for last 18 months, can appreciate this better. I will cover this more in my future blogs.<br />&nbsp;<br /><strong>Lastly 8) Existing IT Architecture Maturity.</strong> If the existing IT application architecture state is making IT support/ITSM complex and inefficient, this will not improve by SOA adoption. Things will become more complex initially before reaching a managed state as the SOA adoption increases and standard processes are adopted.<br />&nbsp;<br />In the next blog I plan to cover what are the best approaches to manage the complexity of service management in an end to end &lsquo;Service Oriented&rsquo; environment. <br /><br />Meanwhile, feel free agree or disagree with my thoughts and document your views about what adds complexity in this space.<br /><br />]]>
    </content>
</entry>
<entry>
    <title>Has Cloud Computing given SOA another big push?[Part 2]</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/has_cloud_computing_given_soa_1.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=109" title="Has Cloud Computing given SOA another big push?[Part 2]" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.109</id>
    
    <published>2009-10-28T16:20:06Z</published>
    <updated>2009-10-28T16:33:37Z</updated>
    
    <summary>By Brahma AcharyaService design considerations for CloudIn the first part I talked about how SOA and cloud computing converge. SOA does give us the ability to move around services to the cloud. However it might not be sufficient to design...</summary>
    <author>
        <name>Guest Author</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>By <strong>Brahma Acharya</strong></p><p><strong>Service design considerations for Cloud</strong><br />In the <a title="SOA in Cloud" target="_blank" href="http://www.infosysblogs.com/soa/2009/10/has_cloud_computing_given_soa.html#more">first part</a> I talked about how SOA and cloud computing converge. SOA does give us the ability to move around services to the cloud. However it might not be sufficient to design services the traditional way. Cloud brings with it a whole new way of doing things. Cloud enabled services should have the following consideration:<br />&nbsp;</p>]]>
        <![CDATA[<ul><li>&nbsp;Think Parallel: Design your services such that they can be run in parallel. Distributed processing framework like Hadoop and Map/Reduce have made it possible to run applications concurrently on multiple nodes without much effort. Also, think if the services can be run in a multi-processor environment on parallel threads.</li></ul><ul><li>&nbsp;Cost implication: A cost benefit analysis is a must before the services are moved to a cloud. Cloud vendors typically charge for bandwidth usage, execution time and storage cost. As such it is important that the service designers and developers keep that in mind. Resources should be sparingly used and released at the earliest possible opportunity. Data transfer between consumers and clouds should be properly analyzed. For ex: If the service needs huge volume of input and output data it might not be a good candidate for Cloud. The overall cost of hosting such a service in the cloud may actually exceed than that of in-house maintenance. </li></ul><ul><li>Design for failure: Cloud platforms are built to handle failures. However there could be downtime and network issues. The application should be designed and deployed in such a way that a failure in the cloud service doesn&rsquo;t impact mission critical application. For ex: customers of an e-commerce application should be able to shop even though the disks are failing and data centers are down. Amazon&rsquo;s <a title="Amazon" target="_blank" href="http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html">Dynamo </a>is one such platform which provides such reliability. </li></ul><ul><li>Avoid Vendor lockdown: This is more relevant to the SaaS and PaaS model. Ideally the consumers should be able to move from one cloud provider to another without hassle and avoid any sort of vendor lockdown. This seems a little far-fetched at this point of time. Efforts are on to form an open standard for the Cloud. The <a title="Open Cloud" target="_blank" href="http://www.opencloudmanifesto.org/">opencloudmanifesto </a>is a step in that direction. The Open group has also got into the act of providing an <a title="Open Group" target="_blank" href="http://www.opengroup.org/cloudcomputing/">open standard</a>.</li></ul><ul><li>Regulations and laws: In certain cases it might be mandatory as to where the data can be hosted. Some laws like SOX and HIPPA might prohibit enterprise to move certain category of data out of their premises. Services should take these into account. </li></ul><p>&nbsp;</p><p>&nbsp;<strong>Conclusion<br /></strong>Cloud computing is revolutionary in nature. The benefits are too compelling to ignore. As the cloud space heats up, it is important to align your organization properly.&nbsp; Organizations who have implemented SOA will find it easy to move to a cloud environment. Such applications are not limited by the existing hardware and software. However sufficient due-diligence needs to be done before embarking on a full-fledged cloud exercise. </p><p>&nbsp;</p><p>&nbsp;</p>]]>
    </content>
</entry>
<entry>
    <title>SOA Symposium reveals SOA manifesto</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/soa_symposium_reveals_soa_mani.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=108" title="SOA Symposium reveals SOA manifesto" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.108</id>
    
    <published>2009-10-26T04:54:15Z</published>
    <updated>2009-10-26T05:01:57Z</updated>
    
    <summary>By Murteza SalemiWithin SOA space we have seen many definitions for what exactly SOA is, what problem it can solve and how. These varied and diversified definitions have been the main source for the confusion among both the business users...</summary>
    <author>
        <name>Guest Author</name>
        
    </author>
            <category term="Standards" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>By <strong>Murteza Salemi</strong></p><p>Within SOA space we have seen many definitions for what exactly SOA is, what problem it can solve and how. These varied and diversified definitions have been the main source for the confusion among both the business users and technical architects on what SOA is and how it can help. A group of smart experts and practitioners have acknowledged this issue and came together during 2009 to develop the <a href="http://www.soa-manifesto.org/" target="_blank" title="SOA Manifesto">SOA manifesto</a>. The SOA manifesto consists of a set of core values and principles that can guide the SOA initiatives and programs on their SOA journey to make sure they do not go astray and keep them on the right path.<br /><br /></p>]]>
        <![CDATA[<p>SOA manifesto clearly demonstrates the shift in the understanding of the SOA world toward business-centric vision of the Service orientation. It is pretty much in sync with OASIS SOA Reference Model and coming Reference Architecture (RA) standards. What significant about this manifesto is that SOA standards and best practices from different standard groups and SOA thought-leaders have started to demonstrate&nbsp;a tendency to merge focuses and recommended directions, which is very important and pleasant fact. The authors of SOA manifesto say that they &quot;value the items on the right&quot; but &quot;value the items on the left more&quot;:<br /></p><ul><li><strong>Business value</strong>&nbsp;over&nbsp;technical strategy</li><li><strong>Strategic goals</strong>&nbsp;over&nbsp;project-specific benefits</li><li><strong>Intrinsic interoperability</strong>&nbsp;over&nbsp;custom integration</li><li><strong>Shared services&nbsp;</strong>over&nbsp;specific-purpose implementations</li><li><strong>Flexibility&nbsp;</strong>over&nbsp;optimization</li><li><strong>Evolutionary refinement</strong>&nbsp;over&nbsp;pursuit of initial perfection</li></ul><p>&nbsp;</p><p>Following are some of the guiding principles:<br /><br /></p><ul><li>Respect the social and power structure of&nbsp;the organization.</li><li>Recognize that SOA ultimately demands&nbsp;change on many levels.</li><li>The scope of SOA adoption can vary. Keep&nbsp;efforts manageable and within meaningful boundaries.</li><li>Products and standards alone will neither&nbsp;give you SOA nor apply the Service orientation paradigm for you.</li><li>SOA can be realized through a variety of&nbsp;technologies and standards.</li><li>Establish a uniform set of enterprise&nbsp;standards and policies based on industry, de facto, and community standards.</li><li>Pursue uniformity on the outside while&nbsp;allowing diversity on the inside.</li><li>Identify services through collaboration with&nbsp;business and technology stakeholders.</li></ul><p>&nbsp;</p><p>For a complete list of the principles refer to the <a href="http://www.soa-manifesto.org/" target="_blank" title="SOA Manifesto">SOA manifesto</a>.</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p>]]>
    </content>
</entry>
<entry>
    <title>Considering your SOA journey? Be aware of SOA Pitfalls</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/considering_you_soa_journey_be.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=107" title="Considering your SOA journey? Be aware of SOA Pitfalls" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.107</id>
    
    <published>2009-10-25T22:12:12Z</published>
    <updated>2009-10-26T05:03:45Z</updated>
    
    <summary><![CDATA[One of the fundamentals about SOA that every enterprise needs to understand is where they stand today before starting the SOA journey &ndash; are they ready to take the plunge? Understanding this would give a quick overview of the organisations...]]></summary>
    <author>
        <name>Shubhankar Sumar</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>One of the fundamentals about SOA that every enterprise needs to understand is where they stand today before starting the SOA journey &ndash; are they ready to take the plunge? Understanding this would give a quick overview of the organisations readiness and maturity of SOA. Thereby ensuring that the common SOA pitfalls are avoided and right strategy and associated programme/initiatives are identified for starting SOA journey for the organisation.</p>]]>
        <![CDATA[<p align="justify">In this blog, I would quickly touch upon the most common SOA pitfalls. The list looks very common, but on the ground the <strong>SOA team tend to more often ignore these common &lsquo;must to do&rsquo; things due to the high visibility and demand (to deliver against a tight deadline) of the SOA initiative and excitement to work on the cutting edge technologies.</strong></p><ul><span><li><strong>Starting too big and starting at the wrong place/time</strong>. Before beginning the SOA journey, one needs to ensure that the right initiative is identified to manage the expectation of SOA outcome. For example, achieving SOA as part of a high profile time critical business transformation program would be the wrong place. Another situation could be trying to do SOA as part of a program which is already late in the solution delivery process.</li><li><strong>Isolated technology focus</strong> (e.g. Buying the full range of SOA products right at the beginning of SOA journey even though all those are not required at the beginning and without the processes and governance in place)</li><li><strong>Isolated architecture focus</strong> (e.g. Focus only on the integration layer/business services, No focus on infrastructure services)</li><li><strong>No formal central governance/competency group</strong> (CoE or centralize SOA team) and ownership of services. This creates scenarios like &lsquo;unregulated&rsquo; development of services without checking reusability leading to redundancy and duplication of services (violates the core principles of SOA)</li><li><strong>Not adapting (or enabling) the operations and support model</strong> to support/leverage SOA (Impact on service management areas: Incident Management, Release Management, Configuration Management etc)</li><li><strong>No systematic Service strategy</strong> (Service planning) and design e.g. Service design without proper business modeling</li><li><strong>Strategy to measure the value of SOA</strong> and report to the stakeholders is absolute must. Not having a plan to measure would be disaster as the value of the SOA may not be clearly visible without the right data (number of time reused, reduced development time, faster response to business etc.) handy</li><li><strong>Making SOA high visibility and demand sponsorship</strong> without demonstrating the value (creating a business case for SOA is always a challenge). Ideal approach sometimes is to do mix of bottom-up and top-down. SOA can be introduced in &quot;stealth&quot; mode (for the business) without creating too much distraction.</li><li><strong>Not articulating the business value/impact of SOA</strong> (direct tangible links to business objectives) and presenting it purely for architectural purity. This limits the business sponsorship and funding</li><p align="justify">&nbsp;</p></span></ul><p align="justify">And at the end &lsquo;Governance&rsquo; is KEY to successful SOA. Through an on-going governance process, organisations need to measure how far one is from the SOA goals and what is going good or bad. Having right governance in place, all or most critical pitfalls of SOA could be addressed. Lets define the SOA governance and make it work &ndash; you are all set for SOA!<strong>&nbsp;</strong></p><p align="justify">&nbsp;</p>]]>
    </content>
</entry>
<entry>
    <title>Has Cloud Computing given SOA another big push?[Part 1]</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/has_cloud_computing_given_soa.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=106" title="Has Cloud Computing given SOA another big push?[Part 1]" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.106</id>
    
    <published>2009-10-20T08:53:04Z</published>
    <updated>2009-10-20T10:24:53Z</updated>
    
    <summary><![CDATA[by Brahma Acharya SOA has now become main stream. Organizations are slowly aligning themselves to implement SOA to realize the benefits. And then suddenly we have &quot;Cloud Computing&quot;; the new kid in the block. It has generated unprecedented hype. Gartner&rsquo;s...]]></summary>
    <author>
        <name>Shubhankar Sumar</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[by <strong>Brahma Acharya</strong><span> <p>SOA has now become main stream. Organizations are slowly aligning themselves to implement SOA to realize the benefits. And then suddenly we have &quot;Cloud Computing&quot;; the new kid in the block. It has generated unprecedented hype. Gartner&rsquo;s Senior Analyst <em>Ben Pring</em> has mentioned that &quot;Cloud computing has become the phrase du joir&quot;. It is difficult not giving enough attention to it. Not to miss the wave, we see cloud vendors pop up every day providing a variety of services. It is being discussed in almost all the IT boardrooms. And rightly so, people have started to realize that this is not just any buzz. It promises to do to IT, what Internet did to business in the early 90&rsquo;s; a paradigm shift.</p></span>]]>
        <![CDATA[<span><p>Simplistically put, Cloud is about Hardware and Software outsourcing. You don&rsquo;t care about managing and procuring either of the two. If dissected properly Cloud is a bunch of services delivered over the internet or extranet. Everything from Infrastructure (IaaS) to Platform (PaaS) to Software (SaaS) is exposed as discrete services. Though the concept has been there for quite some time, the current technology advancement in virtualization, grid computing and network reliability has made it a reality.</p><span><p>So with all these in background, </p><ul><li>Where does SOA come into picture? </li><span><li>Does SOA really get affected by this new wave around Cloud?</li></span><span><li>Do the two converge? </li><li>Is it more important than ever to design applications on the tenets of SOA? </li><p>The answer to all these is a resounding YES. </p><span><span><p><strong>SO what is &lsquo;Architecture&rsquo; in SOA &ndash; Can we call it Legacy already?</strong></p></span><p>A typical SOA architecture consists of a UI layer, a BPM layer (Process orchestration), a Service and business component layer and the data access layer (Fig-1). They are all deployed in their own infrastructure within the enterprise. The core of SOA lies in discrete services and processes. Services have explicit boundaries and solve independent business functionality. A process can consist of many of the services in a well orchestrated manner. As an example, an e-commerce application which is designed on SOA principles can consist of a recommendation service, a search service, a catalogue service, a shopping cart service, a payment service and a check-out service (In reality there are 100s of services in an e-commerce application). A buying process can then be developed utilizing a catalog service, a shopping cart service and a check-out service. </p><p><img title="Fig 1: Typical SOA architecture" height="534" alt="Fig 1: Typical SOA architecture" src="http://www.infosysblogs.com/soa/SOA_CC_1.JPG" width="534" align="middle" border="0" /></p><span style="font-family: 'Arial','sans-serif'; mso-ansi-language: EN-US"><span><p align="center">Fig 1: Typical SOA architecture</p></span></span><span style="font-family: 'Arial','sans-serif'; mso-ansi-language: EN-US"><span><p><strong>So why move to Cloud?</strong></p><p>So we have designed our application based on SOA principles. We have achieved flexibility, re-usability, agility and greater maintainability. So why this cloud thing? It turns out that depending on how the architecture is designed we can benefit from the following Cloud features:</p><ul><span><li><span><p><strong>Cloud has significant cost benefits:</strong> This probably is the crux. Hosting applications or part of it on Cloud will significantly reduce the CAPEX and OPEX of an organization. It also reduces the lead time significantly to procure and deploy software and hardware. Important to note that it might not be possible to host entire applications on the Cloud. It would be unwise to run the mission critical applications on Cloud in entirety. There could be security or privacy issues. Being on an SOA platform gives us the flexibility to host part of the application on Cloud. What needs to be hosted on Cloud depends completely on the requirement. For ex: The entire BPM layer can be hosted on &quot;Appian Anywhere&quot; provided by Appian, the BPM SaaS provider. Again the services and their corresponding data can be hosted in Amazon&rsquo;s EC2 and Amazon&rsquo;s SimpleDB. </p></span></li><li><span><p><strong>Cloud provides better performance with parallel execution:</strong> A Cloud platform provides the ability to run jobs in parallel. Platform like Hadoop and Map/Reduce are commonly used in a Cloud platform which can effectively run the jobs in parallel. Properly designed services, if independent of each other can be run in parallel. Also the individual services can be run in parallel if required. For ex: The search and recommendation services can be easily run in parallel.</p></span></li><li><span><p><strong>Better SLA&rsquo;s and better reliability:</strong> There seems to be some misconceptions around the stability of the Cloud services. People tend to think that Clouds are less reliable and prone to data hacking and data loss. On the contrary as and when the big players like Microsoft and Google get into this space, they bring in with them the same technology that runs their massive data centers. Most of the cloud providers now provide 3-9s reliability; 99.9% uptime. Though there have been some <a title="Cloud Glitches" href="http://www.pcworld.com/businesscenter/article/173593/tmobile_takes_the_hit_for_sidekick_data_loss.html" target="_blank">glitches</a> it is bound to get better with time.</p></span></li><li><span><p><strong>Better Agility:</strong> Moving into Cloud increases the already agile SOA based applications at multiple levels. New services can be bought from specialist SaaS vendors and can be integrated within no time. A B2C portal can run burst of digital marketing campaign without worrying about software or hardware. </p></span></li><li><span><p><strong>Better Scalability:</strong> Auto-scaling or Elasticity is an inherent feature of a Cloud platform. The on-demand model will allow application to scale up infinitely. As such seasonal peak loads and a sudden burst in usage is handled transparently by the Cloud.<span><span><span><img title="Fig: SOA+Cloud" height="385" alt="Fig: SOA+Cloud" src="http://www.infosysblogs.com/soa/SOA_CC_2.JPG" width="606" align="middle" border="0" /></span></span></span></p></span></li><span><span><p align="center">Fig 2: SOA + Cloud&nbsp;</p><p>&nbsp;</p><p>It is important to note that having followed an SOA based architecture it becomes easy to move various aspects of the application to a Cloud. Figure 2 depicts one scenario of a hybrid environment of SOA and Cloud. The permutations and combinations are literally limitless. </p><span><p>In the Part 2 of this blog, I will talk about the design considerations&nbsp;&nbsp;when you are looking to exploit the Cloud&nbsp;while doing SOA.</p><ul><ul><p>&nbsp;</p></ul></ul></span></span></span></span></ul></span></span></span></span></ul></span></span>]]>
    </content>
</entry>
<entry>
    <title>‘SOA Security’–How much is enough?</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/soa_securityhow_much_is_enough.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=105" title="‘SOA Security’–How much is enough?" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.105</id>
    
    <published>2009-10-19T11:45:22Z</published>
    <updated>2009-10-19T11:47:14Z</updated>
    
    <summary><![CDATA[by Animesh Ghosh&lsquo;SOA Security&rsquo;&ndash; How much is enough? &ndash; Good question, but meaningless without the context. It is a must to spend a while researching exiting security architecture to comprehend the context. In majority of the cases, the organization probably...]]></summary>
    <author>
        <name>Guest Author</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>by <strong>Animesh Ghosh</strong></p><p>&lsquo;SOA Security&rsquo;&ndash; How much is enough? &ndash; Good question, but meaningless without the context. It is a must to spend a while researching exiting security architecture to comprehend the context. <span>In majority of the cases, the organization probably already has a pretty robust security system(s). The challenge with SOA is to figure out how to extend those existing security measures to those services that comprise SOA. Many SOA security solutions are designed to interconnect effectively with existing security functionality. At that point, the security risks might begin to look a bit more manageable and you can proceed with your plans. </span></p>]]>
        <![CDATA[It is a fact that <span>SOA security is a complex matter, but my suggestion is not to become overwhelmed by security buzz words. <strong>Focus on &lsquo;what you need &lsquo;, not on &ndash; &lsquo;what is available in the market&rsquo;.</strong></span><span> <p align="justify">Below I have listed my thoughts according to the priority, I think, organization need to think while researching about &quot;SOA Security &ndash; how much is enough?&quot;</p><ul><span><li>First understand the boundaries and decide what security vulnerabilities are critical for your organisation.</li><li>Every security risk may not be applicable to you. Focus on vulnerabilities in the &lsquo;OWASP Top 10&rsquo; (www.owasp.org) which are known to be common and critical. Many of the vulnerabilities found by security analysis technologies are not likely to occur. </li><li>Centralize and Externalise security concerns &ndash; this is very important to effectively mange security.</li><li>Make sure &lsquo;Security as a Service&rsquo; available ~ 100 %, as Security Service is the gateway to all other services.</li><li>Stay compliant to standards &ndash; very important considering heterogeneous nature of the SOA components.</li><li>Use XML signatures and encryption to enforce message level security when exchanging data with partners</li><li>Consider credentials encryption without encrypting the whole XML data structure when the content is not highly confidential.</li><li>Each time you identify vulnerability, determine its root cause and create a static analysis rule to identify all other occurrences of that same root cause. </li><li>Always implement effective Logging and Auditing features to catch security breach</li><li>Avoid Denial of Service (DOS) attacks by employing solutions such as XML Firewall and appliances</li><li><div align="justify">Treat security vulnerabilities as high priority (severity- 1) bugs&mdash;bugs that are critical enough to stop a release. Just one security vulnerability could open the door to devastating attacks.</div></li></span><span><li>Look for SOA security solutions those are designed to interconnect effectively with existing security functionality. </li><li>Consider implementing a SOA security solution that enables SOAP message monitoring; federated authentication; application proxy; contract management; certificates, keys, and encryption; and audit logging. </li><li>Adopt incremental technology delivery and maturity-based approach (expect mixed and hybrid environments)</li><p>&nbsp;</p><p>Remember security can create tight coupling in enterprise SOA and can degrade performance</p></span></ul></span>]]>
    </content>
</entry>
<entry>
    <title>Service Category – The world of Confusion</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/service_category_the_world_of.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=104" title="Service Category – The world of Confusion" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.104</id>
    
    <published>2009-10-16T08:50:49Z</published>
    <updated>2009-10-16T08:58:37Z</updated>
    
    <summary><![CDATA[by Murteza Salemi, Shubhankar Sumar&nbsp;Coming up with service categories seems at first an easy task but when you start thinking about it and discuss it with other architects, you will be dazzled on how many different definitions exist out there....]]></summary>
    <author>
        <name>Shubhankar Sumar</name>
        
    </author>
            <category term="SOA definitions and interpretations" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p align="justify">by <strong>Murteza Salemi, Shubhankar Sumar&nbsp;</strong></p><p align="justify">Coming up with service categories seems at first an easy task but when you start thinking about it and discuss it with other architects, you will be dazzled on how many different definitions exist out there. It is not a matter of which one is right and which one is wrong but how we are going to agree on one set of definitions and terminology so we can talk with each other and using the same words (terminology) without having different meaning (unambiguous) for them.</p>]]>
        <![CDATA[<p align="justify">The best approach is that every organisation or business unit <strong>identifies and agrees on a glossary of these terminologies </strong>and definitions right <strong>at the beginning</strong> of SOA journey. On the agreed category, create guidelines and characteristics for each category for ready reference. The same is communicated and mandated by the SOA governance team within all the SOA programme within the organisation.</p><p>There are quite a few in the list. Here are some examples of service categories:</p><ul><li>Business Services </li><li>Capability Services</li><li>Activity Services </li><li>Information Services/Data Services </li><li>Entity Services </li><li>Application Services </li><li>Presentation Services</li><li>Composite Services </li><span><li>Technical / Infrastructure Services </li><li>Technology Services</li></span><span><li>Utility Services </li><li>Communication Services </li><li>Integration Services</li><li>Bus Services </li><li>Process Services</li><li>Master data services</li><p>&nbsp;</p><p>Remember &ndash; you have to get this fixed right at the beginning of the SOA journey. It looks very trivial things but not having the right set of category defined will have long lasting negative impact and creates confusion within the architecture and business community.</p><p>Lets go and finalise the Service Category if you have not done so.</p></span></ul>]]>
    </content>
</entry>
<entry>
    <title>Some thoughts on Service Naming</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/some_thoughts_on_service_namin.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=103" title="Some thoughts on Service Naming" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.103</id>
    
    <published>2009-10-15T08:53:47Z</published>
    <updated>2009-10-15T09:00:13Z</updated>
    
    <summary>Every web service Designer and Developer possibly have come across service naming standards or best practices in one form or the other. While I do not want to dispute the fact that standards are needed for enforcing good practices that...</summary>
    <author>
        <name>Santanu Dey</name>
        
    </author>
            <category term="How SOA matters?" />
            <category term="SOA Competency Center" />
            <category term="SOA in the Real World" />
            <category term="Standards" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>Every web service Designer and Developer possibly have come across service naming standards or best practices in one form or the other. While I do not want to dispute the fact that standards are needed for enforcing good practices that goes a long way in software maintainability and manageability, but then trying to follow a standard without completely understanding the philosophy behind it may not produce optimal results. Now, I do not want to get into pros and cons of particular semantics of service naming either, e.g., naming conventions such as using a verb+noun pair for naming a service, using camel case etc. I will pretty much follow those widely used conventions without a debate. <span>&nbsp;</span>I will rather try to throw some lights on the common-sense and practical factors that may make service naming less creative and more predictable. Comments and debates welcome. </p>]]>
        <![CDATA[<p>So thinking with a clean slate &ndash; here are some thoughts. IMHO, a good service name should have the following classic attributes (I would not blame you for thinking that I was influenced by OO programming principles in more than one ways):</p><p>Service Naming is part of Service Design. Hence one should understand the complete context, functionality and the Layer of abstraction that the service belongs to in a Service Oriented Architecture. <span>&nbsp;</span>Is it a top-level business orchestration service? Or, is it a much lower level service? Or is it a technical service across business domains? After identifying the Layer a service belongs to, it is easy to </p><ul><li>Predict its usage scope</li><li>Identify its potential consumers</li></ul><p>And hence the naming can consider making it contextual to the consumers. After all, service discovery is not too far.</p><p>Service Name should attempt to portray the functionality of a service in the light of the overall business process context. So one needs to answer questions like what business logic does the service provide? What business processes does it support? If the service name fails to give you flavor of the business context (or, technical context if it is a technical service) then something is missing. Essentially you should use a verb to represent the actual business task carried out by the service with as much context as possible. Additional context may come from using an appropriate Entity name in the service. Let me site a couple of examples; I would prefer a name that provides more contexts. Lets take the example of service provisioning process for a hypothetical teleco. Let us say a service is used by the process to establish is the customer address is serviceable. This process of customer address validation along with few other steps is generally known as service qualification. Hence QualifyServiceAddress is a better name for our service than something like ValidateAddress because it is contextual to business and has describes the service more accurately. </p><p>The other important thing is to use only standard entity names in your Service Name. When I say standard entity names, I assume that an organization-wide data model/information model/business information model already exists. So re-use the same vocabulary and adhere to your organizational standards. </p><p>Now as a disclaimer, I think no amount of standard is sufficient to ensure good naming. In many cases just following the semantics, without understanding the principles, beats the whole purpose of naming standards. Let me site some hypothetical examples; you might have come across situations where a new service is being designed to expose or replace a legacy application. The name of the service many a times would be influenced by the application names or process names of the legacy application even when the service interface may exposes a miniscule part of the application. In this case, the service name largely misrepresents its functionality offered. Or, how about a very long verbose service name that attempts to specify the entire business context in its name and does very little. The examples can go on.</p><p>&nbsp;</p>]]>
    </content>
</entry>
<entry>
    <title>SETLabs and Infosys participation in SOPOSE workshop AT Services Computing 2009 conference</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/10/setlabs_and_infosys_participat.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=102" title="SETLabs and Infosys participation in SOPOSE workshop AT Services Computing 2009 conference" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.102</id>
    
    <published>2009-10-13T08:15:07Z</published>
    <updated>2009-10-13T09:14:02Z</updated>
    
    <summary><![CDATA[I&nbsp;was the chair for SOPOSE 2009, the fourth international workshop Service and Process oriented Software Engineering (http://www.dsl.uow.edu.au/sopose/index.php ),&nbsp; the workshop co-located with SCC 2009. The workshop aimed at addressing software engineering issues related to constructing service oriented architecture and business...]]></summary>
    <author>
        <name>Dr. Srinivas Padmanabhuni</name>
        
    </author>
            <category term="Community" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>I&nbsp;was the chair for SOPOSE 2009, the fourth international workshop Service and Process oriented Software Engineering (<a href="http://www.dsl.uow.edu.au/sopose/index.php">http://www.dsl.uow.edu.au/sopose/index.php</a> ),<span>&nbsp; </span>the workshop co-located with SCC 2009. The workshop aimed at addressing software engineering issues related to constructing service oriented architecture and business process management. </p>]]>
        <![CDATA[<p>The workshop started with a keynote by on Value in Services Systems, by Prof. Joseph Davis, of<span>&nbsp; </span>Univ of Sydney. This talk focused on the conceptual foundations what has come to be referred to as 'service science' which is concerned with the design, value co-creation (between the service providers and customers), and performance modeling of complex service systems. </p><p>&nbsp;</p><p>There was an interesting discussion on User experience being at core of the final rendering of a service, and how the interactions between consumers, producers is core to the notion of &quot;value&quot;. No doubt this is an important area of research from the perspective of justifying investments in IT, in current circumstances.</p><p>&nbsp;</p><p>This was followed by thought provoking presentations including papers on BPM adoption, and software engineering issues related to BPM and SOA, including two innovative papers from Infosys titled &quot;A holistic approach in context of Enterprise BPM adoption&quot; and &nbsp;</p><p>&quot;Challenges and Approaches during requirement gathering phase for multi release BPM engagement&quot; respectively.</p><p>More soon.</p>]]>
    </content>
</entry>
<entry>
    <title>Rethink your approach for implementing SOA initiative and it will have higher chance of success</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/09/rethink_your_approach_for_impl.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=101" title="Rethink your approach for implementing SOA initiative and it will have higher chance of success" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.101</id>
    
    <published>2009-09-30T12:41:10Z</published>
    <updated>2009-09-30T12:45:49Z</updated>
    
    <summary> Normal 0 false false false EN-GB X-NONE X-NONE MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNormalTable {mso-style-name:&quot;Table Normal&quot;; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:&quot;&quot;; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:&quot;Times New Roman&quot;; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;...</summary>
    <author>
        <name>Shubhankar Sumar</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<!--[if gte mso 9]><xml>  <w:WordDocument>   <w:View>Normal</w:View>   <w:Zoom>0</w:Zoom>   <w:TrackMoves/>   <w:TrackFormatting/>   <w:PunctuationKerning/>   <w:ValidateAgainstSchemas/>   <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>   <w:IgnoreMixedContent>false</w:IgnoreMixedContent>   <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>   <w:DoNotPromoteQF/>   <w:LidThemeOther>EN-GB</w:LidThemeOther>   <w:LidThemeAsian>X-NONE</w:LidThemeAsian>   <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>   <w:Compatibility>    <w:BreakWrappedTables/>    <w:SnapToGridInCell/>    <w:WrapTextWithPunct/>    <w:UseAsianBreakRules/>    <w:DontGrowAutofit/>    <w:SplitPgBreakAndParaMark/>    <w:DontVertAlignCellWithSp/>    <w:DontBreakConstrainedForcedTables/>    <w:DontVertAlignInTxbx/>    <w:Word11KerningPairs/>    <w:CachedColBalance/>    <w:UseFELayout/>   </w:Compatibility>   <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>   <m:mathPr>    <m:mathFont m:val="Cambria Math"/>    <m:brkBin m:val="before"/>    <m:brkBinSub m:val="&#45;-"/>    <m:smallFrac m:val="off"/>    <m:dispDef/>    <m:lMargin m:val="0"/>    <m:rMargin m:val="0"/>    <m:defJc m:val="centerGroup"/>    <m:wrapIndent m:val="1440"/>    <m:intLim m:val="subSup"/>    <m:naryLim m:val="undOvr"/>   </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml>  <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267">   <w:LsdException Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal"/>   <w:LsdException Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/>   <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/>   <w:LsdException Locked="false" Priority="39" Name="toc 1"/>   <w:LsdException Locked="false" Priority="39" Name="toc 2"/>   <w:LsdException Locked="false" Priority="39" Name="toc 3"/>   <w:LsdException Locked="false" Priority="39" Name="toc 4"/>   <w:LsdException Locked="false" Priority="39" Name="toc 5"/>   <w:LsdException Locked="false" Priority="39" Name="toc 6"/>   <w:LsdException Locked="false" Priority="39" Name="toc 7"/>   <w:LsdException Locked="false" Priority="39" Name="toc 8"/>   <w:LsdException Locked="false" Priority="39" Name="toc 9"/>   <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/>   <w:LsdException Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title"/>   <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/>   <w:LsdException Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/>   <w:LsdException Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong"/>   <w:LsdException Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/>   <w:LsdException Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid"/>   <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/>   <w:LsdException Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/>   <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading"/>   <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List"/>   <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid"/>   <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1"/>   <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2"/>   <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1"/>   <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2"/>   <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1"/>   <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2"/>   <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3"/>   <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List"/>   <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading"/>   <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List"/>   <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid"/>   <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1"/>   <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1"/>   <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1"/>   <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/>   <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/>   <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/>   <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/>   <w:LsdException Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/>   <w:LsdException Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote"/>   <w:LsdException Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/>   <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/>   <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/>   <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/>   <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/>   <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1"/>   <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/>   <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1"/>   <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/>   <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2"/>   <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2"/>   <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2"/>   <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/>   <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/>   <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/>   <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/>   <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/>   <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/>   <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/>   <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2"/>   <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/>   <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2"/>   <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/>   <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3"/>   <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3"/>   <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3"/>   <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/>   <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/>   <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/>   <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/>   <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/>   <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/>   <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/>   <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3"/>   <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/>   <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3"/>   <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/>   <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4"/>   <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4"/>   <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4"/>   <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/>   <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/>   <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/>   <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/>   <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/>   <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/>   <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/>   <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4"/>   <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/>   <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4"/>   <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/>   <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5"/>   <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5"/>   <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5"/>   <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/>   <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/>   <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/>   <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/>   <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/>   <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/>   <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/>   <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5"/>   <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/>   <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5"/>   <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/>   <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6"/>   <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6"/>   <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6"/>   <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/>   <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/>   <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/>   <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/>   <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/>   <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/>   <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/>   <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6"/>   <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/>   <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6"/>   <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/>   <w:LsdException Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/>   <w:LsdException Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/>   <w:LsdException Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/>   <w:LsdException Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/>   <w:LsdException Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title"/>   <w:LsdException Locked="false" Priority="37" Name="Bibliography"/>   <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/>  </w:LatentStyles> </xml><![endif]--> <!--[if gte mso 10]> <style>  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} </style> <![endif]-->  <p class="MsoNormal" style="margin: 4.5pt 0cm"><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(102, 102, 102)">by <strong>Murteza Salemi</strong></span></p><p class="MsoNormal" style="margin: 4.5pt 0cm"><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(102, 102, 102)">The fundamental rethink approach required for implementing SOA initiative in an enterprise is that SOA program should be driven by business (business driven SOA) and not technology or vendor products. Furthermore, the initiative must target specific goals and offer ways of objectives measurement. <br /><br /></span></p>  ]]>
        <![CDATA[<p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(102, 102, 102)">By ensuring that the there is a tight link between business and IT, with resources that understand SOA principles and can collaborate as part of a joint program, you minimize the risks of deviation from target set for the initiative. <br /></span></p><p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(102, 102, 102)">Identify key stakeholders and communicate the business benefits gained by running SOA initiative, making sure to be clear and specific about each goal achieved by SOA and how it can be measured. Furthermore help these stakeholders to understand the value gained by a project using a Services Model&rsquo; as the paradigm of the future, without resorting to discussing vendor products and technology platforms. <br /></span></p><p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(102, 102, 102)">Once the to-be state of the business processes are identified and communicated across the enterprise and tied to the business benefits of that enterprise, SOA initiative will have solid ground to start its detail work.</span></p><p><span style="font-size: 8.5pt; font-family: &quot;Verdana&quot;,&quot;sans-serif&quot;; color: rgb(102, 102, 102)"><br />Be prepared and make preparations for a multi-year change journey - SOA is not a tactical fix, or integration solution it is the opportunity for successful business change. <br /><br /></span></p>]]>
    </content>
</entry>
<entry>
    <title>REST and SOA – the compatible duo</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/08/rest_and_soa_the_compatible_du.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=100" title="REST and SOA – the compatible duo" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.100</id>
    
    <published>2009-08-23T17:26:16Z</published>
    <updated>2009-08-23T17:33:07Z</updated>
    
    <summary>by Goutam Mukherjee REST has made huge inroads into the Services space in last few years. It has become a very popular style to define how the Service Interfaces are designed and how the Services are accessed. Since SOA is...</summary>
    <author>
        <name>Shubhankar Sumar</name>
        
    </author>
            <category term="SOA definitions and interpretations" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>by <strong>Goutam Mukherjee</strong> <br /></p><p>REST has made huge inroads into the Services space in last few years. It has become a very popular style to define how the Service Interfaces are designed and how the Services are accessed. Since SOA is also all about &quot;Services&quot;, it is obvious that there will be an inclination to draw some correlation between REST and SOA and rightfully so. Sometimes that does open doors for some confusion and you start asking questions like &ldquo;Am I not implementing SOA if I adopt REST style?&rdquo; or &ldquo;Does REST have inherent support for SOA?&rdquo; or &ldquo;Is REST the next level to attain after SOA&rdquo; or even &ldquo;Has SOA given way for REST?&rdquo; and so on. So it does make sense to try to understand these two concepts and try to correlate the two.</p>]]>
        <![CDATA[<p>Let's now have a quick look at what are the basic SOA principles. SOA comprises of a collection of Services and those Services conform to some basic principles. As Thomas Erl has outlined in http://www.soaprinciples.com, the basic SOA principles are &ndash; <br /></p><ul><li>Standardized Service Contracts</li><li>Service Loose Coupling</li><li>Service Abstraction</li><li>Service Reusability</li><li>Service Autonomy</li><li>Service Statelessness</li><li>Service Discoverability</li><li>Service Composability </li></ul><p>&nbsp;REST &ndash; Representational State Transfer &ndash; is an architectural style. The basis of the REST style is that you define the resources for your application and then use the standard HTTP methods to perform the state changes to those resources. Some key features of the REST style are &ndash; </p><ul><li>Unique identifiability of the resources through URIs</li><li>Uniform interface to access the resources<br /></li><li>Navigability of the resource representations through hypermedia <br /></li><li>Statelessness <br /></li></ul><p>&nbsp;Now if we see at the key features of the REST style, each one of them does map to one or more SOA principles. For example, &ldquo;uniform interface to access the resources&rdquo; maps to standardized Service Contracts, Service Loose Coupling and Service Abstraction. Except for one SOA principle &ndash; Service Discoverability &ndash; that is not directly covered by the REST features, all other basic SOA principles are realized by one or more REST features.</p><p> <br />So now let us try to correlate the two. As defined in Wikipedia, REST is &quot;a style of software architecture for distributed hypermedia systems such as the World Wide Web&quot;. Also we have already seen that the features of REST are very much compatible with the basic SOA principles. So we can draw the correlation that REST is an architectural style that inherently helps to attain some of the basic SOA principles and this is even more a perfect match when you are designing SOA under the constraints of &quot;distributed hypermedia systems&rdquo;.</p><p>&nbsp;</p><p>              </p>]]>
    </content>
</entry>
<entry>
    <title>My 30 seconds lift speech on when to virtualize SOA solution and when not</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/soa/2009/08/my_30_seconds_lift_speech_on_w.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.infosysblogs.com/soa-mt/mt-atom.cgi/weblog/blog_id=1/entry_id=99" title="My 30 seconds lift speech on when to virtualize SOA solution and when not" />
    <id>tag:www.infosysblogs.com,2009:/soa//1.99</id>
    
    <published>2009-08-09T20:28:34Z</published>
    <updated>2009-08-09T20:35:47Z</updated>
    
    <summary>by Murteza SalemiTo optimise your SOA benefits take the next step and virtualize. Virtualization is the abstraction of hardware/infrastructure resources (network, disk, memory, etc.).Virtualize your SOA solution when you want to further:Reduce capital expenditure on hardware and infrastructureReduce operation expenditure...</summary>
    <author>
        <name>Guest Author</name>
        
    </author>
            <category term="SOA in the Real World" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/soa/">
        <![CDATA[<p>by <strong>Murteza Salemi</strong></p><p>To optimise your SOA benefits take the next step and virtualize. Virtualization is the abstraction of hardware/infrastructure resources (network, disk, memory, etc.).</p><p>Virtualize your SOA solution when you want to further:</p><ul><li>Reduce capital expenditure on hardware and infrastructure</li><li>Reduce operation expenditure and the number of staff required to operate the enterprise applications.</li><li>Go green and reduce power reduction</li></ul>]]>
        <![CDATA[<ul><li>Increase high availability and business continuity by reducing downtime and recovering quickly from unplanned outages with the ability to back up and migrate entire virtual environments with no or minimal service interruption.</li><li>Implement corporate governance through a consolidated hardware and networking infrastructure.</li><li>Reduce provisioning times for defining hardware configurations based on enterprise requirements and corporate governance.</li><li>Reduce the need for new hardware and the number of existing hardware</li><li>Improve the use of existing hardware through, for example, defining a server consolidation strategy.</li><li>Prevent applications from impacting each other when upgrades or changes are made, for instance, running different versions of an application on the same physical server.</li><li>A reduction in security risks to the overall computing infrastructure is achieved by isolating externally facing server applications in specific virtual machines.</li><li>Compliance with the disaster recovery plan and SLAs required for hardware infrastructure and services to be quickly re-configured in the event of a catastrophe.</li><li>Maximized use of hardware and computing infrastructure simplifies server provisioning and system scaling. For example, new hardware could be rapidly configured to accommodate high peak.</li></ul><p>Don&rsquo;t virtualize your SOA solution when:</p><ul><li>Requiring high performance (high bandwidth) if the virtual environment not capable of matching the SLA for performance</li><li>Small number of concurrent users or local limited usage of application</li><li>Requirements for editing capabilities over the WEB</li><li>Intensive disk I/O operations, such as dynamic mapping and map caching which perform faster on physical machines than on virtual machines.</li><li>Some CPU-intensive applications might negatively be affected if the virtual environment capabilities are limited.</li></ul><p>&nbsp;</p>]]>
    </content>
</entry>

</feed> 

