Enterprise Information Systems A Pattern Based Approach