2016-04-18 30 views
0

目前我正在嘗試重新設計/重構當前作爲狀態機實現的現有應用程序,但我不確定,如果此設計模式是這種工作的最佳解決方案。是狀態機的最佳解決方案

場景:配置設備

設備(傳感器)具有可以在使用之前進行配置。我們有一個Java EE應用程序,用戶爲設備啓動配置過程。然後在設備和應用程序之間發送消息。最後,設備被配置(或處於錯誤/超時狀態)並且發送到外部系統的報告。

當前進程是作爲狀態機制作的,其中當前狀態保存在數據庫中。如果從設備收到消息,則檢索保存的狀態,並將下一條消息發送到設備 - >下一個狀態。如果設備沒有應答,定時器發送超時消息 - >下一個狀態(超時)

你覺得怎麼樣?狀態機模式是否真的適合這種情況?或者哪種設計更適合?

THX, 馬庫斯

回答

1

它看起來對我很好,另一種選擇可能是使用BPM,但我認爲這是爲另一種東西。