資源描述:
《軟件開(kāi)發(fā)工具》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、1.1軟件開(kāi)發(fā)工具的由來(lái),1.軟件開(kāi)發(fā)工具的范圍定義:在高級(jí)程序設(shè)計(jì)語(yǔ)言的基礎(chǔ)上,為提高軟件開(kāi)發(fā)的質(zhì)量和效率,從規(guī)劃、分析、設(shè)計(jì)、測(cè)試、成文和管理各方面,對(duì)軟件開(kāi)發(fā)者提供各種不同程度的幫助的一類(lèi)廣泛的軟件。(P1)2.計(jì)算機(jī)語(yǔ)言的發(fā)展階段:第一代:機(jī)器語(yǔ)言;第二代匯編語(yǔ)言;第三代:高級(jí)程序設(shè)計(jì)語(yǔ)言;第四代:非過(guò)程化語(yǔ)言(P2)3.非過(guò)程化語(yǔ)言的思想:人們希望機(jī)器能自動(dòng)地完成更多的工作,包括自動(dòng)安排某些工作順序,二做到只要給機(jī)器下達(dá)需要做什么的命令,由機(jī)器自己去安排執(zhí)行的順序。(P3)4.通用軟件的弱點(diǎn):1。由許多工作是通用軟件不能完成的;2。某些工作只
2、能表現(xiàn)表面的形式,不能反映其邏輯內(nèi)涵;3。難于保持一致性的困難。P45.IBM的AD/Cycle失敗的原因(兩個(gè)):1。拘泥于集中式的處理思路;2。背離了開(kāi)放性的大趨勢(shì)1.2件開(kāi)發(fā)工具的概念1.軟件開(kāi)發(fā)工具的概念要點(diǎn):(繼承性與創(chuàng)新)a它似在高級(jí)程序設(shè)計(jì)語(yǔ)言(第三代)之后,軟件技術(shù)進(jìn)一步發(fā)展的產(chǎn)物;b它的目的是在人們開(kāi)發(fā)軟件過(guò)程中給予人們各種不同方面、程度的支持或幫助c支持軟件開(kāi)發(fā)的全過(guò)程,而不是僅限于編碼或其它的特定工作階段。P52.硬件和軟件的關(guān)系:硬件是軀體,軟件是靈魂。3.軟件的特性:軟件是看不見(jiàn),莫不著的但是發(fā)揮重要作用的事先編好的指令系列。
3、軟件是用戶與硬件之間的橋梁。軟件包括程序和文檔兩個(gè)不可缺少的組成部分。4.軟件開(kāi)發(fā)的發(fā)展里程(四個(gè)):就是四個(gè)階段5.軟件開(kāi)發(fā)工具學(xué)(也即軟件開(kāi)發(fā)工具)和軟件開(kāi)發(fā)方法學(xué)的區(qū)別:前者著重于實(shí)際應(yīng)用和工具開(kāi)發(fā);后者著重于方法論的研究;后者是前者的理論基礎(chǔ)1.3軟件開(kāi)發(fā)工具的功能和性能1.軟件開(kāi)發(fā)過(guò)程(階段、成果)第一階段:出始要求的提出成果:軟件功能說(shuō)明書(shū)第二階段:總體設(shè)計(jì)成果:系統(tǒng)的總體設(shè)計(jì)文件及各個(gè)模塊的設(shè)計(jì)任務(wù)書(shū)第三階段:程序的編寫(xiě)和文檔的編寫(xiě)(實(shí)現(xiàn)階段)第四階段:測(cè)試或調(diào)試階段包括:模塊的調(diào)試和整個(gè)軟件的聯(lián)調(diào)(P10—11)2.軟件開(kāi)發(fā)工具的功能:
4、(做什么)a認(rèn)識(shí)與描述客觀系統(tǒng);b儲(chǔ)存和管理開(kāi)發(fā)過(guò)程中的信息;c代碼的編寫(xiě)或生成;d文檔的編制和生成;e軟件項(xiàng)目管理(P11—12)1.1軟件開(kāi)發(fā)的性能:(做到什么程度)a表達(dá)能力或描述能力;b保持信息一致性的能力;c使用方便程度;d工具可靠程度;e
對(duì)硬件和軟件環(huán)境要求(P13)1.軟件開(kāi)發(fā)工具的類(lèi)別1.按工作階段劃分:a設(shè)計(jì)工具(第四代語(yǔ)言和幫助人們進(jìn)行測(cè)試的工具);b分析工具(支持需求分析)c計(jì)劃工具1.按集成程度劃分:a專(zhuān)用的b集成化的軟件(軟件工作環(huán)境)3.按硬件和軟件的關(guān)系劃分:a依賴(lài)于特定的計(jì)算機(jī)或特定的軟件*大多是審計(jì)工具;b獨(dú)立于硬件
5、和其他的軟件2.開(kāi)發(fā)軟件的研究和應(yīng)用1.應(yīng)用軟件的開(kāi)發(fā)隊(duì)伍:a計(jì)算機(jī)專(zhuān)業(yè)出生的技術(shù)人員;b來(lái)個(gè)各個(gè)應(yīng)用領(lǐng)域非計(jì)算機(jī)專(zhuān)業(yè)的人兩類(lèi)人是軟件開(kāi)發(fā)工具產(chǎn)生和發(fā)展的動(dòng)力2.1軟件開(kāi)發(fā)中的困難1.兩類(lèi)基本問(wèn)題:18-19a用戶對(duì)軟件功能的理解和程序員對(duì)軟件功能的理解之間的轉(zhuǎn)換b人很機(jī)器之間交流和協(xié)調(diào)的問(wèn)題。2.大型軟件開(kāi)發(fā)的困難:20a一致性的保持成為十分困難的問(wèn)題;b測(cè)試的困難大大增加;c工作進(jìn)度難以控制;d文檔和代碼的協(xié)調(diào)十分困難;e版本更新帶來(lái)的困難;3.困難產(chǎn)生的原因:21a大系統(tǒng)的復(fù)雜性;b具有主動(dòng)性的個(gè)人之間的組織與協(xié)調(diào)本身;c各個(gè)應(yīng)用領(lǐng)域的差別;d時(shí)
6、間因素,變化因素;2.2軟件開(kāi)發(fā)方法的發(fā)展1.軟件開(kāi)發(fā)過(guò)程中的角色和任務(wù):22-23角色:任務(wù):用戶提出要求、驗(yàn)收、使用、要求修改項(xiàng)目負(fù)責(zé)人分析需求、向程序員分配任務(wù)、驗(yàn)收程序員的工作成果(代碼和文檔)、對(duì)這個(gè)軟件進(jìn)行聯(lián)調(diào)程序員編寫(xiě)程序和文檔、調(diào)試自己的程序、向項(xiàng)目負(fù)責(zé)人提交成果計(jì)算機(jī)無(wú)2.結(jié)構(gòu)化程序中程序的結(jié)構(gòu):23三種基本模塊:處理單元;循環(huán)機(jī)制;二分決策機(jī)制1.1模塊劃分要求:23a模塊功能在邏輯上盡可能的單一華、明確化,模塊和任務(wù)一一對(duì)應(yīng)(凝聚性)b模塊之間的聯(lián)系及相互影響應(yīng)該盡量少,盡量避免邏輯耦合、而僅限于數(shù)據(jù)耦合耦合:各種聯(lián)系及相互影響c
7、模塊的規(guī)模應(yīng)當(dāng)足夠小,易于調(diào)試;1.2結(jié)構(gòu)化程序的基本思想:24a限制甚至不用GOTO語(yǔ)句,絕對(duì)禁止超越模塊邊界的GOTO語(yǔ)句b子程序盡可能做到只有一個(gè)入口、一個(gè)出口c程序設(shè)計(jì)應(yīng)當(dāng)盡量明確、清晰,包括適當(dāng)?shù)淖⑨專(zhuān)瑫?shū)寫(xiě)格式體現(xiàn)層次結(jié)構(gòu),變量名稱(chēng)盡量具有邏輯意義d程序編寫(xiě)的同時(shí)完成文檔編輯,不拖時(shí)1.3軟件工程的基本思想:251.4面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想:26(4點(diǎn))向用戶靠近a封裝性-客觀世界的任何事務(wù)都是對(duì)象又一些靜態(tài)屬性b對(duì)象之間抽象與具體、群體與個(gè)體、整體與部分的幾個(gè)關(guān)系c遺傳性-大的對(duì)象的屬性成為子類(lèi)的屬性d對(duì)象之間可以護(hù)送消息,可以時(shí)參數(shù)或
8、者對(duì)象開(kāi)始的某個(gè)操作1.5即插即用的程序設(shè)計(jì)思想:27一部分人專(zhuān)門(mén)生產(chǎn)軟件組件,而另外的人設(shè)計(jì)