Your comments

Thanks, I'll discuss with him. I don't see any option to mark this question as answered, can you close it?

Hi, thanks for the reply,
I would like to provide a few extra information about the current implementation. I have kept the Store as a singleton as I want all the data(At most 500MB) to be in only one store at a time and I'll be migrating this data when the strategy is switched. When creating an instance, I'm using an Object Factory to create the instance for the current store implementation which is fetched from XML / DB. I'm afraid that the Singleton Abstract class with subclasses of various strategy is fixed and I have to work around that. 

I ended up using the Strategy pattern in a similar situation.