2010-03-27 133 views
1

我們需要爲第一個維護版本即將投入生產的Web應用程序制定退出計劃。 我們所面臨的問題是,即使我們退出新的EAR並部署舊的EAR,使用新版本的關鍵數據也不會支持舊業務規則(當前),因爲業務規則發生了巨大變化。 你能建議我們如何解決這個問題?退出Web應用程序的計劃

回答

2

這通常需要一個系統的方法,限制你如何發展應用程序。例如,最好首先展開模式更改,然後讓它們在舊應用程序中保持良性運行。然後,如果可能的話,與舊版本並行推出新系統,然後使用測試帳戶進行打擊。最後,您最好以交錯的方式推出給客戶。

不知道您的應用程序的具體情況,我不能說這種方法對您來說有多可行,但我會說它通常需要在新版本設計的早期階段進行很多思考。

+0

新版本中沒有模式更改。唯一的變化是一些業務規則的邊界條件。 例如早期版本允許的產品期限值是6年,現在是9年。如果用戶在新版本投入生產後選擇8年作爲期限值,並且如果我們退出更改,則鍵入的數據將觸發舊版本的應用。 我們有一個預先測試系統的環境。但是客戶希望有一個退出計劃,以保證安全。 – nobody 2010-03-27 10:45:28

1

這是一個很難回答的問題,如果沒有系統的先驗知識。 是否有舊數據升級路徑與新版本正常工作? 如果是這樣,你可能不需要擔心。 你可能會有諸如以下情況:

  1. 新版本是如此糟糕,這不能被使用,且被回滾 - 沒有新的數據將被輸入的價值來講,只是恢復舊版本,將舊數據
  2. 新版本沒問題,有些問題需要臨時回滾 - 新數據將不可用,如果絕對必要,您可以手動調整其中的一部分,同時您的團隊可以像修復新版本一樣瘋狂地工作並重新部署
  3. 新版本沒問題,服務器崩潰 - 您只需從安裝後的備份中恢復,並將所有新數據轉換爲使用新規則
+0

好的。爲了說清楚,讓我講一個場景。 根據舊的應用程序,允許產品的客戶的最大年齡是35,並且按照新的業務規則是40年。假設客戶做了39歲的交易,舊規則不支持該交易。因此,如果客戶對其賬戶/交易進行任何維護,系統將會致命。 也在這種情況下,我們不能修改客戶的年齡來支持舊版本的應用程序。 – nobody 2010-03-27 10:51:26

+0

而不是致命的,系統可以簡單地標記不良數據,以便某人(無論是否是人)在其處理恢復之前可以處理它 – mjn 2010-03-27 15:45:49

+0

@nobody:可以請您舉例說明在舊版本的應用程序上使用新的數據? – 2010-03-28 17:50:05