• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      敏捷在項(xiàng)目實(shí)例開(kāi)發(fā)課程中的運(yùn)用

      2018-06-13 09:55:56劉靜靜
      東方教育 2018年12期
      關(guān)鍵詞:項(xiàng)目開(kāi)發(fā)課程

      劉靜靜

      摘要:隨著對(duì)需求響應(yīng)的速度越來(lái)越快,瀑布模式已經(jīng)跟不上現(xiàn)在需求的快速變化,越來(lái)越多的企業(yè)都開(kāi)始往敏捷開(kāi)發(fā)的方向轉(zhuǎn)型。敏捷可以更快的適應(yīng)市場(chǎng)的需求,大大縮短了從客戶提出需求到客戶可以使用新功能的時(shí)間,有很多企業(yè)甚至可以做到對(duì)部分功能的當(dāng)日提出當(dāng)日上線。所以,項(xiàng)目實(shí)例開(kāi)發(fā)課程,也使用敏捷開(kāi)發(fā)的方式來(lái)進(jìn)行,使學(xué)生在通過(guò)實(shí)例開(kāi)發(fā)鍛煉項(xiàng)目開(kāi)發(fā)的同時(shí),也學(xué)習(xí)目前企業(yè)最流行的軟件開(kāi)發(fā)方式,學(xué)生畢業(yè)后可以更快的融入公司的開(kāi)發(fā)團(tuán)隊(duì)之中。

      關(guān)鍵詞:敏捷;課程;項(xiàng)目開(kāi)發(fā)

      1 引言

      在IT領(lǐng)域,需求變得越來(lái)越復(fù)雜和多樣化,項(xiàng)目開(kāi)發(fā)的失敗率越來(lái)越高,于是幾個(gè)軟件開(kāi)發(fā)領(lǐng)域的專家聚在一起,討論如何來(lái)應(yīng)對(duì)這一難題,在各種分析和討論之后,他們提出了一種新的開(kāi)發(fā)思想,并命名為敏捷。同時(shí)提出了敏捷開(kāi)發(fā)的四個(gè)價(jià)值觀和十二條原則[1]。

      敏捷軟件開(kāi)發(fā)最常用的目前是Scrum,其軟件開(kāi)發(fā)方式如下[2]。

      Scrum 規(guī)定了5個(gè)正式事件,用于檢視與調(diào)整:需求梳理會(huì)議、Sprint計(jì)劃會(huì)議、每日 Scrum 站會(huì)、Sprint評(píng)審會(huì)議、Sprint回顧會(huì)議。

      Scrum 團(tuán)隊(duì)定義了三種角色:產(chǎn)品負(fù)責(zé)人、開(kāi)發(fā)團(tuán)隊(duì)和Scrum Master。

      Sprint是Scrum的核心,其長(zhǎng)度(持續(xù)時(shí)間)為一個(gè)月或更短時(shí)間的限時(shí),在這段時(shí)間內(nèi) 構(gòu)建一個(gè)“完成的”、可用的和潛在可發(fā)布的產(chǎn)品增量。

      Scrum 工件包括:產(chǎn)品待辦列表、Sprint 待辦列表、增量。

      2 敏捷在項(xiàng)目實(shí)例開(kāi)發(fā)中的運(yùn)用

      首先,我們會(huì)把學(xué)生進(jìn)行分組,每個(gè)小組包含8個(gè)人左右,每個(gè)小組為一個(gè)Scrum團(tuán)隊(duì)。每個(gè)Scrum團(tuán)隊(duì)的任務(wù)都是去完成冬夏令營(yíng)系統(tǒng),為方便描述,下面我們以夏令營(yíng)系統(tǒng)為例。

      每個(gè)Scrum會(huì)首先從需求入手,使用用戶故事形式來(lái)寫(xiě)需求,并使用用戶故事地圖的方式來(lái)組織需求。然后按照Sprint的方式來(lái)把一個(gè)項(xiàng)目分為幾個(gè)迭代,讓學(xué)生練習(xí)Scrum里面的5個(gè)實(shí)踐。

      每個(gè)Scrum團(tuán)隊(duì)為夏令營(yíng)系統(tǒng)創(chuàng)建用戶故事,然后使用用戶故事地圖[3]來(lái)組織史詩(shī)故事和用戶故事。見(jiàn)圖1.

      每個(gè)團(tuán)隊(duì)會(huì)持續(xù)更新上面的用戶故事地圖,每一行代表一個(gè)版本。每個(gè)Scrum團(tuán)隊(duì)會(huì)使用三個(gè)迭代來(lái)完成這個(gè)系統(tǒng),每個(gè)迭代兩周。

      團(tuán)隊(duì)先開(kāi)始計(jì)劃會(huì)議,來(lái)計(jì)劃第一個(gè)迭代要做的用戶故事,以及創(chuàng)建任務(wù)并進(jìn)行分工。然后迭代里的每一天,大家會(huì)開(kāi)站會(huì),每次15分鐘。團(tuán)隊(duì)在當(dāng)前迭代還會(huì)開(kāi)展產(chǎn)品梳理會(huì)議,我們這個(gè)會(huì)議設(shè)置在迭代的第六天。在迭代的最后一天,大家會(huì)進(jìn)行評(píng)審會(huì)議,一起來(lái)演示當(dāng)前迭代完成的功能。最后一天還會(huì)進(jìn)行回顧會(huì)議,團(tuán)隊(duì)一起來(lái)總結(jié)當(dāng)前迭代做得不錯(cuò)的地方以及需要調(diào)整的地方,并制定出相應(yīng)的行動(dòng)事項(xiàng)。

      如此往復(fù),一直到系統(tǒng)完成。我們會(huì)選定一些會(huì)議讓大家在課堂上來(lái)開(kāi),比如評(píng)審會(huì)議,團(tuán)隊(duì)會(huì)演示當(dāng)前完成的系統(tǒng)給課程老師,老師會(huì)給出一定的反饋和評(píng)價(jià)。課程上還會(huì)進(jìn)行回顧會(huì)議,課程老師也會(huì)對(duì)學(xué)生們的合作以及代碼給出反饋,讓團(tuán)隊(duì)下個(gè)迭代可以做的更好。課堂上盡量安排讓每次會(huì)議都進(jìn)行幾次,來(lái)提高學(xué)生對(duì)Scrum的運(yùn)用水平。除了課堂上進(jìn)行的部分,剩下的都有學(xué)生在課下自己完成。

      除了Scrum本身,我們還讓學(xué)生練習(xí)了敏捷的工程實(shí)踐。第一個(gè)是整潔代碼規(guī)范,讓大家寫(xiě)出更易讀,更易維護(hù)的代碼。

      第二個(gè)是單元測(cè)試,本系統(tǒng)使用Junit[4]。同時(shí),使用Jacoco[5]來(lái)為單元測(cè)試生成代碼覆蓋率。

      第三個(gè)工程實(shí)踐是重構(gòu),讓學(xué)生們使用重構(gòu)來(lái)不斷地提高代碼的質(zhì)量。

      第四個(gè)工程實(shí)踐是自動(dòng)化測(cè)試,如果每次都把已經(jīng)完成的功能重新測(cè)試一次,每個(gè)迭代開(kāi)發(fā)的時(shí)間就會(huì)越來(lái)越短,如圖2所示。

      所以在Scrum的模式下,自動(dòng)化測(cè)試是非常關(guān)鍵的工程實(shí)踐,我們選取Cucumber[6]和Selenium 來(lái)實(shí)現(xiàn)系統(tǒng)的自動(dòng)化測(cè)試。

      為了體現(xiàn)團(tuán)隊(duì)合作等方面的一些信息,我們使用了一些圖表來(lái)反映團(tuán)隊(duì)的情況。圖3是迭代的燃盡圖,圖4是累積流圖,圖5是周期時(shí)間分布圖,圖6是缺陷控制圖。

      3 應(yīng)用結(jié)果分析

      通過(guò)使用Scrum的方式來(lái)完成項(xiàng)目實(shí)例開(kāi)發(fā)這么課程,比起原來(lái)只是簡(jiǎn)單的讓大家完成一個(gè)系統(tǒng)的開(kāi)發(fā),能夠同時(shí)讓學(xué)生可以學(xué)習(xí)到目前最為流行的軟件開(kāi)發(fā)方法,并實(shí)際參與到一個(gè)敏捷開(kāi)發(fā)項(xiàng)目之中,體驗(yàn)每一個(gè)環(huán)節(jié)。除了方法本身的學(xué)習(xí)之外,也鍛煉了目前最為流行的幾項(xiàng)工程實(shí)踐。第三,學(xué)生還對(duì)數(shù)據(jù)分析和度量有了深入的了解和認(rèn)識(shí),為以后在工作中不斷取得進(jìn)步打下了良好的基礎(chǔ)。使用這樣的方式完成項(xiàng)目實(shí)例開(kāi)發(fā)這么課程后,可以讓學(xué)生在畢業(yè)以后可以快速的融入公司使用的開(kāi)發(fā)方法之中,甚至還能為其過(guò)程和方法做出應(yīng)有的貢獻(xiàn)。

      參考文獻(xiàn):

      [1]敏捷宣言 http://agilemanifesto.org/iso/zhchs/manifesto.html

      [2]Scrum指南http://www.scrumguides.org/docs/scrumguide /v2017

      [3]《用戶故事地圖》

      [4]https://junit.org/junit4/

      [5]https://www.eclemma.org/jacoco/

      [6]https://cucumber.io/

      猜你喜歡
      項(xiàng)目開(kāi)發(fā)課程
      《無(wú)機(jī)化學(xué)》課程教學(xué)改革
      云南化工(2021年6期)2021-12-21 07:31:42
      數(shù)字圖像處理課程混合式教學(xué)改革與探索
      軟件設(shè)計(jì)與開(kāi)發(fā)實(shí)踐課程探索與實(shí)踐
      為什么要學(xué)習(xí)HAA課程?
      基于量本利分析法的房地產(chǎn)開(kāi)發(fā)項(xiàng)目經(jīng)濟(jì)評(píng)價(jià)
      房地產(chǎn)企業(yè)開(kāi)發(fā)中法律風(fēng)險(xiǎn)的有效防范策略分析
      法制博覽(2016年12期)2016-12-28 19:00:12
      關(guān)于低風(fēng)速風(fēng)電項(xiàng)目開(kāi)發(fā)風(fēng)險(xiǎn)與對(duì)策的探討
      物業(yè)管理早期介入在房地產(chǎn)項(xiàng)目開(kāi)發(fā)中的地位和作用分析
      淺談生產(chǎn)建設(shè)項(xiàng)目水土保持方案編制存在的問(wèn)題及建議
      房地產(chǎn)項(xiàng)目開(kāi)發(fā)及經(jīng)營(yíng)管理探討
      长子县| 拉萨市| 弋阳县| 顺平县| 辽宁省| 安义县| 洛川县| 贺兰县| 永仁县| 澄城县| 涟源市| 准格尔旗| 雷州市| 措美县| 绥中县| 芮城县| 凤台县| 牡丹江市| 长岭县| 潍坊市| 白玉县| 额尔古纳市| 松原市| 庄浪县| 金沙县| 曲靖市| 万州区| 赤城县| 庆云县| 青神县| 镇安县| 繁峙县| 安阳市| 子长县| 汨罗市| 绥江县| 双流县| 延边| 旬阳县| 潮安县| 军事|