Refactoring out specification patterns

In progress activity specification