Recently I visited fellow Microsoft Integration MVP Nino Crudele in Italy and met with some of his fellow BizTalk colleagues. I am amazed by work Nino and his fellow country man put in for the (local) community and their customers. The same dedicated I see in my own country. One of them is Eldert Grootenboer. Today’s story is about him.
Eldert is 30 years old, and lives in Rijen in Brabant, together with his wife Angelique. Both being big fans of rock and metal, they try to regularly visit concerts and festivals in their free time. Another metal music fan like myself and from the beautiful province Brabant.
Besides enjoying the wonderful world of heavy metal Eldert likes to get his hands dirty on new technologies, both in the integration world, like Azure BizTalk Services, as well as in general .NET.
“Also, having grown up on a ship, I still like to spend time on ships, and also do some work for a shipping company in my spare time, ranging from building computers to programming custom software.Whenever I come find a solution or work with something on which there isn't much information yet, I will go and write a post about it on my blog, which I hope helps others in their efforts as well.”
Eldert has been working with BizTalk for almost 3 years now, and has been programming for about 6 years, mostly in .NET, although he also has done some work with micro-controllers and FPGA's. He currently works at Motion10 as a Microsoft integrations consultant, focused mostly on BizTalk development.
“I think of BizTalk as a very interesting product to work with, especially because you are not just learning your own product, but you also learn a lot of the products you are interfacing with. The possibilities of BizTalk are just really amazing, and now with Azure BizTalk Services, even more cool scenarios have opened up, where I especially see a bright future for hybrid applications with both on premise and cloud components.”
Finally, Eldert wants to thank me for this opportunity to be introduced into the BizTalk Community through these series, and for all the work I and others do for the BizTalk community.
“I would like to thank the community, I think the BizTalk community really does a great job on sharing knowledge, helping each other out, and just being a great community overall.”
I would like to thank Eldert for his time and contributions to the community.
Cheers,
Steef-Jan
Azure Thoughts, EAI Challenges
Microsoft Integration Technology on-premise and Windows Azure.
Tuesday, June 18, 2013
Wednesday, June 05, 2013
BizTalk PaaS: Windows Azure BizTalk Services – Part II
Last year in December 2012 during the BizTalk Summit we first as a preview saw the progress Microsoft BizTalk Product Team made on the BizTalk Services. Now it is here as preview for the general audience. Fellow Microsoft Integration MVP’s Kent Weare (Introducing Windows Azure BizTalk Services Preview –Part 1, Part 2) and Richard Seroter (Walkthrough of New Windows Azure BizTalk Services) shared there views and experiences with BizTalk Services. Now I will share you mine.
My previous post was about setting up BizTalk Services and the post made by Sam VanHoutte proved to be very useful. In this post I like to delve into building a BizTalk Service project that is going to expose some data from a SQL Server database. I have build a BizTalk solution that recieves messages from runners participating a half marathon race from a Windows Azure Service Bus Topic called race.
Messages are send from an application or device.
The Messages are send to topic race.
Messages are picked up from each subscription by BizTalk.
The recieved messages are stored in a SQL Server database.
Now the BizTalk Service solution will expose that data to a runner showing him\her the end results of his\her race.
The BizTalk Service solution template is present in Visual Studio 2012. To create a BizTalk Service solution you will need that template.
Now to develop your solution you will need to go through a series of steps depending on what kind of solution you want to build. In my case I like to create a XMLRequest/Reply Bridge that connects to a SQL Server database on-premise. To expose the data I need to create and configure a LOB Target (SQL in this scenario).
Creation and configuration of the SQL Target is guided by a Wizard. The Wizard will guide you through the process.
First step is specifying the connection parameters. You need to specify the details for the SQL Server to connect to and the credentials to use for the connection.
Second step is specifying the Operations. Here you can expand the objects within SQL Server. I expanded Tables, and then Table and selected the Select Operation. The Select operation is now be listed under the selected categories section.
Third step is specifying the security type for SQL target. The security type determines how the client message is authenticated with the LOB Target.
Fourth step is specifying the deployment of Relay endpoint. You can choose between an existing LOB Relay or create a new LOB Relay
Finally a summary will be shown before you can execute the creation of the SQL Target.

When you click create a the LOB Target is created in Server Explorer.It is created as an application in IIS and uses the runtime for a specific LOB Target, in this case SQL.
To use the LOB Target you will have to update the BizTalk Service URL. Right click in the BizTalk Service project design surface, select properties and update the BizTalk Service URL property to include your BizTalk Services name.
Next set the security for the relay endpoint. Right-click the relay endpoint in Server Explorer and select Properties. In the Properties grid, click the ellipsis (…) against the Runtime Security property. In the Edit Security dialog box, select Fixed Windows Credentials and specify username and password to connect to the SQL Server. Then Click Ok.
Now you can drag and drop the LOB Target onto the design surface. Note that the Entity Name property of the LOB Target is defaulted to runner_times.
Another thing you need to do is open the .config file for the LOB target, which typically has the naming convention as YourRelayPath_target-sub-path.config. Specify the Service Bus issuer name and issuer secret,
After changes the config can be saved. The next step is to add the schemas for Select Operation.
Now I have my SQL LOB Target created and configured. Next I create a map. This map will map the request (runner number, see schema below) to select request for database table (RegisteredTimes).
Now the mapping is pretty straight forward. The BizTalk Service mapper is not the same as the mapper you use with BizTalk projects. The mao I created is the only map I will use in the bridge.
For my solution I will use a RequestReply bridge, so I drag a XML Request-Reply Bridge from toolbox to the designer.Next I drop the LOB Target on the designer. Then I click on the connector in toolbox and configure a connector between XML Request-Reply Bridge and the LOB Target.
By clicking on the XMLRequestReplyBridge you can configure the bridge. You will see a kind of pipeline flow or itinerary with Message Validation, Enrich, Transformation and Enrich (VETE) kinda activities. Here you add the request and response schemas to the Message Type box.
Next you can select map in one or both Transform activity.
In case you validation functions you add them in XML Validate activity or enrich functions you can add in Enrich activity. My Bridge configuration looks like below:
Now after configuring the XMLRequestReplyBridge I need to configure the filter condition on the connector between the bridge and the LOB Relay entity.
In my case I am not going to restrict any messages from continuing to my LOB target so I selected Match All. I do have to set a Route action so that the outgoing message to the LOB application has a SOAP action header.

Note: Do not forget the singel qoutes between the expression!
For the expression you can open Server Explorer and navigate to the LOB Target that you created. Right click the LOB Target and click Properties. Under Operations tab, copy the value of the operation.
Now my solution is ready to be build and deployed. I right click my project and select Deploy. A Window will pop up asking for the Acs Namespace for the BizTalk Services, Issuer Name, and Shared Secret.
I click Deploy and solution will be deployed. The Visual Studio Output pane displays the deployment progress and result. The URL where the bridge is deployed is also displayed in the Output pane.
There are quite a few steps involved for building a Service Bus solution. Even for this one it took me some time to build. To test the solution you will need to download the MessageSender tool from Windows Azure BizTalk Services Samples. Once you downloaded the tool, you unpack, open it in Visual Studio and build the project. You can now use the resulting MessageSender command line executable to send messages to the deployed bridge end points. This tool accepts command line parameter, and the sequence and usage of those parameters is given below:
MessageSender.exe <ACSNamespace> <IssuerName> <IssuerKey> <RuntimeAddress> <MessageFilepath> <ContentType>
Below you can see the command I executed with the tool:
Now as you see the data belonging to me with race number 1265 is returned. So far so good and I encourage you to try this new technology out. It looks promising. In upcoming posts I will dive into some of the aspects of the BizTalk Services.
Cheers,
Steef-Jan
My previous post was about setting up BizTalk Services and the post made by Sam VanHoutte proved to be very useful. In this post I like to delve into building a BizTalk Service project that is going to expose some data from a SQL Server database. I have build a BizTalk solution that recieves messages from runners participating a half marathon race from a Windows Azure Service Bus Topic called race.
Messages are send from an application or device.
The Messages are send to topic race.
Messages are picked up from each subscription by BizTalk.
The recieved messages are stored in a SQL Server database.
Now the BizTalk Service solution will expose that data to a runner showing him\her the end results of his\her race.
The BizTalk Service solution template is present in Visual Studio 2012. To create a BizTalk Service solution you will need that template.
Now to develop your solution you will need to go through a series of steps depending on what kind of solution you want to build. In my case I like to create a XMLRequest/Reply Bridge that connects to a SQL Server database on-premise. To expose the data I need to create and configure a LOB Target (SQL in this scenario).
Creation and configuration of the SQL Target is guided by a Wizard. The Wizard will guide you through the process.
First step is specifying the connection parameters. You need to specify the details for the SQL Server to connect to and the credentials to use for the connection.
Second step is specifying the Operations. Here you can expand the objects within SQL Server. I expanded Tables, and then Table and selected the Select Operation. The Select operation is now be listed under the selected categories section.
Third step is specifying the security type for SQL target. The security type determines how the client message is authenticated with the LOB Target.
Fourth step is specifying the deployment of Relay endpoint. You can choose between an existing LOB Relay or create a new LOB Relay
Finally a summary will be shown before you can execute the creation of the SQL Target.
When you click create a the LOB Target is created in Server Explorer.It is created as an application in IIS and uses the runtime for a specific LOB Target, in this case SQL.
To use the LOB Target you will have to update the BizTalk Service URL. Right click in the BizTalk Service project design surface, select properties and update the BizTalk Service URL property to include your BizTalk Services name.
Next set the security for the relay endpoint. Right-click the relay endpoint in Server Explorer and select Properties. In the Properties grid, click the ellipsis (…) against the Runtime Security property. In the Edit Security dialog box, select Fixed Windows Credentials and specify username and password to connect to the SQL Server. Then Click Ok.
Now you can drag and drop the LOB Target onto the design surface. Note that the Entity Name property of the LOB Target is defaulted to runner_times.
Another thing you need to do is open the .config file for the LOB target, which typically has the naming convention as YourRelayPath_target-sub-path.config. Specify the Service Bus issuer name and issuer secret,
After changes the config can be saved. The next step is to add the schemas for Select Operation.
Now I have my SQL LOB Target created and configured. Next I create a map. This map will map the request (runner number, see schema below) to select request for database table (RegisteredTimes).
Now the mapping is pretty straight forward. The BizTalk Service mapper is not the same as the mapper you use with BizTalk projects. The mao I created is the only map I will use in the bridge.
For my solution I will use a RequestReply bridge, so I drag a XML Request-Reply Bridge from toolbox to the designer.Next I drop the LOB Target on the designer. Then I click on the connector in toolbox and configure a connector between XML Request-Reply Bridge and the LOB Target.
By clicking on the XMLRequestReplyBridge you can configure the bridge. You will see a kind of pipeline flow or itinerary with Message Validation, Enrich, Transformation and Enrich (VETE) kinda activities. Here you add the request and response schemas to the Message Type box.
Next you can select map in one or both Transform activity.
In case you validation functions you add them in XML Validate activity or enrich functions you can add in Enrich activity. My Bridge configuration looks like below:
Now after configuring the XMLRequestReplyBridge I need to configure the filter condition on the connector between the bridge and the LOB Relay entity.
In my case I am not going to restrict any messages from continuing to my LOB target so I selected Match All. I do have to set a Route action so that the outgoing message to the LOB application has a SOAP action header.
Note: Do not forget the singel qoutes between the expression!
For the expression you can open Server Explorer and navigate to the LOB Target that you created. Right click the LOB Target and click Properties. Under Operations tab, copy the value of the operation.
Now my solution is ready to be build and deployed. I right click my project and select Deploy. A Window will pop up asking for the Acs Namespace for the BizTalk Services, Issuer Name, and Shared Secret.
I click Deploy and solution will be deployed. The Visual Studio Output pane displays the deployment progress and result. The URL where the bridge is deployed is also displayed in the Output pane.
There are quite a few steps involved for building a Service Bus solution. Even for this one it took me some time to build. To test the solution you will need to download the MessageSender tool from Windows Azure BizTalk Services Samples. Once you downloaded the tool, you unpack, open it in Visual Studio and build the project. You can now use the resulting MessageSender command line executable to send messages to the deployed bridge end points. This tool accepts command line parameter, and the sequence and usage of those parameters is given below:
MessageSender.exe <ACSNamespace> <IssuerName> <IssuerKey> <RuntimeAddress> <MessageFilepath> <ContentType>
Below you can see the command I executed with the tool:
Now as you see the data belonging to me with race number 1265 is returned. So far so good and I encourage you to try this new technology out. It looks promising. In upcoming posts I will dive into some of the aspects of the BizTalk Services.
Cheers,
Steef-Jan
Monday, June 03, 2013
BizTalk PaaS: Windows Azure BizTalk Services – Part I Set-Up
Today Scott Guthrie announced a number of great enhancements to Windows Azure. One of these is of interest to us integration professionals: BizTalk Services. A new service in the Windows Azure Platform that enables EDI and EAI integration in the cloud. Now many of you might know or is familiar with previous Windows Azure EAI/EDI labs, which can be considered as a Beta or preview of this new service.
In this post and a follow up I like to walk you through the creation of a BizTalk Service (Set up) and use case scenario that leverages the BizTalk Services. I was inspired and guided by the post of Sam VanHoutte, Codit Belgium.
In case you have an azure account then you can go to the preview features: https://account.windowsazure.com/PreviewFeatures and try it out.
The scenario or use case I am going to use is about providing secure access to a database that contains running data. Let’s say 30.000 people run a half marathon race. Every 5K there is a mark that registers the runner's time. So there’s a mark at 5, 10, 15, 20K and the finish. Each registered time is sent as a message to a topic called race that has subscriptions for each mark. A BizTalk application will pull of the messages from each subscription in a controlled manner and store the data in a database. The BizTalk Service I will create will provide secure access to the data.
The BizTalk Service can be created in the Windows Azure Portal. When you click Create a New BizTalk Service a Window will pop up. This pop-up windows is a kind of a wizard that will guide you through the creation of the service.
In the first tab (Specify Your BizTalk Service settings) you can specify the name of the service, and domain URL will be generated for you. You can specify the edition. If you are in the testing/development phase, choose Developer. If you are in the production phase, use the matrix to determine if Enterprise, Standard, or Basic is the correct choice for your business scenario.
Based on the region you live you can choose the closest data center, yet you can select any geographic region to host your BizTalk Service. You also specify for tracking purposes a SQL Database (to store the tables used by your BizTalk Service). You choose between using an existing SQL Database instance or to create a new SQL Database instance. Finally you choose between the Azure subscription accounts you might have.
The second tab is for specification of the database settings. Some of the fields depend on the option you selected in the SQL database choice in the first tab. A new SQL Database instance results in screen as seen below. The database name is provisioned for you, a server (SQL Azure) can be selected and Server Login Name is displayed (one you use for your SQL Azure database server). In case you check configure advanced settings an extra tab will appear enabling you to specify so more characteristic of your database.
The third tab you can specify the Access Control and Monitor settings. You can specify the access control namespace. In case you create one or more namespace you can choose between them. Beside namespace you specify the issuer name and key belonging to the chosen namespace. It is important that the namespace is created through Active Directory tab. I used a namespace (BTUGNLD) from my Service Bus service first and that failed. What you below is wrong!
To get the user and password settings, you need to click on the Manage button in the Access Control Namespace section of the Active Directory module in the Azure portal. This will direct you to the ‘old’ ACS management portal (Silverlight) where you can get your user. This can be done by selecting the ‘Management Service’ link on the left. Then subsequently either use the existing Management Client service account or create a new one. Next click the service account you want to use and then click the Password link. To get the password, you can click the Show Password button.
With user name ManagementClient and correct password I configured the service. Finally you specify your storage account.
In the final tab you have to enter a SSL certificate. So browse to your private SSL certificate (CertificateName.pfx) that includes your BizTalk Service name, enter the password and click the complete check mark. For purposes of this post I create a self-signed certificate in my BizTalk Server 2013 VM by use of makecert.exe.
Makecert -pe -r -n "CN=<yourservicename>.biztalk.windows.net" -e "01/01/2015" -ss my
In my case:
Makecert -pe -r -n "CN=btugnld.biztalk.windows.net" -e "01/01/2015" -ss my
After performing makecert action with the given parameters you can export your PFX from your certificate store and upload it.
The Certificate Store can be accessed by mmc, see How to: View Certificates with the MMC Snap-in and Export a Certificate.
Update: The CN name has to service name e.g. name of you BizTalk Service in case you provide a different name you may run into some trust issues, when you try to deploy your bridge for instance! So btugnld namespace in MakeCert should have been runningtimes:
Makecert -pe -r -n "CN=runningtimes.biztalk.windows.net" -e "01/01/2015" -ss my
Now you have to wait for service to provisioned for you.

Now you are almost there. You need to register your service in the BizTalk management portal, which is a Silverlight portal that will be there during the preview. By clicking on the Manage button you will be taken to the Silverlight portal.
On this portal, you have will have to specify three settings:
Now you are all set.
For development of your Windows Azure BizTalk Service you will need to download the SDK:
In case you to start creating BizTalk Services applications, install BizTalk Services SDK (See Installing the Windows Azure BizTalk Services SDK - June 2013 Preview)
In my scenario I also like to extend the reach of my BizTalk Services applications to on-premises LOB applications like SQL Server, SAP, etc, so I had to also install BizTalk Adapter Service (again see Installing the Windows Azure BizTalk Services SDK - June 2013 Preview).
Note: The Windows Server AppFabric has to be installed!
In next post (part II) I will discuss the BizTalk Service solution I have created to extend the reach of the database containing the runner data (registered times).
Also do not miss out any of the TechEd US BizTalk topics (streamed through channel 9 soon):
Steef-Jan
In this post and a follow up I like to walk you through the creation of a BizTalk Service (Set up) and use case scenario that leverages the BizTalk Services. I was inspired and guided by the post of Sam VanHoutte, Codit Belgium.
In case you have an azure account then you can go to the preview features: https://account.windowsazure.com/PreviewFeatures and try it out.
The scenario or use case I am going to use is about providing secure access to a database that contains running data. Let’s say 30.000 people run a half marathon race. Every 5K there is a mark that registers the runner's time. So there’s a mark at 5, 10, 15, 20K and the finish. Each registered time is sent as a message to a topic called race that has subscriptions for each mark. A BizTalk application will pull of the messages from each subscription in a controlled manner and store the data in a database. The BizTalk Service I will create will provide secure access to the data.
The BizTalk Service can be created in the Windows Azure Portal. When you click Create a New BizTalk Service a Window will pop up. This pop-up windows is a kind of a wizard that will guide you through the creation of the service.
In the first tab (Specify Your BizTalk Service settings) you can specify the name of the service, and domain URL will be generated for you. You can specify the edition. If you are in the testing/development phase, choose Developer. If you are in the production phase, use the matrix to determine if Enterprise, Standard, or Basic is the correct choice for your business scenario.
Based on the region you live you can choose the closest data center, yet you can select any geographic region to host your BizTalk Service. You also specify for tracking purposes a SQL Database (to store the tables used by your BizTalk Service). You choose between using an existing SQL Database instance or to create a new SQL Database instance. Finally you choose between the Azure subscription accounts you might have.
The second tab is for specification of the database settings. Some of the fields depend on the option you selected in the SQL database choice in the first tab. A new SQL Database instance results in screen as seen below. The database name is provisioned for you, a server (SQL Azure) can be selected and Server Login Name is displayed (one you use for your SQL Azure database server). In case you check configure advanced settings an extra tab will appear enabling you to specify so more characteristic of your database.
The third tab you can specify the Access Control and Monitor settings. You can specify the access control namespace. In case you create one or more namespace you can choose between them. Beside namespace you specify the issuer name and key belonging to the chosen namespace. It is important that the namespace is created through Active Directory tab. I used a namespace (BTUGNLD) from my Service Bus service first and that failed. What you below is wrong!
To get the user and password settings, you need to click on the Manage button in the Access Control Namespace section of the Active Directory module in the Azure portal. This will direct you to the ‘old’ ACS management portal (Silverlight) where you can get your user. This can be done by selecting the ‘Management Service’ link on the left. Then subsequently either use the existing Management Client service account or create a new one. Next click the service account you want to use and then click the Password link. To get the password, you can click the Show Password button.
With user name ManagementClient and correct password I configured the service. Finally you specify your storage account.
In the final tab you have to enter a SSL certificate. So browse to your private SSL certificate (CertificateName.pfx) that includes your BizTalk Service name, enter the password and click the complete check mark. For purposes of this post I create a self-signed certificate in my BizTalk Server 2013 VM by use of makecert.exe.
Makecert -pe -r -n "CN=<yourservicename>.biztalk.windows.net" -e "01/01/2015" -ss my
In my case:
Makecert -pe -r -n "CN=btugnld.biztalk.windows.net" -e "01/01/2015" -ss my
After performing makecert action with the given parameters you can export your PFX from your certificate store and upload it.
The Certificate Store can be accessed by mmc, see How to: View Certificates with the MMC Snap-in and Export a Certificate.
Update: The CN name has to service name e.g. name of you BizTalk Service in case you provide a different name you may run into some trust issues, when you try to deploy your bridge for instance! So btugnld namespace in MakeCert should have been runningtimes:
Makecert -pe -r -n "CN=runningtimes.biztalk.windows.net" -e "01/01/2015" -ss my
Now you have to wait for service to provisioned for you.
Now you are almost there. You need to register your service in the BizTalk management portal, which is a Silverlight portal that will be there during the preview. By clicking on the Manage button you will be taken to the Silverlight portal.
On this portal, you have will have to specify three settings:
- BizTalk Service: the name of the BizTalk Service you specified in the first step
- Issuer name: the name of an ACS user that belongs to your ACS namepsace
- Issuer secret: the shared secret key of that user
Now you are all set.
For development of your Windows Azure BizTalk Service you will need to download the SDK:
- BizTalk Adapter Service x64
- BizTalk Adapter Service x86
- BTMMigrationTool (this is to migrate BizTalk mappings to the new mapper)
- MicrosoftEdiXsdTemplates (all X12/EDI schemas)
- WindowsAzureBizTalkServices SDK
In case you to start creating BizTalk Services applications, install BizTalk Services SDK (See Installing the Windows Azure BizTalk Services SDK - June 2013 Preview)
In my scenario I also like to extend the reach of my BizTalk Services applications to on-premises LOB applications like SQL Server, SAP, etc, so I had to also install BizTalk Adapter Service (again see Installing the Windows Azure BizTalk Services SDK - June 2013 Preview).
Note: The Windows Server AppFabric has to be installed!
In next post (part II) I will discuss the BizTalk Service solution I have created to extend the reach of the database containing the runner data (registered times).
Also do not miss out any of the TechEd US BizTalk topics (streamed through channel 9 soon):
- Introduction to Windows Azure BizTalk Services
- Microsoft Integration Vision and Roadmap
- Microsoft BizTalk Server 2013 in Windows Azure IaaS
- B2B Collaboration on Windows Azure
- Extending Windows Azure BizTalk Services
- Introducing Microsoft BizTalk Server 2013
- Developing Hybrid Solutions with Microsoft BizTalk Server 2013 and Windows Azure
Steef-Jan
Thursday, May 23, 2013
NDepend: Manage your .NET Code
Many of will like myself will code once and a while. As a BizTalk professional it is inevitable that you will code for instance a pipeline component, a helper class, functoid, or other custom code to support your solution or test.
There are many tools available to make you more productive and provide you ability to create robust and high quality code. Either you find open source tools through Codeplex, utilities/tools through Microsoft or commercial ones.
One of the tools I got acquinted with is NDepend. It is a Visual Studio tool to manage complex .NET code and achieve high Code Quality. With NDepend, software quality can be measured using Code Metrics, visualized using Graphs and Treemaps, and enforced using standard and custom Rules. I received a copy of this tool through Patrick Smacchia (owner of NDepend) to review.
Installation of the tool is pretty straight forward. Once installed on your machine by unpacking it in a file folder you can start using either NDepend.PowerTools or VisualNDepend.Through VisualNdepend you can install the VS2012 Addin.
When starting VS2012 I find the NDepend Addin in my menu bar.
I will now create my first NDPEND project. I click new and give project a name.
I add assemblies from a project I created recently or in the past from a BizTalk solution. I choose of one of my solutions, which I created for BizTalk Server 2010 Cookbook.

I can then run an analysis of one of more assemblies. A report will be created popping up in my browser.
This report provided me with a lot details about my solution. Within Visual Studio I am provided with more information through NDepend Error list, and so on. This can be down within a few minute giving you a clear picture of your solution.
I have just scratched the surface with what I described in this post, yet this tool shows a lot of potential (see also this review). There are many great features offered through this tool and I recommend you try it out. I believe my future projects will be even in a better shape using this tool!
Cheers,
Steef-Jan
There are many tools available to make you more productive and provide you ability to create robust and high quality code. Either you find open source tools through Codeplex, utilities/tools through Microsoft or commercial ones.
One of the tools I got acquinted with is NDepend. It is a Visual Studio tool to manage complex .NET code and achieve high Code Quality. With NDepend, software quality can be measured using Code Metrics, visualized using Graphs and Treemaps, and enforced using standard and custom Rules. I received a copy of this tool through Patrick Smacchia (owner of NDepend) to review.
Installation of the tool is pretty straight forward. Once installed on your machine by unpacking it in a file folder you can start using either NDepend.PowerTools or VisualNDepend.Through VisualNdepend you can install the VS2012 Addin.
When starting VS2012 I find the NDepend Addin in my menu bar.
I will now create my first NDPEND project. I click new and give project a name.
I add assemblies from a project I created recently or in the past from a BizTalk solution. I choose of one of my solutions, which I created for BizTalk Server 2010 Cookbook.
I can then run an analysis of one of more assemblies. A report will be created popping up in my browser.
This report provided me with a lot details about my solution. Within Visual Studio I am provided with more information through NDepend Error list, and so on. This can be down within a few minute giving you a clear picture of your solution.
I have just scratched the surface with what I described in this post, yet this tool shows a lot of potential (see also this review). There are many great features offered through this tool and I recommend you try it out. I believe my future projects will be even in a better shape using this tool!
Cheers,
Steef-Jan
Subscribe to:
Posts (Atom)
