国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于“敏捷開發(fā)法”的高職軟件實訓教學研究

2011-06-09 14:19翟高粵
職業(yè)教育研究 2011年1期
關(guān)鍵詞:架構(gòu)設(shè)計生命周期文檔

翟高粵

(蘇州經(jīng)貿(mào)職業(yè)技術(shù)學院 江蘇 蘇州 215009)

基于“敏捷開發(fā)法”的高職軟件實訓教學研究

翟高粵

(蘇州經(jīng)貿(mào)職業(yè)技術(shù)學院 江蘇 蘇州 215009)

從“敏捷開發(fā)法”軟件開發(fā)的思想出發(fā),本文闡述了該開發(fā)方法的特點和流程。通過實踐案例分析,總結(jié)出一套高效率的軟件實訓教學方法,證明采用該方法能提高軟件實訓的效率,調(diào)動學生參與軟件實訓的積極性,縮短軟件人才的培養(yǎng)周期。

敏捷開發(fā)法;高職;軟件實訓;教學方法

目前,各高職院校對于軟件專業(yè)類學生項目實訓主要采用傳統(tǒng)的“生命周期法”的開發(fā)模式,強調(diào)軟件開發(fā)之前的計劃,強調(diào)在編寫代碼之前做詳盡的需求分析、總體設(shè)計和詳細設(shè)計。在實訓過程中,強調(diào)文檔的編寫,從可行性研究、需求分析,到總體設(shè)計、詳細設(shè)計都要編寫大量的文檔。這種做法的弊端是:(1)在編寫這些文檔之前需要做大量的需求調(diào)查工作,而編寫這些文檔的過程又是十分枯燥的,許多學生都不愿意寫文檔。(2)在需求變動時,維護軟件工程中編寫的眾多文檔的一致性需要耗費大量的時間。實踐證明,采用該模式學生實訓效果較差。由于前期就需要編寫大量文檔,文檔的枯燥繁瑣導致學生對實訓興趣不高,而且還會造成時間和資源的浪費,更難以形成團隊協(xié)作精神。因此,對于高職軟件實訓教學,采用傳統(tǒng)的方法教學效果并不好。經(jīng)過兩年的實踐證明,采用“敏捷開發(fā)法”的實訓方法是一種行之有效的手段。筆者擬結(jié)合蘇州經(jīng)貿(mào)學院軟件人才培養(yǎng)的實際情況,對基于“敏捷開發(fā)法”的高職軟件實訓教學方法進行探討。

“敏捷開發(fā)法”的高職軟件實訓方法

(一)“敏捷開發(fā)法”與“生命周期法”

“敏捷開發(fā)法”2004年初開始提出,是一種以人為核心、迭代、循序漸進的開發(fā)方法,符合快速工作、響應(yīng)變化能力的價值觀和原則。目前,“敏捷開發(fā)法”已在一些軟件企業(yè)中推行,效果顯著?!懊艚蓍_發(fā)法”要求文檔的數(shù)量最少,認為源代碼是最根本的文檔?!懊艚蓍_發(fā)法”過程和基于傳統(tǒng)“生命周期法”軟件工程開發(fā)的本質(zhì)區(qū)別在于以下兩點:(1)“敏捷開發(fā)法”是基于適應(yīng)的,而傳統(tǒng)“生命周期法”是基于預(yù)測的。傳統(tǒng)“生命周期法”試圖對一個軟件項目在很長的時間跨度內(nèi)做出最詳細的計劃,然后嚴格按照計劃進行開發(fā),當需求確定下來后,就不再修改了。所以,傳統(tǒng)“生命周期法”本質(zhì)上是抵制變化的,而“敏捷開發(fā)法”則是主動適應(yīng)變化。(2)“敏捷開發(fā)法”以人為導向,而傳統(tǒng)軟件工程方法則以過程為導向。

(二)基于“敏捷開發(fā)法”實訓的實施

筆者擬結(jié)合實際教學中的實例,說明“敏捷開發(fā)法”在實訓教學中應(yīng)如何實施。

本院高職軟件實訓的項目通常來自于軟件企業(yè)的實際商業(yè)項目,學生采用“項目組”的形式進行設(shè)計。根據(jù)項目的大小,一般按3~8人1組,每組的項目需求內(nèi)容相同。根據(jù)“敏捷開發(fā)法”的原則,在實施過程中應(yīng)遵循以下措施。

1.以人為本,合理分組?!懊艚蓍_發(fā)法”的思想認為,人的因素要遠遠大于過程和技術(shù)。在一個團隊之間,交流是最重要的。由此可見,在“敏捷開發(fā)法”實施中,更加注重團隊合作,具有較強的團隊協(xié)作力量,就具有最強大的軟件開發(fā)實力。在開始嘗試時,采用按學號分組或隨機抽簽的分組方式。有些小組在開發(fā)中合作得較好,但更多的小組由于團隊成員之間互不交流,缺乏合作,最終項目開發(fā)的結(jié)果不能令客戶滿意。后來,我們采用雙向選擇的分組方法,由學生相互填寫分組意向,再從技術(shù)實力的角度出發(fā),并征得小組成員同意由教師進行微調(diào),這樣,更能夠促進同學間的互幫互助,更有利于項目的開發(fā),同時,也為項目的順利進行打下了團隊合作的基礎(chǔ)。

2.SWOT分析。該方法是一種企業(yè)內(nèi)部分析方法,即根據(jù)企業(yè)自身的既定內(nèi)在條件進行分析,找出企業(yè)的優(yōu)勢、劣勢及核心競爭力之所在,從而將公司的戰(zhàn)略與公司內(nèi)部資源、外部環(huán)境有機地結(jié)合。以前,在做實訓項目時,學生大多是從技術(shù)角度考慮哪些功能模塊需要做,哪些功能模塊先做,而沒有一個系統(tǒng)化的分析方法。其結(jié)果是有些功能模塊投入很多資源,卻并不一定是客戶最想要的。在“敏捷開發(fā)法”中,更加注重客戶需求,如果對產(chǎn)品進行SWOT分析,就能事半功倍,付出最小工作量,但能獲得最具價值的模塊。

3.迭代的軟件開發(fā)方法。在“敏捷開發(fā)法”中,要求項目每隔一定的時間就進行一次迭代,每次迭代相當一次較小的交付和確認,也可能被棄用。開發(fā)者向客戶演示迭代的結(jié)果,迭代的取舍根據(jù)客戶的反饋結(jié)果確定。在項目實訓中,可以為學生設(shè)定迭代的時間。例如,如果整個項目設(shè)定的時間為5周,可以將迭代的時間確定為4~5天,這樣,可以避免可能出現(xiàn)的問題擴散,有效地避免傳統(tǒng)開發(fā)過程中出現(xiàn)的返工現(xiàn)象。在迭代的過程中,要求全體項目組成員都同時參加,最終確定迭代的結(jié)果,共同發(fā)布新的計劃,并分成若干個小任務(wù),確定各個任務(wù)的優(yōu)先級與所需要的時間。

4.輕文檔,但不是無文檔?!懊艚蓍_發(fā)法”強調(diào)溝通的重要性,而輕冗余文檔。但“敏捷開發(fā)法”并不意味著沒有文檔。在“敏捷開發(fā)法”的實施過程中,應(yīng)該有適量的文檔,大多是幾頁PPT,書寫和維護工作量都很小,但有助于加快整理思路、溝通及討論。

5.重概念和架構(gòu)設(shè)計,而輕詳細設(shè)計。在“敏捷開發(fā)法”的實施中,一般重概念和架構(gòu)設(shè)計,而輕詳細設(shè)計。概念設(shè)計可以看成是為什么要做該產(chǎn)品或模塊,強調(diào)的是產(chǎn)品的路線規(guī)劃、市場趨勢、客戶價值以及技術(shù)趨勢等。架構(gòu)設(shè)計指的是應(yīng)該用什么方式實現(xiàn)、分幾個層次、多少組件、不同層次與組件之間關(guān)系是什么。詳細設(shè)計則是具體的設(shè)計和做法、API接口等。

一個產(chǎn)品,特別是面向行業(yè)的產(chǎn)品,概念設(shè)計和架構(gòu)設(shè)計非常重要,需要考慮行業(yè)未來的發(fā)展方向,產(chǎn)品在市場中橫向與縱向的比較,技術(shù)的發(fā)展方向,以及每個模塊的投入產(chǎn)出比等,這樣,才能盡可能保證產(chǎn)品沿著正確的方向開發(fā)。所以,在開始正式開發(fā)之前,通過概念設(shè)計和架構(gòu)設(shè)計,梳理思路是非常必要的。

【實例分析】比較采用“生命周期法”與“敏捷開發(fā)法”兩種方法進行產(chǎn)品開發(fā)的各個階段流程。

圖1 野生命周期法冶項目開發(fā)流程圖

圖1是實訓中某個采用“生命周期法”項目開發(fā)流程,整個開發(fā)周期大概持續(xù)兩個月。從圖1中可以看出,流程中的大多數(shù)活動都是串行進行的。這樣的一種類似瀑布的開發(fā)流程,前提是需求在產(chǎn)品的初始階段就完整地被“捕獲”,并做出正確的分析,這樣才能保證最后交付的產(chǎn)品是客戶所需要的產(chǎn)品,但通常這樣的理想狀況很難實現(xiàn)。因此,“生命周期法”開發(fā)流程缺乏靈活性,無法在開發(fā)過程中發(fā)現(xiàn)不確定的需求,導致產(chǎn)品無法隨著業(yè)務(wù)人員和市場的反饋及時修改,難以開發(fā)出符合業(yè)務(wù)人員需求的產(chǎn)品。

圖2 野敏捷開發(fā)法冶項目開發(fā)流程圖

圖2為“敏捷開發(fā)法”項目開發(fā)流程,整個開發(fā)周期大概持續(xù)一個半月。它把項目切分成多個子項目,各個子項目具備集成與可運行的特征。簡言之,就是把一個大項目分為多個相互聯(lián)系但也可獨立運行的小項目,并分別完成,同一小組中,每人完成一個子項目。另外,在整個開發(fā)過程中,項目組人員與客戶均可以非常清楚開發(fā)進度、變化、待解決的問題和潛在的困難等,并根據(jù)實際情況及時地調(diào)整,縮短軟件開發(fā)的周期,提高軟件開發(fā)的效率和質(zhì)量。

“敏捷開發(fā)法”的思想意義

“敏捷開發(fā)法”思想是近幾年在軟件領(lǐng)域興起的新思潮,使用該思想設(shè)計出來的軟件靈活、高效、高質(zhì),將其與傳統(tǒng)的開發(fā)原則結(jié)合起來,能有效地提高軟件開發(fā)的效率,是越來越多的軟件開發(fā)者所追捧的一種開發(fā)思想?!懊艚蓍_發(fā)法”對于教師的要求比較高,首先,要求教師應(yīng)當能夠靈活地應(yīng)用“敏捷開發(fā)法”的思想,其次,要求教師能夠正確地指導學生。在此過程中,教師既要作為項目管理者,也要扮演客戶的角色。盡管如此,如能將該思想引入高職軟件實訓課程中,就既能提高課堂效率,又可將最先進的軟件開發(fā)思想方法傳授給學生,在提高學生的實踐能力的同時,增強學生的就業(yè)自信心。

[1]戴浩.高職軟件開發(fā)專業(yè)綜合實訓課程教學模式探索[J].長沙通信職業(yè)技術(shù)學院學報,2007,(9):43-45.

[2]管林挺,顧沈明.基于敏捷開發(fā)的軟件工程教學研究[J].計算機時代,2009,(8):45-46.

[3]金敏,周翔.高級軟件開發(fā)過程-Rational統(tǒng)一過程、敏捷過程與微軟過程[M].北京:清華大學出版社,2009.

[4]胡霞.初探敏捷開發(fā)在《項目實踐》課程中的應(yīng)用[J].蘇州工業(yè)職業(yè)技術(shù)學院學報,2009,(3):41-43.

(本文責任編輯:尚傳梅)

G712

A

1672-5727(2011)01-0127-02

翟高粵(1975—),男,江蘇蘇州人,碩士,蘇州經(jīng)貿(mào)職業(yè)技術(shù)學院講師,研究方向為軟件工程。

猜你喜歡
架構(gòu)設(shè)計生命周期文檔
全生命周期下呼吸機質(zhì)量控制
淺談Matlab與Word文檔的應(yīng)用接口
淺析工業(yè)網(wǎng)絡(luò)安全架構(gòu)設(shè)計
有人一聲不吭向你扔了個文檔
基于安全性需求的高升力控制系統(tǒng)架構(gòu)設(shè)計
從生命周期視角看并購保險
虛擬收費站架構(gòu)設(shè)計與高速公路自由流技術(shù)
民用飛機全生命周期KPI的研究與應(yīng)用
大數(shù)據(jù)時代計算機網(wǎng)絡(luò)應(yīng)用架構(gòu)設(shè)計
企業(yè)生命周期及其管理
姜堰市| 鲁山县| 万年县| 瑞金市| 游戏| 城市| 佳木斯市| 富裕县| 麟游县| 平陆县| 靖安县| 正安县| 卓尼县| 东城区| 松江区| 文水县| 抚宁县| 乾安县| 新平| 行唐县| 阿勒泰市| 微博| 遂溪县| 诏安县| 沧州市| 韶关市| 临海市| 苏尼特右旗| 庆安县| 鲁甸县| 孟连| 寻乌县| 新乡县| 勐海县| 高雄县| 石景山区| 桐乡市| 仙居县| 馆陶县| 柞水县| 深水埗区|