

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon SWF 中的基本工作流程概念
<a name="swf-dg-basic"></a>

**注意**  
本章中的概念提供 Amazon Simple Workflow Service 的概觀，並說明其主要功能。如果您要尋找範例，請參閱 [使用 Amazon SWF APIs](swf-dg-using-swf-api.md)。

使用 Amazon Simple Workflow Service (Amazon SWF)，您可以將分散式、非同步應用程式實作為*工作流程*。工作流程會協調和管理活動的執行，且活動可以跨多個運算裝置非同步執行，也可以具備循序和平行處理。

設計工作流程時，您可以分析應用程式來識別其元件「任務」**。在 Amazon SWF 中，這些任務會以*活動*表示。活動的執行順序是根據工作流程的協調性邏輯所決定。

**電子商務應用程式的範例工作流程**  
下圖顯示涉及人員和自動化程序的電子商務訂單處理工作流程：

![\[說明性電子商務範例工作流程\]](http://docs.aws.amazon.com/zh_tw/amazonswf/latest/developerguide/images/swf-overview-workflow.png)


電子商務應用程式工作流程會在客戶下訂單時開始，並包含四個*任務*：

1. 確認訂單。

1. 如果訂單有效，將會向客戶收取費用。

1. 如果付款已完成，將送出訂單。

1. 如果送出訂單，將儲存訂單詳細資訊。

此工作流程中的任務是「循序的」**：必須先確認訂單，才能收取信用卡費用；必須先順利收取信用卡費用，才能送出訂單，而且必須先送出訂單，才能加以記錄。即使如此，因為 Amazon SWF 支援分散式程序，所以這些任務可以在不同的位置執行。如果任務具有程式設計的性質，也可使用不同的程式設計語言或工具加以撰寫。

除了循序處理任務之外，Amazon SWF 也支援具有平行處理任務的工作流程。平行任務會同時執行，而且可以由不同的應用程式或人類工作者獨立地執行。您的工作流程會在完成一或多個平行任務之後，做出應如何繼續的決策。

**Topics**
+ [建立工作流程](swf-dg-create-workflow.md)
+ [執行中的工作流程](swf-dev-run-workflows.md)
+ [工作流程歷史記錄](swf-dev-about-workflow-history.md)
+ [物件識別符](swf-dev-obj-ident.md)
+ [網域](swf-dev-domains.md)
+ [動作者](swf-dev-actors.md)
+ [任務](swf-dev-tasks.md)
+ [任務清單](swf-dev-task-lists.md)
+ [工作流程執行關閉](swf-dev-workflow-exec-closure.md)
+ [工作流程執行生命週期](swf-dev-workflow-exec-lifecycle.md)
+ [輪詢任務](swf-dev-comm-proto.md)