一、前言
軟考含金量
系統架構設計師既然屬於軟考高級,它的含金量肯定也是比較大的。軟考證書是全國認可的,在很多國企、事業單位以及一些其他企業,可以用軟考證書來評職稱。而系統架構設計師屬於軟考高級資格證書,可聘任高級工程師職務,也就是說可以評高級職稱,幫助升職加薪。
考取了系統架構設計師證書,在一些城市入戶可以申請加分,對於落戶有一定用處。其次,在考取系統架構設計師證書的過程中,可以進一步鞏固自己所掌握的相關知識,為以後在工作中打好紮實的基礎。
由此可見,系統架構設計師的含金量是比較高的,但系統架構設計師每年只有一次考試,因此要報名的時候我們要留意報名時間。
系統架構設計師考試,屬於全國計算機技術與軟件專業技術資格考試(簡稱計算機軟件資格考試)中的一個高級考試。
長啥樣
啰嗦了這麼多,咱們先來看下我們軟考證書長啥樣吧!是不是有點心動的感覺呢?

系統架構設計師封面

系統架構設計師正面
報考條件
軟考系統架構設計師報名條件並不多,根據《計算機技術與軟件專業技術資格考試暫行規定》第八條相關規定:凡遵守中華人民共和國憲法和各項法律,恪守職業道德,具有一定計算機技術應用能力的人員,均可根據本人情況,報名參加相應專業類別、級別的考試。
因此,軟考系統架構設計師報名不設學歷與資歷條件、年齡以及專業等限制,符合以上條件的均可以報考。
報名時間
系統架構設計師通常一年只有一次考試,考試時間安排在下半年。因此,想要報考的要及時關注當地的報名通知,在規定的時間內進行報名,否則錯過了報名時間就只能等到次年進行報名了。
考試科目
軟考高級系統架構設計師包含三個考試科目:綜合知識、案例分析以及論文。綜合知識安排在上午考試,案例分析與論文安排在下午考試。
系統架構設計師考試科目
- 綜合知識
考試時間:上午9:00-11:30,考試時長為150分鐘,筆試,選擇題;
- 案例分析
考試時間:下午1:30-3:00,考試時長為90分鐘,筆試,問答題;
- 論文
考試時間:下午3:20-5:20,考試時長為120分鐘,筆試,論文題。
分數線
根據近幾年軟考合格分數線來看,系統架構設計師及格分數線基本上穩定在各個科目45分以上(含45分),系統架構設計師包含三個考試科目,需要三個科目同時達到合格標準才算及格。
軟考的合格標準是由國家人事部和信息產業部在每次考試結束後發文確定,根據全國考生考試成績的綜合水平統一划線,每年的合格分數線不是固定的。其合格標準控制在一定的比例內,每個級別的各科目考試均及格才算合格。且單科及格的成績不保留,不能轉到下次考試使用,需要在一次考試中各科目全部及格才算合格。
考試通過率
軟考各級別的通過率並不是很高,系統架構設計師屬於軟考高級,難度也比初級和中級更大,因此通過率也比初中級要低。
軟考各級別考試的平均通過率大約是在20%左右,這與軟考報名門檻不高等因素也是有一定關係的。軟考報名沒有學歷、專業等方面的限制,大部分人都可以報考,所以軟考的通過率也比較低。加上有些考生報名了並沒有參加考試,而且考試需要各個科目在一次考試中都及格才算合格,這在一定程度上也提高了考試難度。
雖然全國系統架構設計師的通過率並不高,但如果是有相關知識基礎的話,多花時間備考複習,還是比較容易通過的。
考試目標
考試合格人員應能夠根據系統需求規格說明書,結合應用領域和技術發展的實際情況,考慮有關約束條件,設計正確、合理的軟件架構,確保系統架構具有良好的特性;能夠對項目睥系統架構進行描述、分析、設計與評估;能夠按照相關標準編寫相應的設計文檔;能夠與系統分析師、項目管理師相互協作、配合工作;具有高級工程師的實際工作能力和業務水平。
總結
基於上述對於軟考的定義,心中有股衝動,我想要征服它,幾個月來,我在利用下班時間來學習高級的系統架構師,也是高級比較難考的一個考試了,以下是我學習的一些記錄,來迫使自己多來和大牛一起學習技能,提升自己,共同進步,筆記中有什麼錯誤,請諒解,並在留言區進行指正,不勝感激

綜合知識考點
學習筆記有以下的內容就足夠了,滿滿的乾貨
二、綜合知識
1、信息的概念:
- 香農:信息就是不確定性的減少
- 維納:信息就是信息,既不是物質,也不是能量
2、信息的特點:
- 客觀性:也叫事實性,不符合事實的信息學不僅沒有價值,還有副作用
- 動態性:信息隨着時間的變化而變化
- 層次性:信息可分為戰略級、管理級和操作級
- 傳遞性:信息在時間上的傳遞即使存儲,所以相對數據有滯後性
- 擴壓性:信息和實物不同,它卡哇伊擴散也可以壓縮
- 分享性:信息可以分享,這和物質不同,並且信息分享具有非零性
3、信息化的概念:
信息化是從工業社會到信息社會的演進與變革,信息化的主體是全體社會成員,時域是一個長期過程,空域是經濟和社會的一切領域,手段是先進社會生產工具
信息化對組織的意義:
- 組織的結構創新:如虛擬企業、虛擬社區
- 組織的管理創新:實施電子政務、建立電子政府、建立電子社區提升管理水平
- 組織經營創新:利用信息化將經營和管理融為一體
- 造就信息化的人才隊伍:三類人才(IT專業人才,業務人才,專家型人才)
4、信息系統的生命周期:
立項階段(企業全局、形成概念、需求分析)–>開發階段–>運維階段(通過驗收、移交之後)–>消亡階段(更新改造、功能擴展)
其中開發階段包括:總體規劃–>系統分析–>系統設計–>系統實施–>系統驗收
5、信息系統戰略規劃-方法:
- 第一階段:以數據處理為核心,圍繞職能部門需求
1、企業系統規劃法(BSP):自上而下識別系統目標,自下而上設計信息系統,對組織機構的變動具有適應性
2、關鍵成功因素法(CSF):找實現目標的關鍵信息集合,從而確定開發有限次序
3、戰略集合轉化法(SST):把戰略目標看成「信息集合」,把戰略目標轉變成信息系統的戰略目標
- 第二階段:以企業內部MIS為核心圍繞企業整體需求
1、戰略數據規劃法(SDP)、信息工程法(IE)、戰略柵格法(SG)
- 第三階段:綜合考慮企業內外環境,以集成為核心,圍繞企業戰略需求
1、價值鏈分析法(VCA)、戰略一致性模型(SAM)
6、企業信息化與電子商務–>商業智能
需求分析、數據倉庫建立、數據抽取、建立BI分析報表、用戶培訓和數據模擬測試、系統改進和完善
數據倉庫、數據挖掘、OLAP
7、數據倉庫的特點
面向主題、集成的、相對穩定的、反應歷史變化
8、數據挖掘 方法
決策樹、神經網絡、遺傳算法、關聯規則挖掘算法 分類:關聯分析、序列模式分析、分類分析、聚類分析
9、企業門戶
- 企業網站:注重單向信息傳遞,缺互動
- 企業信息門戶:把各種應用系統。數據資源和互聯網資源統一集成到企業門戶之下
- 企業知識門戶:企業網站的基礎上增加知識性內容
- 企業應用門區:實際上是對企業業務流程的幾冊很難過,它以業務流程和企業應用為核心,把也去流程中功能不同的應用模塊通過門戶技術集成在一起
- 企業通用門戶:集以上四者於一身
10、信息化的三流
信息流。資金流。物流
11、電子商務的形式
B2C、B2B、C2C、O2O(線上對線下)
12、軟件開發方法
- 結構化:用戶至上,嚴格區分工作階段,每個階段有任務和成果,強調系統開發過程的整體性和全局性,系統開發過程工程化,文檔資料標準化,自頂向下,逐步求精
- 原型法:適用於需求不明確的開發,包括拋棄型原型和進化型原型
- 面向對象方法:更好的復用,關鍵在於建立一個全面、合理、統一的模型,分析、設計、實現三個階段,界限不明確
- 面向服務的方法:SO方法有三個主要的抽象級別,是操作、服務、業務流程,SOAD分為三個層次,是基礎設計層、應用結構層、業務組織層,服務建模是分為服務發現、服務規約、服務實現
13、軟件開發模型
- 瀑布模型:軟件計劃、需求分析、軟件設計、程序編碼、軟件測試。運行維護
- 演化模型:
- 增量模型:每一個增量均發佈一個可操作的產品
- 螺旋模型:指定計劃、風險分析、實施工程、客戶評估
- 快速原型模型
- 噴泉模型:迭代,無間隙
- V模型
- 統一過程:初始(確定項目範圍和邊界)、細化(建立軟件架構基礎)、構建(構建組裝與測試)、交付(製作發佈版本)
- 構件組裝模型:需求分析和定義、軟件架構設計、構件庫建立、應用軟件構建、測試和發佈
- 敏捷方法:自適應開發、水晶方法、特性驅動開發、極限編程
14、逆向工程
實現級:包括程序的抽象語法書、符號表、過程的設計表示
結構級:包括反應程序分量之間項目依賴關係的信息。例如調用圖、結構圖、程序和數據結構
功能級:包括反應程序段功能及程序段之間關係的信息
領域級:包括反應程序分量或者程序實體與應用領域概念之間對應關係的信息
15、需求工程
軟件需求是指用戶對系統在功能、行為、性能、設計約束等方賣弄的期望,用戶解決問題或達到目標所需的條件或能力,是系統或系統不見要滿足合同。標準。規範和其他正式規定文檔所需具有的條件或能力,以及反映這些條件或能力的文檔說明
需求開發:需求獲取、需求分析、需求定義、需求驗證
需求管理:變更控制、版本控制、需求跟蹤、需求狀態跟蹤
需求管理支持需求開發
16、軟件需求獲取方法
手機資料、聯合討論會、用戶訪談、書面調查、現場觀摩、參加業務實踐、閱讀歷史文檔、抽樣調查
17、軟件需求的分類
業務需求、用戶需求、系統需求、功能需求、性能需求、設計約束、基本需求、期望需求、興奮需求
18、UML
結構圖:類圖、對象圖、包圖、結合結構圖、構建圖、部署圖、製品圖
行為圖:用例圖、順序圖、通信圖、定時圖、狀態圖、活動圖、交互圖
19、4+1視圖
邏輯視圖(系統分析和設計人員)–>實現視圖(程序員)–>部署視圖(系統弄個和網絡工程師)–>進程視圖(系統集成人員)
用例視圖(最終用戶)
用例圖:描述一組用例、參與者及它們之間的關係。用戶角度描述系統功能;參與者是外部因素;用例是功能單元
關係包括:包含關係、擴展關係、泛化關係
20、用例建模流程
識別參與者、合併需求獲得用例、細化用例描述、調整用例模型
21、類和對象的關係
依賴關係、泛化關係、聚合關係、組合關係、實現關係
22、人機界面設計
置於用戶控制之下、減少用戶記憶負擔、保持界面的一致性
23、結構化設計
保持模塊適中、儘可能減少調用的深度、多扇入,少扇出、單入口,單出口、模塊的作用域應該在模塊之內、功能應該是可預測的
24、面向對象設計原則
單一職責:設計謎底單一的類
開放-封閉:對擴展開放,對修改封閉
李氏替換:子類可以替換父類
依賴倒置:要依賴於抽象,而不是具體實現;針對接口編程,不要針對實現編程
接口隔離:使用多個專門的接口比使用單一的總接口要好
組合重用:要盡量使用組合,而不是集成關係達到重用目的
迪米特:一個對象應當對其他對象有儘可能少的了解
25、設計模式
架構模式:軟件設計中的高層決策,例如使用C/S結構就屬於架構模式,架構模式反應了開發軟件系統過程中所做的基本設計決策
設計模式:主要關注軟件系統的設計,與具體的實現語言無關
慣用法:是最底層的模式,關注軟件系統的設計與實現,實現時通過某種特定的程序設計語言來描述構建與構建之間的關係。每種編程語言都有它自己特定的模式
26、設計模式分類
創建性模式:
工廠方法(factory)–動態生成對象
抽象工廠(abstract factory)–生產系列對象
原型(prototype)-克隆對象
單例(singleton)–單實例
構建器(builder)–複雜對象構建
結構型模式:
適配器(adapter)–轉換接口
橋接(bridge)–繼承樹拆分
組合(composite)–樹形目錄結構
裝飾(decorator)–附加職責
外觀(facade)–對外統一接口
享元(flyweight)–漢字編碼
代理(proxy)–快捷方式
行為型模式
職責鏈(chain of resposibility)–傳遞職責
命令(command)–日誌記錄,可撤銷
解釋器(interpreter)–虛擬機機制
迭代器(iterator)–數據集
中介者(mediator)–不直接引用
備忘錄(memento)、觀察者(observer)–聯動
狀態(state)–狀態變成類
策略(strategy)–多方案切換
模板方法(template method)、訪問者(visitor)
27、軟件測試–測試類型
動態測試:黑盒測試、白盒測試、灰盒測試
靜態測試:桌前審查、代碼審查、代碼走查
面向對象的測試:算法層(單元測試)、類層(模塊測試)、模板層(集成測試)。系統層(系統格式)
28、軟件調試
方法:
- 蠻力法:主要思想是「通過計算機找錯」,低效,耗時
- 回溯法:從出錯處人工沿控制流程往回追蹤,直至發現出錯的根源。複雜程序由於回溯路徑多,難以實施
- 原因排除法:主要思想是演繹和歸納,用二分法實現
- 調試和測試區別:
- 測試找出存在的錯誤,調試定位錯誤並修改錯誤
- 調試時測試後的活動
- 測試從一個已知的條件開始,使用預先定義的過程,有預知的結果;調試從一個位置的條件開始,結束的過程不可預計
- 測試過程可以事先設計,進度可以事先確定;調試不能描述過程或持續時間
29、軟件架構概念
軟件架構風格是描述某一特定領域中系統組織方式的慣用模式。架構風格定義一個系統家族,即一個體系結構定義一個詞彙表和一組約束。詞彙表中暴行一些構建和連接類型,而這租約束支出系統是如何將這些構建和連接件組合起來的。
軟件架構為軟件系統提供給了一個結構、行為和屬性的高級抽象,有構成系統的元素描述,這些元素的相互作用,指導元素集成的模式以及這些模式的約束組成
軟件架構師項目干係人進行交流的手段,明確了對系統實現的約束條件,決定了開發和維護組織的組織結構,制約着系統的質量屬性
軟件架構使推理和控制的更改更加簡單,有助於循環漸進的原型設計,可以作為培訓的基礎
軟件架構是可傳遞復用的模型,通過研究軟件架構可能預測軟件的質量
30、軟件架構建模
結構模型:以架構的構建、連接件和其他概念來刻畫結構
框架模型:不太側重描述結構的細節而更側重於整體的結構
動態模型:系統的」大顆粒「的行為性質
過程模型:構建系統的步驟和過程
功能模型:」由一組功能構件按層次組成,下層向上層提供服務
31、架構描述語言(ADL)
支持構建、連接子及其配置的描述語言。ADL對鏈接子的重視成為區分ADL和其他建模語言的重要特徵之一。
32、ADL包括
UniCon,Rapide,Darwin,Wright,C2 SADL,Acme,xADL,XYZ/ADL,A BC/ADL等
33、軟件架構風格
- 數據流風格:批處理序列、管道-過濾器
- 調用/返迴風格:主程序/子程序、面向對象、層次結構
- 獨立構建風格:進程通信、事件驅動(隱式調用)
- 虛擬機風格:解釋器、基於規則的系統
- 倉庫風格:數據庫系統、超文本系統、黑板系統
- 批處理序列:構建為一系列固定順序的計算單元,構件之間只通過數據傳遞交互。每個處理步驟是一個獨立的程序,每一步必須在其前一步結束後才能開始,數據必須是完整的,以整體的方式傳遞
- 管道-過濾器:每個構件都有一組輸入和輸出,構建讀輸入的數據流,經過內部處理,然後產生輸出數據流。早期的編譯器就是採用這種架構。要一步一步處理的,均可採用此架構風格
- 主程序/子程序:單線程控制,把問題劃分為若干個處理步驟,構建即為主程序和子程序,子程序通常可合併成為模塊。通過調用作為交互機制,即充當連接件的角色。調用關係具有層次性,其語義邏輯表現為主程序的正確性取決於它調用的子程序的正確性
- 面向對象:構件是對象,對象是抽象數據類型的實例。在抽象數據類型中,數據的表示和它們的相應操作被封裝起來,對象的行為體香在其接受和請求的動作。連接件即是對象間交互的方式,對象是通過函數和過程的調用來交互的
- 層次結構:構件組織成一個層次結構,連接件通過決定層間如何交互的協議來定義。每層為上一層提供服務,使用下一層的服務,只能見到與自己領接的層。通過層次結構,可以將大的問題分解為若干個漸進的小問題逐步解決,可以隱藏問題的複雜度。修改某一層,最多影響其相鄰的兩層
層次結構
優點:
這種風格支持基於可增加抽象層的設計,允許將一個複雜問題分解成一個增量步驟序列的實現
不同的層次處於不同上午抽象級別:越靠近底層,抽象級別越高;越靠近頂層,抽象級別越低
由於每一層最多隻影響兩層,同事只要給相鄰層提供相同的接口,允許每層用不同的方法實現,同樣為軟件復用提供了強大的支持
缺點:
並不是每個系統都可以很容易地劃分為分層的模式
很難找到一個合適的、正確的層次抽象方法
①、進程通信
構件是獨立的過程,連接件是消息傳遞。構建通常是命名過程,消息傳遞的方式可以使點對點、異步火同步方式,以及遠程過程調用等
②、事件驅動(隱式調用)
構建不直接調用一個過程,而是觸發或廣播一個或多個事件。構建中的過程在一個或多個事件中註冊,當某個時間被觸發時,系統自動調用在這個事件中註冊的所有過程。一個時間的觸發就導致了另一個模塊中的過程調用。這種風格中的構件是匿名的過程,它們之間交互的連接件往往是以過程之間的隱式調用來實現的。
優點:
是為了軟件復用提供了強大的支持,為構件的維護和演化提供了方便
缺點:
構件放棄了對系統計算的控制
③、解釋器
通常包括一個完成解釋工作的解釋引擎、一個包含將被解釋的代碼的存儲區、一個記錄解釋引擎當前工作狀態的數據結構,以及一個記錄源代碼被解釋執行的進度的數據結構。具有解釋器風格的原件中含有一個虛擬機,可以仿真硬件的執行過程和一些關鍵應用,其缺點是執行效率低
④、基於規則的系統
包括規則集、規則解釋器、規則/數據選擇器和工作內存,一般用在人工智能領域和DSS中
⑤、數據庫系統
構件主要有兩大類,一類是中央共享數據源,保存當前系統的數據狀態;另一類是多個獨立處理單元,處理黨員對數據元素進行操作
⑥、黑板系統
包括知識源、黑板和控制三部分。知識源包括若干獨立計算的不同單元,提供解決問題的知識。知識源響應黑板的變化,也只修改黑板;黑板是一個全局數據庫,包含問題域解空間的全部狀態,是知識源相互作用的唯一媒介;知識源響應是通過黑板狀態的變化來控制的。黑板系統通常應用在對於解決問題沒有確定性算法的軟件中(信號處理、問題規劃和編譯器優化等)
⑦、超文本系統
構件以王莊鏈接方式相互連接,用戶可以在構件之間進行按照人類的聯想思維方式任意跳轉到相關構件。超文本是一種非線性的網狀信息組織方法,它以節點為基本單位,鏈作為節點之間的聯想方式關聯。超文本系統通常應用在互聯網領域
現代集成編譯環境一般採用倉庫風格
34、閉環控制架構
當軟件被用來操作一個物理系統時,軟件與硬件之間可以粗略地表示為一個反饋循環,這個反饋循環通過接受一定的輸入,確定一系列的輸出,最終使環境達到一個新的狀態。適合於嵌入式系統,涉及連續的動作與狀態
35、兩層C/S架構
開發成本較,客戶端程序設計複雜,信息內容和形式單一,用戶界面風格不一,軟件移植困難,軟件維護和升級困難,新技術不能輕易應用
36、三層B/S架構
缺乏對動態頁面的支持能力,沒有集成有效的數據庫處理功能,安全性難以控制,在數據查詢等響應速度上,要遠遠低於C/S架構,數據提交一般以頁面為單位,數據的動態交互性步槍,不利於OLTP應用
37、富互聯網應用(RIA)
結合了C/S架構反應速度快,交互性強的優點,以及B/S架構傳播範圍廣以及容易傳播的特性,簡化並改進了B/S架構的用戶交互,數據能夠被緩衝到客戶端,從而可以實現一個比基於HTML的響應速度更快且數據往返於服務器的次數更少的用戶界面
38、基於服務的架構(SOA)
服務構件粗粒度,傳統構件細粒度居多,服務構件的接口是標準的,主要是WSDL接口,傳統構件常以具體API形式出現,服務構件的實現與語言無關,傳統構件綁定某種特定語言,服務構件可以通過構件容器提供QoS的服務,傳統構件完全由程序代碼直接控制
39、SOA關鍵技術:
- 發現服務:UDDI,DISCO
- 描述服務:WSDL,XML Schema
- 消息格式層:SOAP,REST
- 編碼格式層:XML(DOM,SAX)
- 傳輸協議層:HTTP,TCP/IP,SMTP
①、SOA–關鍵技術–XML:
實現不同數據的集成,使用多種應用環境,客戶端數據處理與計算,數據顯示多樣化,局部數更新,Web Service,數據集成,軟件架構描述,軟件架構演化,RIA,XML數據庫
②、SOA–關鍵技術–REST:
HTTP+XML進行基於Web通信技術,簡單性,缺少嚴格配置文件,只支持幾個操作(POST,GET,PUT,DELETE),強調信息本身,稱為資源
網絡上的所有事物都被抽象為資源,每個資源對應一個唯一的資源標識,通過調用的連接器接口對資源進行操作,對資源的各種操作不會改變資源標識,所有操作都是無狀態的
③、SOA–關鍵技術–UDDI&DISCO:
- UDDI數據庫模型:一個用於描述企業和夫妻的XML Schema
- UDDI API:一組用於查找或發佈UDDI數據的方法,基於SOAP
- UDDI註冊服務:一種基於設施,對應着服務註冊中心的角色
DISCO可以定義一個文檔格式和詢問算法,發現給定服務器上公開的服務
DISCO能夠發現內閣服務的功能(通過文檔),以及如何與它進行交互(通過WSDL)
如果要使用DISCO發佈一個已部署的服務,只需要創建一個.disco文件
40、SOA的實現方式–Web Service:
註冊中心(服務描述)<–發佈–>服務提供着(服務,服務描述)<–綁定–>服務請求者<–查找–>註冊中心
①、SOA的實現方式–ESB:
提供位置透明性的消息路由和尋址服務,提供服務註冊和命名管理功能,支持多種的消息傳遞泛型,支持多種可以廣泛使用的傳輸協議,支持多種數據格式及其項目轉換,提供日誌和監控功能
②、SAO的實現方式–服務註冊:
- 服務註冊:應用開發者(服務提供者)向註冊表公布服務的功能
- 服務位置:服務使用者(服務應用開發者),幫助他們查詢註冊服務,尋找符合自身要求的服務
- 服務綁定:服務使用者利用檢索到的服務接口來編寫代碼,所編寫的代碼將與註冊的服務綁定過,調用註冊的服務,以及與它們實現互動
41、微服務:
就是很小的服務,所以他不屬於面向服務架構的一種,它是一種架構模式,它提倡將單一應用程序劃分成一組小的服務,服務之間互相協調,互相配合,為用戶提供最終價值。每個服務運行在其獨立的進程中,服務與服務之間採用輕量級的通信機制互相溝通(通常是基於HTTP協議的RESTful API)。每個服務都圍繞着具體業務進行構建,並且嫩鞏固獨立的部署到生產環境,類生產環境等。另外,應當盡量避免統一的,集中式的服務管理機制,對具體的一個服務而言,應根據業務上下文選擇合適的語言,工具對其進行構建。
特點:小,且專註於做一件事,輕量級的通信機制,松耦合,獨立部署
優勢:技術異構性,彈性,擴展,簡化部署,與組織結構相匹配,可組合性,對可替代性的優化
面臨挑戰:分佈式系統的複雜度,運維成本,部署自動化,DevOps與組織結構,服務間依賴測試,服務間依賴管理
①、微服務 SOA
- 能拆分就拆分 是整體的,服務能放一起都放一起
- 縱向業務劃分 是水平分多層
- 由單一組織負責 按層級劃分不同部門的組織負責
- 細粒度 粗粒度
- 兩句話可以解釋明白 幾百字只相當於SOA的目錄
- 獨立的子公司 類似大公司里賣弄劃分了一些業務單元
- 組件小 存在較複雜的組件
- 業務邏輯存在於每一個服務中 業務邏輯橫跨多個業務領域
- 使用通過輕量級的通信方式 企業服務總線(ESB)充當了服務之間通信的角色
②、微服務架構實現 SOA實現
- 團隊及,自底向上 秋娥及,自頂向下
- 一個系統被拆分成多個服務,細粒度 服務由多個子系統組成,粒度大
- 無集成式總線,鬆散的服務架構 企業服務總線,集中式的服務架構
- 集成方式簡單(HTTP/REST/JSON) 集成方式複雜(ESB/WS/SOAP)
- 服務能獨立部署 單塊架構系統,相互依賴,部署複雜
42、架構描述語言(ADL)
它在底層予以模型的 支持下,為軟件系統的概念體系結構建模提供了具體語法和概念框架。基於底層語義的工具為體系結構的表示,分析,演化,細化設計過程等提供支持。
①、ADL三個基本要素:
- 構件:計算或數據存儲單元
- 連接件:用於構件之間交互建模的體系結構構造快及其支配這些交互的規則
- 架構配置:描述體系結構的構件與連接件的連接圖
②、架構描述語言:
- Aesop:支持體系結構風格的應用
- MetaH:為設計者提供了關於實時電子控制軟件系統的設計指導
- C2:支持基於消息傳遞風格的用戶界面系統的描述
- Rapide:支持體系接哦古設計的模擬並提供了分析模擬結構的工具
- SADL:提供了關於體系結構加細的形式話基礎
- Unicon:支持異構的構件和連接類型並提供了關於體系結構的高層編譯器
- Wright:支持體系結構構件之間交互的說明和分析
43、基於架構的軟件設計(ABSD):
是架構驅動,即強調由業務,質量和功能需求的組合驅動架構設計,設計活動可以從項目總體功能框架明確就開始,這意味着需求獲取和分析還沒有完成,就開始了軟件設計
①、ABSD有三個基礎:
1)功能分解,使用已有的基於模塊的內聚和耦合技術。
2)通過選擇架構風格來實現質量和業務需求。
3)軟件模板的使用,軟件模板利用了一些軟件系統的結構
ABSD方法是遞歸的,且迭代的每一個步驟都是清晰地定義的。因此,不管設計是否完成,架構總是清晰的,這有助於降低架構設計的隨意性
②、基於架構的軟件開發方法—-開發過程
- 架構需求,架構設計,架構文檔化,架構複審,架構實現,架構演化
- 架構需求過程:需求獲取,生成類圖,對類進行分組,把類打包成構件,需求評審
- 架構設計過程:提出架構模式,映射構件,分析構件相互作用,生產架構,設計評審
- 架構實現過程:複審後的文檔化架構,分析與設計,構件實現,構件組裝,系統測試,架構演化
- 架構演化過程:需求變化歸類,腳骨演化計劃,構件變動,更新構件的相互作用,構件組裝與測試,技術評審,演化後的架構
44、軟件架構評估–質量屬性
性能:系統的響應能力,即要經過多長時間才能對某個事件做出響應,或者在某段時間內系統所能處理的事件個數
代表參數:響應時間,吞吐量 設計策略:有限級隊列,資源調度
可靠性:軟件系統在應用或系統錯誤面前,在意外或錯誤使用的情況下維持軟件系統的功能性的基本能力
代表參數:MTTF,MTBF 設計策略:冗餘,心跳線
可用性:系統能夠正常運行的時間比例
代表參數:故障間隔時間 榮譽,心跳線
安全性:系統在想合法用戶提供服務的同時能夠阻止非授權用戶使用服務的能力
設計策略:追蹤審計,信息隱藏
可修改行:能夠快速地以較高的性能價格比對系統進行變更後的能力
功能性:系統給所能完成期望的工作能力
可變性」:體系結構擴充或變更而成為新體系結構的能力
互操作性:作為系統組成部分的軟件不是獨立的,經常與其他系統或自身環境相互作用
45、軟件架構評估–基於場景的方式
腳骨權衡分析法(ATAM),軟件架構分析法(SAAM),成本效益分析法(CBAM)
46、中間件技術–概念
是一種獨立的系統軟件或服務程序,可以幫助分佈式應用 軟件在不同技術之間共享資源
47、主要的中間件
遠程過程調用,對象請求代理,遠程方法調用,面向消息的中間件,事物處理監控器
48、負載均衡技術:
- 基於特定軟件的負載均衡(HTTP重定向)(應用層)
- 反向代理負載均衡(應用層)
- 基於DNS的負載均衡(傳輸層)
- 基於NAT的負載均衡(傳輸層)
- 混合型負載均衡
①、負載均衡的靜態算法
- 輪轉算法,加權輪轉算法,源地址哈希散列算法目標地址哈希散列算法,隨機算法
- 負載均衡動態算法:最小連接數算法,加權最小連接數算法,加權百分比算法
②、硬件負載均衡
F5 軟件負載均衡:LVS,Nginx,HAproxy
49、REST的5個原則:
網絡上的所有事物都被抽象為資源,每個資源對應一個唯一的資源標識,通過通用的額連接件接口對資源進行操作,對資源的各種操作不會改變資源標識,所有 的操作都是無狀態的
50、響應式WEB設計的方法和策略:
採用流式布局和彈性化設計:使用相對單位,設定百分比而非具體的值的方式設置頁面元素的大小
響應式圖片:不僅要同比的縮放圖片,嗨喲啊在小設備上降低土拍你自身的分辨率
51、對稱加密:
DES,RC-5,IDEA
①、缺陷:加密強度不高,但效率高,密鑰分發困難
52、非對稱加密:
RSA,ECC
①、缺陷:加密速度慢
53、信息摘要:
MD5,SHA
54、數字證書內容
證書版本信息,證書序列號,每個證書都有一個唯一的證書序列號,證書所使用的簽名算法,證書發行機構名稱,命名規則一般採用X.500格式,證書有效期,現在通用的證書一般採用UTC時間格式,1950-2049,證書所有人名稱,命名規則一般採用X.500格式,證書所有人的公開密鑰,證書發行者的證書的簽名
55、被動攻擊:
手機信息為主,破壞保密性,攻擊名稱:竊聽,業務流分析,非法登陸
56、主動攻擊:
主動攻擊的類別主要有:中斷(破壞可用性),篡改(破壞完整性),偽造(破壞真實性)。攻擊名稱:假冒身份,抵賴,旁路控制,重放攻擊,拒絕服務(DOS)
57、可靠性:
軟件可靠性 不等於 硬件可靠性
- 複雜性:軟件複雜性比硬件高,大部分失效來自於軟件失效
- 物理退化:硬件失效主要是物理退化所致,軟件不存在物理退化
- 唯一性:軟件是唯一的,每個COPY版本都一樣,而兩個硬件不可能完全一樣
- 版本更新周期:硬件較慢,軟件較快
①、可靠性設計:
結構冗餘(硬件冗餘,軟件冗餘),信息冗餘(校驗碼),時間冗餘(重讀多次進行相同的計算)
可靠性設計包括:
N版本程序設計,恢復快方法,防衛式程序設計,雙機容錯,集群技術
可靠性設計—防衛式程序設計:對於程序中存在的錯誤和不一致性,通過在程序中包含錯誤檢查代碼和錯誤回復代碼,使得一旦錯誤發生,程序能撤銷錯誤狀態,回復到一個已知的是正確狀態中去
②、實現策略:
錯誤檢測,破壞估計,錯誤恢復
③、可靠性設計—雙機容錯:
雙機熱備份,雙機互備份,雙機雙工模式
④、可靠性設計—集群技術:
可伸縮性,高可用性,可管理型,高性價比,高透明性
⑤、範圍管理:
範圍計劃編製–>範圍定義–>創建WBS–>範圍確認–>範圍控制
⑥、時間管理:
活動定義–>活動排序–>活動資源估算–>活動歷時估算–>制定進度計劃–>進度控制
58、時間管理–甘特圖:
優點:直觀,容易製作,便於理解,能很清晰地標識出直到每一項任務的起始與結束時間,一般適用比較簡單的小型項目,可用於WBS的任何層次,進度控制,資源優化,編製資源和費用計劃
缺點:不能系統的表達一個項目所包含的各項工作自建的複雜關係,難以進行定量的計算和分析,以及計劃的優化等
59、成本管理:
成本估算(自頂向下的估算,自底向上的估算,差別估算法)–>成本預算(直接成本與間接成本,管理儲備,零基準預算)–>成本控制(凈值分析)
①、成本管理–凈值管:
- 計劃工作量的預算成本(PV)=計劃工作量*預算定額
- 已完成工作量的實際成本(AC)
- 已完成工作量的預算成本(EV)=已完成工作量*預算定額
- 完工預算(BAC)=完工時的PV總和
- 進度偏差(SV)=EV-PV
- 成本偏差(CV)=EV-AC
- 進度績效指數(SPI)=EV/PV
- 成本績效指數(CPI)=EV/AC
- 剩餘工作的成本(ETC)=BAC-EV 或者 =(BAC-EV)/CPI
- 完工估算(EAC)=AC+ETC
60、軟件質量管理–質量保證與質量控制
質量保證一般是每隔一定時間進行,主要通過系統的質量審計和過程分析來保證項目的質量,獨特工具包括:質量審計和過程分析
質量控制的實時監控項目的具體結果,以判斷它們是否符合相關質量標準,制定有效方案,以消除生產質量問題的原因
61、軟件評審:
不應以測試代替評審,評審人員應關注產品而不應評論開發人員,評審人員應關注於實質性問題,評審會議不應變為問題解決方案討論會,評審應被安排進入項目計劃,評審參與者應了解整個評審過程,評審人員事先應對評審材料充分了解,應重視評審的組織工作
62、軟件過程改進
組織能力成熟度:
已管理級:需求管理,項目計劃,配置管理,項目監督與控制,供應商合同管理,治療和分析,過程和產品質量保證
已定義級:需求開發,技術解決方案,產品集成,驗證,確認,組織級過程焦點,組織級過程定義,組織級培訓,集成項目管理,風險管理,集成化的團隊,決策分析和解決方案,組織級集成環境
定量管理級:組織級過程性能,定量項目管理
優化級:組織級改革與實施,因果分析和解決方案
63、軟件配置管理–軟件工具:
軟件開發工具:需求分析工,設計工具,編碼與排錯工具
軟件維護工具:版本控制工具,文檔分析工具,開發信息庫工具,逆向工程工具,再工程工具
軟件管理和軟件支持工具:項目管理工具,配置管理工具,軟件評價工具,軟件開發工具的評價和選擇
64、軟件配置管理–變更控制:
變更申請–>變更評估–>變更決策–>變更實施–>變更驗證–>溝通存檔
65、風險管理:
風險訊在的客觀性和普遍性,某一具體風險發生的偶然性和大量風險發生的必然性,風險的可變性,風險的多樣性和多層次性
①、風險的基本屬性:
隨機性和相對性
②、風險管理–風險的分類:
項目風險:
潛在的預算,進度,人員和組織,資源,用戶和需求問題
技術風向:
潛在的設計,實現,接口,測試和維護方面的問題
商業風險:
市場風險:系統雖然很優秀但不是市場真正所想要的
策略風險:系統不再符合企業的信息系統戰略
銷售風險:開發了銷售部門不清楚如何推銷的系統
管理風險:由於重點轉移或人員變動而失去上級支持
預算風險:開發過程沒有得到預算或人員的保證
③、風險曝光度:
風險出現的概率乘以風險可能造成的損失
66、項目管理工具
能做什麼:任務調度,成本估算,資源分配,預算跟蹤,人時統計,配置控制,確定關鍵路徑,鬆弛時間,超前時間和滯後時間,生成一定格式的報表和報告
不能做什麼:不能知道軟件設計人員按軟件生存周期各個階段的適用技術行進設計工作
67、案例分析考點:

案例分析考點
68、論文考點:

論文考點

論文考點

論文考點

論文考點

論文考點

論文考點

論文考點
69、CISC(複雜):
數量多,使用頻率差別大,可變長度,支持多種,微程序控制技術,研製周期長
70、RISC(精簡):
數量少使用頻率接近,定長格式,大部分為單周期指令,操作寄存器,只有Load/Store操作內存,支持方式少,增加了通用寄存器,硬布線邏輯控制為主,適合採用流水線,優化編譯,有效支持高級語言
71、隨機存儲器:
DRAM,SEAM 制度存儲器:MROM,PROM,EPROM,閃存
一條總線同時僅允許一個設備發送,但允許多個設備接收
72、系統性能設計—性能指標:
字長和數據通路寬度,主存容量和存儲速度,運算速度,吞吐量與吞吐率,響應時間,完成時間,兼容性,主頻與CPU時鐘周期,CPI與IPC,MIPS與MFLOPS
MIPS=指令條數/(執行時間*10^6)=主頻/CPI=主頻*IPC
MFLOPS=浮點操作次數/(執行時間*10^6)
73、阿姆達爾定律:
74、性能評價方法:
- 時鐘頻率法:以時鐘頻率高低衡量速度
- 指令執行速度法:標識機器運算速度的單位是MIPS
- 等效指令速度法:通過各類指令在程序中所佔比例進行計算得到的。特點:考慮之林比例不同問題
- 數據處理速率法:PDR值的方法來衡量機器性能,PDR值越大,機器性能越好。PDR=L/R 特點:考慮CPU+存儲
- 綜合理論性能法:CTP用MTOPS表示。CTP估算法是,首先算出處理部件每個計算單元的有效計算率,再按不同字長加以調整,
- 基準程序法:把應用程序中用的最多,最頻繁的那部分核心程序作為評估計算機系統性能的標準程序,基準程序法是目前一致承認的測試系統性能的較好方法
真實程序->核心程序->小型基準程序->合成基準程序
75、頁式存儲組織:
將程序與內存均劃分為同樣大小的塊,以頁為達到那位將程序調入內存
優點:利用率高,碎片小,分配及管理簡單
缺點:增加了系統開銷,可能產生抖動象限
76、段式存儲組織:
按用戶作業中的自然段來劃分邏輯空間,然後調入內存,段的長度可以不一樣
優點:多道程序共享內存,各段程序修改互不影響
缺點:內存利用率低,內存碎片浪費大
77、段頁式存儲組織:
段與頁式的綜合體,先分段,再分頁,一個程序有若干個段,每個段中可以有若干個頁,每個頁的大小相同,但每個段的大小不同
優點:空間浪費小,存儲共享容易,存儲保護容易,能動態連接
缺點:由於管理阮家就的增加,複雜性和開銷也隨之增加,需要的硬件以及佔用的內榮也有所增加,使得執行速度大大下降
78、塊表:
一塊小容量的相連存儲器,由高速緩衝器組成,速度快,並且可以從硬件上保證按內容並行查找,一般用來存放當前訪問最頻繁的少數活動頁面的頁號
塊表:將頁表存於Cache上 慢表:將頁表存放於內存上
79、嵌入式操作系統特點:
微型化,代碼質量高,專業化,實時性強。可裁減,可配置
80、實時嵌入式系統的內核服務器:
異常和中斷,計時器,I/C管理
主機向本地域名服務器的查詢採用遞歸查詢,本地域名服務器向根域名服務器的查詢採用迭代查詢
81、本機查詢IP的順序:
緩衝–>HOST–>本地域名->根域名->頂級域名
82、網絡規劃原則:
實用性原則,開放性原則,先進性原則
網絡設計任務:確定網絡總體目標,確定總體設計原則,通信子網設計,資源子網設計,設備選型,網絡操作系統與服務器資源設備,網絡安全設計
網絡實施原則:可靠性原則,安全性原則,高效性原則,可擴展性原則
網絡實施步驟:工程實施計劃,網絡設備到貨驗收,設備安裝,系統測試,系統試運行,用戶培訓,系統轉換
需求規範,通信規範,邏輯網絡設計(拓撲結構,網絡地址分配,安全規劃,網絡管理,選擇路由協議,設備命名規則),物理網絡設計(設備具體物理分佈,運行環境等確定,設備選型,結構化布線,機房設計),實施階段
邏輯網絡設計輸出:邏輯網絡設計圖,IP地址方案,安全方案,招聘和培訓網絡員工的具體說明,對硬件和服務已經員工和培訓的費用初步估計
物理網絡設計輸出:網絡物理結構圖和布線方案,設備和部件的詳細列表清單,軟硬件和安裝費用的估算,安裝日程表,詳細說明服務的時間以及期限,安裝後的測試計劃,用戶的培訓計劃
83、網絡分層設計:
- 接入層:用戶接入,計費管理,MAC地址認證,手機用戶信息
- 匯聚層:網絡訪問策略控制,數據包處理,過濾,尋址
- 核心層:高速數據交換,常用冗餘機制
84、IPV4/IPV6過濾技術:
- 雙協議棧技術:雙協議棧技術通過節點對IPV4和IPV6雙協議棧的支持,從而支持兩種業務的共存
- 隧道技術:隧道技術通過在IPV4網絡中部署隧道,實現在IPV4網絡上在IPV6業務的承載,保證業務的共存和過濾,隧道技術包括:6to4隧道;6over4隧道;ISATAP隧道
- NAT-PY技術:NAT-PT使用網關設備連接IPV6和IPV4網絡
85、物聯網:
實現物物相連的互聯網,其內涵包含兩個方面:1,物聯網的核心和基礎仍然式互聯網,是在互聯網基礎上延伸和擴展的網絡。2,其用戶端延伸和擴展到了任何物體與物體之間,使其進行信息交互和通信
感知層:識別物體,採集信息。
網絡層:傳遞信息和處理信息。
應用層:解決信息處理和人機交互的問題
①、物聯網關鍵技術:
RFID,二維碼
86、雲計算:
一種基於互聯網的計算方式,通過這種方式,共享的軟硬件資源和信息可以按需提供給計算機和其他設備。核心思想是將大量網絡連接的計算資源同意管理和調度,構成一個計算資源池向用戶按需服務。
①、雲計算特點:
集合了大量計算機,規模達到成千上萬,多種軟硬件技術相結合,對客戶端設備的要求低,規模化效應
87、視圖特點:
簡化用戶操作,使用戶能以多種角度看待同一數據,對重構數據庫提供了一定程度的邏輯獨立性,可以對機密數據提供安全保護
非規範化的關係模式,可能存在的問題包括:數據冗餘,更新異常,插入異常,刪除異常
88、反規範化手段:
增加派生性冗餘列,增加冗餘列,重新組表,分割表
89、事物:
原子性,一致性,隔離性,持續性
90、數據庫完整性約束:
實體完整性,參照完整性,用戶自定義完整性,觸發器
①、數據庫完整性約束措施:
用戶標識和鑒定,存取控制,密碼存儲和傳輸,視圖的保護,審計
91、數據備份:
完全備份,差量備份,增量備份
92、數據表分區優點:
- 相對於單個文件系統或是硬盤,分區可以存儲更多的數據
- 數據管理比較方便
- 精準定位分區查詢數據
- 可跨多個分區磁盤查詢
- 在涉及聚合函數查詢時,可以很容易進行數據的合併
93、數據倉庫特點:
- 面向主題:數據按主題組織
- 集成的:消除了源數據中的不一致性,提供整個企業的一致性全局信息
- 相對穩定的:主要進行查詢操作,只有少量的修改和刪除操作
- 反映歷史變化:記錄了企業兄過去某一時刻到當前各個階段的,信息,客隊發展歷程和未來趨勢做定量分析和預測
94、聯邦數據庫特徵:
分佈性,異構性,自治性,透明性
①、聯邦數據庫分類:
緊耦合,松耦合
95、關係型數據庫的缺陷:
高並發讀寫的性能低,支撐容量有限,數據庫的可擴展性和可用性低,建設和運維成本高
96、大數據處理系統特點:
高度可擴展性,高性能,高度容錯,支持異構環境,較短的分析延遲,醫用且開放的接口,較低成本,向下兼容新內閣
97、數學建模過程:
模型準備,模型假設,模型建立,模型求解,模型分析,模型檢驗,模型應用
98、數學建模方法:
直接分析法,類比法,數據分析法,構想法
三、結束語
以上的筆記說明了一個問題,軟考中的架構師 需要記憶太多的東西了,需要更加努力的鼓勵自己,一定要堅持下去,不成功便成仁,碼農道路慢慢,希望看到本文章的同志們能一次性通過考試順利拿到證書,為升職加薪做好準備。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/281939.html