Archive for the ‘Patterns & Practices’ Category

VSIP Factory – A software factory for Visual Studio Extensibility

Wednesday, April 11, 2007 1 comment

The VSIP Factory is a software factory for creating Visual Studio Industry Partner (VSIP) packages, which is essentially a very powerful but often daunting way of extending Visual Studio. The purpose of this project is to provide an better authoring experience of VSIP packages and VSIP components.

You can find more information about the project as well as contribute towards it by visiting the following link:

Please contact Pablo Galiano ( if you are interested in helping out with this project.


Enterprise Library 3.0 – April 2007 Released

Monday, April 9, 2007 114 comments

The Enterprise Library application blocks help address the common problems that developers face from one project to the next. They are designed to encapsulate the Microsoft recommended best practices for .NET applications. In addition, they can be added to .NET applications quickly and easily. For example, the Data Access Application Block provides access to the most frequently used features of ADO.NET 2.0 in simple-to-use classes, thus boosting developer productivity. It also addresses scenarios not directly supported by the underlying class libraries

This release of Enterprise Library includes two new application blocks (the Validation Application Block and the Policy Injection Application Block), two guidance packages, and a configuration editor that is integrated with Visual Studio. There are also additions in functionality to the Data Access Application Block and to the Logging Application Block. The highlights of the new release include:

  • Validation Application Block. Allows you to centrally define validation rules using configuration or attributes, and easily validate data from anywhere in your application, including deep integration with Windows Forms, ASP.NET and WCF.       
  • Policy Injection Application Block. Provides an approach for separating cross-cutting concerns from business logic using declarative policies that are attached at runtime to methods on your objects. The block includes handlers that can call other Enterprise Library application blocks from policies, implementing functionality such as validation, authorization, exception handling, logging and caching. 
  • Application Block Software Factory. Dramatically simplifies the process of building application blocks and providers through the magic of guidance automation. 
  • Visual Studio-integrated Configuration Editor. Edit Enterprise Library configuration files directly within Visual Studio.
  • Environmental Overrides. Use the configuration tool to specify configuration settings that are common or different across multiple deployment environments, and merge this information into configuration files to be deployed with your applications.
  • WCF Integration. Easily integrate the Logging, Exception Handling and Validation Application Blocks into service interfaces built using Windows Communication Foundation.
  • Pre-compiled, strong-named binaries. No need to compile and strong name the code unless you want to manage and evolve the code yourself.

Enterprise Library 3.0 – April 2007 deliverable is available on MSDN at:

Categories: Patterns & Practices

Guidance Explorer Customer Satisfaction Survey Results

Thursday, August 10, 2006 Leave a comment

The Guidance Explorer Development Team had conducted the Guidance Explorer customer satisfaction survey, which was opened on 28th June 2006 and closed on 9th August 2006. You can see a summary of the results on the Channel9 Wiki.

If you just quickly go through the results the following user concerns are evident:

  • Need to improve the guidance library through additional content and content types.

  • Need to integrate with Visual Studio.

  • Need to improve the UI to make the tool easier to use and more intuitive.

  • Need to update the guidance library automatically.

As put up on the site the summary of the results is: “The majority of respondents were happy with Guidance Explorer but not ecstatic. The biggest issues holding the tool back from true user enthusiasm are lack of library content and lack of automatic updates to content. Most respondents recognize the potential and would like to see the tool and library complete so they can use it in their development environment.”

Categories: Patterns & Practices

Web Service Software Factory

Tuesday, August 8, 2006 1 comment

Microsoft has been talking about software factories for some time now, but now we see that they are indeed coming out with some really cool stuff on that front. As i would like to put it: “The factory is smoking”. I know its a bad line :). In one of my previous entry’s i had talked about Smart Client Software Factory. Recently Microsoft patterns and practices group has come out with the Web Service Software Factory. The Service Factory is the latest addition to the fast-growing crop of factories, including the Smart Client Software Factory and the Mobile Client Software Factory.

Using the Web Service Software Factory, developers and architects can build more consistent, higher quality distributed systems with less effort. The Service Factory is based upon a robust layered architecture and includes written and automated guidance that spans all layers of a service including the service interface, business logic and data access logic.

Tom Hollander has written a nice entry on Web Service Factory on his blog. Do read it. In order to download the service factory and read about the same visit the following link:

Download (Right now only C# version of the same is available, but you can expect the VB.Net version to come out soon)

Categories: Patterns & Practices

Why is it bad to have lots of logic in the UI layer?

Tuesday, August 8, 2006 1 comment

A common question isn’t it? I am sure that most of us are tired of answering this question time and again. What really happens is that when you have lots of logic in the UI layer; the code in the UI layer of an application becomes very difficult to test without either running the application manually or maintaining ugly UI runner scripts that automate the execution of UI components. While this is a big problem in itself, an even bigger problem is the reams of code that are duplicated between common views in an application. It can often be hard to see good candidates for refactoring when the logic to perform a specific business function is copied among different pieces in the UI layer. Reusability and Maintainability are the two major factors which force us to use a specific design pattern while developing an application.

Categories: Patterns & Practices

Writing Secure Code

Sunday, July 16, 2006 Leave a comment

One of the key things that developers can do to help secure their systems is to write code that can withstand attack and use security features properly. If you are one of those developers who are interested in understanding how to write secure code, i would suggest you go through the following MSDN article containing links to best practices and how-to articles on writing secure code.

Article – Writing Secure Code

Categories: Patterns & Practices

Microsoft Threat Analysis & Modeling v2.0

Sunday, July 16, 2006 1 comment

Microsoft Threat Analysis & Modeling tool allows non-security subject matter experts to enter already known information including business requirements and application architecture which is then used to produce a feature-rich threat model. Along with automatically identifying threats, the tool can produce valuable security artifacts such as:

– Data access control matrix
– Component access control matrix
– Subject-object matrix
– Data Flow
– Call Flow
– Trust Flow
– Attack Surface
– Focused reports


Categories: Patterns & Practices