




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、大連理工大學(xué)軟件學(xué)院軟件工程軟件工程2022-1-2大連理工大學(xué)軟件學(xué)院2第第1章章 軟件工程學(xué)概述軟件工程學(xué)概述 1.1 軟件危機(jī)軟件危機(jī) 1.2 軟件工程軟件工程 1.3 軟件生命周期軟件生命周期 1.4 軟件過(guò)程軟件過(guò)程 1.5 小結(jié)小結(jié)2022-1-2大連理工大學(xué)軟件學(xué)院3軟件及軟件工程軟件及軟件工程 為什么要講軟件和軟件工程為什么要講軟件和軟件工程 只有對(duì)軟件和軟件的開(kāi)發(fā)過(guò)程有充分的認(rèn)識(shí),只有對(duì)軟件和軟件的開(kāi)發(fā)過(guò)程有充分的認(rèn)識(shí),才能更好的開(kāi)發(fā)出過(guò)程受控、質(zhì)量受控的軟件才能更好的開(kāi)發(fā)出過(guò)程受控、質(zhì)量受控的軟件產(chǎn)品。產(chǎn)品。 對(duì)于軟件和軟件開(kāi)發(fā)過(guò)程的認(rèn)識(shí)是困難的,存對(duì)于軟件和軟件開(kāi)發(fā)過(guò)程的
2、認(rèn)識(shí)是困難的,存在很多困惑,需要對(duì)此有深刻的認(rèn)識(shí)。在很多困惑,需要對(duì)此有深刻的認(rèn)識(shí)。2022-1-2大連理工大學(xué)軟件學(xué)院4一些對(duì)軟件的偏見(jiàn)或誤解一些對(duì)軟件的偏見(jiàn)或誤解 軟件就是程序,軟件開(kāi)發(fā)就是編寫(xiě)程序。編完了軟件就是程序,軟件開(kāi)發(fā)就是編寫(xiě)程序。編完了程序,就一切程序,就一切OK了。了。 掌握了最新的語(yǔ)言和工具,就能寫(xiě)程序了。掌握了最新的語(yǔ)言和工具,就能寫(xiě)程序了。 軟件是靈活的,軟件的修改很容易。軟件是靈活的,軟件的修改很容易。 只要會(huì)編程,就能寫(xiě)軟件,就是程序員;一個(gè)公只要會(huì)編程,就能寫(xiě)軟件,就是程序員;一個(gè)公司,只要召些程序員,就能開(kāi)發(fā)好的軟件產(chǎn)品。司,只要召些程序員,就能開(kāi)發(fā)好的軟件產(chǎn)品
3、。 只要有幾個(gè)有經(jīng)驗(yàn)的程序員,再找些兼職的大學(xué)只要有幾個(gè)有經(jīng)驗(yàn)的程序員,再找些兼職的大學(xué)生,就能組成一個(gè)軟件公司。生,就能組成一個(gè)軟件公司。2022-1-2大連理工大學(xué)軟件學(xué)院5什么是軟件什么是軟件 軟件的定義軟件的定義軟件由三部分組成:軟件由三部分組成: 程序:在運(yùn)行時(shí),能提供所希望的功能和性能的指程序:在運(yùn)行時(shí),能提供所希望的功能和性能的指令集令集 數(shù)據(jù):使程序能夠正確運(yùn)行的數(shù)據(jù)數(shù)據(jù):使程序能夠正確運(yùn)行的數(shù)據(jù) 文檔:描述程序研制過(guò)程、方法及使用的文檔文檔:描述程序研制過(guò)程、方法及使用的文檔 軟件處理的是信息和邏輯軟件處理的是信息和邏輯 軟件的開(kāi)發(fā),絕不僅僅是編寫(xiě)程序軟件的開(kāi)發(fā),絕不僅僅是編
4、寫(xiě)程序 軟件圍繞著邏輯進(jìn)行軟件圍繞著邏輯進(jìn)行 軟件就是一個(gè)信息交換器軟件就是一個(gè)信息交換器 產(chǎn)生、管理、獲取、修改、顯示或傳送信息產(chǎn)生、管理、獲取、修改、顯示或傳送信息2022-1-2大連理工大學(xué)軟件學(xué)院6軟件無(wú)處不在軟件無(wú)處不在 軟件不僅僅是在計(jì)算機(jī)運(yùn)行的程序,任何預(yù)先定軟件不僅僅是在計(jì)算機(jī)運(yùn)行的程序,任何預(yù)先定義好的程序步驟的地方,都有軟件的身影義好的程序步驟的地方,都有軟件的身影 軟件的應(yīng)用領(lǐng)域軟件的應(yīng)用領(lǐng)域 系統(tǒng)軟件系統(tǒng)軟件 實(shí)時(shí)軟件實(shí)時(shí)軟件 商業(yè)軟件商業(yè)軟件 工程和科學(xué)計(jì)算軟件工程和科學(xué)計(jì)算軟件 嵌入式軟件嵌入式軟件 個(gè)人計(jì)算機(jī)軟件個(gè)人計(jì)算機(jī)軟件 基于基于Web的軟件(網(wǎng)站)的軟件(
5、網(wǎng)站) 人工智能軟件人工智能軟件2022-1-2大連理工大學(xué)軟件學(xué)院7軟件的特征軟件的特征軟件是邏輯的而不是有形的系統(tǒng)元件,具軟件是邏輯的而不是有形的系統(tǒng)元件,具有與硬件完全不同的特征有與硬件完全不同的特征 軟件是被開(kāi)發(fā)或設(shè)計(jì)的,而不是傳統(tǒng)意義上軟件是被開(kāi)發(fā)或設(shè)計(jì)的,而不是傳統(tǒng)意義上被制造的被制造的 軟件成本集中于開(kāi)發(fā)上,軟件項(xiàng)目不能像制造項(xiàng)目軟件成本集中于開(kāi)發(fā)上,軟件項(xiàng)目不能像制造項(xiàng)目那樣管理。那樣管理。 軟件不會(huì)磨損,不過(guò)它會(huì)退化軟件不會(huì)磨損,不過(guò)它會(huì)退化 對(duì)未發(fā)現(xiàn)的對(duì)未發(fā)現(xiàn)的BUG的修復(fù),會(huì)引起較高的故障率。的修復(fù),會(huì)引起較高的故障率。1. 不能像硬件維修中直接更換磨損的零件,軟件維護(hù)不
6、能像硬件維修中直接更換磨損的零件,軟件維護(hù)要復(fù)雜得多。要復(fù)雜得多。2022-1-2大連理工大學(xué)軟件學(xué)院8軟件的特征軟件的特征大多數(shù)軟件開(kāi)發(fā),仍是手工作坊式的開(kāi)發(fā)模式大多數(shù)軟件開(kāi)發(fā),仍是手工作坊式的開(kāi)發(fā)模式在硬件世界和現(xiàn)代工業(yè)的發(fā)展中,被大量使用的標(biāo)準(zhǔn)設(shè)計(jì)的構(gòu)建是在硬件世界和現(xiàn)代工業(yè)的發(fā)展中,被大量使用的標(biāo)準(zhǔn)設(shè)計(jì)的構(gòu)建是一條非常成功的路子。一條非常成功的路子。標(biāo)準(zhǔn)化也是軟件設(shè)計(jì)的一個(gè)方向,軟件產(chǎn)業(yè)正在向基于構(gòu)件的組裝標(biāo)準(zhǔn)化也是軟件設(shè)計(jì)的一個(gè)方向,軟件產(chǎn)業(yè)正在向基于構(gòu)件的組裝進(jìn)前進(jìn)。進(jìn)前進(jìn)。軟件是一種邏輯實(shí)體,具有抽象性。軟件是一種邏輯實(shí)體,具有抽象性。人們可以使用軟件,但是無(wú)法看到軟件本身的形態(tài)
7、人們可以使用軟件,但是無(wú)法看到軟件本身的形態(tài) 。必須通過(guò)觀察、。必須通過(guò)觀察、分析、思考、判斷,才能了解其功能、性能等特性。分析、思考、判斷,才能了解其功能、性能等特性。 設(shè)計(jì)中,軟件的質(zhì)量、可維護(hù)性、可測(cè)試性更加重要。設(shè)計(jì)中,軟件的質(zhì)量、可維護(hù)性、可測(cè)試性更加重要。當(dāng)前軟件設(shè)計(jì)的趨勢(shì),是設(shè)計(jì)高度封裝,定義良好的應(yīng)用接口。當(dāng)前軟件設(shè)計(jì)的趨勢(shì),是設(shè)計(jì)高度封裝,定義良好的應(yīng)用接口。軟件是復(fù)雜的,而且以后會(huì)更加復(fù)雜軟件是復(fù)雜的,而且以后會(huì)更加復(fù)雜軟件是人類有史以來(lái)生產(chǎn)的復(fù)雜度最高的工業(yè)產(chǎn)品。軟件是人類有史以來(lái)生產(chǎn)的復(fù)雜度最高的工業(yè)產(chǎn)品。軟件的復(fù)雜,不是因?yàn)檐浖旧韽?fù)雜,而是人的思想復(fù)雜。軟件的復(fù)雜,
8、不是因?yàn)檐浖旧韽?fù)雜,而是人的思想復(fù)雜。2022-1-2大連理工大學(xué)軟件學(xué)院9 軟件危機(jī)的介紹軟件危機(jī)的介紹1.1 軟件危機(jī)軟件危機(jī)硬件和軟件發(fā)展的不平衡,硬件性能的發(fā)硬件和軟件發(fā)展的不平衡,硬件性能的發(fā)展極其迅速,給軟件提出了更高的要求展極其迅速,給軟件提出了更高的要求軟件開(kāi)發(fā)和維護(hù)成本越來(lái)越大,令人吃驚軟件開(kāi)發(fā)和維護(hù)成本越來(lái)越大,令人吃驚地高地高失敗的軟件開(kāi)發(fā)項(xiàng)目屢見(jiàn)不鮮失敗的軟件開(kāi)發(fā)項(xiàng)目屢見(jiàn)不鮮 什么是軟件危機(jī)什么是軟件危機(jī) 軟件危機(jī)是指在計(jì)算軟件危機(jī)是指在計(jì)算機(jī)軟件的開(kāi)發(fā)和維護(hù)機(jī)軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一系過(guò)程中所遇到的一系列嚴(yán)重問(wèn)題。列嚴(yán)重問(wèn)題。2022-1-2大連理工大學(xué)軟件
9、學(xué)院10軟件危機(jī)軟件危機(jī) 軟件危機(jī)的表現(xiàn)軟件危機(jī)的表現(xiàn) 軟件成本日益增長(zhǎng)軟件成本日益增長(zhǎng) 開(kāi)發(fā)進(jìn)度難以控制開(kāi)發(fā)進(jìn)度難以控制 軟件質(zhì)量差軟件質(zhì)量差 軟件維護(hù)困難軟件維護(hù)困難 軟件開(kāi)發(fā)速度跟不上計(jì)算機(jī)發(fā)展速度軟件開(kāi)發(fā)速度跟不上計(jì)算機(jī)發(fā)展速度 軟件危機(jī)的原因軟件危機(jī)的原因 技術(shù)原因技術(shù)原因 軟件規(guī)模越來(lái)越大軟件規(guī)模越來(lái)越大 軟件復(fù)雜度越來(lái)越高軟件復(fù)雜度越來(lái)越高 管理原因管理原因 軟件開(kāi)發(fā)缺乏正確的理論指導(dǎo),過(guò)分依靠個(gè)人技巧和創(chuàng)造性軟件開(kāi)發(fā)缺乏正確的理論指導(dǎo),過(guò)分依靠個(gè)人技巧和創(chuàng)造性 對(duì)用戶需求沒(méi)有完整準(zhǔn)確的認(rèn)識(shí),就匆忙著手編寫(xiě)程序?qū)τ脩粜枨鬀](méi)有完整準(zhǔn)確的認(rèn)識(shí),就匆忙著手編寫(xiě)程序 如何克服軟件危機(jī)如何
10、克服軟件危機(jī) :軟件工程:軟件工程2022-1-2大連理工大學(xué)軟件學(xué)院112022-1-2大連理工大學(xué)軟件學(xué)院12引入同一變動(dòng)付出的代價(jià)隨時(shí)間變化的趨勢(shì)問(wèn)題在哪里?問(wèn)題在哪里? 軟件開(kāi)發(fā)鏈條的軟件開(kāi)發(fā)鏈條的“放大放大”作用。作用。(規(guī)范每個(gè)環(huán)節(jié)規(guī)范每個(gè)環(huán)節(jié)) 只有早期發(fā)現(xiàn)問(wèn)題,才會(huì)只有早期發(fā)現(xiàn)問(wèn)題,才會(huì)盡量減少損失。盡量減少損失。(失之毫厘,失之毫厘,謬以千里謬以千里) 但客觀規(guī)律:用戶的牙膏但客觀規(guī)律:用戶的牙膏不會(huì)一下子擠完。不會(huì)一下子擠完。(靜態(tài)開(kāi)靜態(tài)開(kāi)發(fā)方法發(fā)方法“天生天生”會(huì)延遲問(wèn)會(huì)延遲問(wèn)題的發(fā)現(xiàn)題的發(fā)現(xiàn))2022-1-2大連理工大學(xué)軟件學(xué)院13 消除軟件危機(jī)的途徑消除軟件危機(jī)的途徑
11、 對(duì)計(jì)算機(jī)軟件正確認(rèn)識(shí)。對(duì)計(jì)算機(jī)軟件正確認(rèn)識(shí)。(軟件不僅僅是程序軟件不僅僅是程序)推廣使用開(kāi)發(fā)軟件成功的推廣使用開(kāi)發(fā)軟件成功的技術(shù)和方法技術(shù)和方法,研究探索更好更有,研究探索更好更有效的技術(shù)和方法,消除錯(cuò)誤概念和做法。效的技術(shù)和方法,消除錯(cuò)誤概念和做法。 開(kāi)發(fā)和使用更好的開(kāi)發(fā)和使用更好的軟件工具軟件工具。 需要需要組織管理措施組織管理措施。 軟件工程正是從軟件工程正是從技術(shù)和管理技術(shù)和管理兩方面研究如何更好地開(kāi)發(fā)和維護(hù)兩方面研究如何更好地開(kāi)發(fā)和維護(hù)計(jì)算機(jī)軟件的一門(mén)新興學(xué)科。計(jì)算機(jī)軟件的一門(mén)新興學(xué)科。無(wú)章法(個(gè)人英雄主義)無(wú)章法(個(gè)人英雄主義) 工程項(xiàng)目管理模式(團(tuán)隊(duì)合作開(kāi)發(fā))工程項(xiàng)目管理模式(
12、團(tuán)隊(duì)合作開(kāi)發(fā))2022-1-2大連理工大學(xué)軟件學(xué)院141.2 軟件工程軟件工程 軟件工程(軟件工程(IEEE) 1968年秋,提出軟件工程年秋,提出軟件工程1) 將系統(tǒng)化、規(guī)范化、可量化將系統(tǒng)化、規(guī)范化、可量化的工程原則和方法,應(yīng)用于的工程原則和方法,應(yīng)用于軟件的開(kāi)發(fā)、運(yùn)行和維護(hù)。軟件的開(kāi)發(fā)、運(yùn)行和維護(hù)。2) 對(duì)對(duì)1)中方法的理論研究。中方法的理論研究。 軟件工程軟件工程 認(rèn)為:認(rèn)為:按照工程化的原則和方法組織軟件開(kāi)發(fā)工作,是按照工程化的原則和方法組織軟件開(kāi)發(fā)工作,是擺脫軟件危機(jī)的一個(gè)主要出路。擺脫軟件危機(jī)的一個(gè)主要出路。 主要目標(biāo):主要目標(biāo):高效開(kāi)發(fā)高質(zhì)量軟件高效開(kāi)發(fā)高質(zhì)量軟件。 軟件工程規(guī)
13、范軟件工程規(guī)范 工業(yè)界:參照修改其它工程項(xiàng)目的管理模式工業(yè)界:參照修改其它工程項(xiàng)目的管理模式如如 ISO, PMI, Six Sigma 學(xué)術(shù)界:學(xué)術(shù)界:CMM2022-1-2大連理工大學(xué)軟件學(xué)院15軟件工程基本原理軟件工程基本原理 (開(kāi)發(fā)與維護(hù)的指導(dǎo)開(kāi)發(fā)與維護(hù)的指導(dǎo))用分階段的生命周期計(jì)劃嚴(yán)格管理用分階段的生命周期計(jì)劃嚴(yán)格管理堅(jiān)持進(jìn)行階段評(píng)審堅(jiān)持進(jìn)行階段評(píng)審實(shí)行嚴(yán)格的產(chǎn)品控制實(shí)行嚴(yán)格的產(chǎn)品控制采用現(xiàn)代程序設(shè)計(jì)技術(shù)采用現(xiàn)代程序設(shè)計(jì)技術(shù)結(jié)果應(yīng)能清楚地審查結(jié)果應(yīng)能清楚地審查開(kāi)發(fā)小組的人員應(yīng)該少而精開(kāi)發(fā)小組的人員應(yīng)該少而精1.承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性2022-
14、1-2大連理工大學(xué)軟件學(xué)院16 軟件的生命周期軟件的生命周期 軟件開(kāi)發(fā)過(guò)程軟件開(kāi)發(fā)過(guò)程 瀑布模型瀑布模型 快速原型、螺旋模型快速原型、螺旋模型 噴泉模型等噴泉模型等 軟件開(kāi)發(fā)新過(guò)程軟件開(kāi)發(fā)新過(guò)程 敏捷軟件開(kāi)發(fā)敏捷軟件開(kāi)發(fā)(極限編極限編程程XP) 快速軟件開(kāi)發(fā)快速軟件開(kāi)發(fā) 統(tǒng)一軟件開(kāi)發(fā)過(guò)程統(tǒng)一軟件開(kāi)發(fā)過(guò)程軟件開(kāi)發(fā)的規(guī)律軟件開(kāi)發(fā)的規(guī)律 軟件開(kāi)發(fā)方法軟件開(kāi)發(fā)方法 結(jié)構(gòu)化方法結(jié)構(gòu)化方法 面向?qū)ο蠓椒嫦驅(qū)ο蠓椒?Jackson系統(tǒng)開(kāi)發(fā)方法系統(tǒng)開(kāi)發(fā)方法 模塊化方法模塊化方法 軟件復(fù)用軟件復(fù)用2022-1-2大連理工大學(xué)軟件學(xué)院17 軟件工程方法學(xué)軟件工程方法學(xué) 把在軟件生命周期全過(guò)程中使用的一整套把在軟
15、件生命周期全過(guò)程中使用的一整套技術(shù)的集合技術(shù)的集合稱為稱為方法學(xué)方法學(xué)(methodology),也稱范型,也稱范型(paradigm)。 軟件工程方法學(xué)三個(gè)要素:軟件工程方法學(xué)三個(gè)要素:方法、工具和過(guò)程方法、工具和過(guò)程。 方法是完成軟件開(kāi)發(fā)各項(xiàng)任務(wù)的技術(shù),回答方法是完成軟件開(kāi)發(fā)各項(xiàng)任務(wù)的技術(shù),回答“如何做如何做”; 工具是為方法的運(yùn)用提供自動(dòng)或半自動(dòng)軟件支撐環(huán)境,回答工具是為方法的運(yùn)用提供自動(dòng)或半自動(dòng)軟件支撐環(huán)境,回答“用什用什么做么做”; 過(guò)程是為獲得高質(zhì)量的軟件要完成的一系列任務(wù)的框架,規(guī)定完成過(guò)程是為獲得高質(zhì)量的軟件要完成的一系列任務(wù)的框架,規(guī)定完成各項(xiàng)任務(wù)步驟,回答各項(xiàng)任務(wù)步驟,回答
16、“如何控制、協(xié)調(diào)、保證質(zhì)量如何控制、協(xié)調(diào)、保證質(zhì)量”。管理方法管理方法2022-1-2大連理工大學(xué)軟件學(xué)院18 目前使用得最廣泛的軟件工程方法學(xué)。目前使用得最廣泛的軟件工程方法學(xué)。 傳統(tǒng)方法學(xué)也稱為傳統(tǒng)方法學(xué)也稱為生命周期方法學(xué)生命周期方法學(xué)或或結(jié)構(gòu)化范型結(jié)構(gòu)化范型。 當(dāng)軟件規(guī)模較大,或?qū)浖男枨笫钱?dāng)軟件規(guī)模較大,或?qū)浖男枨笫悄::幕螂S時(shí)間的或隨時(shí)間變化變化的時(shí)的時(shí)候,使用結(jié)構(gòu)化范型開(kāi)發(fā)軟件往往不成功;候,使用結(jié)構(gòu)化范型開(kāi)發(fā)軟件往往不成功;此外,使用傳統(tǒng)方法學(xué)開(kāi)發(fā)出的軟件,維護(hù)起來(lái)通常都很困難。此外,使用傳統(tǒng)方法學(xué)開(kāi)發(fā)出的軟件,維護(hù)起來(lái)通常都很困難。 結(jié)構(gòu)化靜態(tài)分析,面向?qū)ο髣?dòng)態(tài)分析
17、結(jié)構(gòu)化靜態(tài)分析,面向?qū)ο髣?dòng)態(tài)分析世界萬(wàn)物是變化的世界萬(wàn)物是變化的傳統(tǒng)方法學(xué)與面向?qū)ο蠓椒▽W(xué)傳統(tǒng)方法學(xué)與面向?qū)ο蠓椒▽W(xué)2022-1-2大連理工大學(xué)軟件學(xué)院19傳統(tǒng)方法的特點(diǎn)傳統(tǒng)方法的特點(diǎn)生命周期模型生命周期模型軟件過(guò)程劃分為若干個(gè)階軟件過(guò)程劃分為若干個(gè)階段段每個(gè)階段有各自的任務(wù)每個(gè)階段有各自的任務(wù)階段之間有某種順序性階段之間有某種順序性2022-1-2大連理工大學(xué)軟件學(xué)院20面向?qū)ο蠓椒ǎ好嫦驅(qū)ο蠓椒ǎ簩?duì)象作為融合數(shù)據(jù)及在數(shù)據(jù)之上的操作行為的統(tǒng)一的軟件對(duì)象作為融合數(shù)據(jù)及在數(shù)據(jù)之上的操作行為的統(tǒng)一的軟件構(gòu)件。構(gòu)件。把所有對(duì)象都劃分成把所有對(duì)象都劃分成類類(Class)。每個(gè)類都定義了一組。每個(gè)類都
18、定義了一組數(shù)據(jù)數(shù)據(jù)和一組和一組操作操作。按照父類按照父類(或稱為基類或稱為基類)與子類與子類(或稱為派生類或稱為派生類)的關(guān)系,把的關(guān)系,把若干個(gè)相關(guān)類組成一個(gè)若干個(gè)相關(guān)類組成一個(gè)層次結(jié)構(gòu)層次結(jié)構(gòu)的系統(tǒng)的系統(tǒng)(也稱為類等級(jí)也稱為類等級(jí))。在類等級(jí)中,下層派生類自動(dòng)擁有上層基類中定義的數(shù)據(jù)在類等級(jí)中,下層派生類自動(dòng)擁有上層基類中定義的數(shù)據(jù)和操作,稱為和操作,稱為繼承繼承。1. 對(duì)象彼此間僅能通過(guò)發(fā)送消息互相聯(lián)系對(duì)象彼此間僅能通過(guò)發(fā)送消息互相聯(lián)系封裝性封裝性。數(shù)據(jù):靜態(tài)數(shù)據(jù):靜態(tài)操作:動(dòng)態(tài)操作:動(dòng)態(tài)Everything is Object.2022-1-2大連理工大學(xué)軟件學(xué)院21OO特點(diǎn)特點(diǎn) 面向
19、對(duì)象方法學(xué)的出發(fā)點(diǎn)和基本原則,是盡可能面向?qū)ο蠓椒▽W(xué)的出發(fā)點(diǎn)和基本原則,是盡可能模擬人模擬人類習(xí)慣的思維方式類習(xí)慣的思維方式。 用面向?qū)ο蠓椒▽W(xué)開(kāi)發(fā)軟件的過(guò)程,是一個(gè)用面向?qū)ο蠓椒▽W(xué)開(kāi)發(fā)軟件的過(guò)程,是一個(gè)主動(dòng)主動(dòng)地多次地多次反復(fù)迭代反復(fù)迭代的演化過(guò)程。的演化過(guò)程。 概念和表示方法上的概念和表示方法上的一致性,階段間平滑(無(wú)縫)過(guò)渡。一致性,階段間平滑(無(wú)縫)過(guò)渡。 特殊到一般的特殊到一般的歸納歸納思維過(guò)程;一般到特殊的思維過(guò)程;一般到特殊的演繹演繹思維過(guò)思維過(guò)程。(程。(繼承的思想繼承的思想)2022-1-2大連理工大學(xué)軟件學(xué)院22OO特點(diǎn)特點(diǎn) (2) 最終產(chǎn)品中的對(duì)象與現(xiàn)實(shí)世界中的實(shí)體相對(duì)應(yīng)
20、,降低最終產(chǎn)品中的對(duì)象與現(xiàn)實(shí)世界中的實(shí)體相對(duì)應(yīng),降低了了復(fù)雜性復(fù)雜性,提高了,提高了可理解性可理解性,簡(jiǎn)化了軟件的開(kāi)發(fā)和維,簡(jiǎn)化了軟件的開(kāi)發(fā)和維護(hù)工作。護(hù)工作。 對(duì)象是相對(duì)獨(dú)立的實(shí)體,容易在軟件產(chǎn)品中重復(fù)使用,對(duì)象是相對(duì)獨(dú)立的實(shí)體,容易在軟件產(chǎn)品中重復(fù)使用,促進(jìn)了促進(jìn)了軟件重用軟件重用。 面用對(duì)象方法特有的繼承性,也進(jìn)一步提高了面向?qū)γ嬗脤?duì)象方法特有的繼承性,也進(jìn)一步提高了面向?qū)ο筌浖目芍赜眯?。象軟件的可重用性?022-1-2大連理工大學(xué)軟件學(xué)院23品品嘗嘗服服務(wù)務(wù)點(diǎn)點(diǎn)菜菜服服務(wù)務(wù)烹烹飪飪服服務(wù)務(wù)上上菜菜服服務(wù)務(wù)+ + 品品嘗嘗+ + 點(diǎn)點(diǎn)菜菜+ + 上上菜菜+ + 備備料料+ + 燒燒菜
21、菜- - 品品嘗嘗點(diǎn)點(diǎn)菜菜菜菜單單備備料料燒燒菜菜上上菜菜點(diǎn)點(diǎn)菜菜清清單單 當(dāng)需求變化當(dāng)需求變化時(shí):時(shí): 要求服務(wù)員要求服務(wù)員禮貌待客!禮貌待客!- 問(wèn)候問(wèn)候 模擬人類模擬人類思維思維 迭代開(kāi)發(fā)迭代開(kāi)發(fā) 設(shè)計(jì)簡(jiǎn)單、設(shè)計(jì)簡(jiǎn)單、容易理解容易理解2022-1-2大連理工大學(xué)軟件學(xué)院24面向?qū)ο蠓治鲱悎D的例子面向?qū)ο蠓治鲱悎D的例子2022-1-2大連理工大學(xué)軟件學(xué)院251.3 軟件生命周期軟件生命周期 軟件生命周期由軟件生命周期由軟件定義、軟件開(kāi)發(fā)軟件定義、軟件開(kāi)發(fā)和和運(yùn)行維護(hù)運(yùn)行維護(hù)三個(gè)時(shí)期組成,每個(gè)時(shí)期又可進(jìn)一步劃分成若干三個(gè)時(shí)期組成,每個(gè)時(shí)期又可進(jìn)一步劃分成若干個(gè)階段,每個(gè)階段有各自的任務(wù)。個(gè)階
22、段,每個(gè)階段有各自的任務(wù)。1軟件定義軟件定義2軟件開(kāi)發(fā)軟件開(kāi)發(fā)3運(yùn)行維護(hù)運(yùn)行維護(hù)2022-1-2大連理工大學(xué)軟件學(xué)院26 問(wèn)題定義問(wèn)題定義(領(lǐng)域分析(領(lǐng)域分析1) 必須回答的關(guān)鍵問(wèn)題是:必須回答的關(guān)鍵問(wèn)題是:“要解決的問(wèn)題是什么要解決的問(wèn)題是什么”。 可行性研究可行性研究 (領(lǐng)域分析(領(lǐng)域分析2,問(wèn)題背景),問(wèn)題背景) 回答的關(guān)鍵問(wèn)題是:回答的關(guān)鍵問(wèn)題是:“上一個(gè)階段所確定的問(wèn)題是上一個(gè)階段所確定的問(wèn)題是否有行得通的解決辦法否有行得通的解決辦法”。 需求分析需求分析 仍然不是具體地解決客戶的問(wèn)題,而是準(zhǔn)確地回答仍然不是具體地解決客戶的問(wèn)題,而是準(zhǔn)確地回答“目標(biāo)系統(tǒng)必須做什么目標(biāo)系統(tǒng)必須做什么”
23、。 此外,要用正式文檔準(zhǔn)確地記錄對(duì)目標(biāo)系統(tǒng)的需求,此外,要用正式文檔準(zhǔn)確地記錄對(duì)目標(biāo)系統(tǒng)的需求,這份文檔通常稱為這份文檔通常稱為規(guī)格說(shuō)明規(guī)格說(shuō)明(specification)。2022-1-2大連理工大學(xué)軟件學(xué)院271.3 軟件生命周期軟件生命周期了解問(wèn)題,不能準(zhǔn)確表達(dá),不知道怎樣利用計(jì)算機(jī)實(shí)現(xiàn)了解軟件實(shí)現(xiàn),不清楚用戶要求與用戶配合,充分交流,得出系統(tǒng)需求2022-1-2大連理工大學(xué)軟件學(xué)院28概要設(shè)計(jì)概要設(shè)計(jì)概括地回答概括地回答“怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng)怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng)?”這個(gè)問(wèn)題。概要設(shè)計(jì)又這個(gè)問(wèn)題。概要設(shè)計(jì)又稱為稱為初步設(shè)計(jì)、邏輯設(shè)計(jì)、高層設(shè)計(jì)或總體設(shè)計(jì)初步設(shè)計(jì)、邏輯設(shè)計(jì)、高層設(shè)計(jì)或總體設(shè)計(jì)。可
24、以給出實(shí)現(xiàn)目標(biāo)系統(tǒng)的幾種可能的方案??梢越o出實(shí)現(xiàn)目標(biāo)系統(tǒng)的幾種可能的方案。另一項(xiàng)主要任務(wù)是設(shè)計(jì)程序的另一項(xiàng)主要任務(wù)是設(shè)計(jì)程序的體系結(jié)構(gòu)體系結(jié)構(gòu),即確定程序由哪,即確定程序由哪些模塊組成以及模塊間的關(guān)系。些模塊組成以及模塊間的關(guān)系。詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)任務(wù)是把解法任務(wù)是把解法具體化具體化,回答,回答“應(yīng)該怎樣具體地實(shí)現(xiàn)這個(gè)系應(yīng)該怎樣具體地實(shí)現(xiàn)這個(gè)系統(tǒng)統(tǒng)”這個(gè)關(guān)鍵問(wèn)題。這個(gè)關(guān)鍵問(wèn)題。還不是編寫(xiě)程序,而是設(shè)計(jì)出程序的還不是編寫(xiě)程序,而是設(shè)計(jì)出程序的詳細(xì)規(guī)格詳細(xì)規(guī)格說(shuō)明。說(shuō)明。又稱為又稱為模塊設(shè)計(jì)、物理設(shè)計(jì)或低層設(shè)計(jì)模塊設(shè)計(jì)、物理設(shè)計(jì)或低層設(shè)計(jì)。 2022-1-2大連理工大學(xué)軟件學(xué)院29編碼和單元測(cè)試編碼
25、和單元測(cè)試關(guān)鍵任務(wù)是寫(xiě)出正確的容易理解、容易維護(hù)的程序模塊,并測(cè)關(guān)鍵任務(wù)是寫(xiě)出正確的容易理解、容易維護(hù)的程序模塊,并測(cè)試。試。綜合測(cè)試綜合測(cè)試關(guān)鍵任務(wù)是通過(guò)各種類型的測(cè)試關(guān)鍵任務(wù)是通過(guò)各種類型的測(cè)試(及相應(yīng)的調(diào)試及相應(yīng)的調(diào)試)使軟件達(dá)到預(yù)定使軟件達(dá)到預(yù)定的要求。的要求。集成測(cè)試、驗(yàn)收測(cè)試、系統(tǒng)測(cè)試集成測(cè)試、驗(yàn)收測(cè)試、系統(tǒng)測(cè)試分析系統(tǒng)的可靠性分析系統(tǒng)的可靠性記錄測(cè)試計(jì)劃、詳細(xì)測(cè)試方案及實(shí)際測(cè)試結(jié)果,作為軟件配置記錄測(cè)試計(jì)劃、詳細(xì)測(cè)試方案及實(shí)際測(cè)試結(jié)果,作為軟件配置的一部分。的一部分。2022-1-2大連理工大學(xué)軟件學(xué)院30軟件維護(hù)軟件維護(hù) 維護(hù)階段的關(guān)鍵任務(wù)是,通過(guò)各種必要的維護(hù)活動(dòng)使維護(hù)階段的
26、關(guān)鍵任務(wù)是,通過(guò)各種必要的維護(hù)活動(dòng)使系統(tǒng)系統(tǒng)持久持久地滿足用戶的需要。地滿足用戶的需要。 通常有四類維護(hù)活動(dòng)通常有四類維護(hù)活動(dòng)改正性維護(hù)改正性維護(hù),也就是診斷和改正在使用過(guò)程中發(fā)現(xiàn)的軟件,也就是診斷和改正在使用過(guò)程中發(fā)現(xiàn)的軟件錯(cuò)誤;錯(cuò)誤;適應(yīng)性維護(hù)適應(yīng)性維護(hù),即修改軟件以適應(yīng)環(huán)境的變化;,即修改軟件以適應(yīng)環(huán)境的變化;完善性維護(hù)完善性維護(hù),即根據(jù)用戶的要求改進(jìn)或擴(kuò)充軟件使,即根據(jù)用戶的要求改進(jìn)或擴(kuò)充軟件使它更完它更完善;善;預(yù)防性維護(hù)預(yù)防性維護(hù),即修改軟件為將來(lái)的維護(hù)活動(dòng)預(yù)先做準(zhǔn)備。,即修改軟件為將來(lái)的維護(hù)活動(dòng)預(yù)先做準(zhǔn)備。2022-1-2大連理工大學(xué)軟件學(xué)院311.4 軟件過(guò)程軟件過(guò)程 在實(shí)際軟
27、件開(kāi)發(fā)時(shí),軟件規(guī)模、種類、在實(shí)際軟件開(kāi)發(fā)時(shí),軟件規(guī)模、種類、開(kāi)發(fā)環(huán)境及開(kāi)發(fā)時(shí)使用的技術(shù)方法等開(kāi)發(fā)環(huán)境及開(kāi)發(fā)時(shí)使用的技術(shù)方法等因素,因素,影響階段的劃分。影響階段的劃分。軟件開(kāi)發(fā)軟件維護(hù)軟件定義 生命周期模型規(guī)定了生命周期模型規(guī)定了把生命周期劃分成哪把生命周期劃分成哪些階段及各個(gè)階段的些階段及各個(gè)階段的執(zhí)行順序,因此,也執(zhí)行順序,因此,也稱為稱為過(guò)程模型過(guò)程模型。2022-1-2大連理工大學(xué)軟件學(xué)院32瀑布模型瀑布模型 在在20世紀(jì)世紀(jì)80年代之前,年代之前,唯一被廣泛采用的生命唯一被廣泛采用的生命周期模型周期模型 現(xiàn)在仍然是軟件工程中現(xiàn)在仍然是軟件工程中應(yīng)用得最廣泛的過(guò)程模應(yīng)用得最廣泛的過(guò)程模
28、型。型。2022-1-2大連理工大學(xué)軟件學(xué)院33瀑布模型瀑布模型傳統(tǒng)的瀑布模型開(kāi)發(fā)軟件特傳統(tǒng)的瀑布模型開(kāi)發(fā)軟件特點(diǎn):點(diǎn): 階段間具有順序性和依賴性階段間具有順序性和依賴性前一階段完成后開(kāi)始后一階段前一階段完成后開(kāi)始后一階段1.前一階段輸出作為后一階段輸入前一階段輸出作為后一階段輸入2022-1-2大連理工大學(xué)軟件學(xué)院34瀑布模型瀑布模型傳統(tǒng)的瀑布模型開(kāi)發(fā)軟件特傳統(tǒng)的瀑布模型開(kāi)發(fā)軟件特點(diǎn):點(diǎn): 推遲實(shí)現(xiàn)推遲實(shí)現(xiàn)不可急于求成不可急于求成清楚地區(qū)分邏輯設(shè)計(jì)與物理實(shí)現(xiàn)清楚地區(qū)分邏輯設(shè)計(jì)與物理實(shí)現(xiàn)2.盡可能推遲程序的物理實(shí)現(xiàn)盡可能推遲程序的物理實(shí)現(xiàn)2022-1-2大連理工大學(xué)軟件學(xué)院35瀑布模型瀑布模型
29、傳統(tǒng)的瀑布模型開(kāi)發(fā)軟件特傳統(tǒng)的瀑布模型開(kāi)發(fā)軟件特點(diǎn):點(diǎn): 質(zhì)量保證質(zhì)量保證每個(gè)階段都必須完成規(guī)定的每個(gè)階段都必須完成規(guī)定的文檔文檔3. 每個(gè)階段結(jié)束前都要對(duì)所完每個(gè)階段結(jié)束前都要對(duì)所完成的文檔進(jìn)行評(píng)審成的文檔進(jìn)行評(píng)審2022-1-2大連理工大學(xué)軟件學(xué)院36瀑布模型瀑布模型 不希望有不希望有“變化變化” 變化來(lái)的越晚,付出的代價(jià)變化來(lái)的越晚,付出的代價(jià)越高。越高。 設(shè)計(jì)階段過(guò)多的假設(shè),導(dǎo)致設(shè)計(jì)階段過(guò)多的假設(shè),導(dǎo)致理想化、一廂情愿的東西過(guò)理想化、一廂情愿的東西過(guò)多。多。2022-1-2大連理工大學(xué)軟件學(xué)院37瀑布模型瀑布模型傳 統(tǒng) 的 瀑 布 模 型傳 統(tǒng) 的 瀑 布 模 型 實(shí)際的瀑布模型實(shí)際的
30、瀑布模型2022-1-2大連理工大學(xué)軟件學(xué)院38瀑布模型瀑布模型 帶帶“反饋環(huán)反饋環(huán)” (實(shí)線箭頭實(shí)線箭頭表示開(kāi)發(fā)過(guò)程,虛線箭頭表示開(kāi)發(fā)過(guò)程,虛線箭頭表示維護(hù)過(guò)程表示維護(hù)過(guò)程) 發(fā)現(xiàn)錯(cuò)誤時(shí),需要沿圖中發(fā)現(xiàn)錯(cuò)誤時(shí),需要沿圖中左側(cè)的反饋線返回前面的左側(cè)的反饋線返回前面的階段,修正前面階段的產(chǎn)階段,修正前面階段的產(chǎn)品之后再繼續(xù)完成后面階品之后再繼續(xù)完成后面階段的任務(wù)。段的任務(wù)。2022-1-2大連理工大學(xué)軟件學(xué)院39瀑布模型瀑布模型 優(yōu)點(diǎn):一定程度優(yōu)點(diǎn):一定程度解決解決“變化變化”的的問(wèn)題。問(wèn)題。 缺點(diǎn):文檔驅(qū)動(dòng),缺點(diǎn):文檔驅(qū)動(dòng),完全依賴書(shū)面文完全依賴書(shū)面文字。字。2022-1-2大連理工大學(xué)軟件學(xué)
31、院40快速原型模型快速原型模型快速建立起可以在計(jì)算機(jī)上運(yùn)快速建立起可以在計(jì)算機(jī)上運(yùn)行的程序,其功能往往是最終行的程序,其功能往往是最終產(chǎn)品功能的子集。產(chǎn)品功能的子集。模型的第一步是快速建立一個(gè)模型的第一步是快速建立一個(gè)能反映用戶主要需求的原型系能反映用戶主要需求的原型系統(tǒng),讓用戶試用,通過(guò)實(shí)踐來(lái)統(tǒng),讓用戶試用,通過(guò)實(shí)踐來(lái)了解目標(biāo)系統(tǒng)的概貌。了解目標(biāo)系統(tǒng)的概貌。(實(shí)線實(shí)線箭頭表示開(kāi)發(fā)過(guò)程,虛線箭頭箭頭表示開(kāi)發(fā)過(guò)程,虛線箭頭表示維護(hù)過(guò)程表示維護(hù)過(guò)程)。2022-1-2大連理工大學(xué)軟件學(xué)院41快速原型模型快速原型模型 用戶試用用戶試用提出修改意見(jiàn)提出修改意見(jiàn)快速地修改原型系統(tǒng)快速地修改原型系統(tǒng)用戶再
32、次試用用戶再次試用 一旦用戶認(rèn)為原型系統(tǒng)確一旦用戶認(rèn)為原型系統(tǒng)確實(shí)能做他們所需要的工作,實(shí)能做他們所需要的工作,開(kāi)發(fā)人員便可據(jù)此書(shū)寫(xiě)規(guī)開(kāi)發(fā)人員便可據(jù)此書(shū)寫(xiě)規(guī)格說(shuō)明文檔,根據(jù)這份文格說(shuō)明文檔,根據(jù)這份文檔開(kāi)發(fā)出的軟件可以滿足檔開(kāi)發(fā)出的軟件可以滿足用戶的真實(shí)需求。用戶的真實(shí)需求。2022-1-2大連理工大學(xué)軟件學(xué)院42快速原型模型快速原型模型快速原型的本質(zhì)是快速原型的本質(zhì)是“快速快速”。開(kāi)發(fā)人員應(yīng)該盡可能快地建造開(kāi)發(fā)人員應(yīng)該盡可能快地建造出原型系統(tǒng),以加速軟件開(kāi)發(fā)出原型系統(tǒng),以加速軟件開(kāi)發(fā)過(guò)程,節(jié)約軟件開(kāi)發(fā)成本。過(guò)程,節(jié)約軟件開(kāi)發(fā)成本。原型的用途是獲知用戶的真正原型的用途是獲知用戶的真正需求,一旦
33、需求確定了,原型需求,一旦需求確定了,原型將被拋棄。將被拋棄。 (原型通常沒(méi)有嚴(yán)(原型通常沒(méi)有嚴(yán)格的規(guī)范化,缺少文檔,難以格的規(guī)范化,缺少文檔,難以維護(hù))維護(hù))2022-1-2大連理工大學(xué)軟件學(xué)院43快速原型模型快速原型模型2022-1-2大連理工大學(xué)軟件學(xué)院44增量模型增量模型每個(gè)構(gòu)件由多個(gè)相互每個(gè)構(gòu)件由多個(gè)相互作用的模塊構(gòu)成,并作用的模塊構(gòu)成,并且能夠完成特定的功且能夠完成特定的功能。能。第一個(gè)增量構(gòu)件往往第一個(gè)增量構(gòu)件往往實(shí)現(xiàn)軟件的基本需求,實(shí)現(xiàn)軟件的基本需求,提供最核心的功能。提供最核心的功能。 (滾雪球方式滾雪球方式)增量模型,也稱漸增模型。增量模型,也稱漸增模型。把軟件產(chǎn)品作為一系
34、列的增量構(gòu)件來(lái)設(shè)計(jì)、編碼、集成和測(cè)把軟件產(chǎn)品作為一系列的增量構(gòu)件來(lái)設(shè)計(jì)、編碼、集成和測(cè)試。試。2022-1-2大連理工大學(xué)軟件學(xué)院45增量模型增量模型 增量模型:逐步增量模型:逐步增加系統(tǒng)功能。增加系統(tǒng)功能。 較短時(shí)間內(nèi)提交較短時(shí)間內(nèi)提交可以工作的產(chǎn)品。可以工作的產(chǎn)品。 減少全新產(chǎn)品帶減少全新產(chǎn)品帶給客戶的沖擊。給客戶的沖擊。 困難:需要開(kāi)放困難:需要開(kāi)放的架構(gòu)設(shè)計(jì)。的架構(gòu)設(shè)計(jì)。瀑布、快速原型:力求一次性給用戶完整的系統(tǒng)。瀑布、快速原型:力求一次性給用戶完整的系統(tǒng)。2022-1-2大連理工大學(xué)軟件學(xué)院46實(shí)現(xiàn)各個(gè)構(gòu)件之前完成全部需求分析、規(guī)格說(shuō)明、概要設(shè)計(jì)。2022-1-2大連理工大學(xué)軟件學(xué)院
35、47螺旋模型螺旋模型 應(yīng)采取適當(dāng)措施消除或減少應(yīng)采取適當(dāng)措施消除或減少開(kāi)發(fā)軟件時(shí)的風(fēng)險(xiǎn)。開(kāi)發(fā)軟件時(shí)的風(fēng)險(xiǎn)。 螺旋模型的基本思想:使用螺旋模型的基本思想:使用原型及其他方法來(lái)盡量降低原型及其他方法來(lái)盡量降低風(fēng)險(xiǎn)。風(fēng)險(xiǎn)。 可以理解為在每個(gè)階段之前可以理解為在每個(gè)階段之前都增加了風(fēng)險(xiǎn)分析過(guò)程的快都增加了風(fēng)險(xiǎn)分析過(guò)程的快速原型模型。速原型模型。2022-1-2大連理工大學(xué)軟件學(xué)院48螺旋模型螺旋模型 帶箭頭的點(diǎn)劃線的帶箭頭的點(diǎn)劃線的長(zhǎng)度代表當(dāng)前累計(jì)長(zhǎng)度代表當(dāng)前累計(jì)的開(kāi)發(fā)費(fèi)用。的開(kāi)發(fā)費(fèi)用。 螺線旋過(guò)的角度值螺線旋過(guò)的角度值代表開(kāi)發(fā)進(jìn)度。代表開(kāi)發(fā)進(jìn)度。 每周期對(duì)應(yīng)一個(gè)開(kāi)每周期對(duì)應(yīng)一個(gè)開(kāi)發(fā)階段發(fā)階段2022
36、-1-2大連理工大學(xué)軟件學(xué)院49螺旋模型螺旋模型 優(yōu)點(diǎn):優(yōu)點(diǎn): 有利于軟件的重用有利于軟件的重用 有助于把軟件質(zhì)量作為軟件開(kāi)發(fā)的目標(biāo)有助于把軟件質(zhì)量作為軟件開(kāi)發(fā)的目標(biāo) 減少測(cè)試帶來(lái)的風(fēng)險(xiǎn)減少測(cè)試帶來(lái)的風(fēng)險(xiǎn) 維護(hù)作為開(kāi)發(fā)的一個(gè)周期,與開(kāi)發(fā)沒(méi)有本質(zhì)區(qū)別維護(hù)作為開(kāi)發(fā)的一個(gè)周期,與開(kāi)發(fā)沒(méi)有本質(zhì)區(qū)別 風(fēng)險(xiǎn)驅(qū)動(dòng):及時(shí)終止項(xiàng)目風(fēng)險(xiǎn)驅(qū)動(dòng):及時(shí)終止項(xiàng)目 弱點(diǎn):弱點(diǎn): 風(fēng)險(xiǎn)驅(qū)動(dòng):需要專業(yè)的風(fēng)險(xiǎn)評(píng)估人員風(fēng)險(xiǎn)驅(qū)動(dòng):需要專業(yè)的風(fēng)險(xiǎn)評(píng)估人員2022-1-2大連理工大學(xué)軟件學(xué)院50噴泉模型噴泉模型 迭代是軟件開(kāi)發(fā)過(guò)程中普迭代是軟件開(kāi)發(fā)過(guò)程中普遍存在的一種內(nèi)在屬性。遍存在的一種內(nèi)在屬性。 軟件過(guò)程各個(gè)階段之間的軟件過(guò)程各個(gè)階
37、段之間的迭代或一個(gè)階段內(nèi)各個(gè)工迭代或一個(gè)階段內(nèi)各個(gè)工作步驟之間的迭代,在面作步驟之間的迭代,在面向?qū)ο蠓缎椭斜仍诮Y(jié)構(gòu)化向?qū)ο蠓缎椭斜仍诮Y(jié)構(gòu)化范型中更常見(jiàn)。范型中更常見(jiàn)。 噴泉模型是典型的面向?qū)娙P褪堑湫偷拿嫦驅(qū)ο笊芷谀P?。象生命周期模型?022-1-2大連理工大學(xué)軟件學(xué)院51噴泉模型噴泉模型體現(xiàn)了面向?qū)ο筌浖_(kāi)發(fā)過(guò)程迭體現(xiàn)了面向?qū)ο筌浖_(kāi)發(fā)過(guò)程迭代和無(wú)縫的特性。代和無(wú)縫的特性。圓圈重疊:活動(dòng)之間存在交迭。圓圈重疊:活動(dòng)之間存在交迭。概念和表示方法的一致性:保證概念和表示方法的一致性:保證無(wú)縫過(guò)渡。無(wú)縫過(guò)渡。面向?qū)ο蠓椒ǎ悍治觥⒃O(shè)計(jì)、編面向?qū)ο蠓椒ǎ悍治觥⒃O(shè)計(jì)、編碼不存在明顯的邊界。碼
38、不存在明顯的邊界。向下箭頭:階段內(nèi)的迭代(求向下箭頭:階段內(nèi)的迭代(求精)。精)。2022-1-2大連理工大學(xué)軟件學(xué)院52噴泉模型噴泉模型 把一個(gè)線性過(guò)程作把一個(gè)線性過(guò)程作為總目標(biāo)為總目標(biāo)避免避免開(kāi)發(fā)過(guò)程過(guò)分無(wú)序。開(kāi)發(fā)過(guò)程過(guò)分無(wú)序。 快速原型模型快速原型模型 圖中的中心垂線圖中的中心垂線2022-1-2大連理工大學(xué)軟件學(xué)院53思考題思考題 1、假設(shè)要你開(kāi)發(fā)一個(gè)軟件,該軟件的功能是把讀入的浮、假設(shè)要你開(kāi)發(fā)一個(gè)軟件,該軟件的功能是把讀入的浮點(diǎn)數(shù)開(kāi)平發(fā),所得結(jié)果應(yīng)該精確到小數(shù)點(diǎn)后點(diǎn)數(shù)開(kāi)平發(fā),所得結(jié)果應(yīng)該精確到小數(shù)點(diǎn)后4位。一旦實(shí)位。一旦實(shí)現(xiàn)并測(cè)試完之后,該產(chǎn)品將被拋棄。你打算選用哪種軟現(xiàn)并測(cè)試完之后
39、,該產(chǎn)品將被拋棄。你打算選用哪種軟件生命周期模型?請(qǐng)說(shuō)明理由。件生命周期模型?請(qǐng)說(shuō)明理由。 2、假設(shè)你被任命為一家軟件公司的項(xiàng)目負(fù)責(zé)人,你的工、假設(shè)你被任命為一家軟件公司的項(xiàng)目負(fù)責(zé)人,你的工作是管理該公司已被廣泛應(yīng)用的字處理軟件的新版本開(kāi)作是管理該公司已被廣泛應(yīng)用的字處理軟件的新版本開(kāi)發(fā)。由于市場(chǎng)競(jìng)爭(zhēng)激烈,公司規(guī)定了嚴(yán)格的完成期限并發(fā)。由于市場(chǎng)競(jìng)爭(zhēng)激烈,公司規(guī)定了嚴(yán)格的完成期限并且已對(duì)外公布。你打算采用哪種軟件生命周期模型?請(qǐng)且已對(duì)外公布。你打算采用哪種軟件生命周期模型?請(qǐng)說(shuō)明理由。說(shuō)明理由。2022-1-2大連理工大學(xué)軟件學(xué)院54思考題思考題 1、瀑布模型。、瀑布模型。 需求明確、算法成熟,
40、無(wú)需原型。需求明確、算法成熟,無(wú)需原型。 實(shí)現(xiàn)之后即被拋棄,無(wú)需增量或螺旋。實(shí)現(xiàn)之后即被拋棄,無(wú)需增量或螺旋。 2、增量模型。、增量模型。 時(shí)間緊,任務(wù)并行。時(shí)間緊,任務(wù)并行。 廣泛應(yīng)用軟件的新版本,舊版本即相當(dāng)于原型。廣泛應(yīng)用軟件的新版本,舊版本即相當(dāng)于原型。 以后可能擴(kuò)充。以后可能擴(kuò)充。2022-1-2大連理工大學(xué)軟件學(xué)院55敏捷軟件開(kāi)發(fā)敏捷軟件開(kāi)發(fā) 快速適應(yīng)快速適應(yīng)需求變化需求變化 提高軟件提高軟件生產(chǎn)率生產(chǎn)率 靈活、動(dòng)靈活、動(dòng)態(tài)的人員態(tài)的人員組織方式組織方式 面向業(yè)務(wù)面向業(yè)務(wù)目標(biāo)持續(xù)目標(biāo)持續(xù)改進(jìn)和重改進(jìn)和重組組2022-1-2大連理工大學(xué)軟件學(xué)院56敏捷過(guò)程與極限編程敏捷過(guò)程與極限編程 敏捷軟件開(kāi)發(fā)宣言敏捷軟件開(kāi)發(fā)宣言 個(gè)體和交互勝過(guò)過(guò)程和工具個(gè)體和交互勝過(guò)過(guò)程和工具 可以工作的軟件勝過(guò)面面俱到的文檔可以工作的軟件勝過(guò)面面俱到的文檔 客戶合作勝過(guò)合同談判客戶合作勝過(guò)合同談判 響應(yīng)變化勝過(guò)遵循計(jì)劃響應(yīng)變化勝過(guò)遵循計(jì)劃 極限編程有效實(shí)踐極限編程有效實(shí)踐 極限編程的整體開(kāi)發(fā)過(guò)程極限編程的整體開(kāi)發(fā)過(guò)程 極限編程的迭代過(guò)程極限編程的迭代過(guò)程2022-1-2大連理工大學(xué)軟件學(xué)院57Rational統(tǒng)一過(guò)程統(tǒng)一過(guò)程2022-1-2大連理工大學(xué)軟件學(xué)院58微軟過(guò)程(微軟過(guò)程(M
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 家長(zhǎng)會(huì)議與交流計(jì)劃
- 改善供應(yīng)鏈管理的策略計(jì)劃
- 現(xiàn)金流對(duì)生產(chǎn)的影響計(jì)劃
- 掌控時(shí)間的職場(chǎng)管理計(jì)劃
- 起泡酒知識(shí)培訓(xùn)課件視頻
- 頸椎損傷截癱術(shù)后護(hù)理
- 護(hù)理實(shí)操知識(shí)培訓(xùn)課件
- 員工防疫知識(shí)培訓(xùn)課件
- Unit 6 A Day in the Life 同步教學(xué)設(shè)計(jì) 2024-2025學(xué)年人教版(2024)七年級(jí)英語(yǔ)上冊(cè)
- 2025年高中化學(xué):“四大平衡”歸納總結(jié)請(qǐng)查收收藏
- 出入境邊防檢查機(jī)關(guān)辦理行政案件程序規(guī)定
- 高中英語(yǔ)話劇作品集《美麗英語(yǔ)Beautiful English》
- 三八婦女節(jié)活動(dòng)策劃PPT模板
- a04-hci深信服超融合配置指南_v1
- 醫(yī)藥代表培訓(xùn)教程(完整版)
- 雙重預(yù)防體系建設(shè)分析記錄表格
- 電子技術(shù)基礎(chǔ)(數(shù)字部分_第五版_康華光)華中科大課件第四章第4節(jié)
- 電力系統(tǒng)遠(yuǎn)動(dòng)原理
- 模擬電子技術(shù)基礎(chǔ)課后答案(完整版)
- 小學(xué)生讀書(shū)筆記模板(共10頁(yè))
- 扁平化生活常用PPT圖標(biāo)素材
評(píng)論
0/150
提交評(píng)論