Getting Started

Web Service Software Factory v3 Community Drop (build 27)

16 April 2007

  • You have a real job and don't have an infinite amount of time to evaluate this drop.
  • You are interested in influencing the direction of Service Factory v3.
  • You are interested in monitoring the progress of Service Factory v3.
  • The Service Factory team respects your time and doesn't want to waste it.
  • We intend to be transparent about the status and scope of the project.
  • We are committed to ensure Service Factory will meet your needs.

With that in mind, we have created these set of documents. They are here to help YOU save time while you evalute and provide feedback about this drop. If this is not useful, please let me know. Because putting all of this together is definitely an investment in time and energy that I could be doing something else that is potentially more useful. Thanks.


Goals of this drop
System requirements
Installation instructions
Uninstallation instructions
List of new things you can do
Walkthrough of using this drop
What will go in the next drop

Goals of this drop

The goal of this drop is just to give you access to the source code of the factory. There are many benefits of us giving it to you. The explicit reason we want you to have the code is because we KNOW you will make changes to the factory. I want you to tell me WHAT you want to change. I don't want to know so I can make the change for you necessarily (although I might :), but I DO want to make it EASY for you to make your changes.

System requirements

Installation instructions

 Known Issue:
 If you already have a DSL installed that uses *.servicecontract or *.datacontract as the file extensions for its
 models, installing either #1 or #2 below will overwrite your existing DSL. We don't suspect this will impact
 [m]any people, but we thought it would be safe to mention it before you install. This is a known issue with the
 DSL toolkit installers.

After ensuring the machine meets the system requirements above (install them in the order they appear), following these steps:

 While these installation steps may seem tedious (and yes, we will be streamlining them in future drops) you can be
 assured that you will be introduced to a number of concepts all factory authors are (or should be) familiar with.

 Please follow these steps exactly. It's not difficult, but it is a bit fragile at this point. When you get to the
 end, if things don't work, just reset your experimental hive and try again. Also be sure you have all of the system
 requirements installed before beginning these steps.

  • Uninstall the last v3 community drop (build 19). Use the Control Panel Add/Remove Programs utility to remove:
    • "Web Service Software Factory: Community Drop 1"
    • "Web Service Software Factory: Data Contract Model"
    • "Web Service Software Factory: Service Contract Model"
  • Reset the experimental hive (under Start -> Programs -> Visual Studio 2005 SDK -> 2007.02 -> Tools)

 The experimental hive is a part of the registry - provided by the VS SDK - that is designated to test
 Visual Studio extensions (like DSLs) without the danger of corrupting the main registry hive that Visual
 Studio uses (the instace of VS you use everyday). During testing, a different instance of Visual Studio
 (we'll call it the experimental instancee of VS) is used and it only operates on the experimental hive.
 See for more information.

 This step ensures you start from a clean slate. If you have been doing other work with the DSL toolkit
 in the experimental hive, this will erase the registrations of those components.

  • Install the ServiceFactorySource-v3b27.msi into a short path name (i.e. C:\Projects\WssfV3Src)
    • If you are using the Profession edition of Visual Studio 2005, deselect the VSTS tests since you won't be able to open them.
    • On the last step, check the box to open the target folder.
  • Create a strong name key, called ProductKey.snk, and get its public key token
    • Copy the CreateProductKey.bat file from where you extracted the ZIP file into the source folder.
    • Open a Visual Studio command prompt and navigate to the folder where you installed the source (C:\Projects\WssfV3Src)
    • Run the CreateProductKey.bat file
    • Copy this public key token (16 characters) to your clipboard
  • Open a normal (non-experimental) instance of Visual Studio 2005
    • If you are using Windows Vista, you must open VS using Administrator rights.
    • Do not open the Service Factory Guidance package.sln file in it - just open Visual Studio for now
  • Find and replace ALL files in the source folder (including subfolders) and replace ##CustomPublicKeyToken## with the public key token on your clipboard.
This is how your dialog should look
  • You should find/replace 15 occurances.
  • If you did not install the VSTS tests, you will only find/replace 14 occurances.

 In future builds, we'll try to automate the creation of the strong name key and apply the new 
 token to the solution for you.

  • Open the Service Factory Guidance package.sln file from your souce installation folder using the already-opened instance of Visual Studio.
  • Attach the Clarius Software Factory Toolkit guidance package to the solution. To do this:
    • On the Tools menu, select "Guidance Package Manager"
    • Select the "Enable/Disable Packages ..." button
    • Check the "Clarius MetaFactory" and choose OK
    • Select the Close button on the Guidance Package Manager dialog
  • Rebuild the entire solution.
    • To do so, right-click on the solution and choose "Rebuild Solution"
  • Right-click on the "Service Factory Guidance Package" project and select "Register Guidance Package"
    • Be sure to register in the "Regular & Experimental" hive
  • This drop has now been installed. The important thing to remember is anytime you wish to create Service Factory v3 solution, you must do so with an experimental instance of Visual Studio. If you try it using the normal instance of VS, it will fail with errors - as it should.

 We have tested this drop in a side-by-side installation with the December release of Service Factory and did not
 encounter any problems before or after we uninstalled this drop. You should be okay if you already have v2 installed.

Uninstallation instructions

Be sure to accomplish these steps in order
  1. Open the source solution in a normal instance of Visual Studio
  2. Unregister the Service Factory Guidance Package (right-click on the project and choose "Unregister Guidance Package")
  3. Reset the Visual Studio 2005 experimental hive.
  4. Using Windows Explorer (or a command prompt), delete the folder you installed the source into.

List of new things you can do

The only new thing you can do in this drop is look at the source code. We're in the process of trying to put together documentation for the source, and instructions for how to make certain changes to the factory, but we will have to release it in future drops or on the community site. In terms of functionality this drop is just like the previous drop. All future drops will be more like this one (source code based) unlike the first one.

Walkthrough of using this drop

This walkthrough is a relatively simple exercise that will give you the opportunity to see everything this drop offers without you having to rely on your own devices to find everything. We've also included a little rationale for why we did things the way we did, what is not finished yet, and what we know will change, and what we'd like your input on. We did this so we can minimize the time you have to spend with it while also giving you a very explicit way of providing your feedback. Before you get started, please open this text questionaire - you can quickly fill it out while you're cruising through the walkthrough. Okay, now you can complete the walkthrough.

What will go in the next drop

Well, it might not go in the very next one, but definitely in a future one :)
  • Project mapping: instead of having to generate all of the code in a single project
  • Model validatation: not all of the model validation will be finished, but more than what is in there now, which is none ;)
  • The ability to create a service contract model from a WSDL document.
  • The ability to create a data contract model from XSD documents.

Last edited Apr 19, 2007 at 11:07 PM by donsmith, version 9


No comments yet.