Product Reviews

MKS Engineer Integrity

This product represents one half of the Code Integrity / Engineer Integrity set. Both products analyze your projects and source code but measure different factors. Engineer Integrity in particular aims to assist developers in mid to large projects measure and prepare a change impact analysis for different source components. 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 Engineer Integrity special?

Engineer Integrity begins by letting you select a particular item, for example a file name or a particular object. You can then select the changes being considered. Each item has a different list of changes supported. For example, while files only supporting renaming, classes support renaming, adding or removing methods and so on. Each change considered then generates an impact list. Impact lists are also specific to the change itself. For example, if you are changing the body of a function, Engineer Integrity will warn you to review all calls to the function. On the other hand, if you rename a global variable, the product will point out every instance where it is used and remind you to make the change. As with Code Integrity, you can view the results either in a tree based browser or in a report format suitable for printing.

Net? The product offers valuable analysis, especially for larger projects. By automating the search for every potential impact point of a change, this product aims to ensure that developers carefully consider the implications of their actions.

[This review originally appeared in

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.

comments powered by Disqus

Redmond Tech Watch

Sign up for our newsletter.

I agree to this site's Privacy Policy.