code refactoring+specification diagrams