Integrate Button Weblog

Archive for the 'Inspection' Category

Stelligent is hiring!

Tuesday, January 22nd, 2008

My employer, Stelligent, is hiring Senior Agile Consultants to work with our growing team of experts. See the job description here.

When people ask me why I enjoy working for Stelligent, the answer is simple: no two days are the same. At Stelligent, our consultants are able to work in many diverse environments whether it be an industry, a customer or a technical platform. We’ve worked on Java and .NET projects and we’ve created solutions using Ruby and Groovy. We are on the cutting edge of technology because our customers demand it. We’ve worked with financial services firms, health care, and philanthropic organizations. It makes for an exciting and dynamic environment.

Further, you’ll work with some of the leading experts in the areas of Continuous Integration, Test-Driven Development and other Agile practices. Contact Stelligent today to learn more about our employment opportunities.

Full-featured Continuous Integration System video demonstration

Tuesday, September 11th, 2007

In demonstrating the Use a CI Server practice from Continuous Integration: Improving Software Quality and Reducing Risk , I show you how to create a full-featured CI system using CruiseControl, Ant and various testing, inspection and deployment tools such as Cargo, DbUnit, JUnit, JavaNCSS, Selenium, Simian, JDepend, Subversion, Cobertura and CheckStyle .

The demonstration includes a fully-functioning (albeit small) web application. You will be able to access the full source of build scripts, CruiseControl configuration scripts, Java and other configuration files so that you can configure this in your environment as well.

If you’re interested in the mechanics of installing and configuring a CI system, this is the video for you .

Asserting architectural soundness article and podcast

Thursday, July 12th, 2007

IBM developerWorks recently interviewed me for my latest Automation for the people article called Asserting architectural soundness. Scott Laningham has a very efficient operation as the whole podcast interview process took no more than 10-15 minutes to complete. Asserting architectural soundness describes a technique to build checks into your build scripts so that you discover architectural violations as soon as they are introduced into the code. For instance, let’s say your presentation layer is making a direct call to your data layer and this is a violation to your architectural layering rules. By using the JDepend API, JUnit and Ant, I show how you can find out about this type of error as soon as you build your software. What’s more, if you’re using Continuous Integration, you’ll learn about the violation for any developer that commits code to the repository and in a consistent manner - several times a day.

CI Inspection Tools for Java

Friday, June 15th, 2007

Below, is a list of tools for running automated inspections (static and dynamic analysis) for the Java platform:

  • PMD - verify code is adhering to the project’s coding standards
  • CheckStyle - verify code is adhering to the project’s coding standards
  • CPD - Copy Paste Detector (part of PMD project)
  • Simian - Similarity Analyzer
  • JDepend - Object-oriented metrics for determining robustness of the architecture
  • JavaNCSS - tool for measuring cyclomatic complexity
  • SourceMonitor - tool for measuring cyclomatic complexity and general code metrics
  • Metrics - Eclipse plugin for gathering many types of code metrics
  • Coverlipse - code coverage tool for Eclipse
  • JDepend4Eclipse - JDepend plugin for Eclipse
  • Cobertura - Code Coverage tool
  • FindBugs - code metrics and analysis tool. Provides more advanced metrics than the “average” static analysis tools such as security warnings, etc.

In chapter 7, Continuous Inspection, we cover the practices, tools and techniques for discovering potential defects in your software.

Levent Gurses vidcast on Code Quality Plugins for Eclipse

Tuesday, June 12th, 2007

I interviewed Levent Gurses of Stelligent (the company I work for) over on Test Early in a vidcast where he gave a preview of his upcoming talk on code quality plugins for Eclipse that he is doing at the Better Software Conference in Las Vegas next week. He also blogged several times on the topic at Test Early providing detailed tutorials on JDepend4Eclipse, Coverlipse, CheckStyle, CheckStyle and Metrics plugins.

CI Inspection Tools for .NET

Monday, June 11th, 2007

In Chapter 7, Andy covers practices for automated static/dynamic analysis so that you can discover overly complex code, code coverage, or code that doesn’t adhere to your project’s standards early in the lifecycle. He uses plenty of examples for the Java and .NET platforms. Below, is a list of inspection tools for .NET:

  • NCover - code coverage
  • Clover.NET - commercial code coverage for .NET
  • CCMetrics - measure code complexity in .NET
  • SourceMonitor - see inside your software source code to find out how much code you have and to identify the relative complexity
  • FxCop - A code analysis tool that checks for conformance to the .NET Framework Design Guidelines