When should one refer to objects by function/relation (instead of by class) in MVC?
===

For example, let's say we have a `User`s, which are related to `Group`s, `Event`s, and other `User`s by `Membership`s, `Rsvp`s, and `Friendship`s.

Where should we refer to instances of objects by their functional/relational ("member", "rsvp", "friend") names and where should we refer to instances of objects by their class names ("users")? *i.e.* When is a `User` a "user", and when is a `User` a "member"?

Which do we use in the **Model**? (group.rb for this example)

    has_many :members, through: :memberships, source: :user
    # vs.
    has_many :users, through: :memberships
    
Which do we use in the **Controller**? (groups_controller.rb in this example)

    @members = @group.members                    # or @group.users, depending on the model
    # vs.
    @users = @group.users

Which do we use in the **View**? (groups/show.html.haml in this example)

    - @members.each do |member|                  # or @users.each, depending on the controller
      = "This is a member named #{member.name}"
    -# vs.
    - @users.each do |user|
      = "This is a member named #{user.name}"

Has anyone found (or invented!) a thorough and logical convention for this sort of thing, keeping in mind code readability and the need to refactor?