大學(xué)計算機(jī)基礎(chǔ)-第10章ppt課件_第1頁
大學(xué)計算機(jī)基礎(chǔ)-第10章ppt課件_第2頁
大學(xué)計算機(jī)基礎(chǔ)-第10章ppt課件_第3頁
大學(xué)計算機(jī)基礎(chǔ)-第10章ppt課件_第4頁
大學(xué)計算機(jī)基礎(chǔ)-第10章ppt課件_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.,1,本 章 概 要,1. 程序設(shè)計語言概述:程序設(shè)計語言的分類及常見語言,2. 程序:程序的類型及程序的執(zhí)行方式。,3. 軟件工程:目前軟件開發(fā)和維護(hù)的方法。,4. 軟件生命周期:軟件開發(fā)的具體步驟。,.,2,程序設(shè)計語言概述,機(jī)器語言是計算機(jī)硬件系統(tǒng)能唯一識別并執(zhí)行的語言,基本要素是計算機(jī)指令。,.,3,程序設(shè)計語言概述,計算機(jī)指令的格式,例,指令系統(tǒng):一臺計算機(jī)中全部指令的集合。,.,4,程序設(shè)計語言概述,匯編語言:指令由英文單詞或縮寫構(gòu)成,用符號和十進(jìn)制數(shù)代替機(jī)器語言中的二進(jìn)制編碼,便于人們記憶和書寫。,特點: 機(jī)器語言和匯編語言都與計算機(jī)類型有關(guān) ; 匯編語言與機(jī)器語言比較,在助記

2、方面有了較大的改善; 匯編語言一般用于編制系統(tǒng)軟件和過程控制軟件 。,例,.,5,程序設(shè)計語言概述,結(jié)構(gòu)化程序設(shè)計語言:脫離具體計算機(jī)硬件結(jié)構(gòu)的程序設(shè)計語言 。,程序設(shè)計的核心是數(shù)據(jù)結(jié)構(gòu)和算法; 通過數(shù)據(jù)結(jié)構(gòu)定義數(shù)據(jù)的存儲形式; 通過算法研究如何用快捷、高效的方法來組織解決問題的具體過程。,特點:,.,6,程序設(shè)計語言概述,結(jié)構(gòu)化程序設(shè)計語言的基本特征:,程序內(nèi)部結(jié)構(gòu)化:程序由順序、選擇(分支)和重復(fù)(循環(huán))3種結(jié)構(gòu)組成。 程序模塊化:一個大程序由若干個功能獨立的、相互關(guān)聯(lián)的程序模塊(子程序、函數(shù)等)組成。 可移植性好:即為一類計算機(jī)設(shè)計的程序,經(jīng)少量改動后可以在另一類計算機(jī)上運(yùn)行。,.,7,

3、程序設(shè)計語言概述,具有代表性的結(jié)構(gòu)化程序設(shè)計語言:,FORTRAN語言:是Formula Translator的縮寫,在工程、數(shù)學(xué)和科學(xué)研究上是使用最廣泛的語言,尤其是在科學(xué)計算中發(fā)揮著極其重要的作用。 Pascal語言:作為一門實用程序設(shè)計語言和教學(xué)工具,Pascal語言在高校計算機(jī)軟件教學(xué)中一直處于主導(dǎo)地位。 C語言:適合于系統(tǒng)描述,可以用于編寫系統(tǒng)和應(yīng)用軟件。,.,8,程序設(shè)計語言概述,面向?qū)ο蟮某绦蛟O(shè)計語言:,類:是具有相同特征對象的抽象,是創(chuàng)建對象的模板。,對象:是程序中最基本的運(yùn)行實體,一個程序由若干個對象組成,各個對象既相互獨立,又通過消息相互聯(lián)系。,.,9,程序設(shè)計語言概述,可

4、視化程序設(shè)計,事件:是對象響應(yīng)某種操作時的一種反映機(jī)制,是響應(yīng)某種操作的程序代碼入口。,屬性:用于描述對象的特征。,方法:對象的方法實質(zhì)是一種子程序,調(diào)用時依附于對象,運(yùn)行時執(zhí)行相關(guān)的操作,也稱之為對象函數(shù)。,.,10,程序設(shè)計語言概述,具有代表性的面向?qū)ο蟪绦蛟O(shè)計語言:,C+語言:在C語言基礎(chǔ)上增加了面向?qū)ο蟮闹С?,基本兼容C語言程序。其特點是既支持結(jié)構(gòu)化程序設(shè)計方法,又支持面向?qū)ο蟪绦蛟O(shè)計方法,因此,也稱之為混合型語言。 Delphi語言:是在Pascal基礎(chǔ)上開發(fā)出來的可視化程序設(shè)計語言,是真正的面向?qū)ο缶幊陶Z言,執(zhí)行效率高,具有強(qiáng)大的數(shù)據(jù)庫管理功能,是開發(fā)中小型數(shù)據(jù)庫軟件的理想編程工具

5、。 Java語言:Java也是一種跨平臺的程序設(shè)計語言,適合開發(fā)基于網(wǎng)絡(luò)、多媒體、與平臺無關(guān)的應(yīng)用程序,應(yīng)用程序可以在網(wǎng)絡(luò)上傳輸,并可以運(yùn)行在任何計算機(jī)上。,.,11,程序設(shè)計語言概述,網(wǎng)頁設(shè)計語言:,標(biāo)記語言主要用于設(shè)計靜態(tài)網(wǎng)頁,利用標(biāo)記標(biāo)注信息的類型和位置。 腳本語言是介于HTML和編程語言之間的一種語言,主要用于設(shè)計動態(tài)網(wǎng)頁。,.,12,程序,任何以計算機(jī)為處理工具的任務(wù)都是對處理對象和規(guī)則的完整描述,這種描述稱為程序。,要使程序起作用,必須將其裝入到內(nèi)存中執(zhí)行,程序的實際工作過程稱為執(zhí)行或運(yùn)行。,.,13,程序,Windows操作系統(tǒng)中運(yùn)行應(yīng)用程序的方法:,開始按鈕程序,選擇應(yīng)用程序單

6、擊; 雙擊桌面上的應(yīng)用程序圖標(biāo); 雙擊打開文件夾中應(yīng)用程序圖標(biāo); 雙擊快捷方式圖標(biāo); 單擊開始按鈕運(yùn)行,輸入應(yīng)用程序的路徑及文件名稱 確定按鈕。,.,14,程序及其類型,根據(jù)程序所處軟件的開發(fā)階段或運(yùn)行方式的不同,程序主要有源程序、可執(zhí)行程序和動態(tài)鏈接庫3種類型。,.,15,程序及其類型,源程序的翻譯方式:,編譯方式:通過程序設(shè)計語言提供的編譯或生成工具,系統(tǒng)自動對整個源程序逐句進(jìn)行詞法分析、語法分析和機(jī)器語言指令翻譯。 解釋方式:在程序設(shè)計語言環(huán)境中直接運(yùn)行源程序,在執(zhí)行每條語句前,系統(tǒng)先分析語句的詞法和語法,若語句正確,則生成并執(zhí)行機(jī)器語言指令,直到程序運(yùn)行結(jié)束。,.,16,軟件工程概述,

7、軟件工程是將系統(tǒng)的、規(guī)范的、可度量的方法應(yīng)用于軟件開發(fā)和維護(hù)整體過程的一門科學(xué),用數(shù)學(xué)、計算機(jī)科學(xué)和管理科學(xué)的原理,借助傳統(tǒng)工程科學(xué)的原則和方法創(chuàng)建與維護(hù)軟件,從而達(dá)到提高軟件質(zhì)量、降低軟件成本的目的。,.,17,軟件工程概述,軟件工程的誕生背景,程序設(shè)計時代:軟件開發(fā)主要是個體手工勞動,程序設(shè)計語言是機(jī)器語言和匯編語言,這個階段被稱為程序設(shè)計時代。軟件開發(fā)完全依賴程序設(shè)計者的個人技能,不重視程序設(shè)計方法。,程序系統(tǒng)時代:高級程序設(shè)計語言出現(xiàn)后,提出了結(jié)構(gòu)化程序設(shè)計的方法,并成為軟件開發(fā)的主要工具,稱此階段為程序系統(tǒng)時代。,.,18,供需矛盾; 開發(fā)成本和時間失控; 質(zhì)量難以保障; 維護(hù)困難。

8、,主要表現(xiàn) :,軟件工程概述,軟件危機(jī)是泛指在計算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。,.,19,軟件工程主要包括軟件開發(fā)技術(shù)和軟件工程管理。,軟件工程的內(nèi)容,軟件工程是一門交叉科學(xué),包含方法、工具和過程3個要素。,.,20,軟件工程的基本目標(biāo),軟件工程的基本目標(biāo)是付出較低的開發(fā)成本,達(dá)到要求的軟件功能; 按時完成開發(fā)任務(wù),及時交付使用; 開發(fā)出來的軟件具有良好的穩(wěn)定性、可靠性、適應(yīng)性和可操作性,易于移植和維護(hù)。,.,21,軟件工程的原則,在軟件開發(fā)過程中,必須遵循抽象性、信息隱藏性、模塊化、局部化、一致性、 完整性和可驗證性等原則。,.,22,軟件生命周期,軟件產(chǎn)品從形成概念開始

9、,經(jīng)過開發(fā)、使用和維護(hù),直到最后退役的全過程稱為軟件的生命周期。,在“計算機(jī)軟件開發(fā)規(guī)范”的國家標(biāo)準(zhǔn)中,將軟件生存周期劃分為可行性研究(計劃)、需求分析、概要設(shè)計、詳細(xì)設(shè)計、代碼實現(xiàn)、軟件測試、使用與維護(hù)7個階段,在每個階段中都明確規(guī)定了任務(wù)、實施方法、步驟和完成標(biāo)志等,并要求產(chǎn)生相關(guān)的文檔。,.,23,軟件定義階段,1. 可行性研究:也稱軟件計劃或策劃階段 。此階段主要對待開發(fā)系統(tǒng)涉及到的經(jīng)費、軟/硬件技術(shù)、效益和法律等方面的問題進(jìn)行可行性論證,制定系統(tǒng)開發(fā)任務(wù)的實施計劃 。,2. 需求分析:需求是用戶對目標(biāo)軟件系統(tǒng)在功能、行為、性能和約束等方面的要求或期望。需求分析是對應(yīng)用問題及其環(huán)境的理

10、解與分析,為應(yīng)用問題涉及的事物、功能及系統(tǒng)行為建立模型,將需求精確化和完整化,最終形成需求規(guī)格說明書。,.,24,軟件定義階段,需求分析的主要工作:,獲取資料 資料分析 形成需求規(guī)格說明書 需求評審,.,25,軟件開發(fā)階段,3. 概要設(shè)計:也稱結(jié)構(gòu)設(shè)計或總體設(shè)計,根據(jù)需求確定軟件和數(shù)據(jù)的總體框架。,數(shù)據(jù)結(jié)構(gòu)設(shè)計:也稱數(shù)據(jù)對象設(shè)計,主要任務(wù)是依據(jù)需求分析的數(shù)據(jù)模型,結(jié)合程序中涉及的算法,設(shè)計數(shù)據(jù)文件的邏輯結(jié)構(gòu)。 軟件結(jié)構(gòu)設(shè)計:按自頂向下、逐步求精和模塊化的設(shè)計原則,將一個軟件分解和規(guī)劃成若干個模塊,確定各模塊之間的關(guān)聯(lián)信息。 概要文檔:概要設(shè)計說明書、數(shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)庫設(shè)計說明書和軟件集成調(diào)試計劃

11、等。,.,26,軟件開發(fā)階段,4. 詳細(xì)設(shè)計:主要任務(wù)是設(shè)計軟件功能結(jié)構(gòu)圖中每個最低層模塊的局部算法(如數(shù)據(jù)排序、查找、統(tǒng)計等算法)和數(shù)據(jù)結(jié)構(gòu)(如需要的變量、數(shù)組等),確定每個模塊調(diào)用和數(shù)據(jù)傳輸接口(如參數(shù)、函數(shù)返回值、存儲數(shù)據(jù)的文件或表名等)。,描述算法的常用工具有偽代碼(Procedure Design Language,PDL)、程序流程圖和NS圖等,設(shè)計成果是詳細(xì)設(shè)計說明書。,.,27,軟件開發(fā)階段,5. 編碼實現(xiàn):需要選擇一種程序設(shè)計語言,進(jìn)入程序設(shè)計階段。通常利用菜單或窗口結(jié)合工具欄設(shè)計軟件功能結(jié)構(gòu)圖的總體框架,依據(jù)詳細(xì)設(shè)計中的算法和數(shù)據(jù)結(jié)構(gòu)設(shè)計每個功能模塊的程序代碼,設(shè)計成果是源

12、程序。,.,28,軟件開發(fā)階段,6. 軟件測試:是對需求規(guī)格說明書、概要設(shè)計說明書及程序代碼等內(nèi)容的最后復(fù)審。,軟件質(zhì)量保證貫穿于軟件開發(fā)的整個過程,其中關(guān)鍵步驟是軟件測試 ; 軟件測試目的是在軟件產(chǎn)品交付使用之前盡可能發(fā)現(xiàn)潛在的錯誤 ; 軟件測試主要檢測和更正語義和功能錯誤 。,.,29,軟件開發(fā)階段,軟件測試的方法:,靜態(tài)測試:不需要運(yùn)行軟件,由人工直接進(jìn)行閱讀和檢查源程序,包括代碼檢查、靜態(tài)結(jié)構(gòu)分析和代碼質(zhì)量度量等。 動態(tài)測試:是基于計算機(jī)的測試,通過運(yùn)行軟件發(fā)現(xiàn)錯誤。這種方法需要測試人員根據(jù)軟件開發(fā)規(guī)格說明和程序內(nèi)部結(jié)構(gòu)精心地設(shè)計測試用例,通過輸入數(shù)據(jù)和預(yù)期的輸出結(jié)果發(fā)現(xiàn)軟件中的錯誤。

13、,.,30,軟件開發(fā)階段,動態(tài)測試的方法:,白盒測試:也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試。需要測試人員先閱讀和分析源程序的內(nèi)部結(jié)構(gòu),根據(jù)程序可能執(zhí)行的路徑(分支或循環(huán))設(shè)計測試用例,確保每個分支、每個循環(huán)體和循環(huán)邊界條件至少執(zhí)行一次,然后,通過測試用例運(yùn)行軟件,驗證軟件結(jié)構(gòu)的正確性。 黑盒測試:也稱功能測試或數(shù)據(jù)驅(qū)動測試。黑盒測試主要依據(jù)需求規(guī)格說明書和概要設(shè)計說明書,使用測試用例運(yùn)行軟件,檢驗軟件功能的性能、正確性和遺漏問題,將軟件視為黑匣子,不需要了解軟件內(nèi)部代碼。,.,31,單元測試:測試的對象是軟件設(shè)計的最小單位 模塊,是動態(tài)測試的第一步。 集成測試:又稱為組裝測試或綜合測試。按概要設(shè)計的要求,將所有模塊通過調(diào)用連接成程序系統(tǒng)進(jìn)行測試。 確認(rèn)測試:也稱有效性測試。一般采用黑盒測試方法。 系統(tǒng)測試

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論