版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1敏捷開發(fā)知識體系整體框架1.1敏捷開發(fā)工程實踐1.1.1項目管理迭代開發(fā)風(fēng)險價值生命周期多級項目規(guī)劃完整團隊每日站立會議任務(wù)板燃盡圖1.1.2需求管理需求訂單業(yè)務(wù)流程草圖用例驅(qū)動開發(fā)用戶故事1.1.3架構(gòu)演進的架構(gòu)演進的設(shè)計基于組件的架構(gòu)設(shè)計1.1.4開發(fā)結(jié)對編程測試驅(qū)動開發(fā)重構(gòu) 代碼規(guī)范1.1.5測試單元測試并行測試測試管理1.1.6變更管理持續(xù)集成自動構(gòu)建團隊變更管理1.2敏捷開發(fā)管理實踐描述定義和特征說明主要角色主要活動和最佳實踐主要輸入輸出工作流程1.3敏捷開發(fā)工程實踐描述定義和特征說明應(yīng)用說明案例說明2敏捷開發(fā)核心價值觀和原則2.1敏捷軟件開發(fā)宣言個體和互動高于流程和文檔工作的軟件
2、高于詳盡的文檔客戶合作高于合同談判響應(yīng)變化高于遵循計劃也就是說,盡管右項有其價值,我們更重視左項的價值.2.2敏捷軟件開發(fā)的核心價值觀敏捷開發(fā)的核心理念就是以最簡單有效的方式快速打成目標(biāo),并在這個過程中及時地 響應(yīng)外界的變化,做出迅速的調(diào)整.2.2.1核心價值觀以人為本目標(biāo)導(dǎo)向客戶為先擁抱變化2.2.2敏捷開發(fā)的原則我們最重要的目標(biāo),是通過持續(xù)不斷地及早交付有價值的軟件使客戶滿意。欣然面對需求變化,即使在開發(fā)后期也一樣。為了客戶的競爭優(yōu)勢,敏捷過程掌控變化。經(jīng)常地交付可工作的軟件,相隔幾星期或一兩個月,傾向于采取較短的周期。業(yè)務(wù)人員和開發(fā)人員必須相互合作,項目中的每一天都不例外。激發(fā)個體的斗志
3、,以他們?yōu)楹诵拇罱椖?。提供所需的環(huán)境和支援,輔以信任,從而達成目標(biāo)。不論團隊內(nèi)外,傳遞信息效果最好效率也最高的方式是面對面的交談??晒ぷ鞯能浖沁M度的首要度量標(biāo)準(zhǔn)。敏捷過程倡導(dǎo)可持續(xù)開發(fā)。責(zé)任人、開發(fā)人員和用戶要能夠共同維持其步調(diào)穩(wěn)定延續(xù)。堅持不懈地追求技術(shù)卓越和良好設(shè)計,敏捷能力由此增強。以簡潔為本,它是極力減少不必要工作量的藝術(shù)。最好的架構(gòu)、需求和設(shè)計出自自組織團隊。團隊定期地反思如何能提高成效,并依此調(diào)整自身的舉止表現(xiàn)。3敏捷開發(fā)管理實踐ScrumScrum是一種迭代式增量軟件開發(fā)過程,通常用于敏捷軟件開發(fā)。Scrum包括了一系列 實踐和預(yù)定義角色的過程骨架。Scrum中的主要角色包括
4、同項目經(jīng)理類似的Scrum主管角 色負責(zé)維護過程和任務(wù),產(chǎn)品負責(zé)人代表利益所有者,開發(fā)團隊包括了所有開發(fā)人員。Scrum 中的角色“豬”角色產(chǎn)品負責(zé)人(Product Owner)通常由市場部門的人擔(dān)任敏捷教練(Scrum Master) 通常由開發(fā)組組長擔(dān)任開發(fā)團隊(Scrum Team)用戶包括開發(fā),需求,測試軟件是為了某些人而創(chuàng)建!就像“假如森林里有一棵樹倒下了,但沒有人聽到,那么它算發(fā) 出了聲音嗎”,“假如軟件沒有被使用,那么它算是被開發(fā)出來了么?”利益所有者(客戶,提供商)影響項目成功的人,但只直接參與沖刺評審過程。管理者為產(chǎn)品開發(fā)團體架起環(huán)境的那個人3.1.2主要活動和最佳實踐迭代
5、式軟件開發(fā)兩層項目規(guī)劃(Two-Level Project Planning)整體團隊協(xié)作(Whole Team)持續(xù)集成沖刺規(guī)劃會議(Sprint Plan Meeting)每日站立會議(Sprint Daily Meeting)沖刺復(fù)審會議(Sprint Review Meeting)沖刺回顧會議(Retrospective Meeting)密Fl站立.會議Dairy Scmm Meeting-肖!.凝SiCfl蝕笑呼胃rfi站匚蘭S8JU耳;Spriini ReIe 名 p/ztke1用! 秋開需廿快MB性世.9.:度申 JE TH 1蚣/I=_|管Sprint Review沖?;陝潟h
6、Sprint Ptan取向SRI*小WU臥弓,上更理 f M加1比演的I蕓J.號M坦南H 產(chǎn)昨庵布、曰* 覽母 J64 上時!I I胞 i:I i3.1.3主要輸入輸出 產(chǎn)品訂單(P roduct Backlog)沖刺訂單(Spring Backlog)燃盡圖(Burndown Chart)沖刺規(guī)劃會議iriW站3.1.4.1 項在Scrum項目管理過程中產(chǎn)品負責(zé)人獲取項目投資,并對整個產(chǎn)品的成功負責(zé).新的功能增量3.1.4工作流程UScrum 注 i每日站以議 Daiby Scrum Meeting產(chǎn)那仇甫人活動沖峋規(guī)劃會議Sprint Planning M曲I戲工件開發(fā)流程戶M d T P
7、roduct Backlog_r開素人沖期旭顧會議_ = _ Z 尹M LT仙Product Backlog神刺W單 Sprlni BMklg聒的助院沖刺復(fù)審會議 Spnnii Rev-aw Meeting沖刺回唳會議 Sprinl Ae(rosi09Glive沖制ITT沖刺目標(biāo)新的功能增毓燃盡圖Gdfiynghi(g)DJ 湘如IS產(chǎn)品負責(zé)人協(xié)調(diào)個中利益干系人,確定產(chǎn)品訂單中初始的需求清單及其優(yōu)先級,完成項目商業(yè)價 值分析和項目整體規(guī)劃,并任命合適的敏捷教練開展項目工作.項在Scrum軟件開發(fā)過程中,每個沖刺就是較短的迭代,通常為24周.在每個沖刺開始時,產(chǎn)品負責(zé)人和敏捷教練通過召開沖刺規(guī)劃
8、會議和”兩層項目規(guī)劃”的最佳實踐, 制定沖刺訂單(類似迭代計劃)產(chǎn)品負責(zé)人明確在本次沖刺中實現(xiàn)的需求清單,響應(yīng)的工作任務(wù)和負責(zé)人.在每個沖刺迭代中,團隊強調(diào)應(yīng)用”整體團隊協(xié)作”的最佳實踐,通過保持可持續(xù)發(fā)展的工作節(jié)奏 和每日站立會議,實現(xiàn)團隊的自組織,自適應(yīng)和自管理,高效完成沖刺工作.在每個沖刺結(jié)束時,團隊都會召開沖刺復(fù)審會議,團隊成員會在會上分別展示他們開發(fā)出的軟件 (或其他有價值的產(chǎn)品),并從產(chǎn)品負責(zé)人和其他利益關(guān)系人那里,得到反饋信息.在沖刺復(fù)審會議之后,團隊會自覺招開沖刺回顧會議,回顧整個項目過程,討論哪些方法做的好, 哪些方面可以改進,實現(xiàn)軟件交付過程的持續(xù),自發(fā)的改進.XPOpen
9、UpLean4敏捷開發(fā)工程實踐4.1迭代式開發(fā)敏捷迭代開發(fā)是指每次按照相同的開發(fā)方式短期的開發(fā)軟件的部分,或前期開發(fā)并不 詳盡的軟件,每次開發(fā)結(jié)束獲得可以運行的軟件,以供各方干系人觀測,獲得反饋,根據(jù) 反饋適應(yīng)性的進行后續(xù)開發(fā),經(jīng)過發(fā)福多次開發(fā),逐步增加軟件部分,逐步補充完善軟件, 最終開發(fā)得到最后的軟件.每次反復(fù)開開發(fā)叫一次迭代,在Scrum中成為Sprint,中文常譯 為”沖刺”.4.2持續(xù)集成持續(xù)集成(Continuous integration)是指當(dāng)代碼提交后,馬上啟動自動編譯,自動部署金 額自動化測試來快速驗證軟件,從而盡快的發(fā)現(xiàn)集成錯誤.4.3多級項多級項目/產(chǎn)品規(guī)劃,在軟件開發(fā)
10、領(lǐng)域,是指以迭代開發(fā)為基礎(chǔ),形成多層次的,逐步 細化的項目或產(chǎn)品計劃.這些層層相關(guān)的項目/產(chǎn)品規(guī)劃包括:項目/產(chǎn)品愿景項目/產(chǎn)品路線圖版本發(fā)布計劃迭代計劃每日實現(xiàn)4.3.1項目/產(chǎn)品愿景在計劃階段,首先,項目stakeholder,項目/產(chǎn)品負責(zé)人將參與并組成工作組,他們負責(zé) 闡述項目的重要性,給出項目成功失敗的關(guān)鍵標(biāo)準(zhǔn)以及項目整體層面”完成”的定義;在過 程中,可以利用形成項目愿景的一些個工具,包括愿景盒子(Vison Box),業(yè)務(wù)收益矩陣 (Business Benefits Matrix),項目范圍矩陣(Scope Matrix),滑動器(Slider),成本收益矩陣 (Cost/Be
11、nefit Matrix)等;最后,項目愿景需要使用盡量簡要的文檔固定下來,并保證項目團 隊成員都能了解.該文檔需要包括:當(dāng)前的問題機會描述和理由(描述項目的重要性)項目的價值項目如何和組織的戰(zhàn)略目標(biāo)達成一致解決方案綜述項目包含的關(guān)鍵功能項目必須服從的技術(shù)和約束條件項目范圍項目的關(guān)鍵時間線項目收益分析項目和其他項目的依賴性項目的相關(guān)風(fēng)險以及如何消除4.3.2項目/產(chǎn)品路線主要描述為了達到產(chǎn)品愿景而需要交付的關(guān)鍵功能和特性,這些特性基本處于Epic和 特性層面,不包裹用戶故事(User Story).它從時間的維度來表述對愿景的支持和實現(xiàn).它 從時間維度來表達對愿景的支持和實現(xiàn).當(dāng)項目/產(chǎn)品需要
12、發(fā)布多個版本時,項目線路圖就 非常重要,否則,它和發(fā)布計劃相同,項目/產(chǎn)品線路圖由項目負責(zé)人和項目經(jīng)理維護,并 保持更新.通常,會形成路線圖問題或幻燈片,使用大圖標(biāo)顯示重要的里程碑,包含的功 能和發(fā)布日期等,讓所有項目/產(chǎn)品相關(guān)人員都清楚產(chǎn)品各個組件的可能發(fā)布日程.4.3.3版本發(fā)布計劃版本發(fā)布計劃由團隊成員和項目/產(chǎn)品負責(zé)人共同制定,并通過版本發(fā)布計劃會議討論 通過.它包括了當(dāng)前版本需要交付的,達成一致的關(guān)鍵功能,并經(jīng)過優(yōu)先級排序,可以包 含EPIC和User Story.版本發(fā)布計劃中常使用的概念包括:故事點,迭代團隊速率和優(yōu)先級 排序.通常,項目/產(chǎn)品負責(zé)人提出本次發(fā)布的目標(biāo),團隊成員根
13、據(jù)目標(biāo)和功能特性的重要 性對故事進行排序,并依據(jù)團隊速率覺得本次發(fā)布需要包含的故事點.前幾次版本發(fā)布使 用估算值,其準(zhǔn)確性隨著項目/產(chǎn)品的時間持續(xù)而逐步精確.版本發(fā)布計劃是劇本適應(yīng)性可 調(diào)整的計劃,會隨著項目演進而改變.4.3.4迭代計劃迭代計劃是對版本發(fā)布計劃的再次細化,同樣由團隊成員和項目/產(chǎn)品負責(zé)人共同制定, 并聽過迭代計劃會議討論通過.迭代會議負責(zé)兩件事情:根據(jù)當(dāng)前狀態(tài)確定是否需要對版本計劃做出更新為當(dāng)前的迭代計劃制定迭代計劃迭代計劃中常使用的概念包括:拆分Epic和User Story,任務(wù),任務(wù)估算.在迭代會議 上,成員首先根據(jù)當(dāng)前的項目變化對發(fā)布計劃進行更新,然后根據(jù)更新后的,重
14、新排序過 的故事制定當(dāng)前迭代需要完成的故事,并對這些故事進行詳細的任務(wù)拆分.成員在認領(lǐng)完 任務(wù)后,會對任務(wù)的實現(xiàn)時間做出估算,估算值需要具體到這些估算信息可以方便任何成 員追蹤任務(wù)的進度.4.3.5每日實現(xiàn)沒事實現(xiàn)是團隊成員完成任務(wù)的具體過程,它依據(jù)任務(wù)估算值并根據(jù)任務(wù)最終實現(xiàn)情 況更新該值.在敏捷方法中,使用每日站會議來報告進度.通過15分鐘的站立形式,團隊 成員報告故事或者任務(wù)的完成,未完成狀態(tài),而解決層面的問題則在會議之后處理.4.4完整團隊Scrum團隊必須具備的三個完整性:4.4.1團隊職責(zé)完整性4.4.1.1產(chǎn)品負責(zé)人(Product Owner )確定產(chǎn)品的功能。決定發(fā)布的日期和
15、發(fā)布內(nèi)容。為產(chǎn)品的收益(profitability of the product)負責(zé)。根據(jù)市場價值確定功能優(yōu)先級。在30天內(nèi)調(diào)整功能和調(diào)整功能優(yōu)先級。接受或拒絕接受開發(fā)團隊的工作成果4.4.1.2 敏捷教練(Scrum Master)負責(zé)監(jiān)督整個Scrum項目進程,調(diào)整開發(fā)計劃保證團隊資源完全可被利用并且全部是高產(chǎn)出的。保證各個角色及職責(zé)的良好協(xié)作。解決團隊開發(fā)中的障礙。做為團隊和外部的接口,屏蔽外界對團隊成員的干擾。保證開發(fā)過程按計劃進行,組織 Daily Scrum, Sprint Review and Sprint Planning meetings。需要知道什么任務(wù)已經(jīng)完成,哪些任務(wù)
16、已經(jīng)開始,哪些新的任務(wù)已發(fā)現(xiàn),和哪些估計可能已經(jīng)發(fā) 生變化.根據(jù)以上的情況更新反映每天完成的工作量以及還有多少沒有完成的燃盡圖需要找出阻礙Scrum的障礙和依賴,根據(jù)優(yōu)先級指定計劃解決這些障礙個人問題或沖突在Scrum里是需要解決的。這些都需要被澄清,或通過內(nèi)部的溝通解決,或向管 理層和HR尋求幫助解決Scrum Master需要知道什么任務(wù)已經(jīng)完成,哪些任務(wù)已經(jīng)開始,哪些新的任務(wù)已發(fā)現(xiàn),和哪些估 計可能已經(jīng)發(fā)生變化。Scrum Master需要根據(jù)以上的情況更新反映每天完成的工作量以及還有多 少沒有完成的Burndown Chart。Scrum Master還必須仔細考慮進展中的開放任務(wù)數(shù),
17、進展中的 工作需要得到最小化,以實現(xiàn)精益生產(chǎn)率的收益。Scrum Master需要找出阻礙Scrum的障礙和依賴。他們需要的優(yōu)先次序和跟蹤。根據(jù)優(yōu)先級指定 計劃解決這些障礙。其中有些問題可以在團隊內(nèi)部解決,有些則要團隊之間的協(xié)調(diào),還有的要管 理層的介入來解決.4.4.1.3 開發(fā)隊(Scrum Team)具有不同特長的團隊成員,人數(shù)控制在5-7個左右,跨職能,包括開發(fā),需求,測試弱化分工,每個人都參與設(shè)計,開發(fā)與測試確定Sprint目標(biāo)和具體說明的工作成果。在項目向?qū)Х秶鷥?nèi)有權(quán)利做任何事情已確保達到Sprint的目標(biāo)。 向Product Owner演示產(chǎn)品功能。4.4.2團隊素質(zhì)完整性要具備很
18、強的集體協(xié)作精神.要具備良好的溝通能力必須能積極主動的接受新的事物,要具備創(chuàng)新能力要具備極強的自我管理能力和積極主動的精神4.4.3溝通的完整性Sprint啟動會每日站立會議Sprint回顧會4.4.4案例4.5驗收測試驅(qū)動開發(fā)ATDDTDD只是開發(fā)人員的職責(zé),通過單元測試用例來驅(qū)動功能代碼的實現(xiàn)。ATDD在準(zhǔn)備 實施一個功能或特性之前,首先團隊需要定義出期望的質(zhì)量標(biāo)準(zhǔn)和驗收細則,以明確而且 達成共識的驗收測試計劃(包含一系列測試場景)來驅(qū)動開發(fā)人員的TDD實踐和測試人 員的測試腳本開發(fā)。面向開發(fā)人員,強調(diào)如何實現(xiàn)系統(tǒng)以及如何檢驗。挑選用戶故事為故事寫測試實現(xiàn)測試實現(xiàn)故事4.6結(jié)對編程結(jié)對編程
19、可以看做是一種敏捷化的Code Review4.7新結(jié)對編程兩位程序員新成結(jié)對小組,每人一臺電腦,坐在臨近的工位上,兩人合作完成一組功 能(可以是兩個或多個獨立的模塊)的設(shè)計,代碼實現(xiàn).但對己某一個模塊來說設(shè)計和代碼 是分開的,一個人負責(zé)設(shè)計,另一個人負責(zé)寫代碼,對于其他模塊則反之.4.8確定沖剌計劃4.8.1定義和說明目的:ST和PO共同決定在接下來的沖刺周期內(nèi)的目標(biāo)以及那些功能和任務(wù)需求要完成主要角色:ST, PO, SM主要輸入:Product backlog,團隊的能力主要輸出:Sprint Backlog沖刺會議分兩個部分解決本次沖刺要完成哪些需求解決這些選擇的需求要如何被完成4.8
20、.2案例4.9故事點估算故事點是表述一個用戶故事,一項功能或一件工作的整體大小的一種度量單位.數(shù)值 本身不重要,重要的是這些故事之間對比體現(xiàn)相對大小.4.9.1計劃撲克開始時,美人得到一張撲克,上面有任務(wù)點(?, 0, 1/2, 1, 2, 3, 5, 8, 13, 20, 40, 100,無窮).?代表無法 估算,無窮代表故事太大開始對故事進行估算,先由PO介紹這個故事的描述.接著澄清問題每一個組員從撲克中挑選可以代表這個故事的卡片,集體亮牌最高分和最低分的組員像團隊做出解釋全組成員自由討論幾分鐘重新打分,直到全組統(tǒng)一.4.9.2 敏捷估算 2.0(Agile Estmating 2.0)po像團隊成員介紹每一個用戶故事,確保所有需求相關(guān)的問題都在做估算前得到解決整個團隊參與游戲:一次由一人將一個故事卡片放在合適的位置,規(guī)模小的在左,規(guī)模大的在右,一樣大的豎排.輪流移動故事卡片,直到整個團隊都認同白板上故事卡的排序為止.團隊將故事點(Story Point)分配給每個故事.4.10 需求訂單(Product Backlog)記錄用戶需求的列表,包括產(chǎn)品所有需要的特征.每一項包含了需求標(biāo)題,描述,重要性,故事點(或其他表示大小的數(shù)字)
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024屆遼寧省丹東市高三上學(xué)期期末考試化學(xué)試題教學(xué)質(zhì)量監(jiān)測(解析版)
- 天津市紅橋區(qū)2024-2025學(xué)年高三上學(xué)期期中物理試題(解析版)
- 高速公路收費站能源管理方案
- 工業(yè)自動化系統(tǒng)驗收及優(yōu)化方案
- 地下停車場太陽能地暖供暖方案
- 中學(xué)文明禮儀教育活動方案
- 建筑項目施工勞動力管理方案
- 酒店物業(yè)服務(wù)方案改革
- 醫(yī)療廢物處理耗材配送方案
- 綠色物流運輸實施方案
- 2024-2030年樺樹汁行業(yè)市場現(xiàn)狀供需分析及重點企業(yè)投資評估規(guī)劃分析研究報告
- 創(chuàng)新創(chuàng)業(yè)心智模式探索智慧樹知到期末考試答案章節(jié)答案2024年天津農(nóng)學(xué)院
- 2024年九年級化學(xué)上冊 第6單元 碳和碳的氧化物教案 (新版)新人教版
- 2024詳解新版《公司法》課件
- 醫(yī)院法律、法規(guī)培訓(xùn)課件
- 2024年高考作文真題解讀(立意+提綱+范文+總評)
- 美沙酮門診管理新規(guī)制度
- 2024年河南省信陽市新縣中考一模數(shù)學(xué)試題 【含答案解析】
- 正常與心梗心電圖
- 中考語文復(fù)習(xí)專題7-口語交際
- MOOC 孫子兵法-湖南大學(xué) 中國大學(xué)慕課答案
評論
0/150
提交評論