Monday, August 22, 2005 9:10 AM triplez

GAT Part 2 - Improvements needed from GAT

Guidance Automation is a wonderful idea, with great XML schemas and all. What is lacking is the tools for GAT itself, and tools to create a guidance package. Currently, it takes just as much time to create a guidance package as writing a guidance documentation or even more time, and it's really not worth the effort. But this is the wondeful thing about Software Factories. You can create a factory to create new factories. Here's what improvements should be done for GAT, and creating guidance packages.

  1. A more comprehensive guidance package solution to create a guidance package.
    1. A recipe is needed to create new solution templates from existing or skeleton projects.
    2. A recipe is needed to create new project templates from existing or skeleton projects.
  2. A DSL to easily create new recipes, actions, convertors, solution templates, code templates, etc, in a graphical form.
    1. A way to configure the XML templates, recipes, etc. easily, maybe using DSL properties.
  3. An easier way to write new actions, or more pre-made actions needs to be packaged together with GAT.
    1. Pre-made actions would include the common actions we already use within Visual Studio.
  4. A way to convert existing patterns/codes/schemas into a Guidance Package.
    1. This is much lacking and much needed in order for Software Factories Methodology to take off. The entire purpose of a factory is to create a factory out of an existing solution so as to reuse what you've already done in the previous project and easily punch out project skeletons and configurations. Right now it takes just as much time creating a factory as to creating an application. Who wants to take so much time just to "factory"-ize your application?
    2. Convert existing diagrams (DSL) into reuseable and reconfigurable systems templates. I think this is a must. When you've created a system diagrams (including your application diagrams and logical diagrams), you want to reuse this diagram to re-create another application based on this already created system. For Guidance Packaging, you should be able to take an exiting system, formalize it into a Guidance, automate the process of configuring the system BASED on the system diagram, and punch out your entire system WITH the guidance automation extension (GAX) functionalities

Those are some of the ideas I can come up with that GAT definitely needs to improve on. I think Software Factory is an emerging methodology, and it will take a lot of time for them to refactor their tools and come up with a more comprehensive and easier tools to create factories faster. Right now it takes just as much time to "factory"-ize your solution as to creating your solution. You must cut down this time issue, and ease of use in order for Software Factories to succeed.

My stand has always been - "With great methologies, ideas, frameworks, etc., you'll always need the tools to facilitate the ease of use to these new methologies, ideas, frameworks, etc."

Filed under: