A group is its own worst enemy
While that definition—software for group interaction—cuts across existing categories, I think it is the right one, because it recognizes the fundamentally social nature of the problem. Groups are a runtime effect.You cannot specify in advance what any given group will do, and so you can’t instantiate in software everything you expect to have happen. Now, there’s a large body of literature saying, “We built this soft-ware, a group came and used it, and they began to exhibit behaviors that surprised us enormously, so we’ve gone and documented these behaviors.” Over and over and over again this pattern comes up.