




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、23:401第第4章章 計算機軟件系統計算機軟件系統(回顧回顧) 4.1 軟件概述軟件概述4.2 操作系統概述操作系統概述4.3 操作系統的功能操作系統的功能4.4 常見操作系統常見操作系統4.5 應用軟件應用軟件23:402第第 5 章章 計算機軟件開發計算機軟件開發(第第8、9講講)講授講授23:403第第 5 章章 計算機軟件開發計算機軟件開發 5.1 算法與數據結構算法與數據結構5.2 程序設計的基本概念程序設計的基本概念5.3 結構化程序設計結構化程序設計5.4 面向對象程序設計面向對象程序設計5.5 軟件工程軟件工程5.6 數據庫系統概述數據庫系統概述23:4045.1 算法與數據
2、結構算法與數據結構算法算法與與數據結構數據結構是計算機程序的兩個是計算機程序的兩個最基最基本的概念本的概念。瑞士著名計算機科學家。瑞士著名計算機科學家尼可尼可萊沃思萊沃思在在1976年曾提出年曾提出算法算法與與數據結構數據結構二者的二者的關系關系: 算法算法+數據結構數據結構=程序程序準確地說,一個程序規定了某個數據結構準確地說,一個程序規定了某個數據結構上的一個算法。上的一個算法。23:4055.1.1 算法的基本概念算法的基本概念v“算法算法(algorithms)”是什么?是什么?韋氏新世界詞典將韋氏新世界詞典將“算法算法”定義為:定義為:解決某種問題的任何專門的方法解決某種問題的任何專
3、門的方法。如如公元前公元前300年歐幾里得在其著作年歐幾里得在其著作幾何原本幾何原本中中關于求兩個數的最關于求兩個數的最大公約數的輾轉相除法大公約數的輾轉相除法就是著名的就是著名的歐幾里德算法歐幾里德算法。23:406歐幾里德算法歐幾里德算法v 給定兩個正整數給定兩個正整數m和和n求它們的求它們的最大公最大公因子因子(即能同時整除即能同時整除m 和和n 的最大正整的最大正整數數)步驟:步驟:23:407 漢諾塔問題漢諾塔問題1. 每次只能移動一個盤子每次只能移動一個盤子2. 只能在三根柱子上移動,不能放在其他地只能在三根柱子上移動,不能放在其他地方方3. 移動時必須始終保持移動時必須始終保持大
4、盤大盤在在下下,小盤小盤在在上上23:4085.1.1 算法的基本概念算法的基本概念v著名計算機科學家著名計算機科學家克努特克努特把算法的把算法的性質性質歸納歸納為為23:409v自然語言自然語言是人們日常所用的語言,如英是人們日常所用的語言,如英語、漢語等語、漢語等5.1.2 算法的表示算法的表示-自然語言自然語言23:4010v流程圖流程圖是采用一些的是采用一些的圖框符號圖框符號來來描述算描述算法法的邏輯結構,每個圖框符號表示不同的邏輯結構,每個圖框符號表示不同性質的操作。性質的操作。ansi在在上世紀上世紀60年代頒年代頒布流程圖的標準,規定用來表示程序中布流程圖的標準,規定用來表示程序
5、中各種操作的流程圖符號。各種操作的流程圖符號。5.1.2 算法的表示算法的表示-流程圖流程圖23:40115.1.2 算法的表示算法的表示v例例3.2 求求5!步驟步驟1: 令令p1步驟步驟2: 令令i2步驟步驟3: 使使pxi,成績依然存,成績依然存入入p中,可表示為中,可表示為ppxi步驟步驟4: 使使i的值加的值加1,可表示,可表示為為ii1步驟步驟5: 如果如果i5,則返回步,則返回步驟驟3的位置,從步驟的位置,從步驟3開始開始再次執行本算法。再次執行本算法。 如果如果i5,則算法結束。,則算法結束。v流程圖流程圖23:4012v偽代碼偽代碼是一種是一種非正式非正式的語言,它是的語言,
6、它是用用介于自然語言介于自然語言和和計算機語言之間計算機語言之間的的文字文字和和符號符號來來描述算法描述算法5.1.2 算法的表示算法的表示偽代碼偽代碼23:40135.1.2 算法的表示算法的表示v用偽代碼表示例用偽代碼表示例3.2 求求5!的算法的算法begin 置置 p的初值為的初值為1置置 i 的初值為的初值為2while i 5 p p x ii i + 1endwhile打印打印p的值的值end23:40145.1.3 數據結構的基本概念數據結構的基本概念v數據數據:是描述客觀事物的數字、字符及:是描述客觀事物的數字、字符及所有能輸入到計算機中并被所有能輸入到計算機中并被計算機程序
7、計算機程序處理處理的的符號符號的的集合集合。v數據元素數據元素:組成數據的:組成數據的基本單位基本單位稱為數稱為數據元素。通常將數據元素作為一個據元素。通常將數據元素作為一個整體整體進行進行處理處理。數據元素數據元素由由若干若干個個數據項數據項組組成,稱成,稱數據元素數據元素為為記錄記錄。數據項數據項是數據的是數據的不可分割不可分割的最小單位。最的最小單位。最簡單的數據元素僅含有一個數據項。簡單的數據元素僅含有一個數據項。23:40155.1.3 數據結構的基本概念數據結構的基本概念v數據結構:數據結構:是是指數據之間指數據之間的的相互關系相互關系,即數據的即數據的組織形式。組織形式。v數據結
8、構數據結構的研究內容的研究內容:程序設計中計算機所程序設計中計算機所操作的對象操作的對象及相互間及相互間的的關系關系和和運算運算,即,即數據的數據的邏輯邏輯結構結構、存、存儲儲結構結構以及以及數據結構的數據結構的運算。運算。v數據的數據的邏輯結構邏輯結構是指數據元素之間的邏是指數據元素之間的邏輯關系。輯關系。邏輯結構邏輯結構有:有:線性結構線性結構、樹形樹形結構結構和和圖狀結構圖狀結構(或稱(或稱網狀結構網狀結構)。)。23:40165.1.3 數據結構的基本概念數據結構的基本概念v數據的數據的存儲結構存儲結構是是指數據指數據在存儲器中的在存儲器中的存儲方式存儲方式。23:4017數據結構的基
9、本運算(數據結構的基本運算(操作操作) 建立建立數據結構數據結構 撤消撤消數據結構數據結構 插入插入數據元素數據元素。在一個給定的數據結。在一個給定的數據結構中,在指定位置上增添一個新的元素。構中,在指定位置上增添一個新的元素。 刪除刪除數據元素數據元素。對一個給定的數據結。對一個給定的數據結構,刪除某個指定節點。構,刪除某個指定節點。 更新更新數據元素數據元素。在一個給定的數據結。在一個給定的數據結構中,改變某個元素的值,它等于插入構中,改變某個元素的值,它等于插入和刪除兩個操作的組合。和刪除兩個操作的組合。23:4018數據結構的基本運算(數據結構的基本運算(操作操作) 查找查找數據元素數
10、據元素。在一個給定的數據結構。在一個給定的數據結構中,找出滿足指定條件的元素。中,找出滿足指定條件的元素。 排序排序。對給定的數據結構中的所有的元。對給定的數據結構中的所有的元素按照一定的條件將它們重新排列順序素按照一定的條件將它們重新排列順序 遍歷遍歷。在一個給定的數據結構中,從第。在一個給定的數據結構中,從第一個結點開始,依次訪問各個結點。每一個結點開始,依次訪問各個結點。每個結點個結點只能被訪問一次。只能被訪問一次。 判定判定某個數據結構是否為某個數據結構是否為空空或是否已達或是否已達到到最大最大允許的容量。允許的容量。 統計統計數據數據元素的元素的個數個數。23:40195.1.3 數
11、據結構的基本概念數據結構的基本概念v學習數據結構的目的學習數據結構的目的23:40205.1.4 線性表線性表v定義定義:線性表的邏輯結構是:線性表的邏輯結構是n個數據元素個數據元素的有限序列:(的有限序列:(a 1 , a 2 , a 3 , , a n )v邏輯結構特征邏輯結構特征:數據元素之間呈線性關系:數據元素之間呈線性關系23:40215.1.4 線性表線性表v順序存儲順序存儲結構線性表的插入、刪除過程結構線性表的插入、刪除過程12345678923:40225.1.4 線性表線性表v順序存儲順序存儲結構線性表的插入、刪除過程結構線性表的插入、刪除過程12345678923:4023
12、5.1.4 線性表線性表v順序存儲結構順序存儲結構線性表的插入、刪除過程線性表的插入、刪除過程12345678923:40245.1.4 線性表線性表v鏈式存儲線性表的插入、刪除鏈式存儲線性表的插入、刪除abdefcabdef23:40255.1.5 棧與隊列棧與隊列v棧棧是限定僅在是限定僅在表尾表尾進行進行插入插入和和刪除刪除操作的操作的線性表線性表。因此,對棧來說,。因此,對棧來說,表尾端有其特殊的含義,稱為表尾端有其特殊的含義,稱為棧頂棧頂,相應的表相應的表頭端頭端稱為稱為棧底棧底。不含元素。不含元素的的空表空表稱為稱為空??諚棧又稱棧又稱后進先出后進先出(last in first
13、out)的線性表,簡稱的線性表,簡稱lifo。23:40265.1.5 棧與隊列棧與隊列v棧的示意圖棧的示意圖 23:40275.1.5 棧與隊列棧與隊列v棧頂指針和數據元素間的關系棧頂指針和數據元素間的關系 23:40285.1.5 棧與隊列棧與隊列v棧的鏈式存儲結構棧的鏈式存儲結構鏈棧示意圖鏈棧示意圖23:40295.1.5 棧與隊列棧與隊列v隊列隊列是一種先是一種先進進先先出出(first in first out)的線性表,簡稱為的線性表,簡稱為fifo。v隊列只允許在表的隊列只允許在表的一端一端進行進行插入插入操作,操作,而在表的而在表的另一端另一端進行進行刪除刪除操作。操作。v允許
14、插入元素的表端稱為隊尾,允許允許插入元素的表端稱為隊尾,允許刪刪除除元素的表端稱為元素的表端稱為隊頭隊頭。v類似于日常生活中的類似于日常生活中的23:40305.1.5 棧與隊列棧與隊列v隊列示意圖隊列示意圖23:40315.1.6 樹與圖樹與圖v樹樹:非線性結構非線性結構(有樹和二叉樹)。非空樹(有樹和二叉樹)。非空樹有且僅有一個根結點。結點擁有有且僅有一個根結點。結點擁有子結點子結點的的個個數數稱結點的度。稱結點的度。23:40325.1.6 樹與圖樹與圖v圖:數據元素之間的關系可以是任意的圖:數據元素之間的關系可以是任意的23:40335.1.7 算法的設計算法的設計v 算法的設計目標算
15、法的設計目標23:40345.1.7 算法的設計算法的設計v 算法設計的基本策略思想算法設計的基本策略思想23:40355.1.7 算法的設計算法的設計v 算法設計的基本策略思想算法設計的基本策略思想23:4036習題習題(p69)1. 什么是算法,算法應具備哪些特性,為什么?什么是算法,算法應具備哪些特性,為什么?(p70)3. 幾種常用的算法表示方法是什么,各有什么幾種常用的算法表示方法是什么,各有什么特點?特點?10. 試比較線性表、棧和隊列三種數據結構。試比較線性表、棧和隊列三種數據結構。14. 好的算法應滿足哪些主要的設計目標?好的算法應滿足哪些主要的設計目標?23:40375.2
16、程序設計的基本概念程序設計的基本概念v什么是什么是程序程序設計設計programming?v程序設計是程序設計是給出解決特定問題給出解決特定問題程序的過程序的過程,是指設計、編制、調試程序的方法程,是指設計、編制、調試程序的方法和過程。是軟件構造活動中的重要組成和過程。是軟件構造活動中的重要組成部分。程序設計往往部分。程序設計往往以某種程序設計語以某種程序設計語言為工具言為工具,給出這種語言下的程序。,給出這種語言下的程序。v程序設計過程應當包括程序設計過程應當包括分析分析、設計設計、編編碼碼、測試測試、排錯排錯等不同階段。等不同階段。專業的程專業的程序設計人員常被稱為程序員。序設計人員常被稱
17、為程序員。23:40385.2 程序設計的基本概念程序設計的基本概念5.2.1 程序設計語言的分類程序設計語言的分類23:40395.2.1 程序設計語言的分類程序設計語言的分類v匯編語言匯編語言(2gl)23:40405.2.1 程序設計語言的分類程序設計語言的分類v高級語言高級語言(3gl)23:4041高級語言與翻譯系統高級語言與翻譯系統v通常把用通常把用高級語言高級語言編寫編寫的的程序程序稱為稱為源程源程序序,把用,把用二進制代碼二進制代碼表示的程序稱為表示的程序稱為機機器代碼程序器代碼程序或者或者目標程序目標程序.v計算機只能計算機只能識別識別和和執行執行由由二進制代碼組二進制代碼組
18、成成的的機器語言機器語言,因此,因此源程序源程序必須經過必須經過語語言處理程序言處理程序 翻譯翻譯成成目標程序目標程序才能被才能被計算計算機執行機執行.v具有具有翻譯功能翻譯功能的的語言處理程序語言處理程序:編譯程編譯程序序(又稱又稱編譯器編譯器)和和解釋程序解釋程序(又稱又稱解釋器解釋器)23:4042第第四四代語言代語言4glv是一種是一種非過程化非過程化的語言。只需說明所要的語言。只需說明所要完成的完成的加工加工和和條件條件,給出,給出輸入輸入數據并指明數據并指明輸出形式輸出形式,就能,就能得到得到所需所需結果結果。23:4043非過程化語言非過程化語言v高級語言高級語言(過程化過程化語
19、言語言)解決問題時,必解決問題時,必須須詳細描述詳細描述解決問題解決問題的的每一步每一步,既要既要解解決決“做什么做什么”,又要又要解決解決“怎么做怎么做”。v非過程化語言非過程化語言不必描述繁瑣的解決問題不必描述繁瑣的解決問題過程,過程,只需只需告訴計算機告訴計算機做什么做什么而而不必不必指明指明怎么做怎么做v特點特點:只:只指定指定哪些哪些數據被操縱數據被操縱,至于對,至于對這些數據要執行哪些操作,以及這些操這些數據要執行哪些操作,以及這些操作是作是如何執行如何執行的,則的,則未被指定未被指定。23:40445.2.1 程序設計語言的分類程序設計語言的分類v第第五五代語言代語言5gl也是非
20、過程化的語言,它們提供了也是非過程化的語言,它們提供了可視化可視化的的圖形界面圖形界面來生成源代碼。通常第來生成源代碼。通常第五五代代語言使用第語言使用第三三代語言或第代語言或第四四代語言的代語言的編編譯程序譯程序來轉換得到相應的來轉換得到相應的機器語言機器語言程序。程序。有些有些面向對象面向對象的開發工具和網頁開發工的開發工具和網頁開發工具,如具,如visual basic、visual c+、java等就屬于第等就屬于第五五代語言。代語言。23:4045程序設計程序設計分類分類v按照結構性質分,有結構化程序設計與非結構化程按照結構性質分,有結構化程序設計與非結構化程序設計。前者是指具有結構
21、性的程序設計方法與過序設計。前者是指具有結構性的程序設計方法與過程。它具有由基本結構構成復雜結構的層次性,后程。它具有由基本結構構成復雜結構的層次性,后者反之。者反之。v按照用戶要求分,有過程式程序設計與非過程式程按照用戶要求分,有過程式程序設計與非過程式程序設計。前者是指使用過程式程序設計語言的程序序設計。前者是指使用過程式程序設計語言的程序設計,后者指非過程式程序設計語言的程序設計。設計,后者指非過程式程序設計語言的程序設計。v按照設計的成分性質分,有順序程序設計、并發程按照設計的成分性質分,有順序程序設計、并發程序設計、并行程序設計、分布式程序設計。序設計、并行程序設計、分布式程序設計。
22、v按照程序設計風格分,有邏輯式程序設計、函數式按照程序設計風格分,有邏輯式程序設計、函數式程序設計、對象式程序設計。程序設計、對象式程序設計。23:40465.2.2 幾種常見的高級語言幾種常見的高級語言23:40475.3 結構化程序設計結構化程序設計v結構化程序結構化程序設計的思想設計的思想:任何程序:任何程序都只依靠都只依靠三種三種基本結構的組合實現:基本結構的組合實現:順序結構順序結構、選擇結構選擇結構和和循環結構循環結構。選擇結構選擇結構又稱又稱分支結構分支結構。由這。由這三種三種基本結構組成基本結構組成的程序稱為的程序稱為結構化程結構化程序序v強調強調程序的結構程序的結構和和可讀性
23、可讀性,為,為緩解緩解軟件危機軟件危機作出了重要的貢獻作出了重要的貢獻23:40485.3 結構化程序設計結構化程序設計v控制結構控制結構23:40495.3 結構化程序設計結構化程序設計v控制結構控制結構23:40505.3 結構化程序設計結構化程序設計v函數函數是是c語言程序的語言程序的基本組成基本組成單位。它單位。它不僅可以實現程序的不僅可以實現程序的模塊化模塊化,使程序設,使程序設計變得計變得簡單簡單和和直觀直觀,提高,提高易讀性易讀性和和可維可維護性護性,而且還可以把程序中,而且還可以把程序中普通普通用到的用到的一些計算或操作編成一些計算或操作編成通用的函數通用的函數,以供,以供隨時
24、調用隨時調用,這樣可以大大地,這樣可以大大地減輕減輕程序員程序員的的代碼工作量代碼工作量。c語言語言主函數主函數main() 若干個若干個函數函數組成組成函數可被任意調用;函數調用自己則產生函數可被任意調用;函數調用自己則產生遞歸遞歸23:40515.3 結構化程序設計結構化程序設計v指針指針point學習學習c語言語言, 如不能用如不能用指針指針編寫有效、正確編寫有效、正確和靈活的程序和靈活的程序, 可以認為可以認為沒有學好沒有學好c語言語言指針、地址、數組及其相互關系是指針、地址、數組及其相互關系是c語言語言中中最有特色的最有特色的部分。部分。規范地使用指針規范地使用指針, 可使程序達到簡
25、單明了可使程序達到簡單明了不但要學會如何正確地使用指針不但要學會如何正確地使用指針, 而且要而且要學會在學會在各種情況各種情況下下正確地使用正確地使用指針變量指針變量23:40525.3 結構化程序設計結構化程序設計v數組數組數組是數組是有序數據有序數據的的集合集合。數組中的元素具。數組中的元素具有有相同的數據類型相同的數據類型和和名字名字,以,以不同的下不同的下標標相區分,稱為數組元素。使用數組時,相區分,稱為數組元素。使用數組時,先要進行定義,然后才能使用。先要進行定義,然后才能使用。1357923:40535.4 面向對象程序設計面向對象程序設計v面向對象具有如下優勢:面向對象具有如下優
26、勢:23:4054什么是面向對象?什么是面向對象?vcoad和和yourdon給出了一個定義:給出了一個定義:“面向對象面向對象=對象對象+類類+繼承繼承+消息消息”v如果一個軟件系統是使用這樣如果一個軟件系統是使用這樣4個概念個概念設計和實現的,則認為這個軟件系統設計和實現的,則認為這個軟件系統是面向對象的。是面向對象的。v一個面向對象的程序的每一成份應是一個面向對象的程序的每一成份應是對象,計算是通過新的對象的建立和對象,計算是通過新的對象的建立和對象之間的消息傳送來執行的。對象之間的消息傳送來執行的。23:4055對象對象objectv對象是面向對象開發模式的基本成份對象是面向對象開發模
27、式的基本成份v每個對象可用它本身的一組每個對象可用它本身的一組屬性屬性和它和它可以執行的一組可以執行的一組操作操作來定義來定義。一般只能通過執行對象的操作來一般只能通過執行對象的操作來改變。改變。又稱為又稱為方法方法或或服務服務,它描述了對,它描述了對象執行的功能,若通過消息傳遞,還象執行的功能,若通過消息傳遞,還可以為其它對象使用??梢詾槠渌鼘ο笫褂?。23:4056類類classv類類是一組具有是一組具有相同數據結構相同數據結構和和相同操作相同操作的對象的的對象的集合集合。v類的定義包括一組數據屬性和在數據上類的定義包括一組數據屬性和在數據上的一組合法操作。的一組合法操作。v類定義可以視為一
28、個具有類定義可以視為一個具有類似特性類似特性與與共共同行為同行為的的對象對象的的模板模板,可用來產生對象,可用來產生對象v在一個類中,每個對象都是類的在一個類中,每個對象都是類的實例實例 instance,它們都可使用類中的函數,它們都可使用類中的函數23:4057對象實現了數據與操作的結合對象實現了數據與操作的結合v行為行為behavior說明這個對象說明這個對象能做什么,就是對象能進行什么操能做什么,就是對象能進行什么操作,由方法或函數描述。作,由方法或函數描述。v狀態狀態state當對象施加方法時當對象施加方法時對象的反映,通常用數據描述。對象的反映,通常用數據描述。v標識標識ident
29、ity區別于其它對象區別于其它對象標志,每一個對象有唯一的標志,每一個對象有唯一的id。23:4058對象實現了數據與操作的結合對象實現了數據與操作的結合(續續)v改變傳統方法中將數據與操作(亦改變傳統方法中將數據與操作(亦稱函數或過程)相分離的做法,實稱函數或過程)相分離的做法,實現了將數據與操作封裝在對象的統現了將數據與操作封裝在對象的統一體中。一體中。v對象具有獨立性和自治性,其內部對象具有獨立性和自治性,其內部狀態不受或很少受外界的影響。狀態不受或很少受外界的影響。23:4059q每架飛機都是每架飛機都是一個具體的對一個具體的對象,如飛豹。象,如飛豹。對象與類對象與類de示例示例23:
30、4060n抽取飛機共同的特性,形成類:抽取飛機共同的特性,形成類:23:4061封裝封裝v面向對象編程中模塊的基本單元是類。面向對象編程中模塊的基本單元是類。類將類將數據數據和和處理數據處理數據的的過程過程封裝為一個封裝為一個有機的整體。有機的整體。v相比之下,面向相比之下,面向過程過程編程中模塊的基本編程中模塊的基本單元是過程,數據處理在過程中進行,單元是過程,數據處理在過程中進行,通過給通過給函數傳遞參數函數傳遞參數然后獲得一個然后獲得一個函數函數返回值返回值。23:4062概念封裝概念封裝和和信息隱蔽信息隱蔽,在任一時刻都可以在類的界面在任一時刻都可以在類的界面上增加新的操作,并能夠修改
31、實現,以改上增加新的操作,并能夠修改實現,以改進性能,或引入原來設計中沒有的新服務進性能,或引入原來設計中沒有的新服務v為便于類的調整,為便于類的調整,。對一個類的共有界面的實現所做。對一個類的共有界面的實現所做的多次修改不應影響利用它的那些類。的多次修改不應影響利用它的那些類。23:40635.4 面向對象程序設計面向對象程序設計v繼承繼承inheritance一個類可以有父類一個類可以有父類superclass,也可以有,也可以有子類子類subclass。每個。每個“子類子類”都可以都可以繼繼承承“類類”的的屬性屬性和和方法方法。這種。這種低層類低層類繼繼承承高層類高層類的的屬性屬性和和方
32、法方法就叫做就叫做繼承繼承繼承繼承是指在類中,基于層次的關系共享屬是指在類中,基于層次的關系共享屬性和操作。一個類可以被細化為子類,性和操作。一個類可以被細化為子類,每個每個子類繼承父類子類繼承父類的的所有屬性所有屬性,也可以,也可以增加增加它它獨有獨有的屬性。的屬性。23:4064類層次的結構繼承類層次的結構繼承整數整數23:40655.4 面向對象程序設計面向對象程序設計v繼承繼承employeestring namestring addressfloat salaryreceivespay()getname()getaddress()managerint numberofreportsi
33、nt officeidfloat bonushires()plans()csrstring headsettypemanager mymgrstring longinidclocksin()clocksout()23:40665.5 軟件工程軟件工程software engineeringv弗里茲弗里茲.鮑爾定義:鮑爾定義:“軟件工程是為了經軟件工程是為了經濟地獲得能夠在實際機器上有效運行的濟地獲得能夠在實際機器上有效運行的可靠軟件而建立和使用的一系列完善的可靠軟件而建立和使用的一系列完善的工程化原則工程化原則”v1983年年ieee定義:定義:“軟件工程是開發、軟件工程是開發、運行、維護和修
34、復軟件的系統方法運行、維護和修復軟件的系統方法”v“軟件軟件”定義:定義:計算機程序、方法、規計算機程序、方法、規則、相關的文檔資料以及在計算機上運則、相關的文檔資料以及在計算機上運行時所必需的數據行時所必需的數據。強調工程化重要性。強調工程化重要性23:4067軟件工程三要素:軟件工程三要素:方法方法、工具工具和和過程過程1.方法方法強調強調“如何做如何做” 。包括諸如項目計。包括諸如項目計劃與估算、需求分析、數據結構、系統劃與估算、需求分析、數據結構、系統總體結構的設計、算法過程的設計、編總體結構的設計、算法過程的設計、編碼、測試以及維護等。碼、測試以及維護等。2.工具工具為為方法方法提供
35、提供自動的自動的或或半自動半自動的軟件的軟件支撐環境。計算機輔助軟件工程支撐環境。計算機輔助軟件工程case 將各種軟件工具、開發機器和一個存放將各種軟件工具、開發機器和一個存放開發過程信息的工程數據庫組合成一個開發過程信息的工程數據庫組合成一個軟件開發支撐系統,即軟件開發支撐系統,即軟件工程環境軟件工程環境。23:4068軟件工程三要素:軟件工程三要素:方法方法、工工具和具和過程過程3.過程過程則是將軟件工程的方法和工具則是將軟件工程的方法和工具綜合起來以達到綜合起來以達到合理合理、及時及時地進行地進行計算機計算機軟件開發軟件開發的目的。過程定義的目的。過程定義了方法使用的順序、要求交付的文了方法使用的順序、要求交付的文檔資料、為保證質量和協調變化所檔資料、為保證質量和協調變化所需要的管理、及軟件開發各個階段需要的管理、及軟件開發各個階段完成的里程碑。完成的里程碑。23:40695.5 軟件工程軟件工程v軟件的生命周期的瀑布模型軟件的生命周期的瀑布模型23:4070演化模型演化模型v由于在項目開發的初始階段人們對軟由于在項目開發的初始階段人們對軟件的需求認識常常件的需求認識常常不夠清晰不夠清晰,因而使,因而使得開發項目難于做到一次開發成功,得開發項目難于做到一次開發成功,出現返工再開發在所難免,做兩次。出現返
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農村農戶綠色生態種植協議規范
- 環衛車輛司機管理制度
- 班組崗位寫實管理制度
- 2025年湖北省工業建筑集團有限公司人員招聘筆試模擬試題參考答案詳解
- 生產企業時效管理制度
- 生產企業知識管理制度
- 生產作業場所管理制度
- 生產各類事故管理制度
- 物業防汛演練及應急預案
- cs場地管理制度
- 2025年重慶市中考化學試卷真題(含標準答案)
- 2024年北京市初中學業水平考試語文試卷及答案
- 電力行業電力運行維護與故障處理知識題庫
- 2025年遼寧省高考生物試卷(含答案)
- 公司期貨交易管理制度
- 心臟康復護理
- 2025年高考二卷數學
- 科學技術普及法解讀
- 健康管理師職業資格考試試卷及答案2025年
- 2024年洛陽市縣區事業單位聯考招聘筆試真題
- 醫院檢驗科實驗室生物安全程序文件SOP
評論
0/150
提交評論