軟件設(shè)計(jì)師備考精講 第七章 系統(tǒng)開(kāi)發(fā)基礎(chǔ)——軟件工程與結(jié)構(gòu)化開(kāi)發(fā)方法考點(diǎn)完整總結(jié)
在軟件設(shè)計(jì)師考試中,第七章“系統(tǒng)開(kāi)發(fā)基礎(chǔ)”是理論與方法的核心章節(jié),其中“軟件工程”與“結(jié)構(gòu)化開(kāi)發(fā)”更是重中之重。本文旨在系統(tǒng)梳理相關(guān)核心考點(diǎn),構(gòu)建清晰的知識(shí)框架,助力高效備考。
一、 軟件工程概述
1. 軟件工程定義與目標(biāo)
- 定義:將系統(tǒng)化的、規(guī)范化的、可度量的方法應(yīng)用于軟件的開(kāi)發(fā)、運(yùn)行和維護(hù)的過(guò)程,即工程化應(yīng)用于軟件。
- 目標(biāo):在給定成本、進(jìn)度的前提下,開(kāi)發(fā)出具有適用性、有效性、可修改性、可靠性、可理解性、可維護(hù)性、可重用性、可移植性等高質(zhì)量特征的軟件產(chǎn)品。
2. 軟件生命周期
軟件從定義、開(kāi)發(fā)、使用維護(hù)到最終廢棄的全過(guò)程,是考點(diǎn)的基石。經(jīng)典模型包括:
- 瀑布模型:階段間具有順序性和依賴性,強(qiáng)調(diào)文檔,變更困難。適用于需求明確的項(xiàng)目。
- 演化模型(原型模型、增量模型、螺旋模型):應(yīng)對(duì)需求不明確或變化。
- 原型模型:快速構(gòu)建原型,獲取用戶反饋,澄清需求。
- 增量模型:將軟件劃分為一系列增量構(gòu)件,逐個(gè)交付。
- 螺旋模型:結(jié)合瀑布與原型,加入風(fēng)險(xiǎn)分析,四象限循環(huán)(制定計(jì)劃、風(fēng)險(xiǎn)分析、實(shí)施工程、客戶評(píng)估)。
- 其他模型:V模型(強(qiáng)調(diào)測(cè)試與開(kāi)發(fā)的對(duì)應(yīng))、噴泉模型(面向?qū)ο螅o(wú)間隙)、敏捷模型(適應(yīng)變化,個(gè)體互動(dòng)重于流程工具)。
二、 結(jié)構(gòu)化開(kāi)發(fā)方法核心考點(diǎn)
結(jié)構(gòu)化方法(Structured Methodology)是面向數(shù)據(jù)流的傳統(tǒng)開(kāi)發(fā)方法,核心是“自頂向下,逐步求精”。
1. 結(jié)構(gòu)化分析
- 目標(biāo):建立系統(tǒng)邏輯模型,解決“做什么”的問(wèn)題。
- 核心工具:
- 數(shù)據(jù)流圖:描述數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的圖形工具。關(guān)鍵元素:外部實(shí)體、加工(處理)、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)流。需掌握分層繪制與平衡原則。
- 數(shù)據(jù)字典:DFD中所有元素的定義集合,是數(shù)據(jù)的數(shù)據(jù)(元數(shù)據(jù))。
- 實(shí)體關(guān)系圖:描述系統(tǒng)數(shù)據(jù)及其關(guān)系的概念模型。
- 狀態(tài)轉(zhuǎn)換圖:描述系統(tǒng)狀態(tài)隨外部事件變化的模型。
- 需求分析結(jié)果:軟件需求規(guī)格說(shuō)明書(shū)。
2. 結(jié)構(gòu)化設(shè)計(jì)
- 目標(biāo):建立系統(tǒng)物理模型,解決“怎么做”的問(wèn)題。分為總體設(shè)計(jì)(架構(gòu)設(shè)計(jì))和詳細(xì)設(shè)計(jì)(模塊內(nèi)部設(shè)計(jì))。
- 核心概念與工具:
- 模塊化與耦合、內(nèi)聚:
- 耦合:模塊間關(guān)聯(lián)程度。追求低耦合。順序:數(shù)據(jù)耦合 < 標(biāo)記耦合 < 控制耦合 < 外部耦合 < 公共耦合 < 內(nèi)容耦合。
- 內(nèi)聚:模塊內(nèi)各元素結(jié)合緊密程度。追求高內(nèi)聚。順序:功能內(nèi)聚 > 順序內(nèi)聚 > 通信內(nèi)聚 > 過(guò)程內(nèi)聚 > 時(shí)間內(nèi)聚 > 邏輯內(nèi)聚 > 偶然內(nèi)聚。
- 系統(tǒng)結(jié)構(gòu)圖:描述系統(tǒng)模塊層次結(jié)構(gòu)與調(diào)用關(guān)系的圖形工具。主要成分:模塊、調(diào)用、數(shù)據(jù)(箭頭旁帶空心圓)、控制信息(箭頭旁帶實(shí)心圓)。常見(jiàn)結(jié)構(gòu):順序、選擇、循環(huán)。
- 面向數(shù)據(jù)流的設(shè)計(jì)方法:
- 變換流:輸入、處理、輸出結(jié)構(gòu)清晰。設(shè)計(jì)步驟:找變換中心,完成第一級(jí)分解,逐級(jí)細(xì)化。
- 事務(wù)流:一個(gè)輸入,多個(gè)處理路徑。設(shè)計(jì)核心:識(shí)別事務(wù)中心與各活動(dòng)路徑。
- 詳細(xì)設(shè)計(jì)工具:程序流程圖、N-S圖(盒圖)、PAD圖、判定表、判定樹(shù)、PDL(過(guò)程設(shè)計(jì)語(yǔ)言)等。
3. 結(jié)構(gòu)化程序設(shè)計(jì)
- 核心原則:采用順序、選擇、循環(huán)三種基本控制結(jié)構(gòu),避免使用GOTO語(yǔ)句,實(shí)現(xiàn)單入口單出口。
- 目的:提高程序清晰性、可讀性、可測(cè)試性與可維護(hù)性。
三、 關(guān)鍵考點(diǎn)與易混淆點(diǎn)
- 生命周期模型選擇:根據(jù)需求明確度、技術(shù)風(fēng)險(xiǎn)、項(xiàng)目規(guī)模選擇合適模型。瀑布模型需求明確;原型、演化模型需求不明確;螺旋模型適用于大型高風(fēng)險(xiǎn)項(xiàng)目。
- DFD與SC對(duì)比:DFD是分析階段數(shù)據(jù)流模型;SC是設(shè)計(jì)階段程序結(jié)構(gòu)模型。兩者可轉(zhuǎn)換,但本質(zhì)不同。
- 耦合與內(nèi)聚的衡量:是評(píng)價(jià)設(shè)計(jì)質(zhì)量的核心標(biāo)準(zhǔn),務(wù)必牢記各類耦合/內(nèi)聚的定義與優(yōu)劣排序。
- 變換流與事務(wù)流的識(shí)別與轉(zhuǎn)換:是結(jié)構(gòu)化設(shè)計(jì)的難點(diǎn),需通過(guò)大量練習(xí)掌握從DFD到SC的映射方法。
- 設(shè)計(jì)文檔:總體設(shè)計(jì)階段產(chǎn)生概要設(shè)計(jì)說(shuō)明書(shū);詳細(xì)設(shè)計(jì)階段產(chǎn)生詳細(xì)設(shè)計(jì)說(shuō)明書(shū)。
四、 備考建議
- 理解重于記憶:深刻理解軟件工程思想與結(jié)構(gòu)化方法“分解與抽象”的本質(zhì)。
- 圖形工具是關(guān)鍵:熟練掌握DFD、SC、ER圖等圖形的繪制、解讀與轉(zhuǎn)換。
- 對(duì)比聯(lián)系學(xué)習(xí):將結(jié)構(gòu)化方法與后續(xù)的面向?qū)ο蠓椒ㄟM(jìn)行對(duì)比,理解其差異與適用場(chǎng)景。
- 真題為導(dǎo)向:歷年真題中本章考點(diǎn)重復(fù)率高,尤其是耦合內(nèi)聚、模型特點(diǎn)、圖形分析,需反復(fù)練習(xí)。
掌握本章內(nèi)容,不僅能應(yīng)對(duì)考試選擇題與下午案例分析題,更能夯實(shí)軟件開(kāi)發(fā)的方法論基礎(chǔ),為成為一名合格的軟件設(shè)計(jì)師鋪平道路。
如若轉(zhuǎn)載,請(qǐng)注明出處:http://www.yqn.org.cn/product/11.html
更新時(shí)間:2026-05-12 06:24:16