2011-08-24 56 views
0

我有點困惑,我們如何才能在asp.net中啓動網站或Web應用程序之前選擇最佳的體系結構和最佳模型?如何在asp.net中啓動web應用程序之前選擇體系結構?

因爲大多數我看到我們選擇這個應用程序錯誤的體系結構或模型,我們發現這在中間或應用程序的結束的時候,當我們不能在那個時候改變它呢?

+0

當您說您選擇了錯誤的架構時 - 通常哪種方式是錯誤的? –

回答

1

選擇「最佳」體系結構就是了解所需解決方案背後的驅動因素。這不是開發團隊自己能做的事 - 他們需要與業務/利益相關者合作,以確保他們理解相關的優先事項。

其中的一個原因,這是你不想要的「建築顯著」的優先級來改變中流(變化的程度可能會是太多了)。如果事情沒有被詳細闡述,那麼當它實質上太遲時你會發現主要的驅動因素。

那麼你怎麼做到這一點?

  • 瞭解問題並制定相關標準的列表/矩陣。例如:
    • 「用戶可以用自己的實現交換模塊是非常重要的,所以架構必須支持模塊化設計。」
    • 這可能導致:「組件需要在運行時換出而不會使系統脫機」,因此架構必須支持「熱交換」模塊。
    • 該系統需要支持基於桌面和電話的客戶端,因此我們需要保持UI和業務服務的分離非常乾淨。
    • 系統將需要支持不同的數據庫平臺,因此數據訪問必須鬆散耦合。
  • 非功能性需求:那些什麼是重要的?確定排名前3-5的優先級。安全性總是勝過可用性嗎?擴展性是否重要 - 如果是這樣,我們的架構應該允許我們將系統的不同部分部署到不同的物理服務器上?
  • 一般而言,您之前所做的工作已經完成 - 出去做一些研究:找到參考體系結構和實現,根據您的標準對它們進行評估。
  • 在參考架構設計師時,請記住,您可以通過不同的方式來處理它 - 按域(醫療,銀行,電信)或技術(雲vs web/java vs .net)。 TOGAF擁有架構和解決方案延續的概念 - see the diagram and text in section 9.6.1。它適用於其他人可能已經定義好可能適合您的情況的良好架構的想法