Product Reviews

MKS Code Integrity

Got coding issues? This will find them for you

This product represents one half of the Code Integrity/Engineer Integrity set. Both products analyze your projects and source code but measure different factors. Code Integrity in particular aims to assist developers in mid to large projects measure the quality of their code through an objective series of tests and a mathematical model. The product supports integration with numerous tools and languages, including the ability to set up your own project structures from text files. For this review, I focused specifically on the Visual Studio integration.

Setup of the product was easy, and launching the product from within Visual Studio was a snap. The Source Analyzer window will either browse an existing model (the internal database representation of the analysis) or help you build a new model for the current project. Once the model is built, you can browse it through the MKS Source Browser. The browser allows you to navigate the model, search it and customize it A series of views can be applied to each object. The "Uses" view is a depth analysis of all objects referenced by the queried item. The "Calls" view allows you to see which objects are being called by, as well as which objects call the queried item. An "Inheritance" view allows you to see the Superclasses and Subclasses related to the queried item. All the views offer useful information about your code. Integration with VS allows you to jump to a particular symbol directly within the browser.

So far this is common functionality to both products. So what makes Code Integrity special?

The primary feature offered by Code Integrity is the analysis of your source files for common coding issues. The product comes with a slew of tests, examples of which include use of uninitialized variables, defaultless switch statements, and use of the break statement. You can view the results of the analysis in a browser style mode and even open the source to the particular issue identified. You can also print a report that summarizes the results of the analysis. This is useful to get a bird's eye view of the issues identified. Both of these views are available on the whole project or on any subset thereof. The folks at Code Integrity also offer a very interesting mathematical model for measuring the quality of the code. The net is that you get a percentage based metric for your code quality. Last but not least, the product offers a time based measurement of your code's quality, allowing you to (ideally) see the improvements in a project.

Net? The product is an interesting enhancement of the old 'lint' tool. The real value play happens on larger projects, where the integration of the analysis, browser and development environment make it easy to quickly address issues.

About the Author

Dan Frumin is the founder of Frumin Consulting group, a business and technology strategy consulting firm. Prior to that Dan spent several years running his own company and working at Microsoft in a variety of business and technical roles.

Featured

  • SharePoint Framework 1.8 Now Generally Available

    Microsoft this week announced that SharePoint Framework 1.8 had reached "general availability" status, although some features are still at the preview stage.

  • How To Create Office 365 User Accounts in Bulk

    Manual account creation can be tedious, time-consuming and prone to human error, especially if you have more than a handful of Office 365 users to set up. Brien shows you a better way.

  • System Center 2019 Reaches General Availability

    System Center 2019 has now reached the "general availability" product stage, Microsoft indicated in a Thursday update.

  • SharePoint Online Users Getting News Improvements This Month

    Microsoft plans to roll out new capabilities for SharePoint Online users this month that will add greater control over how News articles appear in SharePoint sites, according to a Wednesday announcement.

comments powered by Disqus

Office 365 Watch

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.