<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Some thoughts on the merits of model driven software development</title>
	<atom:link href="http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/</link>
	<description>mobile / model-driven</description>
	<lastBuildDate>Mon, 06 Feb 2012 07:53:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
	<item>
		<title>By: Model Driven Inside &#124; Thoughts on MDD &#124; Model Driven Inside</title>
		<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/comment-page-1/#comment-2581</link>
		<dc:creator>Model Driven Inside &#124; Thoughts on MDD &#124; Model Driven Inside</dc:creator>
		<pubDate>Wed, 13 Aug 2008 18:54:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.peterfriese.de/?p=119#comment-2581</guid>
		<description>[...] Read his whole post at http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/ [...]</description>
		<content:encoded><![CDATA[<p>[...] Read his whole post at <a href="http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/" rel="nofollow">http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Skyway Team Blog &#187; Blog Archive &#187; (More) Thoughts on MDSD and DSLs</title>
		<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/comment-page-1/#comment-2578</link>
		<dc:creator>Skyway Team Blog &#187; Blog Archive &#187; (More) Thoughts on MDSD and DSLs</dc:creator>
		<pubDate>Fri, 08 Aug 2008 14:49:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.peterfriese.de/?p=119#comment-2578</guid>
		<description>[...] Friese (of openArchitectureWare, AndroMDA, and FindBugs fame) recently blogged some thoughts on the merits of model-driven software development (MDSD); his thoughts triggered a variety of thoughts and reminiscences of my [...]</description>
		<content:encoded><![CDATA[<p>[...] Friese (of openArchitectureWare, AndroMDA, and FindBugs fame) recently blogged some thoughts on the merits of model-driven software development (MDSD); his thoughts triggered a variety of thoughts and reminiscences of my [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter</title>
		<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/comment-page-1/#comment-2577</link>
		<dc:creator>Peter</dc:creator>
		<pubDate>Wed, 06 Aug 2008 21:40:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.peterfriese.de/?p=119#comment-2577</guid>
		<description>Hi Magnus,

thanks for taking the time to comment! 

When I was writing about prejudices, I didn&#039;t mean to express that these were YOUR prejudices, but instead common misunderstandings of many developers out there. And indeed, you never wrote &quot;complicated&quot;. I derived &quot;complicated&quot; from the following piece in your post: &quot;Higher level of abstraction: Developing on this conceptual level is very different to traditional development.&quot;

My post is not so much a criticism of your post, but rather a contribution to the discussion whether MDSD is a feasible development technology.

(PS: don&#039;t know why I had to approve your presious comments, as I didn&#039;t have to approve Ed&#039;s and Ekke&#039;s, but I do hope your future comments will appear immediately)</description>
		<content:encoded><![CDATA[<p>Hi Magnus,</p>
<p>thanks for taking the time to comment! </p>
<p>When I was writing about prejudices, I didn&#8217;t mean to express that these were YOUR prejudices, but instead common misunderstandings of many developers out there. And indeed, you never wrote &#8220;complicated&#8221;. I derived &#8220;complicated&#8221; from the following piece in your post: &#8220;Higher level of abstraction: Developing on this conceptual level is very different to traditional development.&#8221;</p>
<p>My post is not so much a criticism of your post, but rather a contribution to the discussion whether MDSD is a feasible development technology.</p>
<p>(PS: don&#8217;t know why I had to approve your presious comments, as I didn&#8217;t have to approve Ed&#8217;s and Ekke&#8217;s, but I do hope your future comments will appear immediately)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Magnus Jungsbluth</title>
		<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/comment-page-1/#comment-2576</link>
		<dc:creator>Magnus Jungsbluth</dc:creator>
		<pubDate>Wed, 06 Aug 2008 07:18:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.peterfriese.de/?p=119#comment-2576</guid>
		<description>Ed,

as Peter points out in the first paragraph, my only conclusion really was that the question if MDSD is faster does not necessarily have a yes / no answer and is not the most important consideration, because there are so many more other benefits on top. 

Sure long-term it is faster and if you have everything in place, your next project will be finished in almost no time. Even short-term you might save a lot of time if you have done this kind of development before and know the traps. 

And of course, just spitting out a DSL and using only that wouldn&#039;t get you very far, you need to design a alot more. 

I&#039;m kind of amused that my post produced so many strong reactions as I just wanted to indicate that time-to-market (most important and quantifyable argument for the management) is not hitting the spot in many cases.

Anyways, nice to have this discussion guys.

(My first comment is still pending)</description>
		<content:encoded><![CDATA[<p>Ed,</p>
<p>as Peter points out in the first paragraph, my only conclusion really was that the question if MDSD is faster does not necessarily have a yes / no answer and is not the most important consideration, because there are so many more other benefits on top. </p>
<p>Sure long-term it is faster and if you have everything in place, your next project will be finished in almost no time. Even short-term you might save a lot of time if you have done this kind of development before and know the traps. </p>
<p>And of course, just spitting out a DSL and using only that wouldn&#8217;t get you very far, you need to design a alot more. </p>
<p>I&#8217;m kind of amused that my post produced so many strong reactions as I just wanted to indicate that time-to-market (most important and quantifyable argument for the management) is not hitting the spot in many cases.</p>
<p>Anyways, nice to have this discussion guys.</p>
<p>(My first comment is still pending)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ed Merks</title>
		<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/comment-page-1/#comment-2575</link>
		<dc:creator>Ed Merks</dc:creator>
		<pubDate>Tue, 05 Aug 2008 18:11:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.peterfriese.de/?p=119#comment-2575</guid>
		<description>Peter,

Yet another excellent post.  I so disagree with Magnus&#039; conclusion even if speed were the most important consideration.  Likely I read too much into the conclusion, which I think is based on the premise that MDSD means &quot;design a DSL and use that&quot; whereas for me it also includes design an Ecore/UML/XML Schema model of your data and use that to help jump start your larger application.   Even in the DSL case, the flexibility of a DSL is likely to save time and money in the long term if not immediately in the short term.</description>
		<content:encoded><![CDATA[<p>Peter,</p>
<p>Yet another excellent post.  I so disagree with Magnus&#8217; conclusion even if speed were the most important consideration.  Likely I read too much into the conclusion, which I think is based on the premise that MDSD means &#8220;design a DSL and use that&#8221; whereas for me it also includes design an Ecore/UML/XML Schema model of your data and use that to help jump start your larger application.   Even in the DSL case, the flexibility of a DSL is likely to save time and money in the long term if not immediately in the short term.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ekke</title>
		<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/comment-page-1/#comment-2574</link>
		<dc:creator>ekke</dc:creator>
		<pubDate>Tue, 05 Aug 2008 16:35:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.peterfriese.de/?p=119#comment-2574</guid>
		<description>Hi Peter,
the business users will not only discuss - there are some parts of business work where they also USE the (graphical) editors,
in my case these parts are Business Processes and Business Rules:
Business users will enter Processes and Rules, Developers will enrich these models and generate different artifacts and code.

In the long sight, I think MDSD and DSLs will not only bring quality to your software, but also more time.

To start with MDSD / DSLs I know from my own experiences it needs much more time then traditional programming,
but so many times I later changed some decisions (new ideas, new tools, new frameworks, new technology,...) and then
the power of MDSD allows to do this: change some templates and generate :-)

I would never start a new project without using MDSD and DSLs (with all these good products like openArchitectureWare ;-)

ekke</description>
		<content:encoded><![CDATA[<p>Hi Peter,<br />
the business users will not only discuss &#8211; there are some parts of business work where they also USE the (graphical) editors,<br />
in my case these parts are Business Processes and Business Rules:<br />
Business users will enter Processes and Rules, Developers will enrich these models and generate different artifacts and code.</p>
<p>In the long sight, I think MDSD and DSLs will not only bring quality to your software, but also more time.</p>
<p>To start with MDSD / DSLs I know from my own experiences it needs much more time then traditional programming,<br />
but so many times I later changed some decisions (new ideas, new tools, new frameworks, new technology,&#8230;) and then<br />
the power of MDSD allows to do this: change some templates and generate <img src='http://www.peterfriese.de/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>I would never start a new project without using MDSD and DSLs (with all these good products like openArchitectureWare <img src='http://www.peterfriese.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>ekke</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Magnus Jungsbluth</title>
		<link>http://www.peterfriese.de/some-thoughts-on-the-merits-of-model-driven-software-development/comment-page-1/#comment-2573</link>
		<dc:creator>Magnus Jungsbluth</dc:creator>
		<pubDate>Tue, 05 Aug 2008 15:49:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.peterfriese.de/?p=119#comment-2573</guid>
		<description>First of all, thanks for tracking back to my article. I would like to comment on some of the points since I obviously didn&#039;t state them clear enough :). I have been using model driven techniques for several years now and I&#039;m an advocate of using these techniques, so most of my reasonings come from practical usage and are not prejudices.

1) I have not used the word &quot;complicated&quot; at all. The aim is of course to make it easier as a whole. And it is for the end-user of your DSL, if your whole toolchain and your metamodel is matured and almost bug-free. BUT the whole process is a lot more abstract, you have model transformations, several code-generation steps and debugging of those processes. My point was that to actually debug, extend and manage the whole process developers need to work differently. To change a specific part of generated code for example you cannot just change it, but must follow all the way up to where it originates. This requires re-thinking when introducing MDSD at the first time. 

2) I also do not believe in the fairy tale that business users will ever be able to &quot;write software&quot; or even should, besides maybe specifiying run-time rules with a specific language. I prefer textual DSLs too, but I am a developer. When working with clients who are used to graphical representations it is often useful to have a partial graphical representation that is synronized and shows a birds-eye view of the whole thing. In my experience you end up using multiple partial models for the same application to descripe the particular details of a part more concretely. Event trying a one:one mapping is pointless as you state. 

3) Versioning means a lot more and has a lot more potential than having a copy of you model in your version control repository: As soon as your system is in production you are able to track change on a semantic level since you&#039;re using a model. Not only in a diff between two textual representations of your model. What I refer to is for example the simplest of cases of adding a field to an entity. If your model supports semantic versioning you can do all sorts of things with this information, like generating the database migration scripts, automatically handling changed versions of an external (web-)service interface and so on. I have not seen this yet, but have been using it internally quite successfully. 

I can only fully agree with your conclusion and will extend my post on certain spots.</description>
		<content:encoded><![CDATA[<p>First of all, thanks for tracking back to my article. I would like to comment on some of the points since I obviously didn&#8217;t state them clear enough <img src='http://www.peterfriese.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . I have been using model driven techniques for several years now and I&#8217;m an advocate of using these techniques, so most of my reasonings come from practical usage and are not prejudices.</p>
<p>1) I have not used the word &#8220;complicated&#8221; at all. The aim is of course to make it easier as a whole. And it is for the end-user of your DSL, if your whole toolchain and your metamodel is matured and almost bug-free. BUT the whole process is a lot more abstract, you have model transformations, several code-generation steps and debugging of those processes. My point was that to actually debug, extend and manage the whole process developers need to work differently. To change a specific part of generated code for example you cannot just change it, but must follow all the way up to where it originates. This requires re-thinking when introducing MDSD at the first time. </p>
<p>2) I also do not believe in the fairy tale that business users will ever be able to &#8220;write software&#8221; or even should, besides maybe specifiying run-time rules with a specific language. I prefer textual DSLs too, but I am a developer. When working with clients who are used to graphical representations it is often useful to have a partial graphical representation that is synronized and shows a birds-eye view of the whole thing. In my experience you end up using multiple partial models for the same application to descripe the particular details of a part more concretely. Event trying a one:one mapping is pointless as you state. </p>
<p>3) Versioning means a lot more and has a lot more potential than having a copy of you model in your version control repository: As soon as your system is in production you are able to track change on a semantic level since you&#8217;re using a model. Not only in a diff between two textual representations of your model. What I refer to is for example the simplest of cases of adding a field to an entity. If your model supports semantic versioning you can do all sorts of things with this information, like generating the database migration scripts, automatically handling changed versions of an external (web-)service interface and so on. I have not seen this yet, but have been using it internally quite successfully. </p>
<p>I can only fully agree with your conclusion and will extend my post on certain spots.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

