<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0" 
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

  <channel>
    <title>iQgen</title>
    <link>http://www.innoq.com/iqgen/</link>
    <description></description>
    <dc:language>en-us</dc:language>
    <dc:creator>info@innoq.com</dc:creator>
    <dc:rights>Copyright 2007</dc:rights>
    <dc:date>
2006-02-02T22:30:40+01:002005-10-15T11:56:02+01:002004-10-19T16:08:29+01:002004-09-10T18:18:39+00:002004-06-17T12:32:42+01:002004-05-18T23:43:38+01:002004-05-11T23:04:03+01:002004-05-07T22:24:10+01:002004-04-21T10:26:01+00:002004-02-08T00:47:03+01:002004-01-13T20:29:47+01:002003-10-19T23:17:35+01:002003-09-29T12:53:07+01:002003-07-01T19:01:45+01:00</dc:date>
    <admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=3.31" />
    <admin:errorReportsTo rdf:resource="mailto:info@innoq.org"/>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>

    <item>
      <title>MDA Confusion</title>
      <link>http://www.innoq.com/blog/st/2006/02/02/mda_confusion.html</link>
      <description>Ah, not that again. I don&amp;#8217;t know whether it&amp;#8217;s really worth fighting that battle anymore, but there is a fourth camp in the MDA space: Those who simply apply it to existing projects, without waiting for academic long-term benefits, while realizing a significant ROI in the first project and within the first few months. If you want to find out...</description>
      <guid isPermaLink="false">1995@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>Ah, <a href="http://loekb.blogspot.com/2006/02/will-real-mda-please-stand-up.html">not that again</a>. I don&#8217;t know whether it&#8217;s really worth fighting that battle anymore, but there is <a href="http://blogs.msdn.com/stevecook/archive/2004/10/27/248322.aspx">a fourth camp</a> in the MDA space: Those who simply apply it to existing projects, without waiting for academic long-term benefits, while realizing a significant ROI in the <em>first</em> project and <em>within the first few months</em>.</p>

<p>If you want to find out more, check out <a href="http://www.innoq.com/blog/st/2003/07/01/mda_from_a_developers_perspective.html">this old entry</a> or check out <a href="http://www.innoq.com/iqgen/help-r2.1.0/basic-html/ch03.html">the design considerations section</a> of our product&#8217;s documentation.</p>
]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2006-02-02T22:30:40+01:00</dc:date>
    </item>
    <item>
      <title>DSM and UML</title>
      <link>http://www.innoq.com/blog/st/2005/10/15/dsm_and_uml.html</link>
      <description>One of the (very few) sessions I attended at JAOO was the one recommend to me by Steven Kelly: Juha-Pekka Tolvanen from MetaCase introduced Domain Specific Modeling based on some case studies where MetaCase&amp;#8217;s tooling is used. It was a good presentation; I found myself nodding in agreement most of the time. One of the things I disagreed with, though,...</description>
      <guid isPermaLink="false">1754@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>One of the (very few) sessions I attended at JAOO was the one recommend to me by <a href="http://www.innoq.com/blog/st/2005/08/25/conference_schedule.html#c5510">Steven Kelly</a>: Juha-Pekka Tolvanen from MetaCase introduced Domain Specific Modeling based on some case studies where <a href="http://www.metacase.com/">MetaCase</a>&#8217;s tooling is used. It was a good presentation; I found myself nodding in agreement most of the time.</p>

<p>One of the things I disagreed with, though, was the predictable UML bashing. Interestingly, Juha-Pekka used one of the arguments I use all of the time as well, only with a slightly different pitch: We agree that when you use UML to visualize low-level language constructs, for example create a UML class diagram containing all of your low-level technical J2EE artifacts, there&#8217;s little benefit and nothing domain-specific. You essentially provide a different view on your source code, at exactly the same level of abstraction. </p>

<p>The difference is that &#8212; at least in his talk &#8212; Juha-Pekka&#8217;s generalized this to UML in general, while I use this to criticize tools such as Together. We use UML in a number of projects in a way very, very similar to the way DSM is used in his examples. I&#8217;m the first to admit that UML is far from perfect, and I concede that using a &#8220;real&#8221; DSM approach such as MetaCase&#8217;s may often be superior to the poor man&#8217;s DSL available in UML (UML profiles). The benefit, of course, is the increased level of interoperability, both when communicating with humans as well as when exchanging information between tools.</p>

<p>In any case, it was funny to see that the MDA track at JAOO drew very little attention while the DSL track was packed, when in fact the presentations&#8217; contents were very similar. It seems that MDA has now entered a massive anti-hype cycle.   </p>
]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2005-10-15T11:56:02+01:00</dc:date>
    </item>
    <item>
      <title>iQgen 2.1 on Mac OS X</title>
      <link>http://www.innoq.com/blog/st/2004/10/19/iqgen_21_on_mac_os_x.html</link>
      <description>We&amp;#8217;ve released a new version of our software generation tool, iQgen, with a couple of improvements. Most notably, its Eclipse support has been upgraded to 3.0; this was definitely the most requested feature. For the sole reason that I was sick of looking at a semi-cool UI on my platform of choice, we also now have a Mac OS X...</description>
      <guid isPermaLink="false">1194@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>We&#8217;ve <a href="http://www.innoq.com/iqgen/001192.html">released</a> a new version of our software generation tool, <a href="http://www.innoq.com/iqgen/">iQgen</a>, with a couple of improvements. Most notably, its Eclipse support has been upgraded to 3.0; this was definitely the most requested feature. For the sole reason that I was sick of looking at a semi-cool UI on my platform of choice, we also now have a Mac OS X version. This means that the menu bar is where it makes sense (at the top of the screen), the look and feel is Aqua, Preferences, About box and Help are where you&#8217;ll expect them to be, everything is packaged as a Mac OS X application package &#8230; all in all, supporting this was trivially easy to do. I did most of the work based on <a href="http://developer.apple.com/technotes/tn/tn2042.html">these instructions</a>; the only thing a little tricky was figuring out how to bundle the application with Ant. In the end, though, the building of a new product release (which is done on Win2K or WinXP boxes) now builds the Mac OS X installer as well.  </p>

<p>(iQgen, in case you&#8217;re wondering, reads in model information in XMI format, and transforms it into output files based on templates that have been written as JSPs. It is very, very stable, works with almost any CASE tool in the market, and has command line, Ant, Swing and Eclipse interfaces. Essentially, it does only a small amount of things, but our aim has been to make it do those things extremely well. You can find more information <a href="http://www.innoq.com/iqgen/">here</a>.)</p>
]]></content:encoded>
      <dc:subject>Apple and Mac OS X</dc:subject>
      <dc:date>2004-10-19T16:08:29+01:00</dc:date>
    </item>
    <item>
      <title>Personal iQgen Extension</title>
      <link>http://www.innoq.com/blog/pg/archives/001137.html</link>
      <description>Today I&apos;ve done some experiments that I envision for quite some time. Applying Model Driven Architecture or a simple model-based generative approach to real world projects forces you to follow strict processes in order to ensure that your development steps stay repeatable. While in early stages of development the forward engineering approach is extremely powerful, it becomes somewhat inappropriate when going to latter phases of projects. The temptation to abandon the generative approach and do all changes in the code increases. (For more information of forward engineering you could consider this short introductory part of the iQgen doc.) The reason for that is a shift of scope in the development activities. While the common approach follows a push model (commonly model changes are pushed into code through generators), it would be more appreciated to use a pull model (that is, &quot;update code fragments x, y, z from model with current transformation-rules&quot;). In order to move into that direction I&apos;ve extended iQgen a little bit to track metadata according to transformations and their execution. With this it&apos;s possible to query dependencies between model elements of various abstraction levels (PSM / PIM), code and iQgen templates. The following picture shows a part of iQgen&apos;s GUI with the (first) simple dialogs which can be invoked on model elements or generated files in order to query the thing I&apos;ve called Transformation Repository. As you can see it&apos;s very beta. But the infrastructure would allow to execute subsets of transformations. For the ease of model driven development in latter stages it&apos;s now possible to start generation directly from the code point-of-view. I wonder if this is considered useful or even necessary and appreciate any feedback....</description>
      <guid isPermaLink="false">1137@http://www.innoq.com/blog/pg/</guid>
      <content:encoded><![CDATA[<p>Today I've done some experiments that I envision for quite some time. </p>

<p>Applying Model Driven Architecture or a simple model-based generative approach to real world projects forces you to follow strict processes in order to ensure that your development steps stay repeatable.</p>

<p>While in early stages of development the <a href="http://computing-dictionary.thefreedictionary.com/forward%20engineering">forward engineering</a> approach is extremely powerful, it becomes somewhat inappropriate when going to latter phases of projects. The temptation to abandon the generative approach and do all changes in the code increases. (For more information of forward engineering you could consider <a href="http://www.innoq.com/iqgen/help-r2.0.0/basic-html/ch03s05.html"> this short introductory part of the iQgen doc</a>.)</p>

<p>The reason for that is a shift of scope in the development activities. While the common approach follows a push model (commonly model changes are pushed into code through generators), it would be more appreciated to use a pull model (that is, "update code fragments x, y, z from model with current transformation-rules").</p>

<p>In order to move into that direction I've extended <a href="http://www.innoq.com/iqgen">iQgen</a> a little bit to track metadata according to transformations and their execution. </p>

<p>With this it's possible to query dependencies between model elements of various abstraction levels (PSM / PIM), code and iQgen templates. </p>

<p>The following picture shows a part of iQgen's GUI with the (first) simple dialogs which can be invoked on model elements or generated files in order to query the thing I've called Transformation Repository.</p>

<p><img alt="iQgen-Screenshot.PNG" src="http://www.innoq.com/blog/pg/archives/images/iQgen-Screenshot.PNG" width="833" height="600" /></p>

<p>As you can see it's very beta. But the infrastructure would allow to execute subsets of transformations. For the ease of model driven development in latter stages it's now possible to start generation directly from the code point-of-view. </p>

<p>I wonder if this is considered useful or even necessary and appreciate any feedback. </p>]]></content:encoded>
      <dc:subject>MDA</dc:subject>
      <dc:date>2004-09-10T18:18:39+00:00</dc:date>
    </item>
    <item>
      <title>Integration Services with Existing Architectural Concepts</title>
      <link>http://www.innoq.com/blog/st/2004/06/17/integration_services_with_existing_architectural_concepts.html</link>
      <description>I have to whole-heartedly agree with Jeff Schneider: While SOA and Web services and REST are all exciting, they don&amp;#8217;t exist on their own. My personal interest is to find ways to combine MDA (whether UML-based or not) and SOA (whether REST-based or not) &amp;#8212; leading to a metadata-driven, efficient process for designing, creating and managing services as IT assets....</description>
      <guid isPermaLink="false">994@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>I have to whole-heartedly agree with <a href="http://schneider.blogspot.com/archives/2004_06_13_schneider_archive.html#108746746780394289">Jeff Schneider</a>: While SOA and Web services and REST are all exciting, they don&#8217;t exist on their own. My personal interest is to find ways to combine MDA (whether UML-based or not) and SOA (whether REST-based or not) &#8212; leading to a metadata-driven, efficient process for designing, creating and managing services as IT assets. </p>
]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2004-06-17T12:32:42+01:00</dc:date>
    </item>
    <item>
      <title>UML 2.0</title>
      <link>http://www.innoq.com/blog/st/2004/05/18/uml_20.html</link>
      <description>Jim Steel on UML 2.0: I pity any UML tool vendor who takes it upon themselves to implement UML 2. I have read more coherent binaries than the UML 2 specification, which seems to have been inspired by the &amp;#8220;Choose Your Own Adventure&amp;#8221; books that I read as a child, but 10 times as long, and split across multiple books....</description>
      <guid isPermaLink="false">926@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p><a href="http://thebootstrap.blogspot.com/2004/05/uml2-gripes.html">Jim Steel</a> on UML 2.0: </p>

<blockquote>
  <p>I pity any UML tool vendor who takes it upon themselves to implement UML 2. I have read more coherent binaries than the UML 2 specification, which seems to have been inspired by the &#8220;Choose Your Own Adventure&#8221; books that I read as a child, but 10 times as long, and split across multiple books. It was cool when I was 7, but now its just a bloody nuisance.</p>
</blockquote>

<p>I couldn&#8217;t agree more. When <a href="/blog/pg">Phillip</a> explained the <code>&lt;&lt;combine&gt;&gt;</code> concept to me, I wasn&#8217;t sure whether my problem was that I was simply too dumb to grasp it, or too wary to be bothered with something like that. I don&#8217;t claim to understand UML inside and out, as I have not wasted years of my life wrestling with its internal structure; but given that convincing people about MDA is one of the things I do for a living, I believe I know more about it than the average user. If I don&#8217;t get this, how can the authors expect somebody who just wants to use UML, but whose core competence is in some business aspect, to be able to use it?</p>
]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2004-05-18T23:43:38+01:00</dc:date>
    </item>
    <item>
      <title>the bootstrap -- MDA Blog</title>
      <link>http://www.innoq.com/blog/st/2004/05/11/the_bootstrap_mda_blog.html</link>
      <description>I came across Jim Steel&apos;s blog in one of my ego-centric Technorati searches -- great blog, lots of things to agree and disagree with. Subscribed ......</description>
      <guid isPermaLink="false">909@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>I came across <a href="http://thebootstrap.blogspot.com/">Jim Steel's blog</a> in one of my ego-centric Technorati searches -- great blog, lots of things to agree and disagree with. Subscribed ...</p>
]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2004-05-11T23:04:03+01:00</dc:date>
    </item>
    <item>
      <title>New Features in EJB 3</title>
      <link>http://www.innoq.com/blog/st/2004/05/07/new_features_in_ejb_3.html</link>
      <description>Gavin King, maintainer of Hibernate and member of the EJB 3.0 Expert Group, writes about some of EJB 3.0&amp;#8217;s designated features. Sounds reasonable to me, and shows that isolating your business domain information from technical implementations still is a good idea....</description>
      <guid isPermaLink="false">898@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p><a href="http://blog.hibernate.org">Gavin King</a>, maintainer of Hibernate and member of the EJB 3.0 Expert Group, <a href="http://blog.hibernate.org/cgi-bin/blosxom.cgi/2004/05/07#ejb3">writes about</a> some of EJB 3.0&#8217;s designated features. Sounds reasonable to me, and shows that isolating your business domain information from technical implementations <a href="/blog/st/2003/07/mda_from_a_developers_perspective.html">still is a good idea</a>.</p>
]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2004-05-07T22:24:10+01:00</dc:date>
    </item>
    <item>
      <title>State Machines with Enterprise Architect and iQgen</title>
      <link>http://www.innoq.com/blog/pg/archives/000857.html</link>
      <description>This little sample was developed just as an sample to show iQgen&apos;s capabilities with behavioral models. I used iQgen 2.0 for this, but it might be running with other versions as well. The model was created with a trial version of Enterprise Architect 4.0 - a highly recommended CASE tool. Although there are some constraints in modelling state machines with EA in order to generate from theese with iQgen, this sample might be a good starting point. All you have to do is to download and extract the zip-file, read the Readme.txt, and then just start generating and see the result. If you want to play around with other CASE tools, the state machines might be exported in a different way. Maybe I&apos;m able to show the usage of other diagram types near soon....</description>
      <guid isPermaLink="false">857@http://www.innoq.com/blog/pg/</guid>
      <content:encoded><![CDATA[<p>This <a href="http://www.innoq.com/blog/pg/archives/smTest.zip">little sample</a> was developed just as an sample to show iQgen's capabilities with behavioral models. I used iQgen 2.0 for this, but it might be running with other versions as well.</p>

<p>The model was created with a trial version of <a href="http://www.sparxsystems.com.au/">Enterprise Architect 4.0</a> - a highly recommended CASE tool. Although there are some constraints in modelling state machines with EA in order to generate from theese with iQgen, this sample might be a good starting point.</p>

<p>All you have to do is to <a href="http://www.innoq.com/blog/pg/archives/smTest.zip">download and extract the zip-file</a>, read the Readme.txt, and then just start generating and see the result. If you want to play around with other CASE tools, the state machines might be exported in a different way. </p>

<p>Maybe I'm able to show the usage of other diagram types near soon.</p>]]></content:encoded>
      <dc:subject>iqgen</dc:subject>
      <dc:date>2004-04-21T10:26:01+00:00</dc:date>
    </item>
    <item>
      <title>Platform Independent Models, Platform Dependent Models, and Code Generation</title>
      <link>http://www.innoq.com/blog/st/2004/02/08/platform_independent_models_platform_dependent_models_and_code_generation.html</link>
      <description>I got into a very interesting discussion a few days ago: Where exactly can you find a PIM and a PSM in both in the MDA vision as such as well as in existing tools such as iQgen. My view on this issue is: In MDA: A Platform Independent Model (PIM) is the starting point. The PIM is turned into...</description>
      <guid isPermaLink="false">597@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>I got into a very interesting discussion a few days ago: Where exactly can you find a PIM and a PSM in both in the MDA vision as such as well as in existing tools such as <a href="http://www.innoq.com/iqgen">iQgen</a>. My view on this issue is:</p>

<p>In MDA:</p>

<ul>
<li>A Platform Independent Model (PIM) is the starting point.</li>
<li>The PIM is turned into a Platform Specific Model (PSM) by means of a transformation. This can be done either manually or automatically.</li>
<li>The PSM can be transformed again, yielding an even more platform specific model - other words, a new PSM, targeting another platform.</li>
<li>The final PSM is turned into code.</li>
</ul>

<p>In &#8220;Pragmatic MDA&#8221; or &#8220;MDA light&#8221; or &#8220;MDA as it exists today&#8221; &#8230;</p>

<ul>
<li>A Platform Independent Model (PIM) is the starting point, although it might be called a PSM with some justification (as it will usually contain at least information to target an &#8220;abstract&#8221; platform)</li>
<li>The PIM is turned into code by means of an automatic transformation.</li>
</ul>

<p>So is there a PSM in the second approach? If so, where?</p>

<p>In my opinion, the PSM, if you insist on finding it, is the code itself. How can the code be a model? A model, in general, is a simulation of some concept or aspect from a specific point of view, intended to enable reasoning about it for a particular purpose. If I take the resulting code in the second approach from above, I can look at it in an IDE, the purpose being to edit in its textual form. If I read the same code into a 1:1 CASE tool such as Together, I see a visual rendering; the purpose of which might be to manipulate it visually or explain it to somebody else. </p>
]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2004-02-08T00:47:03+01:00</dc:date>
    </item>
    <item>
      <title>A detailed description of the MDA code generation process with iQgen</title>
      <link>http://www.innoq.com/blog/st/2004/01/13/a_detailed_description_of_the_mda_code_generation_process_with_iqgen.html</link>
      <description> This is an illustration of the code generation process when using iQgen. I uploaded it here because I wanted to point to it from an email I sent, so I might as well spend some time describing it in more detail: First of all, you have a technical model. It&amp;#8217;s technical, and not a pure business model, since it...</description>
      <guid isPermaLink="false">518@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p><img  src="http://www.innoq.com/blog/st/images/generation.jpg" height="464" width="473" alt="Overview of the generation process" /><br />
This is an illustration of the code generation process when using <a href="http://www.innoq.com/iqgen">iQgen</a>. I uploaded it here because I wanted to point to it from an email I sent, so I might as well spend some time describing it in more detail:</p>

<ul>
<li>First of all, you have a technical model. It&#8217;s technical, and not a pure business model, since it describes your business domain annotated (by means of UML stereotypes and tagged values) with information about the technical <em>nature</em> of your model elements. You might, for instance, have some UML classes that represent entities (in the most abstract sense), and others that represent processes.</li>
<li>The set of stereotypes and tagged values that are allowed when you (manually) refine your business model into a technical model define a <em>UML profile</em>. This UML profile, together with the UML itself, form the <em>metamodel</em> of your model. Thus, your technical model conforms to the UML profile. The UML profile itself is (in the case of iQgen) completely open to be extended in any way that makes sense for your requirements.</li>
<li>There is a set of templates that contain rules for code generation. These templates match the UML profile, and expect the model to conform to it. In the example given above, you might have one or more templates that are used for entities, others for processes, and some for both. Depending on your target platform and frameworks, the templates contain code skeletons and rules that are specific to this target environment. Thus, they match the technical platform (in this case - and this is only an example) - J2EE.</li>
<li>Based on the technical model as its input (which is represented by one or more XMI files) and the templates, the code generator emits source code. If code is being generated for the second or nth time, which is usually the case, the existing source code becomes input to the generator. This way, manually added code is available to be merged into the newly generated code.</li>
<li>Finally, the usual compile/build cycle is applied to turn your code into a running system.</li>
</ul>
]]></content:encoded>
      <dc:subject></dc:subject>
      <dc:date>2004-01-13T20:29:47+01:00</dc:date>
    </item>
    <item>
      <title>MDA and Offshore Development</title>
      <link>http://www.innoq.com/blog/st/2003/10/19/mda_and_offshore_development.html</link>
      <description>While I&apos;m in a blogging mood, I might as well finally write about something I found quite interesting: A long term customer of ours who has been using MDA for quite some time, was recently more or less forced to outsource part of its development work to an offshore IT shop. The approach they have taken is quite interesting. Their...</description>
      <guid isPermaLink="false">364@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>While I'm in a blogging mood, I might as well finally write about something I found quite interesting: A long term customer of ours who has been using <a href="http://www.omg.org/mda">MDA</a> for quite some time, was recently more or less forced to outsource part of its development work to an offshore IT shop. The approach they have taken is quite interesting.</p>
<p>Their development infrastructure relies heavily on modeling, in their case using <a href="http://www.mid.de/en/innovator/business">Innovator</a>, a modeling tool very popular here in Germany. Innovator is very powerful, but also pretty complex. In addition to this, they use our product, <a href="http://www.innoq.com/iqgen">iQgen</a>, with a huge set of custom templates that drive the code generation. While they have achieved a high degree of automation &mdash; they can generate close to 100% of their backend code in most cases &mdash; it's not an environment that is well known, nor is it easy to learn in a short time.</p>
<p>So the problem was: How does one address this in the context of offshore development? Should they train the offshore developers in the usage of the toolset?<p>
<p>My recommendation was different: Continue to do the <em>modeling</em> on site, and ship the generated skeleton code to the offshore IT shop. This has the major advantage of agreeing on a specification that is as close to code as you can get, because it <em>is</em> code. In case you're wondering what the offshore IT developers have to do then, it's about implementing those parts of the code that cannot (or rather: are not) generated, which in this case includes the Swing client UI and those business logic elements that don't lend themselves to be modeled in UML easily.</p>
<p>The customer has taken this approach and exercised it for 3-4 months now, and it seems to work very well.</p>]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2003-10-19T23:17:35+01:00</dc:date>
    </item>
    <item>
      <title>I got interviewed</title>
      <link>http://www.innoq.com/blog/st/2003/09/29/i_got_interviewed.html</link>
      <description>Jack Herrington has put up an interview with me about iQgen on his excellent Code Generation Network....</description>
      <guid isPermaLink="false">318@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>Jack Herrington has put up an <a href="http://www.codegeneration.net/tiki-read_article.php?articleId=26" title="Code Generation Network">interview</a> with me about <a href="http://www.innoq.com/iqgen">iQgen</a> on his excellent <a href="http://www.codegeneration.net">Code Generation Network</a>.</p>]]></content:encoded>
      <dc:subject></dc:subject>
      <dc:date>2003-09-29T12:53:07+01:00</dc:date>
    </item>
    <item>
      <title>MDA from a Developer&apos;s Perspective</title>
      <link>http://www.innoq.com/blog/st/2003/07/01/mda_from_a_developers_perspective.html</link>
      <description>Back in December, I wrote an article for TSS, trying to introduce concepts from OMG&apos;s Model Driven Architecture (MDA) to developers. I&apos;m reproducing it here (with some minor editorial corrections), with the goal of elaborating on some of the things in more detail, as well as addressing some of the comments posted in the the TSS discussion, as well as...</description>
      <guid isPermaLink="false">177@http://www.innoq.com/blog/st/</guid>
      <content:encoded><![CDATA[<p>Back in December, I wrote an article for <a href="http://www.theserverside.com">TSS</a>, trying to introduce concepts from OMG's Model Driven Architecture (MDA) to developers. I'm reproducing it here (with some minor editorial corrections), with the goal of elaborating on some of the things in more detail, as well as addressing some of the comments posted in the <a href="http://www.theserverside.com/home/thread.jsp?thread_id=17053">the TSS discussion</a>, as well as in other places around the web. 
</p>]]></content:encoded>
      <dc:subject>Model Driven Engineering</dc:subject>
      <dc:date>2003-07-01T19:01:45+01:00</dc:date>
    </item>


  </channel>
</rss>