Refactoring and modifications on the way to adding dependency constraints