軟件開發(fā)工具知識點(老版)_第1頁
軟件開發(fā)工具知識點(老版)_第2頁
軟件開發(fā)工具知識點(老版)_第3頁
軟件開發(fā)工具知識點(老版)_第4頁
軟件開發(fā)工具知識點(老版)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章1、什么是軟件開發(fā)工具?在高級程序設(shè)計語言的(第三代語言)的基礎(chǔ)上,為提高軟件開發(fā)的質(zhì)量和效率,從規(guī)劃、分析、設(shè)計、測試、成文和管理各方面,對軟件開發(fā)者提供各種不同程度的幫助的一類廣泛的軟件。軟件開發(fā)工具概念要點有三:(1)它是在高級程序設(shè)計語言(第三代語言)之后,軟件技術(shù)進一步發(fā)展的產(chǎn)物;(2)它的目的是在人們開發(fā)軟件過程中給予人們各種不同方面、不同程度的支持或幫助;(3)它支持軟件開發(fā)的全過程,而不是僅限于某個特定的階段。2、簡述計算機軟件發(fā)展的幾個階段。四個階段:第一代計算機語言機器語言階段。第二代計算機語言匯編語言階段。第三代計算機語言高級程序設(shè)計語言,過程化語言第四代計算機語言

2、非過程化語言(4GL)3、簡述軟件工作的重要性和困難性。軟件工作的重要性越來越為人們所認(rèn)識,軟件是計算機的靈魂,是廣大使用者與計算機之間的橋梁,是人類在各個領(lǐng)域中積累的知識的結(jié)晶,是人類文明與知識得以延續(xù)的新的載體,是人類進一步成為一個整體、得以進一步相互聯(lián)系的紐帶。人們在認(rèn)識到軟件工作的重要性的同時也越來越認(rèn)識到了它的困難性。這就是所謂的“軟件危機”問題。人類社會和客觀世界的復(fù)雜性,決定了軟件本身的復(fù)雜性;人類知識的豐富多彩,決定了軟件的多樣性;客觀世界的動態(tài)性,決定了軟件對可維護、可重用性越來越高的要求。面對規(guī)模日益擴大的軟件,如何保證它的正確性、可靠性,如何控制軟件開發(fā)的進度與成本,成為

3、十分重要的課題。4、簡述軟件開發(fā)工具的演變過程。軟件開發(fā)工具的演變是從無到有,從分散到集中的過程,是軟件發(fā)展的必然趨勢。主要分為三個階段:第一階段:利用通用軟件作為輔助工具的階段沒有專用軟件開發(fā)工具的階段。第二階段:專用的軟件開發(fā)工具階段。第三階段:集成的軟件開發(fā)工具階段。5、試述用通用軟件輔助軟件開發(fā)的弱點。用通用軟件來幫助開發(fā)人員編寫文檔或畫圖可以減少很多工作量,但是與軟件開發(fā)工作相比,這種幫助實在太表面、太初級了。用通用軟件幫助軟件開發(fā)有三個主要弱點:(1)許多工作通用軟件無法完成。(2)用通用軟件完成某些工作,只能表現(xiàn)其表面的形式,不能反映其邏輯內(nèi)涵(形似,神不似)。(3)常遇到難于保

4、持一致性的困難。6、集成化的軟件開發(fā)工具是在什么背景下產(chǎn)生的?大批專用軟件開發(fā)工具的出現(xiàn)并未解決一致性的問題。其根源在于對軟件的開發(fā)缺乏全面的、統(tǒng)一的支撐環(huán)境。這些零散的、分散的支持軟件開發(fā)各個階段、各項具體工作的專用工具之間沒有有機的聯(lián)系起來,必然造成沖突與矛盾。這對用戶造成了沉重的負(fù)擔(dān),以致抵消了使用工具帶來的益處,從而導(dǎo)致集成軟件開發(fā)工具的產(chǎn)生。7、試述軟件開發(fā)工作的發(fā)展變化。軟件開發(fā)工作的發(fā)展變化主要有四個階段:(1)最初階段把用戶已經(jīng)明確表述出來的算法,用機器語言寫成一系列機器指令,供硬件運行使用。(2)第二階段編程工作改為匯編語言進行,編好的指令由匯編程序轉(zhuǎn)化為機器指令,再交硬件執(zhí)

5、行。與用戶的距離近了。(3)第三階段匯編語言換成了高級程序設(shè)計語言(第三代語言),不再與機器指令一一對應(yīng),更加接近自然語言,離機器更遠了,離用戶更近了。(4)第四階段以應(yīng)用軟件開發(fā)工具為標(biāo)志,把需求分析納入了軟件開發(fā)工作中,進一步擴大了軟件開發(fā)的范圍。8、試述現(xiàn)階段軟件技術(shù)的特點(作為軟件技術(shù)發(fā)展的一個新階段,使用軟件開發(fā)工具與以往的區(qū)別)(1)自動化程度的提高。由于代碼生成等技術(shù)的應(yīng)用,在一些特定條件下,可以較容易地自動生成第三代語言(或更低的語言)的代碼,從而大大節(jié)省人力和時間。(2)明確地把需求分析納入軟件工作范圍之內(nèi),從而使軟件開發(fā)過程進一步向用戶方面延伸,離用戶更近了。這是軟件技術(shù)向

6、前邁進的重要一步。(3)把軟件開發(fā)工作延伸到項目及版本管理,從而超出了一次編程的局限,而擴大到了作為一個不斷發(fā)展的客體的生長完善的全過程。這也是軟件研制從個體的、手工作坊的方式向科學(xué)的、有組織、有計劃的方式轉(zhuǎn)變的一個重要表現(xiàn)。(4)吸收了許多管理科學(xué)的內(nèi)容與方法,如程序員的組織,質(zhì)量的控制,使軟件開發(fā)技術(shù)不再只是討論單個程序員自己工作的技術(shù)與方法問題,而是把組織、管理等項目負(fù)責(zé)人的思想與方法放到了更重要的位置??傊?,軟件開發(fā)工具的提出與使用,是軟件技術(shù)發(fā)展的一個新階段。9、軟件開發(fā)一般分為哪幾個階段?其主要任務(wù)和形成的文檔是什么?開發(fā)階段主 要 任 務(wù)文 檔需求分析從用戶提出的初始要求出發(fā),經(jīng)

7、過大量的調(diào)查研究,抽象出應(yīng)用領(lǐng)域中實際的信息需求,設(shè)計出在計算機系統(tǒng)內(nèi)外的、合理的信息流程,并規(guī)定軟件的功能與性能要求,最后形成嚴(yán)格的、明確的、可供實際開發(fā)使用的“軟件功能說明書”。軟件功能說明書總體設(shè)計根據(jù)軟件功能說明書的要求,完成軟件的總體設(shè)計,包括整個軟件的結(jié)構(gòu)設(shè)計、公用數(shù)據(jù)庫文件或數(shù)據(jù)庫的設(shè)計、各部分的連接方式及信息交換的標(biāo)準(zhǔn)等。系統(tǒng)的總體設(shè)計文件(結(jié)構(gòu)圖、模塊清單、公用數(shù)據(jù)結(jié)構(gòu))和各個模塊的設(shè)計任務(wù)書實現(xiàn)階段兩個并行的工作:程序的編寫與文檔的編寫程序代碼、文檔(使用說明、用戶手冊)測試階段完成模塊的調(diào)試與整個軟件的聯(lián)調(diào)測試報告10、什么是功能?軟件開發(fā)工具應(yīng)具有什么樣的功能?功能是軟

8、件能做什么事。軟件開發(fā)工具的主要功能:(1)認(rèn)識與描述客觀系統(tǒng)(2)存儲與管理開發(fā)過程中的信息(3)代碼的編寫與生成(4)文檔的編制或生成(5)軟件項目的管理11、什么是性能?軟件開發(fā)工具重要的性能指標(biāo)有哪些?性能是軟件能把事情能做到什么程度。性能指標(biāo)主要有:(1)表達能力或描述能力(2)保持信息一致性的能力(3)使用的方便程度(4)工具的可靠程度(5)對軟、硬件環(huán)境的要求12、試述軟件開發(fā)工具的類別。1)按支持的工作階段把軟件開發(fā)工具劃分成三類:(1)設(shè)計工具:在實現(xiàn)階段對人們提供幫助,是最直接幫助人們編程、調(diào)試軟件與編寫文檔的工具。如各種代碼生成器,第四代語言和測試的工具等。(2)分析工具

9、:主要用于需求分析的工具,幫助人們認(rèn)識與表述信息需求和信息流程,從邏輯上明確軟件功能與要求。如數(shù)據(jù)字典管理系統(tǒng),繪制數(shù)據(jù)流圖、系統(tǒng)結(jié)構(gòu)圖或ER圖的專用工具。(3)計劃工具:從宏觀角度看待軟件開發(fā),保存與管理的信息都是與整個項目相關(guān)的宏觀信息,完全是為項目主管人員服務(wù)的。2)按集成程度劃分成兩類:(1)專用的工具:面對某一工作階段或某一工作任務(wù)的軟件開發(fā)工具。(2)集成化的工具:是集成化的、面對軟件開發(fā)全過程的軟件開發(fā)工具。3)按與硬件、軟件的關(guān)系劃分成兩類:(1)依賴于特定機器或軟件的工具,如多數(shù)設(shè)計工具和集成化的工具。(2)獨立于硬件與軟件的工具,如分析工具和計劃工具。13、對軟件開發(fā)工具的

10、研究來源于哪些方面? 對軟件開發(fā)工具的研究主要來源于三方面:(1)軟件開發(fā)工具的使用者。他們是軟件開發(fā)工具得以發(fā)展的基礎(chǔ)。這些人員大致有兩種:一種是計算機專業(yè)出身的技術(shù)人員;一種是應(yīng)用領(lǐng)域的人員,如會計、金融、企業(yè)管理等。(2)一些廠家和研究單位。既包括一些計算機硬件的制造商,也包括一些軟件公司,如DEC、HP、ORACLE等,由此形成了軟件開發(fā)工具的研制隊伍。(3)軟件技術(shù)專家(如ACM、IEEE)和系統(tǒng)工程專家。14、學(xué)習(xí)軟件開發(fā)工具的目的是什么?作為一般的使用者,學(xué)習(xí)軟件開發(fā)工具的目的在于了解軟件開發(fā)工具的概念、理論基礎(chǔ)、基本功能、發(fā)展現(xiàn)狀與前景,以便在實際工作中正確地選擇與使用軟件開發(fā)

11、工具,在必要時能參加或組織軟件開發(fā)工具的自行研制,從而達到提高軟件工作水平與效率的目標(biāo)。軟件開發(fā)工具總結(jié):軟件開發(fā)工具非軟件開發(fā)工具專用的軟件開發(fā)工具設(shè)計工具各種代碼生成程序(代碼生成器);綜合性的第四代語言;專用于某種文檔的編寫工具;測試工具通用軟件字處理軟件(wordstar)分析工具數(shù)據(jù)字典管理系統(tǒng)(CDD、Dictionary/3000);專用于畫數(shù)據(jù)流程圖(FLOW)、ER圖或程序框圖的繪圖軟件計算機硬件;操作系統(tǒng)、匯編程序、編譯系統(tǒng);磁盤處理程序、病毒防治程序、系統(tǒng)備份;pctools;第三代高級程序設(shè)計語(C,COBOL,FORTRAN)集成的軟件開發(fā)工具IBM的AD/Cycle

12、理論框架;Rational公司的Objectory、Rose;北大青鳥系列第二章1、軟件開發(fā)中的基本問題及解決辦法是什么?(單個程序員做好軟件工作的關(guān)鍵是什么?)對單個程序員來說,做好軟件的關(guān)鍵是做好兩個轉(zhuǎn)換:第一個轉(zhuǎn)換:從用戶對軟件功能的理解到程序員對軟件功能的理解之間的轉(zhuǎn)換。第二個轉(zhuǎn)換:從程序員的理解到程序的實現(xiàn)。保證第一個轉(zhuǎn)換順利完成的手段:利用盡可能標(biāo)準(zhǔn)化的方法編寫程序設(shè)計任務(wù)書,用明確的語言或圖形、表格,把程序要處理的信息的內(nèi)容、格式、來源、去向、存儲、處理清楚地表達出來,作為雙方共同理解。保證第二個轉(zhuǎn)換順利完成的手段:提高程序員的知識水平和實際經(jīng)驗。2、大型軟件開發(fā)中的困難體現(xiàn)在哪

13、些方面?困難產(chǎn)生的原因是什么?大型軟件開發(fā)中的困難主要有:(1)一致性的保持成為十分困難的問題(2)測試的困難大大增加(3)工作進度難以控制(4)文檔與代碼的協(xié)調(diào)十分困難(5)版本更新帶來的困難困難產(chǎn)生的原因:(1)大系統(tǒng)的復(fù)雜性;(2)個人之間的組織與協(xié)調(diào);(3)各應(yīng)用領(lǐng)域間的差別; (4)時間、變化的因素。3、幾十年來,為了提高軟件開發(fā)的水平和效率人們提出了哪些軟件開發(fā)方法?面對軟件開發(fā)中的種種困難和問題,軟件工作者千方百計從各種不同角度,用各種不同方法試圖使軟件開發(fā)工作的水平和效率有大幅提高。僅從軟件開發(fā)方法而言,先后提出了:結(jié)構(gòu)化程序設(shè)計方法軟件工程方法面向?qū)ο蟮某绦蛟O(shè)計方法即插即用的

14、程序設(shè)計方法可視化程序設(shè)計方法4、大型軟件開發(fā)過程中涉及幾種角色,他們承擔(dān)的工作有哪些?大型軟件開發(fā)過程中涉及幾種角色,他們承擔(dān)的工作有:(1)用戶:提出需求、驗收軟件、使用軟件、提出修改要求(2)程序員:編程、寫文檔、調(diào)試自己的程序、向項目負(fù)責(zé)人提交工作成果(3)項目負(fù)責(zé)人:分析用戶需求形成設(shè)計方案、向程序員分配任務(wù)、驗收程序員的工作成果、對整個軟件聯(lián)調(diào)、向用戶交付使用、接收與分析用戶的修改要求、向程序員分配修改任務(wù)、驗收修改成果、向用戶提交新的版本或修改的結(jié)果(4)計算機硬件:運行、試運行5、試述結(jié)構(gòu)化程序設(shè)計的基本思想與方法(論述)。結(jié)構(gòu)化程序設(shè)計的基本思想是把程序的結(jié)構(gòu)分解成三種基本模

15、塊:處理單元、循環(huán)機制、二分決策機制,并保證模塊的劃分符合“結(jié)構(gòu)良好”的要求:(1)模塊的功能在邏輯上盡可能的單一化、明確(2)模塊間的聯(lián)系及相互影響盡可能的少(3)模塊的規(guī)模應(yīng)當(dāng)足夠小,以便其易于調(diào)試劃分模塊時采用“自頂向下”的方法,即不管軟件多大,都采取自上而下、逐步分解的辦法,分成若干部分,并把他們之間的關(guān)系明確地表達出來,畫出系統(tǒng)結(jié)構(gòu)圖,直到最底層的模塊達到所要求的規(guī)模為止。實施結(jié)構(gòu)化程序設(shè)計的思想時,要遵守以下原則:(1)限制甚至不用GOTO語句,絕對禁止超越模塊邊界的GOTO語句。(2)子程序盡可能做到只有一個入口、一個出口;(3)程序風(fēng)格應(yīng)盡量明確、清晰,包括適當(dāng)增加注釋,書寫格

16、式體現(xiàn)層次結(jié)構(gòu),變量名稱的選用盡量具有邏輯意義等;(4)在程序編寫的同時完成有關(guān)的文檔編撰,不要拖延時間。結(jié)構(gòu)化程序設(shè)計的方法主要是為程序員服務(wù)的。它的缺點是增大了程序的工作量,增加了編程中的麻煩與瑣碎的工作,降低了程序的運行效率。但它保證了軟件的可靠、準(zhǔn)確與易于修改。6、試述軟件工程的基本思想和方法(論述)。軟件工程的基本思想來源于傳統(tǒng)工程,要想大幅度地從根本上提高軟件開發(fā)的質(zhì)量和效率,就應(yīng)當(dāng)吸取各種傳統(tǒng)產(chǎn)業(yè)的成功經(jīng)驗,從組織和管理的角度加強力量,使軟件生產(chǎn)從程序員的個人勞動提高成為有組織、可控制的工程。軟件工程借鑒傳統(tǒng)工程的思想,從軟件開發(fā)的經(jīng)驗中歸納出相應(yīng)的工作步驟和交流標(biāo)準(zhǔn),大家都來遵

17、守和執(zhí)行,從而保證軟件開發(fā)的進度與質(zhì)量。軟件工程的實施方法:首先,對軟件開發(fā)的工作過程進行規(guī)范。如IBM的AD/Cycle,對應(yīng)用軟件的開發(fā)過程做了如下劃分和規(guī)定:第一階段,需求分析。了解企業(yè)的結(jié)構(gòu)與功能,掌握組織及管理者的信息需求,弄清信息流通的實際情況。第二階段,分析與設(shè)計。進行功能分解及數(shù)據(jù)分析,完成處理過程及數(shù)據(jù)庫的邏輯設(shè)計。第三階段,編程階段。完成具體的程序編寫工作。第四階段,測試階段。對已有代碼進行認(rèn)真檢測與試用。第五階段,使用及維護。組織使用者有效的使用,并及時檢查與修正發(fā)現(xiàn)的錯誤。在標(biāo)準(zhǔn)化方面主要從兩個方面探索。(1)表達方式的標(biāo)準(zhǔn)化,如統(tǒng)一規(guī)格的數(shù)據(jù)流程圖、數(shù)據(jù)字典、模塊結(jié)構(gòu)

18、圖等。(2)對工作的質(zhì)量及檢查制定標(biāo)準(zhǔn),在一定的時候作一定的檢查。如著名的ISO9001標(biāo)準(zhǔn)。軟件工程的思想主要集中于加強項目管理者的工作上,對程序員關(guān)系不大,與結(jié)構(gòu)化程序設(shè)計方法剛好互補。目前軟件開發(fā)還主要依賴程序員的個體工作,完全做到工程還是相當(dāng)困難的。7、面向?qū)ο蟪绦蛟O(shè)計的基本思想(論述)。面向?qū)ο蟮某绦蛟O(shè)計是人們試圖解決軟件危機的又一種嘗試,近年來,隨著面向?qū)ο笳Z言的普及,這種思想得到了廣泛的傳播。面向?qū)ο蟪绦蛟O(shè)計的基本思想可以歸納為四點:(1)客觀世界的任何事物都是對象,它們都有一些靜態(tài)屬性(相應(yīng)于數(shù)據(jù)結(jié)構(gòu))和相關(guān)的操作(相應(yīng)于程序模塊)。作為一個整體,這些對象不必對外公開這些屬性與

19、操作。這就是“封裝性”。(2)對象之間有抽象與具體、群體與個體、整體與部分等幾種關(guān)系。這些關(guān)系構(gòu)成對象概念之間的網(wǎng)絡(luò)結(jié)構(gòu)。(3)抽象的、較大的對象所具有的性質(zhì),包括靜態(tài)屬性和動態(tài)操作,自然地成為它的子類的性質(zhì),不必加以重復(fù)說明或規(guī)定。這就是“遺傳性”。(4)對象之間可以互送消息,這一消息可以是傳送一個參數(shù),也可以是使這個對象開始某個操作。面向?qū)ο蟪绦蛟O(shè)計語言反映了程序設(shè)計的思想方法越來越接近人們思維的方式,它摒棄了持續(xù)許久的“自頂向下”和“自底向上”的爭論,把對于復(fù)雜系統(tǒng)的認(rèn)識歸結(jié)為對一批對象及其關(guān)系的認(rèn)識,通過合理地選擇認(rèn)識的層次,使系統(tǒng)的復(fù)雜性保持在可控制的范圍內(nèi)。8、即插即用程序設(shè)計的基

20、本思想?即插即用程序設(shè)計是在面向?qū)ο蟪绦蛟O(shè)計方法的基礎(chǔ)上提出來的。它的基本思想是用制造硬件的思路來生產(chǎn)軟件。在硬件的制造中,芯片的制造與整機是分開進行的。制造芯片的廠家只管制造芯片,而制造整機的廠家則利用這些芯片組成完整的計算機。人們想用同樣的思路來處理大型軟件的開發(fā),一部分人專門生產(chǎn)軟件組件,一部分人設(shè)計整個軟件結(jié)構(gòu),并且把軟件組件插入這個結(jié)構(gòu),以便迅速完成大型軟件的研制工作。然而這種思想的真正實現(xiàn)并不那么簡單。首先,標(biāo)準(zhǔn)化的問題十分困難。其次,軟件部件的提供方式也是問題。依照這種思路,一些軟件公司或機構(gòu)已經(jīng)在標(biāo)準(zhǔn)化方面提出了方案,如著名的CORBA和COM101。9、什么樣的軟件才是好的軟

21、件?(1)正確地實現(xiàn)所要求的功能,準(zhǔn)確地給出預(yù)定的輸出結(jié)果;(2)用戶界面友好,符合實際用戶的使用習(xí)慣和知識水平;(3)具有足夠的速度(不是越快越好),能在符合用戶要求的時間限度內(nèi),給出所要求的結(jié)果;(4)具有足夠的可靠性,能夠在各種干擾下保持正常工作;(5)程序易讀,結(jié)構(gòu)良好,文檔齊全,從而保證系統(tǒng)易于修改。10、評價單個程序員的主要性能指標(biāo)是什么?就單個程序員來說,主要的指標(biāo)有: (1)具有程序設(shè)計所需要的基本知識與技能,如關(guān)于數(shù)理邏輯的知識與訓(xùn)練,關(guān)于各類數(shù)據(jù)結(jié)構(gòu)的概念及處理方法等;(2)對本項目所在的那個領(lǐng)域有較深入的了解,從而能夠準(zhǔn)確的理解用戶的信息需求,正確地把握有關(guān)的信息流程與信

22、息處理原則;(3)對于軟件開發(fā)的技術(shù)環(huán)境比較熟悉,包括硬件設(shè)備、軟件環(huán)境和網(wǎng)絡(luò)環(huán)境,特別是對于所用的語言,應(yīng)當(dāng)有足夠的、實際運用的經(jīng)驗。11、作為項目組的一員,要遵守哪些要求?作為項目組的一員,除了完成自己承擔(dān)的任務(wù)之外,重要的是使自己的工作融入整個系統(tǒng),與其他部分協(xié)調(diào)一致的工作,以下幾點必須嚴(yán)格遵守:(1)保證嚴(yán)格在本模塊內(nèi)操作,絕不要使用可能干擾其它模塊的命令或函數(shù)。 (2)嚴(yán)格按總體設(shè)計的要求和理解去傳遞參數(shù)值,絕不要隨意修改其內(nèi)容或含義。(3)在對公用的文件或數(shù)據(jù)庫進行存取時,必須完全地、準(zhǔn)確地按統(tǒng)一規(guī)定的格式去操作, 絕不能擅自改變。(4)在使用標(biāo)識符時,應(yīng)按照統(tǒng)一的原則盡量使用易于

23、看出邏輯含義的名稱。特別是涉及公用數(shù)據(jù)及參數(shù)的時候。(5)嚴(yán)格按照統(tǒng)一的要求編寫文檔,在內(nèi)容、格式、表達方式、符號使用上遵循項目組的統(tǒng)一規(guī)定。(6)盡量保持程序風(fēng)格的一致。如注釋行的安排,行首空格的使用等。12、一個好的項目組應(yīng)具備哪些條件?好的項目組是在長期工作中逐漸形成的,根據(jù)衡量項目組的CMM模型,一個好的項目組至少應(yīng)當(dāng)具備以下幾個條件:(1)有嚴(yán)格的、成文的工作規(guī)范和文檔標(biāo)準(zhǔn),而且應(yīng)當(dāng)為全體成員所熟知,并切實得到遵守。 (2)人員之間有嚴(yán)格的分工,除了程序員之外,必須有專門的秘書(負(fù)責(zé)文檔的收集、審核及保管),必須有專門的測試人員(負(fù)責(zé)測試和驗收有關(guān)的部分),特別是要有專職的、不陷入具

24、體編程的項目負(fù)責(zé)人。(3)每個項目都要事先制定詳細(xì)的時間表,并且得到嚴(yán)格執(zhí)行每一項目完成之后都有完整的資料,并得到妥善保存,一但需要修改或更新版本時可以立即使用。第三章1、簡述在軟件開發(fā)過程中,信息流通的主要內(nèi)容。軟件開發(fā)過程的信息流通狀況圖描述了各種信息在各種人員與計算機之間的流通狀況。其中涉及到四類人:用戶、分析人員、程序員和維護人員。涉及四類信息:第一類,有關(guān)環(huán)境、現(xiàn)狀及需求的信息。第二類,有關(guān)軟件的功能設(shè)計與物理設(shè)計的各種信息。第三類,軟件成果本身,包括程序和文檔。第四類,用戶對系統(tǒng)的各種變更要求,以及系統(tǒng)的各種變更記錄。是跨越開發(fā)周期的。2、軟件開發(fā)過程中涉及的信息管理工作有哪些?軟

25、件開發(fā)過程中涉及的信息管理工作包括:(1)信息的存儲(2)數(shù)據(jù)的轉(zhuǎn)換與加工: 手工形式和計算機形式之間的相互轉(zhuǎn)換; 計算機內(nèi)部不同形式數(shù)據(jù)的轉(zhuǎn)換。 (3)人與人之間的信息交流:分析人員、程序員、用戶和維護人員軟件開發(fā)工具正是為軟件開發(fā)過程中涉及的四類信息的合理存儲、正確轉(zhuǎn)化和順暢流通提供幫助的。3、軟件開發(fā)工具涉及到的理論和方法主要有哪些?第一,認(rèn)知科學(xué)中關(guān)于概念模式的概念與方法。第二,數(shù)據(jù)庫技術(shù)的理論與方法。第三,編譯技術(shù)的有關(guān)方法。第四,關(guān)于人機界面的理論與方法。第五,管理科學(xué)中關(guān)于項目管理與版本管理的理論與方法。第六,系統(tǒng)科學(xué)與系統(tǒng)工程中的有關(guān)理論與方法。4、概念模式的作用和意義。概念模

26、式是指人們在認(rèn)識事物過程中,對某一事物或某一系統(tǒng)形成的抽象的、一般化的概念框架。概念模式具有二重性意義,它既反映了客觀現(xiàn)實,同時又具有主觀性。概念模式是在客觀事物或系統(tǒng)的基礎(chǔ)上形成的,在某種程度上反映了客觀現(xiàn)實。但它又不等同于客觀事物本身,因為它常常是抽象出的某一事物的部分屬性,所以往往只反映事物的某一方面。至于選取那些屬性或哪些方面,還決定于觀察者本身的目的與狀態(tài)。概念模式的作用:(1)概念模式是人們認(rèn)識客觀世界的一種方法和工具。(2)概念模式是人們進行交流與表達的重要工具。5、舉出三種常用的概念模式,說明他們的作用與使用方法。(參考名詞解釋)6、什么是信息庫?它與數(shù)據(jù)庫、數(shù)據(jù)倉庫有什么區(qū)別

27、?信息庫是針對軟件開發(fā)或信息系統(tǒng)開發(fā)中的大量信息管理工作提出來的,它存放軟件開發(fā)全過程中所有有用信息。數(shù)據(jù)庫是指在文件系統(tǒng)基礎(chǔ)上發(fā)展起來的一種數(shù)據(jù)管理技術(shù),它的重點在于合理地組織數(shù)據(jù),體現(xiàn)出數(shù)據(jù)之間的邏輯關(guān)系,并盡可能地幫助用戶檢索,減少冗余。數(shù)據(jù)倉庫是針對大批數(shù)據(jù)的分析利用而提出的概念。基本思想是對現(xiàn)實中的大量原始數(shù)據(jù)進行多次加工與提煉,得出許多派生的或綜合的數(shù)據(jù),保證原始數(shù)據(jù)和派生數(shù)據(jù)的一致性,就是數(shù)據(jù)倉庫的任務(wù)。信息庫是一個包羅萬象的,隨著項目進展而不斷修改與補充的數(shù)據(jù)集合。它在規(guī)模上不一定像數(shù)據(jù)倉庫那么大,分析提煉的要求也與數(shù)據(jù)倉庫不同,然而作為軟件開發(fā)全過程的信息管理總樞紐,它的特點

28、是數(shù)據(jù)結(jié)構(gòu)相當(dāng)復(fù)雜,而且會不斷變化,保持一致性的任務(wù)十分艱巨。7、信息庫中應(yīng)該包括哪些內(nèi)容?(1)軟件的工作環(huán)境、功能需求、性能要求,有關(guān)的各種信息來源的狀況、用戶狀況、硬件環(huán)境以及在該領(lǐng)域中的作用等外部信息。(2)需求分析階段中收集的有關(guān)用戶的各種信息。 (3)邏輯設(shè)計階段的各種調(diào)查材料和由此生成的各種文檔調(diào)查記錄、原始數(shù)據(jù)、報表及單證的樣本、繪制的各種圖、系統(tǒng)說明書。(4)設(shè)計階段的各種資料數(shù)據(jù)庫與數(shù)據(jù)文件格式、數(shù)據(jù)字典、程序模塊的要求、總體結(jié)構(gòu)、各種接口及參數(shù)的傳遞方式、設(shè)計方案。(5)編程階段的所有成果程序代碼、框圖、變量說明、測試情況、驗收報告、使用說明。(6)運行及使用情況的詳細(xì)記

29、錄。(7)維護及修改的情況。(8)項目管理的有關(guān)信息,版本信息。8、信息庫應(yīng)具備哪些管理功能?1)一般數(shù)據(jù)庫的基本功能:增、刪、改操作2)特殊功能:(1)把計算機內(nèi)外的信息存儲統(tǒng)一起來管理規(guī)定復(fù)雜的內(nèi)部結(jié)構(gòu)以存放信息。(2)面對分析人員、程序員和維護人員等不同的對象,他們有各自的權(quán)限和使用目標(biāo)需要認(rèn)真設(shè)計有關(guān)的界面以便使用。9、信息庫應(yīng)該如何保持一致性?(1)信息庫中的內(nèi)容一般不刪除,老信息加上時間標(biāo)志移入歷史信息中,并與新信息保持著歷史的、邏輯的聯(lián)系,在需要時可以隨時調(diào)出來。 (2)由多個程序模塊組成的大型軟件系統(tǒng)中,如何保證某個模塊更新后與其它模塊一起構(gòu)成一個新的版本。(3)保證程序和使用

30、手冊之間的一致性。(4)對國際性的大軟件公司來說,各種語言的資料之間的一致性同樣需要認(rèn)真地、細(xì)致的組織與安排。10、用戶界面設(shè)計的基本原則是什么?(1)用戶界面的主要功能是通信。 (2)界面必須始終一致。 (3)界面必須使用戶隨時掌握任務(wù)的進展情況。(4)界面必須能提供幫助。 (5)寧可讓程序多干,不可讓用戶多干。11、IBM的AD/Cycle框架中,應(yīng)用系統(tǒng)框架SAA(系統(tǒng)應(yīng)用體系結(jié)構(gòu))由哪幾部分構(gòu)成?具體內(nèi)容是什么?構(gòu)成硬件平臺用戶接口CUA程序員接口CPI通信接口CCS內(nèi)容鍵盤操作、屏幕滾動、菜單選擇、幫助系統(tǒng)、鼠標(biāo)操作、色彩應(yīng)用、數(shù)據(jù)錄入、信息顯示語言:過程化語言、非過程化語言、生成器

31、服務(wù):數(shù)據(jù)庫查詢、對話顯示、通信服務(wù)面向?qū)ο蟮慕Y(jié)構(gòu)、數(shù)據(jù)流、應(yīng)用服務(wù)、作業(yè)管理、網(wǎng)絡(luò)管理、數(shù)據(jù)安全控制12、人機界面的技術(shù)手段有哪些?(包含在11題中)13、與一般日常生產(chǎn)管理相比,項目管理的突出特點是什么?(1)子任務(wù)多,關(guān)系復(fù)雜。(2)任務(wù)不可重復(fù),形勢不斷變更。(3)組織協(xié)調(diào)的任務(wù)十分突出,資源浪費閑置的風(fēng)險與合理地優(yōu)化組合、提高效益的機會并存。 (4)信息處理工作的作用與意義更為突出。14、項目管理的基本目標(biāo)是什么?(1)使產(chǎn)品(或工程)的質(zhì)量得到有效的控制。 (2)保證整個系統(tǒng)按預(yù)定的進度完成。(3)有效的利用各種資源,盡可能使資源的閑置與浪費減少。(4)控制與降低成本。15、版本管

32、理的核心是什么?具體方法有哪些?版本管理的核心是保持兩個一致性:從時間上說,要保證系統(tǒng)的逐步完善,以前達到的結(jié)果不丟失,需要時可以回溯,必要時可以重用;每一步新的進步都要切實與以前的工作一致,是改進而不是破壞或者降低系統(tǒng)的已有功能。從系統(tǒng)各部分之間的關(guān)系上說,要求局部與整體保持一致,合理地判斷每一次修改的必要性及影響范圍,合理地組成每一個新版本,并通過命名、編號等方法,使新的版本成為系統(tǒng)進步的漫長過程中的一個臺階,一個有目的、有方向的穩(wěn)定的進步。版本管理的具體方法:規(guī)定長遠的版本更新計劃;制定版本有關(guān)的信息范圍及收集、管理方法;在項目組內(nèi)明確分工;在編程、測試、文檔編寫等工作中貫穿項目管理的思

33、想及要求。第四章1、完整的、一體化的軟件開發(fā)工具應(yīng)具備哪些基本功能?(1)提供描述軟件狀況及其開發(fā)過程的概念模式,協(xié)助軟件開發(fā)人員認(rèn)識軟件工作的環(huán)境與要求、合理地組織與管理軟件開發(fā)的過程。(2)提供存儲和管理有關(guān)信息的機制與手段。(3)幫助使用者編制、生成及修改各種文檔。(4)幫助使用者編寫程序代碼,即代碼生成。(5)對于歷史信息進行跨生命周期的管理,把項目運行與版本更新的有關(guān)信息科學(xué)地管理起來。2、一體化的軟件開發(fā)工具包括那幾個主要部分?(1)總控和人機界面中心位置,使用者和工具間的橋梁,工具實用性和靈活性的保證。(2)信息庫和信息庫管理模塊工具功能與作用的最基本依據(jù)。(3)文檔生成和代碼生

34、成兩個重要輸出(4)項目管理和版本管理跨周期信息共享、知識重用、軟件重用的關(guān)鍵問題。3、為什么說總控和人機界面是系統(tǒng)開放性和靈活性的關(guān)鍵?總控和人機界面是使用者和軟件開發(fā)工具之間交流信息、實現(xiàn)所有的支持功能的橋梁。這一部分的有效實現(xiàn)對于軟件開發(fā)工具來說,是實用性和靈活性的主要保證。一方面,人機界面面對不同類型的用戶,這些用戶既有區(qū)別,又有共性,人機界面既要保持統(tǒng)一和一致,又要能夠在正確區(qū)分和識別用戶的基礎(chǔ)上,針對不同用戶的要求與習(xí)慣提供有效的幫助。另一方面,總控部分面對系統(tǒng)內(nèi)部的各種功能與各種信息,它要保證各部分之間相互的協(xié)調(diào)一致,保證各部分之間信息有效地、準(zhǔn)確地流通。4、為什么說總控和人機界

35、面處于軟件開發(fā)工具的中心位置?(1)作為一個完整的、一體化的軟件開發(fā)工具,總控和人機界面提供了各個工作環(huán)節(jié)之間的協(xié)調(diào)與配合,并在用戶面前保持統(tǒng)一的形象。(2)實際工作中,常采用來自不同廠家的單項工具,由使用者自己承擔(dān)集成的任務(wù)。這種情況下,最關(guān)鍵的問題是把前半段工作的輸出準(zhǔn)確無誤地轉(zhuǎn)化為后半段工作要求的輸入。解決這個問題的實質(zhì)就是設(shè)立一個有效的總控部分,能夠在各個具體工具之上實現(xiàn)信息的正確傳遞與轉(zhuǎn)換,從而形成一個統(tǒng)一的、完整的支撐環(huán)境,并通過一個統(tǒng)一的、友好的人機界面與用戶對話。因此無論是建立一體化的軟件開發(fā)工具,還是把單項功能的工具集成起來,總控部分和人機界面都處于中心位置。5、總控和人機界

36、面設(shè)計的原則是什么?(1)面向使用者(用戶)的原則(2)保證各部分之間信息的準(zhǔn)確傳遞(3)保證系統(tǒng)的開放性或靈活性理想的系統(tǒng)結(jié)構(gòu)應(yīng)當(dāng)是模塊式的,易于剪裁的。6、IBM的AD/Cycle將軟件開發(fā)過程分為幾個階段?每個階段的任務(wù)是什么?IBM的AD/Cycle將軟件開發(fā)過程的每個周期分為五個階段: 需求分析,建立邏輯模型(企業(yè)模型,數(shù)據(jù)模型,信息流通模型)。 分析設(shè)計,完成系統(tǒng)的總體設(shè)計。 編碼,具體編寫軟件的階段。 測試,對已經(jīng)完成的各個模塊或子系統(tǒng)進行試算、調(diào)整,以最終形成完整的軟件。 運行維護,組織和管理軟件的日常運行,收集運行中的狀態(tài)信息及出現(xiàn)的問題并及時進行局部修改與完善。7、信息庫技

37、術(shù)主要涉及哪些問題?信息庫的技術(shù)主要涉及四個問題:信息庫的內(nèi)容、信息庫的組織方式、信息庫的管理功能、歷史信息的處理方法。8、信息庫中應(yīng)包含哪些內(nèi)容?(1)關(guān)于軟件應(yīng)用的領(lǐng)域與環(huán)境的狀況。(2)設(shè)計成果,包括邏輯設(shè)計與物理設(shè)計的成果。(3)運行狀況的記錄。(4)有關(guān)項目管理與版本管理的信息。9、信息庫的組織方式有幾種?各自的優(yōu)缺點是什么?組 織 方 式特 點集中存儲優(yōu)點:充分利用已有的數(shù)據(jù)庫技術(shù),較容易保持一致性。缺點:與模塊化的要求相沖突。 分散存儲優(yōu)點:易于變更和剪裁,一旦某一部分發(fā)生變更,不致影響整個系統(tǒng)。缺點:每個模塊都要自己進行一整套刪改操作,各部分間的一致性無從保證。 邏輯上統(tǒng)一、物

38、理上分散(信息庫管理模塊)通過信息庫管理模塊對分散的各數(shù)據(jù)庫進行存取,并進行一致性檢查與維護,使數(shù)據(jù)庫與模塊都實現(xiàn)了模塊化,保持了一致性和靈活性。 10、信息庫管理模塊的作用是什么?它應(yīng)該具備哪些功能?1)與一般數(shù)據(jù)庫管理系統(tǒng)相同的功能:錄入更新、使用查詢、一致性維護。2)與一般數(shù)據(jù)庫不同的管理功能: (1)信息之間邏輯聯(lián)系的識別與記錄。(2)如何實現(xiàn)定量信息與文字信息的協(xié)調(diào)一致。11、信息庫中對歷史信息的處理有哪些困難?解決辦法是什么?信息庫管理中歷史信息的處理是一個重點和難點,主要存在兩個困難:(1)歷史信息的數(shù)據(jù)太大,占用存儲設(shè)備過多;(2)歷史信息格式不一致,難以有效利用。第一個問題的

39、解決一般采用脫機備份的方法。第二個問題至今尚無令人滿意的解決辦法,加強標(biāo)準(zhǔn)化,穩(wěn)定數(shù)據(jù)結(jié)構(gòu)不能完全解決這個問題。需要用一些智能化方法,使得跨生命周期的信息得以相互轉(zhuǎn)化、實現(xiàn)共享與重用。12、代碼生成的輸出形式有幾種?各有什么特點?代碼生成的輸出主要有兩種形式:(1)某種高級程序設(shè)計語言的代碼優(yōu)點:使用者可以利用自動生成的模塊為原型,在此基礎(chǔ)上修改加工,形成自己所要求的系統(tǒng)或系統(tǒng)的某一部分。缺點:功能較死,效率不高,需要修改(2)某種機器環(huán)境下可運行的機器指令優(yōu)點:可以直接運行,如果不合要求可以立即調(diào)整命令或參數(shù)重新生成一遍。缺點:這種代碼一般無法直接修改,對硬件環(huán)境的依賴性大,用的不多。13、

40、代碼生成器依據(jù)哪些資料工作?代碼生成器依據(jù)三方面的資料:(1)信息庫里已有的有關(guān)資料(2)各種標(biāo)準(zhǔn)模塊的框架和構(gòu)件(3)使用者通過屏幕臨時送入的信息14、簡述項目管理中應(yīng)考慮的問題(項目管理的任務(wù)包括哪些方面?)(1)研究與確定開發(fā)工作的方針與方法。如采用什么樣的階段劃分方法,什么樣的系統(tǒng)描述方法等。(2)開發(fā)任務(wù)的劃分與分工。整個開發(fā)任務(wù)如何逐層分解為具體任務(wù),任務(wù)之間的相互關(guān)系(順序、制約等),委托給什么人來做。(3)資源情況。有多少人力、物力、設(shè)備、軟件、資金,是否得到充分利用,是否需要增加投入。 (4)人員情況。個人進度、技術(shù)水平如何,是否需要重新培訓(xùn),是否需要調(diào)動工作。(5)變更情況

41、。需求、環(huán)境、人員、設(shè)備、技術(shù)的變更。(6)質(zhì)量情況。檢驗得標(biāo)準(zhǔn)是什么,如何檢驗,由誰來檢驗,用什么數(shù)據(jù)檢驗。15、版本管理的主要內(nèi)容?版本管理的主要內(nèi)容包括:各版本的編號,功能改變,模塊組成,文檔情況,推出時間,用戶數(shù)量,用戶反映,封存情況等。第五章1、怎樣權(quán)衡購置還是自行開發(fā)軟件開發(fā)工具?必須考慮的因素有哪些?購買市場上已有的軟件開發(fā)工具的優(yōu)勢是能夠幫助人們在某些環(huán)節(jié)上完成簡單的、重復(fù)性的工作;在項目規(guī)模比較大的時,可以使工作的組織管理比較規(guī)范、信息的管理與檢索比較方便,部分做到信息與知識的重用和共享。劣勢是價格比較昂貴;真正經(jīng)過考驗的、一體化的工具不多,其作用與可靠程度不盡如人意。自己開

42、發(fā)軟件工具的優(yōu)勢是目標(biāo)明確,符合需要,便于進一步擴充和升級,不存在引進外面產(chǎn)品時的沖突與不一致。如果做的順利還可以做成軟件產(chǎn)品出售。劣勢是單項的、專用的工具比較好開發(fā);商品化、集成化的工具開發(fā)困難,需要大量人力物力,非一般單位所能承受。購置與開發(fā)的權(quán)衡,必須考慮以下四個因素:(1)準(zhǔn)備開發(fā)的軟件的性質(zhì)與要求-權(quán)衡購置還是自行開發(fā)的最基本因素(2)開發(fā)人員對支持工作與支持程度的實際需要(3)工作環(huán)境(硬件配置、操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)、網(wǎng)絡(luò)通信等)(4)人員的因素2、在選擇軟件開發(fā)工具之前要明確哪些問題?在選擇軟件開發(fā)工具之前,首先要清楚此次引入工具要達到怎樣的目標(biāo),下面幾點必須明確:(1)為哪

43、個軟件開發(fā)項目而使用工具,為了一個項目還是為了一批項目而購置軟件開發(fā)工具,為哪一種類型的項目而購置這些工具?(2)在哪個工作階段使用工具,是單在代碼生成或文檔生成中使用工具,還是準(zhǔn)備長期開發(fā)、不斷更新版本?(3)工具將供哪些人使用,這些人以前用過工具沒有,他們熟悉的語言、開發(fā)環(huán)境、表達圖示、交流方式是什么?這些人對于使用工具的態(tài)度、期望、可塑性如何?(4)工具將在怎樣的軟件、硬件環(huán)境下運行,機器的速度、內(nèi)存、外圍設(shè)備、通信條件如何?3、對軟件開發(fā)工具的市場調(diào)查應(yīng)包括哪些內(nèi)容?(1)工具的功能。 (2)工具的性能。 (3)工具所使用或依據(jù)的開發(fā)方法或開發(fā)理論與自己的方法、理論是否一致。(4)工具

44、的運行環(huán)境。(5)這些工具的文檔資料是否齊全?使用時的學(xué)習(xí)、掌握是否簡單易行?(6)這些工具的服務(wù)、培訓(xùn)條件如何? (7)價格。4、購置軟件開發(fā)工具的步驟應(yīng)當(dāng)如何安排?(1)明確購買工具的目的與要求-正確使用工具的基礎(chǔ)工作。(2)明確購買工具的環(huán)境條件與制約條件。(3)市場調(diào)查。 (4)對可供選擇的各種工具進行綜合比較。 (5)進行測試和檢驗。 (6)正式簽約購置。包含了技術(shù)洽談和各種服務(wù)條件的確認(rèn)。(7)安裝與試用。5、引入軟件開發(fā)工具后的組織管理工作包括哪些?購置工具后,使用者必須對它的使用過程進行認(rèn)真地組織與管理,主要包括四個方面:(1)制定嚴(yán)格的使用制度。(2)記錄使用的詳細(xì)過程。(3

45、)培訓(xùn)使用人員。(4)經(jīng)常進行審計與評價工作。6、對軟件開發(fā)工具進行審計的范圍是什么?包括哪些問題?審計的范圍包括:工具的使用環(huán)境、人員、工作負(fù)擔(dān)、效果、存在的問題、改進的方向等。審計的問題:參加教材P86。7、研制為自己所用軟件開發(fā)工具要注意哪些問題?研制商品化的軟件開發(fā)工具應(yīng)注意哪些問題?二者有什么區(qū)別?1)為自己使用而開發(fā)軟件工具時應(yīng)注意的問題: (1)需要從實際出發(fā),設(shè)定現(xiàn)實的、有限的目標(biāo)。 (2)自行開發(fā)工具一定要堅持短小實用、逐步積累,避免期望過高、貪大求全。(3)要注意文檔的齊全與資料的積累。2)開發(fā)商品化的軟件工具時應(yīng)注意的問題:(1)必須十分謹(jǐn)慎地設(shè)定目標(biāo)和要求,使之符合實際

46、。(2)在前人工作的基礎(chǔ)上,把精力集中于進一步的開拓方面,而不是低水平的重復(fù)別人已經(jīng)做過的工作。(3)明確工具的適用范圍與使用條件。工具的目標(biāo)越具體、越明確越能發(fā)揮作用。(4)注重服務(wù)與文檔決定其成敗的首要因素。開發(fā)面向?qū)嶋H應(yīng)用領(lǐng)域的、商品化的軟件工具,其難度要比為自己開發(fā)工具的難度大得多。第六章1、使用配置管理軟件的好處是什么?對軟件開發(fā)商來說,一方面,可以在軟件開發(fā)過程中建立起一套完整規(guī)范的開發(fā)管理環(huán)境,使軟件的開發(fā)有條不紊,進入良性循環(huán),軟件開發(fā)的質(zhì)量和效率穩(wěn)步上升;另一方面,若軟件產(chǎn)品中集成了配置管理軟件或提供了與配置管理軟件連接的界面,他的產(chǎn)品即與通用的標(biāo)準(zhǔn)靠攏,從而將面向更關(guān)闊的用

47、戶群,擁有長遠的發(fā)展前景。對最終用戶來說,在軟件項目中使用配置管理軟件,可以提高軟件產(chǎn)品的質(zhì)量、縮短工程周期、降低項目風(fēng)險、從而使得開發(fā)者的投資利益得到保證,而且規(guī)范化的文檔真正確保了日后維護和升級且便于用戶監(jiān)督開發(fā)過程。2、軟件配置管理的版本控制主要解決哪些問題?(1)根據(jù)不同用戶的需要配置不同的系統(tǒng)(2)保存系統(tǒng)老版本(3)建立一個系統(tǒng)新版本,使它包含某些決策而拋棄另一些決策(4)支持兩位以上的程序員同時在一個項目中工作(5)高效存儲項目的多個版本3、版本控制軟件PVCS Version Manager的主要功能是什么?(1)管理和保護軟件資源,強化團隊開發(fā),避免開發(fā)過程中產(chǎn)生的各種變化對

48、軟件開發(fā)造成的風(fēng)險。(2)進行審計追蹤,監(jiān)督開發(fā)人員對軟件所作的任何修改,記錄是誰做的修改,修改了什么,何時進行的修改以及為什么修改,確保過程的一致性和可重復(fù)性,減少未經(jīng)授權(quán)或重復(fù)的軟件變更。 (3)管理開發(fā)對象的多重修定版本和軟件系統(tǒng)的多重版本,防止由于相互覆蓋造成的工作丟失,便于開發(fā)人員和用戶對軟件系統(tǒng)的多重版本進行維護和管理。(4)積累軟件資源,加強軟件重用,健全開發(fā)文檔,減少人員流動導(dǎo)致的軟件維護困難,減少項目風(fēng)險,縮短生產(chǎn)周期,提高產(chǎn)品可靠性,有效控制產(chǎn)品成本。(5)支持多平臺開發(fā),版本管理還可以支持在多個平臺上對同一個項目文件的修改。4、Version Manager的技術(shù)特點體現(xiàn)

49、在哪些方面?(1)靈活的文件夾機制。 (2)支持多開發(fā)平臺間的操作,極大的方便了分布式以及大型團隊開發(fā)。 (3)支持長文件名。(4)開發(fā)時間較早,技術(shù)成熟,市場占有率最大,既可以單獨工作,也可同PVCS的其他七個支持軟件開發(fā)的產(chǎn)品協(xié)同工作,相得益彰。(5)最為重要的是,它擁有全面的、多方位的功能,無論是對小型軟件的編制還是大型軟件的開發(fā),都可以提供有力的支持,用途很廣。5、Version Manager中采用了哪些機制?(1)使用文件夾組織相關(guān)文件,便于管理、使用項目文件;(2)使用歷史文檔,存儲一個文件的多個版本;(3)將文件加鎖,防止并發(fā)訪問對數(shù)據(jù)的破壞;(4)使用標(biāo)簽及升級功能標(biāo)志項目開

50、發(fā)的各個階段;(5)使用分支/合并機制支持并行開發(fā)。6、PowerModel的體系結(jié)構(gòu)是怎樣的?包含哪些內(nèi)容?有什么優(yōu)勢?Power Model的體系結(jié)構(gòu)是模塊式的、分層的。(1)基層是核心層,包括一套核心功能程序,如對象管理程序、對象查詢語言等,連同一全套的C語言API;(2)基層上面是研制層,其中有GUI構(gòu)造程序,對象瀏覽程序、交互的C環(huán)境;(3)最頂層是應(yīng)用層,其中有研制者編制的類和方法,以及各種類庫,包括專門窗戶系統(tǒng)用的一套GUI組件。這樣分層、分模塊的好處是:應(yīng)用時,只取用在執(zhí)行時需要從系統(tǒng)中取用的部分,就能得到小而有效的程序。而且便于擴充和修改。7、LiveModel提供了哪些面向

51、對象工具,各自有什么作用?(1)對象繪圖者(Object Diagrammer)用以圖像地建立對象,并規(guī)定它們之間的關(guān)系。(2)事件繪圖者(Event Diagrammer )用以表示業(yè)務(wù)過程流,即業(yè)務(wù)過程、操作、規(guī)則之間的連接。(3)業(yè)務(wù)規(guī)則(Business Rules)及規(guī)則編輯程序(Rule Editor)業(yè)務(wù)規(guī)則記載有用的業(yè)務(wù)政策和決定;規(guī)則編輯程序?qū)I(yè)務(wù)規(guī)則進行編寫和成檔。(4)測試(Testing)及文檔建立(Documentation )8、什么是XML?其本質(zhì)是什么?一個XML文件必須滿足哪些原則?XML是可擴展的標(biāo)記語言,是SGML(標(biāo)準(zhǔn)通用標(biāo)記)的一個子集,目標(biāo)是面向We

52、b。其本質(zhì)是使標(biāo)記對人和機器都可讀。XML文檔必須組織良好,應(yīng)滿足三項基本原則:(1)文檔以XML定義?<? xml version=”1.0”?>開始(2)有一個包含所有其他內(nèi)容的根元素,如<list>和</list>標(biāo)記符。(3)所有元素必須合理地嵌套,不允許交叉嵌套。9、XML與HTML的區(qū)別?HTML超文本標(biāo)記語言;XML可擴展的標(biāo)記語言。(1)HTML 描述如何顯示W(wǎng)eb頁中的數(shù)據(jù);XML描述的是數(shù)據(jù)本身。(2)HTML 中的數(shù)據(jù)是有限的、規(guī)定好的;XML的標(biāo)記是無限的,是可以自己創(chuàng)建的。它允許我們將數(shù)據(jù)組織成數(shù)據(jù)結(jié)構(gòu),甚至是復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。(3)

53、HTML 允許我們將字體設(shè)置為粗體或斜體;XML則說明標(biāo)記中的文本數(shù)據(jù)表示的是什么含義,適合對象Web存儲。10、試比較國內(nèi)、外軟件開發(fā)工具的發(fā)展?fàn)顩r從軟件開發(fā)工具的研究水平上看,國內(nèi)并不比國外低,主要的差別在于沒有廣泛地使用這些工具??偟膩碚f,我國的軟件產(chǎn)業(yè)還沒有形成一批穩(wěn)定的、高度有組織的軟件開發(fā)群體,因而能夠真正發(fā)揮軟件開發(fā)工具作用的環(huán)境與社會需求還不具備。我國軟件產(chǎn)業(yè)當(dāng)務(wù)之急是大力普及軟件工程及方法學(xué)的知識,提高軟件開發(fā)工作的水平,這才能使軟件開發(fā)工具的應(yīng)用具有實踐的基礎(chǔ)。11、軟件開發(fā)工具發(fā)展的趨勢是什么?(結(jié)合名詞解釋)軟件開發(fā)工具的發(fā)展方向(1)智能化。如:Knowledge W

54、are公司開發(fā)的以知識處理為基礎(chǔ)的工具(2)網(wǎng)絡(luò)化。如:專門用于網(wǎng)絡(luò)環(huán)境的HTML、Java(3)一體化。信息庫的內(nèi)容和處理功能的討論,從理論上為實現(xiàn)一體化提供了基礎(chǔ)(4)標(biāo)準(zhǔn)化。圍繞這一思想提出的一些標(biāo)準(zhǔn)如:CORBA、COM101附錄1 1、PB的功能有哪些?PB為應(yīng)用程序開發(fā)提供了全面綜合性的支持,其功能可以概括為:支持面向?qū)ο蟮某绦蛟O(shè)計采用可視化的開發(fā)環(huán)境事件驅(qū)動的應(yīng)用程序?qū)崿F(xiàn)和多種數(shù)據(jù)庫的連接支持跨平臺開發(fā)提供Power Script語言和函數(shù)支持Internet開發(fā)支持分布式應(yīng)用程序2、PB訪問數(shù)據(jù)庫的接口軟件有哪些?各有什么特點?PB通過各種不同的數(shù)據(jù)庫接口軟件與不同的數(shù)據(jù)庫進行

55、連接。 PB訪問數(shù)據(jù)庫的接口軟件有兩類:通用的ODBC接口軟件和專用的數(shù)據(jù)庫接口軟件。通過ODBC連接到數(shù)據(jù)庫的方式運行速度較慢,通過專用的數(shù)據(jù)庫接口軟件會提高訪問數(shù)據(jù)庫的速度。3、試述ODBC的含義和作用。ODBC開放數(shù)據(jù)庫連接,是微軟公司提出的允許應(yīng)用程序使SQL查詢數(shù)據(jù)的標(biāo)準(zhǔn)。該接口可使單一的應(yīng)用程序訪問不同的數(shù)據(jù)庫管理系統(tǒng)。開發(fā)人員不必針對特定的DBMS開發(fā)、編譯和發(fā)布應(yīng)用程序,而是通過對應(yīng)用程序加載不同數(shù)據(jù)庫驅(qū)動程序來建立與相應(yīng)數(shù)據(jù)庫系統(tǒng)的連接。4、試述在PowerBuilder中程序訪問多個數(shù)據(jù)庫的方法。PB利用內(nèi)部的一個全局事物對象SQLCA與數(shù)據(jù)庫管理系統(tǒng)進行通信。SQLCA一

56、次只能和一個數(shù)據(jù)庫建立連接,若想訪問多個數(shù)據(jù)庫,有兩個辦法:(1)順序?qū)QLCA與每個數(shù)據(jù)庫建立連接。即將SQLCA與一個數(shù)據(jù)庫連接,對數(shù)據(jù)庫操縱完成后,斷開與該數(shù)據(jù)庫的連接,再與下一個數(shù)據(jù)庫進行連接。(2)在程序中創(chuàng)建多個事物對象,然后將每個事物對象與一個數(shù)據(jù)庫建立連接,通過不同的事務(wù)對象操縱不同的數(shù)據(jù)庫。5、簡述在Internet&Intranet領(lǐng)域分布式應(yīng)用程序的優(yōu)點。分布式應(yīng)用程序是一種三級系統(tǒng)結(jié)構(gòu),就是在C/S(客戶機/服務(wù)器)兩極結(jié)構(gòu)中再增加一個中間級應(yīng)用服務(wù)器,用以執(zhí)行復(fù)雜的商業(yè)邏輯計算。在Internet&Intranet領(lǐng)域,使用分布式應(yīng)用程序的主要優(yōu)點為:(1)將商業(yè)邏輯集中于服務(wù)器端(2)在客戶機和服務(wù)器之間劃分應(yīng)用程序功能,可以減少客戶端的負(fù)擔(dān)(3)建立分級的應(yīng)用程序 ,易于維護6、PB應(yīng)用程序中有哪些對象類型?PB應(yīng)用程序中是一個相互關(guān)聯(lián)的對象集合

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論