Saturday, July 18, 2009
Mule in Action: Now Treeware!
Trees had to die to get us there by here we are: Mule in Action is now treeware. And in case you missed it, the making of was here.
Enjoy the reading!
Tuesday, July 07, 2009
Legacy Code Sonar Signature
In "Working Effectively with Legacy Code", Michael Feathers gives this definition:
After purging one of our project from code that we consider legacy (deprecated, EJB2...), we noticed this interesting trend in our Sonar dashboard:
Notice how code coverage is way less affected than complexity and rules compliance. Our legacy code had test coverage, not the greatest ever, but it had some.
Therefore, I am wondering if we could then postulate that legacy code is code that has fallen short of software development standards?
This is actually what is expressed by the above graph: ditching legacy code drastically improved compliance to standards expressed as acceptable complexity and compliance to coding rules. These standards evolve over time: as legacy code is left abandoned, it slowly drifts away and gets less and less compliant by just standing still.
Have you noticed similar trends?
To me, legacy code is simply code without tests.He also adds:
I've gotten some grief for this definition.Indeed, defining legacy code is hard.
After purging one of our project from code that we consider legacy (deprecated, EJB2...), we noticed this interesting trend in our Sonar dashboard:
Notice how code coverage is way less affected than complexity and rules compliance. Our legacy code had test coverage, not the greatest ever, but it had some.
Therefore, I am wondering if we could then postulate that legacy code is code that has fallen short of software development standards?
This is actually what is expressed by the above graph: ditching legacy code drastically improved compliance to standards expressed as acceptable complexity and compliance to coding rules. These standards evolve over time: as legacy code is left abandoned, it slowly drifts away and gets less and less compliant by just standing still.
Have you noticed similar trends?
Labels:
Craftsmanship,
Tools
Subscribe to:
Posts (Atom)