Template is basically what an abstract class in Java is for - to define a method in a parent class, but leave it for deriving classes to implement them fully. In our project this pattern is present in the hierarchy of DatabaseConnector and other specific Connectors.