軟件測試開發技術.NET架構與模式探索

發表于:2009-08-17來源:作者:點擊數: 標簽:軟件測試架構NetNETnet
軟件測試開發技術.NET架構與模式探索 .NET開發技術 關鍵字:.NET架構 什么是架構 軟件體系結構通常被稱為架構,指可以預制和可重構的軟件框架結構。架構尚處在發展期,對于其定義,學術界尚未形成一個統一的意見,而不同角度的視點也會造成軟件體系結構的不

軟件測試開發技術.NET架構與模式探索 .NET開發技術

關鍵字:.NET架構

什么是架構

軟件體系結構通常被稱為架構,指可以預制和可重構的軟件框架結構。架構尚處在發展期,對于其定義,學術界尚未形成一個統一的意見,而不同角度的視點也會造成軟件體系結構的不同理解,以下是一些主流的標準觀點。

ANSI/IEEE 610.12-1990軟件工程標準詞匯對于體系結構定義是:“體系架構是以構件、構件之間的關系、構件與環境之間的關系為內容的某一系統的基本組織結構以及知道上述內容設計與演化的原理(principle)”。

Mary Shaw和David Garlan認為軟件體系結構是軟件設計過程中,超越計算中的算法設計和數據結構設計的一個層次。體系結構問題包括各個方面的組織和全局控制結構,通信協議、同步,數據存儲,給設計元素分配特定功能,設計元素的組織,規模和性能,在各設計方案之間進行選擇。Garlan & Shaw模型[1]的基本思想是:軟件體系結構={構件(component),連接件(connector),約束(constrain)}.其中構件可以是一組代碼,如程序的模塊;也可以是一個獨立的程序,如數據庫服務器。連接件可以是過程調用、管道、遠程過程調用(RPC)等,用于表示構件之間的相互作用。約束一般為對象連接時的規則,或指明構件連接的形式和條件,例如,上層構件可要求下層構件的服務,反之不行;兩對象不得遞規地發送消息;代碼復制遷移的一致性約束;什么條件下此種連接無效等。

關于架構的定義還有很多其他觀點,比如Bass定義、Booch & Rumbaugh &Jacobson定義、Perry & Wolf模型[7]、Boehm模型等等,雖然各種定義關鍵架構的角度不同,研究對象也略有側重,但其核心的內容都是軟件系統的結構,其中以Garlan & Shaw模型為代表,強調了體系結構的基本要素是構件、連接件及其約束(或者連接語義),這些定義大部分是從構造的角度來甚至軟件體系結構,而IEEE的定義不僅強調了系統的基本組成,同時強調了體系結構的環境即和外界的交互。

什么是模式

模式(Pattern)的概念最早由建筑大師Christopher Alexander于二十世紀七十年代提出,應用于建筑領域,八十年代中期由Ward Cunningham和Kent Beck將其思想引入到軟件領域,Christopher Alexander將模式分為三個部分:首先是周境(Context,也可以稱著上下文),指模式在何種狀況下發生作用;其二是動機(System of Forces),意指問題或預期的目標;其三是解決方案(Solution),指平衡各動機或解決所闡述問題的一個構造或配置(Configuration)。他提出,模式是表示周境、動機、解決方案三個方面關系的一個規則,每個模式描述了一個在某種周境下不斷重復發生的問題,以及該問題解決方案的核心所在,模式即是一個事物(thing)又是一個過程(process),不僅描述該事物本身,而且提出了通過怎樣的過程來產生該事物。這一定義已被軟件界廣為接受。

軟件模式的應用對軟件開發產生了重大的作用,主要表現在:

◆軟件模式是人們在長期的設計軟件、管理組織軟件開發等實踐中大量經驗的提煉和抽象,是復用軟件設計方法、過程管理經驗的有力工具。模式類似于拳擊中的組合拳,它提供了一系列軟件開發中的思維套路。如,通過模式的使用,有利于在復雜的系統中產生簡潔、精巧的設計。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97