軟件工程軟件維護(hù)和軟件項(xiàng)目管理dedi

上傳人:仙*** 文檔編號:247089220 上傳時間:2024-10-17 格式:PPTX 頁數(shù):51 大?。?68.78KB
收藏 版權(quán)申訴 舉報 下載
軟件工程軟件維護(hù)和軟件項(xiàng)目管理dedi_第1頁
第1頁 / 共51頁
軟件工程軟件維護(hù)和軟件項(xiàng)目管理dedi_第2頁
第2頁 / 共51頁
軟件工程軟件維護(hù)和軟件項(xiàng)目管理dedi_第3頁
第3頁 / 共51頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《軟件工程軟件維護(hù)和軟件項(xiàng)目管理dedi》由會員分享,可在線閱讀,更多相關(guān)《軟件工程軟件維護(hù)和軟件項(xiàng)目管理dedi(51頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、,Click to edit Master title style,Click to edit Master text styles,Second Level,Third Level,Fourth Level,Fifth Level,第七章 軟件維護(hù)與軟件再工程,7.1,軟件維護(hù)的概念,四類維護(hù)活動:,改正性維護(hù),適應(yīng)性維護(hù),擴(kuò)充與完善性維護(hù),預(yù)防性維護(hù),三類維護(hù)所占比例:,其它維護(hù),5%,適應(yīng)性,維 護(hù),25%,改正性,維 護(hù),20%,擴(kuò)充與完,善性維護(hù),50%,改正性維護(hù)占全部維護(hù)量的比率已從80年代初,的20%大幅度下降,90年代初一些公司的產(chǎn)品,差錯率已接近于零,各類維護(hù)活動的根本目的

2、是,延長軟件生存期,其它維護(hù),4%,軟件,生存,周期,軟件誕生,計,劃,分,析,設(shè),計,編,碼,測,試,運(yùn)行和維護(hù)(簡稱維護(hù)),改善期 穩(wěn)定期 陳舊期,1年-10年,2個月-2年,重構(gòu),軟件工程周期,7.2,軟件維護(hù)的特點(diǎn),M,P,+,K,e,=,(,c,-,d,),M,:,維護(hù)工作總工作量,P,:,生產(chǎn)性工作量,K,:,經(jīng)驗(yàn)常數(shù),c,:復(fù)雜度,d,:,對該軟件熟悉程度的度量,7.2.1 維護(hù)的成本,7.2.2 維護(hù)中的典型問題,(1)難以跟蹤軟件版本的進(jìn)化過程,軟件的變化未在文檔中反映出來.,(2),難以跟蹤軟件的創(chuàng)建過程.,(3),難以讀懂他人程序.,(4)無文檔或不全.,(5)軟件人員流

3、動性大.,(6)設(shè)計時未考慮修改需要,修改困難.,(7)維護(hù)工作無吸引力,缺乏成就感.,7.3,軟件的維護(hù)任務(wù),7.3.1,維,護(hù)組織,7.3.2 維護(hù)報告,維護(hù)要求表,軟件維護(hù)人員提供給用戶的空白的維護(hù)要求表,也稱為軟件問題報告表,這個表格由要求一項(xiàng)維護(hù)活動的用戶填寫。,軟件維修報告,滿足維護(hù)要求表中的要求所需要的工作量;,維護(hù)要求的性質(zhì);,這項(xiàng)要求的優(yōu)先次序;,與修改有關(guān)的事后數(shù)據(jù)。,維護(hù)階段的事件流,不管維護(hù)類型如何,都需要進(jìn)行同樣的技術(shù)工作。這些工作包括修改軟件設(shè)計、復(fù)查、必要的代碼修改、單元測試和集成測試(包括使用以前的測試方案的回歸測試)、驗(yàn)收測試和復(fù)審。不同類型的維護(hù)強(qiáng)調(diào)的重點(diǎn)不

4、同,但是基本路徑是相同的。維護(hù)事件流中最后一個事件是復(fù)審,它再次檢驗(yàn)軟件配置的所有成分的有效性,并且保證事實(shí)上滿足了維護(hù)要求表中的要求。,軟件過程的輸出信息可以分為3類:計算機(jī)程序(源代碼和可執(zhí)行程序);描述計算機(jī)程序的文檔(供技術(shù)人員或用戶使用);數(shù)據(jù)(程序內(nèi)包含的或在程序外的)。上述這些項(xiàng)組成了在軟件過程中產(chǎn)生的全部信息,我們把它們統(tǒng)稱為軟件配置,而這些項(xiàng)就是軟件配置項(xiàng)。,7.3.4 保存維護(hù)記錄,維護(hù)過程中作應(yīng)記錄的數(shù)據(jù),程序標(biāo)識,源程序語句數(shù)目,機(jī)器代碼指令條數(shù),.,.,以收集的數(shù)據(jù)為基礎(chǔ)構(gòu)造維護(hù)數(shù)據(jù)庫,供維護(hù)評價使用.,7.3.5 評價維護(hù)活動,從七個方面度量(評價)維護(hù)工作:,(1

5、)每次程序運(yùn)行平均失效的次數(shù);,(2)用于每一類維護(hù)活動的總?cè)藭r數(shù);,(3)平均每個程序、每種語言、每種維護(hù)類型所做的程序變動數(shù);,(4)維護(hù)過程中增加或者刪除一個源語句平均花費(fèi)的人時數(shù);,(5)維護(hù)每種語言花費(fèi)的平均人時數(shù);,(6)一張維護(hù)要求表的平均周轉(zhuǎn)時間;,(7)不同維護(hù)類型所占的百分比。,7.4,軟件可維護(hù)性,7.4.1 軟件,可維,護(hù)性的定義,軟件可維護(hù)性是指糾正軟件系統(tǒng)出現(xiàn)的錯誤和缺陷,以及為滿足新的要求進(jìn)行修改、擴(kuò)充或壓縮的難易程度。,或者:,維護(hù)人員理解、改正、改動或者改進(jìn)這個軟件的難易程度。,7,.4.2,可維護(hù)性的度量,度量程序可維護(hù)性的7個特性在各類維護(hù),中的側(cè)重點(diǎn),改

6、正性維護(hù) 適應(yīng)性維護(hù) 完善性維護(hù),可理解性,可測試性,可修改性,可靠性,可移植性,可重用性,效率,7.5,提高可維護(hù)性的方法,建立明確的軟件質(zhì)量目標(biāo)和優(yōu)先級,使用提高軟件質(zhì)量的技術(shù)和工具,進(jìn)行明確的質(zhì)量保證審查,選擇可維護(hù)的程序設(shè)計語言,改進(jìn)程序的文檔,維護(hù)老化代碼,7.6 預(yù)防性維護(hù),維護(hù)老程序的方法:,(1)反復(fù)多次的做修改程序的嘗試;,(2)仔細(xì)分析程序盡可能多得掌握程序的內(nèi)部工作細(xì)節(jié),以便更加有效的修改它;,(3)在深入理解原有設(shè)計的基礎(chǔ)上,用軟件工程方法重新設(shè)計、重新編碼和測試那些需要變更的軟件部分;,(4)以軟件工程方法學(xué)為指導(dǎo),對程序全部重新設(shè)計、編碼和測試,為此可以使用逆向工程

7、和再工程工具來幫助理解原有的設(shè)計。,預(yù)防性維護(hù):把今天的方法學(xué)應(yīng)用到昨天的系統(tǒng)上,以支持明天的需求。,7.7 軟件再工程,7.7.1 軟件再工程,在軟件復(fù)用中,有問題是與現(xiàn)有系統(tǒng)密切相關(guān)的,例如:,現(xiàn)有軟件系統(tǒng)如何適應(yīng)當(dāng)前技術(shù)的發(fā)展及需求的變化,采用更易于理解的、適應(yīng)變化的、可復(fù)用的系統(tǒng)軟件構(gòu)架并提煉出可復(fù)用的軟件構(gòu)件?,現(xiàn)存大量的遺產(chǎn)軟件系統(tǒng)(Legacy Software)由于技術(shù)的發(fā)展,正逐漸退出使用,如何對這些系統(tǒng)進(jìn)行挖掘、整理,得到有用的軟件構(gòu)件?,已有的軟件構(gòu)件隨著時間的流逝會逐漸變得不可使用,如何對它們進(jìn)行維護(hù),以延長其生命期,充分利用這些可復(fù)用構(gòu)件?,軟件再工程,(Softwa

8、re Reengineering)正是解決上述問題的主要技術(shù)手段。,軟件再工程,是一類軟件工程活動,,是一個工程過程,它將,逆向工程,、,重構(gòu),和,正向工程,組合起來,將現(xiàn)存系統(tǒng)重新構(gòu)造為新的形式。再工程的基礎(chǔ)是系統(tǒng)理解,包括對運(yùn)行系統(tǒng)、源代碼、設(shè)計、分析、文檔等的全面理解。但在很多情況下,由于各類文檔的丟失,只能對源代碼進(jìn)行理解,即程序理解。,它能夠使我們:,增進(jìn)對軟件的理解;,提高軟件自身的可維護(hù)性、復(fù)用性或演化性.,軟件再工程過程模型,代碼重構(gòu),數(shù)據(jù)重構(gòu),正向工程,庫存目錄分析,文檔重構(gòu),逆向工程,軟件再工程相關(guān)術(shù)語間關(guān)系,信,息,庫,1類視圖:,非過程性描述、元描述,例:規(guī)格說明,再工

9、程,3類視圖:,過程性描述,例:源程序,再工程,2類視圖:,偽過程性描述、結(jié)構(gòu)性描述,例:DFD、PDL,A2類視圖:,分析,再工程,逆向工程,設(shè)計恢復(fù),再工程,逆向工程,設(shè)計恢復(fù),再工程,A1類視圖:,分析,A3類視圖:,分析,分解,綜合生,成視圖,軟件視圖,Software view,有關(guān)軟件的一種表達(dá)形式或報告;,視圖分類:,1類視圖:,2類視圖:,3類視圖:,A,類視圖:,伴隨上述各類的分析視圖;,A1,類視圖是對1類視圖的分析信息;,A2,類視圖是有關(guān)2類視圖的分析信息;,A3,類視圖是由3類視圖得到。,軟件視圖示例,信息庫,視圖編輯器,DFD,視圖編輯器,Petri網(wǎng),視圖編輯器,

10、ERA圖,視圖編輯器,跟蹤矩陣,X,X,X,Req1 Req2,Prog1,Prog2,Prog3,視圖編輯器,程序結(jié)構(gòu)圖,視圖編輯器,流程圖,視圖編輯器,規(guī)格說明,再工程信息庫及其產(chǎn)品,軟件文檔,分析結(jié)果,信息庫,設(shè)計成果,規(guī)格說明,各種圖,度量值,分析、分解器,源程序或其模板,(進(jìn)入點(diǎn)),源程序,自動進(jìn)行再工程的過程,軟件,軟件的,新視圖,語法分析器,語義分析器,視圖合成器,信息庫,其他,產(chǎn)品,經(jīng)過再工程,過程可獲得,的信息,格式,圖形,文檔,度量值,邏輯,報告,7.7.2 庫存目錄分析,仔細(xì)分析庫存目錄,按照業(yè)務(wù)重要程度、壽命、當(dāng)前可維護(hù)性、預(yù)期的修改次數(shù)等標(biāo)準(zhǔn),把庫中的應(yīng)用系統(tǒng)排序,從

11、中選出再工程的候選者,然后明智地分配再工程所需要的資源。,開發(fā)和維護(hù)者不應(yīng)等待用戶的維護(hù)申請,可先選擇以下類型程序作為預(yù)防性維護(hù)對象:,(1)預(yù)計若干年內(nèi)將繼續(xù)使用的程序,(2)當(dāng)今正成功使用的程序,(3)最近的將來要進(jìn)行大修改和完善的,程序,7.7.3 文檔重構(gòu),(1)保持現(xiàn)狀,(2)針對系統(tǒng)中當(dāng)前正在修改的那些部分建立完整文檔,(3)如果某應(yīng)用系統(tǒng)是完成業(yè)務(wù)工作的關(guān)鍵,而且必須重構(gòu)全部文檔,則仍然應(yīng)該設(shè)法把文檔工作減少到必需的最小量。,7.7.4 逆向工程,逆向工程(反推工程reverse engineering),從現(xiàn)有軟件恢復(fù)設(shè)計信息(有用的維護(hù)信息),非結(jié)構(gòu)化、無文檔,的源代碼或目標(biāo)

12、代碼,設(shè)計的,恢復(fù)過程,軟件的全部文檔,逆向工程恢復(fù)信息的級別:,(1)實(shí)現(xiàn)級,:,程序的抽象語法,樹、符號表等信息,(2)結(jié)構(gòu)級:,反映程序分量之間,相互依賴關(guān)系的信,息,如調(diào)用圖、結(jié),構(gòu)圖等.,(3)功能級:,反映程序段功能和,段間關(guān)系的信息,(4)領(lǐng)域級,:,反映程序分量與應(yīng),用領(lǐng)域概念間對應(yīng),關(guān)系的信息,抽,象,級,別,低,高,信息的抽象級別越高,它與代碼距,離越遠(yuǎn),通,過逆向工程,恢復(fù)的難度,越大,自動,工具支持的,可能性變小,逆向工程,源程序,目標(biāo)代碼,反匯編、反編譯,程序分析技術(shù),:程序結(jié)構(gòu)分析工具,程序功能分析工具,源程序,概要設(shè)計,詳細(xì)設(shè)計,概要設(shè)計,需求分析,7.7.5 正

13、向工程,正向工程也稱為革新或者改造,這項(xiàng)活動不僅從現(xiàn)有程序中恢復(fù)設(shè)計信息,而且使用該信息去改變或者重構(gòu)現(xiàn)有系統(tǒng),以提高整體質(zhì)量。,正向工程應(yīng)用軟件工程原理、概念、技術(shù)和方法來重新開發(fā)某個現(xiàn)有的應(yīng)用系統(tǒng)。在大多數(shù)情況下,被再工程的軟件不僅能構(gòu)重新實(shí)現(xiàn)現(xiàn)有系統(tǒng)的功能,而且加入了新功能和提高了整體性能。,7.7.6 代碼重構(gòu),重構(gòu)可疑模塊的代碼,首先,用重構(gòu)工具分析源代碼,標(biāo)注出需要重構(gòu)的代碼,然后,自動重構(gòu)有問題的代碼;,最后,復(fù)審和測試生成的重構(gòu)代碼。,7.7.7 數(shù)據(jù)重構(gòu),發(fā)生在較低抽象層次上,是一種全范圍內(nèi)的再工程活動。在大多數(shù)情況下,數(shù)據(jù)重構(gòu)始于逆向工程活動,分解當(dāng)前使用的數(shù)據(jù)體系結(jié)構(gòu),必

14、要時定義數(shù)據(jù)模型,標(biāo)識數(shù)據(jù)對象和屬性,并且從軟件質(zhì)量的角度復(fù)審現(xiàn)存的數(shù)據(jù)結(jié)構(gòu)。,7.,7,.3 為什么要實(shí)施軟件再工程,再工程可幫助降低軟件演化風(fēng)險,再工程可幫助補(bǔ)償軟件投資,再工程可使得軟件易于進(jìn)一步變更,再工程有廣闊市場,再工程擴(kuò)大了CASE工具集,再工程是推動自動軟件維護(hù)的動力,第八章 軟件項(xiàng)目管理,估算軟件規(guī)模,工作量估算,進(jìn)度計劃,人員組織,質(zhì)量保證,軟件配置管理,能力成熟度模型,8.1 估算軟件規(guī)模,1、代碼行技術(shù),L=,6,a+4m+b,由多名有經(jīng)驗(yàn)的軟件工程師分別作出估計。每個人都估計程序的最小規(guī)模a,最大規(guī)模b和最可能的規(guī)模m。,LOC,KLOC,2、功能點(diǎn)技術(shù),(1)信息域

15、特性,輸入項(xiàng)數(shù):用戶向軟件輸入的項(xiàng)數(shù),這些輸入給軟件提供面向應(yīng)用的數(shù)據(jù);,輸出項(xiàng)數(shù):軟件向用戶輸出的項(xiàng)數(shù),它們向用戶提供面向應(yīng)用的信息;,查詢數(shù):查詢就是一次聯(lián)機(jī)輸入,它導(dǎo)致軟件以聯(lián)機(jī)輸出方式產(chǎn)生某種即時響應(yīng);,主文件數(shù):邏輯主文件的數(shù)目;,外部接口數(shù):機(jī)器可讀的全部接口的數(shù)量,用這些接口把信息傳送給另一個系統(tǒng)。,(2)估算功能點(diǎn)的步驟,A、計算未調(diào)整的功能點(diǎn)數(shù)UFP,B、計算技術(shù)復(fù)雜性因子TCP,TCF=0.65+0.01DI,其中,DI是14種技術(shù)因素對軟件規(guī)模的綜合影響程度。,C、計算功能點(diǎn)數(shù)FP,FP=UFPTCF,8.2 工作量估算,靜態(tài)單變量模型,動態(tài)多變量模型,COCOMO2模型

16、,8.3 進(jìn)度計劃,估算開發(fā)時間,Gantt圖,工程網(wǎng)絡(luò),估算工程進(jìn)度,關(guān)鍵路徑,機(jī)動時間,8.4 人員組織,民主制程序員組,主程序員組,現(xiàn)代程序員組,圖 Putnam _ Norden 曲線,高,低,計劃,需求分析,初步設(shè)計,詳細(xì)設(shè)計,編碼,單元測試,整體測試,功能測試,管理人員,高級技術(shù)人員,初級技術(shù)人員,8.5 質(zhì)量保證,軟件質(zhì)量,軟件與明確地和隱含地定義的需求相一致的程序。,定義強(qiáng)調(diào)了三個要點(diǎn):,(1)軟件需求是度量軟件質(zhì)量的基礎(chǔ),與需求不一致就是質(zhì)量不高,(2)指定的開發(fā)標(biāo)準(zhǔn)定義了一組指導(dǎo)軟件開發(fā)的準(zhǔn)則,如果沒有遵守這些準(zhǔn)則,幾乎肯定會導(dǎo)致軟件質(zhì)量不高,(3)通常,有一組沒有顯式描述的需求,如果軟件滿足明確描述的需求,卻不滿足隱含的需求,那么軟件的質(zhì)量仍然是值得懷疑的。,產(chǎn)品運(yùn)行,產(chǎn)品,轉(zhuǎn)移,產(chǎn)品修改,可理解性,可維修性,靈活性,可測試性,可移植性,可再用性,互運(yùn)行性,正確性 完整性,健壯性 可用性,效率 風(fēng)險,軟件質(zhì)量因素與產(chǎn)品活動的關(guān)系,軟件質(zhì)量保證措施,SQA的措施主要有:,基于非執(zhí)行的測試(復(fù)審或者評審),基于執(zhí)行的測試,程序正確性證明,8.6 軟件配置管理,軟件配置

展開閱讀全文
溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  sobing.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!