Welcome Up Contents Glossary Search Feedback

Details

 

Outline:

bullet 
bullet

What is Role Modeling?

bullet

How are Role Models Developed?

bullet

The Problem Statement

bullet

Use Cases

bullet

RRC Cards

bullet

Role Playing

bullet

Iteration

bullet

Scenarios

bullet

TaDa!

bullet

Incremental Enhancement

bullet

Team Building

bullet

Taming Complexity

bullet

The Bigger Picture

What is Role Modeling?

Role Modeling (RM) is a business engineering technique which leads to a responsive, goal-oriented organizational structure and effective work processes. It provides

bulleta model of the organization in terms of the roles, responsibilities and collaborations among individuals and teams.
bulleta discovery and transformation process for the enterprise, applicable at small or large scale.
bulleta vehicle for
bulletreengineering and process improvement
bulletaccountability
bullettracking progress against multiple, potentially-conflicting goals
bulletreconciling top-down desires with bottom-up realities
bulletbuilding high-performance teams
bulletmanaging complexity
bulletorganizing and maintaining knowledge assets
bulletillustrating how events (such as the placing of an order or a shift in market conditions) are handled by the organization.

RM provides a simple but powerful paradigm for thinking about how an enterprise works. It differs from other business engineering techniques in several significant ways:

bulletLike other quality management initiatives, it is a discipline for everyone, not a technique used by analysts to tell others how to do their jobs.
bulletIt focuses on maintaining and evolving a model of an organization which undergoes continual change along many dimensions and at various rates, not on producing a static design for a single point in time.
bulletBuilt on an object technology foundation, it unifies traditional organizational and system development techniques, including functional decomposition, process modeling, and data modeling, avoiding the disconnects and long reconciliation cycles inherent in applying those techniques separately.
bulletIt provides the right level of detail at the right time, thus maintaining focus and involvement.
bulletIt can be applied top-down, bottom-up and middle-out simultaneously. Changes are made incrementally and locally, converging on better and better results and responding rapidly to new requirements and discoveries.
bulletIt is robust; even major strategic changes tend to affect a relatively small portion of the model.

Role Modeling describes the roles involved in performing the work of the organization. A role has a cohesive set of responsibilities; a purpose for existing. A Role Model shows how roles collaborate to fulfill their responsibilities.

A role may be filled by a person, group, organization, team, or even an automated system, and each of those entities may fill many roles. In fact, a role may be filled by another role. RM draws a major part of its power by separating the "what" of a role from "who" is filling the role at any particular point in time. That separation allows teams to come together to discover the nature of the work which must be done to meet the demands placed upon them by their sponsors, without regard to organizational turf issues, and then figure out how the roles must be filled.

For example, an application development group and a data management group were faced with complaints that the results presented to the customer were not based on the correct source data the customer assumed it to be. Each group thought that the other group was responsible for quality assurance. In building their role model they easily agreed on the need for a quality assurance role. As they fleshed out the responsibilities of that role it became clear that it had to be filled by a team with representation from both organizations. The team was then further described in terms of the roles (and responsibilities) of its members.

A team of the sort just described is a virtual team; a cross-organizational grouping of individuals for a common purpose. Most large organizations depend heavily on virtual teams, but their existence is largely ignored in formal planning and descriptions of organization structure and accountability. RM gives virtual teams their due. It supports (and empowers) the full richness of cross-organizational interaction and collaboration.

The lines connecting roles in a role model represent collaborations; dependencies of one role upon another. All of the roles connected to a role by lines, either in or out, represent the stakeholders of that role. The stakeholders of a role naturally form a virtual team which is responsible for determining the fate of the role. Any changes to the role's responsibilities are made according to the needs and timing of the stakeholders. Thus role models have built within them the capacity to describe and account for change. Furthermore, roles which may seem distant on ordinary organization charts are seen to be quite close if, in fact, they interact operationally. The impact of a change and the scope of approval needed to institute it can be negotiated directly from the model. We use the term responsibility domain when concentrating on responsibility for defining how and by whom a role is assisgned responsibilities.

How are Role Models Developed?

The Problem Statement

Role models are initially developed in facilitated sessions by representatives of a responsibility domain. When starting from scratch, the participants first identify the domain by developing a problem statement. The problem statement gives the reason the domain exists and also bounds the modeling session; a model is sufficiently detailed and correct when it meets the completion criteria set forth in the problem statement. Any time the model needs to be updated the problem statement should be revisited. Updates can frequently be undertaken without the need for a facilitator.

Use Cases

Once the problem statement is in hand, the participants brainstorm the names of use cases which characterize the operational requirements of the domain. A use case is simply an example of an event or trigger which the domain must handle, together with the expected outcome and any preconditions for the example. For instance, the use case "In-stock order" may be triggered by the event "Customer phones a request for two blue gizmos", with the precondition that enough gizmos are on hand and an expected outcome that the customer will receive the gizmos within two days. Use cases are highly specific, not generic, so that they can provide specific intuition as to how things must work. At this stage, only the name of the use case is needed.

Brainstorming is kept brief. Usually dozens of use cases will be identified, but there is no need to ensure complete coverage at this time. Just naming use cases helps the participants understand the scope of the problem domain as seen by other members of the team.

RRC Cards

The participants then brainstorm the names of roles which may be of interest to the domain. As with use cases, neither precision nor complete coverage is necessary.

An index card is created for each role. As the role names are read off, if anyone does not have a notion of what the role represents, the team pauses to develop a simple statement of the overarching responsibility of the role, and places it on the card. (Note that if a role isn't questioned at this stage, different participants may be making different assumptions about its meaning. That ís perfectly OK. The process is self-correcting.)

The cards, known as RRC cards, for Role, Responsibilities and Collaborators, are dealt out to the participants, with no particular concern for aligning roles with the participants who might eventually fill them.

Role Playing

The participants then pick a use case to start with. The first use case should be one that represents a   "main path" responsibility of the domain, such as filling an order. The definition of the use case is fleshed out in some detail, including clear statements for the trigger, preconditions and expected outcome. The preconditions for this first case should be selected to keep the case simple, avoiding exceptional conditions and unusual events.

Then the fun begins. The use case trigger is read and the facilitator asks which role handles the trigger. In the case of a phone order, for example, the sales associate role may take the call. The participant holding the sales associate RRC card identifies the role and checks that the card includes a responsibility empowering or requiring it to take calls. If that responsibility is not clearly within the scope noted thus far on the card, a responsibility is added to the card. The cardholder then determines what role (or roles) must be triggered next in order for its responsibility to be met. That role or roles would then be listed in a "Collaborators" column on the card and the collaborator(s) would be triggered.

Participants role-play the roles of the cards they hold, illustrating how the roles collaborate to meet the needs of the use case. In the process, they discover the need for new roles, and ways to improve, refine or replace the roles theyíve identified thus far. They mark up the RRC cards freely, tearing up cards which become too complicated and replacing them with several simpler ones as they gain deeper insights into the task at hand.

Iteration

In practice, this process of role playing, discovery, and design proceeds iteratively through several stages of formality. At first the participants just talk it through, holding up their cards as they say what they'd do, without bothering to actually write on the cards. They might also go to a whiteboard and quickly sketch out a diagram of the sequence of roles and their interactions. As they become satisfied with their design they update their cards.

Scenarios

The entire sequence of steps from the use case's initial trigger to the desired outcome is called a scenario. Once the participants are happy with the way their roles collaborate to meet the needs of the use case, they make a clean pass through the role play while a person designated as a scribe captures the scenario in a scenario log.

Ta Da!

They now have:

bulleta rudimentary model, represented by the content of the RRC cards,
bulleta preliminary set of requirements and test cases, represented by the use cases, and
bulleta scenario illustrating how the model meets the needs of one use case.

Incremental Enhancement

Now it is time to test the model with another use case. You might think that another use case will generate an entirely different model, with potentially no resemblance to the one developed thus far. But that is where this technique differs so fundamentally from conventional process modeling. RM focuses on roles, not tasks. The roles must be designed so that they are up to all of the tasks their domain must handle. Brainstorming roles generally gives an amazingly good first cut at a stable model. As additional use cases are tried, the model will get richer and more refined. The roles, however, will tend to stabilize, with fewer modifications needed as each new case is tested.

To achieve that sort of stable design, the participants go through a process which builds their confidence in the model. The first use case gave them a rough idea of how the model, and the distribution of roles and responsibilities it conveys, could meet the needs of a "bread & butter" use case. The exercise undoubtedly raised as many questions as it answered. Their focus now shifts to gaining a deeper understanding of how the model can really support their needs. They discuss which kinds of problems the model seems to leave unsolved and pick (or formulate) a use case which is likely to trigger one of the most fundamental problems or areas of least confidence. They then apply that use case's trigger and trace its effects through the model. Just as they did in their initial role-playing, they repair their model as they encounter problems and discover ways to handle them. Once satisfied, they document the scenario associated with the new use case. If the changes in the model affect the way an earlier use case was handled they also update its scenario.

The process of testing additional use cases and refining the model continues iteratively until the model is rich and stable enough to meet the needs of the problem statement.

Team building

The somewhat mechanical description we've provided of role modeling thus far may give you the impression that this is a coldly analytical process. Nothing could (or should) be farther from the truth. In practice, role modeling is not nearly as dispassionate as the description above may imply. The participants are keenly invested in the outcome of the model and the way in which its roles and responsibilities will serve their own organizational and personal goals and ambitions. They are constantly checking that the responsibilities invested in a role are realistically achievable, given the charter of the role and the actual information, resources and collaborative commitments the model shows the role will have available to it. The modeling formalism does tend to keep focus on the nature of the work and the need for collaboration, rather than issues of personality. It builds trust through understanding of each participantís perspective and needs.

Taming Complexity

What keeps this from becoming horribly complicated? Several things:

bulletA great deal of detail is avoided by dealing with responsibilities rather than tasks. The participants are not concerned with crossing t's and dotting i's in a specification of exactly how work is to be performed. Rather, they are engaged in investing a sense of responsibility to "do the right thing" in the individuals and groups which will hold those responsibilities, and then leave it to them to work out the task details.
bulletRoles, such as Project Manager or Tester, are generic. As models grow, reuse and specialization of roles becomes significant. When role-playing, however, the roles are treated as specific instances, such as the MegaWowzer Project Manager or the Frammis Tester. The scenarios thus deal with instances, providing tangible intuitive and experiential grounding for the intended operation of the model. It is not necessary for all possible scenarios to be covered; just enough to build confidence in the model.
bulletA role need only be defined in enough detail to satisfy the participants that it meets their needs. If a role seems too vague or unrealistic, the participants can choose to model it further by delving into the roles contained within it. They can create use cases specifically focused on the responsibilities of that role and then develop the corresponding scenarios. More importantly, they can delegate the more detailed modeling to a team of participants more closely tied to the specific responsibility domain. In this way, the modeling and its associated buy-in process spreads in a coordinated way throughout the organization.

The Bigger Picture

An RM engagement might typically involve a few half-day sessions a week for several weeks. The time between sessions is used to great advantage by the participants to check with their constituencies and ensure good communication, feedback and involvement. Most of the mechanics of documentation and consistency checking are also best handled between sessions, so that they don't impede the creative processes and enthusiasm generated during a session.

For many applications, a word processing application such as Microsoft Word can be used to document the content of the RRC cards, the use cases and the scenarios. As a model grows, Rolewaretm documentation aids and tools can be introduced. Rolewaretm eases the development, dissemination, and maintenance of integrated models.

Models developed independently by different teams can be reconciled by forming a team responsible for each area of overlap. The issues they have in common define their responsibility domain. They can proceed to model it, treating the originally-overlapping domains as their sponsors and negotiating solutions which best meet the needs of all stakeholders. That is how role modeling grows from the bottom, top and middle to eventually form a unified picture of an enterprise, its organizations, and its processes.

Role Modeling does not require any knowledge of programming techniques. It is intended for use in non-technical as well as technical environments. Role Models complement the latest techniques used by information analysts. The models blend smoothly with the disciplines of object-oriented design and modern programming languages like Java.

 

Welcome ] Up ]

For further information send mail to info@rolemodeling.com
If you havequestions or comments about this web site please submit a  feedback form or send mail to webmaster@rolemodeling.com.
Copyright © 2001 hla associates

RoleModeling is a trademark of hla associates

Roleware is a trademark of Computer Methods Corp