第6章 程序設計軟工_第1頁
第6章 程序設計軟工_第2頁
第6章 程序設計軟工_第3頁
第6章 程序設計軟工_第4頁
第6章 程序設計軟工_第5頁
已閱讀5頁,還剩48頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、我們畢業(yè)啦其實是答辯的標題地方Taiyuan University of Technology大學計算機基礎計算機科學與技術學院 計算機基礎教學部29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部26.1程序、程序設計及軟件工程6.2程序設計語言6.3 程序設計6.4 軟件工程基礎本章小結第6章程序設計程序設計及軟件工程基礎及軟件工程基礎29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部36.1程序、程序設計及軟件工程29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部4 計算機程序:使用計算機語言編寫的若干條指令的有序集合稱為計

2、算機程序。 程序設計:指根據(jù)所提出的待解問題,使用某種計算機語言編制程序代碼,來驅(qū)動計算機能夠正確完成該任務的過程。 軟件:是程序、數(shù)據(jù)以及開發(fā)、使用和維護程序需要的所有文檔的完整結合。 軟件工程是指導計算機軟件開發(fā)和維護的一門學科,采用工程的概念、原理、技術和方法來開發(fā)和維護大型、復雜計算機軟件系統(tǒng)。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部56.2程序設計語言29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部66.2.1程序設計語言的發(fā)展及分程序設計語言的發(fā)展及分類類 程序設計語言的發(fā)展是一個不斷演化的過程,從發(fā)展歷程來看,程序設計語言可

3、以分為三類:機器語言匯編語言高級語言。如圖6.1所示。6.2.16.2.1程序設計語言的發(fā)展及分類程序設計語言的發(fā)展及分類 1.機器語言 機器語言也稱低級語言,是用二進制代碼0、1表示的,它是最底層的計算機語言,用機器語言編寫的程序計算機能夠直接識別和執(zhí)行。 2.匯編語言 匯編語言克服了機器語言的缺點,采用助記碼和符號地址來表示機器指令,因此也稱作符號語言。 3高級語言 高級語言是一種接近于自然語言的程序設計語言,它按照人們的語言習慣,使用日常用語、數(shù)學公式和符號等表達方式,按照一定的語法規(guī)則來編寫程序。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部76.2.16.2

4、.1程序設計語言的發(fā)展及分類程序設計語言的發(fā)展及分類 4.幾種常用的計算機程序設計語言 幾種常用的計算機程序設計語言: C語言、C+、Pascal語言、 Visual Basic、Java、創(chuàng)作工具、C#。 5.未來的計算機語言 未來語言的發(fā)展將不在是一種單純的語言標準,將會以一種完全面向?qū)ο?,更易表達現(xiàn)實世界,更易于人編寫,其使用將不再只是專業(yè)的編程人員,人們完全可以用訂制真實生活中一項工作流程的簡單方式來完成編程。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部86.2.26.2.2語言處理程序語言處理程序 只要不是用機器語言編寫的程序,計算機是無法直接執(zhí)行的。因此

5、用匯編語言和高級語言編寫的程序都需要“翻譯”。 語言處理程序的作用就是將匯編程序和高級語言程序翻譯成等價的機器語言程序。被翻譯的程序稱為源程序,翻譯后生成的機器指令程序稱為目標程序。下面分別介紹匯編語言程序和高級語言程序的翻譯方式。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部96.2.26.2.2語言處理程序語言處理程序 1. 匯編語言程序的翻譯處理 用匯編語言編寫好的程序,必須經(jīng)過“匯編程序”(Assembler,能把用匯編語言書寫的程序翻譯成機器語言程序的軟件)的翻譯,將其轉換成目標程序,這一過程稱為“匯編”。目標程序一經(jīng)安置在內(nèi)存的預定位置上,就能被計算機的C

6、PU處理和運行。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部106.2.26.2.2語言處理程序語言處理程序 2高級語言程序的翻譯處理 對高級語言程序的翻譯有兩種方式,即編譯方式和解釋方式。 (1)編譯方式 編譯方式是指將源程序經(jīng)“編譯程序”翻譯后,形成可執(zhí)行目標程序的過程。通常我們把用高級語言編寫好的程序稱為源程序,最終可被計算機執(zhí)行的機器指令程序稱為目標程序。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部116.2.26.2.2語言處理程序語言處理程序 (2)解釋方式 在解釋方式過程中,首先要有一種稱為“解釋程序”的系統(tǒng)軟件。解式方式的

7、翻譯過程是這樣的:源程序進入計算機,“解釋程序”讀取源程序第一條語句后,翻譯成機器指令代碼并執(zhí)行之;接著讀取源程序第二條語句,翻譯并執(zhí)行,直到源程序的最后一條語句。即解釋方式的流程是:邊掃描邊解釋,逐句輸入,逐句翻譯,逐句執(zhí)行,并不產(chǎn)生目標程序。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部126.2.36.2.3程序設計語言的選擇程序設計語言的選擇 程序設計語言的選擇應該考慮以下因素: (1)項目的應用領域 (2)算法和數(shù)據(jù)結構的復雜性 (3)軟件的執(zhí)行環(huán)境 (4)性能因素 (5)軟件開發(fā)人員的知識29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教

8、學部136.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 1. 數(shù)據(jù)類型 數(shù)據(jù)是程序操作的對象。為了有效地在計算機中保存、處理數(shù)據(jù),各種程序設計語言都會提供若干種數(shù)據(jù)類型,供用戶在程序設計中使用。數(shù)據(jù)類型一般分為基本數(shù)據(jù)類型和構造數(shù)據(jù)類型兩大類。 (1)基本數(shù)據(jù)類型 基本數(shù)據(jù)類型是指程序語言設計系統(tǒng)自身內(nèi)置的類型。最主要的特點是,其值不可以再分解為其他類型。不同的程序設計語言有不同的基本數(shù)據(jù)類型,一般有整數(shù)類型、實數(shù)類型、字符類型、邏輯類型等。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部146.2.46.2.4高級程序設計語言的組成高級程序設計語言的

9、組成 (2)構造數(shù)據(jù)類型 構造數(shù)據(jù)類型是指由基本數(shù)據(jù)類型按某種方式(可以由語言系統(tǒng)提供,也可以由用戶自定義)組合而成的類型。一般有數(shù)組類型、枚舉類型、記錄類型、集合類型等。 在程序中,使用數(shù)據(jù)類型通常表明了數(shù)據(jù)的兩方面信息: 第一,表明該類型數(shù)據(jù)的取值形式、范圍和在計算機中的存儲與表示方式。 第二,表明該類型數(shù)據(jù)所能執(zhí)行的運算種類,也就是說,能夠施加到不同類型數(shù)據(jù)上的運算是不同的。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部156.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 2. 常量與變量 (1)常量 常量是指在程序執(zhí)行過程中其值保持不變的數(shù)據(jù)。

10、常量在程序中常常以數(shù)字常量和符號常量的形式出現(xiàn)。例如計算圓面積的公式為Area=RR3.1415926,其中出現(xiàn)的3.1415926即是數(shù)字常量。 有時候常量也可用符號來代替,例如若程序中多次使用到圓周率3.1415926,而這個數(shù)字書寫起來又比較長,我們可以定義一個符號常量來代替3.1415926。 例如:在C語言中,我們可以如下定義一個常量: Float const PI=3.1415926 (29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部166.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 2. 常量與變量 (2)變量 變量的實質(zhì)是指在程序運行過

11、程中其值可變化的內(nèi)存單元。為了便于識別或記憶,通常需要為變量指定一個標識符,即定義變量名。變量名對應于一個或一組存儲單元。 由于變量是用來存放數(shù)據(jù)的,因此變量在使用前需要說明其數(shù)據(jù)類型,即變量在使用之前,必須對其類型和名稱進行定義。這樣在編譯時,編譯程序就可以為內(nèi)存中的變量分配相應的存儲空間,以存放該變量的值。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部176.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 3.運算符與表達式 (1)運算符:在程序中,對數(shù)據(jù)的處理主要是通過運算實現(xiàn)的。高級程序設計語言中會包含多種形式的運算,常見的運算有: 算術運算:加

12、、減、乘、除、取余。 關系運算:大于、大于等于、小于、小于等于、等于、不等于。 邏輯運算:與、或、非。 字符運算:連接。 就可以為內(nèi)存中的變量分配相應的存儲空間,以存放該變量的值。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部186.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 不同的高級程序設計語言提供的運算符種類或運算符號略有不同。例如,常見運算在Visual Basic中的表示形式如表6-1所示。 (2)表達式:程序語言中的表達式是由一系列操作數(shù)和運算符組合而成的,表達式的結果為一個具體的值。操作數(shù)可以是常量或變量。例如:表6-1中提供了,用VB

13、語言書寫的表達式示例。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部196.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 4. 語句 語句是程序中具有獨立含義的基本單位,通常分為說明性語句和執(zhí)行性語句。 說明性語句通常用來說明程序中的變量以及變量的數(shù)據(jù)類型。執(zhí)行性語句常見的有賦值語句、輸入輸出語句等,如圖 6.6所示。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部206.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 5. 控制結構 控制結構規(guī)定了程序中語句的執(zhí)行順序,高級程序語言中會含有多種形式的控制結構語句,

14、其中最基本的是:順序結構控制語句、選擇結構控制語句、循環(huán)結構控制語句。 (1)順序結構控制語句29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部216.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 5. 控制結構 (2)選擇結構控制語句 選擇結構(或稱分支結構)根據(jù)條件判定的結果,決定程序的執(zhí)行次序。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部226.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 5. 控制結構 (3)循環(huán)結構控制語句 循環(huán)結構又稱重復結構。一般有兩種循環(huán)形式:當型循環(huán)結構、直到型循環(huán)結構。29/

15、10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部236.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 6.函數(shù)和過程 為了使程序在結構上更加清晰,避免程序段的重復書寫,可以把具有某些特定功能的或反復使用的程序段獨立出來,這樣的程序段被稱為過程(或子程序)或函數(shù)。 過程和函數(shù)都不能獨立執(zhí)行,只有在某個程序中調(diào)用了這個過程或函數(shù),它才被執(zhí)行。高級程序設計語言提供了大量的已定義好的函數(shù),程序設計者可以根據(jù)需要在程序中直接調(diào)用這些函數(shù),大大提高了編程的效率。 例如,使用某高級語言程序設計時,要計算sin(300)的值,只需要在程序中調(diào)用該語言提供的sin()函數(shù)即可。

16、29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部246.2.46.2.4高級程序設計語言的組成高級程序設計語言的組成 7.注釋 注釋是程序的非有效部分,注釋并不要求計算機理解它們,它的作用是方便讀程序的人閱讀理解程序。不同的程序設計語言,都有自己的注釋規(guī)則。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部2529/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部266.3 程序設計6.3.1 6.3.1 程序設計的步驟程序設計的步驟 程序設計的步驟一般包括:問題分析和建立模型、算法設計、程序編碼、調(diào)試運行和文檔編制,如圖6.11

17、 所示。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部276.3.1 6.3.1 程序設計的步驟程序設計的步驟 1.問題分析和建立模型 用計算機求解問題,首先要設法把實際問題抽象成數(shù)學問題,即對其建立數(shù)學模型。明確哪些數(shù)據(jù)是問題的輸入,指已知什么條件;明確數(shù)據(jù)具體的處理過程和要求,指希望計算機對輸入信息做什么樣的加工;哪些是期望的輸出,指希望得到什么結果,輸出什么類型的報告、圖標或信息。 【例6-5】在一個學生成績管理系統(tǒng)的設計中,首先需要分析問題的輸入條件,比如學生的學號、姓名、各科的學習成績等。系統(tǒng)的輸出結果之一是要在屏幕上輸出總成績第一的學生的姓名和成績。那么相

18、應的處理過程就要對各個學生的各科成績求和,并找出合計值最大的學生作為第一名。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部286.3.1 6.3.1 程序設計的步驟程序設計的步驟 2. 算法設計 算法是解決問題的步驟及其描述,是根據(jù)問題分析中的信息得來的,是對問題處理過程的進一步細化。算法是程序編碼前對處理思想的一種描述,不能被計算機直接執(zhí)行。 【例6-6】針對上面例子設計的一種算法是: 輸入全部學生的姓名、學號及本學期的所有課程的成績。 對每個學生的各科成績求和。 按總成績的降序?qū)W生進行排序。 取該排序列表的第一個學生。29/10/2021太原理工大學.計算機科學

19、與技術學院.計算機基礎教學部296.3.1 6.3.1 程序設計的步驟程序設計的步驟 3. 程序編碼 編碼就是用計算機能夠識別的語言編寫源程序的過程。首先應當選擇編程語言,然后用該語言來描述前面設計的數(shù)據(jù)結構和算法。 4.調(diào)試運行 調(diào)試運行是解決程序錯誤的主要手段,是程序設計過程中必不可少的階段。調(diào)試程序是一個不斷重復進行的過程,需要有耐心和毅力,還需要有調(diào)試程序經(jīng)驗的積累。 為了便于找出并解決程序的錯誤,通常把程序錯誤分為三類:語法錯誤(編譯錯誤)、邏輯錯誤和運行錯誤。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部306.3.1 6.3.1 程序設計的步驟程序設計的

20、步驟 5.文檔編制 文檔由程序說明文件和用戶操作手冊組成。程序說明文件記錄程序設計的算法,程序的實現(xiàn)以及修改的過程,以保證程序的可讀性和可維護性。用戶操作手冊讓用戶了解程序的使用方式以及正確的輸入數(shù)據(jù)。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部316.3.2 6.3.2 程序設計的方法程序設計的方法 1.結構化程序設計方法 (1)結構化程序設計的基本思想 結構化程序設計的基本思想是:采用“自頂向下、逐步求精”的模塊化程序設計原則,采用“單入口單出口”的控制結構,少用或最好不用GOTO語句。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部32

21、6.3.2 6.3.2 程序設計的方法程序設計的方法 自頂向下、逐步求精 模塊化 單入口單出口29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部336.3.2 6.3.2 程序設計的方法程序設計的方法 (2) 結構化程序設計的步驟 結構化程序設計方法著眼于系統(tǒng)要實現(xiàn)的功能,從系統(tǒng)的輸入和輸出出發(fā),分析系統(tǒng)要做什么,以及如何做,自頂向下地對系統(tǒng)的功能進行分解,建立系統(tǒng)的功能結構和相應的程序模塊結構,有效地將一個較復雜的程序設計任務分解成許多易于控制和處理的子任務。 (3)結構化程序設計實例 【例6-8】使用結構化的設計方法處理一個任務:籌劃一個大型聚會。29/10/2021

22、太原理工大學.計算機科學與技術學院.計算機基礎教學部346.3.2 6.3.2 程序設計的方法程序設計的方法 2.面向?qū)ο蟪绦蛟O計方法 (1)面向?qū)ο蟮幕靖拍顚ο螅∣bject) 我們通常用對象描述客觀世界中的某個具體實體,對象可以是事、物或抽象概念。 在面向?qū)ο蟪绦蛟O計中,對象是指包含現(xiàn)實世界事務特征的抽象實體,它是將一組數(shù)據(jù)(屬性)和使用該數(shù)據(jù)的一組基本操作(方法)封裝在一起的實體。 屬性用于描述對象的狀態(tài)特征,用屬性值來表示。 方法用于描述對象的行為,是對對象的屬性的各種操作,用代碼來實現(xiàn)。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部356.3.2 6.3.

23、2 程序設計的方法程序設計的方法 類(Class) 類這個詞指的是把對象歸入相關的組,描述它們共性的思想。類是指具有相同屬性和方法的、并遵守相同規(guī)則的一組對象的集合。消息(Message) 消息是對象之間進行通信的方式。一條消息內(nèi)容包含信息的接受者和對其執(zhí)行操作的請求。發(fā)送者發(fā)送消息,接受者通過調(diào)用相應的方法響應消息,這種通信機制稱為消息傳遞。 消息傳遞是對象之間相互聯(lián)系的唯一途徑。消息傳遞的過程被不斷重復。從而驅(qū)動整個程序的運轉。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部366.3.2 6.3.2 程序設計的方法程序設計的方法 29/10/2021太原理工大學.

24、計算機科學與技術學院.計算機基礎教學部376.3.2 6.3.2 程序設計的方法程序設計的方法 抽象性(Abstract) 將客觀事物抽象成對象及類是面向?qū)ο蟪绦蛟O計的基本思想,這種抽象包括兩個方面,一是數(shù)據(jù)抽象,二是代碼抽象。數(shù)據(jù)抽象定義了對象的屬性和狀態(tài);代碼抽象定義某類對象的共同行為特征或具有的共同功能,即對象的方法。封裝性(Encapsulation) 封裝就是把對象的屬性和行為結合成一個獨立的單位,并盡可能隱蔽對象的內(nèi)部細節(jié)。在面向?qū)ο蟪绦蛟O計中,只能通過受限的接口來讀取和修改對象的屬性值,不允許外界直接訪問對象內(nèi)部,這樣的設計實現(xiàn)了數(shù)據(jù)隱藏的效果,保證了數(shù)據(jù)的安全,防止外部程序破壞

25、對象的內(nèi)部數(shù)據(jù),使得程序的維護、修改和移植較為容易。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部386.3.2 6.3.2 程序設計的方法程序設計的方法 繼承性(Inheritance) 繼承性是指特殊類的對象擁有其一般類的屬性和行為的方式。即子類可以從父類那里獲得所有的屬性和方法,并且通過繼承和改造擁有屬于自己的一套屬性與方法;同時,子類又可以派生出下一代子類。 例如,把“學生”類看作父類,“大學生”類和“中學生”類可以看作“學生”類的子類,它們和“學生”類是繼承關系,繼承了“學生”類(父類)的操作和屬性。 在面向?qū)ο蟪绦蛟O計中,繼承有效地支持了軟件代碼的復用,縮

26、短了開發(fā)周期,提高了軟件開發(fā)的效率,同時也使軟件易于維護和修改。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部396.3.2 6.3.2 程序設計的方法程序設計的方法 多態(tài)性(Polymorphism) 多態(tài)性是指當同樣的消息被不同的對象接收時,卻導致完全不同的行為。即通過繼承實現(xiàn)的不同對象調(diào)用相同的方法,表現(xiàn)出不同的行為,稱之為多態(tài)。 例如,有一個“幾何體”類,為其定義了一個名為area的操作,用于計算面積。如果“矩形”和“圓形”類分別繼承了“幾何體”類,那么“矩形”和“圓形”類分別繼承了“幾何體”類的area操作。因為矩形和圓面積的計算公式不同,所以這兩個操作雖然

27、具有相同的名字卻做不同的運算。這樣就可以實現(xiàn)“一個接口,多種方法”。 在面向?qū)ο蟪绦蛟O計中使用多態(tài)的概念,增強了程序?qū)陀^世界的模擬性,使得程序具有更好的可讀性,易于理解,從而顯著提高了軟件的可復用性和可擴充性。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部40 (2)面向?qū)ο蟪绦蛟O計的方法 在面向?qū)ο蟮某绦蛟O計中,首先把問題背景中的實體描述為對象,設計的思路不是將問題分解為過程,而是將問題分解為對象。用符合人類認識世界的思維方式來分析、解決問題,使問題空間與解空間具有一致性,降低了從問題域到解空間映射的復雜性29/10/2021太原理工大學.計算機科學與技術學院.計

28、算機基礎教學部4129/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部426.4 軟件工程基礎6.4.16.4.1軟件工程的誕生及發(fā)展軟件工程的誕生及發(fā)展 軟件工程的誕生和發(fā)展是與軟件的發(fā)展過程緊密相關的。自從第一臺電子計算機誕生以來,就開始了軟件的生產(chǎn),“軟件工程”提出至今,在實踐中逐步成熟,在軟件的開發(fā)與維護和軟件產(chǎn)業(yè)的發(fā)展中發(fā)揮了巨大的作用,它的發(fā)展大致可分為四個重要階段:第一階段(傳統(tǒng)的軟件工程)第二階段(對象工程)第三階段(軟件過程工程)第四階段(構件工程)29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部436.4.26.4.2軟件工程的概

29、念軟件工程的概念 1軟件工程的定義 軟件工程是應用計算機科學、數(shù)學及管理科學等原理,借鑒傳統(tǒng)工程的原則、方法來創(chuàng)建軟件,從而達到提高質(zhì)量、降低成本的目的。 2軟件工程的基本目標與原則目標:在低開發(fā)成本、按時交付的前提下,開發(fā)出滿足用戶需求的高 質(zhì)量軟件產(chǎn)品。原則:(1)選取適宜開發(fā)范型。 (2)采用合適的設計方法。 (3)提供高質(zhì)量的工程支持。 (4)重視開發(fā)過程的管理。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部446.4.26.4.2軟件工程的概念軟件工程的概念 3. 軟件的生命周期 軟件生命周期是一個軟件從生到滅所歷經(jīng)的整個過程,具體來說是從提出用戶需求開始,

30、經(jīng)過開發(fā)、交付使用,在使用中不斷地增補修訂,直至軟件報廢的全過程。 通常把軟件的生命周期劃分為計劃、開發(fā)和運行三個時期,每一個時期又可以進一步細劃為若干階段。軟件計劃時期一般有問題定義和可行性研究2個階段;開發(fā)時期有需求分析、軟件設計、編碼和測試4個階段;運行時期主要是維護階段。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部456.4.26.4.2軟件工程的概念軟件工程的概念 4軟件工程的研究內(nèi)容和基本原理 (1)軟件工程研究的內(nèi)容 軟件工程的研究內(nèi)容主要包括標準與規(guī)范、過程與模型、方法與技術、工具和環(huán)境四個方面。29/10/2021太原理工大學.計算機科學與技術學院

31、.計算機基礎教學部466.4.26.4.2軟件工程的概念軟件工程的概念 4軟件工程的研究內(nèi)容和基本原理 (2)軟件工的基本原理 用分階段的生命周期計劃嚴格管理。 堅持進行階段評審。 實行嚴格的產(chǎn)品控制。 采納現(xiàn)代程序設計技術。 結果應能清楚地審查。 開發(fā)小組的人員應少而精。 承認不斷改進軟件工程實踐的必要性。29/10/2021太原理工大學.計算機科學與技術學院.計算機基礎教學部476.4.36.4.3軟件開發(fā)模型軟件開發(fā)模型 在軟件系統(tǒng)的開發(fā)過程中,為了從宏觀上管理軟件的計劃、開發(fā)和維護,就必須對軟件的開發(fā)過程有總體的認識和描述,即要建立軟件開發(fā)模型。軟件開發(fā)模型提供了軟件生命周期中全部過程、活動和任務的結構框架。目前已經(jīng)提出了多種具體的軟件開發(fā)模型,如瀑布模型、原型模型、增量模型、螺旋模型、統(tǒng)一過程(RUP)模型、敏捷過程模型等。 1.瀑布模型 瀑布模型也稱生命周期模型或線性順序模型。它將軟件開發(fā)過程劃分成若干個互相區(qū)別而又彼此聯(lián)系的階段,每個階段中的工作都以上一個階段工作的結果為

溫馨提示

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

評論

0/150

提交評論