软考高级-系统架构师-软件工程
目錄:
- 一.軟件開發方法與開發模型
- 1.軟件開發方法
- 2.軟件開發模型
- 3.軟件開發方法
- 4.逆向工程
- 5.凈室工程
- 二.需求工程
- 1.需求工程
- (1) 需求獲取
- (2) 需求分析
- (3) 需求定義
- (4) 需求驗證
- 2.需求管理
- 3.軟件系統建模
- 三.系統設計
- 1.人機界面設計
- 2.結構化設計
- 3.面向對象設計
- (1) 設計原則
- (2) 架構模式,設計模式和慣用法:
- (3) 設計模式
- 四.軟件測試
- 1.軟件測試方法
- 2.軟件調試
- 3.系統運行與軟件維護
一.軟件開發方法與開發模型
1.軟件開發方法
2.軟件開發模型
瀑布模型是一種典型的結構化開發方法的體現,該模型適合 需求非常明確 的項目。
項目的 需求不明確 適合選用原型模型。
所謂的原型就是通過原型圖給用戶描述相關功能,在實際項目開發中常常就是一些靜態html網頁進行描述,或者通過相關軟件(Axure)畫的原型圖:
下面就是原型的html:
增量模型和螺旋模型都是在原型模型的基礎上進行演化的,其中螺旋模型適合比較大的項目,并且該模型最大的一點就是引入 風險分析 ,而增量模型是在一個基礎版本上不斷的增加。
V模型是一個 測試 貫穿于始終的模型,在每一個階段都會進行相關測試,這里的測試不僅僅是代碼測試還有測試計劃的編寫,噴泉模型是一種 面向對象 的模型,RAD快速應用開發模型是一種 快速開發 的模型,由SDLC瀑布模型和CBSD基于構件的開發組合,其中CBSD基于構件的開發是能夠快速開發的核心。
下圖為構建開發模型,其中的構建庫的建立是CBSD的核心是RAD能夠快速應用開發的原因,使用構件庫不僅僅保證了速度快還能提高可靠性和節約成本,前提是建構件庫不是新構建的,而是已經存在,已經經過多次驗證后的構件庫。
3.軟件開發方法
軟件開發模型統一過程三大核心特點, 用例驅動 , 以架構為中心 和 迭代和增量,統一過程分為四個階段,初始( 確定項目范圍和邊界 ),細化( 建立軟件架構基礎 ),構建( 構件組裝與測試 )和交付( 制作發布版本 )。
敏捷方法適合小型項目的開發,作用是為了減輕開發人員的負擔,去掉一些沒有必要的開發文檔,敏捷方法包含多種開發方法如自適應開發,水晶方法,特性驅動開發和極限編程。
相關方法的介紹:
4.逆向工程
逆向過程的考點在于下圖中的四個層級,實現級,結構級,功能級和領域級。
5.凈室工程
二.需求工程
考點如下:
1.需求工程
需求工程是指應用已證實有效的原理 、方法 , 通過合適的工具和記號 ,系統地描述待開發系統及其行為特征和相關約束 。需求工程劃分為二個板塊即需求開發和需求管理模塊,需求管理模塊為需求開發提供支持,需求開發模塊的過程劃分為需求獲取,需求分析,需求定義和需求驗證。
(1) 需求獲取
軟件需求按技術劃分可以劃分為業務需求,用戶需求和系統需求(功能需求,性能需求和設計約束),按項目管理劃分為基本需求,期望需求和興奮需求。
(2) 需求分析
結構化 需求分析-SA:
SA分析結構如下所示,三個模型功能模型,數據模型和行為模型,三個模型的相關詳細信息通過數據字典獲得和解析。
數據流圖(DFD):
E-R圖:
狀態轉換圖:
面向對象 需求分析:
UML統一建模語言:
UML圖劃分為靜態圖和動態圖,詳細如下表所示:
UML4+1視圖:
面向對象需求分析需求需要完成二個模型用例模型和分析模型:
用例圖:
用例數據字典:
三種關系(包含,擴展和泛化):
例題:
答案:D(包含和擴展關系都可以叫做依賴關系),B(包含關系,老版本使用uses即使用關系)
類圖和對象圖:
相關關系:
練習題:
答案:D,C
順序圖:
活動圖(類似于流程圖):
狀態圖:
通信圖(協作圖):
(3) 需求定義
(4) 需求驗證
2.需求管理
3.軟件系統建模
三.系統設計
1.人機界面設計
這部分只需要了解以下三個規則即可:
- 置于用戶控制之下
- 減少用戶的記憶負擔
- 保持界面的一致性
置于用戶控制之下:
減少用戶的記憶負擔:
保持界面的一致性
2.結構化設計
3.面向對象設計
(1) 設計原則
(2) 架構模式,設計模式和慣用法:
(3) 設計模式
簡單方便的復用成功的設計和體系結構
設計模式考點:
設計模式分類:
類或對象可參照下圖:
創建型模式:
創建型模式主要用于 創建對象
工廠方法:
抽象工廠方法:
構建器模式:
結構型模式:
結構型模式主要用于 處理類或對象的組合 。
適配器模式:
橋接模式:
組合模式:
代理模式
不直接處理而是交給代理進行處理,房屋出租人將房子代理給房屋中介,幫忙出租房屋 。
中介模式
將網狀結構轉換為星型,中介是1對多處理,租房族不直接通過房屋出租人租房子(網狀),而是通過房屋中介商租房(星型)。
行為型:
行為型模式主要用于 描述對類或對象怎樣交互和怎樣分配職責 。
職責鏈模式:
練習題:
答案:A(基本設計決策–高層次),B,B
四.軟件測試
1.軟件測試方法
黑盒測試和白盒測試:
測試階段:
面向對象的測試:
2.軟件調試
3.系統運行與軟件維護
遺留系統演化策略:
修舊系統的轉換策略:
數據轉換和遷移:
系統運行與維護:
例子:
答案:A(新增功能…–>擴充功能),B(診斷和更正這些錯誤…–>改正),C(改進軟件未來的可維護性或可靠性…—>預防性)
總結
以上是生活随笔為你收集整理的软考高级-系统架构师-软件工程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【深度学习】预训练语言模型-BERT
- 下一篇: 农村污水处理项目中管网建设过程应注意哪些