一、軟體體系結構的描述方法
1、圖形表達工具:采用矩形框和有向線段組合,矩形框代表抽象構件、有向線段代表連接配接件。
2、子產品内連接配接語言:module interconnection language MIL
3、基于軟構件的系統描述語言:有許多特定形式互相作用的特殊軟構件實體構造組成的組織或系統。
4、軟體體系結構描述語言:architecture description language ADL
二、軟體體系結構的描述架構
1.IEEEP1471:适用于軟體密集的系統,其目标在于:便于體系結構的表達與交流,并通過體系結構要素及其實踐标準化,奠定品質與成本的基礎。詳細介紹了一套體系結構描述的概念架構,并給出建立架構的思路。但如何描述以及具體的描述技術等方面缺乏更進一步的指導。
2.Rational建議标準:與IEEE P1471相比,Rational建議标準的體系結構描述方案涉及面比較窄,所注重的層次比較低,因而更具體。由于将體系結構的描述限于UML和RUP,具有一定的局限性,但該建議标準結合了業界已經廣泛采用的模組化語言和開發過程,因而易于推廣,可以有效實作在跨組織之間重用體系結構描述結果
三、體系結構的描述語言ADL
主要的體系結構描述語言有Aesop、MetaH、C2、Rapide、SADL、Unicon和Wright等,盡管它們都描述軟體體系結構,卻有不同的特點。
1.常見的軟體體系結構元素(構件和連接配接件都包括哪些)
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwczLcVmds92czlGZvwVP9EUTDZ0aRJkSwk0LcxGbpZ2LcBDM08CXlpXazRnbvZ2LcRlMMVDT2EWNvwFdu9mZvwFas5mYox2RkZWNXlFcwdFZv50MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2LcRHelR3LcJzLctmch1mclRXY39TM1czNwAzMyIzMwcDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
2.C2語言
(1)C2和其提供的設計環境(Argo)支援采用基于時間的風格來描述使用者界面系統,并支援使用可替換、可重用的構件開發GUI的體系結構。其工作的重點在于對構件的重用,以及對運作時體系結構的動态改變以使得系統滿足某些GUI體系結構方面的特性。
(2)連接配接件負責構件之間消息的傳遞,而構件維持狀态、執行操作并通過兩個名字分别為“top”和“bottom”的端口和其它的構件交換資訊。每個接口包含一種可發送的消息和一組可接收的消息。
(3)構件之間的消息交換不能直接進行,而隻能通過連接配接件來完成。每個構件接口最多隻能和一個連接配接件相連,而連接配接件可以和任意數目的連接配接件或構件相連。請求消息隻能向上層傳遞,而通知消息隻能向下層傳送。
(4)會議安排系統(細化各部分的功能)
系統包含了三種功能構件:Meeting Initiator 、Attendee、Important Attendee;三種連接配接件:MainConn、Attcon、ImportantAttConn,用來在構件之間傳遞消息。
Meeting Initiator構件通過發送會議請求資訊給Attendee、Important Attendee來進行資訊初始化。Attendee、Important Attendee構件可以發送消息給Meeting Initiator,告訴它自己喜歡的會議日期、地點等資訊。但不能向它遞交請求。
四、軟體體系結構與UML
1.統一模組化語言,unified modeling language,UML,是一個通用的可視化模組化語言,用于對軟體進行描述、可視化處理、構造和建立軟體系統的文檔。适用于各種軟體開發方法、軟體生命周期各個階段、各種應用領域以及各種開發工具。
2.UML主要内容