Service Mosaic: A Model-Driven Framework for Web Services Life-Cycle Management