導航:首頁 > 軟體知識 > 什麼是程序架構

什麼是程序架構

發布時間:2022-02-05 04:38:28

Ⅰ 什麼是軟體架構

軟體架構
軟體架構(software architecture)是一系列相關的抽象模式,用於指導大型軟體系統各個方面的設計。 軟體架構是一個系統的草圖。軟體架構描述的對象是直接構成系統的抽象組件。各個組件之間的連接則明確和相對細致地描述組件之間的通訊。在實現階段,這些抽象組件被細化為實際的組件,比如具體某個類或者對象。在面向對象領域中,組件之間的連接通常用介面_(計算機科學)來實現。

軟體體系結構是構建計算機軟體實踐的基礎。與建築師設定建築項目的設計原則和目標,作為繪圖員畫圖的基礎一樣,一個軟體架構師或者系統架構師陳述軟體構架以作為滿足不同客戶需求的實際系統設計方案的基礎。

軟體構架是一個容易理解的概念,多數工程師(尤其是經驗不多的工程師)會從直覺上來認識它,但要給出精確的定義很困難。特別是,很難明確地區分設計和構架:構架屬於設計的一方面,它集中於某些具體的特徵。

在「軟體構架簡介」中,David GArlan 和 Mary Shaw 認為軟體構架是有關如下問題的設計層次:「在計算的演算法和數據結構之外,設計並確定系統整體結構成為了新的問題。結構問題包括總體組織結構和全局控制結構;通信、同步和數據訪問的協議;設計元素的功能分配;物理分布;設計元素的組成;定標與性能;備選設計的選擇。」[GS93]

但構架不僅是結構;IEEE Working Group on Architecture 把其定義為「系統在其環境中的最高層概念」[IEEE98]。構架還包括「符合」系統完整性、經濟約束條件、審美需求和樣式。它並不僅注重對內部的考慮,而且還在系統的用戶環境和開發環境中對系統進行整體考慮,即同時注重對外部的考慮。

在 Rational Unified ProcESs 中,軟體系統的構架(在某一給定點)是指系統重要構件的組織或結構,這些重要構件通過介面與不斷減小的構件與介面所組成的構件進行交互。

從和目的、主題、材料和結構的聯繫上來說,軟體架構可以和建築物的架構相比擬。一個軟體架構師需要有廣泛的軟體理論知識和相應的經驗來事實和管理軟體產品的高級設計。軟體架構師定義和設計軟體的模塊化,模塊之間的交互,用戶界面風格,對外介面方法,創新的設計特性,以及高層事物的對象操作、邏輯和流程。

是一般而言,軟體系統的架構(ArchitECture)有兩個要素:

·它是一個軟體系統從整體到部分的最高層次的劃分。

一個系統通常是由元件組成的,而這些元件如何形成、相互之間如何發生作用,則是關於這個系統本身結構的重要信息。

詳細地說,就是要包括架構元件(Architecture Component)、聯結器(Connector)、任務流(TASk-flow)。所謂架構元素,也就是組成系統的核心"磚瓦",而聯結器則描述這些元件之間通訊的路徑、通訊的機制、通訊的預期結果,任務流則描述系統如何使用這些元件和聯結器完成某一項需求。

·建造一個系統所作出的最高層次的、以後難以更改的,商業的和技術的決定。

在建造一個系統之前會有很多的重要決定需要事先作出,而一旦系統開始進行詳細設計甚至建造,這些決定就很難更改甚至無法更改。顯然,這樣的決定必定是有關系統設計成敗的最重要決定,必須經過非常慎重的研究和考察。

Ⅱ 什麼是軟體架構

當你去了解一個東東的時候,第一步要做的,就應該去知道這個東東的定義,對於軟體架構也是如此,經過網上查詢和書籍的幫助,我大概理清了一個輪廓。
軟體行業是一個熱衷於製造‘名詞’的行業,如果退回15年,估計沒幾個人知道‘軟體架構’是什麼,在上個世紀80年代,隨著軟體開發的規模不斷擴大,軟體開發成為一個行業,初期,隨之而來的是越來越多的軟體項目的失敗,造成項目失敗的原因很多,但主要集中在開發過程,所以軟體工程應運而生,CMMI等流程標准也是一茬接著一茬的冒個不停。
在軟體工程初具規模的時候,軟體開發還是以數據結構+演算法的形式存在,進入20世紀最後10年,隨著面向對象技術、設計模式等在開發過程中的成功應用,軟體架構也走進了大家的視野。
軟體架構在定義上分為‘組成派’和‘決策派’兩大陣營,分別描述如下:
’組成派‘認為軟體架構是將系統描述成計算組件及組件之間的交互
。它有兩個非常明顯的特點:
關注架構實踐的客體——軟體,以軟體本身作為描述對象。
分析了軟體的組成,說明軟體不是一個‘原子’意義上的整體,而是有不同的部分經過特定的介面進行連接組成的一個整體,這對軟體開發來說很重要。
‘決策派’認為
軟體架構包含了一系列的決策
,主要包括:
軟體系統的組織
選擇組成系統的結構元素和它們之間的介面,以及當這些元素相互協作時所體現的行為
用於指導這個系統組織的架構風格:這些元素以及它們的介面、協作和組合
軟體架構並不僅僅關注軟體本身的結構和行為,還注重其他特性:使用、功能性、性能、彈性、重用、可理解、經濟以及技術的限制和權衡等。
‘決策派’有以下兩個顯著的特點:
關注軟體架構中的實體——人,以人的決策為描述對象。
歸納了軟體架構決策的類型,指出架構決策不僅包括關於軟體系統的組織、元素、子系統和架構風格等幾類決策,還包括關於眾多非功能性需求的決策。
按照‘組成派’的觀點,軟體架構關注的是軟體整體的分割和交互,之所以分割,是因為不同的部分在邏輯或物理上相對獨立,通過‘分而治之’的原則進行分割可以更好的理解整個系統,把握用戶的需求,但是雖然整個軟體可以分割成多個模塊或子系統,但是模塊和子系統之間的通信和交互也是很重要的,我想按照這種觀點,架構師的主要任務是將軟體分割成不同的模塊,並定義模塊之間的介面。
按照‘決策派’的觀點,軟體是一個在很多限制下產生的產品,這些限制包括用戶和技術兩方面,用戶方麵包括功能需求、性能需求、硬體需求等,技術方麵包括技術選擇、可擴展性、可重用性、可維護性等。我想按照這中觀點,架構師的主要任務就是作出上述個各種限製作出選擇或決策。《軟體架構設計》 溫昱

Ⅲ 什麼是程序框架

程序設計中的框架包含DoitPHP(原Tommyframework)是一個基於BSD開源協議發布的輕量級PHP框架,還包含如thinkphp、codeigniter(簡稱CI)、yii framework、doophp、qeephp、等主流的程序設計框架,根據個人習慣和性能要求,其各也有不同的優缺點。

不論是哪一種技術,最終都是為業務發展而服務的。從業務的角度來講。首先,框架的是為了企業的業務發展和戰略規劃而服務的,他服從於企業的願景(vision);其次,框架最重要的目標是提高企業的競爭能力,包括降低成本、提高質量、改善客戶滿意程度,控制進度等方面。最後,框架實現這一目標的方式是進行有效的知識積累。軟體開發是一種知識活動,因此知識的聚集和積累是至關重要的。框架能夠採用一種結構化的方式對某個特定的業務領域進行描述,也就是將這個領域相關的技術以代碼、文檔、模型等方式固化下來。

Ⅳ 什麼是軟體結構

軟體結構(Software Structure)是指一種層次表況,由軟體組成成分構造軟體的過程、方法和表示。軟體結構主要包括程序結構和文檔結構。

Ⅳ 什麼是軟體結構

軟體體系結構研究如果僅僅停留在非形式化的框圖階段,已經難以適應進一步發展的需要。為支持基於體系結構的開發,需要有形式化建模符號、體系結構說明的分析與開發工具。從軟體體系結構研究的現狀來看,在這一領域近來已經有不少進展,其中比較有代表性的是美國卡耐基梅隆大學(Carnegie Mellon University)的Robert J.A11en於l997年提出的Wright系統。Wright是-種結構描述語言,該語言基於一種形式化的、抽象的系統模型,為描述和分析軟體體系結構和結構化方法提供了一種實用的工具。Wright主要側重於描述系統的軟體構件和連接的結構、配置和方法。它使用顯式的、獨立的連接模型來作為交互的方式,這使得該系統可以用邏輯謂詞符號系統,而不依賴特定的系統實例來描述系統的抽象行為。該系統還可以通過一組靜態檢查來判斷系統結構規格說明的一致性和完整性。從這些特性的分析來說,Wright系統的確適用於對大型系統的描述和分析。

Ⅵ 什麼是軟體架構

軟體結構)是指一種層次表況,由軟體組成成分構造軟體的過程、方法和表示。軟體結構主要包括程序結構和文檔結構。程序結構有兩層含義,一是指程序的數據結構和控制結構;另一是指由比程序低一級的程序單位(模塊)組成程序的過程、方法和表示。

Ⅶ 程序設計中的架構到底是指什麼

程序設計中的架構是指是一系列相關的抽象模式,用於指導大型軟體系統各個方面的設計。

軟體架構所指的就是說相應的系列性的抽象模式,可以為設計大型軟體系統的各個方面提供相應的指導。從本質上來看,軟體架構是屬於一種系統草圖。

在軟體架構所描述的對象就是直接的進行系統抽象組件構成。連接系統的各個組件之間就是做到把組件之間所存在的通訊比較明確與相對細致的實施描述。

處於相應的系統實現環節,那麼就會使得細化這些抽象組件成為現實的組件,比如可以是具體的某個類或者是對象。從面向對象領域進行分析,那麼各個組件之前實施的連接實現往往是介面。

(7)什麼是程序架構擴展閱讀:

程序設計中架構的三種分類:

1、邏輯架構:

軟體系統系統當中的各個元件之間所存在的關系,比如外部系統介面、用戶界面、商業邏輯元件、資料庫等。

2、物理架構:

究竟是怎樣做到在硬體當中放置軟體元件。例如處於上海與北京進行分布的分布式系統的物理架構,這也就是說全部的元件都是屬於物理設備,主要的有主機、整合伺服器、應用伺服器、代理伺服器、存儲伺服器、報表伺服器、Web伺服器、網路分流器等。

3、系統架構:

相應的系統存在著性能、強壯性、可擴展性、靈活性、可靠性等這些非功能性特徵。設計系統的架構比要讓系統架構設計人員存在著過硬的軟體與硬體的性能與功能,往往從事這樣的工作這是屬於設計系統架構環節最為困難的工作。

參考資料來源:網路-軟體架構

Ⅷ 什麼是程序架構

簡單點說就是一個模塊

Ⅸ 什麼是軟體系統架構設計

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

閱讀全文

與什麼是程序架構相關的資料

熱點內容
芝麻開門合約交易怎麼玩 瀏覽:567
設置顯卡時哪個是英雄聯盟主程序 瀏覽:844
昆明市的醫療信息公司有哪些 瀏覽:270
唐篩數據哪裡顯示男女 瀏覽:274
鈴木啟悅燒氣系統是哪裡的技術 瀏覽:70
標准進場程序STAR從哪裡開始 瀏覽:370
祛斑類產品指什麼斑 瀏覽:420
青島怎麼查看社保信息 瀏覽:114
如何清除授權軟體的信息 瀏覽:2
公司工商注冊信息怎麼列印 瀏覽:468
廣州白馬市場單買大概多少錢 瀏覽:120
數據分析師培訓課程有哪些 瀏覽:499
從傳媒大學到鑫盛建材市場怎麼去 瀏覽:426
佳麗寶產品為什麼沒有了 瀏覽:722
游戲刪除之後如何把他的數據刪除 瀏覽:601
數據中心管理層有哪些 瀏覽:780
多媒體與技術是什麼專業 瀏覽:13
代理商協議怎麼設置 瀏覽:628
陶瓷上的印花技術最早什麼年代 瀏覽:556
產品戰略部用英語怎麼說 瀏覽:738