<?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>Kumaresan</title>
	<atom:link href="http://kumaresan.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://kumaresan.wordpress.com</link>
	<description>Kumaresan's view on Life &#38; Technology..</description>
	<lastBuildDate>Wed, 15 Dec 2010 03:31:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='kumaresan.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Kumaresan</title>
		<link>http://kumaresan.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://kumaresan.wordpress.com/osd.xml" title="Kumaresan" />
	<atom:link rel='hub' href='http://kumaresan.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Managed Extensibility Framework</title>
		<link>http://kumaresan.wordpress.com/2010/12/15/managed-extensibility-framework/</link>
		<comments>http://kumaresan.wordpress.com/2010/12/15/managed-extensibility-framework/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 03:31:20 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/?p=34</guid>
		<description><![CDATA[Managed Extensibility Framework is a library  for creating lightweight extensible application. MEF  comes as a part of .NET framework 4.0 . This allows application to discover the extensions with no configuration files !! The Problem with Extensibility :                         Consider a scenario where we have to architect a large application, which has a lot of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=34&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Managed Extensibility Framework is a library  for creating lightweight extensible application. MEF  comes as a part of .NET framework 4.0 . This allows application to discover the extensions with no configuration files !!</p>
<p>The Problem with Extensibility :<br />
                        Consider a scenario where we have to architect a large application, which has a lot of smaller components , and responsible for creating and running them. The simplest solution is to have a hard dependency and call them from the code. But the major drawback in this approach is that you cannot add components without modifying source code, not a ideal approach in a client application scenario.</p>
<p>A slightly different approach in this is to provide extension points through interface, thereby achieving a decoupling between the application and its components. But the problem in this approach is that the application lacks any capacity to discover the components it should load and this is often accomplished by explicitly specifying in the configuration file. And this is not that helpful in client application scenario, where we expect the end user perform the configuration when new components are getting added.</p>
<p>Instead of this explicit registration, MEF offers a way to discover them implicitly, via Composition. A MEF component is called &#8216;Part&#8217; which often specifies the &#8216;Imports&#8217;(dependencies)  and &#8216;Exports&#8217;(Capabilities).</p>
<p>When a part is created, the composition engine satisfies its &#8216;Imports&#8217; with what is available from other part (which is understood through their &#8216;Exports&#8217;).</p>
<p>MEF allows applications to discover and examine parts by their metadata, without instantiating them or even loading their assemblies. As a result, there is no need to carefully specify when and how extensions should be loaded. In addition to its provided exports, a part can specify its imports, which will be filled by other parts. This makes communication among parts not only possible, but easy, and allows for good factoring of code.</p>
<p>Composition Container and Catalogs:<br />
                        The core of the MEF composition model is the composition container, which contains all the parts available and performs composition. (That is, the matching up of imports to exports.)</p>
<p> A catalog is an object that makes available parts discovered from some source. MEF provides catalogs to discover parts from a provided type, an assembly, or a directory. Application developers can easily create new catalogs to discover parts from other sources, such as a Web service.</p>
<p>MEF site has lot of articles/tutorials/samples on this. <a href="http://mef.codeplex.com/">http://mef.codeplex.com/</a></p>
<p>Check it out !!</p>
<br />Filed under: <a href='http://kumaresan.wordpress.com/category/uncategorized/'>Uncategorized</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=34&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2010/12/15/managed-extensibility-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
		<item>
		<title>C# 4 Language -What&#8217;s New?</title>
		<link>http://kumaresan.wordpress.com/2010/12/15/c-4-language-whats-new/</link>
		<comments>http://kumaresan.wordpress.com/2010/12/15/c-4-language-whats-new/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 03:28:49 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/?p=31</guid>
		<description><![CDATA[Lets look at some of the new features that are part of the C# 4.0 dynamic : This is one of the new types included in .NET 4.0. This is a static type but an object of type dynamic bypasses static type checking. We don’t have to be concerned about whether the object gets its [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=31&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Lets look at some of the new features that are part of the C# 4.0</p>
<p>dynamic :<br />
This is one of the new types included in .NET 4.0. This is a static type but an object of type dynamic bypasses static type checking. We don’t have to be concerned about whether the object gets its value from a COM API,from dynamic languages, from reflection or from HTML DOM. If the code is invalid, the errors are caught at runtime.</p>
<p>The Dynamic Language Runtime (DLR) , in .NET 4.0, provides the infrastructure that supports the dynamic type in C#. The purpose of the DLR is to enable a system of dynamic languages to run on the .NET Framework and give them .NET interoperability.</p>
<p>Covariance and Contra variance :<br />
Covariance enables you to use a more derived type than that specified by the generic parameter, whereas contra variance enables you to use a less derived type. This allows for implicit conversion of classes that implement variant interfaces and provides more flexibility for matching method signatures with variant delegate types. Variant interfaces and delegates can be created by using the new in and out language keywords. The major advantage is hidden in this simple line, which didn’t compile until C# 4.0:</p>
<p> IEnumerable&lt;Object&gt; objects = new List&lt;String&gt;();</p>
<p>Optional Parameters :<br />
Support for optional parameters allows you to give a method parameter a default value so that you do not have to specify it every time you call the method. This allows you to specify a default value for a parameter like this.</p>
<p>public void Process( string data, bool ignore= false, ArrayList moreData = null )<br />
{}</p>
<p> Named Arguments :<br />
The order of parameters in a method declaration and the order of arguments you pass when calling the method don’t need to match anymore. You can provide arguments in any order you like by specifying parameter names in a method call. This might also improve the readability of your code.</p>
<p>Office Programmability :<br />
 Access to COM interfaces, including the Office Automation APIs, is greatly enhanced by the addition of named and optional arguments, the dynamic type, indexed properties, and optional ref modifiers.</p>
<br />Filed under: <a href='http://kumaresan.wordpress.com/category/uncategorized/'>Uncategorized</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/31/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=31&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2010/12/15/c-4-language-whats-new/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
		<item>
		<title>Components of DDD</title>
		<link>http://kumaresan.wordpress.com/2009/10/06/components-of-ddd/</link>
		<comments>http://kumaresan.wordpress.com/2009/10/06/components-of-ddd/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 12:25:11 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[DDD]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/?p=25</guid>
		<description><![CDATA[In Most of the Projects , analysts work with domain experts and they build something called analysis model where the business requirements are captured. This is then passed on to the developers. The developers figure out that some of the stuff cannot be properly expressed in code. so they use model as an Inspiration and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=25&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:left;">In Most of the Projects , analysts work with domain experts and they build something called analysis model where the business requirements are captured. This is then passed on to the developers. The developers figure out that some of the stuff cannot be properly expressed in code. so they use model as an Inspiration and create their own design for the purpose of development. As the time progresses the original domain created becomes irrelevant to the code.</p>
<p style="text-align:left;">Model driven design enforces the model and code close to each other. Any domain can be expressed in various models and any model can be expressed in various ways through code. But keeping the model and code relevant to each other will help the project in the long run.</p>
<p style="text-align:center;">
<p style="text-align:center;"><img class="size-full wp-image-24 aligncenter" title="DDD" src="http://kumaresan.files.wordpress.com/2009/10/ddd1.png" alt="DDD" width="837" height="604" /></p>
<p style="text-align:left;">
<p style="text-align:left;"><strong>Layered Architecture </strong>:  Domain Driven design stresses up on the softwares to follow Layered architecture. This will help us to have a separation of concern. The most common layering scheme that people use is UI- Application &#8211; Domain - Infrastructure.</p>
<p style="text-align:left;">Domain layer is a mandatory thing to have  Domain Driven Design in Place.This is the heart of the business software. The state of business objects is held here.</p>
<div id="_mcePaste" style="position:absolute;left:-10000px;top:854px;width:1px;height:1px;">This</div>
<div id="_mcePaste" style="position:absolute;left:-10000px;top:854px;width:1px;height:1px;">is the heart of the business software. The state of</div>
<div id="_mcePaste" style="position:absolute;left:-10000px;top:854px;width:1px;height:1px;">business objects is held here.</div>
<p>Infrastructure layer are  mainly stateless and they expose services that the layers above it can use.It provides communication between layers,implements persistence for business objects, contains supporting libraries for the user interface layer, etc.</p>
<p style="text-align:left;">
<p style="text-align:left;">Application Layer is a thin layer which coordinates the application activity. It does not contain business logic. It does not hold the state of the business objects, but it can hold the state of an application task progress.</p>
<p style="text-align:left;">To Identify the potential entities for an application, OO design stresses upon finding &#8220;the  nouns&#8221;. In DDD the the found nouns can be one of the Entites or Value Objects. The ones that have a thread of continuity and Identity is an Entity and the rest becomes Value objects.</p>
<p style="text-align:left;">Services are those part of application that remains stateless and they contain verbs that is not related with any of the entities or Value objects.</p>
<br />Posted in DDD  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/25/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=25&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2009/10/06/components-of-ddd/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>

		<media:content url="http://kumaresan.files.wordpress.com/2009/10/ddd1.png" medium="image">
			<media:title type="html">DDD</media:title>
		</media:content>
	</item>
		<item>
		<title>Domain Modelling</title>
		<link>http://kumaresan.wordpress.com/2009/10/06/domain-modelling/</link>
		<comments>http://kumaresan.wordpress.com/2009/10/06/domain-modelling/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 03:28:42 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[DDD]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/?p=19</guid>
		<description><![CDATA[Models plays a central role in the world of Domain Driven Design.Models help us to simplify the Problem at hand and helps us in deriving solution for it. What is a model? A model represents some aspect of reality or an Idea of that is of Interest. It is an Interpretation of reality that abstracts the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=19&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Models plays a central role in the world of Domain Driven Design.Models help us to simplify the Problem at hand and helps us in deriving solution for it.</p>
<p><strong>What is a model?</strong> A model represents some aspect of reality or an Idea of that is of Interest. It is an Interpretation of reality that abstracts the aspects relevant to solving the problem at hand and ignores extraneous detail.</p>
<p><strong>Domain Model:</strong> A Domain model is not necessarily a diagram. It is the rigorously organized and selective abstraction of the domain knowledge. In the words of Eric evans &#8221; It is more like movie making loosely representing reality to a particular purpose&#8221;. In DDD three basic uses determine the choice of a model.</p>
<p>1. The model and Implementation should have an intimate link between them. This will make the model more relevant. This ensures that all the analysis that is done based on the model is applied on the software. It also helps during maintenance and continuing development.</p>
<p>2. As the model and Implementation has a deep link, the team can use a language (ubiquitous language) that is based on the model for communication. This will help the team to talk to the domain experts without translation.</p>
<p>3. Model becomes the distilled knowledge of the project and  it helps the team and domain experts to collaborate effectively and wrestle information.</p>
<p>There are certain Ingredients to effective modelling.</p>
<ol>
<li>Binding the model and Implementation</li>
<li>Cultivating language based on Model</li>
<li>Developing a Knowledge rich model</li>
<li>Distilling the Model</li>
<li>Brainstorming and Experimenting</li>
</ol>
<p>In old Waterfall method, we have domain experts who talk to analysts and they pass that information to developers who build the software. This approach is a failure because it completely lacks feedback and the knowledge trickles in one direction.</p>
<p>In DDD, the domain modelers plays the role of Knowledge crunching. The entire team communicates to domain experts using ubiquitous language, based on the model and they crunch the knowledge and put that in the model. The models are never perfect and they evolve. All projects leak knowledge. The Information is scattered. People who have learned something move one. In these cases an effective model rescue the team as it contains the knowledge that is needed.</p>
<br />Posted in DDD  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/19/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=19&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2009/10/06/domain-modelling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
		<item>
		<title>Domain Driven Design</title>
		<link>http://kumaresan.wordpress.com/2009/10/05/domain-driven-design-what-it-is/</link>
		<comments>http://kumaresan.wordpress.com/2009/10/05/domain-driven-design-what-it-is/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 16:13:10 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[DDD]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/?p=13</guid>
		<description><![CDATA[Software development is most often aplied to automating processes that exist in the real world, or providing solutions to real business problems.It helps us deal with the complexities of our modern life.Building softwares that are complex is one of the challenges that the Industry is facing and people are trying various ways they can manage [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=13&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Software development is most often aplied to automating processes that exist in the real world, or providing solutions to real business problems.It helps us deal with the complexities of our modern life.Building softwares that are complex is one of the challenges that the Industry is facing and people are trying various ways they can manage this.</p>
<p><strong>Why Projects Fail : </strong>There are various things that can put a project off course , bureaucracy, unclear objectives, lack of resources, to name a few, but it is the approach to design that largely determines how complex software can become.When complexity gets out of hand, the software can no longer be understood well enough to be easily changed or extended. By contrast, a good design can make opportunities out of those complex features.</p>
<p>Most of the design factor are technological, and a great deal of effort has gone into the design of networks, databases, and other technical dimension of software. Books have been written about how to solve these problems and developers have cultivated their skills and followed technical enhacement.</p>
<p>Yet the most significant complexity of many applications is not technical. It is in the domain itself, the activity or business of the user. When this domain complexity is not dealt with in the design, it won’t matter that the infrastructural technology is well-conceived. A successful design must systematically deal with this central aspect of the software.</p>
<p>Eric evans puts forward Domain Driven design,which stresses upon 2 points:</p>
<p>1. For Most software Projects,the primary focus should be on the domain and domain logic</p>
<p>2. Complex domain designs should be based on a model.</p>
<p>Domain Driven Design, stresses that the focus while developing any project should be on the domain it is operating in.The software has to fit harmoniously with the domain it has been created for.The best way to do it is to make the software a reflection of the domain Itself.</p>
<br />Posted in DDD  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/13/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=13&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2009/10/05/domain-driven-design-what-it-is/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
		<item>
		<title>Agile Project Management with Scrum-Part 1</title>
		<link>http://kumaresan.wordpress.com/2008/06/09/agile-project-management-with-scrum-part-1/</link>
		<comments>http://kumaresan.wordpress.com/2008/06/09/agile-project-management-with-scrum-part-1/#comments</comments>
		<pubDate>Mon, 09 Jun 2008 12:08:22 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/2008/06/09/agile-project-management-with-scrum-part-1/</guid>
		<description><![CDATA[I am currently reading the book &#8220;Agile Project Management with Scrum&#8221; by Ken Schwaber. Some notes from the book…   &#8221;It&#8217;s amazing to me that thousands upon thousands of people travel by car every day, accomplishing their goals in a framework of simple traffic rules, with no central control or dispatching service. It also amazes me [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=11&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="margin-left:27pt;">I am currently reading the book <a href="http://www.amazon.com/Agile-Project-Management-Microsoft-Professional/dp/073561993X/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1213013232&amp;sr=1-1">&#8220;Agile Project Management with Scrum&#8221; by Ken Schwaber</a>. Some notes from the book… </p>
<p style="margin-left:27pt;"> &#8221;It&#8217;s amazing to me that thousands upon thousands of people travel by car every day, <strong>accomplishing their goals</strong> in a framework of simple traffic rules, <strong>with no central control or dispatching service</strong>. It also amazes me that when I want to ship a package, I can enter a pickup request on the shipper&#8217;s Web site and a driver will arrive at my door before the time that I specify. The driver isn&#8217;t dispatched to each house; he or she receives a continually updated list of addresses and deadlines. It&#8217;s the driver&#8217;s job to plot a route to get all the packages picked up on time.&#8221;</p>
<p style="margin-left:28pt;">&#8220;The more complex the system, the more likely it is that central control systems will break down. This is the reason companies decentralize and governments deregulate—relinquishing control to independent agents is a time- honored approach to dealing with complexity. Scrum travels this well-trodden path by moving control from a central scheduling and dispatching authority to the individual teams doing the work. The more complex the project, the more necessary it becomes to delegate decision making to independent agents who are close to the work&#8221;</p>
<p style="margin-left:28pt;">&#8220;Scrum dramatically shortens the feedback loop between customer and developer, between wish list and implementation, and between investment and return on investment&#8221;</p>
<p style="margin-left:28pt;">&#8220;Scrum turns small teams into managers of their own fate. We know that when we are responsible for choosing our own driving route to Boston, we will find a way to get there. We will detour around construction and avoid rush hour traffic jams, making decisions on the fly, adapting to the independent decisions of all of the other drivers out there. Similarly, Scrum Teams accept a challenge and then figure out how to meet that challenge, detouring around roadblocks in creative ways that could not be planned by a central control and dispatching center.&#8221;</p>
<p style="margin-left:28pt;">&#8220;Virtually all process-improvement programs use some version of the Deming cycle to study a problem, experiment with a solution, measure the results, and adopt proven improvements. We call this fact-based decision making, and we know that it works a lot better than front-end-loaded predictive approaches&#8221;</p>
<p style="margin-left:28pt;">&#8220;Scrum&#8217;s <strong>philosophical underpinnings</strong> focus on empowering the development team and satisfying customers. Its<strong> managerial culture</strong> is rooted in helping others achieve their goals. Its <strong>technical tools</strong> are focused on making fact-based decisions through a learning process. When all of these factors are in place, it&#8217;s hard for Scrum not to succeed.&#8221;</p>
<p style="margin-left:28pt;">&#8220;Complex problems are those that behave unpredictably. Not only are these problems unpredictable, but even the ways in which they will prove unpredictable are impossible to predict&#8221;</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/kumaresan.wordpress.com/11/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/kumaresan.wordpress.com/11/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/11/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=11&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2008/06/09/agile-project-management-with-scrum-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
		<item>
		<title>Why you should prefer TDD?</title>
		<link>http://kumaresan.wordpress.com/2008/05/28/why-you-should-prefer-tdd/</link>
		<comments>http://kumaresan.wordpress.com/2008/05/28/why-you-should-prefer-tdd/#comments</comments>
		<pubDate>Wed, 28 May 2008 04:58:13 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[Blogmarks]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/2008/05/28/why-you-should-prefer-tdd/</guid>
		<description><![CDATA[Chad has written his views on why you should prefer TDD here.  &#8220;One vision that comes to my mind when people say they are having &#8216;success&#8217; is a circus performer juggling balls in the air while riding a unicycle.  Sure, that performer is an amazing expert in his field and extremely talented. However, if his [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=10&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lostechies.com/blogs/chad_myers/default.aspx">Chad</a> has written his views on why you should prefer TDD <a href="http://www.lostechies.com/blogs/chad_myers/archive/2008/05/27/introducing-quality-first-notions-into-an-existing-team.aspx">here</a>.</p>
<p> <em>&#8220;One vision that comes to my mind when people say they are having &#8216;success&#8217; is a circus performer juggling balls in the air while riding a unicycle.  Sure, that performer is an amazing expert in his field and extremely talented. However, if his task is to deliver the balls to a customer, he&#8217;s spending way too much effort when he could just walk them over to their destination.  Are the talented experts on your team juggling on unicycles, or are they taking the easiest, shortest path?  Which delivery method will make the customer more successful?  Juggling my impress them, but it&#8217;s not really helping them&#8221;<br />
</em></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/kumaresan.wordpress.com/10/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/kumaresan.wordpress.com/10/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=10&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2008/05/28/why-you-should-prefer-tdd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
		<item>
		<title>Introduction to Domain Specific Languages</title>
		<link>http://kumaresan.wordpress.com/2008/05/27/introduction-to-domain-specific-languages/</link>
		<comments>http://kumaresan.wordpress.com/2008/05/27/introduction-to-domain-specific-languages/#comments</comments>
		<pubDate>Tue, 27 May 2008 06:15:53 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[Blogmarks]]></category>
		<category><![CDATA[DSL]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/2008/05/27/introduction-to-domain-specific-languages/</guid>
		<description><![CDATA[Yesterday I saw the Introduction to Domain Specific Languages talk given by Martin Fowler in JAOO conference.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=6&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><font face="c" size="2">Yesterday I saw the <a href="http://www.infoq.com/presentations/domain-specific-languages" target="_blank">Introduction to Domain Specific Languages</a> talk given by <a href="http://www.martinfowler.com/" target="_blank">Martin Fowler</a> in JAOO conference.</font></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/kumaresan.wordpress.com/6/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/kumaresan.wordpress.com/6/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/6/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=6&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2008/05/27/introduction-to-domain-specific-languages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
		<item>
		<title>Hello..</title>
		<link>http://kumaresan.wordpress.com/2007/05/07/hello/</link>
		<comments>http://kumaresan.wordpress.com/2007/05/07/hello/#comments</comments>
		<pubDate>Mon, 07 May 2007 06:38:17 +0000</pubDate>
		<dc:creator>kumaresan</dc:creator>
				<category><![CDATA[Chumma]]></category>

		<guid isPermaLink="false">http://kumaresan.wordpress.com/2007/05/07/hello/</guid>
		<description><![CDATA[Watch this space for more..<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=4&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Watch this space for more..</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/kumaresan.wordpress.com/4/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/kumaresan.wordpress.com/4/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kumaresan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kumaresan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kumaresan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kumaresan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kumaresan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kumaresan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kumaresan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kumaresan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kumaresan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kumaresan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kumaresan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kumaresan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kumaresan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kumaresan.wordpress.com/4/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kumaresan.wordpress.com&amp;blog=1062614&amp;post=4&amp;subd=kumaresan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kumaresan.wordpress.com/2007/05/07/hello/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4b803cd3cb65bfe0f49acfa748a979f5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">kumaresan</media:title>
		</media:content>
	</item>
	</channel>
</rss>
