Data Driven Design for Data Warehousing