Having roots in the more "businessy" areas of the Labs, groups made sense for a collection of people working on the same project. You wanted everyone in the group to be able to create files and directories, but not people outside the group, less because you didn't trust most of the people sharing a machine than because you didn't want accidental destruction from outside. But the newgroup command for acting as a member of the group was clunky. Use of groups for this purpose didn't become practical until 1) you could be members of multiple groups simultaneously and 2) the group ownership of newly created files and directories would be that of the directory in which they were created, if you were a member of that group. Of course, this meant your umask should confer group write permission by default, which didn't work well if your primary group was widely shared. So we adopted the policy of everyone having a primary group with the same id as your user id. "Private" files and directories were not group-modifiable by anyone other than yourself, but "project" files were modifiable by anyone in the project group. This made groups work seamlessly. Just do a chgrp on a directory where group sharing was to be done, and everything just worked thereafter. 

On Sun, Oct 3, 2021 at 6:12 PM Norman Wilson <norman@oclsc.org> wrote:
I can't speak to the evolution and use of specific
groups; I suspect it was all ad-hoc early on.

Groups appeared surprisingly late (given how familiar
they seem now): they don't show up in the manual
until the Sixth Edition.  Before that, chown took
only two arguments (filename and owner), and
permission modes had three bits fewer.

I forget how it came up, but the late Lee McMahon
once told me an amusing story about their origin:

Ken announced that he was adding groups.

Lee asked what they were for.

Ken replied with a shrug and `I dunno.'

Norman Wilson
Toronto ON