# Steps in This Tutorial

This tutorial creates a business process that meets the following requirements: receives Request for Quote messages from clients, starts the business process on receipt of the Request for Quote, validates and processes the request, and sends the status of the Request for Quote to the client.

The tutorial is organized into parts:

Part I

In Part I, you learn how to create a new business process, specify how the process is started at run time, and design a Decision node that includes asynchronous calls to a Web Service. Lastly, you can run and test the business process you created. To get started, proceed to Part I.

Part II

In Part II, you learn how to replace the asynchronous call to the Web service you designed in Part I with an asynchronous call to another business process. You learn how to create a process control and how the control's framework makes it easy to change the interactions your business process makes with various resources. To learn about the specific steps to complete this part, see Part II.

Part III

In Part III, you add more complex business logic to the business process you created in the preceding parts. You learn how to create looping logic, design parallel processing nodes, transform the price and availability data from untyped XML data to typed XML, use a File control to write your quote to a file system, and use a Client Response node to return the quote to the client invoking the business process. At the end of this part, you can run and test the business process you built. To learn about the specific steps to complete this part, see Part III.

Part IV

In Part IV, you build on the business process you created in Part III by adding logic that allows an external message to cause the business process to terminate. Your RequestQuote business process publishes the Request for Quote message it receives from a client to a Message Broker channel. A number of services that validate the Request for Quote in some way can be subscribed to that channel. If the request is determined to be invalid by one of these services, that service publishes a message on a second Message Broker channel, to which the RequestQuote process is subscribed. If the running RequestQuote process receives such a message, it is terminated and a message is sent to the client indicating why the quote was not processed. To learn about the specific steps to complete this part, see Part IV.