Who is using WCSF?

Topics: Web Client Software Factory, Project Management Forum, User Forum
Dec 3, 2008 at 6:49 PM
I blogged this question at Who is using WCSF?, and have created this post as a simple way to let folks share who is using WCSF, what size team they have using it, and how big of a project it is used for.  Of course, sharing this information is voluntary, but we would appreciate it.

Thanks in advance for sharing,
Michael Puleio -- patterns & practices 
http://blogs.msdn.com/mpuleio/
Dec 3, 2008 at 7:33 PM
We are using it on a medium big application. 400+ users. 100+ pages. Using webservices,MSMQ and Com+. Are 3-4 developers, with me as the lead developer and architect. Very complex buisnesslogic and to much of the logic lays in the database.

Today the application is only using 2 subwebsapplication and one main webapplication, but are on the move to migrate to 10+ subwebapplications.

Benny Thomas
Dec 3, 2008 at 8:16 PM
We converted from SCSF solution when the requirements changed to ask for a web-based solution.
The app will be running on 50 partially connected mobile stations (tablet PCs) + 1 intranet webserver w up to 50 users.
There are around 150 screens (ASPX and ASCX).
Currently utilizing Oct 2007 release (or prior): security and authorization, modularity and MVP aspect of the Factory. Business logic and DB layer are 100% separated from WCSF implementation and accessible via module and Shell service layers and not really applicable when we speak about WCSF.
Main benefit from using SCSF and then WCSF was the separation of the UI.
Main issue - DI for user controls is occurring too late and doesn't play well with AJAX (tab container with run-time added tabs... details are already a bit vague; we worked around the issue by rolling-back to pre Oct. 2007 CompositeWeb where we intercept the CompositeWeb app event and force DI on the UC creation instead of waiting for the pre-render or whatever event was used in the Oct 2007 refresh). I understand that switching to Feb 2008 release may solve this (does it?) but upgrading to Feb 2008 is out of the question due to infrastructure and PM constraints.

Dec 3, 2008 at 8:28 PM
Edited Dec 3, 2008 at 8:35 PM
I'm the development manager for the flagship service offering of a 8000+ employee international company in financial services industry.

We are using WCSF (Feb 2008) on a small UI portion of a large back-end system.  This project is a re-write of a 6 year old system.  There are about 15-20 admin pages and 5-10 external user pages used by a mix of about 70 banks and end users.  On this same project we employ Visual Studio 2008 Team Suite, Team Foundation Server 2008 with Lightweight Scrum Process Guidance Template, Visual Studio Testing, ASP.NET SQL Membership Provider, ASP.NET Role Provider, ASP.NET Profiles, SQL Server 2005, SSRS, SSIS, MSMQ, entity library test, driven development, scrum, continuous integration, paired programming, etc.  There are currently four contract developers on this project.

Jimmy Strube
Dec 3, 2008 at 10:34 PM
I've made an POC for an client of me, they were interested in this new framework but their current application was not ready for replacement.
I'm still using the objectcontainerdatasource in some other projects. If I use webforms I always use the MVP, IOC, etc pattern.

But I must sadly say I'm falling in love with the MVC framework from MS, no difficult postbacks/binding-throuble.
Dec 4, 2008 at 12:58 AM
We are using WCSF. I think it is a great framework.  You could access me via xuq@shinetechchina.com.
Dec 4, 2008 at 4:46 AM
We are in the process of developing a WCSF solution to replace our existing applications.  We currently maintain 4 separate asp.net website and find the modularity and design of the WCSF a huge advantage.  The new app will have 300+ users and is being developed by a team of 6.  The total number of pages for the site will be around 70.
Dec 4, 2008 at 6:52 AM
Edited Dec 4, 2008 at 11:47 AM
We tried using WCSF but abandoned the project. Everything looked good from the structure point of view but we could never get the performance that we required. After a few months of investigation I had to blow the whistle on the project when the developers had chased up every avenue of the investigation without success. The existing code and pages that we migrated to WCSF performed about 3 times slower for single user, and we could not accept this. We never tested with a 500 user system which is what we needed. My advice to any one starting a WCSF project is that they do a full performance evaluation early in the project and not assume that it can be fixed by some tweak after you have migrated your thousands of lines of code and hundreds of pages. Whether it was something special in our code, or general problem with WCSF I can not tell, but WCSF without question adds some overhead to the total solution when you split everything up into different projects. Discussing with some other people who had done WCSF project, they thought that 3 second page response time was ok. For us, going from 0,5 seconds to 1,5 seconds was unacceptable.
Dec 4, 2008 at 4:35 PM
Hey Michael,

I used WCSF for my last project with UK based client. I developed a intranet-based application for compliance team of Anti Money Laundering. I must agree and appreciate the hard work and commitment of the WCSF development team at patterns and practices. You guys have done fantastic job.

WCSF is great framework and I am very comfortable with using this framework. The best part is, we hit the very aggressive deadlines and that is possible only because of WCSF. Application is basically a generic wizard which walk you through the set of questions and based on answers selected, calculates the Risk. I worked on this with one of my colleague. We started learning this great framework after the couple of weeks of requirement gathering and very soon get the pace and we are so used to it that it became mechanical for us to create a view, model and presenter. I love the part where you can delegate the events to presenter. We used Visual Studio 2008 template (February 2008 release).

One thing I missed from this release is the State Machine Workflow engine, which I required for my wizard. Workflow engine was part of earlier releases but then excluded from February release. I tried to use the development version  of separated workflow engine, but again the setback was I wanted my wizard as popup which was not supported.

You should consider bringing back the workflow engine to WCSF and fix the popup issue on high priority. Also with the release of Silverlight 2 and ability to have xbap files, is more like WCSF where the complete presentation layer has been shifted to Silverlight based XAML.

Overall, excellent framework and I'll use the framework wherever possible. Honestly speaking, for my current assignment, I've been asked to use MVC beta, but I like WCSF more than any other.

Excellent work.

Regards
Shoeb
Dec 4, 2008 at 7:05 PM
Hey there!

Not using it right now... Have used it frequently. Also have contrib:ed to the project at WCSFContrib.

I want there to be a really good WCSF that is up to date and always being worked on. ASP.NET deserves really good best practices and an active community of developers that share (WCSFContrib) and evolve the art of making really good Web Applications!

It pretty much sucks that the project is silent and sad... ;~(

I understand how you guys, same as any other devs, want to move on to the new and fresh green field projects and that maintenance pretty much sucks, but the fact that your one and only ASP.NET Forms guidance project is silent is a very worrying sign. For better or for worse you guys at P&P are the role models of development on the .NET platform and if we don't see that you are exited about ASP.NET Forms development why should we be? Don't get me wrong there are heaps of great ASP.NET Forms applications out there but still... innovation and community feeling can only come from activation and right now there is pretty much none.

Is P&P obliged to continue working on all projects for all times... sorry but yes pretty much! If you quit we quit. Perhaps this sounds harsh? It sort of is. I'd just like to discuss this issue for a while, please!

That's my .02 € on the matter!

Cheers,

M.
Dec 5, 2008 at 9:18 PM
Hey! Michael,
I am using WCSF for all intranet applications for my client. Our dev team streangth is 7. There are 6 applications need to be migrated from classic ASP to .NET along with enhancements. Avg development efforts for all applications are approx. 3-6 months per application.

I am using .NET 2.0/VS2005/AJAX/C#/DB2 for all above application. In fact all applications are sharing common  application architecture. I am willing to use Page Flow Application Block for all these application. But not clear about any release for PageFlow application block for .NET 2.0.

All these applications are using provider model for authentication/authorization/profile management.

Thanks
Nilesh Trivedi
Dec 9, 2008 at 9:14 AM
Edited Dec 9, 2008 at 9:21 AM
 

Hi Michael,

 

I've just started my second major project using the WCSF 2.0. Our first started in the beginning of 2007 and is about to go into production. It consists of a web frontend using WCSF, a web service frontend using WSSF (I was one of the Expert Advisors for Don Smith), and a company-wide service-oriented backend, also using WSSF. Our Internet-facing frontend consisted of two business modules and about 40 pages and a bunch of presenter-enabled user controls. We've been using Visual Studio 2008, .NET 3.5, the AJAX Control Toolkit, Telerik RadControls and EntLib 4.0. All functionality was unit tested using Rhino Mocks as a mocking framework. I've compiled quite a list of best practices around the use of controllers, service agents, and unit tests that I still have to write down at some point. That project was executed by a team of 6 developers, including myself as the application architect and the team lead.

 

The second one will not be SOA-based, but will again include a rich domain model that will be persisted using NHibernate (with LINQ). It is a major redesign of an existing system consisting of about 75 reasonably complex pages and a lot of complex business rules. We will be executing this project  with a team of 8 developers (all having between 5-15 years of experience), using Visual Studio 2008, .NET 3.5, NHibernate 2.0 (with LINQ) , Enterprise Library 4.1 (particularly Policy Injection, Validation and Unity). Since development for the first release will continue until the end of 2009, we will definitely jump on the VSTS 2010 train as soon as the first beta appears. We have enough confidence and experience in the team to work around or compensate for any potential issues in a beta. Again, I'll play the role of application architect and team lead.

 

Dennis Doomen - Aviva Solutions Netherlands

http://blog.avivasolutions.nl/

http://www.dennisdoomen.net/

Dec 9, 2008 at 11:15 AM

Hi Michael,

We are using WCSF Framework on a relative small UI portion of a large back-end system. We plan to re-write the entire old legacy application using WCSF. Until now we use it with VS 2008 C#.NET 3.5 and Subsonic for "Data" but we plan to use also NHibernate for persistance. We working together 3 developers for now and we share the same opinion - great framework.

Thanks,

keep up the good work.

Nikos Kyriakoulakos


Dec 10, 2008 at 6:15 PM
Michael,

We are looking to use WCSF after a very successful project with SCSF.  We are a small non-profit with a small development staff and a small budget.  We want to use WCSF for a 600-user portal that will be accessed in 50 different countries.  The application will be primarily used for data entry and reports.

We really appreciate the Patterns and Practices team. You are real help to us little guys!

T. Sells
http://www.worldventure.com
Dec 11, 2008 at 9:04 PM
Michael and Team,

We are using WCSF for a number of our applications. The main application is a Patient Care Information system. This application won the MSDN Canada Code Awards 2007 prize for team development.  The application was migrated from a SharePoint solution to WCSF.  We currently have just over 3,000 users.  The scope of the project will be expanded to possibly to over 100K - 200K authorized users. The application provides medical professionals access to patient's medical data from many isolated systems. The data includes lab, diagnostic imaging (x-rays, MRI, etc), dictated reports and admit/discharge related data.  There are plans to include drug prescription information as well. Please note: this application is medical professional focused and does NOT give the public acccess to any data.

Our solution goes well beyond the use of a web application and WCSF. Some of the components that are part of the solution include:

As for the future of WCSF, I primarily desire to have Unity integrated so that I can properly utilize Unity and Enterprise Library 4.x.

Phil Bolduc
Vancouver, BC

Jan 7, 2009 at 3:55 PM
Keeping this thread alive.
Feb 3, 2009 at 3:44 PM
We are using the WCSF for our online payroll product.  We currently have over 3000 users.

We also use the SCSF (via a Citrix Farm of 15 servers), which is why we chose WCSF.  

Thanks P&P!

Aaron Olds
Feb 5, 2009 at 6:00 PM

we are starting to use WCSF to develop our inhouse dental practice information portal.

Probably around 100 users.

I'll update this thread when we have something solid in place.

It really gave us a head start though, many thanks.

 

Simon-john Roberts

IT Development Manager.

Feb 19, 2009 at 9:38 PM
We are using WCSF quite extensively. In fact there is a public web application running here http://www.gpsconnect.ca that is built entirely with WCSF.
We have some areas where we're not quite satisfied with WCSF but overall it works for us. We use WAP for VS2008 with sub-WAP for better deployment options.
The areas where we would like to see improvements are the following:
  • Site navigation. There is a custom SiteMap infrastructure that was aimed to provide a foundation for the site navigation but currently it barely solves its goal:
    • it's not configurable through the config files the same way as services;
    • its not easy localizable;
    • it does not support security context to a required degree;
    • it's tightly coupled with the Enterprise Library (why?).
  • Localization. Currently it's not defined how you can share the resources between a module and its web counterpart.
  • AJAX and other emerging client technologies support (there is a guidance package that provides some example but it's more of an outside than built-in support).
  • Unity support. There is always room for improving performance so it's obvious.
Aug 12, 2009 at 10:40 PM

In the light of ASP.NET MVC, what is going to happen to WCSF?

Aug 13, 2009 at 6:03 PM

Hi impaler7701, 

Blaine Wastell, p&p product manager, has shared the WCSF road map in this blog post. On the other hand, patterns and practices wants you to take the Web guidance survey, so you might be interested in completing the Web guidance survey to give them any feedback for next version. 

Hope it helps! 

Matias Bonaventura
http://blogs.southworks.net/matiasb

Aug 13, 2009 at 7:49 PM

Matias,

Thanks for the info. I reviewed the road map, however, I am still wondering what kind of impact ASP.NET MVC will make on adoption of WCSF. What is the stance of p&p team on ASP.NET MVC?

Jan 12, 2010 at 5:03 PM

hi

we are currently looking into WCSF, on the outlook it has everything we're looking for. we have 3 business streams of development teams each develop it's own system and we are looking for "something" to bring the systems together and get the 3 streams to work better together. if you like we are using WCSF to as a portal app to link the streams together. two things i am struggling to get resolve; mind you i've only been looking at WCSF for 2 days ..

1) Integrate with Federated binding. we have an in-house security framework which was built using WIF (aka Geneva) and WCSF application must be able to integrate with it. Has anyone experience on this?

2) Share data between modules. i like the easness of creating modules using WCSF and after 2 days of using it i already accustomed to the idea of module implementation for web application. i am struggling to find ways of shareing data between modules.

cheers

jyjoe

Jan 13, 2010 at 7:13 PM

1) Integrate with Federated binding. we have an in-house security framework which was built using WIF (aka Geneva) and WCSF application must be able to integrate with it. Has anyone experience on this?

We are using Federated Authentication and Authorization (WIF) in WCSF.  The only issues we had to address in our solution were:

  1. Ensure the rsa-sha256 algorithm was registered on Windows 2003 Server, see CryptographicException - Object identifier (OID) is unknown
  2. Replace the SessionSecurityTokenHandler with RSAEncryptedSessionSecurityTokenHandler which uses DPAPI by default.

public class RsaEncryptedSessionSecurityTokenHandler : SessionSecurityTokenHandler
{
    static List<CookieTransform> Transforms;

    static RsaEncryptedSessionSecurityTokenHandler()
    {
        X509Certificate2 serviceCertificate = CertificateUtil.GetCertificate( StoreName.My, StoreLocation.LocalMachine, "CN=localhost" );
        Transforms = new List<CookieTransform>() 
                        { 
                            new DeflateCookieTransform(), 
                            new RsaEncryptionCookieTransform( serviceCertificate )
                        };
    }

    public RsaEncryptedSessionSecurityTokenHandler()
        : base( Transforms.AsReadOnly() )
    {
    }
}


  <microsoft.identityModel>
    <service><securityTokenHandlers>
        <!-- Replace the SessionSecurityTokenHandler with RSAEncryptedSessionSecurityTokenHandler which uses DPAPI by default. -->
        <remove type="Microsoft.IdentityModel.Tokens.SessionSecurityTokenHandler, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
        <add type="RsaEncryptedSessionSecurityTokenHandler" />
      </securityTokenHandlers></service>
  </microsoft.identityModel>