自考02333軟件工程 全套視頻資料

第一章 結(jié)論
章節(jié)內(nèi)容
1 軟件工程概念的提出與發(fā)展
軟件危機(jī)
軟件工程概念的提出
軟件工程的定義
軟件工程的發(fā)展
2 軟件開發(fā)的本質(zhì)?
計(jì)算機(jī)軟件
軟件開發(fā)的本質(zhì)
模型
1.1 軟件工程概念的提出與發(fā)展
從事軟件開發(fā)實(shí)踐和軟件工程項(xiàng)目管理的思想基礎(chǔ):正確誤認(rèn)軟件開發(fā)
軟件危機(jī)
20世紀(jì)60年代以來,隨著計(jì)算機(jī)的廣泛應(yīng)用,軟件生產(chǎn)率、軟件質(zhì)量滿足不了社會(huì)發(fā)展的需求,成為社會(huì)、經(jīng)濟(jì)發(fā)展的制約因素,人們通常把這些現(xiàn)象稱為軟件危機(jī)。
軟件工程概念的提出
軟件工程概念的提出,其目的是倡導(dǎo)以工程的原理、原則和方法進(jìn)行軟件開發(fā),以期解決出現(xiàn)的“軟件危機(jī)”。
軟件工程這一術(shù)語首次出現(xiàn)在1968年的NATO(北大西洋公約組織)會(huì)議上!
軟件工程的定義
軟件工程是應(yīng)用計(jì)算機(jī)科學(xué)理論和技術(shù)以及工程管理原則和方法,按預(yù)算和進(jìn)度實(shí)現(xiàn)滿足用戶要求的軟件產(chǎn)品的工程,或以此為研究對(duì)象的學(xué)科。
20世紀(jì)60年代末到80年代初
主要成果:提出瀑布模型、開發(fā)了諸多過程式語言(如C語言、Pascal語言)和開發(fā)方法(如Jackson方法、結(jié)構(gòu)化方法)、開發(fā)了一些支持工具(調(diào)試工具、測(cè)試工具)。
特征:前半段技術(shù),后半段管理
20世紀(jì)80年代以來
主要成果:提出《軟件生存周期過程》、開展計(jì)算機(jī)輔助工程(CASE)、面向?qū)ο笳Z言(如Smalltalk、C++)、提出面向?qū)ο筌浖_發(fā)方法等。
特征:開展了一系列有關(guān)軟件生產(chǎn)技術(shù),特別是軟件復(fù)用技術(shù)和軟件生產(chǎn)管理的研究和實(shí)踐。
簡(jiǎn)述軟件工程與軟件危機(jī)的概念以及提出軟件工程概念的目的。
- 軟件工程是應(yīng)用計(jì)算機(jī)科學(xué)理論和技術(shù)以及工程管理原則和方法,按預(yù)算和進(jìn)度實(shí)現(xiàn)滿足用戶要求的軟件產(chǎn)品的工程,或以此為研究對(duì)象的學(xué)科;
- 軟件生產(chǎn)率、軟件質(zhì)量遠(yuǎn)遠(yuǎn)滿足不了社會(huì)發(fā)展的需求,成為社會(huì)、經(jīng)濟(jì)發(fā)展的制約因素,把這一現(xiàn)象稱為軟件危機(jī);
- 軟件工程概念的提出,其目的是倡導(dǎo)以工程的原理、原則和方法進(jìn)行軟件開發(fā),以期解決出現(xiàn)的“軟件危機(jī)”。
1.2 軟件開發(fā)的本質(zhì)
計(jì)算機(jī)軟件
計(jì)算機(jī)軟件一般是指計(jì)算機(jī)系統(tǒng)中的程序及其文檔。程序是對(duì)計(jì)算機(jī)任務(wù)的處理對(duì)象和處理規(guī)則的描述;文檔是為了解程序所需的闡述性資料。
軟件開發(fā)的本質(zhì)
- 軟件開發(fā)的目標(biāo)是將問題域中的概念映射為運(yùn)行平臺(tái)層面上的概念,把問題域中的處理邏輯映射為運(yùn)行平臺(tái)層面上的處理邏輯;
- 軟件開發(fā)就是要彌補(bǔ)問題域與運(yùn)行平臺(tái)之間的距離,從而在二者之間直接進(jìn)行映射。
概念:不同抽象層術(shù)語之間的“映射”,以及不同抽象層處理邏輯之間的“映射”,實(shí)現(xiàn)這一映射的基本途徑:系統(tǒng)建模。
內(nèi)容:
一是如何實(shí)現(xiàn)這樣的映射,這是技術(shù)層的問題。
二是如何管理這樣的映射,以保障映射的有效性和正確性,這是管理層面的問題。
不同抽象層的映射
如何實(shí)現(xiàn)映射(技術(shù)層面)
過程方向(求解軟件的開發(fā)邏輯)
過程途徑(求解軟件 的開發(fā)手段)->基本手段是問題建模
如果管理映射(管理層面)
包括軟件項(xiàng)目的規(guī)劃、組織、人員安排、控制和領(lǐng)導(dǎo)等

模型
模型,簡(jiǎn)單地說,是待建系統(tǒng)的任意抽象,其中包括所有的基本能力、特性或其他一些方面,而沒有任何冗余的細(xì)節(jié)。
進(jìn)一步說,模型是在特定意圖下所確定的角度和抽象層次上對(duì)物理系統(tǒng)的描述,通常包含對(duì)該系統(tǒng)邊界的描述、對(duì)系統(tǒng)內(nèi)各模型元素以及他們之間關(guān)系的語義描述。
在軟件開發(fā)中,軟件系統(tǒng)模型大體上可分為兩類:概念模型和軟件模型。
(在軟件開發(fā)領(lǐng)域,分層的基本動(dòng)機(jī)是為了控制開發(fā)的復(fù)雜性。)

概念模型
在需求層上創(chuàng)建的系統(tǒng)概念模型是對(duì)客觀事物系統(tǒng)的抽象,即標(biāo)識(shí)要解決的問題,或稱問題定義。
軟件模型
設(shè)計(jì)模型、實(shí)現(xiàn)模型、部署模型
簡(jiǎn)述軟件開發(fā)的本質(zhì)及其涉及到的問題。
- 軟件開發(fā)的本質(zhì)概括為:不同抽象層術(shù)語之間的“映射”,以及不同抽象層處理邏輯之間的“映射"。
- 它涉及到兩方面的問題:一是如何實(shí)現(xiàn)這樣的映射,這是技術(shù)層面上的問題;二是如何管理這樣的映射,以保障映射的有效性和正確性。這是管理層面上的問題。
簡(jiǎn)述何謂系統(tǒng)模型以及軟件開發(fā)中所涉及的系統(tǒng)模型分類。
- 模型就待建系統(tǒng) 的任意抽象;
- 該抽象是特定意圖下所確定的角度和抽象層次對(duì)物理系統(tǒng)的一個(gè)描述。
- 描述其中的成分和成分之間所具有的特定語義的關(guān)系,還包括對(duì)該系統(tǒng)邊界的描述;
- 系統(tǒng)模型分為兩類:概念模型和軟件模型。軟件模型又可進(jìn)一步分為設(shè)計(jì)模型、實(shí)現(xiàn)模型和部署模型。