雖然軟件系結(jié)構(gòu)的概念早在20世紀(jì)80年代就已經(jīng)提出,但真正引起關(guān)注和重視是在90年代。
1992年,Ikwayne Perry和Ales Wolf定義:軟件體系結(jié)構(gòu)={元素,形式,準(zhǔn)則}。軟件體系結(jié)構(gòu)是由具有特定形式的體系結(jié)構(gòu)元素或設(shè)計(jì)元素構(gòu)成,包括處理元素、數(shù)據(jù)元素和連接元素。處理元素負(fù)責(zé)對(duì)數(shù)據(jù)進(jìn)行加工,數(shù)據(jù)元素是被加工的信息連接元素把體系結(jié)構(gòu)的不同部分組合連接起來(lái)。軟件體系結(jié)構(gòu)形式由專有特性和關(guān)系組成。而在多個(gè)體系結(jié)構(gòu)方案中選擇合適的體系結(jié)構(gòu)方案往往基于一組
準(zhǔn)則。這一定義注重區(qū)分處理元素、數(shù)據(jù)元素和連接元素,這一方法在其它的定義和方法中基本上得到保持。
1993年 DavidW an和MaryS haw提出:軟件體系結(jié)構(gòu)=}組件,連接件,約束}。組件可以是一組代
碼,如程序的模塊;也可以是一個(gè)獨(dú)立的程序,如數(shù)據(jù)庫(kù)服務(wù)器。連接件可以是過(guò)程調(diào)用、管道、遠(yuǎn)程調(diào)用等,用于表示組件之間的相互作用。一個(gè)軟件體系結(jié)構(gòu)還包括某些約束,約束一般為對(duì)象連接時(shí)的規(guī)則或指明連接的勢(shì)態(tài)和條件。軟件體系結(jié)構(gòu)是設(shè)計(jì)過(guò)程的一個(gè)層次,它處理那些超越算法和數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì),研究整體結(jié)構(gòu)設(shè)計(jì)和描述方法。
1994年 , Bass等人提出:體系結(jié)構(gòu)設(shè)計(jì)至少應(yīng)包括應(yīng)用領(lǐng)域的功能分割、系統(tǒng)結(jié)構(gòu)、結(jié)構(gòu)的領(lǐng)域功能分配三個(gè)方面。
1995年 , DavidG arlan和MaryS haw修正定義:軟件體系結(jié)構(gòu)包括系統(tǒng)組件的結(jié)構(gòu)、組件的相互關(guān)系以及控制組件設(shè)計(jì)演化的原則和指導(dǎo)三個(gè)方面。
1996 年 ,Kmchten指出,軟件體系結(jié)構(gòu)有四個(gè)角度:概念角度、模塊角度、運(yùn)行角度和代碼角度。概念角度描述系統(tǒng)的主要組件及它們之間的關(guān)系;模塊角度包含功能分解與層次結(jié)構(gòu);運(yùn)行角度描述一個(gè)系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu);代碼角度描述各種代碼和庫(kù)函數(shù)在開發(fā)環(huán)境中的組織。
1997年 , Bass,Cl ements和KazTnan提出:軟件體系結(jié)構(gòu)包括組件、組件的外部可見性以及相互的關(guān)系。其中軟件組件的外部可見性是指軟件組件提供的服務(wù)、性能、特性、共享資源使用等。該定義強(qiáng)調(diào)體系結(jié)構(gòu)分析需要從系統(tǒng)中抽象出用于分析、決策的信息。概括各種不同觀點(diǎn),可發(fā)現(xiàn)它們都支持這樣的觀點(diǎn),即:軟件體系結(jié)構(gòu)包括系統(tǒng)總體組織、全局控制、通信技術(shù)、同步、數(shù)據(jù)存取、設(shè)計(jì)元素的功能、組織、規(guī)模、性能、設(shè)計(jì)方案的選擇。
本博客為學(xué)習(xí)交流用,凡未注明引用的均為本人作品,轉(zhuǎn)載請(qǐng)注明出處,如有版權(quán)問題請(qǐng)及時(shí)通知。由于博客時(shí)間倉(cāng)促,錯(cuò)誤之處敬請(qǐng)諒解,有任何意見可給我留言,愿共同學(xué)習(xí)進(jìn)步。