第四章軟件開(kāi)發(fā)工具的技術(shù)要素課件_第1頁(yè)
第四章軟件開(kāi)發(fā)工具的技術(shù)要素課件_第2頁(yè)
第四章軟件開(kāi)發(fā)工具的技術(shù)要素課件_第3頁(yè)
第四章軟件開(kāi)發(fā)工具的技術(shù)要素課件_第4頁(yè)
第四章軟件開(kāi)發(fā)工具的技術(shù)要素課件_第5頁(yè)
已閱讀5頁(yè),還剩79頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第四章

軟件開(kāi)發(fā)工具的技術(shù)要素

4.1基本功能與一般結(jié)構(gòu)4.2總控與人機(jī)界面4.3信息庫(kù)及其管理4.4文檔生成與代碼生成4.5項(xiàng)目管理與版本管理第四章

軟件開(kāi)發(fā)工具的技術(shù)要素4.1基本功能與一般結(jié)構(gòu)1由于軟件開(kāi)發(fā)工具一般都較為復(fù)雜、龐大,所以,它的功能設(shè)計(jì)與總體結(jié)構(gòu)是必須認(rèn)真考慮的。由于軟件開(kāi)發(fā)工具一般都較為復(fù)雜、龐大,所以,它的功能設(shè)計(jì)與總24.1

基本功能與一般結(jié)構(gòu)軟件開(kāi)發(fā)工具對(duì)各類支持工作歸納成五個(gè)方面,即軟件的功能要求:認(rèn)識(shí)與描述客觀系統(tǒng)存儲(chǔ)及管理開(kāi)發(fā)過(guò)程中的信息代碼的編寫(xiě)或生成文檔的編制或生成軟件項(xiàng)目的管理4.1

基本功能與一般結(jié)構(gòu)軟件開(kāi)發(fā)工具對(duì)各類支持工作歸納成3一、軟件開(kāi)發(fā)工具的基本功能(五個(gè)方面)(1)提供描述軟件狀況及其開(kāi)發(fā)過(guò)程的概念模式,協(xié)助軟件開(kāi)發(fā)人員認(rèn)識(shí)軟件工作的環(huán)境與要求、合理地組織與管理軟件開(kāi)發(fā)的工作過(guò)程。系統(tǒng)描述軟件開(kāi)發(fā)工具是引導(dǎo)人們建立正確的、有效地概念模式的一種手段。此處的概念模式包括幾個(gè)主要方面:對(duì)軟件的應(yīng)用環(huán)境的認(rèn)識(shí)和理解對(duì)預(yù)期產(chǎn)生的軟件產(chǎn)品的認(rèn)識(shí)與理解。對(duì)軟件開(kāi)發(fā)過(guò)程的認(rèn)識(shí)與理解。

任何軟件開(kāi)發(fā)工具都具備這種功能。一、軟件開(kāi)發(fā)工具的基本功能(五個(gè)方面)(1)提供描述軟件狀況4(2)提供存儲(chǔ)和管理有關(guān)信息的機(jī)制與手段。

簡(jiǎn)單說(shuō)就是根據(jù)概念模式提供一個(gè)信息庫(kù)和一個(gè)人機(jī)界面,它能夠有效地管理這些信息。信息管理(3)幫助使用者編制、生成及修改各種文檔。這包括文字材料和各種表格、圖形。軟件開(kāi)發(fā)中有大量的文檔產(chǎn)生,其工作量常常使人望而卻步,軟件開(kāi)發(fā)工具在這方面的功能是十分重要的。文檔生成(2)提供存儲(chǔ)和管理有關(guān)信息的機(jī)制與手段。

簡(jiǎn)單說(shuō)就是根5(4)幫助使用者編寫(xiě)程序代碼,即代碼生成。這些編碼工作本來(lái)是程序員的任務(wù),軟件開(kāi)發(fā)工具通過(guò)各種信息的提供,使用戶能夠在較短時(shí)間內(nèi)半自動(dòng)地生成所需的代碼段落,進(jìn)行測(cè)試、修改錯(cuò)誤等。代碼生成(5)對(duì)于歷史信息進(jìn)行跨生命周期的管理,把項(xiàng)目運(yùn)行與版本更新的有關(guān)信息科學(xué)地管理起來(lái)。對(duì)于大型軟件開(kāi)發(fā)來(lái)說(shuō),這一部分會(huì)成為信息處理的瓶頸。做好這一部分工作將非常有利于信息與資源的充分利用(或重用),其作用也是十分可觀的。項(xiàng)目管理完整的、一體化的軟件開(kāi)發(fā)工具應(yīng)當(dāng)具備以上這些功能。理想情況下,現(xiàn)有的多數(shù)軟件開(kāi)發(fā)工具往往實(shí)現(xiàn)了其中某一薦或某幾項(xiàng)。(4)幫助使用者編寫(xiě)程序代碼,即代碼生成。這些編碼工作本來(lái)是6二、軟件開(kāi)發(fā)工具的一般結(jié)構(gòu)

根據(jù)軟件開(kāi)發(fā)工具的基本功能概括軟件開(kāi)發(fā)工具的一般結(jié)構(gòu):處于中心位置的是總控和人機(jī)界面。一方面,人機(jī)界面面對(duì)著不同的用戶類型;另一方面,總控面對(duì)著系統(tǒng)內(nèi)部的各種功能與各種信息,它要保證各部分相互之間的協(xié)調(diào)一致,保證各部分之間信息有效地、準(zhǔn)確地流通。另一個(gè)重要部分是信息庫(kù)及其管理,信息庫(kù)框架反映了人們對(duì)軟件產(chǎn)品和軟件開(kāi)發(fā)過(guò)程的基本看法。信息庫(kù)內(nèi)容的豐富程度則是軟件開(kāi)發(fā)工具的功能與作用的最基本的依據(jù)。圖中沒(méi)有反映出來(lái)的技術(shù)要素是項(xiàng)目管理和版本管理。

分析設(shè)計(jì)人員運(yùn)行管理人員項(xiàng)目管理人員人機(jī)界面總控使用查詢一致性維護(hù)錄入更新聯(lián)機(jī)查詢文檔生成代碼生成其他輸出系統(tǒng)狀況設(shè)計(jì)成果運(yùn)行狀況項(xiàng)目版本信息庫(kù)信息庫(kù)管理二、軟件開(kāi)發(fā)工具的一般結(jié)構(gòu)根據(jù)軟件開(kāi)發(fā)工具的基本功能概括軟7具體包括以下的幾個(gè)方面:1、總控部分與人機(jī)界面這部分是使用用者和軟件開(kāi)發(fā)工具之間交流信息,實(shí)現(xiàn)所有的支持功能的橋梁。這一部分的有效實(shí)現(xiàn)是軟件開(kāi)發(fā)工具的實(shí)用性和靈活性的主要保證。2、信息庫(kù)存及其管理模塊軟件開(kāi)發(fā)工具對(duì)軟件開(kāi)發(fā)支持的范圍及深度取決于信息庫(kù)的功能和內(nèi)容3、文檔生成模塊用于輸出文檔4、代碼生成模塊用于生成代碼5、項(xiàng)目管理模塊用于實(shí)現(xiàn)跨越開(kāi)發(fā)周期的信息共享、知識(shí)重用以及軟件重用文檔生成和代碼生成是兩個(gè)最重要的信息出口。具體包括以下的幾個(gè)方面:84.

2總控部分及人機(jī)界面總控與人機(jī)界面的地位與作用作為一個(gè)完整的、一體化的軟件開(kāi)發(fā)工具,總控和人機(jī)界面處于中心的位置。(1)從一體化的軟件開(kāi)發(fā)工具來(lái)看作為一個(gè)完整的、一體化的軟件開(kāi)發(fā)工具,總控和人機(jī)界面提供了各個(gè)工作環(huán)節(jié)之間的協(xié)調(diào)與配合,早期的、單項(xiàng)功能工具,只是幫助人們完成某一項(xiàng)具體工作,各個(gè)環(huán)節(jié)缺乏協(xié)調(diào)與配合,工具的封閉性致使它們的輸出格式之間有差別,協(xié)調(diào)配合更加困難。隨著軟件規(guī)模的擴(kuò)大,整個(gè)工具的總的結(jié)構(gòu),各部分之間的聯(lián)系方式及在用戶面前保持統(tǒng)一的形象逐步成為中心議題。4.

2總控部分及人機(jī)界面總控與人機(jī)界面的地位與作用9(2)從單項(xiàng)功能的工具集成的角度來(lái)看在實(shí)際工作中,常常采用來(lái)自不同廠家的單項(xiàng)工具,使用者自己承擔(dān)集成的任務(wù)。如分析階段使用獨(dú)立于機(jī)器的一般化的以邏輯設(shè)計(jì)文檔作為其輸出的工具,在設(shè)計(jì)編碼階段,使用依賴于某個(gè)軟件(語(yǔ)言或數(shù)據(jù)庫(kù)管理系統(tǒng))的設(shè)計(jì)工具。在這種情況下,最關(guān)鍵的也是最麻煩的就是把前半段的輸出,準(zhǔn)確無(wú)誤地轉(zhuǎn)化為后半段工作所要求的輸入。這就要設(shè)立一個(gè)有效的總控,它能夠在各個(gè)具體工具之上,實(shí)現(xiàn)信息的正確傳遞與轉(zhuǎn)換,幫助人們完成上述協(xié)調(diào)與配合的工作,從而形成一個(gè)統(tǒng)一的、完整地支撐環(huán)境,并通過(guò)一個(gè)統(tǒng)一的、友好的人機(jī)界面與用戶對(duì)話。因此,不論是從一體化的軟件開(kāi)發(fā)工具來(lái)說(shuō),還是從單項(xiàng)的工具集成的角度來(lái)說(shuō),總控和人機(jī)界面都處于中心的位置。(2)從單項(xiàng)功能的工具集成的角度來(lái)看10軟件配置(集成)名詞:實(shí)質(zhì)是設(shè)立一個(gè)有效的總控部分,能夠在各個(gè)具體工具之上實(shí)現(xiàn)信息的正確傳遞與轉(zhuǎn)換,幫助人們完成軟件開(kāi)發(fā)各階段的協(xié)調(diào)與配合工作,從而形成一個(gè)統(tǒng)一的、完整的支撐環(huán)境,并通過(guò)一個(gè)統(tǒng)一的、友好的人機(jī)界面與用戶對(duì)話。

軟件配置(集成)名詞:實(shí)質(zhì)是設(shè)立一個(gè)有效的總控部分,能夠在各11總體結(jié)構(gòu)設(shè)計(jì)的基本原則是什么?

在技術(shù)上可以歸納為三條要點(diǎn):面向使用者;保證信息的準(zhǔn)確傳遞;保證系統(tǒng)的開(kāi)放性(或靈活性)首先,總控和人機(jī)界面是使用者與工具之間聯(lián)系的橋梁,必須嚴(yán)格遵循面向使用者的原則。其次,保證各部分之間信息的準(zhǔn)確傳遞。各個(gè)分散的軟件工具在集成為一個(gè)一體化的工具時(shí),它們的內(nèi)部并不發(fā)生改變,而是通過(guò)相互之間的信息交流聯(lián)系。最后,保證的開(kāi)放性或靈活性。軟件開(kāi)發(fā)過(guò)程的復(fù)雜性決定了軟件開(kāi)發(fā)工具的多樣性和可變性。理想的模塊結(jié)構(gòu)應(yīng)當(dāng)是模塊式的,易于裁剪的??傮w結(jié)構(gòu)設(shè)計(jì)的基本原則是什么?在技術(shù)上可以歸納為三條12面向用戶的原則體現(xiàn)在幾個(gè)方面?

面向用戶的原則具體體現(xiàn)在兩方面:一方面是總控部分對(duì)各部分的調(diào)度與安排應(yīng)當(dāng)體現(xiàn)符合軟件開(kāi)發(fā)人員思路的概念模式。另一方面,向用戶提供的統(tǒng)一界面應(yīng)當(dāng)體現(xiàn)這個(gè)模式。不論是設(shè)計(jì)一體化的軟件開(kāi)發(fā)工具,還是把分散的單項(xiàng)工具集成起來(lái),都應(yīng)當(dāng)遵循面向用戶這個(gè)基本原則。面向用戶的原則體現(xiàn)在幾個(gè)方面?

面向用戶的原則具體體現(xiàn)在兩方13為什么要保證軟件開(kāi)發(fā)工具各部分之間信息的準(zhǔn)確傳遞?

無(wú)論是分散的軟件工具集成為一體化工具還是有計(jì)劃有組織的統(tǒng)一開(kāi)發(fā)一體化工具,它們的內(nèi)部都是通過(guò)相互交流信息聯(lián)系。交流信息時(shí),信息能夠準(zhǔn)確地從一個(gè)部分傳送到另一個(gè)部分,就成為一體化是否成功的關(guān)鍵。某一部分的輸出當(dāng)它成為另一個(gè)部分的輸入的時(shí)候,它的特殊因素就必須經(jīng)過(guò)充分的考慮,并進(jìn)行必要的交換或調(diào)整,否則,就會(huì)產(chǎn)生誤解以致干擾和破壞了整個(gè)軟件系統(tǒng)的正常運(yùn)轉(zhuǎn)。因此,必須保證軟件開(kāi)發(fā)工具各部分之間信息的準(zhǔn)確傳遞。為什么要保證軟件開(kāi)發(fā)工具各部分之間信息的準(zhǔn)確傳遞?

無(wú)論是分14軟件開(kāi)發(fā)工具是為軟件開(kāi)發(fā)人員服務(wù),因此軟件開(kāi)發(fā)工具要能夠?qū)浖h(huán)境及需求、軟件結(jié)構(gòu)與功能、軟件開(kāi)發(fā)工作的過(guò)程與步驟進(jìn)行描述。IBM的AD/Cycle就是這樣一個(gè)框架,它一方面描述了一般的應(yīng)用軟件的結(jié)構(gòu)即SAA,另一方面,它進(jìn)一步提出了應(yīng)用軟件開(kāi)發(fā)的各個(gè)階段的模型。SAA:系統(tǒng)應(yīng)用體系結(jié)構(gòu),包括的接口及內(nèi)容如下表所示:軟件開(kāi)發(fā)工具是為軟件開(kāi)發(fā)人員服務(wù),因此軟件開(kāi)發(fā)工具要能夠?qū)?5AD/Cycle把軟件開(kāi)發(fā)過(guò)程的一個(gè)周期分五個(gè)階段,各階段的任務(wù)(1)需求分析階段

需求分析階段的任務(wù)是建立邏輯模型。具體說(shuō):

①首先應(yīng)當(dāng)建立志軟件所處領(lǐng)域或環(huán)境的模型(即“企業(yè)模型”)

②其次,建立起軟件所要處理信息的靜態(tài)模型,即數(shù)據(jù)模型。

③第三,建立起信息流通的模型,即信息的來(lái)源、去向、存儲(chǔ)及處理的邏輯過(guò)程。

AD/Cycle把軟件開(kāi)發(fā)過(guò)程的一個(gè)周期分五個(gè)階段,各階段的16(2)分析設(shè)計(jì)階段

需求分析階段的基本任務(wù)是完成系統(tǒng)的總體設(shè)計(jì)。包括數(shù)據(jù)結(jié)構(gòu)的詳細(xì)設(shè)計(jì),處理過(guò)程的詳細(xì)設(shè)計(jì),子系統(tǒng)或模塊的劃分以及它們之間相互聯(lián)系的具體規(guī)定。作為對(duì)于一下階段工作的具體要求,還應(yīng)當(dāng)完成屏幕設(shè)計(jì)、報(bào)表設(shè)計(jì)、數(shù)據(jù)庫(kù)的物理設(shè)計(jì)。

(3)編碼階段

是指編寫(xiě)軟件的階段,這里是實(shí)際的程序代碼的產(chǎn)生點(diǎn)。(2)分析設(shè)計(jì)階段

需求分析階段的基本任務(wù)是完成系統(tǒng)的總體設(shè)17(4)測(cè)試階段

任務(wù)是對(duì)已經(jīng)完成的各個(gè)模塊或子系統(tǒng)進(jìn)行測(cè)試、調(diào)整,以便最終形成完整的軟件。需要安排測(cè)試方案,準(zhǔn)備測(cè)試數(shù)據(jù),收集與分析測(cè)試結(jié)果,對(duì)需要修改的模塊進(jìn)行修改或調(diào)整。

(5)運(yùn)行維護(hù)階段

任務(wù)是組織和管理軟件的日常運(yùn)行,收集運(yùn)行中的狀態(tài)信息及出現(xiàn)的問(wèn)題并及時(shí)地進(jìn)行局部的修改與完善。(4)測(cè)試階段

任務(wù)是對(duì)已經(jīng)完成的各個(gè)模塊或子系統(tǒng)進(jìn)行測(cè)試、184.

3信息庫(kù)及其管理

信息庫(kù)是軟件開(kāi)發(fā)工具的基礎(chǔ)。沒(méi)有這個(gè)基礎(chǔ),或者這個(gè)基礎(chǔ)不牢??偪鼐蜔o(wú)信息可調(diào)度,人機(jī)界面也就沒(méi)有有用的信息向用戶提供,所謂支持軟件開(kāi)發(fā)也就為一句空話。因此,合理的組織信息庫(kù)的內(nèi)容,加強(qiáng)信息庫(kù)的管理功能,是軟件開(kāi)發(fā)工具的又一個(gè)重要的技術(shù)要素。

4.

3信息庫(kù)及其管理信息庫(kù)是軟件開(kāi)發(fā)工具的基礎(chǔ)。沒(méi)有這個(gè)19信息庫(kù)的技術(shù)考慮主要涉及四個(gè)問(wèn)題:信息庫(kù)的內(nèi)容信息庫(kù)的組織方式信息庫(kù)的管理功能歷史信息的處理方法。

信息庫(kù)的技術(shù)考慮主要涉及四個(gè)問(wèn)題:20一、信息庫(kù)的內(nèi)容:

信息庫(kù)中需要存放四大類信息系統(tǒng)狀況:關(guān)于軟件應(yīng)用的領(lǐng)域與環(huán)境的狀況。包括應(yīng)用領(lǐng)域中的有關(guān)實(shí)體及它們之間的相互關(guān)系的描述,軟件要處理的信息的種類、格式、數(shù)量、流向、應(yīng)用領(lǐng)域?qū)浖囊?、使用者的情況、背景、工作目標(biāo)、工作習(xí)慣等。一般是在需求分析階段收集并存入信息庫(kù),主要用于分析設(shè)計(jì)階段。設(shè)計(jì)成果:包括邏輯設(shè)計(jì)與物理設(shè)計(jì)的成果。

主要包括:數(shù)據(jù)流程圖、數(shù)據(jù)字典、系統(tǒng)結(jié)構(gòu)圖、數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)、各模塊的設(shè)計(jì)要求以及由此形成的設(shè)計(jì)文檔。運(yùn)行狀況的記錄:包括運(yùn)行效率、作用、用戶反映、故障情況、故障的原因及處理情況。項(xiàng)目管理與版本管理的信息:包括項(xiàng)目的進(jìn)度、過(guò)程、人員分工、資源投入、版本組織等。屬于跨生命周期的信息。第三章書(shū)本61頁(yè)有詳細(xì)的內(nèi)容。一、信息庫(kù)的內(nèi)容:信息庫(kù)中需要存放四大類信息21二、信息庫(kù)的組織方式(三種)1、集中存儲(chǔ)方式(最初采?。?/p>

就是建立一個(gè)龐大的數(shù)據(jù)庫(kù),把各種信息都存放在這個(gè)數(shù)據(jù)庫(kù)存中,而各種工具,或?qū)崿F(xiàn)單項(xiàng)功能的模塊則圍繞在這個(gè)信息庫(kù)的周圍,進(jìn)行操作。

優(yōu)點(diǎn):想法比較自然,而且充分利用已有的數(shù)據(jù)庫(kù)技術(shù),比較容易保持一致性。

缺點(diǎn):與模塊化的要求相沖突。2、分散存儲(chǔ)

把信息分別存入不同的數(shù)據(jù)庫(kù),由不同的功能模塊來(lái)處理。

優(yōu)點(diǎn):易于變更和裁剪,一部分發(fā)生變更,不致影響整個(gè)系統(tǒng)。

缺點(diǎn):每個(gè)模塊都要有自己進(jìn)行一整套增刪改的操作,且各部分之間的一致性無(wú)從保證。

信息庫(kù)模塊1模塊2模塊3子庫(kù)模塊1模塊2模塊3子庫(kù)子庫(kù)二、信息庫(kù)的組織方式(三種)1、集中存儲(chǔ)方式(最初采?。?/p>

就223、邏輯上統(tǒng)一、物理上分散、設(shè)立統(tǒng)一的信息庫(kù)管理模塊來(lái)進(jìn)行管理:通過(guò)信息庫(kù)管理模塊來(lái)對(duì)分散的各個(gè)數(shù)據(jù)庫(kù)進(jìn)行存取,并進(jìn)行一致性的檢查與維護(hù)。

優(yōu)點(diǎn):數(shù)據(jù)庫(kù)與模塊都實(shí)現(xiàn)了模塊化,既保持了一致性,又保持了靈活性。子庫(kù)模塊1模塊2模塊3子庫(kù)子庫(kù)信息管理模塊3、邏輯上統(tǒng)一、物理上分散、設(shè)立統(tǒng)一的信息庫(kù)管理模塊來(lái)進(jìn)行管23三、信息庫(kù)的管理功能

1)與一般數(shù)據(jù)庫(kù)管理系統(tǒng)相同的功能:錄入更新、使用查詢、一致性維護(hù)。2)與一般數(shù)據(jù)庫(kù)不同的管理功能:信息庫(kù)管理的主要任務(wù)(1)信息之間邏輯聯(lián)系的識(shí)別與記錄。即信息庫(kù)管理模塊必須記住信息之間的邏輯聯(lián)系,如數(shù)據(jù)字典某一項(xiàng)發(fā)生變化,相應(yīng)的數(shù)據(jù)流程圖也必須隨之變更,不管是否在同一個(gè)數(shù)據(jù)中。(2)如何實(shí)現(xiàn)定量信息與文字信息的協(xié)調(diào)一致。如數(shù)字的部分修改不會(huì)引起與數(shù)字對(duì)應(yīng)的全部文字的修改。三、信息庫(kù)的管理功能1)與一般數(shù)據(jù)庫(kù)管理系統(tǒng)相同的功能:錄24四、歷史信息的處理方法

1、信息庫(kù)的另一個(gè)問(wèn)題是如何處理歷史信息。實(shí)際操作中有兩個(gè)困難:

(1)一個(gè)是歷史信息的數(shù)量太大,占用存儲(chǔ)設(shè)備過(guò)多。

大容量問(wèn)題

(2)另一個(gè)是歷史信息格式不一致,難以有效地利用。表達(dá)方式不一致問(wèn)題2、解決辦法:

(1)前一個(gè)問(wèn)題一般采用脫機(jī)備份的方法解決。即面對(duì)信息爆炸的問(wèn)題要做好脫機(jī)備份的準(zhǔn)備。

(2)解決后一個(gè)問(wèn)題是十分困難的。加強(qiáng)標(biāo)準(zhǔn)化、穩(wěn)定數(shù)據(jù)結(jié)構(gòu)只能使這個(gè)問(wèn)題得到一定程度的解決。(任何標(biāo)準(zhǔn)化都不是一成不變的,數(shù)據(jù)結(jié)構(gòu)的穩(wěn)定是相對(duì)的,變更則是絕對(duì)的。這個(gè)問(wèn)題至今尚無(wú)令人十分滿意的解決辦法)四、歷史信息的處理方法1、信息庫(kù)的另一個(gè)問(wèn)題是如何處理歷史254.4

文檔的生成與代碼的生成

除了通過(guò)屏幕上的對(duì)話獲取信息支持外,使用者從軟件開(kāi)發(fā)工具得到的最主要的幫助有兩種方式:文檔生成與代碼生成。軟件開(kāi)發(fā)工具的起點(diǎn)也就是這二者,軟件開(kāi)發(fā)工具的主要輸出成果:程序和文檔。

一、代碼生成

1、代碼生成器的基本任務(wù)根據(jù)設(shè)計(jì)要求,自動(dòng)地或者半自動(dòng)地產(chǎn)生相應(yīng)的某種語(yǔ)言的程序。輸出代碼是這個(gè)模塊的目標(biāo)。輸出的代碼有兩種情況:某種高級(jí)語(yǔ)言程序的代碼和某種機(jī)器環(huán)境下可運(yùn)行的機(jī)器指令。

4.4

文檔的生成與代碼的生成除了通過(guò)屏幕上的對(duì)話獲取信息26

①某種高級(jí)程序設(shè)計(jì)語(yǔ)言的代碼

優(yōu)點(diǎn):使用者可以在這個(gè)基礎(chǔ)上進(jìn)一步修改加工,即利用自動(dòng)生成模塊作為原型,在此基礎(chǔ)上形成自己所要求的系統(tǒng)(或系統(tǒng)的一部分)。

缺點(diǎn):功能較死,效率不高。

②某種機(jī)器(包括硬件和操作系統(tǒng))環(huán)境下可運(yùn)行的機(jī)器指令。

優(yōu)點(diǎn):可以直接運(yùn)行,如果不合要求可以立即調(diào)整命令和參數(shù)重新生成一遍。

缺點(diǎn):機(jī)器代碼一般無(wú)法直接修改,對(duì)機(jī)器的硬件軟件環(huán)境的依賴很大。

①某種高級(jí)程序設(shè)計(jì)語(yǔ)言的代碼

優(yōu)點(diǎn):使用者可以在這個(gè)基礎(chǔ)上27哪類程序易于生成?哪類程序難于生成?為什么?

一般來(lái)說(shuō),對(duì)話屏幕、輸入屏幕、輸出報(bào)表、菜單控制結(jié)構(gòu)等類型的模塊比較容易生成,因?yàn)樗鼈兊奶幚磉^(guò)程比較規(guī)范,比較容易通過(guò)一些參數(shù)來(lái)加以描述和規(guī)定。而對(duì)于統(tǒng)計(jì)分析、數(shù)據(jù)加工、決策判斷等類型的模塊則比較難以生成,因?yàn)樗鼈兊撵`活程度較大。哪類程序易于生成?哪類程序難于生成?為什么?一般來(lái)說(shuō),對(duì)話282、代碼生成器依據(jù)三方面的資料(1)信息庫(kù)里已有的有關(guān)資料。如系統(tǒng)的總體結(jié)構(gòu)、模塊間的調(diào)用關(guān)系、基礎(chǔ)數(shù)據(jù)的相關(guān)設(shè)置、屏幕報(bào)表設(shè)計(jì)要求等。保證系統(tǒng)的統(tǒng)一。(2)各種標(biāo)準(zhǔn)模塊的框架和構(gòu)件。事實(shí)上,代碼生成的技術(shù)是根據(jù)人們對(duì)某一類模塊的編程經(jīng)驗(yàn),歸納出一些一般框架或一般構(gòu)件,事先存放在機(jī)器中,在實(shí)際使用時(shí)根據(jù)當(dāng)時(shí)輸入的參數(shù),填入框架或重新組合構(gòu)件,從而形成一個(gè)新的程序段落。(3)使用者通過(guò)屏幕前的操作送入的信息。信息庫(kù)中不可能已經(jīng)存人了代碼設(shè)計(jì)所需要的全部信息,還有相當(dāng)一部分要求或參數(shù)是在編碼時(shí)才確定的。所見(jiàn)即所得的的人機(jī)界面在圖形、鼠標(biāo)、功能鍵等的配合下,方便使用者的操作。2、代碼生成器依據(jù)三方面的資料29二、文檔生成文檔生成的功能與代碼生成相比,數(shù)量更大、內(nèi)容更復(fù)雜。

文檔生成包括三大類:文章、表格、圖形。·畫(huà)圖已經(jīng)不是困難的問(wèn)題,困難是把圖形的含義與信息庫(kù)中的內(nèi)容有機(jī)的聯(lián)系起來(lái)。把信息庫(kù)中的內(nèi)容用人們一目了然的圖形表示出來(lái)有一定的難度?!け砀癖容^容易按信息庫(kù)當(dāng)前的內(nèi)容輸出?!の恼率亲铍y處理的。寫(xiě)好系統(tǒng)分析、設(shè)計(jì)報(bào)告或用戶手冊(cè)絕不只是技術(shù)問(wèn)題。二、文檔生成文檔生成的功能與代碼生成相比,數(shù)量更大、內(nèi)容更復(fù)30文檔生成的困難性?文檔生成比代碼生成困難得多。1、文檔內(nèi)容復(fù)雜,包括文章、表格和圖形。2、文檔沒(méi)有嚴(yán)格的語(yǔ)法規(guī)則,隨意性大,種類多,又要符合人們的習(xí)慣與要求。3、文檔中的包括表面形式和含義,需要將其建立邏輯的聯(lián)系,保持文檔各部分之間、文檔與程序之間的一致性尤其困難。一處變更,需要觸發(fā)相關(guān)各處的修改。4、文章的生成是最難處理的,這不只是技術(shù)問(wèn)題。文檔生成的困難性?314.5

項(xiàng)目管理與版本管理

·項(xiàng)目管理與版本管理的核心問(wèn)題:跨生命周期的信息管理問(wèn)題?!ろ?xiàng)目管理與版本管理的關(guān)鍵問(wèn)題:歷史信息的處理。

4.5

項(xiàng)目管理與版本管理·項(xiàng)目管理與版本管理的核心問(wèn)題32AD/Cycle的總框架中,對(duì)項(xiàng)目管理應(yīng)當(dāng)考慮的范圍給出如下規(guī)定(也就是項(xiàng)目管理的任務(wù))

(1)研究與確定開(kāi)發(fā)工作的方針與方法。如采用什么樣的階段劃分方法,采用什么樣的系統(tǒng)描述方法等。(2)開(kāi)發(fā)任務(wù)的劃分與分工。整個(gè)開(kāi)發(fā)任務(wù)如何逐層分解為具體的任務(wù),這些任務(wù)委托給什么人來(lái)做,這些任務(wù)之間的相互關(guān)系。(3)資源狀況。有多少人力、物力、設(shè)備、軟件資金,它們?cè)谧鍪裁?,是否得到充分利用等。?)人員情況。每個(gè)人進(jìn)度如何,是否需要培訓(xùn)等。(5)變更情況。需求、人員、環(huán)境的變更

(6)質(zhì)量情況。檢驗(yàn)標(biāo)準(zhǔn)是什么,誰(shuí)負(fù)責(zé)等。

一、項(xiàng)目管理內(nèi)容AD/Cycle的總框架中,對(duì)項(xiàng)目管理應(yīng)當(dāng)考慮的范圍給出如下33項(xiàng)目管理的方法人們依據(jù)項(xiàng)目管理的經(jīng)驗(yàn),提出了以項(xiàng)目數(shù)據(jù)庫(kù)為中心進(jìn)行項(xiàng)目管理的方法。項(xiàng)目數(shù)據(jù)庫(kù)實(shí)際上是信息庫(kù)的一個(gè)組成部分,它記錄的是項(xiàng)目本身進(jìn)展的各種有關(guān)信息。如各工作階段的預(yù)期進(jìn)度、實(shí)際進(jìn)展情況、驗(yàn)收情況。項(xiàng)目負(fù)責(zé)人要隨時(shí)掌握這些情況,一方面把住驗(yàn)收質(zhì)量關(guān),同時(shí)掌握全局,及時(shí)發(fā)現(xiàn)瓶頸環(huán)節(jié),從組織上加以解決。項(xiàng)目管理的方法人們依據(jù)項(xiàng)目管理的經(jīng)驗(yàn),提出了以項(xiàng)目數(shù)據(jù)庫(kù)為中34二、版本管理主要內(nèi)容是:各個(gè)版本的編號(hào)、功能改變、模塊組成、文檔狀況、推出時(shí)間、用戶數(shù)量(或用戶名單)、用戶反映、封存情況等。主要是對(duì)成為產(chǎn)品中,需要不斷更新的大型軟件而言的。二、版本管理主要內(nèi)容是:各個(gè)版本的編號(hào)、功能改變、模塊組成、35練習(xí)軟件開(kāi)發(fā)工具的基本功能有哪些?(1)提供描述軟件狀況及其開(kāi)發(fā)過(guò)程的概念模式,協(xié)助軟件開(kāi)發(fā)人員認(rèn)識(shí)軟件工作的環(huán)境與要求、合理地組織與管理軟件開(kāi)發(fā)的過(guò)程。(2)提供存儲(chǔ)和管理有關(guān)信息的機(jī)制與手段。(3)幫助使用者編制、生成及修改各種文檔。(4)幫助使用者編寫(xiě)程序代碼,即代碼生成。(5)對(duì)于歷史信息進(jìn)行跨生命周期的管理,把項(xiàng)目運(yùn)行與版本更新的有關(guān)信息科學(xué)地管理起來(lái)。練習(xí)軟件開(kāi)發(fā)工具的基本功能有哪些?36一體化的軟件開(kāi)發(fā)工具包括哪幾個(gè)主要組成部分?(1)總控和人機(jī)界面——中心位置,使用者和工具間的橋梁,工具實(shí)用性和靈活性的保證。(2)信息庫(kù)和信息庫(kù)管理模塊——工具功能與作用的最基本依據(jù)。(3)文檔生成和代碼生成——兩個(gè)重要輸出(4)項(xiàng)目管理和版本管理——跨周期信息共享、知識(shí)重用、軟件重用的關(guān)鍵問(wèn)題。一體化的軟件開(kāi)發(fā)工具包括哪幾個(gè)主要組成部分?37總控和人機(jī)界面為什么是系統(tǒng)開(kāi)放性和靈活性的關(guān)鍵?總控和人機(jī)界面是使用者和軟件開(kāi)發(fā)工具之間交流信息、實(shí)現(xiàn)所有的支持功能的橋梁。這一部分的有效實(shí)現(xiàn)對(duì)于軟件開(kāi)發(fā)工具來(lái)說(shuō),是實(shí)用性和靈活性的主要保證。一方面,人機(jī)界面面對(duì)不同類型的用戶,這些用戶既有區(qū)別,又有共性,人機(jī)界面既要保持統(tǒng)一和一致,又要能夠在正確區(qū)分和識(shí)別用戶的基礎(chǔ)上,針對(duì)不同用戶的要求與習(xí)慣提供有效的幫助。另一方面,總控部分面對(duì)系統(tǒng)內(nèi)部的各種功能與各種信息,它要保證各部分之間相互的協(xié)調(diào)一致,保證各部分之間信息有效地、準(zhǔn)確地流通。總控和人機(jī)界面為什么是系統(tǒng)開(kāi)放性和靈活性的關(guān)鍵?38總控和人機(jī)界面的設(shè)計(jì)原則是什么?(1)面向使用者(用戶)的原則(2)保證各部分之間信息的準(zhǔn)確傳遞(3)保證系統(tǒng)的開(kāi)放性或靈活性——理想的系統(tǒng)結(jié)構(gòu)應(yīng)當(dāng)是模塊式的,易于剪裁的。信息庫(kù)的內(nèi)容就包括哪些方面?(1)關(guān)于軟件應(yīng)用的領(lǐng)域與環(huán)境的狀況。(2)設(shè)計(jì)成果,包括邏輯設(shè)計(jì)與物理設(shè)計(jì)的成果。(3)運(yùn)行狀況的記錄。(4)有關(guān)項(xiàng)目管理與版本管理的信息??偪睾腿藱C(jī)界面的設(shè)計(jì)原則是什么?39信息庫(kù)的結(jié)構(gòu)方式有幾種?為什么要有專門的信息庫(kù)管理模塊?信息庫(kù)管理模塊是針對(duì)邏輯上統(tǒng)一和物理上分散的組織方式來(lái)說(shuō)的,由該模塊對(duì)分散的各個(gè)數(shù)據(jù)庫(kù)進(jìn)行存取,并進(jìn)行一致性的檢查與維護(hù),既保持了一致性,又保證了靈活性。它實(shí)現(xiàn)三種功能:錄入更新、使用查詢、一致性維護(hù)。信息庫(kù)的結(jié)構(gòu)方式有幾種?為什么要有專門的信息庫(kù)管理模塊?40代碼生成器的代碼輸出方式有哪幾種?優(yōu)、缺點(diǎn)是什么?(1)某種高級(jí)程序設(shè)計(jì)語(yǔ)言的代碼。優(yōu)點(diǎn):使用者可以利用自動(dòng)生成的模塊為原型,在此基礎(chǔ)上修改加工,形成自己所要求的系統(tǒng)或系統(tǒng)的某一部分。缺點(diǎn):功能較死,效率不高,需要修改(2)某種機(jī)器環(huán)境下可運(yùn)行的機(jī)器指令。優(yōu)點(diǎn):可以直接運(yùn)行,如果不合要求可以立即調(diào)整命令或參數(shù)重新生成一遍。缺點(diǎn):這種代碼一般無(wú)法直接修改,對(duì)硬件環(huán)境的依賴性大,用的不多。代碼生成器依據(jù)哪些資料工作?代碼生成器依據(jù)三方面的資料:(1)信息庫(kù)里已有的有關(guān)資料(2)各種標(biāo)準(zhǔn)模塊的框架和構(gòu)件(3)使用者通過(guò)屏幕臨時(shí)送入的信息項(xiàng)目管理的任務(wù)包括哪些方面?(1)研究與確定開(kāi)發(fā)工作的方針與方法。(2)開(kāi)發(fā)任務(wù)的劃分與分工。(3)資源情況。(4)人員情況。(5)變更情況。(6)質(zhì)量情況。代碼生成器的代碼輸出方式有哪幾種?優(yōu)、缺點(diǎn)是什么?41項(xiàng)目管理工作的困難何在?主要是各個(gè)工作階段對(duì)信息的要求、視角不同,軟件開(kāi)發(fā)人員經(jīng)常需要回去補(bǔ)充調(diào)查,影響了軟件開(kāi)發(fā)的進(jìn)度,同時(shí)為保持信息的一致性,需要對(duì)已有的文檔、資料做相應(yīng)修改。

項(xiàng)目管理工作的困難何在?42第四章

軟件開(kāi)發(fā)工具的技術(shù)要素

4.1基本功能與一般結(jié)構(gòu)4.2總控與人機(jī)界面4.3信息庫(kù)及其管理4.4文檔生成與代碼生成4.5項(xiàng)目管理與版本管理第四章

軟件開(kāi)發(fā)工具的技術(shù)要素4.1基本功能與一般結(jié)構(gòu)43由于軟件開(kāi)發(fā)工具一般都較為復(fù)雜、龐大,所以,它的功能設(shè)計(jì)與總體結(jié)構(gòu)是必須認(rèn)真考慮的。由于軟件開(kāi)發(fā)工具一般都較為復(fù)雜、龐大,所以,它的功能設(shè)計(jì)與總444.1

基本功能與一般結(jié)構(gòu)軟件開(kāi)發(fā)工具對(duì)各類支持工作歸納成五個(gè)方面,即軟件的功能要求:認(rèn)識(shí)與描述客觀系統(tǒng)存儲(chǔ)及管理開(kāi)發(fā)過(guò)程中的信息代碼的編寫(xiě)或生成文檔的編制或生成軟件項(xiàng)目的管理4.1

基本功能與一般結(jié)構(gòu)軟件開(kāi)發(fā)工具對(duì)各類支持工作歸納成45一、軟件開(kāi)發(fā)工具的基本功能(五個(gè)方面)(1)提供描述軟件狀況及其開(kāi)發(fā)過(guò)程的概念模式,協(xié)助軟件開(kāi)發(fā)人員認(rèn)識(shí)軟件工作的環(huán)境與要求、合理地組織與管理軟件開(kāi)發(fā)的工作過(guò)程。系統(tǒng)描述軟件開(kāi)發(fā)工具是引導(dǎo)人們建立正確的、有效地概念模式的一種手段。此處的概念模式包括幾個(gè)主要方面:對(duì)軟件的應(yīng)用環(huán)境的認(rèn)識(shí)和理解對(duì)預(yù)期產(chǎn)生的軟件產(chǎn)品的認(rèn)識(shí)與理解。對(duì)軟件開(kāi)發(fā)過(guò)程的認(rèn)識(shí)與理解。

任何軟件開(kāi)發(fā)工具都具備這種功能。一、軟件開(kāi)發(fā)工具的基本功能(五個(gè)方面)(1)提供描述軟件狀況46(2)提供存儲(chǔ)和管理有關(guān)信息的機(jī)制與手段。

簡(jiǎn)單說(shuō)就是根據(jù)概念模式提供一個(gè)信息庫(kù)和一個(gè)人機(jī)界面,它能夠有效地管理這些信息。信息管理(3)幫助使用者編制、生成及修改各種文檔。這包括文字材料和各種表格、圖形。軟件開(kāi)發(fā)中有大量的文檔產(chǎn)生,其工作量常常使人望而卻步,軟件開(kāi)發(fā)工具在這方面的功能是十分重要的。文檔生成(2)提供存儲(chǔ)和管理有關(guān)信息的機(jī)制與手段。

簡(jiǎn)單說(shuō)就是根47(4)幫助使用者編寫(xiě)程序代碼,即代碼生成。這些編碼工作本來(lái)是程序員的任務(wù),軟件開(kāi)發(fā)工具通過(guò)各種信息的提供,使用戶能夠在較短時(shí)間內(nèi)半自動(dòng)地生成所需的代碼段落,進(jìn)行測(cè)試、修改錯(cuò)誤等。代碼生成(5)對(duì)于歷史信息進(jìn)行跨生命周期的管理,把項(xiàng)目運(yùn)行與版本更新的有關(guān)信息科學(xué)地管理起來(lái)。對(duì)于大型軟件開(kāi)發(fā)來(lái)說(shuō),這一部分會(huì)成為信息處理的瓶頸。做好這一部分工作將非常有利于信息與資源的充分利用(或重用),其作用也是十分可觀的。項(xiàng)目管理完整的、一體化的軟件開(kāi)發(fā)工具應(yīng)當(dāng)具備以上這些功能。理想情況下,現(xiàn)有的多數(shù)軟件開(kāi)發(fā)工具往往實(shí)現(xiàn)了其中某一薦或某幾項(xiàng)。(4)幫助使用者編寫(xiě)程序代碼,即代碼生成。這些編碼工作本來(lái)是48二、軟件開(kāi)發(fā)工具的一般結(jié)構(gòu)

根據(jù)軟件開(kāi)發(fā)工具的基本功能概括軟件開(kāi)發(fā)工具的一般結(jié)構(gòu):處于中心位置的是總控和人機(jī)界面。一方面,人機(jī)界面面對(duì)著不同的用戶類型;另一方面,總控面對(duì)著系統(tǒng)內(nèi)部的各種功能與各種信息,它要保證各部分相互之間的協(xié)調(diào)一致,保證各部分之間信息有效地、準(zhǔn)確地流通。另一個(gè)重要部分是信息庫(kù)及其管理,信息庫(kù)框架反映了人們對(duì)軟件產(chǎn)品和軟件開(kāi)發(fā)過(guò)程的基本看法。信息庫(kù)內(nèi)容的豐富程度則是軟件開(kāi)發(fā)工具的功能與作用的最基本的依據(jù)。圖中沒(méi)有反映出來(lái)的技術(shù)要素是項(xiàng)目管理和版本管理。

分析設(shè)計(jì)人員運(yùn)行管理人員項(xiàng)目管理人員人機(jī)界面總控使用查詢一致性維護(hù)錄入更新聯(lián)機(jī)查詢文檔生成代碼生成其他輸出系統(tǒng)狀況設(shè)計(jì)成果運(yùn)行狀況項(xiàng)目版本信息庫(kù)信息庫(kù)管理二、軟件開(kāi)發(fā)工具的一般結(jié)構(gòu)根據(jù)軟件開(kāi)發(fā)工具的基本功能概括軟49具體包括以下的幾個(gè)方面:1、總控部分與人機(jī)界面這部分是使用用者和軟件開(kāi)發(fā)工具之間交流信息,實(shí)現(xiàn)所有的支持功能的橋梁。這一部分的有效實(shí)現(xiàn)是軟件開(kāi)發(fā)工具的實(shí)用性和靈活性的主要保證。2、信息庫(kù)存及其管理模塊軟件開(kāi)發(fā)工具對(duì)軟件開(kāi)發(fā)支持的范圍及深度取決于信息庫(kù)的功能和內(nèi)容3、文檔生成模塊用于輸出文檔4、代碼生成模塊用于生成代碼5、項(xiàng)目管理模塊用于實(shí)現(xiàn)跨越開(kāi)發(fā)周期的信息共享、知識(shí)重用以及軟件重用文檔生成和代碼生成是兩個(gè)最重要的信息出口。具體包括以下的幾個(gè)方面:504.

2總控部分及人機(jī)界面總控與人機(jī)界面的地位與作用作為一個(gè)完整的、一體化的軟件開(kāi)發(fā)工具,總控和人機(jī)界面處于中心的位置。(1)從一體化的軟件開(kāi)發(fā)工具來(lái)看作為一個(gè)完整的、一體化的軟件開(kāi)發(fā)工具,總控和人機(jī)界面提供了各個(gè)工作環(huán)節(jié)之間的協(xié)調(diào)與配合,早期的、單項(xiàng)功能工具,只是幫助人們完成某一項(xiàng)具體工作,各個(gè)環(huán)節(jié)缺乏協(xié)調(diào)與配合,工具的封閉性致使它們的輸出格式之間有差別,協(xié)調(diào)配合更加困難。隨著軟件規(guī)模的擴(kuò)大,整個(gè)工具的總的結(jié)構(gòu),各部分之間的聯(lián)系方式及在用戶面前保持統(tǒng)一的形象逐步成為中心議題。4.

2總控部分及人機(jī)界面總控與人機(jī)界面的地位與作用51(2)從單項(xiàng)功能的工具集成的角度來(lái)看在實(shí)際工作中,常常采用來(lái)自不同廠家的單項(xiàng)工具,使用者自己承擔(dān)集成的任務(wù)。如分析階段使用獨(dú)立于機(jī)器的一般化的以邏輯設(shè)計(jì)文檔作為其輸出的工具,在設(shè)計(jì)編碼階段,使用依賴于某個(gè)軟件(語(yǔ)言或數(shù)據(jù)庫(kù)管理系統(tǒng))的設(shè)計(jì)工具。在這種情況下,最關(guān)鍵的也是最麻煩的就是把前半段的輸出,準(zhǔn)確無(wú)誤地轉(zhuǎn)化為后半段工作所要求的輸入。這就要設(shè)立一個(gè)有效的總控,它能夠在各個(gè)具體工具之上,實(shí)現(xiàn)信息的正確傳遞與轉(zhuǎn)換,幫助人們完成上述協(xié)調(diào)與配合的工作,從而形成一個(gè)統(tǒng)一的、完整地支撐環(huán)境,并通過(guò)一個(gè)統(tǒng)一的、友好的人機(jī)界面與用戶對(duì)話。因此,不論是從一體化的軟件開(kāi)發(fā)工具來(lái)說(shuō),還是從單項(xiàng)的工具集成的角度來(lái)說(shuō),總控和人機(jī)界面都處于中心的位置。(2)從單項(xiàng)功能的工具集成的角度來(lái)看52軟件配置(集成)名詞:實(shí)質(zhì)是設(shè)立一個(gè)有效的總控部分,能夠在各個(gè)具體工具之上實(shí)現(xiàn)信息的正確傳遞與轉(zhuǎn)換,幫助人們完成軟件開(kāi)發(fā)各階段的協(xié)調(diào)與配合工作,從而形成一個(gè)統(tǒng)一的、完整的支撐環(huán)境,并通過(guò)一個(gè)統(tǒng)一的、友好的人機(jī)界面與用戶對(duì)話。

軟件配置(集成)名詞:實(shí)質(zhì)是設(shè)立一個(gè)有效的總控部分,能夠在各53總體結(jié)構(gòu)設(shè)計(jì)的基本原則是什么?

在技術(shù)上可以歸納為三條要點(diǎn):面向使用者;保證信息的準(zhǔn)確傳遞;保證系統(tǒng)的開(kāi)放性(或靈活性)首先,總控和人機(jī)界面是使用者與工具之間聯(lián)系的橋梁,必須嚴(yán)格遵循面向使用者的原則。其次,保證各部分之間信息的準(zhǔn)確傳遞。各個(gè)分散的軟件工具在集成為一個(gè)一體化的工具時(shí),它們的內(nèi)部并不發(fā)生改變,而是通過(guò)相互之間的信息交流聯(lián)系。最后,保證的開(kāi)放性或靈活性。軟件開(kāi)發(fā)過(guò)程的復(fù)雜性決定了軟件開(kāi)發(fā)工具的多樣性和可變性。理想的模塊結(jié)構(gòu)應(yīng)當(dāng)是模塊式的,易于裁剪的??傮w結(jié)構(gòu)設(shè)計(jì)的基本原則是什么?在技術(shù)上可以歸納為三條54面向用戶的原則體現(xiàn)在幾個(gè)方面?

面向用戶的原則具體體現(xiàn)在兩方面:一方面是總控部分對(duì)各部分的調(diào)度與安排應(yīng)當(dāng)體現(xiàn)符合軟件開(kāi)發(fā)人員思路的概念模式。另一方面,向用戶提供的統(tǒng)一界面應(yīng)當(dāng)體現(xiàn)這個(gè)模式。不論是設(shè)計(jì)一體化的軟件開(kāi)發(fā)工具,還是把分散的單項(xiàng)工具集成起來(lái),都應(yīng)當(dāng)遵循面向用戶這個(gè)基本原則。面向用戶的原則體現(xiàn)在幾個(gè)方面?

面向用戶的原則具體體現(xiàn)在兩方55為什么要保證軟件開(kāi)發(fā)工具各部分之間信息的準(zhǔn)確傳遞?

無(wú)論是分散的軟件工具集成為一體化工具還是有計(jì)劃有組織的統(tǒng)一開(kāi)發(fā)一體化工具,它們的內(nèi)部都是通過(guò)相互交流信息聯(lián)系。交流信息時(shí),信息能夠準(zhǔn)確地從一個(gè)部分傳送到另一個(gè)部分,就成為一體化是否成功的關(guān)鍵。某一部分的輸出當(dāng)它成為另一個(gè)部分的輸入的時(shí)候,它的特殊因素就必須經(jīng)過(guò)充分的考慮,并進(jìn)行必要的交換或調(diào)整,否則,就會(huì)產(chǎn)生誤解以致干擾和破壞了整個(gè)軟件系統(tǒng)的正常運(yùn)轉(zhuǎn)。因此,必須保證軟件開(kāi)發(fā)工具各部分之間信息的準(zhǔn)確傳遞。為什么要保證軟件開(kāi)發(fā)工具各部分之間信息的準(zhǔn)確傳遞?

無(wú)論是分56軟件開(kāi)發(fā)工具是為軟件開(kāi)發(fā)人員服務(wù),因此軟件開(kāi)發(fā)工具要能夠?qū)浖h(huán)境及需求、軟件結(jié)構(gòu)與功能、軟件開(kāi)發(fā)工作的過(guò)程與步驟進(jìn)行描述。IBM的AD/Cycle就是這樣一個(gè)框架,它一方面描述了一般的應(yīng)用軟件的結(jié)構(gòu)即SAA,另一方面,它進(jìn)一步提出了應(yīng)用軟件開(kāi)發(fā)的各個(gè)階段的模型。SAA:系統(tǒng)應(yīng)用體系結(jié)構(gòu),包括的接口及內(nèi)容如下表所示:軟件開(kāi)發(fā)工具是為軟件開(kāi)發(fā)人員服務(wù),因此軟件開(kāi)發(fā)工具要能夠?qū)?7AD/Cycle把軟件開(kāi)發(fā)過(guò)程的一個(gè)周期分五個(gè)階段,各階段的任務(wù)(1)需求分析階段

需求分析階段的任務(wù)是建立邏輯模型。具體說(shuō):

①首先應(yīng)當(dāng)建立志軟件所處領(lǐng)域或環(huán)境的模型(即“企業(yè)模型”)

②其次,建立起軟件所要處理信息的靜態(tài)模型,即數(shù)據(jù)模型。

③第三,建立起信息流通的模型,即信息的來(lái)源、去向、存儲(chǔ)及處理的邏輯過(guò)程。

AD/Cycle把軟件開(kāi)發(fā)過(guò)程的一個(gè)周期分五個(gè)階段,各階段的58(2)分析設(shè)計(jì)階段

需求分析階段的基本任務(wù)是完成系統(tǒng)的總體設(shè)計(jì)。包括數(shù)據(jù)結(jié)構(gòu)的詳細(xì)設(shè)計(jì),處理過(guò)程的詳細(xì)設(shè)計(jì),子系統(tǒng)或模塊的劃分以及它們之間相互聯(lián)系的具體規(guī)定。作為對(duì)于一下階段工作的具體要求,還應(yīng)當(dāng)完成屏幕設(shè)計(jì)、報(bào)表設(shè)計(jì)、數(shù)據(jù)庫(kù)的物理設(shè)計(jì)。

(3)編碼階段

是指編寫(xiě)軟件的階段,這里是實(shí)際的程序代碼的產(chǎn)生點(diǎn)。(2)分析設(shè)計(jì)階段

需求分析階段的基本任務(wù)是完成系統(tǒng)的總體設(shè)59(4)測(cè)試階段

任務(wù)是對(duì)已經(jīng)完成的各個(gè)模塊或子系統(tǒng)進(jìn)行測(cè)試、調(diào)整,以便最終形成完整的軟件。需要安排測(cè)試方案,準(zhǔn)備測(cè)試數(shù)據(jù),收集與分析測(cè)試結(jié)果,對(duì)需要修改的模塊進(jìn)行修改或調(diào)整。

(5)運(yùn)行維護(hù)階段

任務(wù)是組織和管理軟件的日常運(yùn)行,收集運(yùn)行中的狀態(tài)信息及出現(xiàn)的問(wèn)題并及時(shí)地進(jìn)行局部的修改與完善。(4)測(cè)試階段

任務(wù)是對(duì)已經(jīng)完成的各個(gè)模塊或子系統(tǒng)進(jìn)行測(cè)試、604.

3信息庫(kù)及其管理

信息庫(kù)是軟件開(kāi)發(fā)工具的基礎(chǔ)。沒(méi)有這個(gè)基礎(chǔ),或者這個(gè)基礎(chǔ)不牢??偪鼐蜔o(wú)信息可調(diào)度,人機(jī)界面也就沒(méi)有有用的信息向用戶提供,所謂支持軟件開(kāi)發(fā)也就為一句空話。因此,合理的組織信息庫(kù)的內(nèi)容,加強(qiáng)信息庫(kù)的管理功能,是軟件開(kāi)發(fā)工具的又一個(gè)重要的技術(shù)要素。

4.

3信息庫(kù)及其管理信息庫(kù)是軟件開(kāi)發(fā)工具的基礎(chǔ)。沒(méi)有這個(gè)61信息庫(kù)的技術(shù)考慮主要涉及四個(gè)問(wèn)題:信息庫(kù)的內(nèi)容信息庫(kù)的組織方式信息庫(kù)的管理功能歷史信息的處理方法。

信息庫(kù)的技術(shù)考慮主要涉及四個(gè)問(wèn)題:62一、信息庫(kù)的內(nèi)容:

信息庫(kù)中需要存放四大類信息系統(tǒng)狀況:關(guān)于軟件應(yīng)用的領(lǐng)域與環(huán)境的狀況。包括應(yīng)用領(lǐng)域中的有關(guān)實(shí)體及它們之間的相互關(guān)系的描述,軟件要處理的信息的種類、格式、數(shù)量、流向、應(yīng)用領(lǐng)域?qū)浖囊蟆⑹褂谜叩那闆r、背景、工作目標(biāo)、工作習(xí)慣等。一般是在需求分析階段收集并存入信息庫(kù),主要用于分析設(shè)計(jì)階段。設(shè)計(jì)成果:包括邏輯設(shè)計(jì)與物理設(shè)計(jì)的成果。

主要包括:數(shù)據(jù)流程圖、數(shù)據(jù)字典、系統(tǒng)結(jié)構(gòu)圖、數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)、各模塊的設(shè)計(jì)要求以及由此形成的設(shè)計(jì)文檔。運(yùn)行狀況的記錄:包括運(yùn)行效率、作用、用戶反映、故障情況、故障的原因及處理情況。項(xiàng)目管理與版本管理的信息:包括項(xiàng)目的進(jìn)度、過(guò)程、人員分工、資源投入、版本組織等。屬于跨生命周期的信息。第三章書(shū)本61頁(yè)有詳細(xì)的內(nèi)容。一、信息庫(kù)的內(nèi)容:信息庫(kù)中需要存放四大類信息63二、信息庫(kù)的組織方式(三種)1、集中存儲(chǔ)方式(最初采?。?/p>

就是建立一個(gè)龐大的數(shù)據(jù)庫(kù),把各種信息都存放在這個(gè)數(shù)據(jù)庫(kù)存中,而各種工具,或?qū)崿F(xiàn)單項(xiàng)功能的模塊則圍繞在這個(gè)信息庫(kù)的周圍,進(jìn)行操作。

優(yōu)點(diǎn):想法比較自然,而且充分利用已有的數(shù)據(jù)庫(kù)技術(shù),比較容易保持一致性。

缺點(diǎn):與模塊化的要求相沖突。2、分散存儲(chǔ)

把信息分別存入不同的數(shù)據(jù)庫(kù),由不同的功能模塊來(lái)處理。

優(yōu)點(diǎn):易于變更和裁剪,一部分發(fā)生變更,不致影響整個(gè)系統(tǒng)。

缺點(diǎn):每個(gè)模塊都要有自己進(jìn)行一整套增刪改的操作,且各部分之間的一致性無(wú)從保證。

信息庫(kù)模塊1模塊2模塊3子庫(kù)模塊1模塊2模塊3子庫(kù)子庫(kù)二、信息庫(kù)的組織方式(三種)1、集中存儲(chǔ)方式(最初采?。?/p>

就643、邏輯上統(tǒng)一、物理上分散、設(shè)立統(tǒng)一的信息庫(kù)管理模塊來(lái)進(jìn)行管理:通過(guò)信息庫(kù)管理模塊來(lái)對(duì)分散的各個(gè)數(shù)據(jù)庫(kù)進(jìn)行存取,并進(jìn)行一致性的檢查與維護(hù)。

優(yōu)點(diǎn):數(shù)據(jù)庫(kù)與模塊都實(shí)現(xiàn)了模塊化,既保持了一致性,又保持了靈活性。子庫(kù)模塊1模塊2模塊3子庫(kù)子庫(kù)信息管理模塊3、邏輯上統(tǒng)一、物理上分散、設(shè)立統(tǒng)一的信息庫(kù)管理模塊來(lái)進(jìn)行管65三、信息庫(kù)的管理功能

1)與一般數(shù)據(jù)庫(kù)管理系統(tǒng)相同的功能:錄入更新、使用查詢、一致性維護(hù)。2)與一般數(shù)據(jù)庫(kù)不同的管理功能:信息庫(kù)管理的主要任務(wù)(1)信息之間邏輯聯(lián)系的識(shí)別與記錄。即信息庫(kù)管理模塊必須記住信息之間的邏輯聯(lián)系,如數(shù)據(jù)字典某一項(xiàng)發(fā)生變化,相應(yīng)的數(shù)據(jù)流程圖也必須隨之變更,不管是否在同一個(gè)數(shù)據(jù)中。(2)如何實(shí)現(xiàn)定量信息與文字信息的協(xié)調(diào)一致。如數(shù)字的部分修改不會(huì)引起與數(shù)字對(duì)應(yīng)的全部文字的修改。三、信息庫(kù)的管理功能1)與一般數(shù)據(jù)庫(kù)管理系統(tǒng)相同的功能:錄66四、歷史信息的處理方法

1、信息庫(kù)的另一個(gè)問(wèn)題是如何處理歷史信息。實(shí)際操作中有兩個(gè)困難:

(1)一個(gè)是歷史信息的數(shù)量太大,占用存儲(chǔ)設(shè)備過(guò)多。

大容量問(wèn)題

(2)另一個(gè)是歷史信息格式不一致,難以有效地利用。表達(dá)方式不一致問(wèn)題2、解決辦法:

(1)前一個(gè)問(wèn)題一般采用脫機(jī)備份的方法解決。即面對(duì)信息爆炸的問(wèn)題要做好脫機(jī)備份的準(zhǔn)備。

(2)解決后一個(gè)問(wèn)題是十分困難的。加強(qiáng)標(biāo)準(zhǔn)化、穩(wěn)定數(shù)據(jù)結(jié)構(gòu)只能使這個(gè)問(wèn)題得到一定程度的解決。(任何標(biāo)準(zhǔn)化都不是一成不變的,數(shù)據(jù)結(jié)構(gòu)的穩(wěn)定是相對(duì)的,變更則是絕對(duì)的。這個(gè)問(wèn)題至今尚無(wú)令人十分滿意的解決辦法)四、歷史信息的處理方法1、信息庫(kù)的另一個(gè)問(wèn)題是如何處理歷史674.4

文檔的生成與代碼的生成

除了通過(guò)屏幕上的對(duì)話獲取信息支持外,使用者從軟件開(kāi)發(fā)工具得到的最主要的幫助有兩種方式:文檔生成與代碼生成。軟件開(kāi)發(fā)工具的起點(diǎn)也就是這二者,軟件開(kāi)發(fā)工具的主要輸出成果:程序和文檔。

一、代碼生成

1、代碼生成器的基本任務(wù)根據(jù)設(shè)計(jì)要求,自動(dòng)地或者半自動(dòng)地產(chǎn)生相應(yīng)的某種語(yǔ)言的程序。輸出代碼是這個(gè)模塊的目標(biāo)。輸出的代碼有兩種情況:某種高級(jí)語(yǔ)言程序的代碼和某種機(jī)器環(huán)境下可運(yùn)行的機(jī)器指令。

4.4

文檔的生成與代碼的生成除了通過(guò)屏幕上的對(duì)話獲取信息68

①某種高級(jí)程序設(shè)計(jì)語(yǔ)言的代碼

優(yōu)點(diǎn):使用者可以在這個(gè)基礎(chǔ)上進(jìn)一步修改加工,即利用自動(dòng)生成模塊作為原型,在此基礎(chǔ)上形成自己所要求的系統(tǒng)(或系統(tǒng)的一部分)。

缺點(diǎn):功能較死,效率不高。

②某種機(jī)器(包括硬件和操作系統(tǒng))環(huán)境下可運(yùn)行的機(jī)器指令。

優(yōu)點(diǎn):可以直接運(yùn)行,如果不合要求可以立即調(diào)整命令和參數(shù)重新生成一遍。

缺點(diǎn):機(jī)器代碼一般無(wú)法直接修改,對(duì)機(jī)器的硬件軟件環(huán)境的依賴很大。

①某種高級(jí)程序設(shè)計(jì)語(yǔ)言的代碼

優(yōu)點(diǎn):使用者可以在這個(gè)基礎(chǔ)上69哪類程序易于生成?哪類程序難于生成?為什么?

一般來(lái)說(shuō),對(duì)話屏幕、輸入屏幕、輸出報(bào)表、菜單控制結(jié)構(gòu)等類型的模塊比較容易生成,因?yàn)樗鼈兊奶幚磉^(guò)程比較規(guī)范,比較容易通過(guò)一些參數(shù)來(lái)加以描述和規(guī)定。而對(duì)于統(tǒng)計(jì)分析、數(shù)據(jù)加工、決策判斷等類型的模塊則比較難以生成,因?yàn)樗鼈兊撵`活程度較大。哪類程序易于生成?哪類程序難于生成?為什么?一般來(lái)說(shuō),對(duì)話702、代碼生成器依據(jù)三方面的資料(1)信息庫(kù)里已有的有關(guān)資料。如系統(tǒng)的總體結(jié)構(gòu)、模塊間的調(diào)用關(guān)系、基礎(chǔ)數(shù)據(jù)的相關(guān)設(shè)置、屏幕報(bào)表設(shè)計(jì)要求等。保證系統(tǒng)的統(tǒng)一。(2)各種標(biāo)準(zhǔn)模塊的框架和構(gòu)件。事實(shí)上,代碼生成的技術(shù)是根據(jù)人們對(duì)某一類模塊的編程經(jīng)驗(yàn),歸納出一些一般框架或一般構(gòu)件,事先存放在機(jī)器中,在實(shí)際使用時(shí)根據(jù)當(dāng)時(shí)輸入的參數(shù),填入框架或重新組合構(gòu)件,從而形成一個(gè)新的程序段落。(3)使用者通過(guò)屏幕前的操作送入的信息。信息庫(kù)中不可能已經(jīng)存人了代碼設(shè)計(jì)所需要的全部信息,還有相當(dāng)一部分要求或參數(shù)是在編碼時(shí)才確定的。所見(jiàn)即所得的的人機(jī)界面在圖形、鼠標(biāo)、功能鍵等的配合下,方便使用者的操作。2、代碼生成器依據(jù)三方面的資料71二、文檔生成文檔生成的功能與代碼生成相比,數(shù)量更大、內(nèi)容更復(fù)雜。

文檔生成包括三大類:文章、表格、圖形?!ぎ?huà)圖已經(jīng)不是困難的問(wèn)題,困難是把圖形的含義與信息庫(kù)中的內(nèi)容有機(jī)的聯(lián)系起來(lái)。把信息庫(kù)中的內(nèi)容用人們一目了然的圖形表示出來(lái)有一定的難度?!け砀癖容^容易按信息庫(kù)當(dāng)前的內(nèi)容輸出?!の恼率亲铍y處理的。寫(xiě)好系統(tǒng)分析、設(shè)計(jì)報(bào)告或用戶手冊(cè)絕不只是技術(shù)問(wèn)題。二、文檔生成文檔生成的功能與代碼生成相比,數(shù)量更大、內(nèi)容更復(fù)72文檔生成的困難性?文檔生成比代碼生成困難得多。1、文檔內(nèi)容復(fù)雜,包括文章、表格和圖形。2、文檔沒(méi)有嚴(yán)格的語(yǔ)法規(guī)則,隨意性大,種類多,又要符合人們的習(xí)慣與要求。3、文檔中的包括表面形式和含義,需要將其建立邏輯的聯(lián)系,保持文檔各部分之間、文檔與程序之間的一致性尤其困難。一處變更,需要觸發(fā)相關(guān)各處的修改。4、文章的生成是最難處理的,這不只是技術(shù)問(wèn)題。文檔生成的困難性?734.5

項(xiàng)目管理與版本管理

·項(xiàng)目管理與版本管理的核心問(wèn)題:跨生命周期的信息管理問(wèn)題?!ろ?xiàng)目管理與版本管理的關(guān)鍵問(wèn)題:歷史信息的處理。

4.5

項(xiàng)目管理與版本管理·項(xiàng)目管理與版本管理的核心問(wèn)題74AD/Cycle的總框架中,對(duì)項(xiàng)目管理應(yīng)當(dāng)考慮的范圍給出如下規(guī)定(也就是項(xiàng)目管理的任務(wù))

(1)研究與確定開(kāi)發(fā)工作的方針與方法。如采用什么樣的階段劃分方法,采用什么樣的系統(tǒng)描述方法等。(2)開(kāi)發(fā)任務(wù)的劃分與分工。整個(gè)開(kāi)發(fā)任務(wù)如何逐層分解為具體的任務(wù),這些任務(wù)委托給什么人來(lái)做,這些任務(wù)之間的相互關(guān)系。(3)資源狀況。有多少人力、物力、設(shè)備、軟件資金,它們?cè)谧鍪裁?,是否得到充分利用等。?)人員情況。每個(gè)人進(jìn)度如何,是否需要培訓(xùn)等。(5)變更情況。需求、人員、環(huán)境的變更

(6)質(zhì)量情況。檢驗(yàn)標(biāo)準(zhǔn)是什么,誰(shuí)負(fù)責(zé)等。

一、項(xiàng)目管理內(nèi)容AD/Cycle

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論