0203軟件開發(fā)中的人員與過程3_第1頁
0203軟件開發(fā)中的人員與過程3_第2頁
0203軟件開發(fā)中的人員與過程3_第3頁
0203軟件開發(fā)中的人員與過程3_第4頁
0203軟件開發(fā)中的人員與過程3_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 第二章第二章軟件開發(fā)中的人員與過程軟件開發(fā)中的人員與過程_3 上節(jié)回顧上節(jié)回顧l軟件工程師需養(yǎng)成的習(xí)慣:軟件工程師需養(yǎng)成的習(xí)慣:編碼習(xí)慣與規(guī)范、撰寫文檔能力編碼習(xí)慣與規(guī)范、撰寫文檔能力 、源代碼管理習(xí)、源代碼管理習(xí)慣慣 、主動溝通與反饋、主動溝通與反饋 、計(jì)劃與總結(jié)的習(xí)慣、計(jì)劃與總結(jié)的習(xí)慣 、測、測試習(xí)慣試習(xí)慣 l軟件開發(fā)生命周期介紹軟件開發(fā)生命周期介紹需求分析、系統(tǒng)設(shè)計(jì)、編碼實(shí)現(xiàn)介紹與難點(diǎn)分析需求分析、系統(tǒng)設(shè)計(jì)、編碼實(shí)現(xiàn)介紹與難點(diǎn)分析 本節(jié)目標(biāo)本節(jié)目標(biāo)l軟件開發(fā)生命周期:軟件開發(fā)生命周期:系統(tǒng)測試、運(yùn)行維護(hù)介紹與難點(diǎn)分析系統(tǒng)測試、運(yùn)行維護(hù)介紹與難點(diǎn)分析l軟件生命周期模型軟件生命周期模型瀑布

2、模型瀑布模型原型模型原型模型螺旋模型螺旋模型 漸增模型漸增模型 測試測試 l 編程大師說:沒有錯誤的程序世間難求。編程大師說:沒有錯誤的程序世間難求。l 測試的目的是為了發(fā)現(xiàn)盡可能多的缺陷,不是為了測試的目的是為了發(fā)現(xiàn)盡可能多的缺陷,不是為了說明軟件中沒有缺陷。說明軟件中沒有缺陷。l 成功的測試在于發(fā)現(xiàn)了迄今尚未發(fā)現(xiàn)的缺陷。所以成功的測試在于發(fā)現(xiàn)了迄今尚未發(fā)現(xiàn)的缺陷。所以測試人員的職責(zé)是設(shè)計(jì)這樣的測試用例,它能有效測試人員的職責(zé)是設(shè)計(jì)這樣的測試用例,它能有效地揭示潛伏在軟件里的缺陷。地揭示潛伏在軟件里的缺陷。l 通過測試能提高軟件的質(zhì)量,但是提高質(zhì)量不能依通過測試能提高軟件的質(zhì)量,但是提高質(zhì)量

3、不能依賴測試。賴測試。l 測試只能證明缺陷存在,不能證明缺陷不存在。測試只能證明缺陷存在,不能證明缺陷不存在。 測試方法測試方法l測試方法:黑盒測試、白盒測試:測試方法:黑盒測試、白盒測試:白盒測試:關(guān)心軟件內(nèi)部設(shè)計(jì)和程序?qū)崿F(xiàn),主要白盒測試:關(guān)心軟件內(nèi)部設(shè)計(jì)和程序?qū)崿F(xiàn),主要測試依據(jù)是設(shè)計(jì)文檔。測試依據(jù)是設(shè)計(jì)文檔。黑盒測試:不關(guān)心軟件內(nèi)部,只關(guān)心輸入輸出,黑盒測試:不關(guān)心軟件內(nèi)部,只關(guān)心輸入輸出,主要測試依據(jù)是需求文檔。主要測試依據(jù)是需求文檔。 測試階段測試階段l 測試階段:單元測試、集成測試、系統(tǒng)測試、驗(yàn)收測試階段:單元測試、集成測試、系統(tǒng)測試、驗(yàn)收測試測試單元測試的粒度最小,一般由開發(fā)小組采

4、用白盒方式來測單元測試的粒度最小,一般由開發(fā)小組采用白盒方式來測試,主要測試單元是否符合試,主要測試單元是否符合“設(shè)計(jì)設(shè)計(jì)”。 集成測試界于單元測試和系統(tǒng)測試之間,起到集成測試界于單元測試和系統(tǒng)測試之間,起到“橋梁作橋梁作用用”,一般由開發(fā)小組采用白盒加黑盒的方式來測試,既,一般由開發(fā)小組采用白盒加黑盒的方式來測試,既要驗(yàn)證要驗(yàn)證“設(shè)計(jì)設(shè)計(jì)”又要驗(yàn)證又要驗(yàn)證“需求需求”。 系統(tǒng)測試的粒度最大,一般由獨(dú)立測試小組采用黑盒方式系統(tǒng)測試的粒度最大,一般由獨(dú)立測試小組采用黑盒方式來測試,主要測試系統(tǒng)是否符合來測試,主要測試系統(tǒng)是否符合“需求規(guī)格說明書需求規(guī)格說明書”。 驗(yàn)收測試與系統(tǒng)測試非常相似,主要

5、區(qū)別是測試人員不同,驗(yàn)收測試與系統(tǒng)測試非常相似,主要區(qū)別是測試人員不同,驗(yàn)收測試由用戶執(zhí)行。驗(yàn)收測試由用戶執(zhí)行。 測試分類與內(nèi)容測試分類與內(nèi)容 測試階段測試階段主要依據(jù)主要依據(jù)測試人員、測測試人員、測試方法試方法主要測試內(nèi)容主要測試內(nèi)容單元測試系統(tǒng)設(shè)計(jì)文檔由開發(fā)小組執(zhí)行白盒測試接口測試、路徑測試集成測試系統(tǒng)設(shè)計(jì)文檔需求文檔由開發(fā)小組執(zhí)行白盒測試和黑盒測試接口測試、路徑測試功能測試、性能測試系統(tǒng)測試需求文檔由獨(dú)立測試小組執(zhí)行黑盒測試功能測試、健壯性測試、性能測試、用戶界面測試、安全性測試、壓力測試、可靠性測試、安裝/反安裝測試驗(yàn)收測試需求文檔由用戶執(zhí)行黑盒測試 測試流程測試流程 l第一步:制定測

6、試計(jì)劃。該計(jì)劃被批準(zhǔn)后轉(zhuǎn)向第一步:制定測試計(jì)劃。該計(jì)劃被批準(zhǔn)后轉(zhuǎn)向第二步;第二步;l第二步:設(shè)計(jì)測試用例。該用例被批準(zhǔn)后轉(zhuǎn)向第二步:設(shè)計(jì)測試用例。該用例被批準(zhǔn)后轉(zhuǎn)向第三步;第三步;l第三步:如果滿足第三步:如果滿足“啟動準(zhǔn)則啟動準(zhǔn)則”,那么執(zhí)行測,那么執(zhí)行測試;試;l第四步:撰寫測試報告;第四步:撰寫測試報告;l第五步:消除軟件缺陷。如果滿足第五步:消除軟件缺陷。如果滿足“完成準(zhǔn)完成準(zhǔn)則則”,那么正常結(jié)束測試。,那么正常結(jié)束測試。 測試難點(diǎn)解析測試難點(diǎn)解析 1 l 盡早測試盡早測試應(yīng)當(dāng)把應(yīng)當(dāng)把“盡早地和不斷地進(jìn)行軟件測試盡早地和不斷地進(jìn)行軟件測試”作為軟件開發(fā)者作為軟件開發(fā)者的座右銘。的座右銘

7、。不應(yīng)把軟件測試僅僅看作是軟件開發(fā)的一個獨(dú)立階段,而不應(yīng)把軟件測試僅僅看作是軟件開發(fā)的一個獨(dú)立階段,而應(yīng)當(dāng)把它貫穿到軟件開發(fā)的各個階段中。避免測試自己的應(yīng)當(dāng)把它貫穿到軟件開發(fā)的各個階段中。避免測試自己的程序程序l 盡可能避免測試自己編寫的程序盡可能避免測試自己編寫的程序,程序開發(fā)小組也應(yīng)盡可能避免測試本小組開發(fā)的程序。,程序開發(fā)小組也應(yīng)盡可能避免測試本小組開發(fā)的程序。如果條件允許,最好建立獨(dú)立的軟件測試小組或測試機(jī)構(gòu)。如果條件允許,最好建立獨(dú)立的軟件測試小組或測試機(jī)構(gòu)。這點(diǎn)不能與程序的調(diào)試(這點(diǎn)不能與程序的調(diào)試(debuging)相混淆。調(diào)試由程)相混淆。調(diào)試由程序員自己來做更有效。序員自己來

8、做更有效。程序員可以自己進(jìn)行單元測試與集成測試,但是系統(tǒng)測試程序員可以自己進(jìn)行單元測試與集成測試,但是系統(tǒng)測試與驗(yàn)收測試由測試小組完成。與驗(yàn)收測試由測試小組完成。 測試難點(diǎn)解析測試難點(diǎn)解析 2l 測試用例中包括正確與錯誤的輸入與輸出測試用例中包括正確與錯誤的輸入與輸出 在設(shè)計(jì)測試用例時,應(yīng)當(dāng)包括合理的輸入條件和不合理的輸入條件。在設(shè)計(jì)測試用例時,應(yīng)當(dāng)包括合理的輸入條件和不合理的輸入條件。 合理的輸入條件是指能驗(yàn)證程序正確的輸入條件,不合理的輸入條件合理的輸入條件是指能驗(yàn)證程序正確的輸入條件,不合理的輸入條件是指異常的、臨界的,可能引起問題異變的輸入條件。是指異常的、臨界的,可能引起問題異變的輸

9、入條件。 軟件系統(tǒng)處理非法命令的能力必須在測試時受到檢驗(yàn)。軟件系統(tǒng)處理非法命令的能力必須在測試時受到檢驗(yàn)。 用不合理的輸入條件測試程序時,往往比用合理的輸入條件進(jìn)行測試用不合理的輸入條件測試程序時,往往比用合理的輸入條件進(jìn)行測試能發(fā)現(xiàn)更多的錯誤。能發(fā)現(xiàn)更多的錯誤。l 測試中的群集現(xiàn)象測試中的群集現(xiàn)象 在測試中存在著在測試中存在著80-20原則:原則:80的缺陷聚集在的缺陷聚集在20的模塊中,在被的模塊中,在被測程序段中,若發(fā)現(xiàn)錯誤數(shù)目多,則殘存錯誤數(shù)目也比較多。測程序段中,若發(fā)現(xiàn)錯誤數(shù)目多,則殘存錯誤數(shù)目也比較多。 這種錯誤群集性現(xiàn)象,已為許多程序的測試實(shí)踐所證實(shí)。這種錯誤群集性現(xiàn)象,已為許多

10、程序的測試實(shí)踐所證實(shí)。 根據(jù)這個規(guī)律,應(yīng)當(dāng)對錯誤群集的程序段進(jìn)行重點(diǎn)測試,以提高測試根據(jù)這個規(guī)律,應(yīng)當(dāng)對錯誤群集的程序段進(jìn)行重點(diǎn)測試,以提高測試投資的效益。投資的效益。 測試難點(diǎn)解析測試難點(diǎn)解析 3l嚴(yán)格執(zhí)行測試計(jì)劃,排除測試的隨意性嚴(yán)格執(zhí)行測試計(jì)劃,排除測試的隨意性測試之前應(yīng)仔細(xì)考慮測試的項(xiàng)目,對每一項(xiàng)測試測試之前應(yīng)仔細(xì)考慮測試的項(xiàng)目,對每一項(xiàng)測試做出周密的計(jì)劃,包括被測程序的功能、輸入和做出周密的計(jì)劃,包括被測程序的功能、輸入和輸出、測試內(nèi)容、進(jìn)度安排、資源要求等。輸出、測試內(nèi)容、進(jìn)度安排、資源要求等。 l注意回歸測試注意回歸測試測試應(yīng)當(dāng)循序漸進(jìn),不要企圖一次性干完,注意測試應(yīng)當(dāng)循序漸進(jìn),

11、不要企圖一次性干完,注意“欲速則不達(dá)欲速則不達(dá)”。有些錯誤的征兆在輸出實(shí)測結(jié)。有些錯誤的征兆在輸出實(shí)測結(jié)果時已經(jīng)明顯地出現(xiàn)了,但是如果不仔細(xì)地全面果時已經(jīng)明顯地出現(xiàn)了,但是如果不仔細(xì)地全面地檢查測試結(jié)果,就會使這些錯誤被遺漏掉。地檢查測試結(jié)果,就會使這些錯誤被遺漏掉。 測試難點(diǎn)解析測試難點(diǎn)解析 4l 利用測試工具提高測試效率利用測試工具提高測試效率測試工作在軟件開發(fā)整個過程中占有極為重要的位置,而測試工作在軟件開發(fā)整個過程中占有極為重要的位置,而全人工測試是非常麻煩的,所以測試過程的自動化已成為全人工測試是非常麻煩的,所以測試過程的自動化已成為測試發(fā)展的重要方向。測試發(fā)展的重要方向。測試工具的

12、選擇對測試的規(guī)范化影響很大,目前已開發(fā)出測試工具的選擇對測試的規(guī)范化影響很大,目前已開發(fā)出了各種自動化軟件測試工具,它們?yōu)檐浖y試提供了強(qiáng)有了各種自動化軟件測試工具,它們?yōu)檐浖y試提供了強(qiáng)有力的支持。力的支持。 l 利用利用bug管理工具管理測試過程管理工具管理測試過程bug也有其生命周期,通過管理工具對也有其生命周期,通過管理工具對bug進(jìn)行追蹤,用進(jìn)行追蹤,用以管理以管理bug提交、提交、bug消除,不僅能降低同樣錯誤的重復(fù)消除,不僅能降低同樣錯誤的重復(fù)發(fā)生,提高開效率,而且有助于項(xiàng)目管理的難度。發(fā)生,提高開效率,而且有助于項(xiàng)目管理的難度。 階段性成果階段性成果l軟件系統(tǒng)實(shí)現(xiàn)與測試計(jì)劃軟件

13、系統(tǒng)實(shí)現(xiàn)與測試計(jì)劃l軟件系統(tǒng)測試用例說明書軟件系統(tǒng)測試用例說明書l軟件系統(tǒng)測試總結(jié)報告軟件系統(tǒng)測試總結(jié)報告l經(jīng)過測試的系統(tǒng)經(jīng)過測試的系統(tǒng) 運(yùn)行維護(hù)運(yùn)行維護(hù) 1 l將軟件部署到用戶環(huán)境中運(yùn)行系統(tǒng)的過程,在將軟件部署到用戶環(huán)境中運(yùn)行系統(tǒng)的過程,在系統(tǒng)運(yùn)行的漫長過程中,若是出現(xiàn)問題,需要系統(tǒng)運(yùn)行的漫長過程中,若是出現(xiàn)問題,需要對系統(tǒng)進(jìn)行維護(hù)。對系統(tǒng)進(jìn)行維護(hù)。l系統(tǒng)在運(yùn)行期間,無論從系統(tǒng)的功能、硬件設(shè)系統(tǒng)在運(yùn)行期間,無論從系統(tǒng)的功能、硬件設(shè)備、軟件程序和網(wǎng)絡(luò)環(huán)境等,都可能出現(xiàn)使用備、軟件程序和網(wǎng)絡(luò)環(huán)境等,都可能出現(xiàn)使用戶不滿意的問題。因此,需要配備專門的維護(hù)戶不滿意的問題。因此,需要配備專門的維護(hù)人員

14、,分析系統(tǒng)存在的問題,及時修正出現(xiàn)的人員,分析系統(tǒng)存在的問題,及時修正出現(xiàn)的錯誤,使系統(tǒng)保持正常的運(yùn)行。錯誤,使系統(tǒng)保持正常的運(yùn)行。 運(yùn)行維護(hù)運(yùn)行維護(hù) 2l 系統(tǒng)運(yùn)行前,需要進(jìn)行培訓(xùn)工作、數(shù)據(jù)準(zhǔn)備與文檔移交。系統(tǒng)運(yùn)行前,需要進(jìn)行培訓(xùn)工作、數(shù)據(jù)準(zhǔn)備與文檔移交。l 培訓(xùn)工作包括對用戶的培訓(xùn)包括管理信息系統(tǒng)知識的普及、培訓(xùn)工作包括對用戶的培訓(xùn)包括管理信息系統(tǒng)知識的普及、新制度的學(xué)習(xí)、操作訓(xùn)練等。新制度的學(xué)習(xí)、操作訓(xùn)練等。l 開發(fā)新系統(tǒng)的過程中,就應(yīng)該進(jìn)行數(shù)據(jù)的準(zhǔn)備工作,按照系開發(fā)新系統(tǒng)的過程中,就應(yīng)該進(jìn)行數(shù)據(jù)的準(zhǔn)備工作,按照系統(tǒng)分析和系統(tǒng)設(shè)計(jì)、數(shù)據(jù)字典等為指導(dǎo),根據(jù)手工管理的資統(tǒng)分析和系統(tǒng)設(shè)計(jì)、數(shù)據(jù)

15、字典等為指導(dǎo),根據(jù)手工管理的資料,組織和整理所需的原始數(shù)據(jù)。在數(shù)據(jù)準(zhǔn)備過程中,遵循料,組織和整理所需的原始數(shù)據(jù)。在數(shù)據(jù)準(zhǔn)備過程中,遵循三個原則:真實(shí)性、準(zhǔn)確性、完整性。三個原則:真實(shí)性、準(zhǔn)確性、完整性。l 對在開發(fā)過程中形成的所有文檔資料,如可行性研究報告、對在開發(fā)過程中形成的所有文檔資料,如可行性研究報告、系統(tǒng)分析說明書、系統(tǒng)設(shè)計(jì)說明書、程序設(shè)計(jì)說明書、系統(tǒng)系統(tǒng)分析說明書、系統(tǒng)設(shè)計(jì)說明書、程序設(shè)計(jì)說明書、系統(tǒng)測試說明書、系統(tǒng)使用說明書等等,要由開發(fā)者移交給用戶,測試說明書、系統(tǒng)使用說明書等等,要由開發(fā)者移交給用戶,這些文檔資料十分重要,用戶單位應(yīng)該妥善保管,以便在系這些文檔資料十分重要,用戶

16、單位應(yīng)該妥善保管,以便在系統(tǒng)運(yùn)行過程中隨時查詢使用等。統(tǒng)運(yùn)行過程中隨時查詢使用等。 運(yùn)行維護(hù)運(yùn)行維護(hù) 3l 系統(tǒng)運(yùn)行包括系統(tǒng)的日常操作和維護(hù)等,系統(tǒng)的好系統(tǒng)運(yùn)行包括系統(tǒng)的日常操作和維護(hù)等,系統(tǒng)的好壞與系統(tǒng)分析設(shè)計(jì)、系統(tǒng)設(shè)計(jì)有很大的關(guān)系,也與壞與系統(tǒng)分析設(shè)計(jì)、系統(tǒng)設(shè)計(jì)有很大的關(guān)系,也與系統(tǒng)運(yùn)行有很大的關(guān)系。系統(tǒng)運(yùn)行有很大的關(guān)系。l 任何一個系統(tǒng)都不是一開始就很好的,總是經(jīng)過多任何一個系統(tǒng)都不是一開始就很好的,總是經(jīng)過多次的開發(fā)、運(yùn)行、再開發(fā)、再運(yùn)行的循環(huán)不斷上升次的開發(fā)、運(yùn)行、再開發(fā)、再運(yùn)行的循環(huán)不斷上升的。開發(fā)的思想只有在運(yùn)行中才能得到檢驗(yàn),而運(yùn)的。開發(fā)的思想只有在運(yùn)行中才能得到檢驗(yàn),而運(yùn)行中

17、發(fā)現(xiàn)的問題也是新的開發(fā)思想的源泉。行中發(fā)現(xiàn)的問題也是新的開發(fā)思想的源泉。l 系統(tǒng)維護(hù)是指為了應(yīng)付信息系統(tǒng)的環(huán)境和其他因素系統(tǒng)維護(hù)是指為了應(yīng)付信息系統(tǒng)的環(huán)境和其他因素的各種變化,保證系統(tǒng)正常運(yùn)行采取的一切活動,的各種變化,保證系統(tǒng)正常運(yùn)行采取的一切活動,包括改善系統(tǒng)功能、解決系統(tǒng)運(yùn)行期間發(fā)生問題兩包括改善系統(tǒng)功能、解決系統(tǒng)運(yùn)行期間發(fā)生問題兩個方面。個方面。 運(yùn)行維護(hù)難點(diǎn)解析運(yùn)行維護(hù)難點(diǎn)解析 1 l 用戶培訓(xùn)是關(guān)鍵用戶培訓(xùn)是關(guān)鍵 人都是有慣性的,用新系統(tǒng)取代舊系統(tǒng),必然需要讓系統(tǒng)的使用者放人都是有慣性的,用新系統(tǒng)取代舊系統(tǒng),必然需要讓系統(tǒng)的使用者放棄舊有的習(xí)慣來適應(yīng)的新的系統(tǒng)。這需要對用戶進(jìn)行培訓(xùn)

18、。棄舊有的習(xí)慣來適應(yīng)的新的系統(tǒng)。這需要對用戶進(jìn)行培訓(xùn)。 用戶培訓(xùn)的目的是讓用戶認(rèn)可新系統(tǒng),并且能夠平滑過渡到新系統(tǒng)下。用戶培訓(xùn)的目的是讓用戶認(rèn)可新系統(tǒng),并且能夠平滑過渡到新系統(tǒng)下。 針對不同的培訓(xùn)對象,培訓(xùn)不同的內(nèi)容,主要有以下幾個方面的內(nèi)容:針對不同的培訓(xùn)對象,培訓(xùn)不同的內(nèi)容,主要有以下幾個方面的內(nèi)容: 計(jì)算機(jī)應(yīng)用基礎(chǔ)知識(包括操作系統(tǒng)、漢字錄入);計(jì)算機(jī)應(yīng)用基礎(chǔ)知識(包括操作系統(tǒng)、漢字錄入); 網(wǎng)絡(luò)與通訊知識(包括網(wǎng)絡(luò)與通訊知識(包括internet和和intranet);); 系統(tǒng)所用主要軟件工具(編程語言、工具、軟件包、數(shù)據(jù)庫等)的使用;系統(tǒng)所用主要軟件工具(編程語言、工具、軟件包、數(shù)

19、據(jù)庫等)的使用; 系統(tǒng)整體結(jié)構(gòu),系統(tǒng)概貌;系統(tǒng)整體結(jié)構(gòu),系統(tǒng)概貌; 系統(tǒng)中蘊(yùn)含的管理思想;系統(tǒng)中蘊(yùn)含的管理思想; 系統(tǒng)操作方式;系統(tǒng)操作方式; 可能出現(xiàn)的故障以及故障的排除;可能出現(xiàn)的故障以及故障的排除; 運(yùn)行操作注意事項(xiàng)等。運(yùn)行操作注意事項(xiàng)等。 運(yùn)行維護(hù)難點(diǎn)解析運(yùn)行維護(hù)難點(diǎn)解析 2l以行政制度配合系統(tǒng)運(yùn)行以行政制度配合系統(tǒng)運(yùn)行系統(tǒng)能否為用戶創(chuàng)造價值,很大程度上取決于用系統(tǒng)能否為用戶創(chuàng)造價值,很大程度上取決于用戶對系統(tǒng)的認(rèn)可程度與使用程度。國內(nèi)許多單位戶對系統(tǒng)的認(rèn)可程度與使用程度。國內(nèi)許多單位上上erp失敗,并不是因?yàn)橄到y(tǒng)做的有問題,關(guān)鍵失敗,并不是因?yàn)橄到y(tǒng)做的有問題,關(guān)鍵問題在問題在“人人”

20、。即使用系統(tǒng)的人不認(rèn)可系統(tǒng)的管。即使用系統(tǒng)的人不認(rèn)可系統(tǒng)的管理思想,因此系統(tǒng)形同虛設(shè)。理思想,因此系統(tǒng)形同虛設(shè)。所以需要用戶高層以行政制度配合系統(tǒng)的使用,所以需要用戶高層以行政制度配合系統(tǒng)的使用,使系統(tǒng)能夠?yàn)橛脩粽嬲膭?chuàng)造價值。使系統(tǒng)能夠?yàn)橛脩粽嬲膭?chuàng)造價值。 運(yùn)行維護(hù)難點(diǎn)解析運(yùn)行維護(hù)難點(diǎn)解析 3l維護(hù)從軟硬件環(huán)境入手維護(hù)從軟硬件環(huán)境入手若是正常運(yùn)行的系統(tǒng),某一天忽然不能正常運(yùn)行,若是正常運(yùn)行的系統(tǒng),某一天忽然不能正常運(yùn)行,需要我們對其進(jìn)行維護(hù)。維護(hù)時不要首先對程序需要我們對其進(jìn)行維護(hù)。維護(hù)時不要首先對程序代碼進(jìn)行調(diào)試。因?yàn)橐郧澳軌蚍€(wěn)定運(yùn)行的系統(tǒng),代碼進(jìn)行調(diào)試。因?yàn)橐郧澳軌蚍€(wěn)定運(yùn)行的系統(tǒng),忽然

21、不能夠正常運(yùn)行,一般不是由于代碼問題造忽然不能夠正常運(yùn)行,一般不是由于代碼問題造成的。成的。維護(hù)的重點(diǎn)應(yīng)該放在軟硬件環(huán)境上。例如查看運(yùn)維護(hù)的重點(diǎn)應(yīng)該放在軟硬件環(huán)境上。例如查看運(yùn)行系統(tǒng)的軟件環(huán)境有沒有發(fā)生變化,查看是否由行系統(tǒng)的軟件環(huán)境有沒有發(fā)生變化,查看是否由于其它軟件與本系統(tǒng)軟件沖突造成的,一一排除于其它軟件與本系統(tǒng)軟件沖突造成的,一一排除軟件故障后,最后再調(diào)試程序代碼。軟件故障后,最后再調(diào)試程序代碼。 運(yùn)行維護(hù)階段性成果運(yùn)行維護(hù)階段性成果 l軟件系統(tǒng)用戶手冊軟件系統(tǒng)用戶手冊l系統(tǒng)幫助文檔系統(tǒng)幫助文檔l正常運(yùn)行的系統(tǒng)正常運(yùn)行的系統(tǒng) 軟件生命周期模型軟件生命周期模型 l軟件生命周期模型是建立確

22、定軟件生命周期內(nèi)軟件生命周期模型是建立確定軟件生命周期內(nèi)所有活動的次序的一種標(biāo)準(zhǔn),給出了軟件開發(fā)所有活動的次序的一種標(biāo)準(zhǔn),給出了軟件開發(fā)活動各階段之間的關(guān)系?;顒痈麟A段之間的關(guān)系。l常用模型有:常用模型有:瀑布模型瀑布模型原型模型原型模型螺旋模型螺旋模型 漸增模型漸增模型 瀑布模型瀑布模型 1 l 傳統(tǒng)的開發(fā)模型是瀑布模型(傳統(tǒng)的開發(fā)模型是瀑布模型(waterfall model),),由由w. royce于于1970年首先提出。根據(jù)軟件生命周期年首先提出。根據(jù)軟件生命周期各個階段的任務(wù),自頂向下從抽象到具體順序進(jìn)行。各個階段的任務(wù),自頂向下從抽象到具體順序進(jìn)行。l 瀑布模型是線型順序的,是項(xiàng)

23、目自始至終按照一定瀑布模型是線型順序的,是項(xiàng)目自始至終按照一定順序的步驟從需求分析進(jìn)展到系統(tǒng)測試直到提交用順序的步驟從需求分析進(jìn)展到系統(tǒng)測試直到提交用戶使用,它提供了一種結(jié)構(gòu)化的、自頂向下的軟件戶使用,它提供了一種結(jié)構(gòu)化的、自頂向下的軟件開發(fā)方法,每階段主要工作成果從一個階段傳遞到開發(fā)方法,每階段主要工作成果從一個階段傳遞到下一個階段,必須經(jīng)過嚴(yán)格的評審或測試,以判定下一個階段,必須經(jīng)過嚴(yán)格的評審或測試,以判定是否可以開始下一階段工作,各階段相互獨(dú)立、不是否可以開始下一階段工作,各階段相互獨(dú)立、不重疊。重疊。 瀑布模型瀑布模型 2 瀑布模型瀑布模型 3l 瀑布模型的特點(diǎn):瀑布模型的特點(diǎn):當(dāng)有一

24、個穩(wěn)定的產(chǎn)品需求定義和很容易被理解的技術(shù)解決當(dāng)有一個穩(wěn)定的產(chǎn)品需求定義和很容易被理解的技術(shù)解決方案時,該模型可通過階段評審以幫助項(xiàng)目組及早地發(fā)現(xiàn)方案時,該模型可通過階段評審以幫助項(xiàng)目組及早地發(fā)現(xiàn)問題及缺陷,而不至于將問題及缺陷帶入下游,從而避免問題及缺陷,而不至于將問題及缺陷帶入下游,從而避免發(fā)生更大的錯誤,避免花更多的時間去糾正;發(fā)生更大的錯誤,避免花更多的時間去糾正;當(dāng)要對一個定義得很好的版本進(jìn)行維護(hù)或?qū)⒁粋€產(chǎn)品移植當(dāng)要對一個定義得很好的版本進(jìn)行維護(hù)或?qū)⒁粋€產(chǎn)品移植到一個新的平臺上,瀑布模型是一個恰當(dāng)?shù)倪x擇;到一個新的平臺上,瀑布模型是一個恰當(dāng)?shù)倪x擇;當(dāng)團(tuán)隊(duì)技能比較弱或者缺乏經(jīng)驗(yàn)的時候,瀑

25、布模型提供了當(dāng)團(tuán)隊(duì)技能比較弱或者缺乏經(jīng)驗(yàn)的時候,瀑布模型提供了清晰的開發(fā)模式,并方便管理;清晰的開發(fā)模式,并方便管理;當(dāng)質(zhì)量要求高于成本和進(jìn)度要求時,它表現(xiàn)得尤為出色。當(dāng)質(zhì)量要求高于成本和進(jìn)度要求時,它表現(xiàn)得尤為出色。 瀑布模型瀑布模型 4l瀑布模型的缺點(diǎn):瀑布模型的缺點(diǎn):瀑布模型是一種理想化的線性模型,不能適用需瀑布模型是一種理想化的線性模型,不能適用需求的變化,無法克服變化引發(fā)的問題。如果上一求的變化,無法克服變化引發(fā)的問題。如果上一步做錯了,下一步也會跟著錯,直到產(chǎn)品做完了步做錯了,下一步也會跟著錯,直到產(chǎn)品做完了才發(fā)現(xiàn)需求的遺漏和錯誤,只好從頭到尾進(jìn)行修才發(fā)現(xiàn)需求的遺漏和錯誤,只好從頭

26、到尾進(jìn)行修改,這樣逆流而上解決問題是非常困難的;改,這樣逆流而上解決問題是非常困難的;開發(fā)人員常常陷入開發(fā)人員常常陷入“阻塞狀態(tài)阻塞狀態(tài)”,一部分組員不,一部分組員不得不停下來等待別人把前頭的任務(wù)完成;得不停下來等待別人把前頭的任務(wù)完成;該模型是在項(xiàng)目全部完成后一次性向客戶交付產(chǎn)該模型是在項(xiàng)目全部完成后一次性向客戶交付產(chǎn)品,而不能分階段的交付可運(yùn)行產(chǎn)品,不能滿足品,而不能分階段的交付可運(yùn)行產(chǎn)品,不能滿足急著使用產(chǎn)品的用戶,而會引起用戶的不滿。急著使用產(chǎn)品的用戶,而會引起用戶的不滿。 原型模型原型模型 1 l原型(原型(prototype)模型的基本思想是:首先)模型的基本思想是:首先建立一個能

27、反映用戶主要需求的原型系統(tǒng),讓建立一個能反映用戶主要需求的原型系統(tǒng),讓用戶使用該系統(tǒng),通過實(shí)踐,了解未來系統(tǒng)的用戶使用該系統(tǒng),通過實(shí)踐,了解未來系統(tǒng)的概貌,以便用戶判斷哪些功能符合他們的需要,概貌,以便用戶判斷哪些功能符合他們的需要,哪些功能應(yīng)該加強(qiáng),哪些功能需要補(bǔ)充,哪些哪些功能應(yīng)該加強(qiáng),哪些功能需要補(bǔ)充,哪些功能是多余的功能是多余的然后根據(jù)用戶的意見快速修然后根據(jù)用戶的意見快速修改系統(tǒng),再讓用戶使用。改系統(tǒng),再讓用戶使用。l這樣,對原型系統(tǒng)的反復(fù)試用和改進(jìn),最終建這樣,對原型系統(tǒng)的反復(fù)試用和改進(jìn),最終建立起完全符合用戶需要的新系統(tǒng)。立起完全符合用戶需要的新系統(tǒng)。 原型模型原型模型 2l 歷

28、史上曾經(jīng)形成實(shí)現(xiàn)原型模型的兩種途徑:拋棄原歷史上曾經(jīng)形成實(shí)現(xiàn)原型模型的兩種途徑:拋棄原型法和演化原型法。型法和演化原型法。拋棄原型法是通過建立一個原型,使用戶對系統(tǒng)有一個感拋棄原型法是通過建立一個原型,使用戶對系統(tǒng)有一個感性認(rèn)識,以便更準(zhǔn)確地確定需求,或者更嚴(yán)格地驗(yàn)證設(shè)計(jì)性認(rèn)識,以便更準(zhǔn)確地確定需求,或者更嚴(yán)格地驗(yàn)證設(shè)計(jì)方案。使用完之后就把這種原型系統(tǒng)拋棄掉,然后再重新方案。使用完之后就把這種原型系統(tǒng)拋棄掉,然后再重新建立正式的目標(biāo)系統(tǒng)。這種途徑本質(zhì)上仍屬于瀑布模型,建立正式的目標(biāo)系統(tǒng)。這種途徑本質(zhì)上仍屬于瀑布模型,建立原型只不過是一種輔助性的步驟。建立原型只不過是一種輔助性的步驟。演化原型法

29、是迭代的動態(tài)方法。在每次迭代過程中,都要演化原型法是迭代的動態(tài)方法。在每次迭代過程中,都要再次分析和確定需求,再次進(jìn)行設(shè)計(jì),再次實(shí)現(xiàn)系統(tǒng),以再次分析和確定需求,再次進(jìn)行設(shè)計(jì),再次實(shí)現(xiàn)系統(tǒng),以及再次進(jìn)行測試和評價。因此,早期所犯的錯誤其后果并及再次進(jìn)行測試和評價。因此,早期所犯的錯誤其后果并嚴(yán)重。這種途徑的動態(tài)性質(zhì)對開發(fā)者和用戶都是一種挑戰(zhàn),嚴(yán)重。這種途徑的動態(tài)性質(zhì)對開發(fā)者和用戶都是一種挑戰(zhàn),它的成功在很大程度上取決于開發(fā)者和用戶雙方是否愿意它的成功在很大程度上取決于開發(fā)者和用戶雙方是否愿意在很長一段時間內(nèi)對信息交流和修改系統(tǒng)采取開放的態(tài)度。在很長一段時間內(nèi)對信息交流和修改系統(tǒng)采取開放的態(tài)度。 原型模型原型模型 2l 基于演化原型法的軟件開發(fā)模型基于演化原型法的軟

溫馨提示

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

評論

0/150

提交評論