views:

865

answers:

4

Has anyone had any experience in building a 'real world' application with the Smart Client Software Factory, from Microsofts Patterns and Practices group? I'm looking for advice on how difficult it was to master, whether it decreased your time to market and any other general pitfalls.

+5  A: 

I don't have personal experience, so favor the advice of someone that does over mine. I know two coworkers that have used this factory and both had the same take-way:

  1. It hurt to set up and learn
  2. It was worth it in the end

So if you have up-front time to spare, I'd go for it.

Brad Tutterow
+1  A: 

We use the Web Service Software Factory, and we really like it because it makes it easier for developers to follow standards and appropriate patterns. The learning curve for us wasn't bad - a few hours per developer at most.

Other than that, there aren't any other pros & cons worth mentioning.

Esteban Araya
+9  A: 

We used SCSF for a real world app with about 10 developers. It was a steep learning curve to set up and develop a pattern of usage, but once it was set up, introducing new developers to the project was VERY easy. Using CAB and SCSF was very beneficial to our project especially getting each developer up to speed and productive.

A downfall of SCSF is that it provides ALOT of functionality that may not be used (we probably only used 60% of the functionality).

I am also using SCSF for a new project and am considering refactoring to PRISM. PRISM allows you to cull the functionality that is not used. If you use WPF, I suggest looking into PRISM.

Torrey
I can double that, especially the learning curve and the easy usage after the initial setup. We do now 3 different Applications that share some common modules and are very pleased of that modularity.
Marcel
+1  A: 

We used SCSF for a real world composite app with 6 developers; the full team size was 14, including BAs, PMs, testers, etc. Like Torrey said, it was a steep learning curve for the 3 developers that didn't have OO or design patterns experience. Myself and two others had been OO-purists for years; so we took to CAB like ducks to water just by recognizing the patterns. Part-way through the project, we put together a one-week training course on OO principles and then design patterns. Once the other 3 went through this course, the productivity started to increase immediately.

My advice, make sure your team has sound OO and Design Patterns knowledge. The curve drops off when they can see patterns that they recognize.

Travis Heseman