» Startsidan/
senaste numret


» Tidigare nummer

» Varför Rockad?

» Kontakta redaktionen

» Teknik/
hjälpprogram


E-post: rockad@rockad.nu

Copyright © 2001, Rockad.

Ideas regarding an event-driven workflow model

Tech Dr Alex Jonsson
NADA/Royal Institute of Technology
Stockholm, Sweden

The term »event driven«, in a publishing or information sharing context, refers to system processes that react as they receive system input rather than at periodic intervals, such as a stand-alone mail system client would. Some messaging channels mentioned in the article, such as the post office protocol of e-mail (POP), are not themselves event-driven by nature, while others are truly event-driven, such as SMS (short message service on a cell phone), mini-call systems or a fax service. The fundamental idea is to construct a system engine that can run its processes on occurrence, hence bringing the real-time functionality of, e.g. stock exchange information and financial support systems, to other information sharing systems in various time-critical environments.

Already [McQuail 1984] argued that the use of new technologies would cause a shift from »addressing« and »dissemination« communication settings to more »exchange/interaction« patterns. In proceeding studies, interviews and work-studies at Swedish companies showed that many employees who’s work descriptions involved information sharing, found it difficult and time-consuming to find the right recipients for various sorts of information within the company structure. Managing e-mail lists, fax and letters meant an hour of work, if the recipient groups were large. Secondly, users continuously enter or leave the corporation, change job descriptions due to transfers and advancements that require constant updating of the lists themselves. Time is of the essence in most business sectors and faster information flows is a key to faster organizations.

In the best of worlds

An easy way to share information with others would be to publish information, with any priority, just as it appears, to everyone, all the time. Without too much thought, it is clear that such a proposal quickly would lead to an information overflow and nobody would get much of anything, even in an organization with as little as ten people. Someone must filter the flood of information by setting priorities and other message metadata. In a small group, each user would know what information should be sent and to whom. In a larger organization, this task is carried out by one or several information departments. Professionals sit in editorial environments and gather information that is compiled and validated. The information is formed into various types of messages and is made ready for distribution. Recipients are chosen from circulation lists, stating who is assumed to want what information according to their job descriptions or responsibilities. E-mail is a common publishing channel, along with fax and physical paper-based distribution methods. Publishing on the corporate intranet is also common, but mostly for common information of interest to larger groups within the organization and not for targeting individuals.

It is the assumption of this model study that it would be better if everyone could make their own lists of what subjects and topics they are interested in and store their preferences in a profile. Let us say that we have such an organization and that the employee Jack is interested in receiving economic information on a daily basis, with daily updates from the competitor analysis division. Jack prefers to have this information sent to his fax machine at 9 am. Jill is interested in economic updates too, but wants them sent but once every Monday morning via another channel – the e-mail system. Jill also wants to receive messages from the shipping department each time a truck enters through any of the main gates. She could then subscribe to the subject “Deliveries” to receive those messages on her cell phone via the SMS (short messaging service) on occurrence. The two users, Jack and Jill, could well be allowed to account for their own preferred receiving channel as well as their own preferred periodicity (periodic or instantly) for each topic area on a message subject level in each user’s profile.

Making each user responsible for their information flows does, in a sense, counteract the concept of a hierarchical information structure, which becomes much flatter. Flat means that more people will have access to the same information faster. Faster information flows lead to faster organizations that can adapt more quickly to change. The information distribution mechanisms, the information infrastructure, would have to be redesigned altogether, since it no longer will filter incoming information or distribute it according to the old standards. A staff member of the information department, if there was one, changes from acting as a filter to more of an information guide in the information flow.

The entire system functionality becomes driven by the end-users and their profile settings rather than from the publishing end. If there are not any active user profiles present, no messages are sent. Therefore, it may be wise to start by using a standard subscription profile for each user that matches their current job description rather than a blank profile. This would require a standard profile for a salesperson, manager, maintenance staff and so on. Using these standard profiles as a stepping-stone, the individual user could then alter their profile by adding subjects according to interest, change the receiving channel or message periodicity. If such a system was modeled and implemented, there are a number of items that need investigating, where corresponding answers are found in the user organization. Finding them is an organic and iterative process, but the initial values and responsibilities can be identified by a third party only with great difficult, so these answers will be need to be established within the user community:

  • Which user is allowed to read and/or write to each given subject?
  • Who is allowed to administrate the users?
  • Who is allowed to administrate the subjects?

Even if a messaging system is technically flawless and easy to use, all users have to be properly introduced to the technology and its applications. This requires information campaigns, training and proactive management. Having a system used by part the staff would increase segregation and knowledge gaps rather than enhancing information flows and creating faster organizations. There is also the time aspect, just as [Fidler 1997] states in his book Mediamorphosis; there are no successes made over night. There is a traditional Norwegian saying that »things take time« – even with you work with potential killer applications. There is a built-in bias against new technology lodged in the heart of an organization, but not when it comes to developing products and services for the market. Seeing to one’s own organization’s communication needs takes a truly open mindset.

The publishing platform

There are several requirements to the specifications of a publish-subscribe framework with regards to system functionality. The following components are needed to ensure system functionality:

  • A computer network with appropriate bandwidth and latency characteristics, that allows real-time messaging.
  • A database to store messages in.
  • A database to store user privileges and publishing schedules in.
  • A neutral message format that allows parsing to and from various message formats.
  • A number of translation mechanisms suitable for translating between the neutral data format and proprietary formats, e.g. e-mail, fax, web, handheld devices.

The selection of network technology was, in part, chosen on philosophical terms, where the technology in a way mirrors the system benefits for the user organization in a timely manner. Namely, if messages were to be filtered so that each user was to receive only relevant information, the network itself might as well be designed in a similar fashion. Routing data only through those network nodes that have requested a certain data packet or stream is known as multicasting. Not all TCP/IP networks support this feature and the technology is not suitable for all data types. A network node, such as a router, is equipped with a dynamic list of receiving parties who subscribe to certain data. This data is tagged with a specific identifier in their envelopes or headers. This prevents data packets from being broadcast to all network devices on a subnet, which in turn lessens the risk of network congestion, similar to information congestion in a user’s in-box.


The user profile manager acts as an information police, allowing relevant information to pass while the noise never reaches the user.

By setting up a system with both read and write privileges for all users makes the system role-based in its true sense. This means that at any given time, a user is able to act as the publisher of information or as an information consumer. If messages can be translated both to and from a neutral and yet rich format, such as DTD (document type definition) in SGML (standard generalized markup language) or XML (extensive markup language), publishing can also be performed in a number of formats. One application could be an intelligent mail service with more functionality than a standard list server for e-mail groups. Going even further, publishing could easily be carried out by non-humans as well, as long as the publishing entity has means of communicating in a suitable format.

It’s to be regarded as a system – rather than a product

Models like the event-driven information system cannot be brought to the market as a product, just as you cannot sell a 400 horsepower turbo engine at the local car dealer. It is, rather, part of a system, which in turn, gives the driver a good driving experience. It is easy to organize a data-gathering project, the system’s engine. The engine cannot drive the car; it is the driver’s preferences that make a car travel towards the driver’s desired destination.

The flow of information might also be seen as a powerful waterfall of data, but without a power plant and turbine to convert data into knowledge we are left with the beautiful cascades to admire [Gelernter 1992]. The powerful flow needs control, just as information flow needs analysis. Testing a system in a field study without reflection and careful introduction to the user community will yield interesting results but not provide those characteristics of informational backbone necessary in a modern organization. To provide some starting points for further work and show the complexity of the task, some of the foreseeable issues are raised and discussed.

Subjects, construction and maintenance

This is one of the most central issues, and the area in which a system designer has to gain knowledge of the end-user organization at hand. Just as a public park architect can’t predict were the footpaths will wind in ten year’s time, the designer can’t know which subjects need sub-levels, which subjects will remain tactile and where other measures will be needed to maintain active information flows in certain subject areas. By planting grass everywhere without paths and watching where people go, organic paths will emerge. Likewise, by starting with a few initial given subjects, the information structure will grow incrementally, perhaps wildly at times, but in a manner mirroring the organism of the organization.

User profiles, creating and updating

Taking care of your user profiles could be like taking care of your computer files, computer desktop and bookmark files. Something you do in the pause between two phone calls or while waiting for a printout. It could also be the matter of a more active choice, to enhance your information flow progressively by extending the subscriptions in your profile. Here, simple methods could well be the best: Imagine that you could tell what information your colleagues have received. Better yet, all information that your boss spent more than ten minutes reading. In an open organization, the possibilities are endless and the use of collaborative filtering techniques is just one option of many, once you have a publishing platform readily available.

One way of making the task of profiling more appealing is to let each user have several profiles for use in the office, in meetings, while traveling, during holidays and so fourth. Features such as these in the system will make daily life easier in a world where »24-7« accessibility is an implied but required condition of professional life. Internet banking, for example, became a success, not for its ease of use but because it served a purpose; people could now carry out their financial transactions at any hour, anywhere, using their own desktop client. The human banking clients needed to learn new tools, handle codes and to carry out the task themselves rather than slipping their bills to a cashier who did it for them behind a slab of marble.

However, statistics showed that most customers thought it worth the trouble and, at the end of the day, the Swedish banking corporations saved a lot of money by letting the customer do all the work. They could close down local offices and, in some cases, even let the customer pay for the service in the process. With an information system, such as the one described in detail in paper V, there must also be a clear purpose, a reason to participate actively. The motive here could well be just to give each end-user an increased hit rate for the kind of information required in his daily life, less noise and, in time, larger areas of interest as new areas of potential interest become accessible at the click of a mouse.

Receiving is not the same as understanding

The event-driven publishing system is meant to allow individuals to receive the right information at the right time and in the right channel. This also allows them to act upon the information given, since the system has increased the signal-noise ratio of information. Nevertheless, in order to act on a message, it must be received, presented, interpreted and set in a context where it is meaningful.

Since the system described is role-based, the information consumer can instantly act as a publisher and give a response to the received message. In some cases, this can be done using the same channel, e.g. an e-mail system. In other cases, another channel is used. The system incorporates the means for bi-directional communication; still, it is the individual who is responsible for the flow of information, both incoming and outgoing. The system itself is blind and can only set priorities and possibly profile overrides, i.e. subjects that all users must subscribe to and system messages that are sent in many channels.

Having an entire database connected to one fax machine is not a great idea, knowing that it takes approximately half a minute to send a single page. In an organization with many fax recipients; an array of computers with fax capabilities is preferred. In a system where messages are cast to an arbitrary number of recipients, the user database could well be divided or mirrored to a number of redundant servers. Implementation of a message blocking functionality, preventing identical messages to reach the same user, would also bring down the amount of noise in the system.

When studying the information flows of an organization, all kinds of system anomalies may surface, from technical to organizational and everything from cultural issues to management issues. The most important expected outcome of implementing an event-driven system model, is there would be no designated publishers and receivers of information within the organization – there will only be participants in the information flow that can take any role at any given time.

References

  • McQuail, D. Communication, 2nd edition, Longman, London, 1984
  • Fidler, Rm, Mediamorphosis – understanding new media, Pine Forge Press, CA, USA, 1997
  • Gelernter, D, Mirror worlds – the day software puts the universe in a shoebox…how it will happen and what it will mean, Oxford University Press, New York, 1992