課名軟件工程_第1頁
課名軟件工程_第2頁
課名軟件工程_第3頁
課名軟件工程_第4頁
課名軟件工程_第5頁
已閱讀5頁,還剩507頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2022-3-221課名:課名: 軟軟 件件 工工 程程主主 講:講: 謝謝 明明 志志EmailEmail:使用教材:軟件系統(tǒng)開發(fā)技術(修訂版)使用教材:軟件系統(tǒng)開發(fā)技術(修訂版) 潘錦平潘錦平 施小英施小英 姚天昉姚天昉 西安電子科技大學出版社西安電子科技大學出版社2022-3-222第一章 軟件工程概述2022-3-2231.1 1.1 軟件工程的背景和歷史軟件工程的背景和歷史n19681968年年由由NATO ( (北大西洋公約組織北大西洋公約組織) )在德國在德國Garmish召開的學術召開的學術會議會議上,上,F(xiàn)eitz BauerFeitz Bauer首首先提出了先提出了“軟件工

2、程軟件工程”概念。概念。2022-3-224軟件工程與編程軟件工程與編程n前者是一門學科,一前者是一門學科,一種科學理論來指導軟種科學理論來指導軟件系統(tǒng)開發(fā),標準化,件系統(tǒng)開發(fā),標準化,自動化的過程自動化的過程n考慮如何分解一個系考慮如何分解一個系統(tǒng),以便各人分工開統(tǒng),以便各人分工開發(fā);考慮如何說明每發(fā);考慮如何說明每個部分的規(guī)格要求;個部分的規(guī)格要求;怎樣才能易于維護怎樣才能易于維護n單純的代碼編寫單純的代碼編寫n是軟件工程發(fā)展的前是軟件工程發(fā)展的前身身n是軟件工程中占據(jù)很是軟件工程中占據(jù)很少時間和空間的一部少時間和空間的一部分分2022-3-225計算機學科的發(fā)展計算機學科的發(fā)展計算機科學

3、計算機科學(CS)計算機科學計算機科學 (CS)計算機工程計算機工程(CE)軟件工程軟件工程(SE)信息系統(tǒng)信息系統(tǒng)(IS)計算學科計算學科(computing discipline)2022-3-22660年代以來年代以來n工廠管理工廠管理n病人監(jiān)護病人監(jiān)護n工資統(tǒng)發(fā)工資統(tǒng)發(fā)n圖書館管理圖書館管理n機票預定機票預定n學籍管理學籍管理 早期早期 第二階段第二階段 第三階段第三階段 第四階段第四階段面向批處理面向批處理 多用戶多用戶 分布式系統(tǒng)分布式系統(tǒng) 強大的桌面系統(tǒng)強大的桌面系統(tǒng)有限的分布有限的分布 實時實時 嵌入嵌入“智能智能” ” 面向對象技面向對象技術術自定義軟件自定義軟件 數(shù)據(jù)庫數(shù)據(jù)

4、庫 低成本硬件低成本硬件 專家系專家系統(tǒng) 軟件產(chǎn)品軟件產(chǎn)品 消費者的影響消費者的影響 人工神經(jīng)網(wǎng)絡人工神經(jīng)網(wǎng)絡 并行計算并行計算 網(wǎng)絡計算機網(wǎng)絡計算機195019601970198019902000Evolution of software#2022-3-228為什么發(fā)展如此之快為什么發(fā)展如此之快n不準確的時間和金錢的估算不準確的時間和金錢的估算n軟件質量的低下軟件質量的低下n相對硬件產(chǎn)品開發(fā)軟件開發(fā)費用的增加相對硬件產(chǎn)品開發(fā)軟件開發(fā)費用的增加n維護、增強軟件系統(tǒng)的必要性維護、增強軟件系統(tǒng)的必要性n硬件價格大幅度下降硬件價格大幅度下降2022-3-229軟件技術面臨的問題軟件技術面臨的問題 規(guī)

5、模規(guī)模 復雜性復雜性 生產(chǎn)率生產(chǎn)率 Windows9595有有10001000萬行萬行代碼代碼 Windows20002000有有50005000萬行萬行代碼代碼例:例:Exchange2000和和 Windows20002000開發(fā)人員結構開發(fā)人員結構Exchange2000Windows20002000項目經(jīng)理項目經(jīng)理25人人約約250人人開發(fā)人員開發(fā)人員140人人約約1700人人測試人員測試人員350人人約約3200人人2022-3-2211人月神話人月神話焦油坑焦油坑 n史前史中,沒有別的場景比巨獸在焦油坑中垂史前史中,沒有別的場景比巨獸在焦油坑中垂死掙扎的場面更令人震撼。上帝見證著恐

6、龍、死掙扎的場面更令人震撼。上帝見證著恐龍、猛犸象、劍齒虎在焦油中掙扎。它們掙扎得越猛犸象、劍齒虎在焦油中掙扎。它們掙扎得越是猛烈,焦油糾纏得越緊,沒有任何猛獸足夠是猛烈,焦油糾纏得越緊,沒有任何猛獸足夠強壯或具有足夠的技巧,能夠掙脫束縛,它們強壯或具有足夠的技巧,能夠掙脫束縛,它們最后都沉到了坑底。最后都沉到了坑底。 2022-3-2212軟件危機的主要特征軟件危機的主要特征n軟件開發(fā)周期大大超過規(guī)定軟件開發(fā)周期大大超過規(guī)定 日期日期; ;n 軟件開發(fā)成本嚴重超標軟件開發(fā)成本嚴重超標; ;n 軟件質量軟件質量難于難于保證。保證。2022-3-2213軟件工程的定義軟件工程的定義 Fritz

7、Bauer在在NATO會議會議上給出的定義:上給出的定義: “軟件工程軟件工程是是為了經(jīng)濟地獲得可靠的和能為了經(jīng)濟地獲得可靠的和能在實際機器上高效運行的軟件在實際機器上高效運行的軟件而確立和使用而確立和使用的的健全健全的工程的工程原理(方法)原理(方法)?!?022-3-2214軟件工程的定義(軟件工程的定義(2) IEEE IEEE【IEE83】給出的給出的軟件工程軟件工程定義:定義:“軟件工程是軟件工程是開發(fā)、運行、開發(fā)、運行、維護和修復軟件的系統(tǒng)方法維護和修復軟件的系統(tǒng)方法?!?022-3-2215軟件工程的定義(軟件工程的定義(3) IEEEIEEE【IEE93】給出了一個更加給出了一

8、個更加綜合的定義:綜合的定義: “將系統(tǒng)化的、規(guī)范的、可將系統(tǒng)化的、規(guī)范的、可度量的方法應用于軟件的開發(fā)、度量的方法應用于軟件的開發(fā)、運行和維護的過程,即將工程化運行和維護的過程,即將工程化應用于軟件中應用于軟件中。”軟件工程是一門交叉學科軟件工程是一門交叉學科軟件工程的主要研究內容u軟件開發(fā)軟件開發(fā)技術技術: :軟件開發(fā)方法軟件開發(fā)方法學學 軟件開發(fā)過程軟件開發(fā)過程 軟件工具軟件工具和軟件工程和軟件工程環(huán)境環(huán)境 u軟件工程管理軟件工程管理: :軟件管理軟件管理學學 軟件經(jīng)濟學軟件經(jīng)濟學 軟件軟件心理學心理學 軟件工程所包含的內容不是一成不變的,軟件工程所包含的內容不是一成不變的,隨著人們對軟

9、件系統(tǒng)的研制開發(fā)和生產(chǎn)的理解。隨著人們對軟件系統(tǒng)的研制開發(fā)和生產(chǎn)的理解。應用發(fā)展的眼光看待它。應用發(fā)展的眼光看待它。2022-3-2217軟件工程軟件工程 一種層次化技術一種層次化技術工具工具方法方法過程過程質量焦點質量焦點Software engineering layers軟件工程軟件工程三個要素:三個要素:方法、工具、過程方法、工具、過程2022-3-2218軟件軟件工程與一般工程的差異工程與一般工程的差異u軟件是邏輯軟件是邏輯產(chǎn)品產(chǎn)品而不是而不是實物實物產(chǎn)品產(chǎn)品u軟件的功能依賴于硬件和軟件的運行環(huán)境以及人們軟件的功能依賴于硬件和軟件的運行環(huán)境以及人們對它的操作對它的操作u軟件設計的復雜

10、性軟件設計的復雜性u軟件特征軟件特征: 功能的多樣性功能的多樣性 實現(xiàn)的多樣性實現(xiàn)的多樣性 能見度低能見度低 軟件結構合理性差軟件結構合理性差u智力密集及知識產(chǎn)權保護智力密集及知識產(chǎn)權保護2022-3-2219軟件工程軟件工程知識結構知識結構20012001年年5 5月月ISO/IEC JTC 1ISO/IEC JTC 1(ISOISO和和IECIEC的第一聯(lián)合的第一聯(lián)合技術委員會)發(fā)布了技術委員會)發(fā)布了 SWEBOK指南指南V0.95(V0.95(試用試用版版) )SWEBOK把軟件工程學科的主體知識分為把軟件工程學科的主體知識分為10個知個知識領域。識領域。2022-3-2220軟件工程

11、軟件工程知識結構知識結構n 軟件需求軟件需求n 軟件設計軟件設計n 軟件構造軟件構造n 軟件測試軟件測試n 軟件維護軟件維護n 軟件配置管理軟件配置管理n 軟件工程管理軟件工程管理n 軟件工程過程軟件工程過程n 軟件工程工具和軟件工程工具和方法方法n 軟件質量軟件質量2022-3-2221“軟件工程軟件工程”課程課程 與其它軟件專業(yè)課的區(qū)別與其它軟件專業(yè)課的區(qū)別(1) (1) 立足于系統(tǒng)的整體。立足于系統(tǒng)的整體。(2) (2) 講授系統(tǒng)分析、系統(tǒng)設計、講授系統(tǒng)分析、系統(tǒng)設計、 測試及維護的理論和方法。測試及維護的理論和方法。(3) (3) 構筑一構筑一個軟件個軟件系統(tǒng)系統(tǒng),實踐,實踐 軟件開發(fā)

12、全過程軟件開發(fā)全過程。2022-3-2222“軟件工程軟件工程”課程教學課程教學的目標的目標u轉變轉變對軟件的認識:對軟件的認識: 上升上升 程序程序 系統(tǒng)系統(tǒng)u 轉變轉變思維定式:思維定式: 上升上升 程序員程序員 系統(tǒng)工程師系統(tǒng)工程師 ( (系統(tǒng)分析員系統(tǒng)分析員) )2022-3-2223軟件產(chǎn)品的標準化軟件產(chǎn)品的標準化軟件開發(fā)過程的標準化軟件開發(fā)過程的標準化2022-3-2224軟件的工業(yè)化生產(chǎn)過程應具備的特點:軟件的工業(yè)化生產(chǎn)過程應具備的特點:F明確的工作步驟明確的工作步驟F詳細具體的規(guī)范化文檔詳細具體的規(guī)范化文檔F明確的質量評價標準明確的質量評價標準“一個好的工業(yè),應有一套良好的標準

13、來配套”2022-3-2225軟件工程技術的兩個特點u 強調規(guī)范化強調規(guī)范化u 強調文檔化強調文檔化2022-3-22261.2 1.2 軟件和軟件生命期模型軟件和軟件生命期模型(Software Life Cycle) 軟件產(chǎn)品或軟件系統(tǒng)從設計、投入使用軟件產(chǎn)品或軟件系統(tǒng)從設計、投入使用到被淘汰的全過程到被淘汰的全過程。2022-3-2227軟件生存期的階段劃分(1)(1)可行性研究與計劃可行性研究與計劃(2)(2)需求分析需求分析(3)(3)總體設計總體設計 (4)(4)詳細設計詳細設計(5)(5)實現(xiàn)實現(xiàn)(6)(6)集成測試集成測試(7)(7)確認測試確認測試 (8)(8)使用和維護使用

14、和維護成長期(開發(fā)期)成長期(開發(fā)期)懷孕期(計劃期懷孕期(計劃期) 成年期(運行期)成年期(運行期)2022-3-2228新的國際標準定義的新的國際標準定義的軟件生存軟件生存過程(過程(1995 ISO/IEC 12207)軟件生存期過程軟件生存期過程支持過程支持過程組織過程組織過程主要過程主要過程獲獲取取過過程程供供應應過過程程開開發(fā)發(fā)過過程程運運行行過過程程維維護護過過程程文文檔檔編編制制過過程程配配置置管管理理過過程程質質量量保保證證過過程程驗驗證證過過程程確確認認過過程程聯(lián)聯(lián)合合評評審審過過程程審審核核過過程程問問題題解解決決過過程程管管理理過過程程基基礎礎設設施施過過程程改改進進過

15、過程程培培訓訓過過程程2022-3-2229軟件工作的范圍只考慮只考慮編寫程序編寫程序 涉及整個涉及整個軟件生存軟件生存周期周期擴展到擴展到2022-3-2230 軟件軟件開發(fā)開發(fā)模型是軟件開發(fā)全部過程、活動和任務模型是軟件開發(fā)全部過程、活動和任務的的結構框架結構框架。它能直觀表達軟件開發(fā)全過程,明確規(guī)定。它能直觀表達軟件開發(fā)全過程,明確規(guī)定要完成的主要活動、任務和開發(fā)策略。要完成的主要活動、任務和開發(fā)策略。 軟件軟件開發(fā)開發(fā)模型模型也常稱為:也常稱為: 軟件軟件過程過程模型模型 軟件生存軟件生存周周期模型期模型 軟件工程范型軟件工程范型軟件開發(fā)模型軟件開發(fā)模型可行性研究與計劃可行性研究與計劃

16、需求分析需求分析設計設計編碼編碼運行維護運行維護測試測試定義定義階段階段開開發(fā)發(fā)階階段段維護階段維護階段瀑布模型( (Waterfall Model) )2022-3-2232開發(fā)軟件不僅僅是編程開發(fā)軟件不僅僅是編程開發(fā)開發(fā)維護維護設計設計編寫編寫模塊測試模塊測試聯(lián)合測試聯(lián)合測試分析分析2022-3-2233按照傳統(tǒng)瀑布模型開發(fā)軟件的特點按照傳統(tǒng)瀑布模型開發(fā)軟件的特點1.1.階段間具有順序性和依賴性。階段間具有順序性和依賴性。2.2.推遲實現(xiàn)的觀點。推遲實現(xiàn)的觀點。3.3.每個階段必須完成規(guī)定的文檔每個階段必須完成規(guī)定的文檔; ; 每個階段結束前完成文檔審查每個階段結束前完成文檔審查, , 及

17、早改正錯誤。及早改正錯誤。2022-3-2234原型模型(快速快速原原型模型型模型)原型范型原型范型用戶測試用戶測試運行原型運行原型建造建造/ /修改修改 原型原型 聽取用聽取用 戶意見戶意見采用原型模型的軟件生存周期分析定義分析定義系統(tǒng)需求系統(tǒng)需求生成生成原型原型系統(tǒng)系統(tǒng)設計設計程序程序設計設計編碼編碼測試測試運運 行行和維護和維護原型化原型化含原型化的含原型化的軟件生存期軟件生存期2022-3-22361.3 1.3 軟件質量的評價軟件質量的評價n成功的標準成功的標準: 用戶在用戶在 用戶可很容易做完要做的事用戶可很容易做完要做的事n失敗的根本原因:失敗的根本原因: 開發(fā)人員寫出的東西達不

18、到開發(fā)人員寫出的東西達不到 用戶要求用戶要求( (人的問題人的問題. .技術問題技術問題) )2022-3-2237質量與生產(chǎn)率質量與生產(chǎn)率n質量是軟件需求方最關心的問題,用戶即使不質量是軟件需求方最關心的問題,用戶即使不圖物美價廉,也要求個貨真價實圖物美價廉,也要求個貨真價實 n質量與生產(chǎn)率之間有著內在的聯(lián)系,高生產(chǎn)率質量與生產(chǎn)率之間有著內在的聯(lián)系,高生產(chǎn)率必須以質量合格為前提必須以質量合格為前提 n質量與生產(chǎn)率的提高就指望程序員與程序經(jīng)理質量與生產(chǎn)率的提高就指望程序員與程序經(jīng)理 n非得在質量與生產(chǎn)率之間分個主次不可,那么非得在質量與生產(chǎn)率之間分個主次不可,那么應該是質量第一,生產(chǎn)率第二應該

19、是質量第一,生產(chǎn)率第二 2022-3-2238質量與生產(chǎn)率(質量與生產(chǎn)率(2)n質量直接體現(xiàn)在軟件的每段程序中,高質量自質量直接體現(xiàn)在軟件的每段程序中,高質量自然是開發(fā)人員的技術追求,也是職業(yè)道德的要然是開發(fā)人員的技術追求,也是職業(yè)道德的要求求 n高質量對所有的用戶都有價值,而高生產(chǎn)率只高質量對所有的用戶都有價值,而高生產(chǎn)率只對開發(fā)方有意義對開發(fā)方有意義 n如果一開始就追求高生產(chǎn)率,容易使人急功近如果一開始就追求高生產(chǎn)率,容易使人急功近利,留下隱患利,留下隱患 2022-3-2239不貪污的官就是好不貪污的官就是好官嗎官嗎n“運行正確運行正確”的程序就是高質量的程序嗎?的程序就是高質量的程序嗎

20、?n也許運行速度很低并且浪費內存;也許代碼寫也許運行速度很低并且浪費內存;也許代碼寫得一塌糊涂得一塌糊涂 2022-3-2240軟件的質量因素軟件的質量因素 n軟件的質量因素很多,如正確性、精確性、可軟件的質量因素很多,如正確性、精確性、可靠性、容錯性、性能、效率、易用性、可理解靠性、容錯性、性能、效率、易用性、可理解性、簡潔性、可復用性、可擴充性、兼容性等性、簡潔性、可復用性、可擴充性、兼容性等等(還可以列出十幾個)等(還可以列出十幾個) n一般說來傾向于可維護性、可靠性、可理解性一般說來傾向于可維護性、可靠性、可理解性和效率和效率2022-3-2241軟件質量因素分類和武學分軟件質量因素分

21、類和武學分類類 正確性與精確性易用性可理解性與簡潔性性能與效率可復用性與可擴充性少林派、武當派華山派昆侖派峨嵋派崆峒派2022-3-2242正確性與精確性正確性與精確性 n機器不會主動欺騙人,軟件運行不正確或者不機器不會主動欺騙人,軟件運行不正確或者不精確一般都是人造成的精確一般都是人造成的 n需求分析錯了,那么對客戶而言這個軟件也存需求分析錯了,那么對客戶而言這個軟件也存在錯誤在錯誤 n如果軟件沒有如果軟件沒有100% 地按需求規(guī)格執(zhí)行,那地按需求規(guī)格執(zhí)行,那么這個軟件也存在錯誤么這個軟件也存在錯誤n程序員要為程序員要為“正確正確”、“精確精確”四個字竭盡全四個字竭盡全力力 2022-3-2

22、243性能與效率性能與效率 n用戶都希望軟件的運行速度高些(高性能),用戶都希望軟件的運行速度高些(高性能),并且占用資源少些(高效率)并且占用資源少些(高效率) n舊社會地主就是這么對待長工的:干活要快點,舊社會地主就是這么對待長工的:干活要快點,吃得要少點吃得要少點 n通過優(yōu)化算法、數(shù)據(jù)結構和代碼組織來提高軟通過優(yōu)化算法、數(shù)據(jù)結構和代碼組織來提高軟件系統(tǒng)的性能與效率優(yōu)化的關鍵件系統(tǒng)的性能與效率優(yōu)化的關鍵n工作是找出限制性能與效率的工作是找出限制性能與效率的“瓶頸瓶頸” 2022-3-2244易用性易用性 n導致軟件易用性差的根本原因是開發(fā)人員犯了導致軟件易用性差的根本原因是開發(fā)人員犯了“錯

23、位錯位”的毛?。核詾橹灰约河闷饋矸奖?,的毛?。核詾橹灰约河闷饋矸奖?,用戶也一定會滿意用戶也一定會滿意 n當用戶真的感到軟件很好用時,一股溫暖的感當用戶真的感到軟件很好用時,一股溫暖的感覺油然而生,于是就用覺油然而生,于是就用“友好友好”來評價易用性來評價易用性 2022-3-2245可理解性與簡潔性可理解性與簡潔性(Note 1) n開發(fā)人員只有在自己思路清晰時才可能寫出讓開發(fā)人員只有在自己思路清晰時才可能寫出讓別人能理解的程序別人能理解的程序 n編程時還要注意不可濫用技巧,應該用自然的編程時還要注意不可濫用技巧,應該用自然的方式編程方式編程 n簡潔是一種美簡潔是一種美 n如果把學術文

24、章寫得很簡潔,讓人很容易理解,如果把學術文章寫得很簡潔,讓人很容易理解,它往往中不了它往往中不了 2022-3-2246可復用性與可擴充可復用性與可擴充性性 n一種方式是原封不動地使用現(xiàn)成的軟件構件一種方式是原封不動地使用現(xiàn)成的軟件構件 n一種方式是對現(xiàn)成的軟構件進行必要的擴充后一種方式是對現(xiàn)成的軟構件進行必要的擴充后再使用再使用 n可復用性好的程序一般也具有良好的可擴充可復用性好的程序一般也具有良好的可擴充性性 2022-3-2247可行性研究與計劃可行性研究與計劃需求分析需求分析設計設計編碼編碼運行維護運行維護測試測試測試已經(jīng)開始返回上級,再.瀑布模型的質量保障體系2022-3-2248小

25、結小結(Note 2)n軟件的高質量主要是設計出來的軟件的高質量主要是設計出來的n不是不是“管管”出來的出來的n更不能依賴質量檢查。更不能依賴質量檢查。 2022-3-2249第二章第二章 可行性研究與計劃可行性研究與計劃2022-3-2250系統(tǒng)流程圖系統(tǒng)流程圖(Note 3)輸入單據(jù)輸入單據(jù)磁盤文件磁盤文件處理處理輸出單據(jù)輸出單據(jù)2022-3-2251數(shù)據(jù)流程圖數(shù)據(jù)流程圖數(shù)據(jù)源點數(shù)據(jù)源點和終點和終點變換數(shù)據(jù)變換數(shù)據(jù)的加工的加工文件文件數(shù)據(jù)數(shù)據(jù)邏輯關系符號:與、或、異或邏輯關系符號:與、或、異或 2022-3-2252 2.1可行性研究基本概念可行性研究基本概念n可行性研究的任務:可行性研究

26、的主要任務是可行性研究的主要任務是“了解客戶的要求及了解客戶的要求及現(xiàn)實環(huán)境,從技術、經(jīng)濟和社會因素等三方面現(xiàn)實環(huán)境,從技術、經(jīng)濟和社會因素等三方面研究并論證本軟件項目的可行性,編寫可行性研究并論證本軟件項目的可行性,編寫可行性研究報告,制定初步項目開發(fā)計劃。研究報告,制定初步項目開發(fā)計劃?!?022-3-2253可行性研究的內容( (1)1)技術可行性技術可行性(2)(2)經(jīng)濟可行性經(jīng)濟可行性(3)(3)操作可行性操作可行性(4)(4)社會可行性社會可行性( (法律可行性法律可行性) )(5)(5)抉擇抉擇2022-3-2254技術可行性技術可行性(Note 4)(Note 4)n度量一個特

27、定技術信息系統(tǒng)解決方案度量一個特定技術信息系統(tǒng)解決方案的實用性及技術資源的可用性的實用性及技術資源的可用性考慮的問題考慮的問題n開發(fā)風險開發(fā)風險分析分析n資源資源分析分析n相關技術的發(fā)展相關技術的發(fā)展(現(xiàn)有技術能否實現(xiàn)新系(現(xiàn)有技術能否實現(xiàn)新系統(tǒng),技術難點、建議采用技術的先進性)統(tǒng),技術難點、建議采用技術的先進性)2022-3-2255經(jīng)濟可行性經(jīng)濟可行性度量系統(tǒng)解決方案的性能價格比度量系統(tǒng)解決方案的性能價格比考慮的問題考慮的問題 成本成本/ /效益分析效益分析n有形成本、效益有形成本、效益n無形成本、效益無形成本、效益 價值和成本的關系價值和成本的關系n質量與價值、成本的關系質量與價值、成本

28、的關系n價值價值/ /成本的均衡成本的均衡2022-3-2256經(jīng)濟可行性考慮的問題經(jīng)濟可行性考慮的問題( (Note 5)Note 5)成本和效益的估算成本和效益的估算開發(fā)成本的估算開發(fā)成本的估算開發(fā)效益的估算開發(fā)效益的估算運行成本的估算運行成本的估算運行效益的估算運行效益的估算2022-3-2257成本分析成本分析n代碼行技術代碼行技術n(page 19)n任務估算技術任務估算技術n(page 20)n總成本、總人力相對誤差在總成本、總人力相對誤差在 內內nPutnam估算模型估算模型n(page 21 )nCOCOMO模型比較復雜模型比較復雜20%2022-3-2258效益分析效益分析n

29、系統(tǒng)的經(jīng)濟效益使用新系統(tǒng)增加收入使用系統(tǒng)的經(jīng)濟效益使用新系統(tǒng)增加收入使用心系統(tǒng)可以節(jié)省的運行費用心系統(tǒng)可以節(jié)省的運行費用n總的效益和軟件生存周期有關總的效益和軟件生存周期有關n貨幣的時間價值(貨幣的時間價值(page23)n投資回收期(投資回收期(page23)n投資回收率投資回收率(page23)n純收入(純收入(page23)n投資回收率投資回收率2022-3-2259系統(tǒng)開發(fā)和每年運行費用舉例系統(tǒng)開發(fā)和每年運行費用舉例1.1.系統(tǒng)開發(fā)費用(一次)系統(tǒng)開發(fā)費用(一次). .2 2名系統(tǒng)分析員名系統(tǒng)分析員(450(450小時小時/ /名名,45,45美元美元/ /小時小時) $40,500)

30、 $40,500. .5 5名系統(tǒng)開發(fā)人員名系統(tǒng)開發(fā)人員(275(275小時小時/ /名名,36,36美元美元/ /小時小時)$49,500)$49,500. .1 1名數(shù)據(jù)庫管理員名數(shù)據(jù)庫管理員(30(30小時小時/ /名名,42,42美元美元/ /小時小時) $1,260) $1,260. .2 2名技術寫作者名技術寫作者(120(120小時小時/ /名名,25,25美元美元/ /小時小時) $6,000) $6,000. .1 1名秘書名秘書(160(160小時小時/ /名名,15,15美元美元/ /小時小時) $2,400) $2,4002022-3-2260系統(tǒng)開發(fā)和每年運行費用舉例

31、系統(tǒng)開發(fā)和每年運行費用舉例n. .1 1名數(shù)據(jù)通訊專家名數(shù)據(jù)通訊專家(60(60小時小時/ /名名,42,42美元美元/ /小時小時) ) $2,400$2,400n2 2名在轉換期間數(shù)據(jù)輸入人員名在轉換期間數(shù)據(jù)輸入人員 $49,500$49,500 (40 (40小時小時/ /名名,12,12美元美元/ /小時小時) )2022-3-2261系統(tǒng)開發(fā)和每年運行費用舉例系統(tǒng)開發(fā)和每年運行費用舉例培訓:培訓:l三天的開發(fā)人員內部培訓課程三天的開發(fā)人員內部培訓課程 $7,000$7,000l3030個用戶,三天的內部培訓課程個用戶,三天的內部培訓課程 $10,000$10,000物資:物資:l復印

32、復印 $500$500l磁盤、紙張等消耗品磁盤、紙張等消耗品 $650$6502022-3-2262系統(tǒng)開發(fā)和每年運行費用舉例系統(tǒng)開發(fā)和每年運行費用舉例購買硬件、軟件:購買硬件、軟件:l2020臺工作站臺工作站W(wǎng)indowsWindows軟件軟件 $1,000$1,000l2020臺工作站內存升級臺工作站內存升級 $8,000$8,000l網(wǎng)絡軟件網(wǎng)絡軟件 $17,500$17,500l2020臺工作站辦公軟件產(chǎn)品臺工作站辦公軟件產(chǎn)品 $20,000$20,000系統(tǒng)開發(fā)總費用系統(tǒng)開發(fā)總費用 $161,670$161,6702022-3-2263系統(tǒng)開發(fā)和每年運行費用舉例系統(tǒng)開發(fā)和每年運行費用

33、舉例2.2.年運行費用(每年)年運行費用(每年)人員:人員:l維護程序員維護程序員/ /分析員分析員( (250250小時小時/ /年年,42,42美元美元/ /小時小時) ) $10,500$10,500l網(wǎng)絡管理員網(wǎng)絡管理員( (300300小時小時/ /年年,50,50美元美元/ /小時小時) $) $15,00015,000購買硬件、軟件升級:購買硬件、軟件升級:l硬件硬件 $ $5,0005,000l軟件軟件 $ $6,0006,000物資和雜項物資和雜項 $ $3,5003,500每年總運行費用每年總運行費用 $40,000$40,0002022-3-2264操作操作可行性可行性

34、用戶使用可能性用戶使用可能性 時間進度可行性時間進度可行性 組織和文化上的可行性組織和文化上的可行性2022-3-2265社會可行性社會可行性( (法律可行性法律可行性) )開發(fā)項目是否會在社會上或政治上開發(fā)項目是否會在社會上或政治上引起侵權、破壞或其它責任問題引起侵權、破壞或其它責任問題2022-3-2266可行性研究計劃的完成可行性研究計劃的完成n可行性研究計劃2022-3-22672.3 2.3 可行性研究的步驟可行性研究的步驟(page15page15) (1)(1)復查確認系統(tǒng)目標、規(guī)模復查確認系統(tǒng)目標、規(guī)模 (2)(2)研究正使用系統(tǒng)工作流程研究正使用系統(tǒng)工作流程 (3)(3)導出

35、新系統(tǒng)高層邏輯模型導出新系統(tǒng)高層邏輯模型 (4)(4)重新定義問題重新定義問題 (5)(5)導出和評價供選擇的方案導出和評價供選擇的方案 (6)(6)推薦推薦可行的方案可行的方案 (7)(7)草擬開發(fā)計劃草擬開發(fā)計劃 (8)(8)編寫可行性研究報告編寫可行性研究報告,送審,送審2022-3-2268第三章第三章 需求分析和規(guī)格需求分析和規(guī)格說明說明2022-3-22693.1 3.1 為什么需要需求分析為什么需要需求分析n開發(fā)人員往往急于求成開發(fā)人員往往急于求成n希望對開發(fā)進行指導希望對開發(fā)進行指導n希望開發(fā)人員對用戶的要求理解希望開發(fā)人員對用戶的要求理解n希望用戶理解開發(fā)人員希望用戶理解開發(fā)

36、人員n測試部門有理可依測試部門有理可依2022-3-2270需求分析的任務需求分析的任務準確地準確地定義定義未來系統(tǒng)的目標,確定為未來系統(tǒng)的目標,確定為了滿足用戶的需求系統(tǒng)必須做什么。用了滿足用戶的需求系統(tǒng)必須做什么。用 規(guī)范的形式準確地表規(guī)范的形式準確地表達用戶的達用戶的需求需求。2022-3-2271什么是用戶需求什么是用戶需求n思考、涉及的幾個問題思考、涉及的幾個問題v如何識別、獲取需求如何識別、獲取需求? ? 你能夠采取何種手段與用戶進行交流溝通你能夠采取何種手段與用戶進行交流溝通? ?v何為需求建模何為需求建模? ? 你如何理解模型與建模你如何理解模型與建模? ?2022-3-227

37、2軟件需求分析的幾個階段軟件需求分析的幾個階段問題分析問題分析問題評估和方案綜合問題評估和方案綜合建模建模規(guī)約規(guī)約復審復審 系統(tǒng)分析員的主要系統(tǒng)分析員的主要焦點焦點是是 “ “做什么做什么(whatwhat)” ” ,不是,不是 “ “怎樣做怎樣做(howhow)”2022-3-2273需求獲取面臨的挑戰(zhàn)需求獲取面臨的挑戰(zhàn)( (Note 6)Note 6)L 客戶說不清楚需求客戶說不清楚需求L 需求易變性需求易變性L問題的復雜性和對問題空間問題的復雜性和對問題空間 理解的不完備性與不一致性理解的不完備性與不一致性2022-3-22743.2 3.2 需求獲取的常用方法需求獲取的常用方法(Not

38、e 7Note 7)建立分析小組建立分析小組 領域專家:領域專家: 主角主角 系統(tǒng)分析員:導演系統(tǒng)分析員:導演客戶訪談客戶訪談問題分析與確認問題分析與確認 某出版社系統(tǒng)調查表某出版社系統(tǒng)調查表編號提出問題1您在哪個部門工作?您在哪個部門工作?2出版業(yè)務流程是什么?出版業(yè)務流程是什么?3您每日都處理那些文件、數(shù)據(jù)、報表?您每日都處理那些文件、數(shù)據(jù)、報表?4工作中手工處理特別麻煩的事情是什么?工作中手工處理特別麻煩的事情是什么?5工作中手工處理什么問題解決不了?影響效率的工作中手工處理什么問題解決不了?影響效率的問題有哪些?問題有哪些?6您認為提高工作效率,節(jié)省工作時間,減輕工作您認為提高工作效率

39、,節(jié)省工作時間,減輕工作強度可采取哪些辦法?強度可采取哪些辦法?某出版社系統(tǒng)調查表某出版社系統(tǒng)調查表編號提出問題7您的部門需要成本核算和統(tǒng)計的內容有哪些?您的部門需要成本核算和統(tǒng)計的內容有哪些?8您的部門采用計算機管理工作情況如何?您的部門采用計算機管理工作情況如何?9如何改進業(yè)務流程使之更合理?如何改進業(yè)務流程使之更合理?10哪些問題是目前傳統(tǒng)手工方法根本無法解決的?哪些問題是目前傳統(tǒng)手工方法根本無法解決的?11出版社計算機管理信息系統(tǒng)需要解決什么問題?出版社計算機管理信息系統(tǒng)需要解決什么問題?2022-3-2277聽一個故事聽一個故事(Note 8)n主人公:主人公:nC o n t o

40、s o制藥公司的高級管理長官制藥公司的高級管理長官Gerhard nC o n t o s o公司的信息系統(tǒng)開發(fā)小組的新管公司的信息系統(tǒng)開發(fā)小組的新管理員理員Cynthian內容:內容:n客戶的需求觀客戶的需求觀 2022-3-2278誰是客戶誰是客戶n客戶是指直接或間接從產(chǎn)品中獲得利益的個人客戶是指直接或間接從產(chǎn)品中獲得利益的個人或組織或組織 n軟件客戶包括提出要求、支付款項、選擇、具軟件客戶包括提出要求、支付款項、選擇、具體說明或使用軟件產(chǎn)品的項目風險承擔者體說明或使用軟件產(chǎn)品的項目風險承擔者( s ( s t a k e h o l d e r )t a k e h o l d e r

41、)或是獲得產(chǎn)品所產(chǎn)生或是獲得產(chǎn)品所產(chǎn)生的結果的人。的結果的人。2022-3-2279客戶與開發(fā)人員之間的合作關系客戶與開發(fā)人員之間的合作關系(Note 10) n高質量的需求來源于客戶與開發(fā)人員之間有效高質量的需求來源于客戶與開發(fā)人員之間有效的交流與合作的交流與合作 n通常,開發(fā)人員與客戶或客戶代理人成為一種通常,開發(fā)人員與客戶或客戶代理人成為一種對立關系對立關系 2022-3-2280軟件客戶需求權利書(軟件客戶需求權利書(1)(Note 11) 客戶有如下權利:客戶有如下權利:1. 要求分析人員使用符合客戶語言習慣的表達。要求分析人員使用符合客戶語言習慣的表達。2. 要求分析人員了解客戶系

42、統(tǒng)的業(yè)務及目標。要求分析人員了解客戶系統(tǒng)的業(yè)務及目標。3. 要求分析人員組織需求獲取期間所介紹的信要求分析人員組織需求獲取期間所介紹的信息,并編寫軟件需求規(guī)格說明。息,并編寫軟件需求規(guī)格說明。4. 要求開發(fā)人員對需求過程中所產(chǎn)生的工作結要求開發(fā)人員對需求過程中所產(chǎn)生的工作結果進行解釋說明。果進行解釋說明。5. 要求開發(fā)人員在整個交流過程中保持和維護要求開發(fā)人員在整個交流過程中保持和維護一種合作的職業(yè)態(tài)度。一種合作的職業(yè)態(tài)度。2022-3-2281軟件客戶需求權利書(軟件客戶需求權利書(2)(Note 12)6. 要求開發(fā)人員對產(chǎn)品的實現(xiàn)及需求都要提供要求開發(fā)人員對產(chǎn)品的實現(xiàn)及需求都要提供建議,

43、拿出主意。建議,拿出主意。7. 描述產(chǎn)品使其具有易用、好用的特性。描述產(chǎn)品使其具有易用、好用的特性。8. 可以調整需求,允許重用已有的軟件組件??梢哉{整需求,允許重用已有的軟件組件。9. 當需要對需求進行變更時,對成本、影響、當需要對需求進行變更時,對成本、影響、得失(得失( t r a d e - o ff)有個真實可信的評估。)有個真實可信的評估。10. 獲得滿足客戶功能和質量要求的系統(tǒng),并且獲得滿足客戶功能和質量要求的系統(tǒng),并且這些要求是開發(fā)人員同意的。這些要求是開發(fā)人員同意的。 2022-3-2282軟件客戶需求義務書軟件客戶需求義務書 (1)(Note 13)客戶有下列義務:客戶有下

44、列義務:1. 1. 給分析人員講解業(yè)務及說明業(yè)務方面的術語給分析人員講解業(yè)務及說明業(yè)務方面的術語等專業(yè)問題。等專業(yè)問題。2. 2. 抽出時間清楚地說明需求并不斷完善。抽出時間清楚地說明需求并不斷完善。3. 3. 當說明系統(tǒng)需求時,力求準確詳細。當說明系統(tǒng)需求時,力求準確詳細。4. 4. 需要時要及時對需求做出決策。需要時要及時對需求做出決策。5. 5. 要尊重開發(fā)人員的成本估算和對需求的可行要尊重開發(fā)人員的成本估算和對需求的可行性分析。性分析。2022-3-2283軟件客戶需求義務書(軟件客戶需求義務書(2)(Note 14)6. 6. 對單項需求、系統(tǒng)特性或使用實例劃分優(yōu)先對單項需求、系統(tǒng)特

45、性或使用實例劃分優(yōu)先級。級。7. 7. 評審需求文檔和原型。評審需求文檔和原型。8. 8. 一旦知道要對項目需求進行變更,要馬上與一旦知道要對項目需求進行變更,要馬上與開發(fā)人員聯(lián)系。開發(fā)人員聯(lián)系。9. 9. 在要求需求變更時,應遵照開發(fā)組織確定的在要求需求變更時,應遵照開發(fā)組織確定的工作過程來處理。工作過程來處理。10. 10. 尊重需求工程中開發(fā)人員采用的流程(過尊重需求工程中開發(fā)人員采用的流程(過程)。程)。 2022-3-2284“簽約簽約”意味著什么意味著什么 (Note 15)n客戶與開發(fā)人員關系中的重要部分客戶與開發(fā)人員關系中的重要部分 n客戶代表經(jīng)常把客戶代表經(jīng)常把“簽約簽約”看

46、作是毫無意義的看作是毫無意義的 n更為重要的是簽名是建立在一個需求協(xié)議的基更為重要的是簽名是建立在一個需求協(xié)議的基線上線上 n與你的重要客戶一起討論權利書和義務書,以與你的重要客戶一起討論權利書和義務書,以達成協(xié)議,并付諸實踐達成協(xié)議,并付諸實踐 2022-3-2285高質量的需求過程帶來的好處高質量的需求過程帶來的好處(Note 16)n開發(fā)后期和整個維護階段的重做的工作大大減開發(fā)后期和整個維護階段的重做的工作大大減少少 n強調需求質量并不能引起某些人的重視強調需求質量并不能引起某些人的重視, ,他們他們錯誤地認為在需求上消耗多少時間就會導致產(chǎn)錯誤地認為在需求上消耗多少時間就會導致產(chǎn)品開發(fā)推

47、遲多少時間品開發(fā)推遲多少時間n將選定系統(tǒng)的需求明確地分配到各軟件子系統(tǒng),將選定系統(tǒng)的需求明確地分配到各軟件子系統(tǒng),強調采用產(chǎn)品工程的系統(tǒng)方法。這樣能簡化硬強調采用產(chǎn)品工程的系統(tǒng)方法。這樣能簡化硬軟件的集成軟件的集成 2022-3-2286優(yōu)秀需求具有的特性優(yōu)秀需求具有的特性( (Note 17)Note 17)n1. 1. 完整性完整性 n2. 2. 正確性正確性 n3. 3. 可行性可行性 n4. 4. 必要性必要性 n5. 5. 劃分優(yōu)先級劃分優(yōu)先級 n6. 6. 無二義性無二義性 n7. 7. 可驗證性可驗證性 2022-3-22873.3 3.3 需求獲取的內容需求獲取的內容 1.1.

48、用戶需求分類用戶需求分類 (1)(1)功能性需求功能性需求: : 定義了系統(tǒng)做什么(描述系統(tǒng)必須支持定義了系統(tǒng)做什么(描述系統(tǒng)必須支持 的功能和過程)的功能和過程) (2)(2)非功能性需求(技術需求)非功能性需求(技術需求): : 定義了系統(tǒng)工作時的特性定義了系統(tǒng)工作時的特性 (描述操作環(huán)境和性能目標)(描述操作環(huán)境和性能目標)2022-3-2288兩類需求包括的內容兩類需求包括的內容(1) (1) 功能功能(2) (2) 性能性能(3) (3) 環(huán)境環(huán)境(4) (4) 界面界面(5) (5) 用戶或人用戶或人的的因素因素(6) (6) 文檔文檔 (7) (7) 數(shù)據(jù)數(shù)據(jù)(8) (8) 資源

49、資源(9) (9) 安全保密安全保密(10)(10)軟件成本消耗軟件成本消耗與開發(fā)進度與開發(fā)進度(11)(11)質量保證質量保證2022-3-2289(1) (1) 功能需求功能需求 系統(tǒng)做什么?系統(tǒng)做什么? 系統(tǒng)何時做什么?系統(tǒng)何時做什么? 系統(tǒng)何時及如何修改系統(tǒng)何時及如何修改 或升級?或升級?2022-3-2290(2) (2) 性能需求性能需求軟件開發(fā)的技術性指標軟件開發(fā)的技術性指標例如:例如: 存儲容量限制存儲容量限制 執(zhí)行速度、相應時間執(zhí)行速度、相應時間 吞吐量吞吐量2022-3-2291(3) (3) 環(huán)境需求環(huán)境需求硬件設備:硬件設備:機型、外設、接口、機型、外設、接口、 地點、

50、分布、溫度、地點、分布、溫度、 濕度、磁場干擾等濕度、磁場干擾等軟件:軟件: 操作系統(tǒng)操作系統(tǒng) 網(wǎng)絡網(wǎng)絡 數(shù)據(jù)庫數(shù)據(jù)庫2022-3-2292(4) (4) 界面需求界面需求 有來自其它系統(tǒng)的輸入嗎?有來自其它系統(tǒng)的輸入嗎? 到自其它系統(tǒng)的輸出嗎?到自其它系統(tǒng)的輸出嗎? 對數(shù)據(jù)格式有規(guī)定嗎?對數(shù)據(jù)格式有規(guī)定嗎? 對數(shù)據(jù)存儲介質有規(guī)定嗎?對數(shù)據(jù)存儲介質有規(guī)定嗎?2022-3-2293(5) (5) 用戶或人的因素用戶或人的因素 用戶類型?用戶類型? 各種用戶熟練程度?各種用戶熟練程度? 需受何種訓練?需受何種訓練? 用戶理解、使用系統(tǒng)的難度?用戶理解、使用系統(tǒng)的難度? 用戶錯誤操作系統(tǒng)的可能性?用

51、戶錯誤操作系統(tǒng)的可能性?2022-3-2294(6) (6) 文檔需求文檔需求 需哪些文檔?需哪些文檔? 文檔針對哪些讀者文檔針對哪些讀者?2022-3-2295(7) (7) 數(shù)據(jù)需求數(shù)據(jù)需求 輸入、輸出數(shù)據(jù)的格式?輸入、輸出數(shù)據(jù)的格式? 接收、發(fā)送數(shù)據(jù)的頻率?接收、發(fā)送數(shù)據(jù)的頻率? 數(shù)據(jù)的準確性和精度?數(shù)據(jù)的準確性和精度? 數(shù)據(jù)流量?數(shù)據(jù)流量? 數(shù)據(jù)需保持的時間?數(shù)據(jù)需保持的時間?2022-3-2296(8) (8) 資源需求資源需求 軟件運行時所需的數(shù)據(jù)、軟件。軟件運行時所需的數(shù)據(jù)、軟件。 內存空間等資源。內存空間等資源。 軟件開發(fā)、維護所需的人力、軟件開發(fā)、維護所需的人力、 支撐軟件、

52、開發(fā)設備等。支撐軟件、開發(fā)設備等。2022-3-2297(9) (9) 安全保密要求安全保密要求 需對訪問系統(tǒng)或系統(tǒng)信息加以控制嗎?需對訪問系統(tǒng)或系統(tǒng)信息加以控制嗎? 如何隔離用戶之間的數(shù)據(jù)?如何隔離用戶之間的數(shù)據(jù)? 用戶程序如何與其它程序和操作系統(tǒng)隔離?用戶程序如何與其它程序和操作系統(tǒng)隔離? 系統(tǒng)備份要求系統(tǒng)備份要求?2022-3-2298(10) (10) 軟件成本消耗軟件成本消耗 與開發(fā)進度需求與開發(fā)進度需求開發(fā)有規(guī)定的時間表嗎?開發(fā)有規(guī)定的時間表嗎?軟硬件投資有無限制軟硬件投資有無限制?2022-3-2299(11) (11) 質量保證質量保證 系統(tǒng)的可靠性要求?系統(tǒng)的可靠性要求? 系

53、統(tǒng)必須監(jiān)測和隔離錯誤嗎?系統(tǒng)必須監(jiān)測和隔離錯誤嗎? 規(guī)定系統(tǒng)平均出錯時間?規(guī)定系統(tǒng)平均出錯時間? 出錯后,重啟系統(tǒng)允許的時間?出錯后,重啟系統(tǒng)允許的時間? 系統(tǒng)變化如何反映到設計中?系統(tǒng)變化如何反映到設計中? 維護是否包括對系統(tǒng)的改進?維護是否包括對系統(tǒng)的改進? 系統(tǒng)的可移植性系統(tǒng)的可移植性?2022-3-22100怎樣寫需求分析報告怎樣寫需求分析報告n作報告時要先從宏觀上講一、二、三、四、五,作報告時要先從宏觀上講一、二、三、四、五,再從細節(jié)上講再從細節(jié)上講A A、B B、C C、D D、E E。需求分析不象。需求分析不象偵探推理那樣從蛛絲馬跡著手。應該先了解宏偵探推理那樣從蛛絲馬跡著手。應

54、該先了解宏觀的問題,再了解細節(jié)的問題觀的問題,再了解細節(jié)的問題 n如圖如圖n S = D1,D2,D3, Dn n Di = P1,P2,P3, Pm n Pj = F1,F(xiàn)2,F(xiàn)3, Fk 2022-3-22101怎樣寫需求分析報告怎樣寫需求分析報告2022-3-221023.4 3.4 需求的開發(fā)和管理需求的開發(fā)和管理整個軟件需求工程研究領域劃分為需求開發(fā)和整個軟件需求工程研究領域劃分為需求開發(fā)和需求管理兩部分更合適需求管理兩部分更合適 需求工程域的層次分解示意圖需求工程域的層次分解示意圖 2022-3-22103需求開發(fā)需求開發(fā)(Note 18) n問題獲取(問題獲?。?e l i c

55、i t a t i o ne l i c i t a t i o n)n分析分析( ( a n a l y s i s )a n a l y s i s )n編寫規(guī)格說明(編寫規(guī)格說明(s p e c i f i c a t i o ns p e c i f i c a t i o n)n驗證驗證(v e r i f i c a t i o nv e r i f i c a t i o n) 2022-3-22104知識技能知識技能 (Note 19)絕大部分的軟件開發(fā)人員都沒有接受過高效需求絕大部分的軟件開發(fā)人員都沒有接受過高效需求工程所需技能的正規(guī)培訓工程所需技能的正規(guī)培訓n培訓需求分析人

56、員所有的開發(fā)人員都應接受一個培訓需求分析人員所有的開發(fā)人員都應接受一個基本的需求工程培訓基本的需求工程培訓n培訓軟件需求的用戶代表和管理人員參與軟件開培訓軟件需求的用戶代表和管理人員參與軟件開發(fā)的用戶代表應接受為期一天左右發(fā)的用戶代表應接受為期一天左右, ,關于需求工程關于需求工程的培訓,開發(fā)管理者和客戶管理者也應參加的培訓,開發(fā)管理者和客戶管理者也應參加 n讓開發(fā)人員了解應用領域的基本概念組織一些簡讓開發(fā)人員了解應用領域的基本概念組織一些簡短的關于客戶業(yè)務活動、術語、目短的關于客戶業(yè)務活動、術語、目n標等方面的討論會以幫助開發(fā)人員對應用領域有標等方面的討論會以幫助開發(fā)人員對應用領域有個基本了

57、解個基本了解 2022-3-22105需求獲取需求獲取(1)(Note 20) n確定需求開發(fā)過程確定需求開發(fā)過程 n編寫項目視圖和范圍文檔項目視圖編寫項目視圖和范圍文檔項目視圖 n將用戶群分類并歸納各自特點將用戶群分類并歸納各自特點 n選擇每類用戶的產(chǎn)品代表選擇每類用戶的產(chǎn)品代表 n建立起典型用戶的核心隊伍把同類產(chǎn)品或你的建立起典型用戶的核心隊伍把同類產(chǎn)品或你的產(chǎn)品的先前版本用戶代表召集起來,從他們那產(chǎn)品的先前版本用戶代表召集起來,從他們那里收集目前產(chǎn)品的功能需求和非功能需求里收集目前產(chǎn)品的功能需求和非功能需求 2022-3-22106需求獲取需求獲取(2)(Note 21)n讓用戶代表確定

58、使用實例讓用戶代表確定使用實例 n召開應用程序開發(fā)聯(lián)系會議召開應用程序開發(fā)聯(lián)系會議 n分析用戶工作流程觀察用戶執(zhí)行業(yè)務任務的過分析用戶工作流程觀察用戶執(zhí)行業(yè)務任務的過程程 n確定質量屬性和其它非功能需求在功能需求之確定質量屬性和其它非功能需求在功能需求之外再考慮一下非功能的質量特點外再考慮一下非功能的質量特點 n通過檢查當前系統(tǒng)的問題報告來進一步完善通過檢查當前系統(tǒng)的問題報告來進一步完善 n可查看需求是否有足夠的靈活性以允許重用一可查看需求是否有足夠的靈活性以允許重用一些已有的軟件組件些已有的軟件組件 2022-3-22107需求分析需求分析(Note 22)n繪制系統(tǒng)關聯(lián)圖。繪制系統(tǒng)關聯(lián)圖。

59、n建立數(shù)據(jù)字典。建立數(shù)據(jù)字典。n為需求建立模型。為需求建立模型。n建立用戶接口原型。建立用戶接口原型。n確定需求優(yōu)先級。確定需求優(yōu)先級。 2022-3-22108需求規(guī)格說明需求規(guī)格說明(SRS)(Note 23)n采用原始模板在你的組織中要為編寫軟件需求采用原始模板在你的組織中要為編寫軟件需求文檔定義一種標準模板文檔定義一種標準模板 n指明需求的來源指明需求的來源 n為每項需求注上標號制定一種慣例來為每項需為每項需求注上標號制定一種慣例來為每項需求提供一個獨立的可識別的標號或記號求提供一個獨立的可識別的標號或記號 n記錄業(yè)務規(guī)范業(yè)務規(guī)范記錄業(yè)務規(guī)范業(yè)務規(guī)范n創(chuàng)建需求跟蹤能力矩陣創(chuàng)建需求跟蹤能

60、力矩陣 2022-3-22109需求驗證需求驗證(Note 24Note 24)n對需求文檔進行正式審查對需求文檔進行正式審查 n以需求為依據(jù)編寫測試用例以需求為依據(jù)編寫測試用例n編寫用戶手冊在需求開發(fā)早期即可起草一份用編寫用戶手冊在需求開發(fā)早期即可起草一份用戶手冊戶手冊n確定合格的標準讓用戶描述什么樣的產(chǎn)品才算確定合格的標準讓用戶描述什么樣的產(chǎn)品才算滿足他們的要求和適合他們使用的滿足他們的要求和適合他們使用的 2022-3-22110需求管理需求管理(Note 25)n確定一個選擇、分析和決策需求變更的過程確定一個選擇、分析和決策需求變更的過程 n建立變更控制委員會建立變更控制委員會 n評估

溫馨提示

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

評論

0/150

提交評論