During refactoring JCROrgService two issues about specification were revealed. The first one is about removing group where children groups still exist. Specs says:
Use this method to remove a group from the group database. If the group has he children group. The method should not remove the group and throw and exception
Current implementations merely removes group and all its children. The second one is about saving user profile for not existed user.
Specs says nothing but more logically to throw an exception than just skip saving.