A feature is a program characteristic visible to an end-user. Current research strives to encapsulate the implementation of a feature in a module. Jak is a language extension to Java that allows programmers to encapsulate implementations of features in the form of a collaboration. In prior work, we and others faced problems when using collaborations in Jak and alike languages with too high expectations, e.g., to encapsulate widely scattered code of features such as transaction management in data bases. In this paper, we explore which criteria feature implementations must fulfill so that they can be encapsulated in Jak. The criteria that we found decisive are: granularity of code elements that should be encapsulated in a collaboration, objectlevel extension by features, and object-oriented connections of a feature's code elements. We finally present a general guideline when to encapsulate a feature with a collaboration in Jak. Practitioners can now evaluate in advance whether Jak c...