1. A method for Extract Transform Load (ETL) process optimization on a computing system, comprising: receiving an improvement objective from user input into the computing system, the improvement objective representing a priority optimization requested by a user for improved ETL flows for an application configured to run in the computing system; restructuring, by at least one processor in the computing system based on the improvement objective, the ETL flows at respective different design levels using respective different models for creating at least one optimized ETL flow, wherein an output of the restructuring at one of the design levels is provided as an input to affect the restructuring at another of the design levels; and storing the at least one optimized ETL flow as executable code on a computer readable storage medium.