First Service Factory v3 Community Drop

Okay, we're off and running now. Earlier today I posted the first of many community drops for Service Factory v3 - don't let "build 19" fool you - this is the first one. It took us longer than expected to get this one out the door, but we're all set now.

I suspect the first question you have is "What is so specially about this release?" Fair enough question. Well, probably the biggest thing is the addition of models. This alone accounts for most of the improvements over v2. I'm not going to go into too much detail here (there will be plenty of time for that later), but here are the high points:

  • Now Visual Studio has a memory about your decisions. In v2 you place your decisions in wizards. In addition to models, there are still wizards, but it's the model that "remembers" so you can generate code anytime you like.

  • Now you have a visualization of the application you are building. The designers provide this. Right now there are 2 designers/models. The first screen shot below shows the one for service contracts and the one after that shows data contracts.

  • Now you can delay the platform decision (WCF/ASMX/etc) and the language decision (C#/VB/etc) until as late as you like (way after you define all the service, message, and data interfaces.

  • With this version there is also no assumption that you have already define the service contract before you start using the factory. You can either approach the solution from a capability perspective (dropping operations on the service contract designer) or from a data perspective (dropping data contracts on its designer).

Here is what they look like (I added the thin red boxes):

Service Contract Designer

Data Contract Designer

I'm trying something new during this release by including a "start here" document and a "walkthrough" document for each drop. I'm hoping this will:

  • Save you lots of time in evaluating this drop.

  • Set your expectations around how much time you will need to evaluate the drops.

  • Provide you a very directed way to provide feedback about the drop.

  • Give you an easy way to see what the new features are every 2 weeks.

  • Let you know what the known issues are with each drop.

  • Get me more high quality feedback so I'll know we're building the best, most appropriate Service Factory we can for you.

So please use these docments and give me your thoughts about them.

You can expect new community drop every other Friday until the end of October (unless something really unexpected happens of course).

Download Service Factory v3 Community Drop 19 here

 Looking forward to your feedback ...

Comments (26)
  1. Kris says:

    I heard on one of the webcasts that the Data Layer and its recipes will not be enhanced any further but will be moved into another project by P&P. Can you confirm this?

    Also will there be any side effects if I install it on a machine already running V2.


  2. LockSmithDon says:

    I think you may have misunderstood. The data access guidance package is going to be enhanced and we future guidance with contain how to move the repositories forward, which has always been the plan. Future data access guidance will include new technologies like linq and entities.

    We ran several tests to ensure v3 will run side by side with v2. You shouldn’t have any issues installing or uninstalling.

  3. Вийшла нова версія Service Factory – Service Factory v3 Community Drop. Попередні факторії мали дуже

  4. Well, I am back after some holidays and it is nice to encounter some important developments happened.

  5. Benjy says:

    ooh.. this looks nice.. i can already visualise how this would look with Biztalk.. some of the operations and shapes here could represent orchestrations and the contracts represent the schemas and the interface could represent a WCF interface with the WCF adapter!! Will start playing with this as soon as possible… gotta go off on hols now…

    keep up the great work Don (and team)



  6. faf says:

    This designers looks very nice and should be powerful. I have downloaded latest drop as soon as saw them. After first using them the one thing the I can tell that creating soa based application can  be easier and a lot of a technical decisions can be moved until as they are needed not like now using WSSF at the beggining. Nice tool. I will send a feeback about my expierences.



  7. Manish Agrawal says:

    When I try to install the serviceContracts.msi or DataContracts.msi, I get the error Microsoft DSL tools redistributable is required. I donwloaded the MS dsl tools redistributable and tried installing it but get the error "Your system administrator has set a policy that prevents this tool from being installed." I am the admin on my machine and haven’t set any such policy explicitly. Any idea which policy is preventing this DSL tool redistributable from being installed?

  8. BrianB says:

    The new designers look awesome!

    I’ve just started looking at WSSF so if any of these features are already there just let me know.

    Regarding WCF, are there plans with v3 to:

    1. Specify different hosting options (IIS6 or WAS/IIS7).  This could even be a policy decision made by an architect, say to require the service be hosted in WAS.  So devs could only pick WAS as an option.

    2. Specify different binding/endpoint options other than http (based on hosting option).

    3. Indicate you want to use XMLSerializer when manually creating or decorating a type (making it a data contract) to make a property an XMLAttribute instead of an XMLElement or specify a date datatype instead of the datetime datatype.

    4. Regarding the translators and data access factories are there any future plans to integrate O/R mapping tools.  A thought is they could be implemented as providers – plugin your mapper of choice.

    Keep up the great work.



  9. LockSmithDon says:


    Be sure you have the VS 2005 SDK version 4.0. You can find it here: Also, be sure you have the other items in the system requirements too. These are listed in the StartHere.htm document. Hope this helps.


    1 & 2. The current plan of record is YES. Although if we have to cut hosting or binding options, at a minimum, we will make sure it is easy to create more with instructions on how to do so.

    3. We will provide the option to choose the serializer, but we don’t have plans to elevate the "element or attribute" decision to the model level. Yes, you will be able to choose the type.

    4. Today there are no plans to include data access guidance in v3 – mainly because data access is appropriate for many types of applications … not just services. Data access guidance will continue to be developed in p&p and is actually undergoing changes right now. You can expect more announcements about this in the near future. About translators, yes, we intend to include them, although we’re not yet sure how much different it will look over what v2 offers.

    As always, if you have feedback, I want to hear it. I can deduce some based on your questions, but feel free to be explicit if you deem it necessary 🙂

  10. BrianB says:

    Thanks, Don.  

    One other idea I had is to create a new recipe to create Data Contracts from existing Business Entities.  The scenerio is you have an existing business entity and now you want to publish it as a data contract for a new service.  

    Here’s what I was thinking.

    1. Select the ‘Create Data Contract from Business Entity’ recipe to launch a wizard.

    2. Select the business entity then click Next.

    3. Select the properties of the business entity you want to publish as a contract then click Next.

    3. A screen very similar to the ‘Create Data Contract’ recipe is shown with the Name, Type, Order prepopulated.  The Is Required column would have to be selected by the user and the user could choose to change the Name, Type, and Order as well.

    4. Click Next would launch the ‘Create Service Contract Translator’ recipe (or it may be possible to create the translator automatically).

    4. Click Finish and you are done.

    As far as how you might do this with the designer, maybe, while the Data Contract modeler is active, drag and drop a Business Entity from the Solution Explorer onto the design surface.  It automatically creates a data contract on the surface for you.  You would then make any adjustments to it to meet your needs.



  11. One of the things I’ve heard from people when I show them the Windows Communication Foundation (WCF)

  12. LockSmithDon says:

    Yeah Brian, that is a totally reasonable piece of functionality that many want available. I can tell you that is not in scope right now, but I promise if you build it, I’ll promote it with you 🙂  

    On Monday we will start our 6th iteration. Some of the new features we’ll be adding in this iteration is the ability to create service contract model elements from a WSDL doc and data contract elements from XSD docs.

    Also on Monday we’ll be dropping our first source code drop (it would have been today, but we hit a snag). That way you’ll be able to see how we did the import – it might help you see how to implement a "business entity importer"

  13. LockSmithDon says:

    Just wanted to let those interested know that you can see a little 12 minute video of me using this v3 community drop if you go here:

    … enjoy 🙂

  14. BrianB says:

    If I get some spare cycles, which are hard to come by these days, I’ll give it a go.

  15. Mike says:

    Don, Sweet video on v3!

    Your 12 Minutes saves me 6 hours, thanks…

  16. Vikram says:

    Video was very informative.

    Good work Don.

  17. BjornS says:

    Hi Don,

    this totally rocks! Finally we can design data contracts, service contracts etc. in a similar fashion to what we have done for a while now with classes. This will definitively help de-mystify web service design for the majority of OO programmers.

    Keep up the good work guys 🙂

  18. Hi Don.

    Very nice video! I’m trying it, however i can’t "publish" the service…how can i do that? to test my little service?

  19. LockSmithDon says:

    That’s a good question. The answer is you can’t … yet. Well, unless you want to write it yourself. We haven’t built the deployment designer yet – it will model hosts. That will come later. Hope this helps.

  20. LockSmithDon says:

    Rather than let the cat out of the bag here. I promise to finish publishing our scope and release plans here* this week. Sorry for not getting this published yet, but I really wanted to wait until we reached M0 first, which is in 2 days.


  21. David Cumps says:

    Is support for long running business processes still planned (Workflow Foundation)?

    Also, when you say "Data access guidance will continue to be developed in p&p", is there something available online where I could check this out, any link? I’m really interested in this approach for learning about patterns, and I currently am researching into LINQ anyway 🙂

  22. Since the Service Factory was released its first version, back in July 2006, a great deal of work has

  23. LockSmithDon says:

    David, I’ve just published the Service Factory v3 features and scope to the community site: This should answer your questions.

  24. Damir posted about a WCF designer, or rather that there is no WCF designer yet and it does not seem to

  25. Actualites says:

    Je n’apprendais que peu de choses à ceux qui auront assistés à la session animée par l’équipe DslFactory

  26. That’s the title of an article in e-week reporting on an interview with Soma . Thanks to Gareth and Pedro

Comments are closed.

Skip to main content