In this article I describe how our team uses metrics to identify code smells and apply refactorings to correct these code smells. This example is real simple but it shows exactly how some of the eXtreme programming practices are helping our team to maintain our code.
Our team uses eXtreme programming practices to manage development on a mission critical system for a large retail chain. We have not adopted all the practices, but use the majority of the practices.
Here is a list of the practices we use:
- Test-Driven Development (VSTS Testing Tools)
- Collective Code Ownership
- Coding Standards (FxCop, Code Metrics)
- Continuous Integration (Daily builds, but we are looking to implement a CI environment soon.)
- Planning Game ( Iteration planning and daily standup meetings )
- Customer Test (Fit, VSTS Web Tests)
- Small Releases (Fortnightly UAT Releases)
Every morning at the standup meeting the team lead will report on the nightly integration build.
This report includes the following metrics:
- Unit tests passed, failed, ignored
- Fit test passed, failed, ignored, exceptions
- Test Coverage (Should be more than 80%)
- Cyclomatic complexity (Should be less than 10)
- Code Instructions (Should be less than a 100)
- FxCop rule validations
Each day metrics are compared to the previous day and overall the project manager tracks these metrics to get an overall feel for the health of the project.
You can find the rest of the article here.
Currently listening to: 19 Vegas Soul-Junk Funk – Winamp *** 46. DANNY TENAGLIA – 19 Vegas Soul-Junk Funk