首頁>Club>
8
回覆列表
  • 1 # 使用者1300891189642

    (software architecture)是一系列相關的抽象模式,用於指導大型軟體系統各個方面的設計。 軟體架構是一個系統的草圖。軟體架構描述的物件是直接構成系統的抽象元件。各個元件之間的連線則明確和相對細緻地描述元件之間的通訊。在實現階段,這些抽象元件被細化為實際的元件,比如具體某個類或者物件。在面向物件領域中,元件之間的連線通常用介面(計算機科學)來實現。 軟體體系結構是構建計算機軟體實踐的基礎。與建築師設定建築專案的設計原則和目標,作為繪圖員畫圖的基礎一樣,一個軟體架構師或者系統架構師陳述軟體構架以作為滿足不同客戶需求的實際系統設計方案的基礎。 軟體構架是一個容易理解的概念,多數工程師(尤其是經驗不多的工程師)會從直覺上來認識它,但要給出精確的定義很困難。特別是,很難明確地區分設計和構架:構架屬於設計的一方面,它集中於某些具體的特徵。 在逗軟體構架簡介地中,David Garlan 和 Mary Shaw 認為軟體構架是有關如下問題的設計層次:逗在計算的演算法和資料結構之外,設計並確定系統整體結構成為了新的問題。結構問題包括總體組織結構和全域性控制結構;通訊、同步和資料訪問的協議;設計元素的功能分配;物理分佈;設計元素的組成;定標與效能;備選設計的選擇。地【GS93】 但構架不僅是結構;IEEE Working Group on Architecture 把其定義為逗系統在其環境中的最高層概念地【IEEE98】。構架還包括逗符合地系統完整性、經濟約束條件、審美需求和樣式。它並不僅注重對內部的考慮,而且還在系統的使用者環境和開發環境中對系統進行整體考慮,即同時注重對外部的考慮。 在 Rational Unified Process 中,軟體系統的構架(在某一給定點)是指系統重要構件的組織或結構,這些重要構件透過介面與不斷減小的構件與介面所組成的構件進行互動。 從和目的、主題、材料和結構的聯絡上來說,軟體架構可以和建築物的架構相比擬。一個軟體架構師需要有廣泛的軟體理論知識和相應的經驗來實施和管理軟體產品的高階設計。軟體架構師定義和設計軟體的模組化,模組之間的互動,使用者介面風格,對外介面方法,創新的設計特性,以及高層事物的物件操作、邏輯和流程。 一般而言,軟體系統的架構(Architecture)有兩個要素: ·它是一個軟體系統從整體到部分的最高層次的劃分。 一個系統通常是由元件組成的,而這些元件如何形成、相互之間如何發生作用,則是關於這個系統本身結構的重要資訊。 詳細地說,就是要包括架構元件(Architecture Component)、聯結器(Connector)、任務流(Task-flow)。所謂架構元素,也就是組成系統的核心"磚瓦",而聯結器則描述這些元件之間通訊的路徑、通訊的機制、通訊的預期結果,任務流則描述系統如何使用這些元件和聯結器完成某一項需求。 ·建造一個系統所作出的最高層次的、以後難以更改的,商業的和技術的決定。 在建造一個系統之前會有很多的重要決定需要事先作出,而一旦系統開始進行詳細設計甚至建造,這些決定就很難更改甚至無法更改。顯然,這樣的決定必定是有關係統設計成敗的最重要決定,必須經過非常慎重的研究和考察。

  • 中秋節和大豐收的關聯?
  • 香螺怎麼做比較好吃?