當開發者打算獲得微軟認證應用軟件開發(MCAD)和微軟認證.NET解決開發者(MCSD.NET)的資格證明﹐他們很可能害怕參加解決方案(Solution
Architectures)考試。這是一門你可能瘋狂學習、重復課程和考試好幾次也未必能通過、而且不是所雲的課程。
有人說這門考試推動了微軟的市場和策略﹐另一些人說只有一知半解的人才會把體系結構(architecture)當作一門科學來看。不論你對這門考試以及學科持何種觀點﹐它是MCSD.NET認證中不可或缺的一部分。盡管這門考試尚未開展﹐我們仍可以估計出考試會包括如下幾個方面﹕
性能
有效性
安全性
可測性
可維護性
可擴展性
如何通過考試
在MCSE中的開放系統互聯(OSI)模型(包括七層﹕應用層、表示層、會話層、傳輸層、網絡層、數據鏈路層、物理層)中﹐MCSD了解以下六個方面越詳細越好。它們提供你作為一名開發者所需的任何東西﹐在考試中你需要充分體現它們。
一、性能
當評價一個系統時﹐即要考慮期望(expectation)也要考慮實際性能。為了提高性能﹐每個人都希望使用最好的手段﹐如在PDA中使用T1的帶寬或者用網絡服務器來串接DS1s隊列。但是﹐當你考慮到期望水平時﹐你就可以在可以接受的前提下稍微降低性能來節省開支。
二、有效性
對有效性來說也是同樣如此。你必須綜合考慮期望和實際性能。你也許想使用24×7運行時間方案﹐但是如果你知道200名員工中沒有一個會在晚上使用系統﹐那麼你可可以考慮一種較低但仍可以接受的服務水平。
三、安全性
所有的安全性都可以分解三個功能﹕身份驗證、編碼(encryption)和審核。當需要考慮安全性時﹐OSI模型很值得考慮。在OSI的每一個方面、每一個層次都可以實現這三個功能。當建筑一個安全模型時﹐你必須在每一個層次上折衷考慮安全功能與性能的混合和匹配。你既不能限制合法用戶使用關鍵功能﹐也不能把暴露危險的功能以免用戶破環了系統。
基于微軟產品(NT、2K、.NET以及DNA)的企業內部互聯網(Intranet)有一個共同點使得它們能在Intranet上很好的協作﹐這個共同點就是安全性。如果你堅持使用微軟安全機制﹐你將會有一個Department-of-Defense-quality安全結構。但是在過去﹐這個特點使得這些系統不適合用在Internet上。畢竟﹐它們的原理是把合法用戶包括在網絡中而不是把非法用戶排除到網絡外部。(在Yahoo上有多少用戶在幾年中使用同樣的口令﹖在你的企業局域網中你想那樣做的用戶又會有多少﹖)
四、可測性
根據我的經驗﹐可測性是發展Intranet應用程序的主要障礙。某些具有快速定位的產品超期服役後失效。另一些應用程序卻不能工作到它們設定的時間。解決可測性的關鍵就是使用考慮對象模型、帶寬throttling以及其它因素的編程好習慣。
五、可維護性
可維護性指的是交付的程序不是完全的黑盒子。隨做時間的變化﹐用戶程序常常需要修改一些理功能。同時﹐內在的功能(如銷售額和工資稅的計算)也會改變。這些修改必須很容易進行。
六、可擴展性
可擴展性指的是有能力增加新特性﹐這些新特性可能來自用戶提交的清單。當用戶使用新的應用程序後﹐他們常常會提交一些諸如會提高他們工作效率的新特性。具有添加客戶所要求特性的能力很重要﹐必須在開發階段仔細考慮。
體系中的完整功能
無論你正在構建下一個DiscountStock.com或者管理煉油廠的主機數據﹐好的體系絕對是必需的。這就意味著你的項目經理必須精通體系﹐你的開發人員必須保證交給他們的項目按load建立。這是上述六個功能可以實現的關鍵。
記住﹐你必須綜合考慮上述六個方面﹕每個功能你需要多少、你想要多少、你能實現多少。在建立基于網絡的解決方案的早期階段你就必須找到這些問題的答案。而且﹐如果你是.NET開發者﹐把這些考慮體現在開發的每一個過程中將會幫助你通過解決方案考試。