There is substantial precedent for asynchronous business processes. Consider virtually any browser-based storefront, payroll application, or calculation- intensive process. Clients take responsibility for launching business processes, and Web applications take responsibility for notifying the client of progress.
Figure 9-1 illustrates a high-level view of an asynchronous business process that a storefront may use, presented from the perspective of a client using the business process. In the flow diagram, a client selects a book to purchase and have delivered. After entering their account information, the client submits the order and information to the server for processing. The entire business process lasts until the client receives the book from the shipping company.
In reality, a client neither expects, nor do they want, to have to wait for control of their computer to return when they receive the book. Instead, a client detaches from the business process when there is sufficient information to fulfill the client's needs. The point at which the client separates from the business process tends to vary depending on the responses that a client expects immediately or the responses that a client expects from an alternate notification mechanism. For example, a client expects an order number and confirmation (even if they do not want to maintain their order number themselves ) within 10 seconds. The client does not expect the application to block until the order reaches the shipping dock or arrives at their doorstep.
On the other hand, a business process that represents payroll processing starts from a scheduler acting as a client. The scheduler does not expect any response from the business process. Instead, the business process uses notification frameworks throughout the process to keep managers apprised of the progress of payroll processing. The two processes discussed have different points of detachment from the client. In general, there is no rule for detachment, only guidelines for client information and immediacy.