<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Sympriser Blog &#187; Software Design</title>
	<atom:link href="http://blog.symprise.net/category/fundamentals/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.symprise.net</link>
	<description>Synergising the Enterprise through Software &#38; Management Innovation</description>
	<lastBuildDate>Fri, 13 Jan 2012 05:46:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>The Open/Closed Principle: Concerns about Change in Software Design</title>
		<link>http://blog.symprise.net/2009/06/open-closed-principle-concerns-about-change-in-software-design/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=open-closed-principle-concerns-about-change-in-software-design</link>
		<comments>http://blog.symprise.net/2009/06/open-closed-principle-concerns-about-change-in-software-design/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 06:11:58 +0000</pubDate>
		<dc:creator>Rafael Peixoto de Azevedo</dc:creator>
				<category><![CDATA[General Principles]]></category>
		<category><![CDATA[Object Oriented]]></category>
		<category><![CDATA[Software Design]]></category>

		<guid isPermaLink="false">http://sympriser.wordpress.com/?p=1727</guid>
		<description><![CDATA[High quality software designs are easier and safer to work with. Investing in quality demands discipline and skill. Good design principles are usually helpful. But, are they always applicable?

This post investigates the applicability of the “Open-Closed Principle” when we add new functionality to a software design whose source code is entirely under our control.

Our argument is based on Dijkstra’s concept of separation of concerns.]]></description>
		<wfw:commentRss>http://blog.symprise.net/2009/06/open-closed-principle-concerns-about-change-in-software-design/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Revisiting Fowler&#8217;s Video Store: Refactoring Code, Refining Abstractions</title>
		<link>http://blog.symprise.net/2009/04/revisiting-fowlers-video-store-refactoring-code-reengineering-abstractions/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=revisiting-fowlers-video-store-refactoring-code-reengineering-abstractions</link>
		<comments>http://blog.symprise.net/2009/04/revisiting-fowlers-video-store-refactoring-code-reengineering-abstractions/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 12:42:42 +0000</pubDate>
		<dc:creator>Rafael Peixoto de Azevedo</dc:creator>
				<category><![CDATA[Domain-Driven]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Object Oriented]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Revisiting Fowler's Video Store]]></category>

		<guid isPermaLink="false">http://sympriser.wordpress.com/?p=744</guid>
		<description><![CDATA[Refactoring techniques and Design Patterns have been extensively propagated and advocated for over a decade now. <strong>Why we still find hard to change, anaemic or overly complex object oriented structures?</strong> What is missing in our design practices?

In this series, we use Fowler's didactic Video Store program to show <strong>practical advanced refactoring strategies</strong> that effectively improve design simplicity, expressiveness and flexibility.]]></description>
		<wfw:commentRss>http://blog.symprise.net/2009/04/revisiting-fowlers-video-store-refactoring-code-reengineering-abstractions/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Revisiting Fowler&#8217;s Video Store: Variants and Invariants</title>
		<link>http://blog.symprise.net/2009/04/revisiting-fowlers-video-store-03-variants-and-invariants/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=revisiting-fowlers-video-store-03-variants-and-invariants</link>
		<comments>http://blog.symprise.net/2009/04/revisiting-fowlers-video-store-03-variants-and-invariants/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 16:21:46 +0000</pubDate>
		<dc:creator>Rafael Peixoto de Azevedo</dc:creator>
				<category><![CDATA[Domain-Driven]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Object Oriented]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Revisiting Fowler's Video Store]]></category>

		<guid isPermaLink="false">http://sympriser.wordpress.com/?p=1252</guid>
		<description><![CDATA[This post resumes the Revisiting Fowler's Video Store series. After making the relevant domain concepts explicit, we focus our refactoring process on another aspect of domain semantics, studying <strong>contextual variance</strong> under the perspective of the following issues:
   1. The Passage of Time;
   2. Changes in the Video Classification;
   3. Changes in Rental Prices and Terms.]]></description>
		<wfw:commentRss>http://blog.symprise.net/2009/04/revisiting-fowlers-video-store-03-variants-and-invariants/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Revisiting Fowler&#8217;s Video Store: Making Implicit Concepts Explicit</title>
		<link>http://blog.symprise.net/2009/03/revisiting-fowlers-video-store-02-making-implicit-concepts-explicit/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=revisiting-fowlers-video-store-02-making-implicit-concepts-explicit</link>
		<comments>http://blog.symprise.net/2009/03/revisiting-fowlers-video-store-02-making-implicit-concepts-explicit/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 13:39:29 +0000</pubDate>
		<dc:creator>Rafael Peixoto de Azevedo</dc:creator>
				<category><![CDATA[Domain-Driven]]></category>
		<category><![CDATA[Extract Value Object]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Object Oriented]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Revisiting Fowler's Video Store]]></category>

		<guid isPermaLink="false">http://sympriser.wordpress.com/?p=716</guid>
		<description><![CDATA[Domain-Driven Design situates the domain model in a central and convergent role, tightly articulating semantics and syntax for problem definition, solution design and software implementation.
<p>
<strong>In this post, we bring the domain semantics to our refactoring process.</strong> We want a deeper perspective to analyse modularity problems and to direct improvements towards greater relevance to our design objectives.]]></description>
		<wfw:commentRss>http://blog.symprise.net/2009/03/revisiting-fowlers-video-store-02-making-implicit-concepts-explicit/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Revisiting Fowler&#8217;s Video Store: Adopting Object Oriented Syntax</title>
		<link>http://blog.symprise.net/2009/01/revisiting-fowlers-video-store-01-object-oriented-syntax/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=revisiting-fowlers-video-store-01-object-oriented-syntax</link>
		<comments>http://blog.symprise.net/2009/01/revisiting-fowlers-video-store-01-object-oriented-syntax/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 05:36:02 +0000</pubDate>
		<dc:creator>Rafael Peixoto de Azevedo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Object Oriented]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Revisiting Fowler's Video Store]]></category>

		<guid isPermaLink="false">http://sympriser.wordpress.com/?p=603</guid>
		<description><![CDATA[Have you ever found a program you needed to add, change or even fix a simple function, but you just didn’t know where to start or were afraid of breaking the program’s logical consistency?

<strong>Refactoring</strong> is a modularity improving technique that is indispensable in the skill set of any professional software developer. In this post, we use Refactoring to effectively adopt an object-oriented design syntax and make a program like this easier and safer to work with.]]></description>
		<wfw:commentRss>http://blog.symprise.net/2009/01/revisiting-fowlers-video-store-01-object-oriented-syntax/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

