Documente Academic
Documente Profesional
Documente Cultură
Abstract. As many business processes are collaborative in nature, process leaders or process
managers play a pivotal role designing collaboration processes for organization. To support the
design task of creating a new collaborative business process, best practices or design patterns
can be used as building blocks. For such purposes, a library of design patterns and guidelines
would be useful, not only to capture the best practices for different activities in the process in a
database, but to also offer the users of this database support in selecting and combining such
patterns, and in creating the process design. This paper describes the requirements for a tool for
pattern based collaboration process design, specifically for design efforts following the
Collaboration Engineering approach.
1. Introduction
Process design and deployment has become the basis for most approaches to support
change, improvement, and innovation in organizations. While new technologies can
be a driver for changes of work practices, they often do not prescribe a new way of
working, but rather offer the tools to support the new way. With collaboration and
team work becoming the organizational norm to innovate and create value (see e.g.
Evans and Wolf 2005; Nunamaker et al. 2001; Munkvold and Zigurs 2005), new
business processes predominantly involve collaborative work practices. To change a
collaborative work practice, participants need to be trained or require facilitation
support (Briggs et al. 2003). The transition of new collaborative work practices is a
complex task because a new work practice needs to be accepted and adopted by its
users. A key requirement is the users’ willingness to change. Briggs describes a Value
Frequency Model to explain the behavioral intention (willingness) to change a work
2 Kolfschoten et al.
While a pattern language offers support in documenting and sharing best practices in
process design and process support, it does not directly offer support on how to use
these best practices. Therefore, to increase the usefulness of a pattern language and to
evolve it to being more than a mere database of best practices, this paper explores tool
support for pattern-based design efforts. In the field of software engineering where
design patterns have been adopted successfully as a way to share best practices, the
use of Computer Aided Software Engineering (CASE) tools has been
institutionalized. The IEEE standard for the adoption of CASE tools describes three
gains from the use of CASE tools: increased design productivity, improvements in the
quality of the software produced and improved consistency and uniformity of the
design approach [12]. Process design and deployment could gain from the
development of a similar class of tools which we will label a Computer Aided Process
Engineering tools, CAPE tools. Like a CASE tool, a CAPE tool is expected to
increase process design productivity, process quality and consistency and uniformity
of the process design & deployment approach.
In this paper we explore the use of design patterns in collaboration process design; to
create reusable sequences of activities that can be deployed in organizations to change
collaborative work practices. For this purpose we will derive requirements for a
Computer Aided Pattern-Based Collaboration Process Design 3
The remainder of this paper is structured as follows. The next section describes a
generic foundation for process design and deployment. Based on this foundation, the
third section describes relevant aspects of the Collaboration Engineering approach,
while the fourth section defines the support required for the design and deployment of
collaboration processes according to the Collaboration Engineering approach. The
paper ends with conclusions and recommendations for future research.
Process design has been studied in a variety of closely related domains, in particular
Business Process Change [13], Business Process Reengineering [14], and workflow
management [7]. Designs of processes and workflows in essence describe a sequence
of tasks or steps for which actors, roles or agents are defined and for which
technology support, objects, or applications are used. In workflow management there
is a large role for “flow of execution control” decisions or choices that determine
when the next step in the sequence is activated [7]. The same concepts are also used
in modeling languages with a process perspective such as Data Flow models, IDEF0
[15], and SADT models [16].
To support process design, process modeling languages are supported with software
tools that enable the user to drag and drop blocks representing activities and arrows
representing process flow into a diagram and to specify a variety of attributes of the
activities, the process flow and the roles, routines, objects, decisions, etc. involved.
Patterns in such system are used mostly to provide templates for the documentation of
these elements and the different types of combinations that are used to sequence the
process such as the AND-join pattern for synchronization in work flow [7, 17] or the
decision node in process flow models.
Process design as any other design effort has similar phases as a process for decision
making, problem solving or creativity [18-23]. It consist of an analysis of the current
situation, possibly involving a decision about the need for a new approach or change.
Next, through decomposition an initial sequence of steps is created. Alternative
solutions to change and support the process are then identified and evaluated to
eventually choose a sequence of steps and supporting tools that are validated (pilot,
test case) to be ultimately implemented.
4 Kolfschoten et al.
When a pattern language is used, so that design patterns are used as building blocks,
the collaboration process design effort changes slightly from the steps described
above. While the original approach assumes that alternative solutions have to be
created, evaluated, compared, and selected, using design patterns, this changes into a
approach in which a design pattern is selected based on known properties of this
design pattern that fit the requirements for the collaboration process. As these known
properties support the choice of design patterns, they also prescribe the information
required to make this choice (Kolfschoten and Veen 2005). It could thus offer a
checklist for analysis of the current situation. Furthermore, design patterns are
descriptions of solutions but like object oriented class descriptions, they need to be
instantiated in the specific context of the process design. Finally, design patterns
contain information about their applicability and thus they contain information that
can be used to validate the process resulting from the design effort. When the pattern
library does not offer a pattern that solves the specific requirements of the process
task, a new pattern or a variation on an existing pattern should be added.
Thus collaboration process design with the support of design patterns offers
collaboration process engineers valuable information to create and instantiate a
collaboration process design. A tool to support such efforts should offer functionality
to:
For Collaboration Engineering it is critical that the design of the collaborative work
practice is robust, that it creates predictable outcomes, that it is reusable in different
instance of the task, that it is efficacious to the collaborative goal, that it is acceptable
for the participating stakeholders, and that it is transferable to practitioners. For this
purpose, thinkLets are developed. ThinkLets are named, scripted, reusable, and
transferable collaborative activities that give rise to specific known patterns of
collaboration among people working together toward a goal with predictable results
[24]. For instance a LeafHopper thinkLet [10] is used to let participants brainstorm
ideas in multiple categories. This gives rise to the collaboration pattern “generate”
where the group moves from having fewer to having more concepts in the pool of
concepts shared by the group [24], and results is a set of categorized ideas that might
contain redundant and double ideas.
Since the robustness of the collaboration process design is of critical importance, there
is large emphasis on the validation of the design before it is transferred to
practitioners in the organization. For this purpose, quality dimensions of a
collaboration process design have been distinguished, as described above (efficacious,
predictable, transferable, reusable, acceptable). These dimensions also offer a
framework for the analysis of the task (efficaciousness), stakeholders (acceptance),
available resources (reusability), and practitioners (transferability) [26-28]. Once the
requirements and constraints to the collaboration process are known, a first sequence
of activities should be determined. Then for each activity a thinkLet should be
selected resulting in a sequence of thinkLets. Additionally other activities such as
6 Kolfschoten et al.
breaks, presentations and introductions should be included in this sequence. For each
activity, additional information should be specified. For instance in the example of the
LeafHopper thinkLet, the Collaboration Engineer should specify the type of ideas that
need to be brainstormed, the categories in which the group should brainstorm ideas,
the topic of the brainstorm in general and the time for the thinkLet. For example, if
the LeafHopper were used to have a group brainstorm requirements for a new tool,
categories could be hardware requirements, software requirements and network
requirements, while the time for the activity could be one hour.
Once all activities are specified, the collaboration process design can be validated
based on a number of criteria. Some characteristics of thinkLets could be used to
determine generic characteristics of the entire process design such as its duration,
complexity for the practitioner and for the group, and the amount of discussion which
affects acceptance of the process. This validation activity could be automated, such
that an alert is issued when the collaboration process design does not meet some or all
of the criteria. Other validation criteria could be offered as a checklist for
consideration by the collaboration engineer. After validation, a process manual for the
practitioner should be created containing a process model, the script for each activity,
a summary of the analysis, and the cue cards [25]. Furthermore, the execution of the
collaboration process can be supported with tools such as Group Support Systems, for
which the information of the activity scripts needs to be instantiated as well.
In summary, we propose that a CACE tool, a specific type of CAPE tool, a tool to
support collaboration process design following the Collaboration Engineering
approach, should offer functionality to:
While a CACE tool is primarily targeted for collaboration engineers, facilitators who
support ad hoc thinkLets-based workshops could also use it. However, they would not
need a manual for each collaboration process. Only an agenda for the process would
Computer Aided Pattern-Based Collaboration Process Design 7
suffice. An agenda is also a useful output for Collaboration Engineers to pilot their
process designs and to validate them by sharing them with colleagues.
Over the past five years, the Collaboration Engineering research community has
developed a number of ‘paper-based’ tools to support the Collaboration Engineering
efforts. First the design approach as described above, has been developed and
evaluated based on feedback from facilitators and students using the design approach
[27, 29]. The thinkLet pattern concept has been introduced by Briggs and de Vreede
[30-32], and has been further developed into its current form [10, 11, 25, 33-36]. To
support the analysis of collaborative work practices, we asked facilitators about the
information required to design a collaboration process [29]. For the selection and
combination of thinkLets we performed a pattern analysis to derive frequently
occurring thinkLet combinations, i.e. we identified patterns in thinkLet sequences
(Kolfschoten et al. 2004a) and we performed in-depth interviews with facilitators to
elicit the criteria they use to choose among thinkLets [26, 33, 37]. The insights on
choice criteria also helped us to develop a validation framework. Finally, the
facilitation process model to visualize thinkLets-based collaboration process designs
has been introduced [38], and a first design support prototype tool has been developed
[39].
Based on the insights from the above studies and the requirements discussed in the
previous section, we created a conceptual model of the CACE tool (figure 1). The
model is an object model, but describes the functionalities on a high level than
required for functional requirement specification. In the subsections below, we
elaborate on the key components of the CACE tool in more detail.
8 Kolfschoten et al.
ThinkLetLibrary
CEProjectLibrary -ThinkLetRecord
-CEProject -language
+addProject +addThinklet
+saveProject
+editProject ProcessSequenceBuilder
contains
uses
contains +add activity ThinkLetRecord
+specify activity
CEProject -thinkLetdetails*
uses +choose thinkLet
-thinkLetmodifiers
+import thinkLet
-Projectname -thinkLetexperience
+instantiate thinkLet
-Author
+edit thinkLet +addthinkLetexperience
-ParticipantList
+import modifier +edit thinkLet (restricted)
-Language
+add dataflow connection
+choose language +add process flow connection
+specify participants +specify transition
+set participant rights +add decision
+create output document uses
contains uses
ChoiceTool
ProcessSequence
-Patternclassificationlist
-ProcessSequence -Resultclassificationlist
-Model view -Thinkletlist
uses
-Process overview -Alternativelist
-Specification view -Combinationlist
-output document folder -Combination value
+create process sequence +select list
+create output document +select list item
+narrow thinkLet set uses
+save output document
+e-mail output document +view thinkLet details
+view thinkLet comparison
+view combination value
contains
+view modifier combinations
ProjectSpecification uses +import modifier
-ProjectDetailRecord ProcessVerificationTool
-Analysis checklist
-qualitycriteria
+specify project details uses +e-mail reviewrequest
+e-mail survey
contains ChoiceVerificationTool
ProjectManagementRecord
+verify thinkLet choice
- projectmanagementrecord OutputDocument +allertchoiceerror
+specify project results
+add participant review
+e-mail survey +edit
+import process sequence
uses
OutputTemplateLibrary
-FacilitationProcessModel
-PractitionerScript
-FacilitationProcessOverview
-ParticipantAgenda
-FacilitationPowerpointslides
-CuecardSet
-ProjectDescription
-ProjectOffer
-ProjectAccount
-GSSExportFile
To keep the pattern language coherent, thinkLets should prescribe alternatives and
they should indicate the strength of combinations with other thinkLets. This
represents a complex aspect of the thinkLet pattern database: when a thinkLet is
added not only the new thinkLet must be adjusted, but also the other thinkLets must
be updated, as (potential) combinations with the new thinkLet must be evaluated. If
the person who added the thinkLet does not know how it will combine with other
thinkLets, experts in collaboration process design should be asked to contribute these
aspects. For this purpose it would be useful to include a wizard that supports the user
though the process of adding a thinkLet.
It would also be useful to store the thinkLet library in multiple languages. If the
system offers multiple languages than language selection should be one of the first
steps in the design process, to make each specification fit the selected language. For
the community using the CACE tool it would be best if the comments on thinkLets
and the thinkLet names are in one language so that a shared meaning of thinkLet
labels remains.
Collaboration Engineers and facilitators that use the pattern language and the CACE
tool should be able to comment on attributes of the thinkLet and to offer suggestions
for alternations of standard attributes of the thinkLets. They can customize the
thinkLets in their design, but should not be allowed to alter the structure of the master
thinkLet. Besides discussing thinkLets, the system should also enable storage of
complete process designs, which can be shared with other designers/facilitators and
with practitioners. These users should be able to comment both on the entire process
design and on the individual thinkLets within the design. The users maintaining the
master thinkLets should regularly check these comments and when necessary alter the
master thinkLet.
access to an evaluation survey and the participant agenda. The project author should
select a language to work in.
4. From a set of alternatives, this can be automatically derived from the above
classifications, allowing the user to choose among alternatives with a similar
result, or with a similar pattern of collaboration.
A specific combination of thinkLets might have specific added value or risks. Such
information should be provided by the CACE tool as well when a combination is
tested. Information about combinations is of course only valid when the output of one
thinkLet is used as input for the next thinkLet. Further, a collaboration engineer could
value functionality that enables him to compare thinkLets on their applicability.
Finally, thinkLets can be modified to create small changes in the patterns of
collaboration they create or in the result they create. Such modifications might also
support the collaboration engineer in selecting a thinkLet. Therefore, the sequence
builder and the choice tool should allow the collaboration engineer to select
modifiers.
Besides a fit to the task and the existing thinkLet sequence, the choice of a thinkLet
should also be aligned with the available resources, the group, and the practitioner.
Key aspects in this respect include (obviously, for some thinkLets other aspects may
affect acceptance by the group participating in the collaboration process, but such
specific considerations should be deliberated by the collaboration engineer based on
the thinkLet description):
• The timeframe.
• The group size.
• The scope of the task.
• The complexity for the practitioner.
• The complexity for the group.
• The available technological resources, especially the availability of parallel input,
anonymity and data processing abilities as offered in Group Support Systems.
To further verify the choice of a thinkLet, the CACE tool could compare information
in the project description with information in the thinkLet. Furthermore, each of these
factors affects the time required for the thinkLet. While the collaboration engineer
should be free to specify the time frame for the thinkLet differently, the system should
calculate a suggested time frame for each thinkLet based on the earlier field
experiences with the particular thinkLet and these factors. When the thinkLet time
estimated based on these factors does not fit the timeframe proposed by the
collaboration engineer, an alert should be given. The same should happen when the
thinkLet does not fit the group size or the complexity it can handle, when it does not
12 Kolfschoten et al.
fit the breadth of the scope, when it does not work without certain resources available
or when it is too complex for the practitioners involved.
Based on the above, not only the thinkLet sequence which determines the process
flow can be created, but also the data flow should also be specified and the decisions
and transitions in the process should be specified. Further, based on the time frame of
the meeting and the time estimation of the individual activities in the collaboration
process design, the starting time and duration can be specified. Yet, starting times and
durations may be altered, and there should be an option to automatically update the
other times in the process sequence.
For some thinkLets several aspects need to be further specified. First of all, as
mentioned earlier, most thinkLets have variations named modifiers. Modifiers can be
selected, and they also alter the results, patterns of collaboration and in some cases the
time and resources required for the step. Once the modifiers are selected, some other
aspects of the thinkLets may need to be instantiated:
• Roles involved in the process can be labeled.
• Constraints to the data input or modifications can be specified such as topics,
category names, and voting criteria.
• Capabilities should be instantiated with resources available.
All the above information should be instantiated with a wizard for each element that
could require instantiation. Besides instantiation, the collaboration engineer might
want to alter some descriptions or information in the thinkLet to further customize the
design. It should therefore also be possible to edit the thinkLets in the project record
without changing the same thinkLet entries in the thinkLet library.
Besides the model and the design description there are several other output documents
that could be created. These may include the script for the practitioner, the slides for
the introduction of the collaboration process, an agenda or invitation for the
participants, a project offer or account, and an export document that can be imported
into a Group Support System to instantiate the capabilities required for the process. A
key output template that should be created is the manual for practitioners. This
Computer Aided Pattern-Based Collaboration Process Design 13
manual has four elements: the facilitation process model, the script, the cue cards, and
a summary of the analysis as background material [25]. For each of these elements
text selected from the thinkLet master in the database should be instantiated and
displayed in a specific format so it can be printed in a useful way. Since the script
might need to be altered for a specific collaboration process or context, each aspect of
the script should be editable. Users should be able to create new output document
templates. It would furthermore be useful to be able to store a collaboration process
design in different document types such as word, pdf, and html.
4.6 Validation
A number of thinkLets attributes can be used to perform an overall assessment of the
collaboration process design, for example in terms of its complexity, the amount of
discussion, the amount of input required from the participants, and the need for
consensus or agreement. These aspects give a first indication of the acceptance of the
process. The choice verification system described above will check for most of the
‘resource fit’ and alert the collaboration engineer when the process does not fit the
resources available. It might also be possible to let the system render a list of skills
required to run the process to evaluate the fit to the practitioner. Furthermore, for each
thinkLet a list of challenges is specified which indicates what might go wrong or what
might be difficult. This set can be used to assess the acceptance and transferability of
the process, and may additionally give an indication of the predictability of the
process. Efficaciousness will be most difficult to test, but since this criterion is
leading in the selection of thinkLets it should pose less of a problem.
For each quality dimension of the collaboration process design (as described above:
efficacious, predictable, transferable, reusable, acceptable) the criteria are specified
and can be used as a framework for evaluation. A collaboration engineer could go
through this a list to validate his own design, but the list can also be used to ask users
or other collaboration experts to validate the process design. In this case the
evaluation framework could be used in a similar way as the analysis checklist, where
questions are selected for respondents and the design with the script are send out for
review.
5. Conclusions
References
17.Castano, S., Antonellis, V.d., Melchiori, M.: A methodology and tool environment for
process analysis and reengineering. Data and Knowledge Engineering 31 (1999) 253-278
18.Couger, J.D.: Creative Problem Solving and Opportunity Finding. Danvers, Mass: Boyd and
Fraser (1995)
19.Ackoff, R.L.: The Art of Problem Solving. John Wiley & Sons (1978)
20.Mitroff, I.I., Betz, F., Pondly, L.R., Sagasty, F.: On Managing Science In The Systems Age:
Two Schemas For The Study Of Science As A Whole Systems Phenomenon. TIMS
Interfaces 4 (1974) 46-58
21.Simon, H.A.: The Structure Of Ill Structured Problems. Artificial Intelligence 4 (1973) 181-
201
22.Checkland, P.B.: Systems Thinking, Systems Practice. John Wiley & Sons, Chichester
(1981)
23.Sol, H.G.: Simulation in information systems development. Rijksuniversiteit Groningen,
Groningen, the Netherlands (1982)
24.Briggs, R.O., Kolfschoten, G.L., Vreede, G.J. de, Dean, D.L.: Defining Key Concepts for
Collaboration Engineering. Americas Conference on Information Systems, Vol. 12. AIS,
Acapulco, Mexico (2006)
25.Kolfschoten, G.L., Hulst, S. v.d.: Collaboration Process Design Transition to Practitioners:
Requirements from a Cognitive Load Perspective. In: Seifert, S., Weinhardt, C. (eds.):
International Conference on Group Decision and Negotiation. Universtatsverlag Karlsruhe,
Karlsruhe (2006)
26.Kolfschoten, G.L., Rouwette, E.: Choice Criteria for Facilitation Techniques: A Preliminary
Classification. In: Seifert, S., Weinhardt, C. (eds.): International Conference on Group
Decision and Negotiation. Universtatsverlag Karlsruhe, Karlsruhe (2006)
27.Kolfschoten, G.L., Vreede, G.J. de, Chakrapani, A., Koneri, P.: A Design Approach for
Collaboration Engineering. In: Briggs, R.O., Nunamaker J.F. Jr. (eds.): First HICSS
Symposium on Case and Field Studies of Collaboration. in press, Kauai (2006)
28.Kolfschoten, G.L., Vreede, G.J. de, Briggs, R.O., Sol, H.G.: Collaboration Engineerability.
In: Kersten, G.E., Rios, J. (eds.): Group Decision and Negotiation conference. Concordia
University, Mt Tremblant (2007)
29.Kolfschoten, G.L., Hengst, M. den, Vreede, G.J. de : Issues in the Design of Facilitated
Collaboration Processes. Group Decision and Negotiation (in press)
30.Briggs, R.O., Vreede, G.J. de, Nunamaker, J.F. J:r. Collaboration Engineering with
ThinkLets to Pursue Sustained Success with Group Support Systems. Journal of
Management Information Systems 19 (2003) 31-63
31.Briggs, R.O., Vreede, G.J.d., Nunamaker, J.F.J., David, T.H.: ThinkLets: Achieving
Predictable, Repeatable Patterns of Group Interaction with Group Support Systems. Hawaii
International Conference on System Sciences. IEEE Computer Society Press, Los Alamitos
(2001)
32.Vreede, G.J. de, Briggs, R.O.: ThinkLets: Five Examples Of Creating Patterns Of Group
Interaction. In: Ackermann, F., Vreede, G.J. de. (eds.): Group Decision & Negotiation, La
Rochelle, France (2001) 199-208
33.Kolfschoten, G.L., Appelman, J.H., Briggs, R.O., Vreede, G.J. de: Recurring Patterns of
Facilitation Interventions in GSS Sessions. Hawaii International Conference On System
Sciences. IEEE Computer Society Press, Los Alamitos (2004)
34.Kolfschoten, G.L., Briggs, R.O., Appelman, J.H., Vreede, G.J.d.: ThinkLets as Building
Blocks for Collaboration Processes: A Further Conceptualization. In: Vreede, G.J.d.,
Guerrero, L.A., Raventos, G.M. (eds.): CRIWG, Vol. LNCS 3198. Springer-Verlag, San
Carlos, Costa Rica (2004) 137-152
35.Kolfschoten, G.L., Santanen, E.L.: Reconceptualizing Generate ThinkLets: the Role of the
Modifier. Hawaii International Conference on System Science. IEEE Computer Society
Press, Waikoloa (2007)
16 Kolfschoten et al.
36.Kolfschoten, G.L., Houten, S.P.A. van.: Predictable Patterns in Group Settings through the
use of Rule Based Facilitation Interventions. In: Kersten, G.E., Rios, J. (eds.): Group
Decision and Negotiation conference. Concordia University, Mt Tremblant (2007)
37.Kolfschoten, G.L., Rouwette, E.: Choice Criteria for Facilitation Techniques. In: Briggs,
R.O., Nunamaker J.F. Jr., (eds.): First HICSS Symposium on Case and Field Studies of
Collaboration, Kauai (2006)
38.Vreede, G.J. de, Briggs, R.O.: Collaboration Engineering: Designing Repeatable Processes
for High-Value Collaborative Tasks. Hawaii International Conference on System Science.
IEEE Computer Society Press, Los Alamitos (2005)
39.Kolfschoten, G.L., Veen, W.: Tool Support for GSS Session Design. Hawaii International
Conference on System Sciences. IEEE Computer Society Press, Los Alamitos (2005)
40.Techquila: http://www.techquila.com/index.html (2007)