Tag Archives: Technorati Tags

Industry Vertical Pre-Production Begins

I’ve decided to try my hand at webcasting. I’m in the stages of preparing a webcast series around using software factories, guidance automation and domain-specific languages called Industry Vertical. I’m planning on taking it slow starting out by providing some introductory material around what software factories are, their benefits and their life-cycle. Then I’ll take everyone step by step building out a software factory from the ground up. I’m hoping this will help everyone out there get started in industrializing software development.

 

So far, I’ve spent the last month getting my scripts together, creating graphics, setting up a new web site, purchasing audio equipment and I just found a great deal on a Sony HVR-A1 High Definition Camcorder, so once it arrives I’ll be ready to get down to business and start recording the first episode.

 

Hopefully, my busy work schedule will stay out of the way long enough to keep releases to a regular interval, but we’ll just have to wait and see what happens.

 

Don't call store.Dispose() if you didn't create it!

So, I’m happily plugging along, adding the ability to import a WSDL file into one of the DSLs for a new Software Factory we’re building at work. And after reading and re-reading the documentation and the DSL Book, I decide I need to call store.Dispose() in my code because I’m finished adding ModelElements to the model and I am leaving the command handler. You know, be neat and tidy when you exit a function dispose of any COM+ interfaces you’ve might have AddRef’d, etc.

 

So now I’m running the DSL and everything is working like it did before my single line of code, but now after adding the ModelElements to the model POOF! my model explodes! and I’ve lost everything in the model. I try it again a couple more times, kinda like pushing the car back up the hills to see if the brakes will fail for a second time after they did the first, you know typical programmer mentality and sure enough POOF! POOF! POOF! it keeps doing the same thing over and over.

 

So I trace through the code and notice that after I execute the store.Dispose() and exit the function, I get rerouted to the DocData class and it is trying to save the file and throws an Exception because the diagrams no longer exist.

 

So I go back and review my code and notice that I am not creating a new store and loading in the model, but I’m using the existing store that is opened by the DSL Editor and when I call store.Dispose(), I’m pulling the rug out from underneath me, the editor and Visual Studio as well.

 

So, I removed the single line of code that caused me an hour’s worth of grief and everything is working just hunky dory.

 

I guess it will always be engrained in my head, that unless I’m actually creating the store, I shouldn’t be disposing of it ,otherwise I’ll cause terrible things to happen.

 

Hopefully this will keep the rest of you from making the same mistake I did.

 

 

30 Days of Nothing but Tech

I’ve decided that there is so many new technologies coming out that I am going to spend the next 30 days watching and listening to nothing but technical podcasts and webcasts. I’m turning off the cable signal and hooking the PC to the 42 inch plasma screen in the living room and start making more productive use of my time. Instead of watching mindless reality TV shows filled with commercials every five minutes I’ll get up to speed on the latest coming out of Microsoft, Oracle and Sun. And instead of listening to commercial laden radio during my 45 minute commute to work or while tooling around the metroplex, I’ll hook up my Zune to an FM Transmitter and catch up on all of the podcasts that I never seem to get around to.

 

So stay tuned and I’ll let you know the gems that I uncover and keep you up to date on the Network TV withdrawal symptoms that might come up.

 

Technorati Tags: ,,

Adventures in Extending the Service Factory – Part 2

Here’s a handy tip when you are trying to learn how the components of the Service Factory works. I’ve found it very useful over the last couple of weeks.

 

Since the Service Factory now gets registered under the Visual Studio Experimental Hive you can configure the solution so you can debug it. If you are familiar with debugging DSLs, this should be nothing new. Just follow the steps below:

  1. 1. Set the Service Factory Guidance Package as the Start-Up Project by right-clicking on the project and selecting “Set as Start-Up Project”.
  2. 2. Change the Service Factory Guidance Package Project’s debug settings to launch Visual Studio under the Experimental Hive:
      1. a. Right click on the Service Factory Guidance Package Project and select “Properties”.
    1. b. Select the Debug Tab
    2. c. Configure the Start Action to Start External Program and C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\devenv.exe or where ever you have installed Visual Studio for the program.
    3. d. Set the Start Options, Command Line Arguments to /rootsuffix Exp

 

Now you can set breakpoints in the Service Factory code and press F5 to walk through the code in the debugger.