Hi Peter - Yes, I've given this quite a bit of thought. The entity you describe makes a lot of sense. The concept of a "position" is inherent in most Human Resource Information Systems. Most things go along with a position, not a person. A person in an organization fills a position.
With respect to cases, it's even a bit more complicated. What we've found works well is a double layer of indirection: you most often need both a position AND a role. The role defines the set of activities and milestones that are usually carried out by one person in the context of a case (e.g. 'parole officer'). In many cases, the person who fills a role in a given case will be in a given position within an organization (e. g. Joe Smith is a Parole Officer at the Baltimore Police Department). Sometimes the mapping isn't so obvious. For example, someone who fills the role of "worker advocate" in a disability case might map onto the position of "shop steward" at an organization like a trade union. If you just map the two individuals directly together, you actually miss the chain of relationships that you need in order to manage workflow and milestones properly.
Jane reports a "workplace accident" milestone.
Susan recognizes this as a milestone that begins the case type "worker disability".
Susan creates a case with herself as the case manager, and Jane as the client. Susan assigns the case type "worker disability".
Worker Disability case type has a role defined for "worker advocate".
Susan knows that Jane belongs to the SEIU, and places the position of "SEIU Shop Steward" into the role of "worker advocate". (In a later version of CiviCASE, the system might even read in a business rule and make this assignment for her).
Here's where things get slightly interesting. Often times case management spans organizational boundaries. If the case manager (Susan ) doesn't know, or has out of date information about, who is the SEIU Shop Steward, it becomes problematic to route things like reminder notices and such to the right person. In our work, we've suggested that where organizations have service providers that need to interface with a case management system that is administered by a different organization, they should set up email accounts that use role titles rather than personal names. So for example, SEIU would have an email account for "
ShopStewardLocalXXXX@SEIU.org [nofollow]" or something like that. That way, CiviCASE can just route information to the email corresponding to a position, without worrying who is filling that position. It becomes the responsibility of the SEIU mail system administrator to make sure that mail addressed to the Position-specific email address gets routed to a real person.
I don't know if this is making sense or not. It seems like a lot of complexity, but I think that complexity is actually needed where people from various organizations are collaborating on a case, and where they don't all have access to the case management system. If they all DO have access, it might still be a good practice to use position-specific email addresses, because it becomes a way to remind people that they need to go into the system and update the association between their name and their position.