
The success of workflow projects to a large extent depends on how workflow application development processes are planned, organized, and conducted. Based on lessons learned from problems encountered during real-world workflow application development projects, this paper presents a reference model for workflow application development processes, which guides project managers and developers through the complex structure of these processes, with the aim of developing more adequate, usable, and reliable workflow applications.
The interoperability of systems to support cooperative work requires moving beyond purely technical issues; it also concerns the means and practices that users adopt to articulate their cooperative activities. Articulation has to be supported by a technology which focuses on this higher level of interoperability. This claim is motivated by observing the articulation process of users in real cooperative work practice. Based on this study, the functionality for this technology was designed to help users reconcile different handling and perspectives on shared objects in their cooperative work. The paper presents the architecture of an application infrastructure centered on the identified interoperability issues and focuses on the design of a specialized module, called reconciler, which provides the above functionality. The current state of its implementation together with identifying open research problems conclude the paper.
Knowledge discovery in databases (KDD) is an increasingly widespread activity. KDD processes may entail the use of a large number of data manipulation and analysis techniques, and new techniques are being developed on an ongoing basis. A challenge for the effective use of KDD is coordinating the use of these techniques, which may be highly specialized, conditional and contingent. Additionally, the understanding and validity of KDD results can depend critically on the processes by which they were derived. We propose to use process programming to address the coordination of agents in the use of KDD techniques. We illustrate this approach using the process language Little-JIL to program a representative bivariate regression process. With Little-JIL programs we can clearly capture the coordination of KDD activities, including control flow, pre- and post-requisites, exception handling, and resource usage.
In a previous paper[11], we presented COCA (Collaborative Objects Coordination Architecture) as a generic framework for developing collaborative systems. COCA advocates separation of coordination policies from general-purpose computations in collaborative systems so that the former can be modeled in a high-level specification language. Reuse of both coordination policies and collaboration tools can be achieved.This paper overviews the COCA model and focuses on the application of COCA in building real-life systems. We prototyped a modest set of tools for electronic meeting systems (EMSs) to show how they can be used to support both unstructured and structured meetings, with only changes in the coordination policies and no changes to the tools themselves. A subset of Robert's Rules of Order[21] was formalized and specified as an example of control of formal structured meetings. Finally the current status and the future directions are summarized.
Temporal workflow management is important for processes that are time-driven. Claim handling, which requires the documentation, diagnosis, and resolution of customer claims due to faulty products or unsatisfactory services, is an example of such a process because fast turnaround is critical for customer satisfaction. However, little research has been reported in this area, especially at the policy level. In this paper, we develop a framework for temporal workflow management, which includes issues such as turnaround time predication, time allocation, and task prioritization. We propose also the use of reward functions to guide workers' behavior with the goal of increasing efficiency while allowing flexibility.
The development of workflows (WFs) for complex organizations to be interfaced with existing information systems requires a specific methodological approach to guarantee benefits and effectiveness of the final results. In fact, the WF should be well integrated in the organization both from the technical and the organizational point of view. While the characteristics of the Workflow Management System (WFMS) platform adopted in the implementation are relevant to establish the boundary between the workflow system and other related applications, it is also important that the analysis and design phases are developed independently of those characteristics.The WF development methodology proposed in this paper starts with an analysis phase based on UML, adopted for business process descriptions and business goals. The design phase proposes a pattern-based approach to workflow schemas design, based on the WIDE WF model. This model allows a flexible representation of the exceptions which may occur during WF execution. It also considers the interaction of the WF with external applications and information systems. Finally, the paper briefly discusses the mapping to commercial and prototype WFMSs.
Today's Workflow Management Systems (WfMS) do not distinguish between an external view of a process that is visible outside the organisation and its internal details. Their interfaces are generally aimed at the internal user. This is a problem if one organisation (provider) wants to perform a process on behalf of another (requester) so that it can be initiated and accessed by the requester through an automated interface and, vice versa, that the results can be reported back.This issue gains importance as WfMS are in widespread use today and the trend to outsource non-core business leads to increased service activity between companies. Organisations do not want to make internal information generally available to business partners nor do they wish to restrict their ability to conduct business internally. If organisations enter a business relationship, they define in an agreement the circumstances in which the requester might initiate a process in the provider and exchange further information during the process's performance.This paper describes the Virtual Enterprise Co-ordinator (VEC), a concept for the setup and management of gateways to WfMS-enacted processes for outside organisations on the basis of simple agreements. Using VEC, organisations can provide external partners with a controlled way of accessing WfMS-enacted processes, while retaining the freedom to change the internal details of those processes.
Practical workflow systems need to be able to tolerate deviations from the initial process model because of un-anticipated situations. They should also be able to accommodate deviations in the format of the forms and data being manipulated. We offer a framework for treating both kinds of deviations uniformly, by applying ideas from programming languages (with workflow agents as potential on-line exception handlers) to workflows that have been reified as objects in classes with special attributes. As a result, only a small number of new constructs, which can be applied orthogonally, need to be introduced. Special run-time checks are used to deal with the consequences of permitting deviations from the norm to persist as violations of constraints.
A new programming paradigm named "Vortex" is introduced for specifying a wide range of decision-making activities including, in particular, workflows. In Vortex workflows are specified declaratively. A particular emphasis is on "object-focused" workflows, i.e., workflows focused on how individual input objects should be processed within an organization. Such workflows arise commonly in practice, including insurance claims processing, and many electronic commerce applications, and in the area of Customer Care, e.g., web-based storefronts. Vortex workflows are "attribute-centric", because they are centered around how the attribute values for an input object are gathered and computed. Initially, only a few attributes of an input object have assigned values. During processing of the object, additional attribute values may be assigned by external modules, or by internal modules, including "decision modules". Decision modules include "attribute rules" that specify contributions to specific attribute values; these are combined with one of a broad family of available semantics. In Vortex, enabling conditions are used to determine what attributes should be evaluated. A novel choice-based execution model provides a general framework for optimization strategies. The use of enabling conditions, attribute rules and declarative semantics makes Vortex workflows easier to modify and refine than traditional, procedurally specified workflows. Vortex supports modularity and permits the natural intermixing of Vortex workflows with traditional, procedural workflows. The paper introduces a novel spreadsheet-like interface for dynamic browsing of Vortex executions.
Finding a useful abstract representation is fundamental to solving many difficult problems in software engineering. In order to better understand how representations are actually used in key collaborative software engineering tasks, this empirical study examined all of the spoken representations of software behavior in 9 domain analysis sessions. It found that about 70% of them were metaphorical, representing system behavior as physical movement of objects, as perceptual processes, or in anthropomorphic terms ascribing beliefs and desires to the system. The pattern of use of these representations indicates 1) that they were not merely temporary placeholders, but rather their use persisted even when a specialized and more formal vocabulary had been developed, and 2) the metaphoric descriptions appear to reflect actual use of metaphor, rather than just a choice of vocabulary. The use of metaphor is explained in terms of how well they serve human cognitive abilities and collaborative needs. The predominance of metaphorical representations in synchronous collaborative sessions raises important issues about the possible misleading effects of metaphorical thinking. It also raises questions about the compatibility of the spoken representations with other representations (e.g., diagrams, specification languages) that trigger, and capture the results of, the verbal collaborative work.
The effort in software process support has focused so far on modeling and enacting processes. A certain amount of work has been done, but little has reached a satisfactory level of maturity and acceptance. In our opinion, this is due to the difficulty for a system to accommodate the very numerous aspects involved in software processes. A complete process support should cover topics ranging from low level tasks (like compiling) to organizational and strategic tasks. This includes process enhancement, resource management and control, cooperative work, etc. The environment must also be convenient for software engineers, team leaders, managers and so on; it must be able to describe details for efficient execution, and be high level for capturing, understanding, etc. As a matter of fact, the few tools that have reached sufficient maturity have focussed on a single topic and addressed a single class of users.It is our claim that no single system can provide a satisfactory solution except in a clearly defined subdomain. Thus we shifted our attention from finding the universal system to finding ways to make many different systems cooperate with their associated formalisms and process engines.This paper presents a novel approach for software process support environments based on a federation of heterogeneous and autonomous components. The approach has been implemented and experimented in the APEL environment. It is shown which architecture and technology is involved, how it works, which interoperability paradigms have been used, which problems we have solved and which issues are still under study.
In large software systems such as digital libraries, electronic commerce applications, and customer support systems, the user interface and system are often complex and difficult to navigate. It is necessary to provide users with interactive online support to help users learn how to effectively use these applications. Such online help facilities can include providing tutorials and animated demonstrations, synchronized activities between users and system supporting staff for real time instruction and guidance, multimedia communication with support staff such as chat, voice, and shared whiteboards, and tools for quick identification of user problems. In this paper, we investigate how such interactive online help support can be developed and provided in the context of a working system, the Alexandria Digital Library (ADL) for geospatially-referenced data. We developed an online help system, AlexHelp!. AlexHelp! supports collaborative sessions between the user and the librarian (support staff) that include activities such as map browsing and region selection, recorded demonstration sessions for the user, primitive tools for analyzing user sessions, and channels for voice and text based communications. The design of AlexHelp! is based on user activity logs, and the system is a light-weight software component that can be easily integrated into the ADL user interface client. A prototype of AlexHelp! is developed and integrated into the ADL client; both the ADL client and AlexHelp! are written in Java.
Electronic conversations often seem less polite than spoken conversations. The usual explanation for this is that people who are not physically copresent become depersonalized and less inhibited by social norms. While this explanation is intuitively appealing, we consider another possibility, based on the costs of producing "polite" utterances when speaking versus when typing. We examined a corpus of conversations generated by 26 three-person groups who interacted either face-to-face or electronically to do a collaborative memory task. We coded hedges (which mark an utterance as provisional) and questions (which display doubt or invite input from others), as people presented their own recollections, accepted, modified, or rejected those of others, and tried to reach consensus. Both of these devices are associated with politeness. For most people, hedging is more difficult when typing than when speaking because additional words are required, while marking an utterance as a question is equally easy in both media. The two groups made somewhat different use of these devices: Face-to-face groups hedged more than electronic groups, but both groups used questions just as often. We discuss how these and other differences emerge from the costs and affordances of communication media.
Distributed engineering of complex software artifacts require collaboration of multiple independent stakeholders over extended periods of time. The independent decision changes, task executions, resource usages and other activities of the stakeholders may interact causing problems where mutual dependencies exist due to global activity ordering, resource sharing, product integrity, and other global constraints. Stakeholder coordination is required to ensure satisfaction of the global constraints. The paper presents an approach (WWAC) to the problem of stakeholder coordination for distributed design decision making that exploits an active meta-model arising out of stakeholder collaboration and captures abstractions of design decisions and their dependencies.
Herbal-T introduces an architecture where Internet component integration, interoperability, and component instantiation are the base for information flow coordination. This architecture introduces a framework for combining object functionality across the Internet to create new Internet applications. These new applications are defined in terms of active relationships. The concept of active relations as found in active databases is extended to define a new paradigm for creating Internet applications. In addition, Internet component interoperability is achieved using Applets, Java Applications, CORBA and RMI. This paper presents how the Herbal-T architecture support extends active relations to create an integration, interoperability, and reusability framework.
Collaborative systems need to provide some means for users to be aware of peer activities. Common approaches involve broadcasting events generated as a result of a particular user's actions at the interface to others. Rather than flooding users with information about all activities occurring in the shared environment, filtration techniques allow each user to be exposed to relevant awareness information. Such techniques are often based on user configurable agents. Unfortunately, these so far do not support satisfactorily the improvisational nature of collaborative activities. This is because user configuration is effective mainly in cases where interactions can be anticipated and where configuration plans can be drawn. It is also difficult for a configurable agent to capture the diversity and the complex interrelationships between collaborative activities. In highly dynamic collaborative environments, the need to synchronise configurations with rapidly evolving needs imposes a heavy task load on participants. In Moksha, our prototypical multi-user desktop, this problem is addressed by extending the desktop metaphor and automating the filtration control process so that it becomes ubiquitous to the user. The cross-client linkage of the desktop interface elements, the use of multi-media and its browsing techniques are the main components underlying our strategy.
Scalability to large, heterogeneous, and distributed environments is an important requirement for workflow management systems (WfMS). As a consequence, the management of the configuration of a WfMS installation becomes a key issue. This paper proposes an approach for managing the configuration of WfMS together with an assignment strategy for workflow instances. Separating the logical issues of the workflow model from the physical configuration of a WfMS is the basis of our strategy. A formalization of physical organizational requirements in a WfMS configuration covering access rights, usage policies, and costs for the access to WfMS servers is presented and used in the assignment strategy for workflow instances. The results of our approach fit well for many existing WfMS and also for the reference architecture of the Workflow Management Coalition.
This study reports an experiment that examines the effects that face-to-face meetings (FF) and two modes of videoconferencing, switching video (SV), which shows only the current speaker, and mixing video (MV), which shows each group member simultaneously, have on turn distribution and the quality of small group decision making. The subjects were 200 undergraduate students and the task was the NASA Moon Survival Problem. Multiple comparison tests indicated that MV yielded significantly higher group decision quality than FF. The other pairs, FF-SV and SV-MV, showed no significant differences. With regard to turn taking, there was almost no difference between SV-MV.
Today, organizations deal with an ever-increasing number of documents that have to be archived because they are either related to their core business (e.g., product designs) or needed to meet corporate or legal retention requirements (e.g., voucher). In this paper, we present the architecture and prototype implementation of SaveMe, a document archival system that is based on network-centric groupware such as Internet standards-based messaging systems. In SaveMe, the actions of archiving, retrieving, and classifying documents are similar to the actions of sending, retrieving, and classifying email into folders. SaveMe leverages existing messaging infrastructures - the one common denominator sitting on every computer is email - and, thus, it does not require individual users and IT personnel to learn a new technology. The resulting environment is not intrusive, easier to administer, and a lot easier to deploy.
Flexibility has recently grown to be one of the major research topics in the area of workflow management. In this paper we focus on flexibility of workflow management applications, in contrast to flexibility of the implementation of workflow management systems. In a case study we show the necessity of flexibility in workflow management applications. This flexibility can roughly be classified into flexibility, which is provided by the workflow type, and flexibility, which goes beyond the scope of the workflow type and has additionally to be provided by a workflow management system. We call this flexibility by selection and flexibility by adaption, respectively. We point out that the modeling process as a main aspect of flexibility by adaption has to be treated as a CSCW scenario. The classification leads to a structured overall concept for flexibility in workflow management applications.