版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、10.1 10.1 軟件工具軟件工具10.2 10.2 軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境10.3 10.3 集成化工程支持環(huán)境集成化工程支持環(huán)境10.4 CASE10.4 CASE環(huán)境。環(huán)境。一一. .軟件工具軟件工具 1. 1.軟件工具:是指為支持計(jì)算機(jī)軟件及其文檔的開發(fā)、維護(hù)、模擬、軟件工具:是指為支持計(jì)算機(jī)軟件及其文檔的開發(fā)、維護(hù)、模擬、 移植或管理而研制的程序系統(tǒng)。移植或管理而研制的程序系統(tǒng)。 2. 2.軟件工具的范圍軟件工具的范圍 (1) (1)傳統(tǒng)工具傳統(tǒng)工具: :文本編輯程序、匯編程序、解釋程序和編譯程序等;文本編輯程序、匯編程序、解釋程序和編譯程序等; (2) (2)支持軟件生存周期各
2、階段的需求分析、設(shè)計(jì)、編碼、測試、維支持軟件生存周期各階段的需求分析、設(shè)計(jì)、編碼、測試、維 護(hù)等工具和管理工具。護(hù)等工具和管理工具。 3. 3.軟件工具作用:輔助軟件人員進(jìn)展軟件開發(fā)或維護(hù)過程中某一或幾軟件工具作用:輔助軟件人員進(jìn)展軟件開發(fā)或維護(hù)過程中某一或幾 個(gè)環(huán)節(jié)的任務(wù),有效提高軟件的消費(fèi)率和質(zhì)量。個(gè)環(huán)節(jié)的任務(wù),有效提高軟件的消費(fèi)率和質(zhì)量。二二. .軟件工具的開展過程軟件工具的開展過程 1. 1.軟件工具的開展閱歷了從簡單工具到復(fù)雜工具、從手工工具到自動(dòng)軟件工具的開展閱歷了從簡單工具到復(fù)雜工具、從手工工具到自動(dòng) 工具、從支持程序設(shè)計(jì)階段的工具到支持軟件開發(fā)全過程的工具、工具、從支持程序設(shè)計(jì)
3、階段的工具到支持軟件開發(fā)全過程的工具、 從單個(gè)工具到工具集成的演化過程。從單個(gè)工具到工具集成的演化過程。2.2.軟件工具的幾個(gè)開展階段軟件工具的幾個(gè)開展階段 階段階段應(yīng)應(yīng) 用用代表性工具代表性工具程序程序設(shè)計(jì)設(shè)計(jì)程序程序系統(tǒng)系統(tǒng)軟件軟件工程工程軟件軟件產(chǎn)品產(chǎn)品 手任務(wù)業(yè)方式手任務(wù)業(yè)方式, ,在這階段從框圖到編在這階段從框圖到編碼幾乎沒有軟件工具支持。碼幾乎沒有軟件工具支持。機(jī)器指令、機(jī)器指令、匯編指令。匯編指令。 各種高級(jí)言語的編譯程序各種高級(jí)言語的編譯程序, ,各種程序各種程序文語的調(diào)試工具。文語的調(diào)試工具。排錯(cuò)程序、靜態(tài)分析和動(dòng)態(tài)跟排錯(cuò)程序、靜態(tài)分析和動(dòng)態(tài)跟蹤工具等。蹤工具等。 注重軟件開
4、發(fā)各階段支持工具的研注重軟件開發(fā)各階段支持工具的研制和運(yùn)用。隨著構(gòu)造化程序設(shè)計(jì)、模制和運(yùn)用。隨著構(gòu)造化程序設(shè)計(jì)、模塊化程序設(shè)計(jì)等技術(shù)的廣泛運(yùn)用,出塊化程序設(shè)計(jì)等技術(shù)的廣泛運(yùn)用,出現(xiàn)了一大批軟件工具或系統(tǒng)?,F(xiàn)了一大批軟件工具或系統(tǒng)。 需求分析工具、軟件設(shè)計(jì)工需求分析工具、軟件設(shè)計(jì)工具、文檔化工具、代碼自動(dòng)生具、文檔化工具、代碼自動(dòng)生成工具、測試工具、源代碼管成工具、測試工具、源代碼管理工具及工程管理工具等。理工具及工程管理工具等。 軟件開場成為一種工業(yè)化的產(chǎn)品時(shí)軟件開場成為一種工業(yè)化的產(chǎn)品時(shí), ,開場運(yùn)用設(shè)計(jì)規(guī)格言語來編寫開場運(yùn)用設(shè)計(jì)規(guī)格言語來編寫軟件設(shè)計(jì)闡明書軟件設(shè)計(jì)闡明書, ,以自動(dòng)生成方式
5、來消費(fèi)軟件。目前進(jìn)一步開展為以以自動(dòng)生成方式來消費(fèi)軟件。目前進(jìn)一步開展為以需求規(guī)格描畫言語來書寫用戶需求規(guī)格書,經(jīng)過自動(dòng)化工具從軟件資需求規(guī)格描畫言語來書寫用戶需求規(guī)格書,經(jīng)過自動(dòng)化工具從軟件資源庫中選取程序模塊和數(shù)據(jù)模塊,自動(dòng)結(jié)合,生成界面,從而得到滿源庫中選取程序模塊和數(shù)據(jù)模塊,自動(dòng)結(jié)合,生成界面,從而得到滿足用戶需求的軟件產(chǎn)品。足用戶需求的軟件產(chǎn)品。階段階段功功 能能工工 具具三三. .軟件工具的分類軟件工具的分類1.1.按軟件生命周期的階段分類按軟件生命周期的階段分類需求需求分析分析定義需求規(guī)格。定義需求規(guī)格。 數(shù)據(jù)流圖繪制與分析工具、形狀轉(zhuǎn)換圖繪制與分析工具、數(shù)據(jù)流圖繪制與分析工具、
6、形狀轉(zhuǎn)換圖繪制與分析工具、面向?qū)ο蟮哪P秃头治龉ぞ?、快速原型?gòu)造工具、數(shù)據(jù)字面向?qū)ο蟮哪P秃头治龉ぞ?、快速原型?gòu)造工具、數(shù)據(jù)字典與數(shù)據(jù)庫工具等。典與數(shù)據(jù)庫工具等。軟件軟件設(shè)計(jì)設(shè)計(jì) 描畫設(shè)計(jì)結(jié)果構(gòu)描畫設(shè)計(jì)結(jié)果構(gòu)成設(shè)計(jì)軟件規(guī)格。成設(shè)計(jì)軟件規(guī)格。 HIPO HIPO圖、圖、PDL(PDL(程序設(shè)計(jì)言語程序設(shè)計(jì)言語) )或或PAD(PAD(問題分析圖問題分析圖) )支持工支持工具等。具等。編碼編碼 提供各種便利的提供各種便利的編程作業(yè)環(huán)境。編程作業(yè)環(huán)境。 集成化的程序員任務(wù)平臺(tái)。主要包括:各種正文編輯器和集成化的程序員任務(wù)平臺(tái)。主要包括:各種正文編輯器和常規(guī)的編譯程序、匯編程序、連結(jié)程序及符號(hào)調(diào)試器等
7、。常規(guī)的編譯程序、匯編程序、連結(jié)程序及符號(hào)調(diào)試器等。軟件軟件測試測試支持整個(gè)測試過程支持整個(gè)測試過程 支持整個(gè)測試過程包括選擇測試用例生成測試程序與測試數(shù)據(jù)、測試的執(zhí)行、測試支持整個(gè)測試過程包括選擇測試用例生成測試程序與測試數(shù)據(jù)、測試的執(zhí)行、測試結(jié)果的評(píng)價(jià)及添加測試數(shù)據(jù)等。結(jié)果的評(píng)價(jià)及添加測試數(shù)據(jù)等。 靜態(tài)分析器、動(dòng)態(tài)覆蓋率測試器、測試用例生成器、測靜態(tài)分析器、動(dòng)態(tài)覆蓋率測試器、測試用例生成器、測試報(bào)告生成器及環(huán)境模擬器等。試報(bào)告生成器及環(huán)境模擬器等。軟件軟件維護(hù)維護(hù)軟件的各種維護(hù)。軟件的各種維護(hù)。 反匯編程序、反編譯程序、程序構(gòu)造分析器、源程序反匯編程序、反編譯程序、程序構(gòu)造分析器、源程序格
8、式化工具、文檔生成工具、源程序至格式化工具、文檔生成工具、源程序至PAD(PAD(問題分析圖問題分析圖) )或流程圖的自動(dòng)轉(zhuǎn)換工具等?;蛄鞒虉D的自動(dòng)轉(zhuǎn)換工具等。開發(fā)技術(shù)支持工具開發(fā)技術(shù)支持工具工程管理工具工程管理工具2.2.按軟件功能分類按軟件功能分類系統(tǒng)描畫系統(tǒng)描畫根本軟件的編程言語。根本軟件的編程言語。 輔助系統(tǒng)管理人員完成工程開發(fā)人輔助系統(tǒng)管理人員完成工程開發(fā)人員和本錢估算、工程開發(fā)方案、工程員和本錢估算、工程開發(fā)方案、工程資源分配與調(diào)度、軟件質(zhì)量保證、軟資源分配與調(diào)度、軟件質(zhì)量保證、軟件配制管理和版本控制、風(fēng)險(xiǎn)分析、件配制管理和版本控制、風(fēng)險(xiǎn)分析、工程形狀報(bào)告和追蹤等任務(wù)。工程形狀報(bào)告
9、和追蹤等任務(wù)。環(huán)境模擬環(huán)境模擬 對(duì)實(shí)踐環(huán)境進(jìn)展模擬或借助工具對(duì)實(shí)踐環(huán)境進(jìn)展模擬或借助工具進(jìn)展缺點(diǎn)形狀的環(huán)境模擬。進(jìn)展缺點(diǎn)形狀的環(huán)境模擬。調(diào)試測試調(diào)試測試查明系統(tǒng)缺點(diǎn)緣由,并進(jìn)展恢復(fù)。查明系統(tǒng)缺點(diǎn)緣由,并進(jìn)展恢復(fù)。性能評(píng)價(jià)性能評(píng)價(jià) 測試系統(tǒng)能否到達(dá)設(shè)計(jì)性能目的,測試系統(tǒng)能否到達(dá)設(shè)計(jì)性能目的,及設(shè)計(jì)的性能目的能否合理,還可及設(shè)計(jì)的性能目的能否合理,還可得到系統(tǒng)調(diào)試所必需的性能參數(shù)。得到系統(tǒng)調(diào)試所必需的性能參數(shù)。 在系統(tǒng)發(fā)生缺點(diǎn)時(shí),迅速得到分在系統(tǒng)發(fā)生缺點(diǎn)時(shí),迅速得到分析判別缺點(diǎn)緣由所需的各種信息,析判別缺點(diǎn)緣由所需的各種信息,協(xié)助系統(tǒng)維護(hù)人員迅速排除缺點(diǎn)。協(xié)助系統(tǒng)維護(hù)人員迅速排除缺點(diǎn)。運(yùn)轉(zhuǎn)維護(hù)運(yùn)轉(zhuǎn)
10、維護(hù)普普通通軟軟件件工工具具 從軟件開發(fā)到維護(hù)的全過從軟件開發(fā)到維護(hù)的全過程中,支持源程序、數(shù)據(jù)文程中,支持源程序、數(shù)據(jù)文件的管理和維護(hù)以及文檔化件的管理和維護(hù)以及文檔化的工具。的工具。四四. .軟件工具的評(píng)價(jià)原那么軟件工具的評(píng)價(jià)原那么 1. 1.易用性易用性: :友好的用戶界面,用戶樂于運(yùn)用。友好的用戶界面,用戶樂于運(yùn)用。 2. 2.對(duì)開發(fā)方法的支持:能滿足預(yù)期的義務(wù)和功能需求,且能對(duì)開發(fā)方法的支持:能滿足預(yù)期的義務(wù)和功能需求,且能 支持完成該義務(wù)所遵照的方法學(xué)。支持完成該義務(wù)所遵照的方法學(xué)。 3. 3.穩(wěn)健性穩(wěn)健性: :具備自檢測機(jī)制具備自檢測機(jī)制, ,即使在缺點(diǎn)情況下也不會(huì)導(dǎo)致嚴(yán)即使在缺
11、點(diǎn)情況下也不會(huì)導(dǎo)致嚴(yán) 重后果重后果. . 4. 4.性能性能: :能使資源得到充分有效的利用。能使資源得到充分有效的利用。 5. 5.工具構(gòu)造柔性工具構(gòu)造柔性: :工具構(gòu)造是柔軟的、可修正的和可擴(kuò)展的。工具構(gòu)造是柔軟的、可修正的和可擴(kuò)展的。一一. .軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境: :將一組相關(guān)的軟件工具按照一定的軟件開發(fā)方法、軟件生將一組相關(guān)的軟件工具按照一定的軟件開發(fā)方法、軟件生 產(chǎn)和維護(hù)模型有機(jī)的組合起來,為特定的領(lǐng)域所運(yùn)用,以支持從需求分產(chǎn)和維護(hù)模型有機(jī)的組合起來,為特定的領(lǐng)域所運(yùn)用,以支持從需求分 析、設(shè)計(jì)、編碼、測試直到維護(hù)的整個(gè)軟件生命周期的計(jì)算機(jī)輔輔助開析、設(shè)計(jì)、編碼、測試直到維護(hù)的
12、整個(gè)軟件生命周期的計(jì)算機(jī)輔輔助開 發(fā)程序系統(tǒng)。軟件開發(fā)環(huán)境有人也稱為發(fā)程序系統(tǒng)。軟件開發(fā)環(huán)境有人也稱為“軟件工程環(huán)境、軟件工程環(huán)境、“CASE“CASE環(huán)境。環(huán)境。二二. .軟件開發(fā)環(huán)境的分類軟件開發(fā)環(huán)境的分類 1.1.按處理的問題分類按處理的問題分類面向面向功功 能能環(huán)境工具環(huán)境工具程序設(shè)程序設(shè)計(jì)環(huán)境計(jì)環(huán)境 如何將規(guī)格闡明轉(zhuǎn)換為可運(yùn)轉(zhuǎn)的程如何將規(guī)格闡明轉(zhuǎn)換為可運(yùn)轉(zhuǎn)的程序序, ,屬于部分編程的范疇。屬于部分編程的范疇。 UNIX UNIX設(shè)計(jì)環(huán)境、設(shè)計(jì)環(huán)境、AdaAda程序設(shè)計(jì)環(huán)程序設(shè)計(jì)環(huán)境境(APSE)(APSE)等。等。系統(tǒng)合系統(tǒng)合成環(huán)境成環(huán)境 將多個(gè)子系統(tǒng)集成一個(gè)大系統(tǒng),屬將多個(gè)子系統(tǒng)集
13、成一個(gè)大系統(tǒng),屬于全局編程的范疇。于全局編程的范疇。 接口控制接口控制: :模塊相連和資源共享模塊相連和資源共享問題的描畫和制約;版本控制問題的描畫和制約;版本控制: :對(duì)對(duì)系統(tǒng)的各個(gè)版本的描畫和生成。系統(tǒng)的各個(gè)版本的描畫和生成。工程管工程管理環(huán)境理環(huán)境 處理由于軟件產(chǎn)品規(guī)模大、開發(fā)周處理由于軟件產(chǎn)品規(guī)模大、開發(fā)周期長、參與人員多等而呵斥的管理問期長、參與人員多等而呵斥的管理問題,屬于多方編程的范疇。題,屬于多方編程的范疇。 由記錄和維護(hù)系統(tǒng)開發(fā)的形狀信由記錄和維護(hù)系統(tǒng)開發(fā)的形狀信息,文檔的集成和分發(fā)組成。息,文檔的集成和分發(fā)組成。2.2.按技術(shù)開展方向分類按技術(shù)開展方向分類技術(shù)技術(shù)特特 點(diǎn)點(diǎn)
14、以言語以言語為中心為中心的環(huán)境的環(huán)境 提供一套適宜于一種言語的工具集。通常是高交互式的提供一套適宜于一種言語的工具集。通常是高交互式的, ,對(duì)系統(tǒng)集成只提供有對(duì)系統(tǒng)集成只提供有限支持,適于探求性的軟件開發(fā)。如限支持,適于探求性的軟件開發(fā)。如INTERLISPINTERLISP程序設(shè)計(jì)環(huán)境程序設(shè)計(jì)環(huán)境( (開發(fā)開發(fā)LISPLISP程序程序) )、CedarCedar環(huán)境環(huán)境( (以以Meas/CedarMeas/Cedar言語為中心言語為中心) )、APSEAPSE程序設(shè)計(jì)環(huán)境程序設(shè)計(jì)環(huán)境( (以以AdaAda言語為中心言語為中心) )面向構(gòu)面向構(gòu)造化的造化的環(huán)環(huán) 境境 為用戶提供一種以編輯器為
15、中心的支持交互式語法構(gòu)造、語義分析、程序執(zhí)為用戶提供一種以編輯器為中心的支持交互式語法構(gòu)造、語義分析、程序執(zhí)行和調(diào)試的用戶程序設(shè)計(jì)環(huán)境。用戶只能在構(gòu)造化的元素上操作,用戶看到的行和調(diào)試的用戶程序設(shè)計(jì)環(huán)境。用戶只能在構(gòu)造化的元素上操作,用戶看到的不是通常的源程序文本,而是籠統(tǒng)的語法樹。不是通常的源程序文本,而是籠統(tǒng)的語法樹。工具箱工具箱環(huán)環(huán) 境境 在某種在某種OSOS根底上經(jīng)過一組小的適用工具構(gòu)成,雖然各工具之間往往相互獨(dú)立,根底上經(jīng)過一組小的適用工具構(gòu)成,雖然各工具之間往往相互獨(dú)立,但系統(tǒng)提供一致的用戶命令界面及工具之間一致的數(shù)據(jù)交換方式。但系統(tǒng)提供一致的用戶命令界面及工具之間一致的數(shù)據(jù)交換方
16、式。 工具箱中各工具之間是相互獨(dú)立的,用戶可根據(jù)需求進(jìn)展靈敏的添加和裁減。工具箱中各工具之間是相互獨(dú)立的,用戶可根據(jù)需求進(jìn)展靈敏的添加和裁減。 工具箱環(huán)境中普通除了包括支持編碼階段的工具工具箱環(huán)境中普通除了包括支持編碼階段的工具( (如編輯程序、編譯程序、如編輯程序、編譯程序、匯編程序、連結(jié)程序調(diào)試程序等匯編程序、連結(jié)程序調(diào)試程序等) )外,還可包括支持大型軟件開發(fā)方面的工具。外,還可包括支持大型軟件開發(fā)方面的工具。 由于工具箱環(huán)境具有較強(qiáng)的通用性和靈敏性,因此目前商品化的算機(jī)系系統(tǒng)由于工具箱環(huán)境具有較強(qiáng)的通用性和靈敏性,因此目前商品化的算機(jī)系系統(tǒng)上配置的軟件環(huán)境大多屬于這一類。如:上配置的軟
17、件環(huán)境大多屬于這一類。如:UNIXUNIX程序設(shè)計(jì)環(huán)境、及程序設(shè)計(jì)環(huán)境、及VAX/VNS SETVAX/VNS SET、PCDEPCDE、APCEAPCE等程序設(shè)計(jì)環(huán)境。等程序設(shè)計(jì)環(huán)境。3.3.按集成化程度分類按集成化程度分類集成集成第一代第一代第二代第二代第三代第三代根底根底 集成集成方式方式 調(diào)用調(diào)用方式方式 工具工具構(gòu)造構(gòu)造 界面界面 建立在建立在OSOS之上,如之上,如UNIXUNIX、VMSVMS等;等; 環(huán)境數(shù)據(jù)庫建立在環(huán)境數(shù)據(jù)庫建立在DBSDBS之上,之上,如如DB2 ORACLKDB2 ORACLK、SYBASESYBASE、INFOMIXINFOMIX等;等; 建立在知識(shí)庫系
18、統(tǒng)上,向建立在知識(shí)庫系統(tǒng)上,向智能化方向開展;智能化方向開展; 工具之間經(jīng)過一個(gè)公用框工具之間經(jīng)過一個(gè)公用框架進(jìn)展集成;現(xiàn)有工具不需架進(jìn)展集成;現(xiàn)有工具不需經(jīng)過大的修正即可參與;經(jīng)過大的修正即可參與; 工具集成在更根本的層次上;工具集成在更根本的層次上;現(xiàn)有工具不能隨意參與,需作現(xiàn)有工具不能隨意參與,需作適當(dāng)?shù)男拚投ㄖ?;適當(dāng)?shù)男拚投ㄖ疲?經(jīng)過經(jīng)過OSOS的命令言語接口的命令言語接口或程序調(diào)用接口運(yùn)用這些或程序調(diào)用接口運(yùn)用這些工具;工具; 順序調(diào)用分立工具的方式順序調(diào)用分立工具的方式完全被集成化的工具所替代,完全被集成化的工具所替代,用戶不需求在義務(wù)之間來回用戶不需求在義務(wù)之間來回切換不同的
19、工具;切換不同的工具; 工具運(yùn)用一致的文件構(gòu)造,工具運(yùn)用一致的文件構(gòu)造,并成為環(huán)境信息庫的一部分并成為環(huán)境信息庫的一部分 采用方式化方法、面向?qū)ο蟛捎梅绞交椒?、面向?qū)ο蟮姆椒ê蛙浖赜玫刃录夹g(shù);的方法和軟件重用等新技術(shù); 人機(jī)界面采用單色、低分人機(jī)界面采用單色、低分辨的文字終端,圖形才干差,辨的文字終端,圖形才干差,運(yùn)用菜單技術(shù);運(yùn)用菜單技術(shù); 人機(jī)界面采用高分辨率圖形人機(jī)界面采用高分辨率圖形顯示終端,支持鼠標(biāo),具有多顯示終端,支持鼠標(biāo),具有多窗口、圖標(biāo)、對(duì)話框等功能。窗口、圖標(biāo)、對(duì)話框等功能。 由多個(gè)工具控制的多窗口由多個(gè)工具控制的多窗口技術(shù)被單個(gè)工具控制的多窗技術(shù)被單個(gè)工具控制的多窗口技
20、術(shù)所替代??诩夹g(shù)所替代。 工具和文檔都作為實(shí)體工具和文檔都作為實(shí)體一致放在環(huán)境數(shù)據(jù)庫中;一致放在環(huán)境數(shù)據(jù)庫中;用戶根據(jù)義務(wù),從數(shù)據(jù)庫用戶根據(jù)義務(wù),從數(shù)據(jù)庫中依次調(diào)用所需求的工具;中依次調(diào)用所需求的工具;命令言語解釋程序命令言語解釋程序命令處置程序集命令處置程序集高級(jí)輸入程序高級(jí)輸入程序顯示效力程序顯示效力程序圖形設(shè)備驅(qū)動(dòng)程序圖形設(shè)備驅(qū)動(dòng)程序輸入設(shè)備驅(qū)動(dòng)程序輸入設(shè)備驅(qū)動(dòng)程序交互式人機(jī)界面交互式人機(jī)界面工工具具1 1工工具具2 2工工具具n n軟件環(huán)境數(shù)據(jù)庫軟件環(huán)境數(shù)據(jù)庫(1)(1)屏幕管理屏幕管理: :包括屏幕規(guī)劃和包括屏幕規(guī)劃和 動(dòng)態(tài)控制兩方面的功能;動(dòng)態(tài)控制兩方面的功能; (2)(2)對(duì)話管
21、理;對(duì)話管理;(3)(3)錯(cuò)誤信息顯示和處置;錯(cuò)誤信息顯示和處置;(4)(4)用戶支持;用戶支持;(5)(5)相關(guān)設(shè)備效力;相關(guān)設(shè)備效力;(6)(6)智能化交互系統(tǒng)。智能化交互系統(tǒng)。 見右圖。見右圖。三三. .軟件開發(fā)環(huán)境的構(gòu)成和主要特征軟件開發(fā)環(huán)境的構(gòu)成和主要特征 1. 1.軟件開發(fā)環(huán)境的構(gòu)成軟件開發(fā)環(huán)境的構(gòu)成: :交互式人機(jī)界面、工具集及軟件交互式人機(jī)界面、工具集及軟件 環(huán)境數(shù)據(jù)庫。如右圖:環(huán)境數(shù)據(jù)庫。如右圖: 2. 2.交互式人機(jī)界面交互式人機(jī)界面: :人機(jī)界面人機(jī)界面( (也稱用戶界面或人機(jī)對(duì)話也稱用戶界面或人機(jī)對(duì)話) ) 是用戶與計(jì)算機(jī)系統(tǒng)之間相互交流的中間媒介。是用戶與計(jì)算機(jī)系統(tǒng)之
22、間相互交流的中間媒介。 它包括以下幾個(gè)方面它包括以下幾個(gè)方面: : 3. 3.工具集工具集 (1) (1)軟件工具是構(gòu)成軟件開發(fā)環(huán)境的根本成分。軟件工具是構(gòu)成軟件開發(fā)環(huán)境的根本成分。 (2) (2)包含在軟件開發(fā)環(huán)境中的工具不是各自封鎖和分別的,而是與某種軟件包含在軟件開發(fā)環(huán)境中的工具不是各自封鎖和分別的,而是與某種軟件 開發(fā)方法或某種軟件加工模型相順應(yīng),并以一種綜合的、一致的和整體開發(fā)方法或某種軟件加工模型相順應(yīng),并以一種綜合的、一致的和整體 銜接的形狀來支持軟件開發(fā)的全過程。銜接的形狀來支持軟件開發(fā)的全過程。 4. 4.軟件環(huán)境數(shù)據(jù)庫軟件環(huán)境數(shù)據(jù)庫( (又稱軟件工程數(shù)據(jù)庫或工程數(shù)據(jù)庫又稱軟
23、件工程數(shù)據(jù)庫或工程數(shù)據(jù)庫) ) (1) (1)軟件環(huán)境數(shù)據(jù)庫是用于支持軟件工程的大型數(shù)據(jù)庫。軟件環(huán)境數(shù)據(jù)庫是用于支持軟件工程的大型數(shù)據(jù)庫。 (2) (2)軟件環(huán)境數(shù)據(jù)庫中主要存儲(chǔ)軟件開發(fā)過程中產(chǎn)生的有關(guān)產(chǎn)品或半廢品的軟件環(huán)境數(shù)據(jù)庫中主要存儲(chǔ)軟件開發(fā)過程中產(chǎn)生的有關(guān)產(chǎn)品或半廢品的 數(shù)據(jù)及各種工程數(shù)據(jù),如源程序、測試數(shù)據(jù)和各種文檔等。數(shù)據(jù)及各種工程數(shù)據(jù),如源程序、測試數(shù)據(jù)和各種文檔等。 (3) (3)軟件環(huán)境數(shù)據(jù)庫構(gòu)成軟件開發(fā)和維護(hù)過程中一切工程數(shù)據(jù)的集中化的存軟件環(huán)境數(shù)據(jù)庫構(gòu)成軟件開發(fā)和維護(hù)過程中一切工程數(shù)據(jù)的集中化的存 儲(chǔ)設(shè)備儲(chǔ)設(shè)備, ,是集成化軟件開發(fā)環(huán)境的中心組成部分是集成化軟件開發(fā)環(huán)境的
24、中心組成部分, ,也是各個(gè)軟件工具之間也是各個(gè)軟件工具之間 共享數(shù)據(jù)及相互連結(jié)的一致媒介。共享數(shù)據(jù)及相互連結(jié)的一致媒介。 (4) (4)軟件環(huán)境數(shù)據(jù)庫根本上屬于公用的工具型數(shù)據(jù)庫軟件環(huán)境數(shù)據(jù)庫根本上屬于公用的工具型數(shù)據(jù)庫, ,其中需求存儲(chǔ)、管理其中需求存儲(chǔ)、管理 和維護(hù)的軟件工程數(shù)據(jù)與普通訊息管理有很大的區(qū)別。和維護(hù)的軟件工程數(shù)據(jù)與普通訊息管理有很大的區(qū)別。1 1 對(duì)工程數(shù)據(jù)對(duì)工程數(shù)據(jù)( (產(chǎn)品、資源、方案中的構(gòu)造化、非構(gòu)造化或半構(gòu)造化產(chǎn)品、資源、方案中的構(gòu)造化、非構(gòu)造化或半構(gòu)造化數(shù)據(jù)數(shù)據(jù)) )的存取和維護(hù)功能。的存取和維護(hù)功能。2 2對(duì)工程數(shù)據(jù)的追蹤和查詢功能。對(duì)工程數(shù)據(jù)的追蹤和查詢功能。3
25、 3支持多種用戶視圖。支持多種用戶視圖。4 4可對(duì)工程數(shù)據(jù)提供多種方式的報(bào)表輸出??蓪?duì)工程數(shù)據(jù)提供多種方式的報(bào)表輸出。5 5支持內(nèi)部元素和功能元素的可重用性。支持內(nèi)部元素和功能元素的可重用性。6 6提供各種歷史信息的搜集和歸檔。提供各種歷史信息的搜集和歸檔。7 7提供支持配置管理的機(jī)制。提供支持配置管理的機(jī)制。8 8具有較完善的數(shù)據(jù)完好性和平安性保證措施。具有較完善的數(shù)據(jù)完好性和平安性保證措施。9 9提供與外部環(huán)境的接口。提供與外部環(huán)境的接口。1010具有合理的呼應(yīng)時(shí)間和運(yùn)轉(zhuǎn)性能。具有合理的呼應(yīng)時(shí)間和運(yùn)轉(zhuǎn)性能。5.5.軟件環(huán)境數(shù)據(jù)庫除具備普通事務(wù)處置數(shù)據(jù)庫的特征外,還具有順應(yīng)軟件環(huán)境數(shù)據(jù)庫除具
26、備普通事務(wù)處置數(shù)據(jù)庫的特征外,還具有順應(yīng) 軟件開發(fā)環(huán)境的一些特征。主要包括以下幾個(gè)方面:軟件開發(fā)環(huán)境的一些特征。主要包括以下幾個(gè)方面:一一. .集成化工程支持環(huán)境集成化工程支持環(huán)境IPSE(Integrated Project Support Environment)IPSE(Integrated Project Support Environment)是上世是上世 紀(jì)后期各個(gè)興隆國家在研制軟件工程環(huán)境過程中紀(jì)后期各個(gè)興隆國家在研制軟件工程環(huán)境過程中, ,把開發(fā)集成化的工程作為重點(diǎn)把開發(fā)集成化的工程作為重點(diǎn), , 推出的產(chǎn)品。使軟件工程環(huán)境逐漸走向成熟,朝著適用化、產(chǎn)品化和規(guī)范化的方推出的產(chǎn)品
27、。使軟件工程環(huán)境逐漸走向成熟,朝著適用化、產(chǎn)品化和規(guī)范化的方 向開展。我國在這方面也獲得了很大的成果向開展。我國在這方面也獲得了很大的成果, ,推出了推出了“青鳥算機(jī)輔輔助軟件工程青鳥算機(jī)輔輔助軟件工程 等產(chǎn)品。等產(chǎn)品。二二.IPSE.IPSE的根本組成的根本組成 IPSE IPSE是一種多級(jí)的層次構(gòu)造,包括中心層、根本層、運(yùn)用層至少三個(gè)層次是一種多級(jí)的層次構(gòu)造,包括中心層、根本層、運(yùn)用層至少三個(gè)層次( (下頁下頁) )。 1. 1.中心層:在最里面,包括:中心層:在最里面,包括: (1) (1)由宿主機(jī)和操作系統(tǒng)構(gòu)成的虛擬機(jī);由宿主機(jī)和操作系統(tǒng)構(gòu)成的虛擬機(jī); (2) (2)環(huán)境數(shù)據(jù)庫環(huán)境數(shù)據(jù)
28、庫( (或文件數(shù)據(jù)庫或文件數(shù)據(jù)庫) )及其支持軟件及其支持軟件( (如數(shù)據(jù)庫管理系統(tǒng)或文件管理系如數(shù)據(jù)庫管理系統(tǒng)或文件管理系 統(tǒng)統(tǒng)) ),環(huán)境數(shù)據(jù)庫是中心層的中心,環(huán)境數(shù)據(jù)庫是中心層的中心, ,它既要存放工程的各種開發(fā)文檔與管理文它既要存放工程的各種開發(fā)文檔與管理文 檔檔, ,又要承當(dāng)各種工具之間的信息交換又要承當(dāng)各種工具之間的信息交換, ,它是環(huán)境研討的重點(diǎn);它是環(huán)境研討的重點(diǎn); (3) (3)以及從工具到系統(tǒng)以及從工具到系統(tǒng)( (含數(shù)據(jù)庫含數(shù)據(jù)庫) )的接口。的接口。 2. 2.根本層:包括軟件開發(fā)所需的最小限制工具,又稱最小支持環(huán)境。普通包括:根本層:包括軟件開發(fā)所需的最小限制工具,又稱
29、最小支持環(huán)境。普通包括: (1) (1)常用的編譯、編輯、調(diào)試、連結(jié)常用的編譯、編輯、調(diào)試、連結(jié)/ /裝配、配置管理等適用程序;裝配、配置管理等適用程序; (2) (2)命令解釋程序和支持用戶的一些操作工具命令解釋程序和支持用戶的一些操作工具, ,如如: :菜單生成系統(tǒng)、圖形系統(tǒng)、多菜單生成系統(tǒng)、圖形系統(tǒng)、多 窗口系統(tǒng)等。窗口系統(tǒng)等。工具與系統(tǒng)界面工具與系統(tǒng)界面環(huán)境數(shù)據(jù)庫與環(huán)境數(shù)據(jù)庫與文件數(shù)據(jù)庫文件數(shù)據(jù)庫主機(jī)硬件與主機(jī)硬件與操作系統(tǒng)操作系統(tǒng)中心層中心層根本層根本層IPSEIPSE的典型構(gòu)造圖的典型構(gòu)造圖銜接銜接程序程序測試程序測試程序裝入程序裝入程序運(yùn)轉(zhuǎn)運(yùn)轉(zhuǎn)程序程序命令解命令解釋程序釋程序各種
30、言各種言語編譯語編譯 程序程序調(diào)試調(diào)試程序程序操作支操作支持工具持工具配置配置管理管理編輯編輯程序程序運(yùn)用層運(yùn)用層快速原快速原型開發(fā)型開發(fā) 工具工具需求分需求分析工具析工具維護(hù)管維護(hù)管理工具理工具美化打美化打印工具印工具測試分測試分析工具析工具各種方法開發(fā)工具各種方法開發(fā)工具其它其它工具工具用戶界面用戶界面 3. 3.運(yùn)用層運(yùn)用層: :包括支持生存周期內(nèi)各個(gè)階段活動(dòng)的工具包括支持生存周期內(nèi)各個(gè)階段活動(dòng)的工具, ,及支持不同系統(tǒng)開發(fā)及支持不同系統(tǒng)開發(fā) 方法學(xué)的工具方法學(xué)的工具, ,內(nèi)容比較靈敏內(nèi)容比較靈敏, ,可根據(jù)開發(fā)者的需求增刪??筛鶕?jù)開發(fā)者的需求增刪。三三.IPSE.IPSE的特征的特征
31、1. 1.集成化和相互兼容的工具集;集成化和相互兼容的工具集; 2. 2.支持工程的管理和控制;支持工程的管理和控制; 3. 3.支持配置管理;支持配置管理; 4. 4.支持多種言語的軟件開發(fā);支持多種言語的軟件開發(fā); 5. 5.支持硬件開發(fā);支持硬件開發(fā); 6. 6.允許宿主機(jī)和目的機(jī)運(yùn)用分布式系統(tǒng)。允許宿主機(jī)和目的機(jī)運(yùn)用分布式系統(tǒng)。四四.IPSE.IPSE的分代的分代 按照工具的集成化程度及環(huán)境內(nèi)公共數(shù)據(jù)的不同組織方式,按照工具的集成化程度及環(huán)境內(nèi)公共數(shù)據(jù)的不同組織方式,IPSEIPSE分為三代。分為三代。 第一代的代表是第一代的代表是UNIXUNIX環(huán)境,以文件庫為中心,在文件庫的根底上
32、集成工具集;環(huán)境,以文件庫為中心,在文件庫的根底上集成工具集; 第二代以數(shù)據(jù)庫為中心,其工具集具有更高的集成度和一致協(xié)調(diào)的用戶界面;第二代以數(shù)據(jù)庫為中心,其工具集具有更高的集成度和一致協(xié)調(diào)的用戶界面; 第三代是建立在知識(shí)庫根底上的集成環(huán)境,其工具集能完全實(shí)現(xiàn)義務(wù)的來回第三代是建立在知識(shí)庫根底上的集成環(huán)境,其工具集能完全實(shí)現(xiàn)義務(wù)的來回切換,不再需求用戶的干涉。切換,不再需求用戶的干涉。特征特征第一代第一代第二代第二代第三代第三代中心中心工具工具集成集成 工具工具切換切換 生存生存周期周期 運(yùn)用運(yùn)用界面界面 三代三代IPSEIPSE的主要特征和比較的主要特征和比較以文件庫為中心。以文件庫為中心。以
33、數(shù)據(jù)庫為中心。以數(shù)據(jù)庫為中心。以知識(shí)庫為中心。以知識(shí)庫為中心。 各工具有本人獨(dú)立的文各工具有本人獨(dú)立的文件構(gòu)造,共同組成環(huán)境文件構(gòu)造,共同組成環(huán)境文件庫。件庫。 工具和文件都是環(huán)境工具和文件都是環(huán)境數(shù)據(jù)庫的實(shí)體,不再視數(shù)據(jù)庫的實(shí)體,不再視為獨(dú)立的成分。為獨(dú)立的成分。 只需集成化的工具集,只需集成化的工具集,不再存在分立的工具。不再存在分立的工具。 能部分實(shí)現(xiàn)由一個(gè)工具能部分實(shí)現(xiàn)由一個(gè)工具到另一個(gè)工具的切換。到另一個(gè)工具的切換。 具有一致與調(diào)和的用具有一致與調(diào)和的用戶界面。戶界面。 完全自動(dòng)義務(wù)切換,不完全自動(dòng)義務(wù)切換,不需求用戶的干涉。需求用戶的干涉。 支持軟件全生存周期的支持軟件全生存周期的
34、活動(dòng)。活動(dòng)。 支持軟件全生存周期支持軟件全生存周期的活動(dòng),并支持一種以的活動(dòng),并支持一種以上的程序設(shè)計(jì)方法學(xué)。上的程序設(shè)計(jì)方法學(xué)。 支持包括軟硬件在內(nèi)的支持包括軟硬件在內(nèi)的運(yùn)用系統(tǒng)全生存周期的開運(yùn)用系統(tǒng)全生存周期的開發(fā)活動(dòng),包括大規(guī)模集成發(fā)活動(dòng),包括大規(guī)模集成電路的設(shè)計(jì)。電路的設(shè)計(jì)。不支持分布式運(yùn)用。不支持分布式運(yùn)用。支持分布式運(yùn)用。支持分布式運(yùn)用。支持分布式運(yùn)用。支持分布式運(yùn)用。采用菜單技術(shù)。采用菜單技術(shù)。 配備高分辨率彩顯,配備高分辨率彩顯,有圖標(biāo)和多窗口功能,有圖標(biāo)和多窗口功能,運(yùn)用鼠標(biāo)器。運(yùn)用鼠標(biāo)器。 多窗口技術(shù),大量運(yùn)用多窗口技術(shù),大量運(yùn)用鼠標(biāo)器,最終用戶僅需運(yùn)鼠標(biāo)器,最終用戶僅需運(yùn)
35、用命令言語。用命令言語??磫栴}角度看問題角度含含 義義功功 能能狹義角度狹義角度 廣義角度廣義角度學(xué)術(shù)研討學(xué)術(shù)研討角角 度度 軟件產(chǎn)業(yè)軟件產(chǎn)業(yè)角角 度度 一一.CASE.CASE概述概述 1.CASE 1.CASE是計(jì)算機(jī)輔助軟件工程是計(jì)算機(jī)輔助軟件工程 (Computer-Aided Software Engineering) (Computer-Aided Software Engineering)的簡稱。的簡稱。 2. 2.簡單的說簡單的說, ,可以將可以將CASECASE了解為了解為: : CASE= CASE=軟件工程軟件工程+ +自動(dòng)化工具自動(dòng)化工具 3.CASE 3.CASE的概
36、念可以從不同角度給予解釋的概念可以從不同角度給予解釋: :是一組工具和方法的結(jié)合。是一組工具和方法的結(jié)合。 輔助軟件生存周期各個(gè)階段的軟輔助軟件生存周期各個(gè)階段的軟件開發(fā)。件開發(fā)。輔助軟件開發(fā)的任何計(jì)算機(jī)技術(shù)。輔助軟件開發(fā)的任何計(jì)算機(jī)技術(shù)。在軟件開發(fā)和維護(hù)過程中,在軟件開發(fā)和維護(hù)過程中,提供計(jì)算機(jī)輔助支持;提供計(jì)算機(jī)輔助支持;引入工程化方法。引入工程化方法。 是軟件開發(fā)方法、軟件開發(fā)管是軟件開發(fā)方法、軟件開發(fā)管理和軟件工具等方面多年研討和理和軟件工具等方面多年研討和開展的產(chǎn)物。開展的產(chǎn)物。 把軟件開發(fā)技術(shù)、方法和軟件工把軟件開發(fā)技術(shù)、方法和軟件工具集成為一個(gè)一致而一致的框架。具集成為一個(gè)一致而
37、一致的框架。 是種類繁多的軟件開發(fā)和系統(tǒng)是種類繁多的軟件開發(fā)和系統(tǒng)集成的產(chǎn)品和軟件工具的集合。集成的產(chǎn)品和軟件工具的集合。 支持軟件開發(fā)方法,提高軟件開支持軟件開發(fā)方法,提高軟件開發(fā)效率,增進(jìn)軟件產(chǎn)品的質(zhì)量。發(fā)效率,增進(jìn)軟件產(chǎn)品的質(zhì)量。CASECASE工具工具環(huán)環(huán) 境境工工 作作 臺(tái)臺(tái)工工 具具以過程為以過程為中心的環(huán)境中心的環(huán)境集成集成環(huán)境環(huán)境分析與設(shè)計(jì)分析與設(shè)計(jì)編程編程測試測試一方法一方法任務(wù)臺(tái)任務(wù)臺(tái)多方法多方法任務(wù)臺(tái)任務(wù)臺(tái)特定言語特定言語任務(wù)臺(tái)任務(wù)臺(tái)多言語多言語任務(wù)臺(tái)任務(wù)臺(tái)二二.CASE.CASE工具分類工具分類 CASE CASE工具可以了解為除工具可以了解為除OSOS外外的一切軟件工
38、具的總稱。的一切軟件工具的總稱。 1. 1.按對(duì)軟件過程的支持范圍按對(duì)軟件過程的支持范圍 CASE CASE工具分為三類:工具分為三類: (1) (1)工具工具: : 支持單個(gè)義務(wù);支持單個(gè)義務(wù); (2) (2)任務(wù)臺(tái):支持某一軟任務(wù)臺(tái):支持某一軟 件過程或一個(gè)過程中件過程或一個(gè)過程中 的某些活動(dòng);的某些活動(dòng); (3) (3)環(huán)境:支持某些軟件環(huán)境:支持某些軟件 過程及相關(guān)的大部分過程及相關(guān)的大部分 活動(dòng)?;顒?dòng)。 如圖:如圖:編輯器編輯器文件文件比較器比較器編譯器編譯器支持支持典型工具典型工具支持支持典型工具典型工具支持支持典型工具典型工具需求需求分析分析編碼編碼工具工具維護(hù)維護(hù)與與了解了解概
39、要概要設(shè)計(jì)設(shè)計(jì)配置配置管理管理測試測試工具工具詳細(xì)詳細(xì)設(shè)計(jì)設(shè)計(jì)2.2.按對(duì)軟件過程的支持活動(dòng)按對(duì)軟件過程的支持活動(dòng)CASECASE工具分類如下表所示工具分類如下表所示數(shù)據(jù)流圖工具數(shù)據(jù)流圖工具實(shí)體實(shí)體- -關(guān)系模型工具關(guān)系模型工具形狀轉(zhuǎn)換圖工具形狀轉(zhuǎn)換圖工具數(shù)據(jù)字典工具數(shù)據(jù)字典工具面向?qū)ο蠼9ぞ呙嫦驅(qū)ο蠼9ぞ叻治?、?yàn)證需求定義規(guī)分析、驗(yàn)證需求定義規(guī)約工具約工具程序構(gòu)造圖設(shè)計(jì)工具程序構(gòu)造圖設(shè)計(jì)工具面向?qū)ο笤O(shè)計(jì)工具面向?qū)ο笤O(shè)計(jì)工具HIPOHIPO圖工具圖工具PDL(PDL(設(shè)計(jì)程序文語設(shè)計(jì)程序文語) )工具工具PAD(PAD(問題分析圖問題分析圖) )工具工具代碼轉(zhuǎn)換工具代碼轉(zhuǎn)換工具正文編輯程序
40、正文編輯程序銜接程序銜接程序語法制導(dǎo)編輯程序語法制導(dǎo)編輯程序變化管理工具變化管理工具版本管理工具版本管理工具靜態(tài)分析程序靜態(tài)分析程序動(dòng)態(tài)覆蓋率測試程序動(dòng)態(tài)覆蓋率測試程序測試結(jié)果分析程序測試結(jié)果分析程序測試報(bào)告生成程序測試報(bào)告生成程序測試用例生成程序測試用例生成程序測試管理工具測試管理工具符號(hào)調(diào)試程序符號(hào)調(diào)試程序運(yùn)用生成程序運(yùn)用生成程序第四代言語第四代言語OOOO程序設(shè)計(jì)環(huán)境程序設(shè)計(jì)環(huán)境源程序源程序流程圖轉(zhuǎn)換工具流程圖轉(zhuǎn)換工具源程序源程序PADPAD轉(zhuǎn)換工具轉(zhuǎn)換工具程序了解工具程序了解工具文檔分析工具文檔分析工具程序構(gòu)造分析程序程序構(gòu)造分析程序任務(wù)臺(tái)任務(wù)臺(tái)支持的軟件過程活動(dòng)支持的軟件過程活動(dòng)例例
41、 子子程序設(shè)計(jì)程序設(shè)計(jì) 分析設(shè)計(jì)分析設(shè)計(jì) 測測 試試 交叉開發(fā)交叉開發(fā) 配置管理配置管理 文文 檔檔 工程管理工程管理 三三. .任務(wù)臺(tái):是一組工具集,支持象設(shè)計(jì)、實(shí)現(xiàn)或測試等特定的軟件開發(fā)階段。任務(wù)臺(tái):是一組工具集,支持象設(shè)計(jì)、實(shí)現(xiàn)或測試等特定的軟件開發(fā)階段。 它是經(jīng)過共享文件、共享倉庫或共享數(shù)據(jù)構(gòu)造來集成。它是經(jīng)過共享文件、共享倉庫或共享數(shù)據(jù)構(gòu)造來集成。 由支持程序設(shè)計(jì)的一組由支持程序設(shè)計(jì)的一組工具組成。工具組成。 支持軟件過程的分析和支持軟件過程的分析和設(shè)計(jì)階段。設(shè)計(jì)階段。 支持特定的運(yùn)用和組織支持特定的運(yùn)用和組織構(gòu)造。具有較好的開放性。構(gòu)造。具有較好的開放性。 支持在一種機(jī)器上開發(fā)支持
42、在一種機(jī)器上開發(fā)的軟件,而在別的其它系的軟件,而在別的其它系統(tǒng)上運(yùn)轉(zhuǎn)所開發(fā)的軟件。統(tǒng)上運(yùn)轉(zhuǎn)所開發(fā)的軟件。支持配置管理。支持配置管理。支持高質(zhì)量的文檔制造。支持高質(zhì)量的文檔制造。支持工程管理活動(dòng)。支持工程管理活動(dòng)。 將編輯器、編譯器和調(diào)試器集成在一個(gè)宿主將編輯器、編譯器和調(diào)試器集成在一個(gè)宿主機(jī)上構(gòu)成的程序設(shè)計(jì)任務(wù)臺(tái)。機(jī)上構(gòu)成的程序設(shè)計(jì)任務(wù)臺(tái)。 支持構(gòu)造化方法的任務(wù)臺(tái),支持面向?qū)ο蠓椒ㄖС謽?gòu)造化方法的任務(wù)臺(tái),支持面向?qū)ο蠓椒ǖ姆治龊驮O(shè)計(jì)任務(wù)臺(tái)。的分析和設(shè)計(jì)任務(wù)臺(tái)。交叉編輯器、目的機(jī)模擬器、從宿主機(jī)到目的交叉編輯器、目的機(jī)模擬器、從宿主機(jī)到目的機(jī)上下載的通訊軟件包,及遠(yuǎn)程運(yùn)轉(zhuǎn)的監(jiān)控程機(jī)上下載的通訊軟
43、件包,及遠(yuǎn)程運(yùn)轉(zhuǎn)的監(jiān)控程序。序。版本管理工具、改動(dòng)跟蹤工具、系統(tǒng)裝配工具。版本管理工具、改動(dòng)跟蹤工具、系統(tǒng)裝配工具。 字處置器、單面印刷系統(tǒng)、圖表圖像編輯器、字處置器、單面印刷系統(tǒng)、圖表圖像編輯器、文檔閱讀器等。文檔閱讀器等。工程規(guī)劃和質(zhì)量、開支評(píng)價(jià)和預(yù)算追蹤工具等。工程規(guī)劃和質(zhì)量、開支評(píng)價(jià)和預(yù)算追蹤工具等。源程序源程序構(gòu)造化編輯器構(gòu)造化編輯器已編譯代碼已編譯代碼符號(hào)表符號(hào)表語法樹語法樹言語編譯器言語編譯器連結(jié)器連結(jié)器可執(zhí)行程序可執(zhí)行程序加載器加載器交互式調(diào)試器交互式調(diào)試器可執(zhí)行程序可執(zhí)行程序執(zhí)行報(bào)告執(zhí)行報(bào)告動(dòng)態(tài)分析器動(dòng)態(tài)分析器格式化源文件列表格式化源文件列表程序報(bào)告程序報(bào)告按格式打印按格式打
44、印交叉援用交叉援用靜態(tài)分析器靜態(tài)分析器用戶用戶調(diào)用調(diào)用調(diào)用調(diào)用編輯編輯 利用語法樹和符利用語法樹和符號(hào)表作為共享數(shù)據(jù)號(hào)表作為共享數(shù)據(jù)來進(jìn)展工具集成。來進(jìn)展工具集成。1.1.程序設(shè)計(jì)任務(wù)臺(tái):支持程序開發(fā)的一組工具,構(gòu)造如以下圖所示:程序設(shè)計(jì)任務(wù)臺(tái):支持程序開發(fā)的一組工具,構(gòu)造如以下圖所示:程序庫程序庫名名 稱稱功功 能能言語編譯器言語編譯器構(gòu)造化編輯器構(gòu)造化編輯器連連 結(jié)結(jié) 器器加加 載載 器器交交 叉叉 援用援用按格式打印按格式打印靜態(tài)分析器靜態(tài)分析器 動(dòng)態(tài)分析器動(dòng)態(tài)分析器 交互式調(diào)試器交互式調(diào)試器 市場上通常將程序設(shè)計(jì)言語任務(wù)臺(tái)作為包括附加工具的言語編輯器來出賣。如:市場上通常將程序設(shè)計(jì)言語
45、任務(wù)臺(tái)作為包括附加工具的言語編輯器來出賣。如:Basic,C,C+,Pascal,Lisp,SmalltalkBasic,C,C+,Pascal,Lisp,Smalltalk等。等。上圖中程序設(shè)計(jì)任務(wù)臺(tái)中的上圖中程序設(shè)計(jì)任務(wù)臺(tái)中的CASECASE工具功能由下表所示工具功能由下表所示將源代碼轉(zhuǎn)換成目的碼。創(chuàng)建一個(gè)籠統(tǒng)語法樹將源代碼轉(zhuǎn)換成目的碼。創(chuàng)建一個(gè)籠統(tǒng)語法樹(AST)(AST)和一個(gè)符號(hào)表。和一個(gè)符號(hào)表。結(jié)合嵌入的程序設(shè)計(jì)言語,對(duì)結(jié)合嵌入的程序設(shè)計(jì)言語,對(duì)ASTAST中程序的語法表示進(jìn)展編輯。中程序的語法表示進(jìn)展編輯。將已編譯的程序的目的代碼模塊銜接起來。將已編譯的程序的目的代碼模塊銜接起來
46、。在可執(zhí)行程序執(zhí)行之前將其加載到計(jì)算機(jī)內(nèi)存。在可執(zhí)行程序執(zhí)行之前將其加載到計(jì)算機(jī)內(nèi)存。產(chǎn)生一個(gè)交叉援用列表,顯示一切的程序名是在那里聲明和運(yùn)用的。產(chǎn)生一個(gè)交叉援用列表,顯示一切的程序名是在那里聲明和運(yùn)用的。掃描掃描ASTAST,根據(jù)嵌入的格式規(guī)那么打印源文件程序。,根據(jù)嵌入的格式規(guī)那么打印源文件程序。 分析源文件代碼,找到未初始化的變量、不能執(zhí)行到的代碼、未調(diào)分析源文件代碼,找到未初始化的變量、不能執(zhí)行到的代碼、未調(diào)用的函數(shù)和過程等異常。用的函數(shù)和過程等異常。 產(chǎn)生帶附注的源文件代碼列表,附注上標(biāo)有程序運(yùn)轉(zhuǎn)時(shí)每個(gè)語句執(zhí)產(chǎn)生帶附注的源文件代碼列表,附注上標(biāo)有程序運(yùn)轉(zhuǎn)時(shí)每個(gè)語句執(zhí)行的次數(shù)或生成有關(guān)
47、程序分支和循環(huán)的信息,統(tǒng)計(jì)處置器的運(yùn)用情況。行的次數(shù)或生成有關(guān)程序分支和循環(huán)的信息,統(tǒng)計(jì)處置器的運(yùn)用情況。允許用戶來控制程序的執(zhí)行次序,顯示執(zhí)行期間的程序形狀。允許用戶來控制程序的執(zhí)行次序,顯示執(zhí)行期間的程序形狀。構(gòu)造化圖表制造工具構(gòu)造化圖表制造工具設(shè)計(jì)分析和檢查工具設(shè)計(jì)分析和檢查工具代碼生成器代碼生成器查詢言語設(shè)備查詢言語設(shè)備數(shù)據(jù)字典數(shù)據(jù)字典報(bào)告生成設(shè)備報(bào)告生成設(shè)備圖表創(chuàng)建工具圖表創(chuàng)建工具移入移入/ /移出設(shè)備移出設(shè)備中央信息倉庫中央信息倉庫這些工具經(jīng)過一個(gè)共享倉庫這些工具經(jīng)過一個(gè)共享倉庫( (中央信息倉庫中央信息倉庫) )集成。集成。 2. 2.分析和設(shè)計(jì)任務(wù)臺(tái):支持軟件的分析和設(shè)計(jì)階段分
48、析和設(shè)計(jì)任務(wù)臺(tái):支持軟件的分析和設(shè)計(jì)階段( (在這階段系統(tǒng)模型已建立,如數(shù)在這階段系統(tǒng)模型已建立,如數(shù) 據(jù)庫模型據(jù)庫模型, ,實(shí)體關(guān)系模型實(shí)體關(guān)系模型) )。 (1) (1)它支持特定的設(shè)計(jì)或分析方法,如面向?qū)ο蟮姆治?;它支持特定的設(shè)計(jì)或分析方法,如面向?qū)ο蟮姆治觯?(2) (2)它是更通用的圖表編輯系統(tǒng)它是更通用的圖表編輯系統(tǒng), ,能處置大多數(shù)圖表類型;能處置大多數(shù)圖表類型; (3) (3)它提供的方法和指南,能進(jìn)展一些自動(dòng)圖表檢查任務(wù)。它提供的方法和指南,能進(jìn)展一些自動(dòng)圖表檢查任務(wù)。 它能夠包括的工具如以下圖所示:它能夠包括的工具如以下圖所示: 而該倉庫普通是任務(wù)臺(tái)開發(fā)者專有的,因此分析和
49、設(shè)計(jì)任務(wù)臺(tái)通常也是封鎖而該倉庫普通是任務(wù)臺(tái)開發(fā)者專有的,因此分析和設(shè)計(jì)任務(wù)臺(tái)通常也是封鎖式的環(huán)境。式的環(huán)境。名名 稱稱功功 能能圖表編輯器圖表編輯器設(shè)計(jì)分析和設(shè)計(jì)分析和檢查工具檢查工具倉庫查詢言語倉庫查詢言語數(shù)據(jù)字典數(shù)據(jù)字典報(bào)告生成設(shè)備報(bào)告生成設(shè)備移入移入/ /移出設(shè)備移出設(shè)備代碼生成器代碼生成器由于其封鎖性,分析和設(shè)計(jì)任務(wù)臺(tái)的缺陷:由于其封鎖性,分析和設(shè)計(jì)任務(wù)臺(tái)的缺陷:(1)(1)移入移入/ /移出遭到限制移出遭到限制, ,與其它任務(wù)臺(tái)互換數(shù)據(jù)時(shí)會(huì)發(fā)生問題;與其它任務(wù)臺(tái)互換數(shù)據(jù)時(shí)會(huì)發(fā)生問題;(2)(2)不能裁剪和修正一個(gè)設(shè)計(jì)方案,用戶通常不能夠用本人的規(guī)那么取代一個(gè)原有規(guī)那么;不能裁剪和修正一個(gè)設(shè)計(jì)方案,用戶通常不能夠用本人的規(guī)那么取代一個(gè)原有規(guī)那么;(3)(3)任務(wù)臺(tái)本人提供的配置管理系統(tǒng)能夠與一個(gè)組織機(jī)構(gòu)中運(yùn)用的系統(tǒng)不兼容。任務(wù)臺(tái)本人提供的配置管理系統(tǒng)能夠與一個(gè)組織機(jī)構(gòu)中運(yùn)用的系統(tǒng)不兼容。上圖中分析和設(shè)計(jì)任務(wù)臺(tái)中的上圖中分析和設(shè)計(jì)任務(wù)臺(tái)中的CASECASE工具功能由下表所示工具功能由下表所示創(chuàng)建數(shù)據(jù)流圖、構(gòu)造圖、實(shí)體關(guān)系圖等。創(chuàng)建數(shù)據(jù)流圖、構(gòu)造圖、實(shí)體關(guān)系圖等。進(jìn)展分析,并報(bào)告錯(cuò)誤和異常情況。進(jìn)展分析,并報(bào)告錯(cuò)誤和異常情況。允許設(shè)計(jì)者查詢倉庫,找到與設(shè)計(jì)相關(guān)的信息。允許設(shè)計(jì)者查詢倉庫,找到與設(shè)計(jì)相關(guān)的信息。維護(hù)系統(tǒng)中所用的實(shí)體信
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人建筑用工合同范例
- 用房子抵押合同范例
- 縱橫簽約合同范例
- 科技公司融資合同范例
- 戶外桌子采購合同范例
- 銅仁職業(yè)技術(shù)學(xué)院《城市文化設(shè)計(jì)與推廣》2023-2024學(xué)年第一學(xué)期期末試卷
- 銅仁幼兒師范高等??茖W(xué)?!渡虅?wù)禮儀與形象設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 銅仁學(xué)院《員工關(guān)系管理理論與實(shí)務(wù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 銅川職業(yè)技術(shù)學(xué)院《冰雪運(yùn)動(dòng)損傷與康復(fù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 桐城師范高等??茖W(xué)?!豆碴P(guān)系學(xué)2》2023-2024學(xué)年第一學(xué)期期末試卷
- 工業(yè)互聯(lián)網(wǎng)標(biāo)準(zhǔn)體系(版本3.0)
- 山東省菏澤市10校2023-2024學(xué)年高二上學(xué)期期末聯(lián)考地理試題(含答案解析)
- 初一數(shù)學(xué)期中考試分析
- 松果體區(qū)腫瘤護(hù)理
- 招聘司機(jī)方案
- 《施工現(xiàn)場安全防護(hù)標(biāo)準(zhǔn)化防高墜篇》測試附有答案
- 浙江省寧波市2023-2024學(xué)年高一上學(xué)期1月期末地理試題【含答案解析】
- 流動(dòng)資金貸款管理辦法培訓(xùn)1
- 期末測試(試題)-2023-2024學(xué)年冀教版英語五年級(jí)上冊(cè)
- 2022年1月上海春季高考英語真題(學(xué)生版+解析版+聽力音頻)
- 教育實(shí)習(xí)匯報(bào)課件
評(píng)論
0/150
提交評(píng)論