Objective versus Subjective Coordination in the Engineering of Agent Systems