• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            牽著老婆滿街逛

            嚴(yán)以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            [轉(zhuǎn)載]SCRUM軟件開發(fā)過(guò)程

            這些天看到一本書《Agile Project Management with Scrum》,感覺(jué)很不錯(cuò),于是在網(wǎng)上找了些相關(guān)的資料。

            SCRUM方法如下:

            由Ken Schwaber和 Jeff Sutherland 提出,旨在尋求充分發(fā)揮面向?qū)ο蠛蜆?gòu)件技術(shù)的開發(fā)方法,是對(duì)迭代式面向?qū)ο蠓椒ǖ母倪M(jìn),名稱來(lái)自英式橄欖球(在比賽中每個(gè)隊(duì)員都應(yīng)時(shí)刻保持對(duì)場(chǎng)上全局的判斷,然后通過(guò)集體行動(dòng),奮力實(shí)現(xiàn)同一目標(biāo)──勝利)。SCRUM方法最初實(shí)踐于Easel公司(1993年),現(xiàn)已被數(shù)十家公司數(shù)百個(gè)項(xiàng)目開發(fā)中應(yīng)用,適用于需求難以預(yù)測(cè)的復(fù)雜商務(wù)應(yīng)用產(chǎn)品的開發(fā)[11]。SCRUM提出的SCRUM Meeting、Sprint、Backlog、SCRUM Master、SCRUM Team、Demo等模式已被PLOP作為組織和過(guò)程模式(Organizational and Process Pattern)的標(biāo)準(zhǔn)[12]。
            SCRUM將工業(yè)過(guò)程控制中的概念應(yīng)用到軟件開發(fā)中來(lái),認(rèn)為軟件開發(fā)過(guò)程更多是經(jīng)驗(yàn)性過(guò)程(Empirical Process),而不是確定性過(guò)程(Defined Process)。確定性過(guò)程是可明確描述的、可預(yù)測(cè)的過(guò)程,因而可重復(fù)(Repeatable)執(zhí)行并能產(chǎn)生預(yù)期的結(jié)果,并能通過(guò)科學(xué)理論對(duì)其最優(yōu)化。經(jīng)驗(yàn)性過(guò)程與之相反,應(yīng)作為一個(gè)黑箱(Black box)來(lái)處理,通過(guò)對(duì)黑箱的輸入輸出不斷進(jìn)行度量,在此基礎(chǔ)上,結(jié)合經(jīng)驗(yàn)判斷對(duì)黑箱進(jìn)行調(diào)控,使其不越出設(shè)定的邊界,從而產(chǎn)生滿意的輸出。SCRUM方法將傳統(tǒng)開發(fā)中的分析、設(shè)計(jì)、實(shí)施視為一個(gè)黑箱,認(rèn)為應(yīng)加強(qiáng)黑箱內(nèi)部的混沌性,使項(xiàng)目組工作在混沌的邊沿,充分發(fā)揮人的創(chuàng)造力。如將經(jīng)驗(yàn)性過(guò)程按確定性過(guò)程來(lái)處理(如瀑布模型),必將使過(guò)程缺乏適應(yīng)力。
            3.2.1 SCRUM方法的開發(fā)過(guò)程
            包括三個(gè)過(guò)程:
            (1) 計(jì)劃和體系結(jié)構(gòu)設(shè)計(jì)(確定性過(guò)程)
            將Backlog(急待完成的一系列任務(wù),包括:未細(xì)化的產(chǎn)品功能要求、Bugs、缺陷、用戶提出的改進(jìn)、具競(jìng)爭(zhēng)力的功能及技術(shù)升級(jí)等)按優(yōu)先級(jí)排序形成Backlog 列表,根據(jù)該表和風(fēng)險(xiǎn)評(píng)估制訂產(chǎn)品交付基線。
            建立系統(tǒng)體系結(jié)構(gòu)(如為已有系統(tǒng)改進(jìn),則只作有限分析、調(diào)整),將Backlog項(xiàng)按高內(nèi)聚低耦合的原則分解為一系列問(wèn)題包(Packets,每個(gè)Packet是一組對(duì)象或構(gòu)件的集合) ,依據(jù)同樣原則相應(yīng)劃分若干個(gè)開發(fā)小組(SCRUM 小組),分配各小組合適的Backlog項(xiàng)或問(wèn)題包。建立開發(fā)運(yùn)行環(huán)境。
            (2) Sprint(經(jīng)驗(yàn)性過(guò)程)
            該過(guò)程由若干個(gè)迭代的沖刺(Sprint) 活動(dòng)組成,直至風(fēng)險(xiǎn)評(píng)估認(rèn)為產(chǎn)品可交付為止。一個(gè)Sprint是在限定時(shí)間段內(nèi)(Sprint周期,通常為1~6周,可在前一個(gè)Sprint結(jié)束時(shí)調(diào)整)的一系列開發(fā)活動(dòng)(包括分析、設(shè)計(jì)、編碼、測(cè)試等),每個(gè)SCRUM小組并行開發(fā)且必須步調(diào)一致(在一個(gè)Sprint結(jié)束后,均須完成所分配的Backlog項(xiàng)并有可執(zhí)行的產(chǎn)出)。
            每個(gè)Sprint包含以下活動(dòng):
            l 開發(fā)。對(duì)分配的Backlog工作進(jìn)行分析,將所需改動(dòng)(changes)映射到各packets,打開packets,進(jìn)行領(lǐng)域分析,然后設(shè)計(jì)、開發(fā)、實(shí)施、測(cè)試、文檔化這些改動(dòng)。
            l 打包(Wrap)。封裝packets,產(chǎn)生一個(gè)滿足Backlog需求的可執(zhí)行版本。
            l 評(píng)審(Review)。所有的SCRUM小組一起開會(huì),提交各自的工作并演示(Demo),然后提出和解決問(wèn)題(Issue)及難點(diǎn)(problem),增加新的Backlog項(xiàng);發(fā)布、審查或調(diào)整產(chǎn)品的標(biāo)準(zhǔn)規(guī)范;進(jìn)行風(fēng)險(xiǎn)評(píng)估并提出合適的對(duì)策;確定下一個(gè)Sprint的工作內(nèi)容和結(jié)束時(shí)間。
            l 調(diào)整(Adjust)。根據(jù)評(píng)審會(huì)匯集的信息,對(duì)受影響的Packets進(jìn)行適當(dāng)調(diào)整和鞏固。
            (3) 交付和鞏固(確定性過(guò)程)
            一旦根據(jù)風(fēng)險(xiǎn)評(píng)估結(jié)果認(rèn)為可交付產(chǎn)品時(shí),即進(jìn)入該階段。該階段的活動(dòng)包括:組裝,系統(tǒng)測(cè)試和回歸測(cè)試(Regression),準(zhǔn)備培訓(xùn)材料,完成最終文檔。
            SCRUM過(guò)程認(rèn)為一個(gè)產(chǎn)品的開發(fā)將一直持續(xù)下去,除非經(jīng)風(fēng)險(xiǎn)評(píng)估后認(rèn)為應(yīng)停止。產(chǎn)品交付后的鞏固活動(dòng)類似于傳統(tǒng)方法中的維護(hù)和改善,目的在于整理Sprint期壓力下忽略的工作,為下一階段的開發(fā)做準(zhǔn)備,以便輕裝上陣。
            3.2.2 SCRUM對(duì)過(guò)程的管理:
            (1) SCRUM的控制手段。
            SCRUM提出了八個(gè)控制項(xiàng)(Controls)用于開發(fā)過(guò)程的調(diào)控,其中風(fēng)險(xiǎn)控制是首要的手段。
            l Backlog。
            l 對(duì)象/構(gòu)件。
            l Packets。
            l 變動(dòng)(Changes)。實(shí)施一個(gè)Backlog項(xiàng)時(shí),對(duì)相應(yīng)Packet的改動(dòng)。
            l 難點(diǎn)(Problems)。實(shí)施一個(gè)變動(dòng)時(shí)所必須解決的技術(shù)難點(diǎn)。
            l 問(wèn)題(Issues)。涉及到整個(gè)項(xiàng)目或在Backlog項(xiàng)分解到Packet之前須解決的問(wèn)題。
            l 措施(Solutions)。對(duì)問(wèn)題或難點(diǎn)的解決,通常會(huì)導(dǎo)致變動(dòng)。
            l 風(fēng)險(xiǎn)(Risks)。影響項(xiàng)目成功的風(fēng)險(xiǎn),應(yīng)持續(xù)跟蹤評(píng)估并相應(yīng)做出調(diào)整。風(fēng)險(xiǎn)評(píng)估的結(jié)果將影響其他所有控制項(xiàng)。SCRUM定義了六個(gè)概念性變量來(lái)用于風(fēng)險(xiǎn)評(píng)估:用戶需求,時(shí)間壓力,競(jìng)爭(zhēng),質(zhì)量,遠(yuǎn)見(vision)和可用資源。
            在SCRUM的各個(gè)階段都使用這些控制項(xiàng)來(lái)評(píng)估和權(quán)衡,管理人員側(cè)重于以此管理Backlog,開發(fā)組用以處理變動(dòng)和難點(diǎn)。所有人員一起來(lái)管理問(wèn)題、風(fēng)險(xiǎn)和措施。
            根據(jù)對(duì)控制項(xiàng)特別是風(fēng)險(xiǎn)的不斷度量評(píng)估和權(quán)衡,一方面,計(jì)劃和進(jìn)度(在每個(gè)Sprint結(jié)束時(shí))不斷相應(yīng)調(diào)整,保證實(shí)現(xiàn)產(chǎn)品的商務(wù)目標(biāo);另一方面,對(duì)開發(fā)中的工作任務(wù)Backlog動(dòng)態(tài)地進(jìn)行優(yōu)先級(jí)排序,開發(fā)組總是先開發(fā)優(yōu)先級(jí)最高的Backlog項(xiàng),這樣就保證了資源的最合理使用。另外,SCRUM強(qiáng)調(diào)度量(采用標(biāo)準(zhǔn)功能點(diǎn)度量方法)的重要性,通過(guò)對(duì)每個(gè)Sprint中生產(chǎn)率等的度量,計(jì)劃和進(jìn)度將越來(lái)越趨于準(zhǔn)確。
            (2) 項(xiàng)目組織。
            項(xiàng)目組由全職開發(fā)人員及與該交付產(chǎn)品有關(guān)的市場(chǎng)人員、銷售人員、用戶等組成。設(shè)以下小組:
            l 項(xiàng)目管理組。由產(chǎn)品經(jīng)理領(lǐng)銜,包括總設(shè)計(jì)師,各SCRUM小組組長(zhǎng),市場(chǎng)、銷售的高級(jí)職員及典型用戶等。
            l 若干個(gè)SCRUM小組。各小組由組長(zhǎng)(SCRUM Master)領(lǐng)銜。每個(gè)小組都是跨專業(yè)的(通常包括開發(fā)人員,文檔人員,質(zhì)量控制人員或用戶代表等),通常為3~7人,以使小組內(nèi)有充分的交流。小組的劃分最好是功能導(dǎo)向的(按所分配的問(wèn)題包或Backlog),也可是系統(tǒng)層次導(dǎo)向(按體系結(jié)構(gòu)中的分層)。.
            在項(xiàng)目組人數(shù)增大時(shí),可在管理組之上再設(shè)管理組(SCRUM of SCRUM),從而使SCRUM方法的應(yīng)用到大項(xiàng)目中。
            (3) Sprint期間的調(diào)控。
            在Sprint期間,應(yīng)使各SCRUM小組盡量避免外界的干擾(不可將新的Backlog任務(wù)加進(jìn)來(lái),組內(nèi)產(chǎn)生的Backlog可放到整個(gè)項(xiàng)目的Backlog列表中,也可在本次Sprint中解決),使小組成員專心于目前的工作,使他們工作在混沌的邊沿。
            為避免項(xiàng)目組在Sprint期間不陷入混亂,SCRUM采取兩個(gè)措施:
            l SCRUM會(huì)議(SCRUM Meeting)。對(duì)小組行為進(jìn)行監(jiān)控和刺激。會(huì)議在Sprint期間每天在同一地點(diǎn)舉行,由SCRUM Master主持。會(huì)議上,SCRUM Master對(duì)每個(gè)小組成員提三個(gè)問(wèn)題:
            1) 昨天的工作進(jìn)展如何。
            2) 有否遇到困難和障礙。
            3) 今天的工作打算。
            會(huì)后SCRUM Master集中精力排除障礙,小組成員則進(jìn)行當(dāng)天的開發(fā)。
            l Sprint評(píng)審會(huì)議。評(píng)審后根據(jù)對(duì)每人的工作成績(jī),進(jìn)行相應(yīng)的激勵(lì)。
            3.2.3 SCRUM方法的實(shí)踐效果和發(fā)展方向:
            SCRUM在實(shí)踐中大大提高了生產(chǎn)率(據(jù)軟件生產(chǎn)率組織的Capers Jones稱可提高6倍),在實(shí)施中有一個(gè)"間斷平衡"(Punctuated equilibrium)現(xiàn)象(類似于自然界中物種的進(jìn)化,在經(jīng)過(guò)一段相對(duì)平衡的各自獨(dú)立、并行的發(fā)展期后,在交匯處發(fā)生變異),即在經(jīng)過(guò)緊張、并行的Sprint開發(fā)后,在Sprint評(píng)審時(shí),軟件產(chǎn)品產(chǎn)生較劇烈的變化。SCRUM方法的最近動(dòng)向是設(shè)法借鑒XP方法。

            posted on 2007-05-25 21:00 楊粼波 閱讀(216) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            久久电影网一区| 欧美成a人片免费看久久| 人妻丰满?V无码久久不卡| 欧美一级久久久久久久大片| 久久久久国产精品熟女影院| 久久精品国产99国产精品澳门| 亚洲精品高清国产一线久久| 香蕉久久夜色精品升级完成| 久久久久久久久66精品片| 国产色综合久久无码有码| 久久人爽人人爽人人片AV| 成人精品一区二区久久| 亚洲国产精品一区二区三区久久 | 久久夜色精品国产| 久久精品国产99久久久香蕉| 囯产极品美女高潮无套久久久| 亚洲午夜无码AV毛片久久| 亚洲国产成人精品女人久久久| 久久精品国产一区二区三区 | 久久久久国产亚洲AV麻豆| 久久一本综合| 欧美黑人激情性久久| 久久精品国产亚洲麻豆| 久久亚洲国产精品一区二区| 久久中文字幕人妻丝袜| 囯产极品美女高潮无套久久久| 久久精品亚洲精品国产色婷| 久久天堂电影网| 亚洲国产成人精品久久久国产成人一区二区三区综 | 国产精品久久久久久久久久免费| 久久国产精品久久久| 狠狠人妻久久久久久综合蜜桃| 久久人人爽人人爽人人片AV不| 免费观看久久精彩视频| 久久成人18免费网站| 丁香色欲久久久久久综合网| 久久精品毛片免费观看| 国产成人综合久久久久久| 99久久香蕉国产线看观香| 久久综合亚洲欧美成人| 久久久久亚洲AV无码专区桃色|