一、考試說明
1.考試目標
通過本考試的合格人員能根據軟件開發項目管理和軟件工程的要求,按照系統總體設計規格說明書進行軟件設計,編寫程序設計規格說明書等相應的文檔,組織和指導程序員編寫、調試程序,并對軟件進行優化和集成測試,開發出符合系統總體設計要求的高質量軟件;具有工程師的實際工作能力和業務水平。
2.考試要求
(1)掌握計算機內的數據表示、算術和邏輯運算方法;
(2)掌握相關的應用數學及離散數學基礎知識;
(3)掌握計算機體系結構以及各主要部件的性能和基本工作原理;
(4)掌握操作系統、程序設計語言的基礎知識,了解編譯程序的基本知識;
(5)熟練掌握常用數據結構和常用算法;
(6)熟悉數據庫、網絡和多媒體的基礎知識;
(7)掌握 C 程序設計語言,以及 C++、Java 中的一種程序設計語言;
(8)熟悉軟件工程、軟件過程改進和軟件開發項目管理的基礎知識;
(9)掌握軟件設計的方法和技術;
(10)了解信息化、常用信息技術標準、安全性,以及有關法律、法規的基礎知識;
(11)正確閱讀和理解計算機領域的英文資料。
3.考試科目設置
(1)計算機與軟件工程知識,考試時間為 120 分鐘;
(2)軟件設計,考試時間為 120 分鐘。
二、考試范圍
考試科目 1: 計算機與軟件工程知識
1 計算機科學基礎知識
- 數制及其轉換
- 二進制、八進制、十進制和十六進制等常用數制及其相互轉換
- 計算機內數據的表示
- 數的表示(補碼表示,整數和實數的表示,精度和溢出)
- 非數值表示(字符和漢字表示,聲音表示、圖像表示)
- 算術運算和邏輯運算
- 計算機中的二進制數運算方法
- 邏輯代數的基本運算
- 其他數學基礎知識
- 常用數值計算
- 排列組合,概率論應用,應用統計(數據的統計分析)
- 編碼基礎
- 命題邏輯、謂詞邏輯、形式邏輯的基礎知識
- 運籌基本方法
2 計算機系統知識
- 計算機硬件基礎知識
- 計算機系統的組成、體系結構分類及特性
- CPU、存儲器的組成、性能和基本工作原理
- 常用I/0設備、通信設備的性能以及基本工作原理
- l/O接口的功能、類型和特性
- CISC/RISC,流水線操作,多處理機,并行處理
- 存儲系統
- 虛擬存儲器基本工作原理,多級存儲體系
- RAID 類型和特性
- 可靠性與系統性能評測基礎知識
- 診斷與容錯
- 系統可靠性分析評價
- 計算機系統性能評測方法
- 計算機系統的組成、體系結構分類及特性
- 計算機軟件知識
- 數據結構與算法知識
- 數組
- 鏈表
- 隊列、棧
- 樹
- 圖的定義、存儲和基本操作
- 雜湊(Hash表)
- 常用的排序算法、查找算法、數值計算、字符串處理、數據壓縮算法、遞歸算法、圖的相關算法
- 算法描述和分析
- 操作系統知識
- 操作系統的內核
- 處理機管理
- 存儲管理
- 設備管理
- 文件管理
- 作業管理
- 網絡操作系統和嵌入式操作系統基礎知識
- 操作系統的配置
- 程序設計語言和語言處理程序知識
- 匯編、編譯、解釋系統的基礎知識和基本工作原理
- 程序設計語言的基本成分(數據、運算、控制和傳輸),程序調用的實現機制
- 各類程序設計語言的主要特點和適用情況
- 數據庫知識
- 數據庫模型(概念模式、外模式、內模式)
- 數據模型,E-R 圖,規范化
- 數據操作
- 數據庫語言
- 數據庫管理系統的功能和特征
- 數據庫的控制功能
- 數據倉庫和分布式數據庫基礎知識
- 數據結構與算法知識
- 計算機網絡知識
- 網絡體系結構
- 傳輸介質,傳輸技術,傳輸方法,傳輸控制
- 常用網絡設備和各類通信設備的特點
- Client-Server 結構,Browser-Server 結構
- LAN(拓撲,存取控制,組網,網間互連)
- Internet和Intranet基礎知識以及應用
- 網絡軟件
- 網絡管理,網絡性能分析
- 多媒體基礎知識
- 多媒體系統基礎知識
- 簡單圖形的繪制,圖像文件的處理方法
- 音頻和視頻信息的應用
- 多媒體應用開發過程
3 系統開發和運行知識
- 軟件工程知識
- 軟件生存周期與軟件生存周期模型
- 軟件開發方法
- 軟件開發項目管理
- 軟件開發工具與軟件開發環境
- 系統分析基礎知識
- 系統分析的主要步驟
- 機構化分析方法
- 系統設計基礎知識
- 概要設計與詳細設計的基本任務
- 系統設計的基本原理
- 系統模塊結構設計
- 結構化設計方法
- 面向數據結構的設計方法
- 系統詳細設計
- 系統實施基礎知識
- 系統實施的基本內容
- 程序設計方法
- 程序設計的基本模塊
- 系統測試
- 系統轉換
- 系統運行和維護基礎知識
- 系統可維護性的概念
- 系統維護的類型
- 系統評價的概念和類型
- 軟件質量管理基礎知識
- 軟件質量特性(ISO/IEC9126 軟件質量模型)
- 軟件質量保證
- 軟件復雜性的概念及度量方法(McCabe 度量法)
- 軟件評審(設計質量評審、程序質量評審)
- 軟件容錯技術
- 軟件過程改進基礎知識
- 軟件能力成熟度模型 CMM
- 統一過程(UP)與極限編程(XP)的基本概念
4 面向對象基礎知識
- 面向對象的基本概念
- 面向對象分析與設計知識
- 分析模式與設計模式知識
- 面向對象程序設計知識
- 面向對象數據庫、分布式對象基礎知識
5 信息安全知識
- 信息系統安全基礎知識
- 信息系統安全管理
- 保障完整性與可用性的措施
- 加密與解密機制基礎知識
- 風險管理(風險分析、風險類型、抗風險措施和內部控制)
- 計算機安全相關的法律、法規基礎知識
6 標準化、信息化和知識產權基礎知識
- 標準化基礎知識
標準化意識,標準化組織機構,標準的內容、分類、代號與編號規定,標準制訂過程
國際標準、國家標準、行業標準、企業標準
代碼標準、文件格式標準、安全標準、互聯網相關標準、軟件開發規范和文檔標準、基于構件的軟件標準 - 信息化基礎知識
- 全球信息化趨勢、國家信息化戰略、企業信息化戰略和策略
- 互聯網相關的法律、法規
- 個人信息保護規則
- 遠程教育、電子商務、電子政務等基礎知識
- 企業信息資源管理基礎知識
- 知識產權基礎知識
- 保護知識產權有關的法律、法規
7 計算機專業英語
- 具有工程師所要求的英語閱讀水平
- 理解本領域的英語術語
考試科目 2: 軟件設計
1 外部設計
- 理解系統需求說明
- 準備進行系統開發
- 選擇開發方法、準備開發環境、制訂開發計劃
- 設計系統功能
- 選擇系統結構
- 設計各子系統的功能和接口
- 設計安全性策略、需求和實現方法
- 制訂詳細的工作流和數據流
- 設計數據模型
- 設計 E-R 模型及其他數據模型
- 編寫外部設計文檔
- 系統配置圖、各子系統關系圖
- 系統流程圖、系統功能說明書
- 輸入輸出規格說明、數據規格說明、用戶手冊框架
- 設計系統測試要求
- 外部設計的評審
2 內部設計
- 設計軟件結構
- 按構件分解,確定構件功能、規格以及構件之間的接口
- 數據結構與算法設計
- 采用中間件和工具
- 設計輸入輸出
- 設計物理數據
- 構件的創建和重用
- 創建構件、重用構件
- 使用子程序庫或類庫
- 編寫內部設計文檔
- 構件劃分圖、構件間的接口、構件處理說明
- 屏幕界面設計文檔、報表設計文檔、文件設計文檔、數據庫設計文檔
- 內部設計的評審
3 數據庫應用分析與設計
- 設計關系模式
- 數據庫語言(SQL)
- 數據庫訪問
4 程序設計
- 模塊劃分
- 編寫程序設計文檔
- 程序設計評審
5 系統實施
- 配置計算機系統及環境
- 選擇合適的程序設計語言
- 用 C 程序設計語言以及 C++、Java 中的任一種程序設計語言進行程序設計
- 系統測試
- 指導程序員進行模塊測試,并進行驗收
- 準備系統集成測試環境和測試工具
- 準備測試數據
- 寫出測試報告
6 軟件工程應用
- 軟件開發周期模型
- 需求分析
- 軟件設計
- 軟件設計的基本原則
- 軟件設計方法
- 程序設計(結構化程序設計、面向對象程序設計)
- 軟件測試的原則與方法
- 軟件質量(軟件質量特性、軟件質量控制)
- 軟件過程評估基本方法、軟件能力成熟度評估基本方法
- 軟件開發環境和開發工具
- 面向對象技術
- 面向構件技術
- 統一建模語言(UML)
- 軟件過程改進模型和方法
- 網絡環境軟件技術
考試形式(注:以下為 2024 年上半年官方公告)-機考
考試采取科目連考、分批次考試的方式,第一個科目節余的時長可為第二個科目使用。
初、中級資格:基礎知識 和 應用技術 2 個科目連考,作答總時長 240 分鐘,基礎知識科目考試最長作答時長 120 分鐘,最短作答時長 90 分鐘,選擇不參加應用技術科目考試的考生開考 120 分鐘后可以交卷離場,選擇繼續作答應用技術科目的,考試結束前 60 分鐘可以交卷離場。
基礎知識 75 分至少要 45 分,應用技術也是同理。
案例分析
- 結構化分析(數據流圖)
- 數據庫分析(E-R 圖)
- 面向對象分析(UML 圖)
- C 語言算法
- 面向對象程序設計(java 或 c++ 代碼)可能包含了設計模式知識
參考
2025 年軟件設計師教程 官方教材目錄