前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇軟件開發(fā)范文,相信會(huì)為您的寫作帶來(lái)幫助,發(fā)現(xiàn)更多的寫作思路和靈感。
給記者留下深刻印象的是,軟件開發(fā)者大會(huì)并沒有一味地講解軟件開發(fā)的方法和軟件工具,而是更多地從應(yīng)用的角度出發(fā),將應(yīng)用與軟件技術(shù)相結(jié)合,深入探討軟件技術(shù)如何為熱點(diǎn)應(yīng)用服務(wù),比如移動(dòng)互聯(lián)網(wǎng)、大數(shù)據(jù)等。除了技術(shù)與應(yīng)用之外,大會(huì)更加關(guān)注軟件開發(fā)者這個(gè)群體,包括軟件開發(fā)人員的生存狀態(tài)、軟件開發(fā)者的創(chuàng)業(yè)等。
研究人和行
在本次大會(huì)上,與大數(shù)據(jù)相關(guān)的主題演講和討論很多。我們已經(jīng)步入了大數(shù)據(jù)時(shí)代。為了讓大數(shù)據(jù)更好地服務(wù)于企業(yè)、社會(huì)和人,我們有必要先搞清大數(shù)據(jù)時(shí)代人與機(jī)器所扮演的角色,以及人與機(jī)器之間的關(guān)系。
奇虎360高級(jí)總監(jiān)、商業(yè)產(chǎn)品首席架構(gòu)師劉鵬十分肯定地表示:“大數(shù)據(jù)主要服務(wù)于機(jī)器。大數(shù)據(jù)服務(wù)于人不是不可能,但大數(shù)據(jù)服務(wù)的這些人主要是那些具有高專業(yè)素養(yǎng)的數(shù)據(jù)科學(xué)家或數(shù)據(jù)統(tǒng)計(jì)工作者。實(shí)際上,企業(yè)建立一支專業(yè)的數(shù)據(jù)科學(xué)家隊(duì)伍的難度比建立一套大數(shù)據(jù)系統(tǒng)或平臺(tái)更大。另外,人只能在宏觀上或?qū)Σ糠謭?chǎng)景做出判斷和決策,而機(jī)器可以針對(duì)個(gè)體或全量的場(chǎng)景做出決策。”
奇虎360目前對(duì)數(shù)據(jù)進(jìn)行加工和分析,主要目的是想提升廣告的效果,幫助廣告主更精準(zhǔn)地找到目標(biāo)客戶。也有一些中國(guó)的大型互聯(lián)網(wǎng)公司和第三方數(shù)據(jù)服務(wù)公司正在研究直接通過數(shù)據(jù)加工和交易來(lái)實(shí)現(xiàn)數(shù)據(jù)變現(xiàn)。不過,這一研究目前還處于起步的階段。今年,貴陽(yáng)、武漢等地的大數(shù)據(jù)交易所陸續(xù)掛牌。12月初,河北一家大數(shù)據(jù)交易所也正式啟動(dòng)。
“5年前,人們已經(jīng)開始利用大數(shù)據(jù)來(lái)改善企業(yè)內(nèi)部的管理流程,優(yōu)化運(yùn)營(yíng)效果。相關(guān)的產(chǎn)品和解決方案已相當(dāng)成熟。”劉鵬告訴記者,“現(xiàn)在,我們將主要精力放在研究用戶跨企業(yè)、跨地域的行為數(shù)據(jù),并根據(jù)用戶的整體行為數(shù)據(jù)建模,然后有針對(duì)性地為他推薦新業(yè)務(wù)。這與企業(yè)內(nèi)部利用大數(shù)據(jù)的模式不同。在廣告業(yè)務(wù)中,我們已經(jīng)把自有的數(shù)據(jù)用到了極致,進(jìn)行全量、實(shí)時(shí)分析,并在基礎(chǔ)設(shè)施和大數(shù)據(jù)工具方面不斷創(chuàng)新。”
以前,由于技術(shù)的限制,人們只能利用數(shù)據(jù)做淺層的挖掘。現(xiàn)在,隨著企業(yè)IT基礎(chǔ)設(shè)施能力的增強(qiáng),以及云計(jì)算、深度學(xué)習(xí)等技術(shù)的出現(xiàn),人們可以針對(duì)全量數(shù)據(jù)進(jìn)行更深入的挖掘。“我們正在研究利用更復(fù)雜的模型深入地分析用戶的行為數(shù)據(jù),以便更準(zhǔn)確地找到其興趣點(diǎn)和特征。這才是未來(lái)幾年中國(guó)大型互聯(lián)網(wǎng)公司要做的事,大規(guī)模的數(shù)據(jù)交易和合作并不是重點(diǎn)。”
為了每天3000萬(wàn)活躍用戶
今日頭條有一個(gè)口號(hào):您關(guān)心的,才是頭條。今日頭條技術(shù)副總裁楊震原解釋說(shuō):“所謂讀者關(guān)心的新聞,是指讀者喜歡看和想看的,而且看完之后還想回來(lái)再繼續(xù)看的新聞。我們通過不斷改進(jìn)推薦算法,優(yōu)化內(nèi)容的篩選,為讀者推薦其真正關(guān)心的新聞。”
目前,今日頭條每天的活躍用戶數(shù)超過3000萬(wàn)。如此龐大的用戶量,人工推薦新聞的方式根本是不可能的。今日頭條通過專門的興趣探索方式,借助機(jī)器推薦和大數(shù)據(jù)分析實(shí)現(xiàn)優(yōu)質(zhì)內(nèi)容的篩選。
曾經(jīng)在百度工作過的楊震原十分感謝百度對(duì)他的培養(yǎng)和那一段時(shí)期的歷練。百度的網(wǎng)頁(yè)搜索與今日頭條的內(nèi)容搜索既有相同之處,也有很大不同。“今日頭條將內(nèi)容推薦作為一個(gè)主要的應(yīng)用場(chǎng)景,呈現(xiàn)給讀者的內(nèi)容幾乎100%是通過推薦方式。這樣的產(chǎn)品在業(yè)內(nèi)是非常少見的。”楊震原介紹說(shuō),“早期的信息傳播方式是根據(jù)訂閱的需求,先對(duì)信息進(jìn)行分類,然后再進(jìn)行搜索。這種方式是十分有效的。現(xiàn)在,我們?cè)谶@種方式的基礎(chǔ)上,通過機(jī)器推薦的方式,分析用戶的閱讀行為,然后判斷應(yīng)該推薦什么樣的內(nèi)容。這種模式未來(lái)還有很大的發(fā)展空間,可以做很多以前不能做的事。這種模式不僅適用于新聞推薦,也可以用于其他很多方面。”
今日頭條采用的這種機(jī)器推薦的方式,說(shuō)到底還是以大數(shù)據(jù)為基礎(chǔ),通過分析用戶的行為數(shù)據(jù),達(dá)到為用戶精確推薦內(nèi)容的目的。
“85后”開始挑大梁
本次大會(huì)的一場(chǎng)重頭戲就是CSDN歷時(shí)一年制作的《2015年中國(guó)軟件開發(fā)者白皮書》(以下簡(jiǎn)稱《白皮書》)的。《白皮書》對(duì)中國(guó)軟件開發(fā)者的生存現(xiàn)狀,以及數(shù)據(jù)庫(kù)應(yīng)用開發(fā)、大數(shù)據(jù)應(yīng)用、云計(jì)算應(yīng)用、移動(dòng)開發(fā)技術(shù)、Web應(yīng)用開發(fā)的現(xiàn)狀和發(fā)展進(jìn)行了研究和分析,得出了以下幾點(diǎn)結(jié)論。
第一,“85后”甚至“90后”的軟件開發(fā)者正在崛起,已成為軟件開發(fā)群體的主力軍。他們更具創(chuàng)新和開拓精神,但也面臨開發(fā)經(jīng)驗(yàn)不足、專業(yè)技能欠缺等瓶頸。
第二,中國(guó)的移動(dòng)互聯(lián)網(wǎng)市場(chǎng)在蓬勃發(fā)展,相當(dāng)數(shù)量的開發(fā)人員已由傳統(tǒng)的Web應(yīng)用、數(shù)據(jù)庫(kù)等領(lǐng)域轉(zhuǎn)向移動(dòng)應(yīng)用類軟件的開發(fā)。選擇合適的產(chǎn)品推廣渠道、提供差異化的產(chǎn)品和服務(wù)是中小型的移動(dòng)應(yīng)用開發(fā)者團(tuán)隊(duì)要解決的問題。
第三,開發(fā)者利用第三方云服務(wù)加速應(yīng)用開發(fā)已經(jīng)成為趨勢(shì),但如何保證云平臺(tái)數(shù)據(jù)的安全性,以及企業(yè)業(yè)務(wù)如何平滑地向云平臺(tái)遷移,并與企業(yè)現(xiàn)有IT環(huán)境進(jìn)行整合是亟待解決的問題。
第四,隨著互聯(lián)網(wǎng)、智能設(shè)備的普及,對(duì)海量用戶的行為數(shù)據(jù)進(jìn)行快速、準(zhǔn)確的分析并加以利用是一項(xiàng)巨大的挑戰(zhàn)。CSDN的調(diào)查數(shù)據(jù)顯示,七成以上的企業(yè)已經(jīng)開始利用各種大數(shù)據(jù)處理技術(shù)和數(shù)據(jù)分析產(chǎn)品驅(qū)動(dòng)企業(yè)的產(chǎn)品開發(fā)和運(yùn)營(yíng)。專業(yè)大數(shù)據(jù)技術(shù)人才的缺乏是大數(shù)據(jù)應(yīng)用快速發(fā)展的一個(gè)主要障礙。
CSDN的調(diào)查數(shù)據(jù)顯示,平均每3個(gè)月就會(huì)有一款A(yù)pp面世。這就要求在軟件開發(fā)速度,產(chǎn)品的功能、質(zhì)量、穩(wěn)定性等多個(gè)方面實(shí)現(xiàn)質(zhì)的飛躍。這是對(duì)軟件開發(fā)者提出的最大挑戰(zhàn)。
移動(dòng)互聯(lián)網(wǎng)是風(fēng)口
2008年的那屆中國(guó)軟件開發(fā)者大會(huì)邀請(qǐng)了時(shí)任金山副董事長(zhǎng)的雷軍做主題演講。他當(dāng)時(shí)就提到,移動(dòng)互聯(lián)網(wǎng)是一個(gè)好機(jī)會(huì)。現(xiàn)在,沒有人會(huì)懷疑,移動(dòng)互聯(lián)網(wǎng)就是那個(gè)可以“讓豬飛起來(lái)的風(fēng)口”。CSDN的調(diào)查數(shù)據(jù)顯示,中國(guó)移動(dòng)應(yīng)用領(lǐng)域的開發(fā)者有80萬(wàn)之多。新技術(shù)革命正在打破舊的技術(shù)和商業(yè)體系,同時(shí)也引發(fā)了云計(jì)算、移動(dòng)互聯(lián)網(wǎng)、大數(shù)據(jù)等新興領(lǐng)域的激烈競(jìng)爭(zhēng)。
對(duì)于創(chuàng)業(yè)者來(lái)說(shuō),基于移動(dòng)的企業(yè)和行業(yè)服務(wù)是很大的機(jī)會(huì)。CSDN的調(diào)查顯示,超過70%的軟件開發(fā)者從事的都是與企業(yè)和行業(yè)服務(wù)相關(guān)的開發(fā)工作。美國(guó)的前十大電商中, 除了亞馬遜和eBay以外,其他都是傳統(tǒng)企業(yè),包括百貨公司和大型連鎖零售企業(yè)。但是,中國(guó)的前十大電商中根本找不到傳統(tǒng)企業(yè)的身影。中國(guó)的傳統(tǒng)企業(yè)只是利用信息化工具實(shí)現(xiàn)了企業(yè)內(nèi)部的業(yè)務(wù)數(shù)字化,而沒有在商業(yè)價(jià)值上帶來(lái)很大提升。進(jìn)入“互聯(lián)網(wǎng)+”時(shí)代,傳統(tǒng)企業(yè)必須迎頭趕上,要善于利用云計(jì)算、移動(dòng)化等技術(shù)和工具改造自己的企業(yè),創(chuàng)造出新的價(jià)值,最終轉(zhuǎn)變成數(shù)據(jù)驅(qū)動(dòng)型的企業(yè)。
CSDN創(chuàng)始人蔣濤總結(jié)出軟件開發(fā)者在創(chuàng)業(yè)時(shí)應(yīng)該注意的幾個(gè)問題:第一,創(chuàng)業(yè)者應(yīng)該選擇一個(gè)更大的市場(chǎng);第二,找到這個(gè)行業(yè)中最大的應(yīng)用痛點(diǎn),然后努力攻關(guān);第三,不要貪大求全,專心做好一個(gè)產(chǎn)品模塊或解決一個(gè)具體問題,然后深入下去;第四,注重產(chǎn)品的用戶體驗(yàn),持續(xù)進(jìn)行產(chǎn)品改進(jìn);第五,產(chǎn)品設(shè)計(jì)和業(yè)務(wù)運(yùn)營(yíng)很重要,建立團(tuán)隊(duì)更重要,創(chuàng)業(yè)企業(yè)一定要有一個(gè)結(jié)構(gòu)合理的團(tuán)隊(duì);第六,順勢(shì)而為。
關(guān)鍵詞:敏捷軟件開發(fā);XP;SCRUM
中圖分類號(hào):TP31 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2017)02-0189-01
1 引言
在最初的傳統(tǒng)軟件開發(fā)中,瀑布模型是最常用的軟件生命周期模型。瀑布模型將軟件開發(fā)過程劃分為可行性研究與計(jì)劃、需求分析、設(shè)計(jì)、編碼、測(cè)試、運(yùn)行與維護(hù)這樣幾個(gè)階段,并且規(guī)定這幾個(gè)階段是自上而下、相互銜接的固定次序。作為最早出現(xiàn)的軟件開發(fā)模型,瀑布模型在軟件工程中占有重要的地位,但是瀑布模型中階段之間的依賴關(guān)系非常強(qiáng)烈,如果上一個(gè)A段沒達(dá)到目標(biāo)要求,那么將會(huì)導(dǎo)致下一個(gè)階段工作的停滯,從而導(dǎo)致軟件開發(fā)周期延長(zhǎng)。而且,如果項(xiàng)目的早期需求在后期發(fā)生變化,那么項(xiàng)目付出的代價(jià)將會(huì)非常高。有數(shù)據(jù)顯示有70%的采用瀑布模型開發(fā)的軟件項(xiàng)目均以失敗告終。正因?yàn)楫a(chǎn)品需求的瞬息萬(wàn)變,同時(shí)也因?yàn)榧夹g(shù)發(fā)展的日新月異,敏捷軟件開發(fā)方法誕生了。
2 敏捷軟件開發(fā)
敏捷軟件開發(fā),又稱敏捷開發(fā),是從90年代開始逐漸引起關(guān)注的一種新型軟件開發(fā)方法,能夠應(yīng)對(duì)快速變化的需求,它強(qiáng)調(diào)程序員團(tuán)隊(duì)與業(yè)務(wù)專家之間的緊密協(xié)作、面對(duì)面的溝通、頻繁交付新的軟件版本、緊湊而自我組織型的團(tuán)隊(duì)、能夠適應(yīng)需求變化的代碼編寫和團(tuán)隊(duì)組織方法,也更注重軟件開發(fā)中人的作用。
敏捷軟件開發(fā)方法重視軟件生產(chǎn)效率,非常適用于軟件需求不確定、用戶易溝通并且能參與開發(fā)、開發(fā)人員有責(zé)任感并且積極向上、十個(gè)人以下的小項(xiàng)目的開發(fā)。敏捷開發(fā)以用戶的需求進(jìn)化為核心,采用迭代、循序漸進(jìn)的方法進(jìn)行軟件開發(fā)。
3 常用的敏捷方法
在軟件項(xiàng)目開發(fā)中,比較常用的敏捷方法主要有:Scrum、極限編程、水晶方法、特征驅(qū)動(dòng)開發(fā)、統(tǒng)一過程和動(dòng)態(tài)系統(tǒng)開發(fā)方法等。這些方法基本都相繼興起于20世紀(jì)90年代的不同時(shí)期,主要是作為瀑布方法失敗的一種應(yīng)對(duì),它們?cè)谒枷牒图夹g(shù)上有著大量的相互交流。
Scrum是一種靈活的敏捷軟件開發(fā)管理過程,它將軟件開發(fā)團(tuán)隊(duì)比作橄欖球隊(duì),全隊(duì)有明確的最高目標(biāo):產(chǎn)品的重要性高于一切。團(tuán)隊(duì)高度自治,隊(duì)員們熟悉開發(fā)過程中涉及到的各種技術(shù),緊密合作,確保每個(gè)迭代都朝著最高目標(biāo)推進(jìn)。而且每隔2至6周,每個(gè)人都能看到能實(shí)際工作的軟件,并且據(jù)此決定是這個(gè)版本還是繼續(xù)開發(fā)以加強(qiáng)它的功能。對(duì)于功能需求可能經(jīng)常發(fā)生變化的項(xiàng)目來(lái)說(shuō),Scrum是它們最為理想的選擇之一。Scrum是目前使用最廣泛的敏捷方法,由于它沒有規(guī)定工程實(shí)踐,所以通常Scrum實(shí)施過程中會(huì)應(yīng)用XP中提出一些的工程實(shí)踐,比如持續(xù)集成、結(jié)對(duì)編程等。
極限編程是在需要加強(qiáng)開發(fā)者與用戶的溝通需求下誕生的,它可以讓客戶全面參與軟件的開發(fā)設(shè)計(jì),保證客戶變化的需求及時(shí)得到修正,它也非常注重用戶的反饋,這與讓客戶加入開發(fā)是一致的,讓客戶參與就是隨時(shí)反饋軟件是否符合客戶的要求。通過溝通和反饋,雙方可以清楚地了解開發(fā)進(jìn)度、變化、困難和急需解決的問題等,并及時(shí)地調(diào)整開發(fā)過程。溝通、簡(jiǎn)單、反饋、勇氣、謙虛是極限編程的核心價(jià)值。使用極限編程的軟件開發(fā)人員只需要開發(fā)初期編寫一些文檔,而且因?yàn)闇y(cè)試優(yōu)先,這樣可以把開發(fā)后期缺陷的出現(xiàn)降到最低。
水晶方法是一些敏捷方法系列,包含具有共性的核心元素,每個(gè)都含有獨(dú)特的角色、過程模式、工作產(chǎn)品和實(shí)踐,實(shí)際上是一組經(jīng)過證明、對(duì)不同類型項(xiàng)目非常有效的敏捷過程,它的發(fā)明使得敏捷團(tuán)隊(duì)可以根據(jù)其項(xiàng)目和環(huán)境選擇最合適的水晶方法家族成員。
特征驅(qū)動(dòng)開發(fā)是敏捷開發(fā)的流程之一,其核心理念是先集中精力創(chuàng)建待開發(fā)系統(tǒng)的領(lǐng)域模型,然后,圍繞實(shí)現(xiàn)這些領(lǐng)域模型的特征來(lái)組織開發(fā),可運(yùn)用于小項(xiàng)目和大型項(xiàng)目,統(tǒng)一過程是一種流行的構(gòu)造面向?qū)ο笙到y(tǒng)的迭代軟件開發(fā)過程,是一種用例驅(qū)動(dòng)的迭代式增量開發(fā)過程,每次迭代過程中主要的工作流包括捕獲需求、分析、設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試等。統(tǒng)一過程多種變種產(chǎn)生,如Rational統(tǒng)一過程、敏捷統(tǒng)一過程,以及企業(yè)統(tǒng)一過程。
動(dòng)態(tài)系統(tǒng)開發(fā)方法倡導(dǎo)以業(yè)務(wù)為核心,快速而有效地進(jìn)行系統(tǒng)開發(fā),它全面定義了多種不同的角色、過程和工件,比大多數(shù)其他敏捷方法顯得更加正規(guī)。實(shí)踐證明它是成功的敏捷開發(fā)方法之一,其中一個(gè)重要的特征是根據(jù)"MoSCoW法則"來(lái)進(jìn)行需求優(yōu)先級(jí)排序:M表示必不可少的需求;S表示如果可能,盡量具備;Co表示可以有,但并非關(guān)鍵;W表示目前不需要,但可能以后需要。
4 結(jié)語(yǔ)
本文簡(jiǎn)單介紹了的幾種常見敏捷開發(fā)方法,它們之間相通的,所以應(yīng)該采取兼容并蓄的態(tài)度,根據(jù)自己的具體情況,具體剪裁。在實(shí)際的軟件開發(fā)中,開發(fā)團(tuán)隊(duì)?wèi)?yīng)該根據(jù)項(xiàng)目規(guī)模、開發(fā)環(huán)境,在實(shí)踐中選擇恰當(dāng)?shù)姆椒ā?/p>
參考文獻(xiàn)
[1]楊帆,徐俊剛.一種改進(jìn)的Scrum敏捷軟件開發(fā)方法[J].電子技術(shù),2011.
關(guān)鍵詞:XP SCRUM DSDM Crystal FDD ASD
中圖分類號(hào):TP2 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2014)05-0188-01
1 引言
自從軟件工程產(chǎn)生以來(lái),我們?cè)诮档蛙浖_發(fā)項(xiàng)目的風(fēng)險(xiǎn)過程中嘗試過多種方法,雖然面向?qū)ο蟆⒔Y(jié)構(gòu)化、CMM等技術(shù)有利于幫助軟件危機(jī)的解決,然而其復(fù)雜的過程使軟件行業(yè)陷入低效泥沼中。2001年Kent beck Martin Fowler Robert Martin等經(jīng)驗(yàn)論陣營(yíng)的頭領(lǐng)發(fā)起了敏捷聯(lián)盟向全世界了他們的宣言:個(gè)體和交互勝過過程和工具;工作軟件高于理解文檔;客戶合作勝過合同談判;響應(yīng)變化勝過遵循計(jì)劃。宣言體現(xiàn)了軟件開發(fā)方法必須去適應(yīng)軟件變化的特征,在宣言的基礎(chǔ)上就提出了敏捷軟件開發(fā)方法。
2 敏捷方法概述
截止現(xiàn)在敏捷軟件開發(fā)方法還沒有一個(gè)確定的定義。但它的特點(diǎn)是重視軟件生產(chǎn)效率的,適用于軟件需求不確定、用戶易溝通并且能參與開發(fā)、開發(fā)人員有責(zé)任感并且積極向上、十個(gè)人以下的小項(xiàng)目的開發(fā),是以保證軟件開發(fā)有成功產(chǎn)出為前提的,盡可能減少在開發(fā)過程中制成品的方法,體現(xiàn)“剛剛夠”(Just enough)的觀點(diǎn)。
人作為核心、循序漸進(jìn)和迭代算法是敏捷軟件開發(fā)的宗旨。在敏捷軟件開發(fā)過程中,軟件項(xiàng)目被分解成很多個(gè)小項(xiàng)目,每個(gè)小項(xiàng)目的成果都經(jīng)過測(cè)試,再把他們集成起來(lái)。它的靈活性、協(xié)作性和軟件的商業(yè)價(jià)值上作出的貢獻(xiàn)是敏捷軟件開發(fā)方法的優(yōu)勢(shì)。這都在“敏捷宣言”的核心原則中得到了體現(xiàn):交互和獨(dú)立工作是建立在工具和過程基礎(chǔ)上的、軟件使用是建立在文檔基礎(chǔ)上的、客戶的協(xié)作是建立在合同談判基礎(chǔ)上的、對(duì)變更做出的響應(yīng)是建立在遵循計(jì)劃基礎(chǔ)上的。
3 幾種常用的敏捷方法比較
3.1 極限編程(XP)
極限編程(簡(jiǎn)稱XP)是由KentBeck于1996年提出的,極限編程要求把它列出的每一個(gè)思想和方法都做到極限、做到最好。
極限編程的核心價(jià)值是我們?cè)陂_發(fā)中必須注意的:Communication(溝通)、Simplicity(簡(jiǎn)單)、Feedback(反饋)、Courage(勇氣)、此外還有第五個(gè)價(jià)值: Modesty(謙虛)。因?yàn)橛?jì)劃趕不上變化,使用極限編程的軟件開發(fā)人員只需要在開發(fā)的初期做出一些文檔。極限編程把軟件測(cè)試放在首位,這樣以后出現(xiàn)漏洞的幾率就會(huì)降到最低。
極限編程是一種近螺旋式的開發(fā)方法,它把復(fù)雜的開發(fā)分解為相對(duì)比較簡(jiǎn)單的小軟件;通過溝通、反饋和其它的方法,客戶和開發(fā)人員就可以清楚的了解到開發(fā)進(jìn)度、變化、困難和急需解決的問題等,并及時(shí)地調(diào)整開發(fā)過程。
3.2 SCRUM
SCRUM的宗旨是發(fā)揮構(gòu)件技術(shù)和面向?qū)ο蟮拈_發(fā)方法,對(duì)迭代式面向?qū)ο蠓椒ㄟM(jìn)行改進(jìn),適用于需求不確定的產(chǎn)品的開發(fā)。是迭代的增量化過程,便于工作管理和產(chǎn)品研發(fā)。更綜合了各種開發(fā)的經(jīng)驗(yàn)。
SCRUM把項(xiàng)目分成N個(gè)為期15-30天的迭代階段,稱之為“沖刺”(sprint)。每個(gè)“沖刺”之前,你明確這一個(gè)“沖刺”需要實(shí)現(xiàn)的功能,然后讓開發(fā)人員去完成。但是,在“沖刺”時(shí),SCRUM的核心是所有開發(fā)都圍繞著迭代,需求是固定的。SCRUM方法中只有3中角色:SCRUM主管、開發(fā)團(tuán)隊(duì)、產(chǎn)品負(fù)責(zé)人。
3.3 動(dòng)態(tài)系統(tǒng)開發(fā)方法(DSDM)
開發(fā)一種面向領(lǐng)域的快速開發(fā)方法是產(chǎn)生動(dòng)態(tài)系統(tǒng)開發(fā)方法的原因,動(dòng)態(tài)系統(tǒng)開發(fā)方法在技術(shù)支持、應(yīng)用推廣、研究改進(jìn)培訓(xùn)認(rèn)證和培訓(xùn)認(rèn)證等方面都比其他方法要完善,適用于對(duì)時(shí)間要求很緊的開發(fā)項(xiàng)目,動(dòng)態(tài)系統(tǒng)開發(fā)方法應(yīng)用范圍不再僅僅局限于IT行業(yè)。
DSDM方法提倡以業(yè)務(wù)為核心,快速而有效地進(jìn)行系統(tǒng)開發(fā),并提出了探索式開發(fā)方法的概念。強(qiáng)調(diào)軟件使用者一開始就預(yù)見所有需求是不可能的。該方法中,只要進(jìn)能入下一步,當(dāng)前的算法就是可行的。
3.4 水晶方法(Crystal)
水晶方法是Alistair Cockburn于上世紀(jì)90年代末提出的,水晶方法目的是發(fā)展一種提倡“機(jī)動(dòng)性的”方法。
Crystal是根據(jù)項(xiàng)目重要性和規(guī)模來(lái)區(qū)別項(xiàng)目的,并給出相應(yīng)的辦法。所以,crystal是多種方法的組合.它闡明了要把對(duì)話和交流放在第一位的觀點(diǎn)。Crystal方法中有兩條準(zhǔn)則:(1)應(yīng)用反思工作室促使方法學(xué)的自適應(yīng),(2)使用的增量式循環(huán)不超過4個(gè)月。
3.5 特性驅(qū)動(dòng)開發(fā)(FDD)
特性驅(qū)動(dòng)開發(fā)是一個(gè)強(qiáng)調(diào)快速迭代、特性驅(qū)動(dòng)的軟件開發(fā)方法,適用于周期短的開發(fā)。它既能保證文檔和質(zhì)量,又能保證軟件的快速開發(fā),并提出劃分的每一個(gè)功能開發(fā)時(shí)間不超過兩星期,要求兩星期內(nèi)生產(chǎn)出可見的、能運(yùn)行的代碼。
特性驅(qū)動(dòng)開發(fā)方法認(rèn)為簡(jiǎn)單的過程和良好的定義就能很好地被執(zhí)行,它強(qiáng)調(diào)的是實(shí)用、簡(jiǎn)化、易于被開發(fā)人員接受,是一個(gè)特性驅(qū)動(dòng)快速迭代的過程,適用的項(xiàng)目為軟件需求經(jīng)常變動(dòng)。
3.6 自適應(yīng)軟件開發(fā)(ASD)
自適應(yīng)軟件開發(fā)方法的理論來(lái)源是復(fù)雜自適應(yīng)系統(tǒng)理論,目的是通過提高自適應(yīng)性用來(lái)應(yīng)對(duì)互聯(lián)網(wǎng)時(shí)代下的軟件需求難于預(yù)測(cè)并高速變化的軟件開發(fā),它與水晶方法正在相互借鑒和融合。
在一個(gè)環(huán)境中,結(jié)果是不可預(yù)測(cè)的,把計(jì)劃看成是一個(gè)自相矛盾的。在計(jì)劃中,偏離計(jì)劃就是錯(cuò)誤的,要糾正。而在一個(gè)適配性環(huán)境里,偏離計(jì)劃恰恰是在引導(dǎo)開發(fā)人員走向正確的目標(biāo)。在不可預(yù)測(cè)的環(huán)境中,需要我們用各式各樣的方法來(lái)應(yīng)對(duì)不確定性。在管理中,重點(diǎn)在于鼓勵(lì)大家交流溝通,而不是告訴大家需要做什么,從而使開發(fā)人員能自己提出具有創(chuàng)造性的解決方案。
4 結(jié)語(yǔ)
不同的開發(fā)方法對(duì)于不同的開發(fā)人員來(lái)說(shuō),意義是不同。不同的項(xiàng)目規(guī)模,不同的開發(fā)環(huán)境,也決定了開發(fā)團(tuán)隊(duì)采用哪種開發(fā)方法,本文僅僅對(duì)敏捷開發(fā)方法做了一個(gè)簡(jiǎn)單介紹,相信能為開發(fā)團(tuán)隊(duì)在實(shí)踐中選擇方法提供一個(gè)比較客觀的參考。
參考文獻(xiàn)
為加大項(xiàng)目管理的力度,多數(shù)企業(yè)或項(xiàng)目組應(yīng)用CMM的標(biāo)準(zhǔn)來(lái)管理項(xiàng)目的開發(fā),并達(dá)到了一定的成效。但是應(yīng)用CMM標(biāo)準(zhǔn)之后,給項(xiàng)目經(jīng)理提出了太多的要求。但是,能夠勝任的項(xiàng)目經(jīng)理目前又非常緊缺。如何讓傳統(tǒng)的項(xiàng)目經(jīng)理勝任其崗位,是一個(gè)值得探討的問題。
CMM后項(xiàng)目經(jīng)理難當(dāng)
在項(xiàng)目開發(fā)和管理中應(yīng)用CMM標(biāo)準(zhǔn)之后,對(duì)傳統(tǒng)的軟件項(xiàng)目經(jīng)理又提出了新的更高的要求。
首先,項(xiàng)目經(jīng)理必須非常熟悉CMM管理規(guī)范,又有較高的開發(fā)技術(shù)。而實(shí)際情況是有實(shí)踐經(jīng)驗(yàn)又有理論知識(shí)的項(xiàng)目經(jīng)理少之又少,所以“勉強(qiáng)的項(xiàng)目經(jīng)理”比比皆是。他們有一定的開發(fā)經(jīng)驗(yàn),程序?qū)懙煤芎茫幸欢ㄙY歷,沒有受過正規(guī)訓(xùn)練,也可能沒有做過管理人員。
其次,加強(qiáng)項(xiàng)目管理的力度。技術(shù)型的項(xiàng)目經(jīng)理往往愛才,對(duì)于技術(shù)非常好的項(xiàng)目成員,一般都比較遷就,只要他能夠按期完成任務(wù),可以不按照規(guī)定提交文檔(如周報(bào)),或事后補(bǔ)交,甚至是找人。最終的結(jié)果就是CMM成了文檔化的形式。
第三, CMM要求完成大量的文檔,往往需要項(xiàng)目經(jīng)理投入較多的精力和時(shí)間來(lái)完成,以至占用了大量的技術(shù)研發(fā)的時(shí)間,項(xiàng)目進(jìn)度可能由此拖延,造成項(xiàng)目經(jīng)理常常難于兼顧項(xiàng)目的質(zhì)量和進(jìn)度。
第四,項(xiàng)目經(jīng)理要有較強(qiáng)的組織協(xié)調(diào)能力。項(xiàng)目經(jīng)理不僅要善于處理項(xiàng)目組內(nèi)部成員、公司部門之間的矛盾和沖突,還要處理與客戶之間的關(guān)系。這一點(diǎn),對(duì)技術(shù)型的項(xiàng)目經(jīng)理來(lái)說(shuō),這個(gè)人際交往的難題,而且“伺候”客戶也需要大量時(shí)間。
CMM后宜采用雙PM模式
為既保證項(xiàng)目的進(jìn)度又確保項(xiàng)目產(chǎn)品的質(zhì)量,管理上符合CMM要求,建議項(xiàng)目開發(fā)采用雙PM模式。雙PM模式,即是項(xiàng)目組設(shè)立兩個(gè)經(jīng)理:項(xiàng)目經(jīng)理和產(chǎn)品經(jīng)理。
項(xiàng)目經(jīng)理負(fù)責(zé)對(duì)項(xiàng)目日常事務(wù)管理,主要是負(fù)責(zé)產(chǎn)品研發(fā)以外的事情,包括市場(chǎng)調(diào)研、客戶關(guān)系、項(xiàng)目組內(nèi)部的組織與協(xié)調(diào)、人員管理、項(xiàng)目計(jì)劃、風(fēng)險(xiǎn)管理等等;產(chǎn)品經(jīng)理則專職負(fù)責(zé)技術(shù)研發(fā),包括需求調(diào)研、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、編碼、測(cè)試、部署實(shí)施等。
實(shí)際開發(fā)過程中,許多活動(dòng)是并行或迭代的。項(xiàng)目經(jīng)理和產(chǎn)品經(jīng)理兩者各司其職,相輔相成。通過雙PM模式管理軟件項(xiàng)目開發(fā),由項(xiàng)目經(jīng)理處理項(xiàng)目組的日常事務(wù),指導(dǎo)項(xiàng)目組按照規(guī)范進(jìn)行開發(fā),完善項(xiàng)目組的各種文檔,及時(shí)解決項(xiàng)目組內(nèi)部的問題,協(xié)調(diào)客戶關(guān)系。這樣,產(chǎn)品經(jīng)理就可以專注于技術(shù)研發(fā)工作,有效提高軟件開發(fā)的效率。
據(jù)不完全統(tǒng)計(jì),在軟件項(xiàng)目開發(fā)過程中,技術(shù)類文檔的數(shù)量一般有二十余份,管理類文檔的數(shù)量絕對(duì)超過四十份,而管理類文檔至少一半需要由項(xiàng)目經(jīng)理完成,大部分需要項(xiàng)目經(jīng)理參與評(píng)審。試想,按照傳統(tǒng)的開發(fā)模式,項(xiàng)目經(jīng)理如何應(yīng)付如此大量的文檔工作?因此,傳統(tǒng)的軟件開發(fā),文檔工作往往流于形式,大多數(shù)是在項(xiàng)目開發(fā)結(jié)束后,專門組織幾個(gè)“”補(bǔ)充項(xiàng)目的過程文檔和技術(shù)文檔。一旦項(xiàng)目經(jīng)理或關(guān)鍵技術(shù)人員中途辭職,公司和項(xiàng)目組就會(huì)元?dú)獯髠?xiàng)目開發(fā)陷于癱瘓狀態(tài)。
傳統(tǒng)的軟件開發(fā)模式是“以技術(shù)為主、以管理為輔”,項(xiàng)目經(jīng)理的管理能力不一定行,但他是項(xiàng)目組中絕對(duì)是技術(shù)權(quán)威。實(shí)施CMM的標(biāo)準(zhǔn)進(jìn)行管理之后,完全可以實(shí)現(xiàn)軟件開發(fā)的“政企分開”的管理模式―雙PM模式,將傳統(tǒng)的軟件管理模式轉(zhuǎn)變?yōu)椤耙赃^程為核心、以度量為基礎(chǔ)”軟件項(xiàng)目管理。
當(dāng)然,雙PM模式下的項(xiàng)目經(jīng)理同樣也有很高的要求,要有豐富的軟件開發(fā)經(jīng)驗(yàn)和CMM的理論知識(shí),同樣也需要具備技術(shù)、工具、過程、資源管理等要素,但技術(shù)并不是占主導(dǎo)地位,最重要的一點(diǎn),就是能夠嚴(yán)格按照公司的軟件工程規(guī)范執(zhí)行。而傳統(tǒng)開發(fā)模式下的項(xiàng)目經(jīng)理這一角色就轉(zhuǎn)變?yōu)閷iT負(fù)責(zé)技術(shù)的產(chǎn)品經(jīng)理。
乙方:_________________________
上述甲,乙雙方經(jīng)友好協(xié)商一致,達(dá)成以下協(xié)議。雙方申明,雙方都已理解并認(rèn)可了本協(xié)議的所有內(nèi)容,同意承擔(dān)各自應(yīng)承擔(dān)的權(quán)力和義務(wù),忠實(shí)地履行本協(xié)議。
第一條協(xié)議項(xiàng)目
甲方為乙方開發(fā)_________________軟件(單機(jī)版/網(wǎng)絡(luò)版)_________套。
第二條軟件價(jià)格,付款方法
1.軟件價(jià)格:甲方向乙方開發(fā)的_________軟件(單機(jī)版/網(wǎng)絡(luò)版)定價(jià)為_________元人民幣/套。
2.付款方法:在本協(xié)議簽定的_______天內(nèi),乙方必須向甲方交付軟件定價(jià)的_________的定金,即_________元人民幣。軟件由甲方開發(fā)完畢,并由乙方檢驗(yàn)通過后,乙方一次性向甲方付清剩余的_________軟件開發(fā)款項(xiàng),即_________元人民幣。
第三條軟件開發(fā)時(shí)間
在本協(xié)議簽定當(dāng)日起,甲方開始軟件的開發(fā)。開發(fā)時(shí)間為_____個(gè)月。即從______年____月____日起至______年____月_____日止。經(jīng)雙方協(xié)商一致,可以延長(zhǎng)或縮短該期限。
第四條軟件驗(yàn)收標(biāo)準(zhǔn)
乙方驗(yàn)收軟件的標(biāo)準(zhǔn)以雙方合擬的協(xié)議附件功能說(shuō)明書作為通過的根據(jù)。
第五條售后服務(wù)條款及時(shí)間
甲方為乙方免費(fèi)培訓(xùn)一定人數(shù)的軟件使用人員。
甲方提供一年的免費(fèi)軟件系統(tǒng)維護(hù)服務(wù)。包括數(shù)據(jù)整理,備份等。該時(shí)間為軟件由乙方驗(yàn)收通過之日開始的一年。免費(fèi)服務(wù)期滿后,另簽服務(wù)協(xié)議。
甲方在軟件驗(yàn)收通過之日起的兩年期間,如對(duì)軟件系統(tǒng)進(jìn)行版本更新,將免費(fèi)為乙方提供系統(tǒng)升級(jí)服務(wù)。期滿后,甲方將對(duì)有需要的用戶提供系統(tǒng)最新版本的升級(jí)服務(wù),統(tǒng)一收取費(fèi)用。
第六條乙方運(yùn)行軟件的電腦硬件設(shè)備及操作系統(tǒng)由乙方自行解決。甲方不會(huì)替乙方的電腦平臺(tái)提供升級(jí)或維護(hù),并不會(huì)為乙方其它軟件版權(quán)等事宜負(fù)任何責(zé)任。
第七條乙方在軟件使用過程中,如果要增加協(xié)議附件(功能設(shè)計(jì)書)之外的其它功能,則要另行支付甲方開發(fā)費(fèi)用;如屬軟件本身質(zhì)量問題,甲方免費(fèi)為乙方修正。
第八條甲方為乙方開發(fā)的軟件只能使用在協(xié)議乙方單位范圍內(nèi)。乙方對(duì)甲方所開發(fā)之軟件產(chǎn)品應(yīng)作妥善保管,尊重甲方所有的版權(quán),不得對(duì)甲方銷售之軟件產(chǎn)品進(jìn)行反向工程,反向編譯,反匯編或出租。
否則乙方愿意承擔(dān)由此給甲方帶來(lái)的一切損失,甲方保留追究乙方法律責(zé)任的權(quán)利。
第九條其它
1.甲方只負(fù)責(zé)開發(fā)軟件,乙方使用該軟件做其他事務(wù),后果由乙方承擔(dān)。
2.除在不可抗力或雙方協(xié)議的情況下,本協(xié)議書不能取消。
3.如雙方在協(xié)議期內(nèi)有任何爭(zhēng)議,應(yīng)友好協(xié)商解決。若協(xié)商不成,可提交深圳市經(jīng)濟(jì)仲裁機(jī)構(gòu)促裁。
軟件技術(shù)方案 軟件考察報(bào)告 軟件管理論文 軟件管理 軟件項(xiàng)目總結(jié) 軟件專業(yè)論文 軟件工程 軟件畢業(yè)論文 軟件開發(fā)論文 軟件項(xiàng)目管理 紀(jì)律教育問題 新時(shí)代教育價(jià)值觀