軟考軟體設計
隨著IT技術在通信建設、醫療、教育、交通、旅遊、財政、國家政務、郵電、民航等各個版方面的全面發展權,帶動了各行業軟體的全面開發,促進了軟體設計開發人才的旺盛需求。
從IT技術分類看:微電子技術是基礎,網路與通信技術是載體,軟體技術是核心。軟體設計作為核心技術,作為掌握核心技術的軟體設計師就有了非常好的職業前景。且IT行業的平穩增長必然會帶來軟體設計師需求的增長。
軟體設計師進一步發展目標是走向系統分析師、系統架構師。
② 軟考軟體設計師有用嗎
軟考不設學歷與資歷條件,也不論年齡和專業,考生可根據自己的技術水平選擇版合適的級別權合適的資格,但一次考試只能報考一種資格。關於是否報考軟體設計師,關鍵是在於你工作需求,如果你是做這方面工作的,考個證書對自身能力以及工作是有幫助的;另外軟考的中級證書可以評職稱、掛靠、在北上廣等發達城市落戶積分。
③ 關於備考軟體設計師(軟考中級)。
那是可許的。我當初也是大二考過的。視頻可以下
希賽
的視頻,不過,回說老實話,看視頻耗時間答,
效率
不高。看書吧。買一本
軟體設計師
考試
考點
分析與真題詳解(最新版),就行了。很厚的,要堅持才行。別人說再多沒用,還是靠自己。其實不要准備一年那麼長的,2個月足足的。時間長了,你效率會變低。你不要急著考,等C++學了後考,一般大二
第一學期
上。下午的5道題要多練,我當初有點來不及,剛剛卡時間。可以買一本下午的題目做做。選擇題比較容易過,面終究有點廣,還是要看。我當初先考了江蘇省三級偏軟,之後選擇題就沒怎麼看。時間比較倉促,一個月差不多看下午的,過的。千萬別買模擬題,好偏,買真題。你加油吧!
追問可以不學C++
學JAVA嗎
④ 考「軟考」的軟體設計師,該看什麼書
要參加軟體設計師的考試,務必購買兩本書:
《軟體設計師教程》《教程》建議買教育部指定的教材,
《軟體設計師歷年試題解析》。《解析》倒也無所謂,張友生老師的分析似乎更全面、更有針對性。
另外還有《軟體設計師大綱》,在復習過程中階段性地查一查,梳理一下知識結構體系,可以查缺補漏。
1、具體學習每門課程的方法
(1)軟體工程。軟體工程是復習的重點,不但上午題當中佔10左右,而且下午題里也有2道軟體設計分析方面的題目,一定要熟練的掌握書本中說到的各種軟體分析設計方法及有關的分析用圖,對各種圖的功能作用和製作方法(特別是各種圖的組成元素)以及各種圖之間的轉換及聯系(如果有的話),UML面向對象的軟體設計方法及面象過程的軟體設計方法完全理解,軟體測試要達到理解的程度,其它的內容只有去強記了,因為基本是都是上午題,而且每年的題都不定,但與CMM有關的一定會有。
(2)資料庫。資料庫部分也很重要,上午有5分左右,下午至少有一道資料庫的題目,而且也一定是考關系型資料庫,E-R模式也要搞懂,可由它導出關系,一定要弄懂關系資料庫的幾個範式及關系的建立方法。
因此,就要對關系資料庫的基礎概念非常清楚,如鍵的定義,函數依賴,範式的定義、作用及轉換是建立關系的基礎。數據的並發控制,要熟練掌握SQL常用的幾個語句,最好是用筆將每個語句寫上幾遍,對語句的各種形式加深記憶,資料庫的學習還是不太難的。因為考試不會考數據的物理存儲及數據安全,感覺這方面的知識更難,交叉學科更多。
(3)學習數據結構和演算法。數據結構和演算法是考試的重點內容,它的復習以普通的教材為主,對數組、鏈表、隊列、棧、樹及堆等基本的數據組織方式要非常熟悉(要做到看見演算法就知道要用什麼數據組織方式更高效),排序、索引及圖的各種演算法要瞭然於心(演算法的分析過程及代碼要非常清楚),演算法的分析方法達到理解應用的水平。
對C語言要非常熟練(要會應用C語言語句的一些技巧,如可以利用函數的返回值做為判定條件,在循環中對數組的處理可使用a[i++]來提高編寫代碼的效率,這類的小技巧只有通過大量的閱讀代碼才能提高),如果是初學面向對象方面的高級語言,建議還是先學C++,感覺它更象一種語言規范,而Java是一種編程的工具並且由於它的跨平台特性所以它有很多自己獨有的功能和特點,有時間一定要看一本C++語言的數據結構,它能使你更全面和深刻的理解類及對象的編程方法。
演算法的學習不是一朝一夕就能提高的,一定要靜下心來學習一些經典演算法,比如:窮舉法、貪婪法、分治法、迭代法、遞推法、遞歸法、回溯法;找一些有名的演算法程序來分析,比如:背包問題、組合問題、斐波那契數列、馬踏棋盤問題、貨朗擔問題、八皇後問題、迷宮問題、漢諾塔問題、約琴夫環問題等。
有了這些演算法思想在你的頭腦中紮根後,當看到問題,就自然的想起用什麼方法來求最優解了。
(4)程序設計語言。程序設計語言包括C語言、編譯原理和面向對象的程序設計語言(通常以C++為例)。編譯原理一定會考詞法分析,它是後面編譯過程的基礎。主要考的內容是NFA與DFA的轉換、正規式與有窮自動機的轉換等。
文法分析有一年考過下午題,這科對初學者比較難,比較抽象,理論性也比較強,反正我是學了4個來月才學通一點,這課復習沒什麼技巧,聽聽希賽的「編譯原理視頻教程」,學起來更快一些。
C語言要掌握好三種基本結構、數組、鏈表、結構體、共用體、參數傳遞、指針及指針數組、指針函數等等。面向對象的程序設計語言要對基本概念及初步應用要了解,考得不深。
(5)面向對象方法學。面向對象方法學不但是上午的考試重點,也是下午的考試重點。上午平均有12分左右,而下午有30分,一道與UML圖形有關的題目,一道面向對象程序設計的選做題。所以要好好掌握這一塊。UML當中的類圖、用例圖、狀態圖、協作圖要掌握好,考試中會常出現。(老師多次強調這個要學習的知識點,我通過做題,認為老師抓的很准。)
(6)操作系統。操作系統沒什麼說得了,把它的幾個功能模塊搞清楚及相關的演算法搞清楚就好了,如處理器的管理、存儲管理、設備管理、文件管理及系統安全,其中我認為比較難理解的是PV操作(在並發進程中它的應用非常靈活)和中斷(反正這個對我比較難),一定要把相關內容所講到的演算法及分析過程搞懂。當然還要注意進程死鎖的問題,段頁式存儲的問題。
其它課程的復習就按考試大綱進行,把裡面的概念搞清楚,因為它大部分都是上午題。
2、看書與練習相結合
「看書時要有目的性,帶著任務走,;看後做題進行鞏固,所以看了書以後,要找一兩個相關的題來做一做。
⑤ 軟考軟體設計師難嗎需要達到這樣的水平
軟體設計師需要根據軟體開發項目管理和軟體工程的要求,按照系統總體設計規格說明書進行軟體設計,編寫程序設計規格說明書等相應的文檔,組織和指導程序員編寫、調試程序,並對軟體進行優化和集成測試,開發出符合系統總體設計要求的高質量軟體。這是希賽網上軟考軟體設計師的要求,你要是想考軟體設計師的話可以到那裡去找資料
⑥ 軟考軟體設計師應該怎樣復習
復習的內容很龐雜,每一個知識點都要弄懂,最後還要有一定的英語閱讀能力
⑦ 軟考中級軟體設計師都學什麼
軟體設計師考試大綱
一、考試說明
1.考試要求:
(1) 掌握數據表示、算術和邏輯運算;
(2) 掌握相關的應用數學、離散數學的基礎知識;
(3) 掌握計算機體系結構以及各主要部件的性能和基本工作原理;
(4) 掌握操作系統、程序設計語言的基礎知識,了解編譯程序的基本知識;
(5) 熟練掌握常用數據結構和常用演算法;
(6) 熟悉資料庫、網路和多媒體的基礎知識;
(7) 掌握C程序設計語言,以及C++、Java、Visual、Basic、Visual C++中的一種程序設計語言;
(8) 熟悉軟體工程、軟體過程改進和軟體開發項目管理的基礎知識;
(9) 熟悉掌握軟體設計的方法和技術;
(10) 掌握常用信息技術標准、安全性,以及有關法律、法規的基本知識;
(11) 了解信息化、計算機應用的基礎知識;
(12) 正確閱讀和理解計算機領域的英文資料。
2.通過本考試的合格人員能根據軟體開發項目管理和軟體工程的要求,按照系統總體設計規格說明書進行軟體設計,編寫程序設計規格說明書等相應的文檔,組織和指導程序員編寫、調試程序,並對軟體進行優化和集成測試,開發出符合系統總體設計要求的高質量軟體;具有工程的實際工作能力和業務水平。
3.本考試設置的科目包括:
(1) 計算機與軟體工程知識,考試時間為150分鍾,筆試;
(2) 軟體設計,考試時間為150分鍾,筆試。
二、考試范圍
考試科目1:計算機與軟體工程知識
1. 計算機科學基礎
1.1 數制及其轉換
• 二進制、十進制和十六進制等常用制數制及其相互轉換
1.2 數據的表示
• 數的表示(原碼、反碼、補碼、移碼表示,整數和實數的機內表示,精度和溢出)
• 非數值表示(字元和漢字表示、聲音表示、圖像表示)
• 校驗方法和校驗碼(奇偶校驗碼、海明校驗碼、循環冗餘校驗碼)
1.3 算術運算和邏輯運算
• 計算機中的二進制數運算方法
• 邏輯代數的基本運算和邏輯表達式的化簡
1.4 數學基礎知識
• 命題邏輯、謂詞邏輯、形式邏輯的基礎知識
• 常用數值計算(誤差、矩陣和行列式、近似求解方程、插值、數值積分)
• 排列組合、概率論應用、應用統計(數據的統計分析)
• 運算基本方法(預測與決策、線性規劃、網路圖、模擬)
1.5 常用數據結構
• 數組(靜態數組、動態數組)、線性表、鏈表(單向鏈表、雙向鏈表、循環鏈表)、隊列、棧、樹(二叉樹、查找樹、平衡樹、線索樹、線索樹、堆)、圖等的定義、存儲和操作
• Hash(存儲地址計算,沖突處理)
1.6 常用演算法
• 排序演算法、查找演算法、數值計算方法、字元串處理方法、數據壓縮演算法、遞歸演算法、圖的相關演算法
• 演算法與數據結構的關系、演算法效率、演算法設計、演算法描述(流程圖、偽代碼、決策表)、演算法的復雜性
2. 計算機系統知識
2.1 硬體知識
2.1.1 計算機系統的組成、體系結構分類及特性
• CPU和存儲器的組成、性能和基本工作原理
• 常用I/O設備、通信設備的性能,以及基本工作原理
• I/O介面的功能、類型和特性
• I/O控制方式(中斷系統、DMA、I/O處理機方式)
• CISC/RISC,流水線操作,多處理機,並行處理
2.1.2 存儲系統
• 主存-Cache存儲系統的工作原理
• 虛擬存儲器基本工作原理,多級存儲體系的性能價格
• RAID類型和特性
2.1.3 安全性、可靠性與系統性能評測基礎知識
• 診斷與容錯
• 系統可靠性分析評價
• 計算機系統性能評測方式
2.2 軟體知識
2.2.1 操作系統知識
• 操作系統的內核(中斷控制)、進程、線程概念
• 處理機管理(狀態轉換、共享與互斥、分時輪轉、搶占、死鎖)
• 存儲管理(主存保護、動態連接分配、分段、分頁、虛存)
• 設備管理(I/O控制、假離線)
• 文件管理(文件目錄、文件組織、存取方法、存取控制、恢復處理)
• 作業管理(作業調度、作業控制語言(JCL)、多道程序設計)
• 漢字處理,多媒體處理,人機界面
• 網路操作系統和嵌入式操作系統基礎知識
• 操作系統的配置
2.2.2 程序設計語言和語言處理程序的知識
• 匯編、編譯、解釋系統的基礎知識和基本工作原理
• 程序設計語言的基本成分:數據、運算、控制和傳輸,過程(函數)調用
• 各類程序設計語言主要特點和適用情況
2.3 計算機網路知識
• 網路體系結構(網路拓撲、OSI/RM、基本的網路協議)
• 傳輸介質、傳輸技術、傳輸方法、傳輸控制
• 常用網路設備和各類通信設備
• Client/Server結構、Browser/Server結構
• LAN拓撲,存取控制,LAN的組網,LAN間連接,LAN-WAN連接
• 網際網路基礎知識以及應用
• 網路軟體
• 網路管理
• 網路性能分析
2.4 資料庫知識
• 資料庫管理系統的功能和特徵
• 資料庫模型(概念模式、外模式、內模式)
• 數據模型,ER圖,第一範式、第二範式、第三範式
• 數據操作(集合運算和關系運算)
• 資料庫語言(SQL)
• 資料庫的控制功能(並發控制、恢復、安全性、完整性)
• 數據倉庫和分布式資料庫基礎知識
2.5 多媒體知識
• 多媒體系統基礎知識,多媒體設備的性能特性,常用多媒體文件格式
• 簡單圖形的繪制,圖像文件的處理方法
• 音頻和視頻信息的應用
• 多媒體應用開發過程
2.6 系統性能知識
• 性能指標(響應時間、吞吐量、周轉時間)和性能設計
• 性能測試和性能評估
• 可靠性指標及計算、可靠性設計
• 可靠性測試和可靠性評估
2.7 計算機應用基礎知識
•信息管理、數據處理、輔助設計、自動控制、科學計算、人工智慧等基礎知識
• 遠程通信服務基礎知識
• 常用應用系統
3. 系統開發和運行知識
3.1 軟體工程、軟體過程改進和軟體開發項目管理知識
• 軟體工程知識
• 軟體開發生命周期各階段的目標和任務
• 軟體開發項目管理基礎知識(時間管理、成本管理、質量管理、人力資源管理、風險管理等)及其常用管理工具
• 主要的軟體開發方法(生命周期法、原型法、面向對象法、CASE)
• 軟體開發工具與環境知識
• 軟體過程改進知識
• 軟體質量管理知識
• 軟體開發過程評估、軟體能力成熟評估基礎知識
3.2 系統分析基礎知識
• 系統分析的目的和任務
•結構化分析方法(數據流圖(DFD)、數據字典(DD)、實體關系圖(ERD)、描述加工處理的結構化語言)
• 統一建模語言(UML)
• 系統規格說明書
3.3 系統設計知識
• 系統設計的目的和任務
• 結構化設計方法和工具(系統流程圖、HIPO圖、控制流程圖)
• 系統總體結構設計(總體布局、設計原則、模塊結構設計、數據存儲設計、系統配置方案)
• 系統詳細設計(代碼設計、資料庫設計、用戶界面設計、處理過程設計)
• 系統設計說明書
3.4 系統實施知識
• 系統實施的主要任務
• 結構化程序設計、面向對象程序設計、可視化程序設計
• 程序設計風格
• 程序設計語言的選擇
• 系統測試的目的、類型,系統測試方法(黑盒測試、白盒測試、灰盒測試)
• 測試設計和管理(錯誤曲線、錯誤排除、收斂、注入故障、測試用例設計、系統測試報告)
• 系統轉換基礎知識
3.5 系統運行和維護知識
• 系統運行管理基礎知識
• 系統維護基礎知識
• 系統評價基礎知識
3.6 面向對象開發方法
• 面向對象開發概念(類、對象、屬性、封裝性、繼承性、多態性、對象之間的引用)
• 面向對象開發方法的優越性以及有效領域
• 面向對象設計方法(體系結構、類的設計、用戶介面設計)
• 面向對象實現方法(選擇程序設計語言、類的實現、方法的實現、用戶介面的實現、准備測試數據)
• 面向對象程序設計語言(如C++、Java、Visual、Bsasic、Visual C++)的基本機制
• 面向對象資料庫、分布式對象的概念
4. 安全性知識
• 安全性基本概念
• 防治計算機病毒、防範計算機犯罪
• 存取控制、防闖入、安全管理措施
• 加密與解密機制
•風險分析、風險類型、抗風險措施和內部控制
5. 標准化知識
• 標准化意識、標准化的發展、標准制訂過程
• 國際標准、國家標准、行業標准、企業標准基本知識
• 代碼標准、文件格式標准、安全標准、軟體開發規范和文檔標准知識
• 標准化機構
6. 信息化基礎知識
• 信息化意識
• 全球信息化趨勢、國家信息化戰略、企業信息化戰略和策略
• 有關的法律、法規
• 遠程教育、電子商務、電子政務等基礎知識
• 企業信息資源管理基礎知識
7. 計算機專業英語
• 掌握計算機技術的基本詞彙
• 能正確閱讀和理解計算機領域的英文資料
考試科目2:軟體設計
1. 外部設計
1.1 理解系統需求說明
1.2 系統開發的准備
• 選擇開發方法、准備開發環境、制訂開發計劃
1.3 設計系統功能
• 選擇系統結構,設計各子系統的功能和介面,設計安全性策略、需求和實現方法,制訂詳細的工作流和數據流
1.4 設計數據模型
• 設計ER模型、數據模型
1.5 編寫外部設計文檔
• 系統配置圖、各子系統關系圖、系統流程圖、系統功能說明書、輸入輸出規格說明、數據規格說明、用戶手冊框架
• 設計系統測試要求
1.6 設計評審
2. 內部設計
2.1 設計軟體結構
•按構件分解,確定構件功能規格以及構件之間的介面
• 採用中間件和工具
2.2 設計輸入輸出
• 屏幕界面設計、設計輸入輸出檢查方法和檢查信息
2.3 設計物理數據
• 分析數據特性,確定邏輯數據組織方式、存儲介質,設計記錄格式和處理方式
• 將邏輯數據結構換成物理數據結構,計算容量,進行優化
2.4 構件的創建和重用
• 創建、重用構件的概念
• 使用子程序庫或類庫
2.5 編寫內部設計文檔
• 構件劃分圖、構件間的介面、構件處理說明、屏幕設計文檔、報表設計文檔、文件設計文檔、資料庫設計文檔
2.6 設計評審
3.程序設計
3.1 模塊劃分(原則、方法、標准)
3.2 編寫程序設計文檔
• 模塊規格說明書(功能和介面說明、程序處理邏輯的描述、輸入輸出數據格式的描述)
• 測試要求說明書(測試類型和目標、測試用例、測試方法)
3.3 程序設計評審
4.系統實施
4.1 配置計算機系統及其環境
4.2 選擇合適的程序設計語言
4.3 掌握C程序設計語言,以及C++、Java、Visual、Basic、Visual C++中任一種程序設計語言,以便能指導程序員進行編程和測試,並進行必要的優化
4.4 系統測試
• 指導程序員進行模塊測試,並進行驗收
• 准備系統集成測試環境和測試工具
• 准備測試數據
• 寫出測試報告
5.軟體工程
• 軟體生存期模型(瀑布模型、螺旋模型、噴泉模型)和軟體成本模型
• 定義軟體需求(系統化的目標、配置、功能、性能和約束)
• 描述軟體需求的方法(功能層次模型、數據流模型、控制流模型、面向數據的模型、面向對象的模型等)
• 定義軟體需求的方法(結構化分析方法、面向對象分析方法)
• 軟體設計(分析與集成、逐步求精、抽象、信息隱蔽)
• 軟體設計方法(結構化設計方法、Jackson方法、Warnier方法、面向對象設計方法)
• 程序設計(結構化程序設計、面向對象程序設計)
• 軟體測試的原則與方法
• 軟體質量(軟體質量特性、軟體質量控制)
• 軟體過程評估基本方法、軟體能力成熟度評估基本方法
• 軟體開發環境和開發工具(分析工具、設計工具、編程工具、測試工具、維護工具、CASE)
• 軟體工程發展趨勢(面向構件,統一建模語言(UML))
•軟體過程改進模型和方法
⑧ 國家軟考——軟體設計師難不難考
軟考中級的軟體設計師考試,每年有上半年和下半年兩次機會。
分為上專午題和下午題,兩屬項考試都在45分以上就算合格,可以拿證。
上午題基本都是選擇題,下午基本是程序設計題。
考試具體要求如下,可以參考。
(1) 掌握計算機內的數據表示、算術和邏輯運算方法;
(2) 掌握相關的應用數學及離散數學基礎知識;
(3) 掌握計算機體系結構以及各主要部件的性能和基本工作原理;
(4) 掌握操作系統、程序設計語言的基礎知識,了解編譯程序的基本知識;
(5) 熟練掌握常用數據結構和常用演算法;
(6) 熟悉資料庫、網路和多媒體的基礎知識;
(7) 掌握C程序設計語言,以及C++、Java中的一種程序設計語言;(2010年取消C語言)
(8) 熟悉軟體工程、軟體過程改進和軟體開發項目管理的基礎知識;
(9) 掌握軟體設計的方法和技術;
(10) 了解信息化、常用信息技術標准、安全性,以及有關法律、法規的基礎知識;
(11) 正確閱讀和理解計算機領域的英文資料。
⑨ 如何備考軟考中級的軟體設計師
軟體抄設計師考試分上襲午題和下午題,上午為綜合基礎,下午為案例分析,上午題相對簡單,認真復習教材,基本是沒多大問題的;
關鍵在於下午題:
要熟悉歷年試題。因為歷年試題很多知識點是反復考,抓住了歷年試題就抓住了重點。試題是對考試大綱的外化,是對相應知識的梳理,直接體現考查意圖。如能把歷年試題研究幾遍,通過考試不成問題。因此,一個高效的學習方法,就是先研究歷年考試題,通過做題,鞏固已有知識,強化能力。針對試題不同內容,進行歸納總結,找出自己的優勢和不足,然後帶著問題去讀書,查找相關資料,做到有的放矢,針對性強。從應考角度講,這種方法效率可能最高。
備考下午編程題必須上機調試實踐。雖然軟設考試都是筆試,但是上機調試是很好的鍛煉,光看書很多問題都隱藏起來了,自以為是明白了,一調試才發現自己想的太簡單了,就會有一大堆意料之外的問題出現。通過上機操作,更能明白每個語句、每個演算法的作用和意義,就能更好的應用。