分析決策準則

已完成

有數種不同商務程序可執行您的自行車租借事業。 例如,程序中包含自行車租借、返還、預約和與自行車並未直接相關的程序,例如員工的假日預約等。

我們引進了一系列 Azure 技術,可用來協助建置這些程式。 讓我們嘗試針對如何對特定程序進行決策的程序更具體化一些。

如何選擇服務

下圖顯示簡化後的流程圖,可讓您用來選擇最適合用於您商務程序的技術:

Diagram of decision flow chart described in depth in the text that follows.

我們要問的第一個問題是,您偏好使用 GUI 設計工具還是透過撰寫程式碼來設計工作流程。 使用設計優先工具的有效原因包括:

  • 設計工作流程的人員沒有撰寫程式碼的經驗。
  • 在這之後,設計師和使用者能夠諮詢圖形化設計,清楚地了解工作流程進行的方式。

或者,您可以選擇使用程式碼優先工 具,因為:

  • 設計工作流程的人員是開發人員,偏好完全使用程式碼。
  • 您需要了解向非程式碼撰寫者隱藏的工作流程詳細資料。

選擇 design-first 技術

若您選擇使用設計優先方式,您也必須選擇 Microsoft Power Automate 或 Azure Logic Apps。

此時主要的問題是,誰會設計工作流程:開發人員還是使用者?

在Logic Apps中,有一個視覺化設計工具可供您繪製工作流程。 它直覺且易於使用,但您也會有機會深入了解背後運作的原理,並編輯工作流程的原始程式碼。 此工具的設計旨在針對具有開發技能的人員。

在 Microsoft Power Automate 中,會提供常見工作流程類型的額外說明與範本。 沒有任何方式能編輯賅工具建立的原始程式碼。 此工具的設計旨在針對對商務程序有充分了解但沒有撰寫程式碼能力的使用者。

選擇 code-first 技術

若您選擇使用程式碼優先方式,您的下一個選擇是 WebJobs 或 Azure Functions。

因為 Azure Functions 中包含了額外功能,例如更多觸發事件和支援的語言、在瀏覽器中開發測試程式碼的功能,以及計次付費價格模型,因此您考慮使用 Azure Functions 作為您的預設選擇。 在某些狀況下,WebJobs 可能是更好的選擇:

  • 您有現有的 Azure App Service 應用程式,且您想要在應用程式內建立工作流程的模型。 此需求表示工作流程也可以作為應用程式的一部分來管理 (例如,在 Azure DevOps 環境)。
  • 您想要對 JobHost 進行特定的自訂,而該自訂不受 Azure Functions 支援。
  • 您想要控制應用程式的重試原則。
  • WebJobs 僅在 Microsoft Windows 上支援 C#。

混合技術

請記得,您無須對不同的工作流程使用相同技術:若您的需求不同,您很有可能會在決策程序的最後得到不同答案。 此外,您也可以從其中一個工作流程中呼叫另一個工作流程。 例如,Microsoft Power Automate 中所實作工作流程可輕易呼叫另一個作為 Azure Function 建置的工作流程。

混合在您商務程序中所使用技術的其中一個原因是,這會讓使用者控制完整工作流程中的一小部分。 請在 Microsoft Power Automate 中實作該區段,然後從 Logic Apps、WebJob 或 Function 呼叫該流程,來執行此操作。