X
Business

Resilient: Making processes into objects

With so many companies having foundered trying to automate corporate processes, what makes Resilient any different? Esther Dyson examines this latest attempt at gaining control of business processes--and why it might actually succeed.
Written by Esther Dyson, Contributor
This piece excerpted from "Meta-mail: A Medium for Meaning," the latest edition of Esther Dyson’s Release 1.0 newsletter. Click here to download a free executive summary of the issue.

COMMENTARY--Many companies have foundered trying to automate corporate processes, warn our VC friends. So we're not yet ready to declare Resilient a success, despite enthusiastic response to pilot deployments focused on governance, management and compliance at organizations ranging from a mid-sized startup to a global Fortune 100 manufacturing firm and a large U.S. government agency. It plans to ship at the end of this year.

Resilient is the third company founded by Jonathan Hare; each of them aspired to enable non-technical business users to define and execute continuously evolving business processes on the fly. This vision, while compelling to customers, investors and analysts, proved easier said than done.

His first try, Evolve Software, was launched in 1995 to enable a radical new generation of "adaptive applications," but evolved into a more traditional enterprise application focused on professional-services automation. It went public in 2000 and later was acquired by Primavera. The second, Consilient, closed down shortly after 9/11.

The third, Resilient, reflects what Hare says he learned at the first two: "Pursuing the Holy Grail of enterprise software is much easier if you use Microsoft infrastructure and tools instead of building your own."

More than that, Resilient's basic user interface is the user's own e-mail, allowing each user to stay mostly in his or her specific, traditional environment and still benefit from--or be guided by--the system's processes. Technically, the system treats processes like objects: Its software-embodied processes can be combined, copied and specialized according to the system's own rules to build arbitrarily complex processes. Moreover, they can be modified on the fly. The software starts with a small set of primitives--entity, thread, message, content, script, link, and tag--that can then be combined and concatenated to build processes a user would recognize, such as a budget approval, a document review cycle, a new-employee hire and so forth. As with Notes, much of the company's success will hinge on a usable set of templates and enthusiastic developers, both in-house at customers and at ISVs.

Of course, users have to agree to play the game and reply via the system, but Resilient makes it easier to do so than not. (It's assumed that somewhere there's an edict saying: "It's not an approval unless you do it through the system.") How does it actually work? Let's say Juan starts a process by clicking on "budget approval." If he isn't simply reusing the budget approval from last quarter, he will designate the file containing the budget, list the users who need to approve it (specifying who must and who may see it) and set some deadlines if he wants. (This new process can inherit most of the features of the old one or reuse other processes whole.)

When Alice gets the message asking for her approval, it arrives as a simple HTML e-mail (no JavaScript). Although this thread message has a familiar appearance with a subject line, message text and attachments, it also includes smart HTML buttons for structured responses such as approve or decline, delegate, acknowledge, defer and abstain. Alice clicks on the one she wants, and ends up in a mail-like browser window where she completes the transaction and is invited to send an accompanying message. She may also have other options for follow-up, depending on the process involved. (The system generally assumes people are online, although it has facilities for offline users.)

The system can be hosted either on a corporate server or by an ASP operated by Resilient or some third party. Behind the scenes, each button actually links to a unique URL, one for each message and recipient response. The process threads automatically collate and summarize such responses to determine, for example, that a specific request was approved based upon the responses of five recipients; notify them that approval was granted; and trigger other messages or actions as a result. The initiator, or anyone else with access, can check (via a thread browser) the status of the process. Each thread is made up of pages (or strands) containing all of the messages, attachments, related threads and links to individuals that are part of or linked to the thread. A thread can be based upon a template that includes scripts or triggers to automate workflow, customize appearance, enforce policies or invoke external applications or Web services.

A power user can learn to create new processes with minimal training; though, like spreadsheet models, process threads can get arbitrarily complex. We did this ourselves, as shown in this screen image. We found it surprisingly easy, if still a little slow and cumbersome--which should be fixable. It gives one the feeling: "Well of course it's easy! This is how it should be done"--but of course it usually isn't.

Every breath you take, every step you make Users can interact with threads entirely through standard, unmodified e-mail clients or Web browsers. Regular users can install add-ins so that threads appear as a native feature of their e-mail client (e.g.. Outlook), supporting a more familiar user interface and getting the performance advantages of a local application. In future releases, Resilient plans native support for RSS feeds and add-ins for standard desktop applications such as Microsoft Office, so threads can automatically keep track of changes to external data.

All this may seem somewhat heavyweight, but it enables Resilient to keep track of what's going on in the background, while keeping a familiar environment for users in the foreground.

If the system is so easy to modify, how does anyone control the proliferation of slightly modified processes and figure out what is really going on? As with any large-scale organization, at some point someone may feel the need for a global process dictionary, akin to a data dictionary. You either need some way to minimize variation and force everyone into the same patterns, or you need a way of managing the complexity. What happens when you have built hundreds of processes and now you're trying to figure out what happened?

Fortunately, Resilient's structure, where everything is built as a modification of something else, means that the system should be self-aware enough to usefully answer such questions. It will still need human intelligence to figure out what to ask, but you will be able to make requests such as: Find every instance in which the approval process was changed by an exception to a rule, and by whom.

Resilient is trying to solve what CTO Mathew Spolin calls "the impedance mismatch between how developers write programs, and how people actually work and use the programs." By contrast, there was a positive match between Spolin, who started a BBS when he was ten (24 years ago), and Hare, who was trying to combine the ideas of self-organization and complex adaptive systems with the demands of corporate processes.

Spolin got his start in the corporate world as the first software developer at Human Genome Sciences when it had only 25 employees. They were mostly scientists, working together and trying to match sequences of As, Cs, Gs and Ts with corresponding characteristics of individuals, family trees and other kinds of data. "There was no definitive process for making discoveries," recalls Spolin, "and there was no predictability to the discoveries. Yet, if you got granular enough there were patterns that were repeated" both in the gene sequences and in the processes used to discover them.

Later on, as Human Genome grew, Spolin designed a workflow system for the patent application process almost as unpredictable as the scientific process, he says. That experience underlies his approach to Resilient's software, which he calls the equivalent of a genome for business processes.

biography
Esther Dyson is the editor of Release 1.0, which covers software, the Internet, e-commerce, convergence, online services, Web applications, technology policy, groupware, data networking, streaming media, enterprise applications, wireless communications, intellectual property and other unpredictable topics. It is widely quoted and known for its witty commentary and early insight into industry trends. Release 1.0 newsletter is a property of CNET Networks.

Click here to download a free executive summary of the issue.

Editorial standards