A very large fraction of office work involves communicating with people and organizations outside the office and whose procedures are not controlled by the same authority. Getting the full productivity benefit from computers depends on computerizing this communication. This cannot be accomplished by approaches to distributed processing which assume that the communicating processes are designed as a group.
Automating such communication was easiest when it is absolutely standard what is communicated and when one of the organizations is in a position to dictate formats. For example, in the 1950s the IRS dictated a magnetic tape format on which it was prepared to receive reports of wages and deductions.
The initial approaches to electronic data interchange, EDI, have involved exchanges of information between a large manufacturer and its suppliers, where the customer could dictate the form of the interchange. This works best when the supplier has only this one customer.
A next step is provided by standards like X12 which provide standard electronic formats for a fixed set of commercial documents, e.g. invoices. Presumably, X12 forms have fixed collections of slots in which can be inserted numbers, e.g. quantities and prices, or labels, e.g. names of people, places and things.
(McCarthy 1982) proposes a ``Common Business Communication Language'' that would provide for a language of business messages. These messages could include complex descriptions of various entities, e.g. price formulas, schedules of delivery, schedules of payment, configurations of equipment and terms for contracts. That paper envisages that firms may issue electronic catalogs and advertisements that cause thems to be listed automatically as suppliers of certain items. Programs looking for good prices and delivery conditions for the items might automatically negotiate with the programs representing the sellers and even issue purchase orders within their authority to do so. (McCarthy 1982) did not discuss the programs that would use CBCL.
Programs that carry out external communication need several features that substantially correspond to the ability to use speech acts. They need to ask questions, answer them, make commitments and make agreements. They need to be able communicate assurance that their agreements will be honored by the organizations they belong to. This is best assured by some kind of authority tree extending up from programs that issue purchase orders through the programs that decide what items are to be purchased and through the human hierarchy of the organization.
Because these programs will often operate with only minimal human supervision, they need to be carefully verified. The features of Elepant 2000 are important for this, because the forms of speech act provided for have definite meanings. They will also need frequent modification, often by people other than those who wrote them--by non-programmers as much as possible.
As people acquire more home computers and use them more and more for doing business with firms, transaction processing programs will become more important, and will be more used by people other than employees of the organizations operating the programs. This will also put requirements on verification and modifiability.
Present reservation programs have many limitations that using Elephant 2000 features will encourage correcting. Often they don't even emit strings that are supposed to have long term meaning. Instead they emit display updates. These display updates cannot be conveniently used by programs belonging to others, because changes in output intended to make the display prettier can destroy the ability of other programs to decipher them. The result is that when a ticket has to be changed, the airline counter clerk often retypes the name of the passenger, because it cannot be taken from the screen showing the reservation. Elephant speech acts are a step above strings, because the higher levels of the speech acts have a meaning independent of the application program.