


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2016年軟考系統架構設計師知識點軟件系統工具軟件系統工具的種類繁多,很難有統一的分類方法。通常可以按軟件過程活動將軟件工具分為 軟件開發工具、軟件維護工具、軟件管理和軟件支持工具。1. 軟件開發工具對應軟件開發過程的各種活動,軟件開發工具有需求分析工具、設計工具、。編碼與排錯工具、 測試工具等。(1)需求分析工具需求分析工具用以輔助軟件需求分析活動, 輔助系統分析員從需求定義出發, 生成完整的、清 晰的、一致的功能規范。功能規范是軟件所要完成的功能精確而完整的陳述,描述該軟件要做什么及 只做什么,是軟件開發者和用戶間的契約,同時也是軟件設計者的和實現者的依據。 功能規范應正確、 完整地反映用
2、戶對軟件的功能要求, 其表達是清晰的、無歧義的。需求分析工具的目標就是幫助分析 員形成這樣的功能規范。(2)基于自然語言或圖形描述的工具這類工具采用分解與抽象等基本手段, 對用戶問題逐步求精,并在檢測機制的輔助下,發現其 中可能存在的問題(如一致性),通過對問題描述的修改,逐步形成能正確反映用戶需求的功能規范。 它能幫助分析員提高需求文檔的質量, 降低功能規范的維護費用。這里以支持結構化方法的需求分析 工具為例介紹。結構化分析方法采用數據流圖的描述方法, 分析的主要結果是一套分層的數據流圖和一個數據 詞典。結構化需求分析工具通常由圖形編輯器、 數據詞典管理器和檢測機制三部分組成。 使用圖形編
3、輯器繪制數據流圖,該圖形編輯器應支持圖形的分層結構, 以構成分層數據流圖。在構造數據流圖的 同時把數據流圖的有關信息填入數據詞典。 在填寫數據詞典的過程中,數據詞典管理器即可査出重名 等錯誤。在構造出分層數據流圖后,可通過檢測機制來檢查分層數據流圖的合法性, 可發現諸如父圖 與子圖不平衡,遺漏的數據流,只有讀文件沒有寫文件或只有寫文件沒有讀文件等錯誤。然后將修改后的數據流圖和詞典與用戶交流, 考察它是否符合用戶的功能需求。 若不一致,再使用圖形編輯器進 行修改。需求分析工具還應具備同步修改的功能, 即修改數據流圖的同時也修改數據詞典中的有關信 息,以保持數據流圖與數據詞典的一致性。經過多次反復
4、的交流和修改,使功能規范逐步達到準確、 完整和一致,最后形成有效的功能規范。除此以外,該工具還可瀏覽數據詞典,生成各種統計或查詢 報告。(3)基于形式化需求定義語言的工具基于形式化需求定義語言的工具大多以基于知識的需求智能助手的形式出現,并把人工智能技術運用于軟件工程。這類工具通常具有一個知識庫和一個推理機制。知識庫中存放需求分析所需的公共知識,以及特定的應用領域知識。這些知識能用來理解需求定義中的省略寫法,能部分消除不完整性和歧義性。推理機制能容忍需求定義的無序性,部分解決描述中的不一致性。這類工具接受用形式 化語言書寫的功能描述,運用知識庫中的知識,通過推理,發現需求定義中的矛盾和不足,經
5、補充、 更新知識庫中的知識和規則,以及與系統分析員的不斷交互,得到完整的功能規范。(4)其他需求分析工具可執行規范語言以及原型技術為需求分析工具提供了另一條實現途徑,這些工具通過運行可執行規范或原型,將有關的結果顯示給用戶和系統分析員,以便進行需求確認。2. 設計工具設計工具用以輔助軟件設計活動,輔助設計人員從軟件功能規范出發,得到相應的設計規范。設計規范是符合功能規范和需求定義中所指定的功能及性能要求,對軟件的組織或其組成部分的內部結構的描述。通常設計規范分成概要設計規范和詳細設計規范。概要設計規范描述軟件的功能模塊及其相互關系,說明模塊的處理過程和外部行為,同時還應描述數據的邏輯結構。詳細
6、設計規范 描述每個模塊的處理算法及涉及到的全部數據結構。設計規范是程序員進行編程活動的依據。3. 編碼與排錯工具編碼工具和排錯工具用以輔助程序員進行編碼活動。編碼工具輔助程序員用某種程序語言編制 源程序,并對源程序進行翻譯,最終轉換成可執行的代碼,因此編碼工具通常與編碼所使用的程序語 言密切相關。排錯工具用來輔助程序員尋找源程序中錯誤的性質和原因,并確定其出錯的位置。由于源程序一般以正文的形式出現,必須有編輯器將它輸入,并進行瀏覽、編輯和修改。又由于源程序的 編寫往往不會一次成功,需要不斷尋找其中的錯誤并加以糾正。 編碼工具和排錯工具是編程活動的重 要輔助工具,也是最早出現的軟件工具。(1)編
7、碼工具主要有編輯程序、匯編程序、編譯程序和生成程序 等。編輯程序:編輯程序用以輸入源程序,并對其進行增加、刪除和修改等操作。除常見的以字符 為單位進行編輯的正文編輯程序外,還有面向程序語言語法單位的語法制導編輯程序和混合編輯程 序。語法制導編輯程序也稱結構化編輯程序,它可根據程序語言的語法規則提供編輯時的語法制導和 檢查,可以一次擴展或刪除一個語法單位,如語句、表達式等,從而確保輸入的源程序在語法上是正 確的。混合編輯程序兼有正文編輯和語法制導編輯兩種方法。匯編程序:匯編程序用以將匯編語言書寫的程序翻譯成等價的機器語言程序。如果匯編程序所生成的機器指令代碼是另一種計算機的機器指令,便稱這類匯編
8、程序為交叉匯編程序。編譯程序:編譯程序用以將高級程序語言書寫的程序翻譯成等價的低級程序語言程序。生成程序:生成程序通常根據與領域有關的甚高級語言或某種專用語言描述的用戶需求,自動生成高級程序語言或低級程序語言描述的程序。例如,詞法分析生成程序LEX,它根據正規表達式表 示的詞法規則,自動生成詞法分析程序的代碼段,來實現能識別所說明的正規表達式的有限狀態自動 機。(2)排錯工具已有的排錯工具主要有源代碼排錯程序和排錯程序生成程序兩類。源代碼排錯程序:源代碼排錯程序用以幫助程序員理解程序的執行狀態可通過對程序執行過程中各種狀態的判別進行程序錯誤的識別、定位及改正。4. 軟件維護工具軟件維護工具輔助
9、軟件維護過程中的活動, 輔助維護人員對軟件代碼及其文檔進行各種維護活 動。軟件維護工具主要有版本控制工具、文檔分析工具、開發信息庫工具、逆向工程工具和再工程工 具等。(1)版本控制工具在軟件開發和維護過程中一個軟件會有多個版本,版本控制工具用來存儲、更新、恢復和管理 一個軟件的多個版本。UNIX的是版本控制工具的典型代表。SCCS能為正文文件的多個版本建立一棵 版本樹,第一版完整儲存文本全文,以后各版只存放它之前版本的不同之處,在任何時刻sees只允許對一個當前版本進行修改和提交。通過版本樹維護版本的更新歷史,并允許恢復到以前的某個版本。(2)文檔分析工具文檔分析工具用以對軟件開發過程中形成的
10、文檔進行分析,給出軟件維護活動所需的維護信 息。例如,基于數據流圖的需求文檔分析工具可給出對數據流圖的某個成分進行維護時的影響范圍及 被影響范圍,以便在該成分修改的同時考慮其影響范圍內的其他成分是否也要修改。基于模塊結構圖的設計文檔分析工具可以給出對模塊變量進行維護時的影響及被影響范圍。針對程序文檔的源代碼分析工具可給出模塊、全局變量、局部變量的定義、引用情況,它還可以進行程序分片。程序分片是把 程序中與指定的數據項或數據結構有關的程序代碼抽出來,過濾掉與其無關的代碼,以便維護人員高效地理解和把握他所關心的部分。文檔分析工具還可得到被分析的文檔的有關信息,如文檔各種成分 的個數、定義及引用情況
11、等。(3)開發信息庫工具開發信息庫工具用來維護軟件項目的開發信息,包括對象、模塊等。它記錄每個對象的修改信息和其他變形;維護對象和與之有關信息之間的關系; 包括模塊的設計者、新版本中模塊的改動及其 與錯誤、測試用例、測試結果之間的聯系等;其他必須記錄的信息,包括用來生成此軟件產品的所有 工具的版本信息,所釆用的命令語言程序和系統庫以及測試用例版本和測試報告。(4)逆向工程工具在軟件生存周期中,將某種形式表示的軟件轉換成更高抽象形式表示的軟件的活動稱為逆向工 程。例如,用反匯編工具將機器語言代碼轉換成匯編語言代碼,用反編譯工具將匯編語言代碼或機器 語言代碼轉換成某種高級程序語言源程序, 之后再將
12、源程序轉換成詳細設計的某種表示形式, 這都屬 于逆向工程的范疇。逆向工程工具就是輔助軟件人員進行這種逆向工程活動的軟件工具。 若軟件缺乏 必要的文檔,原先的開發人員又已調離,就需使用逆向工程工具來理解原有的軟件。(5)再工程工具再工程工具用來支持重構一個功能和性能更為完善的軟件系統。目前的再工程工具主要集中在代碼重構、程序結構重構和數據結構重構等方面。代碼重構工具可把用一種程序語言書寫的程序轉換成用另一種程序語言書寫的或適用于不同硬件平臺的程序,例如FORTRA到C的轉換工具。程序結構重構工具接受-個非結構化或結構化程度 較低的源程序,構造出行為等價的結構化程序。 數據結構重構工具通過對數據描
13、述的分析, 重構新的 數據結構。5. 軟件管理和軟件支持工具軟件管理過程和軟件支持過程往往要涉及到軟件生存周期中的多個活動,軟件管理和軟件支持工具用來輔助管理人員和軟件支持人員的管理活動和支持活動,以確保軟件高質高效地完成。輔助軟件管理和軟件支持的工具有很多, 其中常用的工具有項目管理工具、 配置管理工具、軟 件評價工具等。(1)項目管理工具項目管理工具用來輔助軟件的項目管理活動。 通常項目管理活動包括項目的計劃、 調度、通信、 成本估算、資源分配及質量控制等。一個項目管理工具通常把重點放在某 -個或某幾個特定的管理環 節上,而不提供對管理活動包羅萬象的支持。例如成本估算工具,釆用某種成本估算
14、模型對項目的成本進行估算。它可以通過間接的測量來 估算項目的規模大小,并描述總的項目特征,如問題的復雜度、開發組經驗和過程成熟度等。然后按 一定的估算模型估算出項目的工作量、 工期和開發人數等。當項目截止期限變更時,可檢測它對整個 開發成本的影響。(2)配置管理工具配置曾理工具用以輔助完成軟件配置項的標識、 版本控制、變化控制、審計和狀態統計等基本 任務,使各配置項的存取、修改和系統生成易于實現,從而簡化審計過程,改進狀態統計,減少錯誤, 提髙系統的質量。(3)軟件評價工具軟件評價工具用以輔助管理人員進行軟件質量保證的有關活動。它通常可按某個軟件質量模型對被評價的軟件進行度量,然后得到相關的軟件評價報告。目前許多度量指標還不能定量化, 需要通 過專家評分,再將得分送給軟件評價工具。對一些已經定量化的度量指標則可利用評價工具自動獲取 有的評價工具還可分析被評價程序的程序結構,根據某種軟件復雜性模型對被評價的程序進行復雜 性度量。軟件評價工具有助于軟件的貭量控制,對確,保軟件的質量有重要的作用。(4)軟件開發工具的評價和選擇現在各類軟件開發工具十分豐富,有免費的,有價格便宜的,也有昂貴的。評價和選擇適合本 人、本單位、本項目的軟件開發工具,可以根據以下標準來衡量軟件開發工具的優劣。功能:軟件開發工具不
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 科室一級護理質控的意義
- 希沃課件播放指南
- 小長假收心教育主題班會
- 新形勢下醫院思想文化工作研究
- 套管培訓大綱
- 綠色出行倡導者司機雇傭合同范本
- 財務顧問保密協議及企業財務診斷與改善合同
- 白酒品牌授權生產及銷售合作協議
- 工業園區廠房拆除及搬遷補償合同
- 城市公交車輛特許經營權承包合同
- 七年級道法下冊 第二學期 期末綜合測試卷(人教海南版 2025年春)
- 《隱身復合材料》課件
- 架橋機常見安全隱患
- 學校保潔服務投標方案(技術標)
- 左側基底節區腦出血護理查房
- 全國班主任比賽一等獎《高三班主任經驗交流》課件
- 集訓01 中國古代史選擇題100題(原卷版)
- 兒康家長培訓內容
- 兒科護理學小兒液體療法
- 2024-2030年中國退熱貼行業競爭格局與前景發展策略分析報告
- 2025年中國鐵路廣州局集團限公司招聘177名管理單位筆試遴選500模擬題附帶答案詳解
評論
0/150
提交評論