- 高一化學(xué)必修二第二章教案 推薦度:
- 相關(guān)推薦
第二章教案
課程教案章節(jié)名稱第2章軟件生存周期及開發(fā)模型
課程類型理論課□討論課√習(xí)題課□實驗課□上機(jī)課□技能課□其他□
授課時間教學(xué)進(jìn)度
學(xué)生考勤應(yīng)到:實到:請假:曠課:
教學(xué)方法講授法、演示法、啟發(fā)法
目的要求:
1.生存周期的概念;
2.開發(fā)模型的概念'
3.生存周期模型裁剪指南
重點難點:
掌握軟件生存周期與開發(fā)模型有關(guān)系,迭代模型的具體迭代過程。
課后作業(yè):
作業(yè)批改記錄:
教學(xué)后記:
教學(xué)過程:
【復(fù)習(xí)】
第一章部分習(xí)題提問及講解。
【新課導(dǎo)入】
簡介:任何有生命的動物、植物和人,都有一個生存周期(Life Cycle),例如人的生存周期為胎兒、嬰兒、幼兒、兒童、少年、青年、中年、老年、死亡。沒有生命的事物或?qū)嶓w,例如PC機(jī)、路由器、家具、房子、汽車,它們也有一個生存周期,這個生存周期就是使用壽命,即生產(chǎn)周期加上使用周期。
軟件的生存周期與選擇的開發(fā)模型有關(guān),不同的開發(fā)模型,對應(yīng)不同的生存周期。本章介紹IT企業(yè)中常用的4種軟件開發(fā)模型:瀑布模型、增量模型、迭代模型和原型模型,以及開發(fā)模型的選取方法。
【本節(jié)課主要內(nèi)容】
第2章軟件生存周期及開發(fā)模型
2.1軟件生存周期概論
n計劃時期
u問題定義--系統(tǒng)解決什么問題、目標(biāo)、范圍
u可行性分析--了解用戶要求及觀察環(huán)境、收集資料、數(shù)據(jù)流程、技術(shù)、經(jīng)濟(jì)、操作可行性、組織、人力、物力、效益
n開發(fā)時期
u需求分析--弄清用戶的全部需求,用"需求規(guī)格說明書"準(zhǔn)確地表達(dá)出來;建立系統(tǒng)目標(biāo)邏輯模型--即"做什么";
u軟件設(shè)計--分為總體設(shè)計與詳細(xì)設(shè)計,產(chǎn)生軟件結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)、用戶界面和算法;建立系統(tǒng)物理模型--即"怎么做";
u編碼--實現(xiàn)用戶界面,將詳細(xì)設(shè)計"翻譯"成員程序代碼;
u測試--單元、組裝(綜合)、確認(rèn)、系統(tǒng);白盒、黑盒。
n運行時期
n軟件維護(hù)--正確性、適應(yīng)性、完善性
n軟件生存周期(SDLC,軟件生命周期)是軟件的產(chǎn)生直到報廢的生命周期,周期內(nèi)有問題定義、可行性分析、總體描述、系統(tǒng)設(shè)計、編碼、調(diào)試和測試、驗收與運行、維護(hù)升級到廢棄等階段,這種按時間分程的思想方法是軟件工程中的一種思想原則,即按部就班、逐步推進(jìn),每個階段都要有定義、工作、審查、形成文檔以供交流或備查,以提高軟件的質(zhì)量。
n不同的開發(fā)模型、可能對應(yīng)著不同的生存周期。
n生存周期不同,該軟件的開發(fā)階段劃分、評審次數(shù)、基線標(biāo)準(zhǔn)都有所不同。
2.2瀑布模型
n定義:瀑布模型(Waterfall Model)又稱流水式過程模型,它將軟件開發(fā)過程模仿旅游景點的階梯瀑布,由上向下一個階梯一個階梯地傾瀉下來,最后進(jìn)入一個風(fēng)平浪盡的大湖,這個大湖就是軟件企業(yè)的產(chǎn)品庫。
1、本意:
根據(jù)軟件生存周期由立項、需求、策劃、設(shè)計、編程、測試、發(fā)布、維護(hù)、退役等階段組成,把每個階段當(dāng)作瀑布中的一個臺階,把軟件生存過程比喻成瀑布中的流水。開發(fā)人員按照階段開發(fā),管理人員按照階段管理。
2、特點:
(1)里程碑或基線驅(qū)動,或者說文檔驅(qū)動;
(2)過程逆轉(zhuǎn)性很差,或者說不可逆轉(zhuǎn)。
n瀑布模型要求軟件開發(fā)嚴(yán)格按照需求-分析-設(shè)計-編碼-測試的階段進(jìn)行,每一個階段都可以定義明確的產(chǎn)出物和驗證準(zhǔn)則。瀑布模型在每一個階段完成后都可以組織相關(guān)的評審和驗證,只有在評審?fù)ㄟ^后才能夠進(jìn)入到下一個階段。
n由于需要對每一個階段進(jìn)行驗證,瀑布模型要求每一個階段都有明確的文檔產(chǎn)出,對于嚴(yán)格的瀑布模型每一個階段都不應(yīng)該重疊,而應(yīng)該是在評審?fù)ㄟ^,相關(guān)的產(chǎn)出物都已經(jīng)基線后才能夠進(jìn)入到下一個階段。
3、選擇模型的條件
不是任何軟件都可以采用瀑布模型的,選擇瀑布模型,必須滿足下列條件:
(1)在開發(fā)時間內(nèi)需求沒有或很少變化。
(2)分析設(shè)計人員對應(yīng)用領(lǐng)域很熟悉。
(3)低風(fēng)險項目(對目標(biāo)、環(huán)境很熟悉)。
(4)用戶使用環(huán)境很穩(wěn)定。
(5)用戶除提出需求以外,很少參與開發(fā)。
4、模型的優(yōu)點
n開發(fā)階段清晰,便于評審、審計、跟蹤、管理和控制。
5、模型的缺點
n可維護(hù)性差,表現(xiàn)在:由于逆轉(zhuǎn)性很差,所以返工會造成重大損失;由于文檔驅(qū)動,錯誤的傳遞,會采取發(fā)散擴(kuò)大的方式。
2.3增量模型
n定義:增量模型規(guī)定軟件的開發(fā)過程是一次開發(fā)產(chǎn)品的一個部分。首先應(yīng)該開發(fā)產(chǎn)品的基本部分,然后再逐步開發(fā)產(chǎn)品的附加部分。
1、本意:
n要開發(fā)一個大的軟件系統(tǒng),先開發(fā)其中的一個核心模塊,后再開發(fā)其他模塊,這樣一個個模塊地增加上去,直至整個系統(tǒng)開發(fā)完畢為止。
2、特點
(1)任務(wù)或功能模塊驅(qū)動,可以分階段提交產(chǎn)品;
(2)有多個任務(wù)單,這些多個任務(wù)單的集合,構(gòu)成項目的一個總?cè)蝿?wù)書(總用戶需求報告)。
3、選擇模型的條件:
(1)在開發(fā)過程中,客戶接受分階段交付。
(2)開發(fā)人員對應(yīng)用領(lǐng)域不熟悉,難以一步到位。
(3)工期過緊的中等或高風(fēng)險項目。
(4)用戶可參與到整個軟件開發(fā)過程中。
(5)使用面向?qū)ο笳Z言或第四代語言。
(6)軟件公司自己有較好的類庫、構(gòu)件庫。
4、增量模型的優(yōu)點
n將一個大系統(tǒng)分解為多個小系統(tǒng),等于將一個大風(fēng)險分解多個小風(fēng)險,從而降低了開發(fā)難度。
5、模型的缺點:
n若軟件系統(tǒng)的組裝和拆卸性不強(qiáng),或開發(fā)人員全局把握水平不高(沒有數(shù)據(jù)庫設(shè)計專家進(jìn)行系統(tǒng)集成),或者客戶不同意分階段提交產(chǎn)品,或者開發(fā)人員過剩都不宜采用這種模型。
2.4*迭代模型
【本節(jié)內(nèi)容學(xué)生自學(xué)完成】
2.5原型模型
n定義:以某個軟件原型為參照模型的開發(fā)方法,叫做原型法。
1、本意
n在初步需求分析之后,馬上向客戶展示一個軟件產(chǎn)品原型,對客戶進(jìn)行培訓(xùn),讓客戶試用,在試用中收集客戶意見,修改原型,再讓客戶試用,反復(fù)循環(huán)幾次,直到客戶確認(rèn)為止。
2、特點
n原型驅(qū)動。因此,開發(fā)者必須先有一個原型,至少要有一個原型的核心。與迭代模型比較:
n相同點是反復(fù)循環(huán)幾次,直到客戶確認(rèn)為止。不同點是原型模型事先有一個展示性的產(chǎn)品原型,而迭代模型可能沒有。
3、選擇模型的條件:
(1)已有產(chǎn)品/產(chǎn)品原型,只需客戶化的項目。
(2)簡單而熟悉的行業(yè)或領(lǐng)域。
(3)有快速原型開發(fā)工具。
(4)進(jìn)行產(chǎn)品移植或升級。
由于上述條件不太苛刻,所以凡是有軟件產(chǎn)品的IT企業(yè),在他們熟悉的業(yè)務(wù)領(lǐng)域內(nèi),當(dāng)客戶招標(biāo)時,他們都會以原型模型作為軟件開發(fā)模型,去制作投標(biāo)書,去講標(biāo)投標(biāo)。一旦中標(biāo),就對軟件產(chǎn)品進(jìn)行客戶化工作,或?qū)浖a(chǎn)品進(jìn)行二次開發(fā)。
4、模型的優(yōu)點
開發(fā)速度快,用戶意見反饋實時,有利于開發(fā)商再短時間內(nèi)推廣并實施多個客戶。
5、模型的缺點:
因為事先有一個展示性的產(chǎn)品原型,所以在一定程度上,不利于開發(fā)人員的創(chuàng)新。
6、快速原型法
n基本思路:采用以面向數(shù)據(jù)為主的方法,在需求分析的基礎(chǔ)上,利用Power Designer等數(shù)據(jù)庫分析和設(shè)計工具,快速建立信息系統(tǒng)的CDM和PDM,利用面向?qū)ο蟮木幊坦ぞ,在軟件企業(yè)強(qiáng)大的類庫、構(gòu)件庫的支撐下,快速地實現(xiàn)需求分析中確認(rèn)的流程、功能、性能和接口,然后交付給用戶試用,反復(fù)循環(huán)幾次,直到客戶確認(rèn)滿意為止。
n快速原型模型的基本思想是:軟件開發(fā)人員根據(jù)用戶提出的軟件基本需求快速開發(fā)一個原型,以便向用戶展示軟件系統(tǒng)應(yīng)有的部分或全部的功能和性能,在征求用戶對原型的評價意見后,進(jìn)一步使需求精確化、完全化,并據(jù)此改進(jìn)、完善原型,如此迭代,直到軟件開發(fā)人員和用戶都確認(rèn)軟件系統(tǒng)的需求并達(dá)成一致的理解為止。
n選擇條件:項目組中有數(shù)據(jù)庫分析和設(shè)計專家,有面向?qū)ο蟮木幊虒<遥臋n制作有成熟的模板,而且系統(tǒng)或項目又不是非常大。
【本章小結(jié)】
n除了上述四種常用的模型之外,另外還有四種模型:螺旋模型、演化模型、漸增模型和噴泉模型,這四種模型只具備理論上的研究價值,在IT企業(yè)中很少得到應(yīng)用。
n進(jìn)入IT企業(yè)參與軟件開發(fā)或軟件管理時,首先要明確:當(dāng)前的項目或產(chǎn)品開發(fā)到底采用什么開發(fā)模型,由此確定軟件的生存周期和當(dāng)前的軟件開發(fā)狀態(tài);合理安排項目組成員的工作。迅速適應(yīng)IT企業(yè)文化,并很快進(jìn)入角色。這就是研究開發(fā)模型的好處。
n瀑布模型、增量模型、迭代模型和原型模型。因為4個模型各有所長,所以它們有各自的生存空間。因為它們各有所短,所示才會產(chǎn)生相互競爭,共同構(gòu)成一個豐富多彩的多個模型競爭的世界。
n一個成熟的軟件組織,根據(jù)上述通用的4個軟件開發(fā)模型,結(jié)合本單位的開發(fā)經(jīng)驗和行業(yè)特點,還需要定制適合本單位的"生存周期模型裁剪指南",有針對性地對選定的軟件開發(fā)模型中定義的生存周期,進(jìn)行恰當(dāng)?shù)牟眉,使它完全適合于本單位的需求。從而構(gòu)成了完全適合本單位的"生存周期模型裁剪指南"。
【第二章教案】相關(guān)文章:
汽車電控第二章重點總結(jié)12-07
幼兒園工作規(guī)程第二章心得12-04
人教版七年級上冊數(shù)學(xué)第二章整式教案(精選10篇)01-05
童年第二章讀書筆記(通用27篇)03-05
第二章 細(xì)胞的結(jié)構(gòu)和生命活動答案全解全析03-03
簡愛第二章讀書心得04-08
七年級下冊生物第二章知識點總結(jié)10-12
七年級上冊數(shù)學(xué)第二章知識點總結(jié)07-22
培根隨筆第二章讀后感09-29
昆蟲記第二章讀書心得01-12