In Service Oriented Architecture, each application is ofgned as a set of abstract services, which defines its functions. A concrete service(s) is selected at runtime for tract service to fulfill its function. Since different concrete services may operate at different Quality of Service (QoS) measures, application developers are required to select an appropriate set of concrete services that satisfies a given Service Level Agreement (SLA) when a number ete services are available for each abstract service. This problem, the QoS-aware service composition problem, is known NP-hard, which takes a significant amount of time and costs to find optimal solutions (optimal combinations of concrete services) from a huge number of possible solutions. This paper proposes an optimization framework, called E3, to address the issue. By leveraging a multiobjective genetic algorithm, E3 heuristically solves the QoSaware service composition problem in a reasonably short time. The algorithm E3 proposes ca...