Engine that implement the specification pattern