Selecting an implementation method