Business Role-Player

The concept of business role-player lies on the boundary between the requirements that drive the business, and the business delivery system.  This is because some business role-players are outside the business making demands, while others are inside the business fulfilling demands.

As external entities, business role-players are key factors in the creation of business situations.  As internal entities they are motivated by the purposes pursued by the business.  Business role-players are bound by commitments that are made on behalf of the business.  They are defined by the function they perform or are responsible for, and they perform business behavior.  They have resources assigned, in the form of capabilities of either people, groups of people, or devices.  Recursive relationships among role-players mean two things.  A containment relationship says that one role-player is part of another, as in the standard organization chart. It is also possible for one role-player to report to another, without actually being a part of it as a larger entity (such as a project team that reports to a steering committee, without being contained by the steering committee).

From an architectural point of view, identification of the various types of role-players in the business is extremely valuable.  An understanding of how responsibilities are partitioned in the business.  This helps to partition business behavior, which is a major factor in designing software and allocating work on application development and/or implementation projects.
The concept of role-player brings together aspects that are often separated: the role itself and the player of the role.  We’ll take a closer look at these constituents of the role-player concept below.  They are brought together here because either alone does not meet the architectural concerns of organizing key knowledge and driving development work.

Roles exist in distinct types, including customer, employee, regulator, sales or distribution channel, and supplier, as well as more general types such as performers, managers, and recipients of various types of outcomes.  Roles, job titles, and organizations all may exist in many-to-many relationships to each other.  Roles may be formal (job title) or informal (committee membership).  Roles can be even more granular, such as “opportunity noticer” or “call recorder”.  A role is characterized by capabilities, skills, abilities, etc., which enables it to be matched with potential players who have those characteristics.  A role implies a set of responsibilities.  Job titles are created to group a number of compatible roles along with their attendant responsibilities.  Roles exist in a number of complex relationships to each other:  Some roles require other roles (the role of a store manager can only be played by someone who is a regular employee), while some roles preclude other roles (a teller may not be a loan approver).

The players of roles may be individual human beings, organizations, and devices.  An individual human being is one type of legal entity (the other type of legal entity is a legally constituted organization).  Organizations include groups of people of all types.  Within some context there are replicated organizations (field offices, project teams) and singular organizations (the Board of Directors).  An organization can be formal (a department), informal (a committee), or legally constituted (a corporation).

Assignment of the appropriate human being, organization, or device to a role implies a kind of pattern matching that lines up capabilities needed by the role with capabilities of the potential fillers of those roles.  If the role-player is a human being there is the additional factor of accountability that can be applied.  A key issue for IT system builders is the indirection of accountability.  When responsibility is assigned to a device that would otherwise have been assigned to a person, accountability is shared between the creator of the system and the deployer of the system.  This has major implications for builders of applications that increasingly play roles that directly interact with stakeholders of the business.