迭代、進化和敏捷課件_第1頁
迭代、進化和敏捷課件_第2頁
迭代、進化和敏捷課件_第3頁
迭代、進化和敏捷課件_第4頁
迭代、進化和敏捷課件_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Chapter2迭代、進化和敏捷1謝謝閱讀2020-5-17Chapter2迭代、進化和敏捷1謝謝閱讀2020-5-1本章目標定義迭代(iterative)過程和敏捷(agile)過程迭代/瀑布敏捷/重型定義統(tǒng)一過程中的基本概念2謝謝閱讀2020-5-17本章目標定義迭代(iterative)過程和敏捷(agile軟件過程什么是軟件過程

軟件過程定義了軟件開發(fā)、部署和維護的步驟。軟件過程本身就是軟件

軟件過程是一種被由人構(gòu)成的虛擬機執(zhí)行的軟件。軟件過程為什么重要(為什么不應該那么重要)3謝謝閱讀2020-5-17軟件過程什么是軟件過程

軟件過程定義了軟件開發(fā)、部署和維護的軟件過程的譜系軟件過程

軟件過程描述開發(fā)、部署和維護軟件系統(tǒng)的步驟。迭代式開發(fā)

迭代式開發(fā)將軟件開發(fā)過程分解為一系列小的,固定周期的(比如,4個星期)的小項目,每個小項目稱為一個迭代。統(tǒng)一過程(UnifiedProcess)

一種采用OOA/D方法學開發(fā)項目的過程(IvarJacobson)。敏捷建模UP(AgileUP)

引入了敏捷概念的UP,是UP的一個簡集。SoftwareProcessesWaterFallOthers…IterativeProcessesXPUnifiedProcessRUPAgileUP4謝謝閱讀2020-5-17軟件過程的譜系軟件過程

軟件過程描述開發(fā)、部署和維護軟件系迭代式開發(fā)瀑布生命周期在瀑布生命周期過程中,試圖在編寫代碼之前定義幾乎所有的需求,以及明確詳盡的時間表。迭代式的生命周期通過多次的迭代獲得周期性的反饋,以這些反饋為驅(qū)動力,對系統(tǒng)進行不斷的擴展和精化。迭代式開發(fā)將軟件開發(fā)過程分解為一系列小的,固定周期的(比如,4個星期)的小項目,每個小項目稱為一個迭代。5謝謝閱讀2020-5-17迭代式開發(fā)瀑布生命周期5謝謝閱讀2020-5-17迭代式開發(fā)6謝謝閱讀2020-5-17迭代式開發(fā)6謝謝閱讀2020-5-17每一次迭代的周期迭代的一個關(guān)鍵思想是時間定量,即時間長度固定。大部分迭代方法建議迭代時間在2到6周之間。7謝謝閱讀2020-5-17每一次迭代的周期迭代的一個關(guān)鍵思想是時間定量,即時間長度固定示例在項目開始為期3周的迭代中周一啟動會議,明確本次迭代的任務(wù)和目標。其間一小時制作UML圖,打印最重要的部分。其他時間團隊成員結(jié)對在白板上用UML圖建模。開發(fā),測試。發(fā)布,給客戶Review本次迭代的成果,獲取反饋。計劃下一次的迭代。注意:沒有匆忙地開始編碼,也沒有長期的,試圖完全定義系統(tǒng)的設(shè)計。迭代的成果不是用完后就拋棄的原型,而是最終產(chǎn)品的子集。獲取用戶反饋并不斷改進是項目的主要驅(qū)動力量。8謝謝閱讀2020-5-17示例在項目開始為期3周的迭代中8謝謝閱讀2020-5-17迭代的過程Afteraseriesofstructured,build-feedback-adaptcycles,thesystemwillbestable.9謝謝閱讀2020-5-17迭代的過程Afteraseriesofstructu擁抱變化現(xiàn)實變化不可避免變化非常昂貴方案A仔細地分析和設(shè)計和客戶簽訂合同抱怨方案B迭代式的開發(fā)歡迎變化與客戶一起成功10謝謝閱讀2020-5-17擁抱變化現(xiàn)實變化不可避免方案A仔細地分析和設(shè)計方案B迭擁抱變化僅僅有態(tài)度并不夠:軟件并不是想大多數(shù)人的直覺那樣容易變化的。迭代式的開發(fā)不比瀑布式開發(fā)容易。我們應該構(gòu)造能不斷演化的軟件系統(tǒng)。11謝謝閱讀2020-5-17擁抱變化11謝謝閱讀2020-5-17迭代式開發(fā)的優(yōu)勢能夠較早地對付風險高的內(nèi)容。能夠讓人明確地看到進展,給客戶信心,給開發(fā)隊伍成就感。能夠較早獲得反饋,鼓勵用戶參與開發(fā),使系統(tǒng)能夠更接近用戶需求??刂茝碗s性。12謝謝閱讀2020-5-17迭代式開發(fā)的優(yōu)勢能夠較早地對付風險高的內(nèi)容。12謝謝閱讀20統(tǒng)一過程:UnifiedProcess(UP)UP是迭代過程的一種。

提出人:IvarJacobsonUP提供了如何實施OOA/D(和如何介紹OOA/D)的示范結(jié)構(gòu)。這也形成了本書的結(jié)構(gòu)。UP具有靈活性,可以應用于敏捷(輕量級)方法。13謝謝閱讀2020-5-17統(tǒng)一過程:UnifiedProcess(UP)UP是迭UP的階段UP項目將其工作和迭代組織為4個主要的階段:初始(Inception)—

大體上的構(gòu)想,業(yè)務(wù)用例,范圍和初步的估計。細化(Elaboration)—進一步細化的構(gòu)想,以迭代的方式實現(xiàn)風險較高的核心架構(gòu),識別出大部分需求和范圍,作更為準確地估計。構(gòu)造(Construction)—以迭代的方式實現(xiàn)剩下的低風險,易實現(xiàn)的部分,為發(fā)布做好準備。移交(Transition)—beta測試,部署14謝謝閱讀2020-5-17UP的階段UP項目將其工作和迭代組織為4個主要的階段:14謝15謝謝閱讀2020-5-1715謝謝閱讀2020-5-17UP科目(Disciplines)UP中定義了下列的科目:業(yè)務(wù)建模(BusinessModeling)需求(Requirements)設(shè)計(Design)其他(實現(xiàn)/測試/部署….)16謝謝閱讀2020-5-17UP科目(Disciplines)UP中定義了下列的科目:科目和迭代(DisciplinesandIterations)17謝謝閱讀2020-5-17科目和迭代(DisciplinesandIterati科目和階段(DisciplinesandPhases)18謝謝閱讀2020-5-17科目和階段(DisciplinesandPhases)1判斷你是否理解迭代開發(fā)或UP你是否認為初始=需求細化=設(shè)計構(gòu)造=實現(xiàn)你是否認為制作UML圖的設(shè)計過程是用來精確地定義系統(tǒng),而開發(fā)和編碼只不過是將他們機械地變換為源程序的過程19謝謝閱讀2020-5-17判斷你是否理解迭代開發(fā)或UP你是否認為19謝謝閱讀2020根據(jù)UP的科目和階段設(shè)計的課程結(jié)構(gòu)20謝謝閱讀2020-5-17根據(jù)UP的科目和階段設(shè)計的課程結(jié)構(gòu)20謝謝閱讀2020-5-敏捷宣言個體和交流(Individualsandinteractions)工作的軟件(Workingsoftware)與客戶協(xié)作(Customercollaboration)積極響應變更(Respondingtochange)過程和工具(processesandtools)完善的文檔(comprehensivedocumentation)合同談判(contractnegotiation)嚴格履行計劃(followingaplan)21謝謝閱讀2020-5-17敏捷宣言個體和交流(Individualsandinte敏捷原則通過早期和持續(xù)交付有價值的軟件來滿足客戶歡迎變更需求,即使在開發(fā)的后期提出。敏捷過程為客戶的競爭優(yōu)勢而控制變更。以兩周到兩月為周期,頻繁地交付可運行的軟件。在整個項目的過程中,每一天開發(fā)人員都要和來自客戶的業(yè)務(wù)人員合作。依靠有干勁的個體推動項目的開發(fā),為他們提供所需的開發(fā)環(huán)境、支持和信任。在開發(fā)團隊中獲開發(fā)團隊間傳遞信息的最為有效和高效的方法是面對面的交流。衡量進度的重要尺度是可運行的軟件。敏捷過程提倡持續(xù)開發(fā)和集成。發(fā)起人、開發(fā)者和用戶應該步調(diào)一致。關(guān)注技術(shù)和設(shè)計技能的提高。簡潔,這門減少工作量的藝術(shù)至關(guān)重要。團隊要定期反省如何使工作更有效,然后相應地調(diào)整行為。22謝謝閱讀2020-5-17敏捷原則通過早期和持續(xù)交付有價值的軟件來滿足客戶22謝謝閱讀敏捷的UP敏捷的UP:從標準的UP活動中選取了一小部分活動和成果物,是UP的一個簡集。敏捷建模:建模的主要目的是為理解,而非文檔。不需要一個對于項目整體的詳細計劃。測試驅(qū)動重構(gòu)持續(xù)集成23謝謝閱讀2020-5-17敏捷的UP敏捷的UP:23謝謝閱讀2020-5-17Chapter2迭代、進化和敏捷24謝謝閱讀2020-5-17Chapter2迭代、進化和敏捷1謝謝閱讀2020-5-1本章目標定義迭代(iterative)過程和敏捷(agile)過程迭代/瀑布敏捷/重型定義統(tǒng)一過程中的基本概念25謝謝閱讀2020-5-17本章目標定義迭代(iterative)過程和敏捷(agile軟件過程什么是軟件過程

軟件過程定義了軟件開發(fā)、部署和維護的步驟。軟件過程本身就是軟件

軟件過程是一種被由人構(gòu)成的虛擬機執(zhí)行的軟件。軟件過程為什么重要(為什么不應該那么重要)26謝謝閱讀2020-5-17軟件過程什么是軟件過程

軟件過程定義了軟件開發(fā)、部署和維護的軟件過程的譜系軟件過程

軟件過程描述開發(fā)、部署和維護軟件系統(tǒng)的步驟。迭代式開發(fā)

迭代式開發(fā)將軟件開發(fā)過程分解為一系列小的,固定周期的(比如,4個星期)的小項目,每個小項目稱為一個迭代。統(tǒng)一過程(UnifiedProcess)

一種采用OOA/D方法學開發(fā)項目的過程(IvarJacobson)。敏捷建模UP(AgileUP)

引入了敏捷概念的UP,是UP的一個簡集。SoftwareProcessesWaterFallOthers…IterativeProcessesXPUnifiedProcessRUPAgileUP27謝謝閱讀2020-5-17軟件過程的譜系軟件過程

軟件過程描述開發(fā)、部署和維護軟件系迭代式開發(fā)瀑布生命周期在瀑布生命周期過程中,試圖在編寫代碼之前定義幾乎所有的需求,以及明確詳盡的時間表。迭代式的生命周期通過多次的迭代獲得周期性的反饋,以這些反饋為驅(qū)動力,對系統(tǒng)進行不斷的擴展和精化。迭代式開發(fā)將軟件開發(fā)過程分解為一系列小的,固定周期的(比如,4個星期)的小項目,每個小項目稱為一個迭代。28謝謝閱讀2020-5-17迭代式開發(fā)瀑布生命周期5謝謝閱讀2020-5-17迭代式開發(fā)29謝謝閱讀2020-5-17迭代式開發(fā)6謝謝閱讀2020-5-17每一次迭代的周期迭代的一個關(guān)鍵思想是時間定量,即時間長度固定。大部分迭代方法建議迭代時間在2到6周之間。30謝謝閱讀2020-5-17每一次迭代的周期迭代的一個關(guān)鍵思想是時間定量,即時間長度固定示例在項目開始為期3周的迭代中周一啟動會議,明確本次迭代的任務(wù)和目標。其間一小時制作UML圖,打印最重要的部分。其他時間團隊成員結(jié)對在白板上用UML圖建模。開發(fā),測試。發(fā)布,給客戶Review本次迭代的成果,獲取反饋。計劃下一次的迭代。注意:沒有匆忙地開始編碼,也沒有長期的,試圖完全定義系統(tǒng)的設(shè)計。迭代的成果不是用完后就拋棄的原型,而是最終產(chǎn)品的子集。獲取用戶反饋并不斷改進是項目的主要驅(qū)動力量。31謝謝閱讀2020-5-17示例在項目開始為期3周的迭代中8謝謝閱讀2020-5-17迭代的過程Afteraseriesofstructured,build-feedback-adaptcycles,thesystemwillbestable.32謝謝閱讀2020-5-17迭代的過程Afteraseriesofstructu擁抱變化現(xiàn)實變化不可避免變化非常昂貴方案A仔細地分析和設(shè)計和客戶簽訂合同抱怨方案B迭代式的開發(fā)歡迎變化與客戶一起成功33謝謝閱讀2020-5-17擁抱變化現(xiàn)實變化不可避免方案A仔細地分析和設(shè)計方案B迭擁抱變化僅僅有態(tài)度并不夠:軟件并不是想大多數(shù)人的直覺那樣容易變化的。迭代式的開發(fā)不比瀑布式開發(fā)容易。我們應該構(gòu)造能不斷演化的軟件系統(tǒng)。34謝謝閱讀2020-5-17擁抱變化11謝謝閱讀2020-5-17迭代式開發(fā)的優(yōu)勢能夠較早地對付風險高的內(nèi)容。能夠讓人明確地看到進展,給客戶信心,給開發(fā)隊伍成就感。能夠較早獲得反饋,鼓勵用戶參與開發(fā),使系統(tǒng)能夠更接近用戶需求??刂茝碗s性。35謝謝閱讀2020-5-17迭代式開發(fā)的優(yōu)勢能夠較早地對付風險高的內(nèi)容。12謝謝閱讀20統(tǒng)一過程:UnifiedProcess(UP)UP是迭代過程的一種。

提出人:IvarJacobsonUP提供了如何實施OOA/D(和如何介紹OOA/D)的示范結(jié)構(gòu)。這也形成了本書的結(jié)構(gòu)。UP具有靈活性,可以應用于敏捷(輕量級)方法。36謝謝閱讀2020-5-17統(tǒng)一過程:UnifiedProcess(UP)UP是迭UP的階段UP項目將其工作和迭代組織為4個主要的階段:初始(Inception)—

大體上的構(gòu)想,業(yè)務(wù)用例,范圍和初步的估計。細化(Elaboration)—進一步細化的構(gòu)想,以迭代的方式實現(xiàn)風險較高的核心架構(gòu),識別出大部分需求和范圍,作更為準確地估計。構(gòu)造(Construction)—以迭代的方式實現(xiàn)剩下的低風險,易實現(xiàn)的部分,為發(fā)布做好準備。移交(Transition)—beta測試,部署37謝謝閱讀2020-5-17UP的階段UP項目將其工作和迭代組織為4個主要的階段:14謝38謝謝閱讀2020-5-1715謝謝閱讀2020-5-17UP科目(Disciplines)UP中定義了下列的科目:業(yè)務(wù)建模(BusinessModeling)需求(Requirements)設(shè)計(Design)其他(實現(xiàn)/測試/部署….)39謝謝閱讀2020-5-17UP科目(Disciplines)UP中定義了下列的科目:科目和迭代(DisciplinesandIterations)40謝謝閱讀2020-5-17科目和迭代(DisciplinesandIterati科目和階段(DisciplinesandPhases)41謝謝閱讀2020-5-17科目和階段(DisciplinesandPhases)1判斷你是否理解迭代開發(fā)或UP你是否認為初始=需求細化=設(shè)計構(gòu)造=實現(xiàn)你是否認為制作UML圖的設(shè)計過程是用來精確地定義系統(tǒng),而開發(fā)和編碼只不過是將他們機械地變換為源程序的過程42謝謝閱讀2020-5-17判斷你是否理解迭代開發(fā)或UP你是否認為19謝謝閱讀2020根據(jù)UP的科目和階段設(shè)計的課程結(jié)構(gòu)43謝謝閱讀2020-5-17根據(jù)UP的科目和階段設(shè)計的課程結(jié)構(gòu)20謝謝閱讀2020-5-敏捷宣言個體和交流(Individualsandinteractions)工作的軟件(Workingsoftware)

溫馨提示

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

最新文檔

評論

0/150

提交評論