版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2022-4-41Agile Development敏捷開(kāi)發(fā)Jack Ding ()09/28/20102022-4-42Content nAgile Development介紹nRUPnXPnScrum2022-4-43Agile Process - 敏捷的開(kāi)發(fā)流程敏捷的開(kāi)發(fā)流程nAgile Process (敏捷的開(kāi)發(fā)流程) 是一種軟件開(kāi)發(fā)流程的泛稱,幾項(xiàng)共通的特性 :客戶與開(kāi)發(fā)人員形成密切合作的團(tuán)隊(duì),因?yàn)榭蛻魺o(wú)法于初期定義完整的規(guī)格,而開(kāi)發(fā)人員于開(kāi)發(fā)過(guò)程中也常常無(wú)法知悉外在環(huán)境或業(yè)務(wù)的變動(dòng),所以需要兩者密切合作方能開(kāi)發(fā)適用的軟件。 項(xiàng)目最終的目標(biāo)是可執(zhí)行的程序,因此所有的中間產(chǎn)品必須經(jīng)過(guò)
2、審慎評(píng)估,確認(rèn)有助于最終目標(biāo),才需要制作中間產(chǎn)品。 采用 Iterative 與 Incremental 方式分階段進(jìn)行,密集 review 是否符合需求。 流程可以簡(jiǎn)單,但規(guī)劃與執(zhí)行必須嚴(yán)謹(jǐn)。 1.強(qiáng)調(diào)團(tuán)隊(duì)合作,賦予高度的責(zé)任,團(tuán)隊(duì)有自主權(quán)得以因應(yīng)變化做調(diào)整2022-4-44Agile Developmentn敏捷開(kāi)發(fā)是一種以人為核心、迭代、循序漸進(jìn)的開(kāi)發(fā)方法 n在敏捷開(kāi)發(fā)中,項(xiàng)目的構(gòu)建被切分成多個(gè)子項(xiàng)目,各個(gè)子項(xiàng)目的成果都經(jīng)過(guò)測(cè)試,具備集成和可運(yùn)行的特征 。2022-4-45敏捷開(kāi)發(fā)核心價(jià)值 (Core Value)nIndividuals and interactions over pr
3、ocesses and tools 個(gè)人和交流重于過(guò)程和工具nWorking software over comprehensive documentation 正在運(yùn)行的軟件本身重于復(fù)雜的文檔nCustomer collaboration over contract negotiation 與客戶的溝通和交流重于使用合同約束客戶nResponding to change over following a plan對(duì)變化的快速響應(yīng)重于跟隨計(jì)劃2022-4-46敏捷開(kāi)發(fā)原則(Principles)最高目標(biāo)是通過(guò)快速的和經(jīng)常的發(fā)布軟件滿足客戶的需要提交軟件的周期為幾個(gè)星期到幾個(gè)月產(chǎn)生正確的軟件是衡
4、量進(jìn)度的首要標(biāo)準(zhǔn)主動(dòng)接受需求的改變而不是拒絕商務(wù)人員和開(kāi)發(fā)人員工作在一起個(gè)人必須有動(dòng)力,要?jiǎng)?chuàng)造環(huán)境支持他們的要求,信任他們最有效的交流方法是面對(duì)面的交流最好的結(jié)構(gòu),需求和設(shè)計(jì)來(lái)自于自組織的團(tuán)隊(duì)(self-organizing team),允許任何人提出想法和建議持續(xù)改進(jìn)設(shè)計(jì)和編碼鼓勵(lì)正常工作,減少長(zhǎng)時(shí)間加班保持簡(jiǎn)單,減少不必要的部分,認(rèn)識(shí)到簡(jiǎn)單的設(shè)計(jì)比復(fù)雜的設(shè)計(jì)更難(simple design is harder to produce)定期調(diào)整過(guò)程,獲得更高效率2022-4-47敏捷開(kāi)發(fā)的設(shè)計(jì)原則 nSRPn單一職責(zé)原則SRP:Single Responsibility Principle n
5、OCPn開(kāi)放封閉原則OCP:OpenClose Principle nLSPnLiskov替換原則LSP:Liskov Substitution Principle nDIPn依賴倒置原則DIP:Dependency Invertion Principle nISPn接口隔離原則ISP:Interface Separate Principle 2022-4-48敏捷開(kāi)發(fā)-迭代計(jì)劃最新版本驗(yàn)收測(cè)試發(fā)布計(jì)劃迭代計(jì)劃開(kāi)發(fā)項(xiàng)目周期項(xiàng)目周期2022-4-49敏捷開(kāi)發(fā)-迭代計(jì)劃2022-4-410名詞解釋故事故事 是客戶想要系統(tǒng)做的事情,適合在一至兩個(gè)迭代內(nèi)完成,并且是可測(cè)試的,他不一定是商業(yè)價(jià)值的直接體
6、現(xiàn)。迭代迭代 是一個(gè)周期在2-4周,能夠完成當(dāng)前團(tuán)隊(duì)所能實(shí)現(xiàn)的,最具商業(yè)價(jià)值的功能,并可以提供一個(gè)可工作的小版本供發(fā)布。Velocity 翻譯為項(xiàng)目周轉(zhuǎn)時(shí)間。代表團(tuán)隊(duì)在給定周期內(nèi)能夠完成多少商業(yè)價(jià)值,以便用于衡量將來(lái)該團(tuán)隊(duì)能夠提供的商業(yè)價(jià)值。也即昨天的天氣。2022-4-411名詞解釋優(yōu)先級(jí)優(yōu)先級(jí) 主要考慮商業(yè)價(jià)值,同時(shí)兼顧市場(chǎng)風(fēng)險(xiǎn)、商業(yè)風(fēng)險(xiǎn)、技術(shù)風(fēng)險(xiǎn)等因素在內(nèi)的一個(gè)衡量數(shù)字,優(yōu)先級(jí)越高通常意味著其商業(yè)價(jià)值越高風(fēng)險(xiǎn)系數(shù)風(fēng)險(xiǎn)系數(shù)風(fēng)險(xiǎn)系數(shù) 綜合商業(yè)環(huán)境、項(xiàng)目資源、技術(shù)以及項(xiàng)目環(huán)境等等因素在內(nèi)的一個(gè)衡量數(shù)字,它是優(yōu)先級(jí)的重要衡量指標(biāo)之一。它通常出現(xiàn)在故事中。風(fēng)險(xiǎn)系數(shù)較大意味著優(yōu)先級(jí)也較大。負(fù)載因子負(fù)
7、載因子負(fù)載因子 是綜合項(xiàng)目成員的技術(shù)能力、技能集、精神狀態(tài)等等因素,對(duì)于團(tuán)隊(duì)成員的一個(gè)負(fù)載系數(shù)。2022-4-412名詞解釋理想時(shí)間理想時(shí)間 排除一切可能的外界干擾,同時(shí)排除自身的精神狀態(tài),職業(yè)態(tài)度等等因素,完成某項(xiàng)工作所需要的時(shí)間。實(shí)際時(shí)間實(shí)際時(shí)間 理想時(shí)間乘上負(fù)載因子任務(wù)任務(wù)任務(wù) 分配到項(xiàng)目成員,從故事切分的出來(lái)。通常任務(wù)時(shí)間不應(yīng)該超過(guò)10個(gè)實(shí)際工作日。2022-4-4131. RUP2. XP3. Scrum2022-4-414RUP- Rational Unify ProcessnRUP 為 IBM Rational 提出的軟件開(kāi)發(fā)流程n內(nèi)容含蓋 Business modeling,
8、Requirement Modeling, Logical Design, Implementation, Testing, Deployment 等軟件開(kāi)發(fā)生命周期的直接工作n與 Project Management, Change & Configuration Management,Environment support 等支持性工作。 2022-4-415RUP 的主要精神 項(xiàng)目進(jìn)行采用 Iterative 程序分階段漸進(jìn)地完成項(xiàng)目功能;廣泛使用 Visual Modeling 于商業(yè)需求分析、系統(tǒng)分析與系統(tǒng)設(shè)計(jì);強(qiáng)調(diào)架構(gòu)設(shè)計(jì);對(duì)每項(xiàng)工作所需要的技術(shù)、工具、做法、模板、檢查項(xiàng)目均有詳細(xì)
9、的定義,架構(gòu)完備且具有可調(diào)整的彈性。2022-4-4161. RUP2. XP3. Scrum2022-4-417XP - eXtreme Programmingn極限編程,最輕量級(jí)的開(kāi)發(fā)流程,其最主要的精神是在客戶有系統(tǒng)需求時(shí),給予及時(shí)滿意的可執(zhí)行程序,所以最適合需求快速變動(dòng)的項(xiàng)目 n強(qiáng)調(diào)客戶所要的是 workable 的執(zhí)行碼,所以把與撰寫(xiě)程序無(wú)關(guān)的工作降至最低,并要求客戶與開(kāi)發(fā)人員最好以 side-by-side 的方式一起工作 2022-4-418XP強(qiáng)調(diào)4個(gè)因素n交流(communication),XP要求程序員之間以及和用戶之間有大量而迅速的交流n簡(jiǎn)單(simplicity),XP
10、要求設(shè)計(jì)和實(shí)現(xiàn)簡(jiǎn)單和干凈n反饋(feedback)通過(guò)測(cè)試得到反饋,盡快提交軟件并根據(jù)反饋修改n勇氣(courage)。勇敢的面對(duì)需求和技術(shù)上的變化2022-4-419XP 開(kāi)發(fā)流程 n開(kāi)發(fā)人員隨時(shí)可以和客戶進(jìn)行有效溝通,撰寫(xiě) user stories 以確認(rèn)需求。n簡(jiǎn)易快速的系統(tǒng)設(shè)計(jì),撰寫(xiě)?yīng)毩⒌尿?yàn)證程序以解決特殊困難的問(wèn)題,找出算法即可丟棄驗(yàn)證程序。n規(guī)劃多次小型階段的項(xiàng)目計(jì)劃,以最快速度完成每一階段的程序交付客戶,客戶負(fù)責(zé) Acceptance tests;nCoding 前必須完成 Unit Test 與 Acceptance tests 程序,所有模塊整合前都須經(jīng)過(guò) Unit Test
11、s;n開(kāi)發(fā)人員必須快速響應(yīng) Bug 與需求變更;n要求二人一組使用一臺(tái)計(jì)算機(jī)設(shè)計(jì)程序,當(dāng)一人 coding 時(shí),另一人負(fù)責(zé)思考與設(shè)計(jì);n程序必須符合程序規(guī)范,并常做程序的重構(gòu) (Refactoring)。2022-4-420XP原則和實(shí)踐-Planning-user storiesnuser stories nUser stories類似use case, 描述用戶所見(jiàn)的系統(tǒng)功能,但避免使用大量的文檔,user stories由用戶編寫(xiě)(不僅限于描述用戶界面)。User stories使用用戶的語(yǔ)言編寫(xiě),不使用技術(shù)性的語(yǔ)言,每個(gè)user stories限于幾句話。User stories用于在
12、release plan會(huì)議上對(duì)開(kāi)發(fā)時(shí)間進(jìn)行評(píng)估,也用于產(chǎn)生驗(yàn)收測(cè)試(acceptance test),必須使用可以自動(dòng)進(jìn)行的驗(yàn)收測(cè)試保證軟件的正確性。User stories與傳統(tǒng)的用戶需求的區(qū)別在于詳細(xì)的程度,user stories并不會(huì)確定需求的每個(gè)細(xì)節(jié),它只是用來(lái)簡(jiǎn)單的描述系統(tǒng)功能,供開(kāi)發(fā)人員進(jìn)行估計(jì)開(kāi)發(fā)進(jìn)度,在開(kāi)發(fā)過(guò)程中開(kāi)發(fā)人員和用戶會(huì)不斷的交流以討論細(xì) 節(jié)問(wèn)題。User story應(yīng)該專注于功能,不應(yīng)該過(guò)分注重用戶界面等細(xì)節(jié)。一般一個(gè)user storiy在1-3周的時(shí)間完成,如果估計(jì)超過(guò)3周,說(shuō)明user story太大了,需要細(xì)分 .2022-4-421XP原則和實(shí)踐-Pla
13、nning-release plannrelease plan n召開(kāi)一個(gè) release plan會(huì)議,產(chǎn)生release plan。Release plan將用于指定每個(gè)iteration的計(jì)劃。開(kāi)發(fā)人員對(duì)每個(gè)user story估計(jì)開(kāi)發(fā)時(shí)間(在不被打斷,無(wú)其他工作情況下的開(kāi)發(fā)時(shí)間,包括測(cè)試),用戶對(duì)user stories給出優(yōu)先級(jí),release plan會(huì)議并不制訂每個(gè)iteration的計(jì)劃。Release plan要用戶,開(kāi)發(fā)人員和管理者都同意,在完成功能范圍(scope),使用資源(resource),時(shí)間(time)和質(zhì)量(quality)上達(dá) 成一致(一般質(zhì)量是不能改變的)
14、 2022-4-422XP原則和實(shí)踐-Planning-small releasensmall releasenoften and small release是XP的一個(gè)原則,每個(gè)release完成一些用戶有意義的功能集合,盡快的提交給用戶以獲得反饋,及時(shí)調(diào)整,提交的越晚,調(diào)整越困難。 2022-4-423XP原則和實(shí)踐-Planning-project velocitynproject velocity n團(tuán)隊(duì)在開(kāi)發(fā)過(guò)程中要收集數(shù)據(jù),以便于對(duì)自己的開(kāi)發(fā)速度進(jìn)行評(píng)估,用于以后的releazse plan2022-4-424XP原則和實(shí)踐-Planning-iterationniteration
15、 n每個(gè)small release的周期稱為iteration,每個(gè)iteration約為1-3周,在一個(gè)項(xiàng)目中保持每個(gè)iteration的時(shí)間相等,不要超前制定計(jì) 劃,每個(gè)iteration的計(jì)劃在iteration的開(kāi)始時(shí)制定。這樣能夠更靈活的應(yīng)付變化。不要急于完成本次iteration沒(méi)有包括的功能。要 注重每個(gè)iteration的時(shí)間限制,當(dāng)團(tuán)隊(duì)覺(jué)得不能按時(shí)完成iteration時(shí),召開(kāi)一次iteration plan會(huì)議,重新評(píng)估,減少一些user stories。2022-4-425XP原則和實(shí)踐-Planning-iteration planniteration plan n在每
16、個(gè) iteration開(kāi)始的時(shí)候召開(kāi)會(huì)議,從release plan中選擇還沒(méi)有實(shí)現(xiàn)的用戶最迫切需要的user stories。上一個(gè)iteration中沒(méi)有通過(guò)驗(yàn)收測(cè)試的功能也要在這個(gè)iteration中實(shí)現(xiàn)??梢愿鶕?jù)上一個(gè)iteration的實(shí)踐調(diào)整團(tuán) 隊(duì)速度。User stories和失敗的測(cè)試被分解成programming task,task使用技術(shù)語(yǔ)言編寫(xiě),作為iteration plan的詳細(xì)描述。程序員主動(dòng)領(lǐng)取task并估計(jì)完成時(shí)間,每個(gè)task應(yīng)該在1-3天內(nèi)完成,超過(guò)3天的task應(yīng)該被細(xì)分。如果整個(gè)團(tuán)隊(duì)需要的時(shí)間 多于或少于規(guī)定的iteration時(shí)間,調(diào)整user sto
17、ries。 2022-4-426XP原則和實(shí)踐-Planning-move people aroundnmove people around n不要使每個(gè)開(kāi)發(fā)人員局限于一項(xiàng)工作,不要使某項(xiàng)工作依賴于一個(gè)開(kāi)發(fā)人員,增加知識(shí)共享,減少信息孤島,多進(jìn)行交流和培訓(xùn)。當(dāng)項(xiàng)目中的所有人對(duì)所有模塊都了解并可以進(jìn)行開(kāi)發(fā)時(shí)是效率最高的,鼓勵(lì)開(kāi)發(fā)人員在不同iteration中開(kāi)發(fā)不同的模塊。 2022-4-427XP原則和實(shí)踐-Planning-stand-up meetingnstand-up meeting n每天工作 開(kāi)始之前,開(kāi)5-10分鐘的stand-up會(huì)議(站立會(huì)議),站立的目的是為了強(qiáng)迫節(jié)省時(shí)間,
18、會(huì)議的目的是交流,提出存在的問(wèn)題,但不要在會(huì)議上解決問(wèn) 題。開(kāi)一個(gè)所有人員參加的短會(huì)比多個(gè)個(gè)別人員參加的會(huì)議要高效。在會(huì)議上提出的問(wèn)題可以由少數(shù)人討論解決,這個(gè)少數(shù)人參加的會(huì)議如果涉及到代碼,可以在計(jì)算機(jī)前討論。 2022-4-428XP原則和實(shí)踐-Planning-fix XP when it breaksnfix XP when it breaks nXP并不是一成不變的,當(dāng)團(tuán)隊(duì)覺(jué)得需要修改的時(shí)候,可以根據(jù)自己的情況進(jìn)行修改,任何修改都要經(jīng)過(guò)整個(gè)團(tuán)隊(duì)的討論和達(dá)成一致 2022-4-429XP原則和實(shí)踐-Designing-1nSimplicity n保持簡(jiǎn)單的設(shè)計(jì),在完成同樣的功能的情況下
19、,選擇簡(jiǎn)單的設(shè)計(jì),不要急于設(shè)計(jì)沒(méi)有計(jì)劃的功能,應(yīng)該認(rèn)識(shí)到:keeping a design simple is hard work nSystem metaphor n使用統(tǒng)一的術(shù)語(yǔ)描述系統(tǒng),在用戶,管理者和開(kāi)發(fā)人員之間使用統(tǒng)一的術(shù)語(yǔ)。這將使交流清晰。 nCRC card n使用CRC(Class, Responsibilities, and Collaboration) card進(jìn)行系統(tǒng)設(shè)計(jì),鼓勵(lì)更多的人參加設(shè)計(jì)。每個(gè)CRC卡片表示系統(tǒng)中一個(gè)對(duì)象,寫(xiě)上對(duì)象的名字,責(zé)任和每個(gè)責(zé)任需要交互的其他對(duì)象??梢阅M對(duì)象之間 的交互。CRC卡片是易于理解的,但是是非正式的,如果需要正式的文檔,要將卡片轉(zhuǎn)
20、換為相應(yīng)的文檔。nspike solution nnever add function early nrefactoringwhenever and wherever 2022-4-430XP原則和實(shí)踐-Designing-2nspike solution n使用spike solution減低風(fēng)險(xiǎn),當(dāng)遇到技術(shù)難題或設(shè)計(jì)問(wèn)題時(shí),使用簡(jiǎn)單的程序進(jìn)行測(cè)試,找出問(wèn)題,在不同的解決方法之間進(jìn)行評(píng)估。在早期進(jìn)行實(shí)驗(yàn)可以有效的降低風(fēng)險(xiǎn)。 nnever add function early n不要過(guò)早的設(shè)計(jì)沒(méi)有計(jì)劃的功能,在一個(gè)需求經(jīng)常變化的環(huán)境中,過(guò)早的設(shè)計(jì)經(jīng)常是沒(méi)有用的。 nrefactoringwhe
21、never and wherever nXP鼓勵(lì)對(duì)設(shè)計(jì)和代碼經(jīng)常進(jìn)行重構(gòu)(Refactoring),目的是去除冗余,提高質(zhì)量,保持設(shè)計(jì)簡(jiǎn)單。重構(gòu)必須以完全測(cè)試為檢驗(yàn)條件2022-4-431XP原則和實(shí)踐-Coding-1ncustomer is alaways availablen用戶是項(xiàng)目組的成員之一,用戶的參加貫穿整個(gè)開(kāi)發(fā)過(guò)程,用戶與開(kāi)發(fā)人員之間的交流是重要的 ncoding standard n使用統(tǒng)一的編碼標(biāo)準(zhǔn),這是保持代碼整潔和共享代碼的基礎(chǔ) ncoding unit test first ntest first是XP的一個(gè)特點(diǎn),在編寫(xiě)代碼之前先編寫(xiě)單元測(cè)試代碼,單元測(cè)試代碼和代碼由
22、同一個(gè)程序員完成。先編寫(xiě)測(cè)試代碼可以使程序員更好的理解需求,避免直接編碼造成的理解偏差,對(duì)需求的不清晰,可以在編寫(xiě)測(cè)試代碼時(shí)就發(fā)現(xiàn)。測(cè)試代碼也是檢驗(yàn)程序是否完成的標(biāo)準(zhǔn)。編碼工作應(yīng)該是以下工作的循環(huán):1 編寫(xiě)測(cè)試代碼2 運(yùn)行測(cè)試程序,確認(rèn)失敗3 編寫(xiě)實(shí)現(xiàn)這個(gè)測(cè)試程序要求功能的代碼,不需要實(shí)現(xiàn)其他的功能,只需要實(shí)現(xiàn)剛剛滿足測(cè)試程序的功能4 運(yùn)行測(cè)試程序,確認(rèn)成功實(shí)踐證明,test first方式需要的編碼實(shí)踐少于先編碼,后寫(xiě)測(cè)試代碼2022-4-432XP原則和實(shí)踐-Coding-2nPair Programming nPair programming是XP的特色,它要求兩個(gè)程序員在一臺(tái)計(jì)算機(jī)上同
23、時(shí)進(jìn)行編程工作。共用鼠標(biāo)和鍵盤(pán),通常一個(gè)人進(jìn)行戰(zhàn)略上的思考,程序架構(gòu)和函數(shù), 類之間的關(guān)系,一個(gè)人進(jìn)行輸入和戰(zhàn)術(shù)上的思考,完成函數(shù)和類。兩個(gè)人可以經(jīng)常交換角色。 nsequential integration n要保證源代碼庫(kù)的狀態(tài)是可標(biāo)識(shí)的,同一時(shí)間,只允許一個(gè)pair的程序進(jìn)行整和和測(cè)試,這樣可以縮小問(wèn)題產(chǎn)生的范圍。不同的pair可以在自己的機(jī)器上隨時(shí)進(jìn)行整和和測(cè)試.nintegrate often n只要有可能 就進(jìn)行代碼整合,周期可以在幾個(gè)小時(shí),最好不要超過(guò)一天。 2022-4-433XP原則和實(shí)踐-Coding-3n共同擁有代碼 n鼓勵(lì)每個(gè)人對(duì)項(xiàng)目中的任何人提 出新的想法,任何開(kāi)發(fā)人
24、員對(duì)項(xiàng)目中的任何代碼都可以進(jìn)行增加功能,改正錯(cuò)誤和重構(gòu)。 n優(yōu)化工作放在最后 n先使系統(tǒng)能夠正常工作,不要猜測(cè)系統(tǒng)的瓶頸,要實(shí)際測(cè)量 nNO overtime n不要長(zhǎng)時(shí)間的加班,大多數(shù)加班并不能挽回已有的延遲,連續(xù)超過(guò)兩個(gè)星期的加班說(shuō)明有問(wèn)題存在。向一個(gè)已經(jīng)延遲的項(xiàng)目填加人員也不是一個(gè)好的選擇。 2022-4-434XP原則和實(shí)踐-Testing-1n所有的代碼都有單元測(cè)試 n單元測(cè)試是XP的基 石,XP中的單元測(cè)試應(yīng)該是可以自動(dòng)進(jìn)行的,所以可以很快的進(jìn)行所有的單元測(cè)試,單元測(cè)試應(yīng)該在編碼之前創(chuàng)建。單元測(cè)試的代碼和代碼一起release, 沒(méi)有單元測(cè)試的代碼不能夠release。使用自動(dòng)單元
25、測(cè)試可以系統(tǒng)整合時(shí)節(jié)省大量的發(fā)現(xiàn)錯(cuò)誤和改正的時(shí)間。單元測(cè)試越完善,節(jié)省的時(shí)間越多。 n代碼在release前必須通過(guò)所有的單元測(cè)試 n發(fā)現(xiàn)bug后,首先增加測(cè)試 n在實(shí)際運(yùn)行中發(fā)現(xiàn)bug,首先增加acceptance test,然后增加unit test,在增加完測(cè)試后在查找和修改代碼,增加的測(cè)試保證同樣的錯(cuò)誤不會(huì)再出現(xiàn) nacceptance test nacceptance test根據(jù)user stories在iteration plan會(huì)議上創(chuàng)建,它也應(yīng)該可以自動(dòng)運(yùn)行以便可以經(jīng)常運(yùn)行。 2022-4-4351. RUP2. XP3. Scrum2022-4-436ScrumScrum
26、2022-4-437Scrum特點(diǎn)n自我管理的團(tuán)隊(duì)n以“sprint”為周期迭代的產(chǎn)品開(kāi)發(fā)n以一系列“產(chǎn)品 Backlog”記錄了產(chǎn)品需求n沒(méi)有特定的工程實(shí)踐慣例n在以生成規(guī)則創(chuàng)造的敏捷開(kāi)發(fā)環(huán)境交付產(chǎn)品n是其中一種“敏捷方法”2022-4-438SCRUM 開(kāi)發(fā)流程開(kāi)發(fā)流程 nSCRUM 開(kāi)發(fā)流程是 Agile Process 的一種,以英式橄欖球爭(zhēng)球隊(duì)形 (Scrum) 為名,基本假設(shè)是開(kāi)發(fā)軟件就像開(kāi)發(fā)新產(chǎn)品,無(wú)法一開(kāi)始就能定義 Final Product 的規(guī)程,過(guò)程中需要研發(fā)、創(chuàng)意、嘗試錯(cuò)誤,所以沒(méi)有一種固定的流程可以保證項(xiàng)目成功。 nScrum 將軟件開(kāi)發(fā)團(tuán)隊(duì)比擬成橄欖球隊(duì),有明確的最
27、高目標(biāo),熟悉開(kāi)發(fā)流程中所需具備的最佳典范與技術(shù),具有高度自主權(quán),緊密地溝通合作,以高度彈性解決各種挑戰(zhàn),碓保每天、每個(gè)階段都朝向目標(biāo)有明確的推進(jìn),因此 SCRUM 非常適用于產(chǎn)品開(kāi)發(fā)項(xiàng)目。 2022-4-439SCRUM 開(kāi)發(fā)流程開(kāi)發(fā)流程(cont.)nSCRUM 開(kāi)發(fā)流程通常以 30 天為一個(gè)迭代周期,每個(gè)迭代周期叫做一個(gè)Sprint,由客戶提供新產(chǎn)品的需求規(guī)格開(kāi)始,開(kāi)發(fā)團(tuán)隊(duì)與客戶于每一個(gè)階段開(kāi)始時(shí)挑選該完成的規(guī)格部份,開(kāi)發(fā)團(tuán)隊(duì)必須盡力于 30 天后交付成果,團(tuán)隊(duì)每天用 15 分鐘開(kāi)會(huì)檢視每個(gè)成員的進(jìn)度與計(jì)劃,了解所遭遇的困難并設(shè)法排除,決定第二天的任務(wù)安排 .nSCRUM較為有特色的,是它
28、特別強(qiáng)調(diào)開(kāi)發(fā)隊(duì)伍和管理層的交流協(xié)作。每天,開(kāi)發(fā)隊(duì)伍都會(huì)向管理層匯報(bào)進(jìn)度,如果有問(wèn)題,也會(huì)向管理層要求幫助解決。 2022-4-440Scrum總體骨架總體骨架迭代迭代每30天Daily SCRUM每24小時(shí)高優(yōu)先級(jí)可運(yùn)行的軟件可運(yùn)行的軟件工作項(xiàng)分解產(chǎn)品訂單產(chǎn)品訂單Product Backlog迭代訂單迭代訂單Sprint Backlog新的功能新的功能增量增量迭代規(guī)劃會(huì)議迭代規(guī)劃會(huì)議Sprint Plan一般不超過(guò)8小時(shí)。前4個(gè)小時(shí):產(chǎn)品負(fù)責(zé)人向團(tuán)隊(duì)展示最高優(yōu)先級(jí)的產(chǎn)品,團(tuán)隊(duì)則向他詢問(wèn)產(chǎn)品Backlog的內(nèi)容、目的、含義及意圖。后4小時(shí):團(tuán)隊(duì)計(jì)劃本Sprint的安排迭代復(fù)審會(huì)議迭代復(fù)審會(huì)議Sp
29、rint Review 一般4個(gè)小時(shí),由團(tuán)隊(duì)成員向產(chǎn)品負(fù)責(zé)人額其他利益相關(guān)人展示Sprint周期內(nèi)的產(chǎn)品開(kāi)發(fā)情況迭代回顧會(huì)議迭代回顧會(huì)議Sprint Retrospective一般3個(gè)小時(shí), ScrumMaster將鼓勵(lì)團(tuán)隊(duì)在SCRUM過(guò)程框架和實(shí)踐范圍內(nèi),對(duì)開(kāi)發(fā)過(guò)程做出修改,使它在下一個(gè)Sprint周期中更加有效和令人愉快每日站立會(huì)議每日站立會(huì)議Daily Scrum Meeting在簡(jiǎn)會(huì)上,每個(gè)成員主要回答三個(gè)問(wèn)題;自上次SCRUM簡(jiǎn)會(huì)后的一天了(昨天),你做了什么?從現(xiàn)在到下次SCRUM簡(jiǎn)會(huì)的一天里(今天),你要做什么?在實(shí)現(xiàn)SCRUM及項(xiàng)目目標(biāo)的工作中,你遇到哪些困難嗎? 產(chǎn)品負(fù)責(zé)人產(chǎn)
30、品負(fù)責(zé)人Scrum主管主管開(kāi)發(fā)團(tuán)隊(duì)開(kāi)發(fā)團(tuán)隊(duì)2022-4-441順序 vs. 重疊開(kāi)發(fā)過(guò)程Scrum并非以一段時(shí)間集中完成一個(gè)過(guò)程.而是將所有過(guò)程中必須的每一部分集中在這段時(shí)間內(nèi)完成需求設(shè)計(jì)代碼測(cè)試2022-4-442Scrum 結(jié)構(gòu)框架產(chǎn)品所有者ScrumMaster團(tuán)隊(duì)職能迭代計(jì)劃迭代驗(yàn)收迭代回顧每天召開(kāi)的 scrum 會(huì)議儀式產(chǎn)品backlog迭代 backlog進(jìn)度曲線圖產(chǎn)出2022-4-443Scrum Teamn自組織的團(tuán)隊(duì)n 跨功能團(tuán)隊(duì)沒(méi)有角色區(qū)分n 最少2個(gè),最多7個(gè)n 對(duì)工作交付負(fù)責(zé)n只要交付工作需求,授權(quán)做任何事情.2022-4-444Scrum角色及職責(zé)角色及職責(zé)火腿雞蛋!
31、三思過(guò)后我決定不和你開(kāi)餐館了。因?yàn)槲胰硇耐度?,而你只牽涉入?nèi)!2022-4-445Chickens & PigsnPigs: Scrum Team 成員: 他們承諾對(duì)迭代目標(biāo)交付負(fù)責(zé)nChickens : 項(xiàng)目組有關(guān)的成員,但并不專注于項(xiàng)目n以觀察者的形式參加Scrum meeting2022-4-446Product OwnernBacklog優(yōu)先級(jí)制定開(kāi)發(fā)的版本規(guī)劃n必須確保驅(qū)動(dòng)開(kāi)發(fā)的需求只有一份n受管理層,客戶等影響但僅PO有權(quán)調(diào)整Backlogn與相關(guān)成員協(xié)同工作來(lái)確定Product Backlog的itemsn消除關(guān)于Backlog的疑惑,確保理解一致,消除干擾2022-4-447
32、Scrum MasternScrum Master 職責(zé)n確保SCRUM的成功n 實(shí)施 SCRUM 實(shí)踐和規(guī)定, 保護(hù)團(tuán)隊(duì)以免受干擾n 項(xiàng)目管理的代表2022-4-448Sprintn交付產(chǎn)品的固定的時(shí)間箱.建議2-3周n迭代包括design, coding, testing, and documentationn一旦迭代開(kāi)始,僅 Scrum Team 能增加或者刪除Sprint backlog中的itemsn當(dāng)?shù)哪繕?biāo)變的沒(méi)有意義的時(shí)候,才能終止迭代開(kāi)發(fā)n對(duì)于Product Backlog,不允許迭代內(nèi)的需求變更:需求優(yōu)先級(jí)調(diào)整僅存在于迭代之間2022-4-449如何定義Sprintn團(tuán)隊(duì)自己從產(chǎn)品的backlog中選擇一些他們能夠完成的任務(wù)作為迭代的backlogn迭代backlog被創(chuàng)建n任務(wù)被確認(rèn)并且每一任務(wù)估計(jì)工作量應(yīng)該在1-16小時(shí)左右n迭代的b
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 車(chē)輛防凍液的選擇與使用
- 2025年度果園承包與農(nóng)產(chǎn)品出口合作服務(wù)協(xié)議范本4篇
- 掘進(jìn)區(qū)加長(zhǎng)卸載臂五小創(chuàng)新
- 2025年度保理合同-利率計(jì)算與利息收益分配規(guī)則4篇
- 2025年度碼頭貨物短途運(yùn)輸與車(chē)輛租賃綜合合同4篇
- 業(yè)主房屋裝修與物業(yè)管理協(xié)議范本(2024)一
- 二零二五年度存量房屋買(mǎi)賣(mài)合同(智能化升級(jí)版)4篇
- 2025年退場(chǎng)結(jié)算協(xié)議書(shū)范本:XX行業(yè)標(biāo)準(zhǔn)化3篇
- 2025年度科研實(shí)驗(yàn)場(chǎng)地使用權(quán)出讓合同3篇
- 二零二五年度港口碼頭租賃及港口配套設(shè)施租賃及維修服務(wù)合同4篇
- 2024版智慧電力解決方案(智能電網(wǎng)解決方案)
- 公司SWOT分析表模板
- 小學(xué)預(yù)防流行性感冒應(yīng)急預(yù)案
- 肺癌術(shù)后出血的觀察及護(hù)理
- 聲紋識(shí)別簡(jiǎn)介
- 生物醫(yī)藥大數(shù)據(jù)分析平臺(tái)建設(shè)-第1篇
- 基于Android的天氣預(yù)報(bào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 沖鋒舟駕駛培訓(xùn)課件
- 美術(shù)家協(xié)會(huì)會(huì)員申請(qǐng)表
- 聚合收款服務(wù)流程
- 中石化浙江石油分公司中石化溫州靈昆油庫(kù)及配套工程項(xiàng)目環(huán)境影響報(bào)告書(shū)
評(píng)論
0/150
提交評(píng)論