The Template Method Pattern