- 相關(guān)推薦
軟件工程課程學(xué)習(xí)讀書筆記
應(yīng)自己以后發(fā)展需要,自己報(bào)考xxx大學(xué)軟件工程學(xué)院的軟件工程碩士專業(yè),希望接觸并深入學(xué)習(xí)軟件工程方面的知識(shí)。以下是我本次課程對(duì)專業(yè)知識(shí)學(xué)習(xí)的筆記,其中部分是自己課后通過其他方式學(xué)習(xí)的讀書筆記。
1軟件工程的介紹
1.1 軟件工程的介紹 軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的一門工程學(xué)科。采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,以經(jīng)濟(jì)地開發(fā)出高質(zhì)量的軟件并有效地維護(hù)它,這就是軟件工程。
早起在1968年,人們就提出了個(gè)早期的定義“軟件工程就是為了經(jīng)濟(jì)地獲得可靠的且能在實(shí)際機(jī)器上有效地運(yùn)行的軟件,而建立和使用完善的工程原理。”,后期1993年IEEE組織又對(duì)其加以完善“軟件工程是: ①把系統(tǒng)的、規(guī)范的、可度量的途徑應(yīng)用于軟件開發(fā)、運(yùn)行和維護(hù)過程,也就是把工程應(yīng)用于軟件; ②研究①中提到的途徑。
1.2軟件發(fā)展 軟件的發(fā)展經(jīng)歷了以下幾個(gè)階段:
早期:1950-60:面向批處理、有限的分布、 自定義軟件 第二時(shí)期:1960-70:多用戶、實(shí)時(shí)、數(shù)據(jù)庫、軟件產(chǎn)品
第三時(shí)期:1970-80:分布式系統(tǒng)、嵌入“智能”、低成本硬件、消費(fèi)者的影響
第四時(shí)期:1990-2000以后:強(qiáng)大的桌面系統(tǒng)、面向?qū)ο蠹夹g(shù)、專家系統(tǒng)、人工神經(jīng)網(wǎng)絡(luò)、并行計(jì)算、網(wǎng)絡(luò)計(jì)算機(jī)。
1.3 軟件工程的原理 針對(duì)軟件工程的原理,總結(jié)以下幾條:
1. 用分階段的生命周期計(jì)劃嚴(yán)格管理
2. 堅(jiān)持進(jìn)行階段評(píng)審
3. 實(shí)行嚴(yán)格的產(chǎn)品控制
4. 采用現(xiàn)代程序設(shè)計(jì)技術(shù)
5. 結(jié)果應(yīng)能清楚地審查
6. 開發(fā)小組的人員應(yīng)該少而精
7. 承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性
2.3 軟件工程方法學(xué)
軟件工程包括技術(shù)和管理兩方面的內(nèi)容,是技術(shù)與管理緊密結(jié)合所形成的工程學(xué)科。
軟件工程方法學(xué)包含3個(gè)要素:方法、工具和過程。
目前使用得最廣泛的軟件工程方法學(xué),分別是傳統(tǒng)方法學(xué)和面向?qū)ο蠓椒▽W(xué)。
2.4 軟件生命周期 軟件生命周期由軟件定義、軟件開發(fā)和運(yùn)行維護(hù)(也稱為軟件維護(hù))3個(gè)時(shí)期組成,其中各個(gè)時(shí)期又分為若干階段定義時(shí)期的任務(wù)是: 確定軟件開發(fā)工程必須完成的總目標(biāo);確定工程的可行性;主要做的工作就是系統(tǒng)分析,分成3個(gè)階段,即問題定義、可行性研究和需求分析。
開發(fā)時(shí)期具體設(shè)計(jì)和實(shí)現(xiàn)在前一個(gè)時(shí)期定義的軟件,它通常由下述4個(gè)階段組成:總體設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼和單元測(cè)試,綜合測(cè)試。其中前兩個(gè)階段又稱為系統(tǒng)設(shè)計(jì),后兩個(gè)階段又稱為系統(tǒng)實(shí)現(xiàn)。
維護(hù)時(shí)期的主要任務(wù)是使軟件持久地滿足用戶的需要。就是當(dāng)用戶有的新的需求,或者程序有錯(cuò)誤的時(shí)候,要對(duì)軟件進(jìn)行完善及改正。
2.5、軟件工程
軟件過程是為了獲得高質(zhì)量軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項(xiàng)任務(wù)的工作步驟。
軟件開發(fā)的幾個(gè)模型及特殊的模型:瀑布模型、快速開發(fā)模型、增量模型、螺旋模型、噴泉模型、Rational統(tǒng)一過程、敏捷過程與極限編程、微軟過程。
2需求分析之?dāng)?shù)據(jù)流圖
2.1概念 它是將提供給用戶的業(yè)務(wù)流程圖(“物理模型”)進(jìn)行功能建模,轉(zhuǎn)化成開發(fā)人員能夠理解的一系列“邏輯模型”圖,即以圖形化的方法描繪數(shù)據(jù)在系統(tǒng)中的流動(dòng)和處理的過程,這些圖都應(yīng)該用規(guī)范的DFD描述。
2.2原理 DFD設(shè)計(jì)過程就是將數(shù)據(jù)和處理進(jìn)行逐層分解就形成了若干層次的DFD。DFD分為頂層圖(只有一張)、0層圖(也只有一張)、子圖、子子圖等等。 2.3包含主要元素
包含主要元素即在DFD中包括哪些主要元素,數(shù)據(jù)流、加工、數(shù)據(jù)存儲(chǔ)、外部實(shí)體。
2.4設(shè)計(jì)方法
1.畫頂層數(shù)據(jù)流圖
即畫整個(gè)系統(tǒng)的輸入輸出(畫系統(tǒng)也可以將各子系統(tǒng)分開畫)。
把整個(gè)系統(tǒng)視為一個(gè)大的加工(也只能含一個(gè)加工),然后根據(jù)數(shù)據(jù)系統(tǒng)從哪些外部實(shí)體接收數(shù)據(jù)流,以及系統(tǒng)發(fā)送數(shù)據(jù)流到那些外部實(shí)體,就可以畫出輸入輸出圖。這張圖稱為頂層圖。
頂層圖的作用在于表明被開發(fā)系統(tǒng)的范圍以及它和周圍環(huán)境的數(shù)據(jù)交換關(guān)系。
2.畫0層數(shù)據(jù)流圖
即畫系統(tǒng)的內(nèi)部。把頂層圖的加工分解成若干個(gè)加工,并用數(shù)據(jù)流將這些加工連接起來,使得頂層圖的輸入數(shù)據(jù)經(jīng)過若干加工處理后,變成頂層圖的輸出數(shù)據(jù)流。這張圖稱為0層圖。從一個(gè)加工畫出一張數(shù)據(jù)流圖的過程就是對(duì)加工的分解。
確定加工的方法:在數(shù)據(jù)流的組成或值發(fā)生變化的地方應(yīng)該畫出一個(gè)加工,這個(gè)加工的功能就是實(shí)現(xiàn)這一變化,也可以根據(jù)系統(tǒng)的功能決定加工。
確定數(shù)據(jù)流的方法:用戶把若干數(shù)據(jù)當(dāng)作一個(gè)單位來處理(這些數(shù)據(jù)一起到達(dá)、一起處理)時(shí),可以把這些數(shù)據(jù)看成一個(gè)數(shù)據(jù)流。 關(guān)于數(shù)據(jù)存儲(chǔ):對(duì)于一些以后某個(gè)時(shí)間要使用的數(shù)據(jù),可以組織成為一個(gè)數(shù)據(jù)存儲(chǔ)來表示。
【軟件工程課程學(xué)習(xí)讀書筆記】相關(guān)文章:
課程學(xué)習(xí)總結(jié)04-27
《走進(jìn)新課程》讀書筆記02-07
課程學(xué)習(xí)心得02-08
新課程學(xué)習(xí)計(jì)劃09-25
個(gè)人課程學(xué)習(xí)總結(jié)02-14
軟件工程專業(yè)學(xué)什么課程 好就業(yè)嗎02-15