Abstract
This thesis presents an overview of the features and architecture of Earth System Modeling Framework (ESMF). It aims to provide readers who had never used ESMF before with a clear view of this powerful coupling framework. The thesis also explains how to arrange the scientific model code in order to apply model coupling: It gives code examples to illustrate how model coupling works. This thesis also introduces an open source tool, ESMF Code Generator. The goal of the ESMF Code Generator is to help the users to gain a better understanding of ESMF and reduce the time in coupling by keeping the users from the tasks of coding. The code generation rules of the tool is open and can be customize by the users.