This project is read-only.

SCSF Contrib Coding Guidelines

Contributors should check back to this page often as these guidelines will likely evolve based on customer input and team discussions.


All code in this project should live under the SCSFContrib namespace.
  • Extensions should live under the SCSFContrib.Extensions namespace under the appropriate subfolder.
    • UI agnostic CAB Extensions (i.e. custom Presenters, Controllers, Workitems) should live under SCSFContrib.Extensions.CAB
    • Windows forms CAB extensions (Smart Parts, Workspaces, UI Extensions) should live under SCSFContrib.Extensions.WinForms
    • WPF CAB extensions (Smart Parts, Workspaces, UI Extensions) should live under SCSFContrib.Extensions.WPF
  • Custom services should live under SCSFContrib.Services
  • Custom Guidance packages should live under SCSFContrib.GuidancePackages


SCSF Contrib projects should reference Microsoft signed copies of Enterprise Library and CAB assemblies for consistency. However it should be easy for consumers of the code to recompile against unsigned or custom signed copies of the assemblies.

Unit Tests

All contributed code should have high unit test coverage, and the unit tests should be checked into the appropriate place in the code tree.

Documentation and Samples

All submitted extensions should include basic documentation explaining the intended usage scenarios, the available configuration options (if applicable) and the API (if applicable). The documentation should be posted on this CodePlex site in the Documentation section. Samples or QuickStarts demonstrating the use of an extension can be checked into the Samples section of the source control if appropriate.

Last edited May 26, 2007 at 12:47 AM by gblock, version 8


No comments yet.