基于架構軟件設計研討
時間:2022-07-03 05:44:41
導語:基于架構軟件設計研討一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。
一、關于軟件設計的現狀
隨著社會的發展,軟件應用規模和應用領域的不斷擴大,作為相應支撐的各種軟件系統將與之相適應,使得軟件開發成了一項的系統工程,而這對軟件開發方式也提出了更大的挑戰。基于架構的軟件設計方法著重于在軟件開發的設計階段即按照業務特點及軟件設計原則,在軟件設計方法上采用一定的方法隔離業務關注點,設計及代碼局部化,為需求變更及業務邏輯變化,采用遞歸分解的方法將大的業務分解,增加程序的可擴展性、可修改性,并將設計元素歸類管理,在可預測范圍內預留可變空間,應對需求變更及業務邏輯變化。基于架構的軟件設計根據業務需求隔離關注點,它可以在可預見的范圍內考慮可變性,為應對變化預留空間。信息技術的發展改變了人們的工作方式,由于軟件工程管理的出現,促進了制造業等傳統產業的發展,而軟件開發也面臨著現實的問題,即業務邏輯的易變性。如何將變化縮小到最小范圍,業務功能的隔離無疑可以起到一定的作用。從另一方面講,軟件開發方式自身也存在一定的問題,開發過程中某些環節需要細化。軟件架構是軟件設計階段的產物,具體地說,軟件架構包含了結構、協作和技術等方面的重要決策,它對后期的軟件維護,為系統的開發活動建立基礎,對改動力度比較大的軟件升級都起著重要的作用。現在,大多數企業都開始注重產品線的開發,完成從面向業務到面向技術的轉換,因此要為整個產品線設計軟件架構。一般內容是:上承業務目標、下接技術決策、.控制復雜性、組織開發、利于迭代開發和增量交付、提高質量。軟件開發方法隨著軟件系統的規模增大而不斷變化,20世紀70年代以前,軟件開發基本上都是匯編程序設計;70年代中后期,軟件開發中出現了概要設計與詳細設計;90年代中期,是面向對象開發方法;90年代以后則是基于構件的軟件開發。縱觀軟件體系結構技術發展過程,架構設計得到了充足的發展,并成為軟件工程領域的研究熱點。基于架構的軟件設計方法能更好地隔離業務關注點及決策,可以更好地應對需求變更,以及更好地采用模塊化設計方法。
二、基于架構的軟件設計方法的理論
基于架構的設計提供了一個系統化的步驟,此方法在發展中不斷在完善,用于設計概念性軟件架構,包含了一些基礎的理論概念,如設計元素、所采用的視圖、用例及質量場景等。架構設計包括共性與可變性,軟件模板與系統基礎設施,架構驅動元組需求,質量屬性、功能及架構模型。其中基于架構的設計關注對架構設計有影響的變化粒度,共性是指變化中的不變部分,可變性可以發生在功能、平臺或環境中;軟件模板與特定的設計元素相對應,包括設計元素與公共服務的交互模式、設計元素與基礎設施的交互模式、自身職責功能。軟件模板作用具體為有助于集成、對于系統中可重用的組件是一個庫,并為構成系統架構提供基礎。而對于一些質量屬性建模技術,軟件模板的定義決定了交互模式;架構驅動元組包括功能需求、質量屬性及業務需求。架構驅動元素依賴抽象的功能需求,確定架構驅動元素要進行特定方面需求的詳細調查,架構驅動元素滿足了,設計就可以開始;架構模型包括組件類型集合及它們互操作模式,確定操作數量及功能的標準將會不同于驅動需求,架構風格就是實時計劃策略。需求階段結果包括功能需求、質量屬性、業務需求及約束,運用基于架構的設計方法進行設計,為考慮決策跟蹤,需要重新審視決策。基于架構的設計方法包括:抽象功能需求。基于架構的設計假定需求輸出是抽象的功能需求,各種終端用戶與特定系統相關聯,理解需求間的相關性對設計來說是很重要,抽象功能的需求捕獲可以對詳細需求提供分類;用例。用例是終端用戶與系統間互操作的具體描述;質量屬性及業務目標。每個質量需求應當包括具體的輸入及設想的應答,而業務目標與質量屬性的區別不是很明晰。架構可選方案。方案的列舉,邏輯上屬于基于架構的設計階段,它針對每,一個質量屬性及業務目標,作為需求階段的一個一輸出,并將凡是滿足需求的架構都應當列出來。質量場景。質量場景也可以具體化質量需求,應當對它們分優先級進行管理。約束。約束是預先指定的設計決策,約束來自于業務還是技術并沒有關系,其設計過程就是做決策。很少有系統設計時無需考慮現存系統,遺留系統將影響當前系統的設計。
三、基于架構的軟件設計方法
首先要定義設計元素。它包括概念子系統、概念組件、具體組件、軟件模板、基礎設計的應用。基于架構的軟件設計方法是對整個系統的分解。其次是設計元素的生成順序。隨著理解的深入,要對前期的決策重新考慮,必須在適當的地方給以予記錄。要考慮相關領域知識、新知識的融合應用和架構組人員的素質。第三是設計元素內部的活動。它包括功能拆分,選擇基礎架構,功能分配。在功能分解中要基于功能一致性、數據或基于數據之上的操作行為模式相似、相似的抽象層和功能局部化標準;設計元素應有一個首要的架構風格模型,確定的架構方案必須滿足質量需求,在設計記錄中與設計元素相關聯;架構模型的選擇產生了組件類型集合,每個設計元素的概念性接口也應當確定,依據質量屬性進行權衡;設計元素都有一個依附于它軟件模板,對于模板中的每一個功能,要考慮是傳遞到子設計元素還是保留在當前位置,并對子設計元素的功能也將進行核對。在這個過程中輸出一個子設計元素列表,表現帶反饋循環的拆分設計元素的順序步驟,每執行一步都要對系統的更深入理解。用例可以用來對所選擇的架構進行校驗,用例檢驗設計對需求的覆蓋度,然后生成生成并發視圖、生成部署視圖、校驗質量場景以及校驗約束。最后,按項目不同,基于架構的軟件設計依據一定的優先級順序,執行相應過程后生成設計元素的集合。
- 上一篇:配電網故障圖形顯示軟件程序設計
- 下一篇:婦聯分析評議實施意見