<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Suresh Kumar Veluswamy&#039;s Blog</title>
	<atom:link href="http://sureshkumarveluswamy.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://sureshkumarveluswamy.wordpress.com</link>
	<description></description>
	<lastBuildDate>Sat, 21 May 2011 13:25:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='sureshkumarveluswamy.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Suresh Kumar Veluswamy&#039;s Blog</title>
		<link>http://sureshkumarveluswamy.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://sureshkumarveluswamy.wordpress.com/osd.xml" title="Suresh Kumar Veluswamy&#039;s Blog" />
	<atom:link rel='hub' href='http://sureshkumarveluswamy.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Technical Debt</title>
		<link>http://sureshkumarveluswamy.wordpress.com/2011/05/21/technical-debt/</link>
		<comments>http://sureshkumarveluswamy.wordpress.com/2011/05/21/technical-debt/#comments</comments>
		<pubDate>Sat, 21 May 2011 12:02:32 +0000</pubDate>
		<dc:creator>Suresh Kumar Veluswamy</dc:creator>
				<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[use case]]></category>

		<guid isPermaLink="false">http://sureshkumarveluswamy.wordpress.com/?p=133</guid>
		<description><![CDATA[Let&#8217;s see what Technical Debt is&#8230; Why should you care about Technical Debt? Let us look at the product life cycle of an optimal software product (software that can be modified and tested with minimal effort) and a software product with high technical debt. The above graph shows a plot of Cost of Change &#38; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=133&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/71.png"><br />
</a><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/1.png"><img class="aligncenter size-full wp-image-134" title="Technical Debt - 1" src="http://sureshkumarveluswamy.files.wordpress.com/2011/05/1.png?w=450&#038;h=177" alt="" width="450" height="177" /></a>Let&#8217;s see what Technical Debt is&#8230;</p>
<p style="text-align:justify;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/2.png"><img class="aligncenter size-full wp-image-135" title="Technical Debt - 2" src="http://sureshkumarveluswamy.files.wordpress.com/2011/05/2.png?w=450&#038;h=169" alt="" width="450" height="169" /></a></p>
<p style="text-align:justify;">Why should you care about Technical Debt?</p>
<p style="text-align:justify;">Let us look at the product life cycle of an optimal software product (software that can be modified and tested with minimal effort) and a software product with high technical debt.</p>
<p style="text-align:justify;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/4.png"><img class="aligncenter size-full wp-image-137" title="Technical Debt - 4" src="http://sureshkumarveluswamy.files.wordpress.com/2011/05/4.png?w=450&#038;h=297" alt="" width="450" height="297" /></a>The above graph shows a plot of Cost of Change &amp; Customer Insterest in the product against Time. The reason why the customer interest in the product keeps decreasing is that the higher cost of change makes it more difficult for new features to be  implemented and at a faster rate. Longevity of a software product with higher technical debt is actually lesser compared to the optimal software product. This is because the product is never allowed to mature feature wise and also as the higher technical debt makes it difficult to keep it alive. This mostly results in early retirement of the product.</p>
<p style="text-align:justify;">Martin Fowler had defined the types of technical debts using a Technical debt quadrant as shown below.</p>
<p style="text-align:center;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/3.png"><img class="aligncenter size-full wp-image-136" title="Technical Debt - 3" src="http://sureshkumarveluswamy.files.wordpress.com/2011/05/3.png?w=450&#038;h=365" alt="" width="450" height="365" /></a></p>
<p>The types of technical debts are:</p>
<ol>
<li><strong>Reckless and Deliberate debt</strong>: This is the debt produced by many teams where they know that the right way to do it, but choose to go with the quickest way and never return to fix it. Schedule pressures, short sightedness and not understanding the cost of messy designs are some of the major forces that cause this type of debt.</li>
<li><strong>Reckless and Inadvertent debt</strong>: This is the debt that programmers that just don’t know what good design is and are doing their best. This can commonly happen when you are new to a technology, but do not go out and find information from others in the industry.</li>
<li><strong>Prudent and Deliberate debt</strong>: This is the type of debt where everyone understands the cost of choosing the quicker approach and weighs that against the short term benefits of taking on the debt. Schedule pressure does play a factor in this type of debt. Without careful focus on repayment this will quickly become Reckless and Deliberate debt.</li>
<li><strong>Prudent and Inadvertent debt</strong>: This is very close to the Reckless and Inadvertent debt, but there is no one that has the knowledge you had to go through making the mistakes to know what is the right thing. This can happen when you are the first team using a technology at a scale that no one else has. Once you understand the better way to do something, if you don’t incorporate that into your work this debt will again quickly swing to the Reckless and Deliberate kind.</li>
</ol>
<p style="text-align:justify;">Having known about what Technical Debt is, let&#8217;s have a look at the common causes of Technical Debt</p>
<p style="text-align:justify;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/5.png"><img class="aligncenter size-full wp-image-138" title="Technical Debt - 5" src="http://sureshkumarveluswamy.files.wordpress.com/2011/05/5.png?w=450&#038;h=192" alt="" width="450" height="192" /></a></p>
<p style="text-align:justify;">As you can see Technical debt can occur at any phase of Software Development Life Cycle.</p>
<p style="text-align:justify;">And the effects are&#8230;</p>
<p style="text-align:justify;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/6.png"><img class="aligncenter size-full wp-image-139" title="Technical Debt - 6" src="http://sureshkumarveluswamy.files.wordpress.com/2011/05/6.png?w=450" alt=""   /></a></p>
<p style="text-align:justify;">If you notice some of the above effects in your organization, then you should start thinking about how to repay the technical debt. If you start thinking about paying back, then you can look into some of the options listed in the below figure. Based on your choice, if you chose the first two options then some of the possible actions that you need to take are described below in the same figure.</p>
<p style="text-align:left;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/71.png"><img class="aligncenter size-full wp-image-151" title="Technical Debt - 7" src="http://sureshkumarveluswamy.files.wordpress.com/2011/05/71.png?w=450&#038;h=253" alt="" width="450" height="253" /></a></p>
<p style="text-align:left;">Here is Ward Cunningham&#8217;s analogy of Technical debt and Financial debt</p>
<ul>
<li>Skipping design is like borrowing money. <em>(I like &#8220;writing code&#8221; better than &#8220;skipping design&#8221; here &#8212; JimLittle)</em></li>
<li>Refactoring is like repaying principal</li>
<li>Slower development due to complexity is like paying interest</li>
<li><em></em>When the whole project caves in under the mess, is that like when the big guys come round and slam your hands in the car door for not paying up?</li>
</ul>
<p style="text-align:left;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/8.png"><br />
</a><a href="http://sureshkumarveluswamy.files.wordpress.com/2011/05/Technical%20Debt%20-%207.png"><br />
</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sureshkumarveluswamy.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sureshkumarveluswamy.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sureshkumarveluswamy.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sureshkumarveluswamy.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/sureshkumarveluswamy.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sureshkumarveluswamy.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/sureshkumarveluswamy.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sureshkumarveluswamy.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sureshkumarveluswamy.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sureshkumarveluswamy.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sureshkumarveluswamy.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sureshkumarveluswamy.wordpress.com/133/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sureshkumarveluswamy.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sureshkumarveluswamy.wordpress.com/133/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=133&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://sureshkumarveluswamy.wordpress.com/2011/05/21/technical-debt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b89b56e45e1e4afb8ac3a5bdd0fc9a6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sureshkumarveluswamy</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2011/05/1.png" medium="image">
			<media:title type="html">Technical Debt - 1</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2011/05/2.png" medium="image">
			<media:title type="html">Technical Debt - 2</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2011/05/4.png" medium="image">
			<media:title type="html">Technical Debt - 4</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2011/05/3.png" medium="image">
			<media:title type="html">Technical Debt - 3</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2011/05/5.png" medium="image">
			<media:title type="html">Technical Debt - 5</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2011/05/6.png" medium="image">
			<media:title type="html">Technical Debt - 6</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2011/05/71.png" medium="image">
			<media:title type="html">Technical Debt - 7</media:title>
		</media:content>
	</item>
		<item>
		<title>Advantages of VSTO over VBA</title>
		<link>http://sureshkumarveluswamy.wordpress.com/2011/02/09/advantages-of-vsto-over-vba/</link>
		<comments>http://sureshkumarveluswamy.wordpress.com/2011/02/09/advantages-of-vsto-over-vba/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 17:09:33 +0000</pubDate>
		<dc:creator>Suresh Kumar Veluswamy</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[VSTO]]></category>

		<guid isPermaLink="false">http://sureshkumarveluswamy.wordpress.com/?p=109</guid>
		<description><![CDATA[We can program or customize Microsoft Excel in two ways. One way is using VBA(Visual Basic for Applications), the other is using VSTO (Visual Studio Tools for Office). In VBA we create macros in VB6. In VSTO we create .Net assemblies in C#. However, unlike VBA, where the code is stored in the document file [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=109&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We can program or customize Microsoft Excel in two ways. One way is using VBA(Visual Basic for Applications), the other is using VSTO (Visual Studio Tools for Office).</p>
<p>In VBA we create macros in VB6. In VSTO we create .Net assemblies in C#. However, unlike VBA, where the code is stored in the document file itself, programs written with VSTO are stored in separate .NET assemblies which are associated with the documents by means of custom properties. At runtime, that assembly is loaded on the fly.</p>
<p>As the nature of VSTO, the customization code is stored separately in .NET assembly (*.dll file), that can be deployed to a central location and all the documents just link to it. Updating can be configured so it can be checked every time the document is opened, or by specific period.</p>
<p>VSTO can access many application level functionality of Excel, such as Ribbon, Custom Task Panes, etc. Using VSTO, you can develop application level add-in that will always be available regardless opened document. VSTO makes it even easier by providing a Ribbon designer that makes adding new tabs, groups, and controls to the Ribbon as intuitive as adding a control to a Windows Form.  By contrast, VBA customization is document level.</p>
<p>Like any .NET projects, you can use Source Control server like Team Foundation Server (TFS) to facilitate collaborative development for VSTO-based project. All VSTO project artifacts can be checked in/out to/from TFS server, including Office document (xls, xlsx, doc, docx, etc).</p>
<p>Since VSTO is a part of .NET, it inherits technologies like WCF. In other words, it&#8217;s easy to develop VSTO Add-In to access XML Web Services.  And all that functionality is built into VSTO. But this is not built into VBA.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sureshkumarveluswamy.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sureshkumarveluswamy.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sureshkumarveluswamy.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sureshkumarveluswamy.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/sureshkumarveluswamy.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sureshkumarveluswamy.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/sureshkumarveluswamy.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sureshkumarveluswamy.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sureshkumarveluswamy.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sureshkumarveluswamy.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sureshkumarveluswamy.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sureshkumarveluswamy.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sureshkumarveluswamy.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sureshkumarveluswamy.wordpress.com/109/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=109&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://sureshkumarveluswamy.wordpress.com/2011/02/09/advantages-of-vsto-over-vba/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b89b56e45e1e4afb8ac3a5bdd0fc9a6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sureshkumarveluswamy</media:title>
		</media:content>
	</item>
		<item>
		<title>MVVM or MVP for Winforms?</title>
		<link>http://sureshkumarveluswamy.wordpress.com/2010/07/31/mvvm-or-mvp-for-winforms/</link>
		<comments>http://sureshkumarveluswamy.wordpress.com/2010/07/31/mvvm-or-mvp-for-winforms/#comments</comments>
		<pubDate>Sat, 31 Jul 2010 16:36:57 +0000</pubDate>
		<dc:creator>Suresh Kumar Veluswamy</dc:creator>
				<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[Design Pattern]]></category>
		<category><![CDATA[MVP]]></category>
		<category><![CDATA[MVVM]]></category>
		<category><![CDATA[winforms]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://sureshkumarveluswamy.wordpress.com/?p=96</guid>
		<description><![CDATA[MVVM (Model-View-ViewModel) pattern  is more suited for WPF, while MVP (Model-View-Presenter) pattern  is more suited for Winforms. MVVM offers more benefits than MVP. It might still be possible to make Winforms support MVVM.  Hence I was trying to find whether it is beneficial to use MVVM over MVP in a winforms Application. I have summarized my [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=96&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>MVVM (Model-View-ViewModel) pattern  is more suited for WPF, while MVP (Model-View-Presenter) pattern  is more suited for Winforms. MVVM offers more benefits than MVP. It might still be possible to make Winforms support MVVM.  Hence I was trying to find whether it is beneficial to use MVVM over MVP in a winforms Application. I have summarized my findings below.</p>
<p>MVVM is more loosely coupled than MVP. In MVP, the View implements an interface IView and the presenter uses this interface. Since each view is different, it makes less sense to make each view implement the same IView interface. We might end up creating separate interfaces and Presenters for each view. With MVVM the view is aware of the viewModel, and the viewModel is aware of the model (but not vise versa). This means that multiple views can use a ViewModel and multiple ViewModels can use a Model. Hence MVVM is loosely coupled than MVP.</p>
<p><strong><span style="text-decoration:underline;"><a href="http://sureshkumarveluswamy.files.wordpress.com/2010/07/mvp-and-mvvm.jpg"><img class="size-medium wp-image-97 alignnone" title="MVP and MVVM" src="http://sureshkumarveluswamy.files.wordpress.com/2010/07/mvp-and-mvvm.jpg?w=450" alt="MVP and MVVM" /></a></span></strong></p>
<p><strong> </strong></p>
<p>MVVM utilizes the features of WPF such as <strong>Data Binding</strong>, <strong>Commands</strong>, <strong>Data Templates</strong>. WPF (and Silverlight 2) features make MVVM a natural way to structure the application. This is not the case with Winforms.  Although Winforms supports databinding, you need to write some extra code to support two way data binding in Winforms by implementing INotifyPropertyChanged interface.  In the case of MVP, there is no need for two way data binding. The Presenter does the job of updating the view. You can also try creating a command manager for supporting Commands for MVVM, but it is much harder. Winforms do not support Data templates.  You can make Winforms support MVVM but you might not get all the benefits  of using MVVM in WPF.</p>
<p>If MVVM is properly used it is more testable than MVP.</p>
<p>The descision to use MVVM for Winforms is still up to you, based on your project needs.</p>
<p>Below are the few links I referred:</p>
<p><a href="http://nirajrules.wordpress.com/2009/07/18/mvc-vs-mvp-vs-mvvm/" target="_blank">Niraj Bhatt on MVC vs. MVP vs. MVVM</a></p>
<p><a href="http://mfelicio.wordpress.com/2010/01/10/safe-usage-of-inotifypropertychanged-in-mvvm-scenarios/">Safe usage of INotifyPropertyChanged in MVVM scenarios</a></p>
<p><a href="http://www.developerit.com/2010/04/23/mvvm-presentation-model-with-winforms" target="_blank">MVVM/Presentation Model With WinForms</a></p>
<p><a href="http://stackoverflow.com/questions/982978/mvvm-for-winforms" target="_blank">MVVM for Winforms</a></p>
<p><a href="http://nirajrules.wordpress.com/2009/07/18/mvc-vs-mvp-vs-mvvm/" target="_blank">MVC vs. MVP vs. MVVM</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sureshkumarveluswamy.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sureshkumarveluswamy.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sureshkumarveluswamy.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sureshkumarveluswamy.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/sureshkumarveluswamy.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sureshkumarveluswamy.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/sureshkumarveluswamy.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sureshkumarveluswamy.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sureshkumarveluswamy.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sureshkumarveluswamy.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sureshkumarveluswamy.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sureshkumarveluswamy.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sureshkumarveluswamy.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sureshkumarveluswamy.wordpress.com/96/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=96&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://sureshkumarveluswamy.wordpress.com/2010/07/31/mvvm-or-mvp-for-winforms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b89b56e45e1e4afb8ac3a5bdd0fc9a6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sureshkumarveluswamy</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2010/07/mvp-and-mvvm.jpg" medium="image">
			<media:title type="html">MVP and MVVM</media:title>
		</media:content>
	</item>
		<item>
		<title>ICONIX Process for Agile Software development</title>
		<link>http://sureshkumarveluswamy.wordpress.com/2010/07/29/iconix-process-for-software-development/</link>
		<comments>http://sureshkumarveluswamy.wordpress.com/2010/07/29/iconix-process-for-software-development/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 16:29:48 +0000</pubDate>
		<dc:creator>Suresh Kumar Veluswamy</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[ICONIX]]></category>
		<category><![CDATA[ICONIX Process]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[use case]]></category>

		<guid isPermaLink="false">http://sureshkumarveluswamy.wordpress.com/?p=50</guid>
		<description><![CDATA[ICONIX Process is an Agile, light-weight, minimalist, streamlined approach that focuses on that area that lies in between use cases and code while developing software. It uses a core subset of UML diagrams, in getting from use cases to source code in as few steps as possible.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=50&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h3><strong>Why ICONIX Process?</strong></h3>
<p>Are you a project manager who wants to introduce some agile practices into your software project?</p>
<p>Are you a programmer or software architect ? Do you need the technical details you need to get agile?</p>
<p>Are you wondering how to combine the latest agile techniques with more traditional up-front requirements analysis + design to increase the likelihood of your project succeeding?</p>
<p>The ICONIX Process would be a useful starting point.</p>
<p><strong> </strong></p>
<h3><strong>What is ICONIX Process?</strong></h3>
<p>ICONIX is a open, free-to-use object modeling process. It’s minimal, use case driven, and agile process. The ICONIX Process is a minimalist, streamlined approach that focuses on that area that lies in between use cases and code. It uses a core subset of UML diagrams, and provides a reliable method of getting from use cases to source code in as few steps as possible. ICONIX is a sweet spot between light- and heavyweight software development processes.</p>
<p><a href="http://iconixprocess.com/iconix-process/"><img title="ICONIX Process Overview" src="http://iconixprocess.files.wordpress.com/2007/01/iconixprocess-lg.png?w=450" alt="ICONIX Process Overview" /></a></p>
<p>ICONIX is a software development methodology which predates both the Rational Unified Process (RUP), Extreme Programming (XP) and Agile software development. Like RUP, the ICONIX process is UML Use Case driven but more lightweight than RUP. Unlike the XP and Agile approaches, ICONIX provides sufficient requirement and design documentation, but without analysis paralysis. The ICONIX Process uses only four UML based diagrams in a four step process that turns use case text into working code. If you find the Rational Unified Process too large, and Extreme Programming too small, take a look at the use case driven ICONIX process, which sits nicely in the middle.</p>
<p>A principle distinction of ICONIX is its use of robustness analysis, a method for bridging the gap between analysis and design. Robustness analysis reduces the ambiguity in use case descriptions, by ensuring that they are written in the context of an accompanying domain model. This process makes the use cases much easier to design, test and estimate.</p>
<p>The ICONIX Process is described in the book Use Case Driven Object Modeling with UML: Theory and Practice.<br />
Essentially, the ICONIX Process describes the core &#8220;logical&#8221; analysis and design modeling process. However, the process can be used without much tailoring on projects that follow different project management or agile methodologies. Because the process uses a minimal set of steps, it’s also well suited to agile development, and can be used in tandem with test-driven development (TDD) to help &#8220;plug the gaps&#8221; in the requirements. If you combine unit testing with up-front UML modeling, you can produce a really rigorous software design. The book Agile Development with ICONIX Process describes how to use the ICONIX Process in an agile project.</p>
<p><strong> </strong></p>
<h3><strong>ICONIX Process and Water fall process model</strong></h3>
<p>ICONIX Process describes a series of specific steps that were found work really well on many different software projects. However, it doesn’t prescribe the project life-cycle side of things in the way that most other software development methodologies do. You can be as agile (with short iterations and quick, successive releases) or as “waterfall” (first writing all the requirements, then doing all the design, and then writing all the code) as befits your project, and still be following ICONIX Process.</p>
<p><strong> </strong></p>
<h3><strong>ICONIX goals of Agility</strong></h3>
<li>Respond to changing requirements in a robust and timely manner.</li>
<li>Improve the design and architecture of a project without massively impacting its schedule.</li>
<li>Give customers exactly what they want from a project for the dollars they have to invest.</li>
<li>Do all this without burning out your staff to get the job done.</li>
<h3><strong> </strong><strong>ICONIX Process’s Agile Practices Vs Standard Agile Practices</strong></h3>
<ul>– With ICONIX Process, an emphasis is placed on getting the software requirements right up front</ul>
<ul>– With ICONIX Process, design modeling and coding are tightly interleaved, each providing feedback to the other</ul>
<ul>– With ICONIX Process, the design and the code don’t diverge over time. Instead, they converge, with the design model and the code becoming more in sync.</ul>
<p><strong> </strong></p>
<h3><strong>Top 10 Things why People who use ICONIX like it</strong></h3>
<ol><strong>10.</strong> The process uses a core subset of UML.<br />
(We’d rather learn 4 diagrams than 14 . . .)<strong> </strong></ol>
<ol><strong>9.</strong> It actually gets me all the way to code.<br />
(I have 13 use case books on my shelf that don’t get within 50 miles of code.)<strong> </strong></ol>
<ol><strong>8.</strong> It’s traceable from one step to the next.<strong> </strong></ol>
<ol><strong>7.</strong> It addresses both sunny- and rainy-day scenarios.<br />
(If another one of my programmers tells me they’re “Doing The Simplest Thing That<br />
Could Possibly Work” [DTSTTCPW], I think I’m gonna scream.)</ol>
<ol>&nbsp;</p>
<p><strong>6.</strong> It assumes that the requirements I’m initially given are vague, ambiguous, incomplete,<br />
and incorrect.</p>
<p><strong>5.</strong> It actually drives the OO design from the use cases.<br />
(I know RUP says that it’s use case–driven, but I get lost somewhere around the Elaboration<br />
phase.)</p>
<p><strong>4.</strong> It works well in an “agile” (short iteration, small increment) environment.<br />
(I wish somebody would write a book on how to do Agile/ICONIX, though.)</p>
<p><strong>3.</strong> It doesn’t drown me in five-syllable buzzwords.<br />
(What about multiple polymorphic inheritance, anyway?)8</p>
<p><strong>2.</strong> It operates at a tangible level where the use cases talk about what the users are doing on<br />
the screens, and there are no huge use case templates.<br />
(In other words, the use cases aren’t abstract, essential, technology-free, or implementation<br />
independent.)</p>
<p><strong>1.</strong> It’s a practical approach that’s been proven to work in the real world, on hundreds of<br />
projects.</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sureshkumarveluswamy.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sureshkumarveluswamy.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sureshkumarveluswamy.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sureshkumarveluswamy.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/sureshkumarveluswamy.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sureshkumarveluswamy.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/sureshkumarveluswamy.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sureshkumarveluswamy.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sureshkumarveluswamy.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sureshkumarveluswamy.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sureshkumarveluswamy.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sureshkumarveluswamy.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sureshkumarveluswamy.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sureshkumarveluswamy.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=50&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://sureshkumarveluswamy.wordpress.com/2010/07/29/iconix-process-for-software-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b89b56e45e1e4afb8ac3a5bdd0fc9a6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sureshkumarveluswamy</media:title>
		</media:content>

		<media:content url="http://iconixprocess.files.wordpress.com/2007/01/iconixprocess-lg.png" medium="image">
			<media:title type="html">ICONIX Process Overview</media:title>
		</media:content>
	</item>
		<item>
		<title>MVVM design pattern</title>
		<link>http://sureshkumarveluswamy.wordpress.com/2010/07/28/mvvm-design-pattern/</link>
		<comments>http://sureshkumarveluswamy.wordpress.com/2010/07/28/mvvm-design-pattern/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 06:05:42 +0000</pubDate>
		<dc:creator>Suresh Kumar Veluswamy</dc:creator>
				<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[Design Pattern]]></category>
		<category><![CDATA[MVVM]]></category>
		<category><![CDATA[winforms]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://sureshkumarveluswamy.wordpress.com/?p=28</guid>
		<description><![CDATA[Jason Dolinger has written a blog on Model-View-ViewModel in WCF. The blog has a video attached. In the video he talks about how to create Testable WCF applications. Jason Dolinger on Model-View-ViewModel Here is a brief summary of Jason Dolinger&#8217;s presentation XAML is tightly coupled with the code-behind file. We usually write all the logic [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=28&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://sureshkumarveluswamy.files.wordpress.com/2010/07/mvvm.png"><img class="aligncenter size-medium wp-image-38" title="mvvm" src="http://sureshkumarveluswamy.files.wordpress.com/2010/07/mvvm.png?w=300&#038;h=231" alt="MVVM" width="300" height="231" /></a></p>
<p>Jason Dolinger has written a blog on Model-View-ViewModel in WCF. The blog has a video attached. In the video he talks about how to create Testable WCF applications.<br />
<a href="http://blog.lab49.com/archives/2650">Jason Dolinger on Model-View-ViewModel</a></p>
<p>Here is a brief summary of Jason Dolinger&#8217;s presentation</p>
<p>XAML is tightly coupled with the code-behind file. We usually write all the logic in event handlers in the code-behind files. This tight coupling of code-behind code with the UI will make the unit testing the code difficult. One more problem here is the View or the UI has become the storage place for data. Whenever you need some data you go to the UI controls to get the data. The View must just display the data and must not be storage place of the data.</p>
<p>Jason also talks about Model-View-Presenter pattern and how it is used in Winform/ASP .NET. In MCP, the Presenter acts as a controller. The view implements an interface. The Presenter is instantiated in the code-behind and an instance of the view is passed (injected) into the Presenter via the view interface. The presenter class is testable. You can create an instance of the Presenter, create a mocked view and pass it to the presenter. You can write tests against the methods in the presenter. The code-behind stays clean. MVP will also be applicable to WCF. But with MVVM we can take advantage of WPF two way data binding. Also you can avoid creating interfaces and implementing them.<br />
In M-V-VM thee are three entities Model, View and ViewModel. View Model is a standalone C# class which acts like an adaptor between the View and Model. VM retrieves the data from the Model and displays it as properties. The view is databinded to the ViewModel properties (hence called the adaptor). VM contains public properties for each control in the View.</p>
<p>You can also refer <a href="http://www.google.co.in/url?sa=t&amp;source=web&amp;cd=5&amp;ved=0CCIQFjAE&amp;url=http%3A%2F%2Fwww.codeproject.com%2FKB%2FWPF%2FMVVMQuickTutorial.aspx&amp;ei=JktUTKXrJ4HGvQOj9vgY&amp;usg=AFQjCNFpwmMARxU6h4FE-TKQwQzsQorgfA">A Practical Quick-start Tutorial on MVVM in WPF &#8211; CodeProject</a></p>
<p>I also came across an article that says using MVVM might be an overkill for small applications.</p>
<p>This links talks about an alternate implementation (MVP-PMlight approach)- <a title="Permanent Link to The MVVM Pattern Is Highly  Overrated" href="http://davybrion.com/blog/2010/07/the-mvvm-pattern-is-highly-overrated/" rel="bookmark">The MVVM Pattern Is Highly Overrated</a></p>
<p>There are some guidance from Patterns and Practices about using Prism for WPF</p>
<p><a href="http://codebetter.com/blogs/glenn.block/archive/2008/05/10/prism-cab-and-winforms-futures.aspx" target="_blank"> Prism, CAB, and WinForms futures</a></p>
<p id="ctl00_ctl00_MasterContent_ProjectTitleControl1_ProjectHeader" class="ProjectHeader NoMargin"><span id="ctl00_ctl00_MasterContent_ProjectTitleControl1_TitleLabel">patterns &amp; practices: Prism</span></p>
<p class="ProjectHeader NoMargin">
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sureshkumarveluswamy.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sureshkumarveluswamy.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sureshkumarveluswamy.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sureshkumarveluswamy.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/sureshkumarveluswamy.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sureshkumarveluswamy.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/sureshkumarveluswamy.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sureshkumarveluswamy.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sureshkumarveluswamy.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sureshkumarveluswamy.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sureshkumarveluswamy.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sureshkumarveluswamy.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sureshkumarveluswamy.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sureshkumarveluswamy.wordpress.com/28/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=28&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://sureshkumarveluswamy.wordpress.com/2010/07/28/mvvm-design-pattern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b89b56e45e1e4afb8ac3a5bdd0fc9a6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sureshkumarveluswamy</media:title>
		</media:content>

		<media:content url="http://sureshkumarveluswamy.files.wordpress.com/2010/07/mvvm.png?w=300" medium="image">
			<media:title type="html">mvvm</media:title>
		</media:content>
	</item>
		<item>
		<title>WCF Performance</title>
		<link>http://sureshkumarveluswamy.wordpress.com/2010/04/10/wcf-performance/</link>
		<comments>http://sureshkumarveluswamy.wordpress.com/2010/04/10/wcf-performance/#comments</comments>
		<pubDate>Sat, 10 Apr 2010 10:18:27 +0000</pubDate>
		<dc:creator>Suresh Kumar Veluswamy</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://sureshkumarveluswamy.wordpress.com/?p=3</guid>
		<description><![CDATA[WCF Performance Some of my colleagues have been asking me questions like, Why should we migrate to WCF? Will WCF provide better performance than what I have? After some research, I found some performance comparisons that would justify migration to WCF. I came across a Microsoft post for WCF performance comparison with other available choices. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=3&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1><span style="color:#000000;">WCF Performance</span></h1>
<h1><span style="color:#000000;"><br />
</span></h1>
<p><span style="color:#000000;">Some of my colleagues have been asking me questions like, Why should we migrate to WCF? Will WCF provide better performance than what I have? After some research, I found some performance comparisons that would justify migration to WCF.</span></p>
<p><span style="color:#000000;">I came across a Microsoft post for WCF performance comparison with other available choices. It is available here: <a href="http://msdn2.microsoft.com/en-us/library/bb310550.aspx">A Performance Comparison of Windows Communication Foundation (WCF) with Existing Distributed Communication Technologies</a></span></p>
<p><span style="color:#000000;">The article compares the WCF to Web Service (asmx), WSE 2.0/3.0, Enterprise Services and .NET Remoting.</span></p>
<p><span style="color:#000000;">To summarize the results</span></p>
<p style="padding-left:30px;"><span style="color:#ff0000;">WCF is 25%—50% faster than ASP.NET Web Services, and approximately 25% faster than .NET Remoting. Comparison with .NET Enterprise Service is load dependant, as in one case WCF is nearly 100% faster but in another scenario it is nearly 25% slower. For WSE 2.0/3.0 implementations, migrating them to WCF will obviously provide the most significant performance gains of almost 4x.</span></p>
<p>.NET offers several different flavors of WCF services that you can choose from based on your particular needs. <span style="color:#000000;">Now, If you have decided to go for WCF, you will have the  next question. Which flavor of WCF should I choose?</span></p>
<p><span style="color:#000000;">You might be interested in some performance comparison before choosing a particular flavor. I found a blog that does this. It&#8217;s <a title="Title of this entry." href="http://geekswithblogs.net/BVeldhoen/archive/2008/01/26/wcf-latency-test-harness.aspx">WCF Latency Test Harness and WCF Performance</a>.  This shows measures of WCF performance by varying different parameters.</span></p>
<p><span style="color:#000000;">To summarize the results</span></p>
<p style="padding-left:30px;"><span style="color:#ff0000;">nullTransport, netNamedPipe and netMsmq Bindings show better performance than basicHttp and wsHttp Bindings.  .NET Remoting shows better performance using the default DataContractSerializer when using a more complex data structure.</span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sureshkumarveluswamy.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sureshkumarveluswamy.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sureshkumarveluswamy.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sureshkumarveluswamy.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/sureshkumarveluswamy.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/sureshkumarveluswamy.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/sureshkumarveluswamy.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/sureshkumarveluswamy.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sureshkumarveluswamy.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sureshkumarveluswamy.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sureshkumarveluswamy.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sureshkumarveluswamy.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sureshkumarveluswamy.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sureshkumarveluswamy.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sureshkumarveluswamy.wordpress.com&amp;blog=13064445&amp;post=3&amp;subd=sureshkumarveluswamy&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://sureshkumarveluswamy.wordpress.com/2010/04/10/wcf-performance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b89b56e45e1e4afb8ac3a5bdd0fc9a6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sureshkumarveluswamy</media:title>
		</media:content>
	</item>
	</channel>
</rss>
