• 
    

    
    

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

      ?

      敏捷開發(fā)管理實踐與應用

      2013-12-29 00:00:00傅成聰
      科技資訊 2013年11期

      摘 要:敏捷開發(fā)能夠快速實現(xiàn)對客戶變化需求的響應。目前這種開發(fā)模式在國內尚未得到大規(guī)模推廣,本文在闡述敏捷開發(fā)相對于其他開發(fā)方法的優(yōu)勢的基礎上,分析和探討了敏捷開發(fā)平臺的搭建與應用,具有比較好的理論價值與實踐意義。

      關鍵詞: 敏捷開發(fā) 管理實踐 客戶需要

      中圖分類號:TP311 文獻標志碼:A 文章編號:1672-3791(2013)04(b)-0000-01

      敏捷開發(fā)又稱敏捷軟件開發(fā),指的是以團隊協(xié)作為基礎,以信息系統(tǒng)的迭代進行開發(fā),通過快速響應客戶需求變化的新理念。敏捷開發(fā)的核心要素便是通過循序漸進的迭代來最終實現(xiàn)系統(tǒng),將開發(fā)者本身作為開發(fā)過程的一部分。敏捷開發(fā)的方法從上世紀九十年代便已在軟件界引發(fā)關注,其最大特征便是能夠快速實現(xiàn)對客戶變化需求的響應。目前這種開發(fā)模式在國內尚未得到大規(guī)模推廣,本文在闡述敏捷開發(fā)相對于其他開發(fā)方法的優(yōu)勢的基礎上,分析和探討了敏捷開發(fā)平臺的搭建與應用,具有比較好的理論價值與實踐意義。

      1 敏捷開發(fā)的優(yōu)勢分析

      1.1 與迭代式開發(fā)相比的優(yōu)勢

      敏捷開發(fā)與迭代式開發(fā)有著共同之處,即對于信息系統(tǒng)開發(fā)周期的要求發(fā)出嚴格。而迭代式開發(fā)由于迭代周期過長,迭代期間不允許客戶提交變化需求,因此導致了項目估算準確度下降;與之相比,敏捷開發(fā)模式特有的短周期與高度協(xié)作,能夠更好地契合客戶不斷變化的需求,也能使客戶需求更加明晰,通過及時的溝通與交流實現(xiàn)效率的提升。

      1.2 與瀑布式開發(fā)相比的優(yōu)勢

      瀑布式開發(fā)遵循預見性的原則,對開發(fā)過程的先后順序非常嚴格,導致信息系統(tǒng)開發(fā)過程中的靈活性與自由度大打折扣;與之相比,敏捷開發(fā)模式特有的迭代方式,使得信息系統(tǒng)已開發(fā)出的部分模塊永遠處于可用狀態(tài),敏捷開發(fā)把一個系統(tǒng)劃分為一些相互獨立的子系統(tǒng),以盡可能短的周期進行迭代,大大增加了效率,提升了客戶滿意度。

      1.3 與螺旋式開發(fā)相比的優(yōu)勢

      螺旋式的開發(fā)模式結合了快速原型模型與瀑布模型二者,并將開發(fā)過程中的風險評估放在比較重要的位置,因此對于一些較大型的信息系統(tǒng)而言,由于其復雜度很高,螺旋式的開發(fā)模式比較適合。螺旋式的開發(fā)模式所針對的風險,強調了可預見部分,卻難以應付不可預見的隨機風險,在這一點上,敏捷開發(fā)的理念更加重視系統(tǒng)在不可預知的風險面前的適應性因而更好地規(guī)避了風險。

      2 敏捷開發(fā)平臺的分析與設計

      2.1開發(fā)流程分析與設計

      每一個信息系統(tǒng)開發(fā)項目都有其自身的需求與特點,在開發(fā)過程中應結合信息系統(tǒng)項目的實際特點和團隊的優(yōu)勢,構建有針對性的軟件開發(fā)模式,本文所涉及的敏捷開發(fā)平臺,最適合的構架是J2EE的MVC模式。下圖所示為敏捷開發(fā)流程的設計方案。

      由圖1可知,在信息系統(tǒng)開發(fā)伊始,先從源代碼存儲數(shù)據(jù)庫里讀出軟件系統(tǒng)所需的全部源代碼,接著以這些源代碼為基礎,對單元測試代碼與信息系統(tǒng)的程序代碼進行編寫,這樣的模式有助于單元測試的順利進行以及程序編譯的順利通過。代碼編寫完畢之后需要進行提交,所提交的全部碼將存儲于源代碼庫。引入“Cruise Control”模塊作為信息系統(tǒng)的集成模塊,一旦該控制器接收到源代碼庫的代碼更新后,便會觸發(fā)Ant功能,Ant對源代碼庫的目錄進行刷新,從而把舊的目錄替代掉,并為新編寫的源代碼構建新的目錄、提示為這些代碼的目錄執(zhí)行測試工作。測試通過之后,將以上代碼編譯并生成目標類,打成WAR包進行發(fā)布。

      2.2開發(fā)平臺的分析

      在開發(fā)平臺的設計中,源代碼的管理和存儲,是以管理軟件的形式實現(xiàn)的,這樣的做法優(yōu)勢在于,能夠使信息系統(tǒng)項目團隊中的每一個成員均能夠得到系統(tǒng)完成的所有源代碼。這一步驟的重要環(huán)節(jié)便是管理軟件的自動化,結合系統(tǒng)預先所設置的周期,在代碼庫中自動檢測和讀取已經(jīng)更新的代碼,同時把這些新代碼存儲于一個日志屬性的文件之中,信息系統(tǒng)開發(fā)團隊的所有成員均能夠接收到新代碼的詳細內容。為適應敏捷管理,系統(tǒng)采用 B/S 結構,以Spring來實現(xiàn)系統(tǒng)所需的服務,并引入ESB技術作為中介,通過為J2EE結構中的業(yè)務邏輯層底部補充服務層,實現(xiàn)系統(tǒng)對具體參與調用的軟件代碼的封裝。

      基于以上方式所構建的平臺,其最終用戶是軟件開法者,開發(fā)團隊在以上平臺的支持下,將更多的精力投入到對軟件核心業(yè)務邏輯的分析、對用戶需求的重構以及開發(fā)的效率,因此使得所開發(fā)產(chǎn)品的伸縮性和靈活性都有較大的改善。

      2.3開發(fā)平臺的設計

      本研究在構建敏捷開發(fā)軟件平臺時,選用框架是MVC,并創(chuàng)新性地引入了SOA體系結構,借鑒二者之長,構建高效、穩(wěn)定的敏捷軟件開發(fā)管理系統(tǒng)構架。在SOA中,通過模型對三個角色進行了描述,分別是:服務提供者、注冊庫以及請求者。服務提供者角色如果從用戶的角度而言,屬于一項服務的所有者。而從開發(fā)團隊的角度而言,則屬于一種接受訪問服務的具體的平臺。服務注冊中心角色屬于服務發(fā)現(xiàn)的支持者,服務注冊中心擁有一個可用服務的存儲庫,該存儲庫可以支持搜索,也支持服務描述。該存儲庫可供服務提供者發(fā)布其具體的描述,此外服務請求者還能夠從不屬于服務注冊庫的渠道獲取服務描述,這些渠道包括文件、FTP等。服務請求者角色如果從企業(yè)的角度而言,屬于一項服務的使用者。而加入從系統(tǒng)結構的角度而言,則屬于一種尋找并調用服務的具體的平臺。

      由于軟件開發(fā)平臺系統(tǒng)使用的是層次化結構,因此系統(tǒng)分屬于不同層次的組件互相獨立,能夠方便地增加、更新。這個特點為系統(tǒng)的維護帶來許多方便。此外因為不同組件之間的關系是互相獨立的,假如需要更換組件,并不會對系統(tǒng)另外部分的組件產(chǎn)生任何影響,所以對系統(tǒng)進行更新或者維護的時候就會安全和可靠。此外由于系統(tǒng)引入了層次化結構,可以讓系統(tǒng)開發(fā)拆分為專業(yè)化分工。信息系統(tǒng)的開發(fā)小組能夠結合具體的層次進行劃分,每一個專業(yè)小組只需要結合不同層次之間的協(xié)議。單獨負責自己層次的內容即可實現(xiàn)這個系統(tǒng)。因此,以專業(yè)化的分工對系統(tǒng)的開發(fā)團隊進行細化,便能夠讓開發(fā)小組成員充分發(fā)揮其專項技能。

      結合前文所述的基于MVC的結構特征,本設計在信息系統(tǒng)引入MVC結構所具有的優(yōu)勢包括:

      (1)在軟件用戶的視角:客戶的需求可以通過將不一樣的服務組合起來進行實現(xiàn)。舉例來講,一個客戶在查詢服務的時候還要另外提供一些服務,則此時客戶可以把這部分服務進行組合,從而形成新的可供調用的服務。通過這樣的方法就能夠使得在并發(fā)請求數(shù)目比較多的時候,不至于使系統(tǒng)的速度減慢。

      (2)從開發(fā)者的視角而言:一些需要訪問信息平臺的外部用戶同樣申請相同的服務。這樣的模式有利于效率更高地整合軟件開發(fā)所涉及到的業(yè)務流程。從服務提供的視角而言,本研究所開發(fā)的系統(tǒng)一方面能夠作為其他系統(tǒng)提供服務的角色出現(xiàn),另一方面也能夠充當服務的使用者。在本研究的功能模塊里,通過這樣的方法就能夠通過調用查詢服務去獲取一個具體敏捷軟件開發(fā)情況。

      (3)本研究所開發(fā)的系統(tǒng)之中所存在的業(yè)務邏輯可以全部以第三方提供的服務來實現(xiàn)具體的功能。相關的業(yè)務邏輯服務組件由服務提供者進行開發(fā)之后,可以給整個信息系統(tǒng)的所有用戶提供相關的業(yè)務服務,其他信息系統(tǒng)的用戶通過對這些邏輯內容進行組合,便可以實現(xiàn)這些用戶所需的業(yè)務服務。從服務使用者的視角而言,要想獲取網(wǎng)絡服務,只要以符合相關標準的接口來申請即可,而該服務具體采用的是什么系統(tǒng)平臺則不是用戶所關心的,在服務的提供方的視角,需要關注的只限于怎樣對服務進行重新組合,從而滿足新產(chǎn)生的業(yè)務需求。

      3 結語

      敏捷開發(fā)最為鮮明的特點便是能夠在保證軟件質量與開發(fā)速度的基礎上,以客戶的需求變化為基準,通過對需求變化的支持,尋求自身的競爭力,滿足客戶需要,從而使軟件開發(fā)能夠適應于可累復雜護著模糊的環(huán)境,盡可能的維持其清晰性與簡單化?;诿艚莨芾淼能浖_發(fā)能夠在很大程度上提升信息系統(tǒng)的生產(chǎn)率,非常適合充滿變換的客戶需求環(huán)境,也可以為客戶解決需求模糊的問題。在基于敏捷管理理念的軟件開發(fā)實施中,對開發(fā)流程和開發(fā)團隊進行有效的組效、實施、控制、跟蹤、分析和考核動,以達到保證質量、提升效率的目標。這種體系的推廣和應用在我國軟件界只是時間問題。

      參考文獻

      [1] Kent Beck,Cynthia Andres.解析極限編程—擁抱變化(第2版)[M].北京:機械工業(yè)出版社,2011.

      [2] Mike Cohn.Scrum敏捷軟件開發(fā)[M].北京:清華大學出版社,2010.

      [3] Robert C.Martin.敏捷軟件開發(fā)原則、模式與實踐[M].北京:清華大學出版社,2012.

      [4] (美)Robert C·Martin,鄧輝譯.敏捷軟件開發(fā)——原則、模式與實踐[M]. 北京:清華大學出版社,2012.

      [5] (美)Alistair Cockburn,蘇敬凱譯.敏捷軟件開發(fā)[M].北京:機械工業(yè)出版社,2011.

      平潭县| 井陉县| 酒泉市| 郸城县| 莱芜市| 余姚市| 黔西| 洪江市| 固阳县| 拉孜县| 乐平市| 甘谷县| 金乡县| 门头沟区| 贞丰县| 大城县| 江川县| 图片| 绥芬河市| 儋州市| 新绛县| 沾益县| 视频| 滨海县| 秭归县| 贵定县| 门头沟区| 万盛区| 霍邱县| 花垣县| 西昌市| 陇川县| 潼关县| 鹤庆县| 新竹市| 芮城县| 邹平县| 栾川县| 长葛市| 砀山县| 虹口区|