999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

敏捷軟件開發課程評價指標體系及應用

2017-04-12 02:02:46趙學龍于立功
計算機教育 2017年3期
關鍵詞:語言評價能力

嚴 悍,趙學龍,于立功

(南京理工大學 計算機科學與工程學院,江蘇 南京 210094 )

敏捷軟件開發課程評價指標體系及應用

嚴 悍,趙學龍,于立功

(南京理工大學 計算機科學與工程學院,江蘇 南京 210094 )

針對敏捷軟件開發課程的評價指標問題,對引進的評價指標體系進行改進并給出應用實例。通過實例分析,該評價指標體系不僅能指明教學內容和實踐的基本方向,而且能定量分析每一種敏捷能力的變化,有效評價教學效果,精準分析優勢與缺陷,從而指導和改進教學實踐。

敏捷軟件開發;評價指標;動態指標

0 引 言

敏捷軟件開發Agile Software Development(下文簡稱ASD)采用一組輕量級方法,作為傳統軟件工程的改進與革新,從2001年至今得到廣泛關注和應用[12]。高校在教學中也積極引進ASD課程,如德國波恩大學于2003年率先引進ASD作為研究生課程;在美國,Texas Austin大學于2006年創辦敏捷技術培訓中心,Bowling Green州立大學創辦ASF(Agile Software Factory)培訓機構,Johns Hopkins大學創建ASD課程;清華大學、北京大學等國內高校也陸續開設相關課程。南京理工大學于2007年從德國波恩大學引進極限編程eXtreme Programing(下文簡稱XP)實踐課程,用于計算機相關專業高年級本科生和研究生的暑期實踐[3]。該課程主要是單純項目開發訓練,同時引進一套相應的評價指標。從2010年開始,ASD被納入研究生正規課程體系,增加了課堂環節,以彌補單純項目訓練的不足。針對ASD課程評價指標問題,需要探索改進方法。

1 主要問題

目前,ASD作為計算機專業課程面臨的主要問題如下:

(1)缺乏統一標準。盡管IEEE在2011年推出了一個工程推薦標準P1648[4],但對ASD課程的統一標準仍缺乏指導,導致ASD課程的教材選用、內容形式和課程計劃都取決于教師個人興趣和能力。這與傳統軟件工程課程體系的標準化規范化形成鮮明對比[5]。

(2)缺乏適用的評價指標體系。盡管前期引進了極限編程XP和SCRUM[6]的定量評價指標,但該指標主要針對集中式的團隊項目開發活動,如結對編程[7]、迭代周期等,缺少針對ASD課堂教學內容的評價,如測試驅動開發、代碼重構[8]等。原有指標適用于單團隊、單項目、單平臺的項目實踐,即學生人數相對少(少于12人)、訓練時間集中(主要是暑期時間,每天8學時,共4周)且教學資源充足(有專用實驗室)的環境條件,但ASD成為正規課程后,學生人數劇增(往往多于40人),教學時間碎片化(如每次2~3學時,每周2次,共5~7周)且缺少集中實踐場所。此時就需要改進評價指標,以適應分散式的多團隊、多項目、多平臺的變化。

2 評價指標的改進與應用實例

評價指標的改進主要包括兩方面:一方面,整合與縮減。原有指標包含14項定量指標,經過整合與縮減,最后形成10項指標,對應10種敏捷能力;另一方面,增加動態指標。

2.1 動態指標

動態指標是每次課程根據教學對象、內容、形式、資源(包括時間和場所)的不同而確定的可變指標。動態指標受到當前軟件工程新進展的影響。靜態指標是ASD基本教學內容所決定的指標,并不隨教學對象形式而改變。

之所以需要動態指標,是因為ASD作為傳統軟件工程的改進與革新,應適應當前軟件工程在編程語言、工具等方面的最新進展。如在2010—2014年,設計模式成為熱點,設計模式就作為ASD課程的動態內容和指標。2015—2016年,Java8成為新的Java語言標準,C++11/14成為新的C++語言標準而得到廣泛關注,新語言需要及時引入ASD以改進編程。建議采用技術講座形式來對應動態指標。ASD動態內容與指標所占比例需根據學生已學的課程和ASD教學目標來確定,動態內容與指標建議占ASD總課程10%~15%的比例。

2.2 評價指標應用實例

2016年部分研究生ASD課程的10項指標評價結果如圖1 所示,其中新語言應用能力作為動態指標。

圖1 定量評價指標應用實例

在圖1中,一種敏捷能力指標對應一張圖。對于一種能力,一名學生對應圖中一個點(x,y)。其中x表示課程前能力,y表示課程后能力,x和y范圍是從0~10。評價原始數據來自課程結束時的學生匿名調查問卷,由原始數據形成散點圖后計算平均斜率,而且將對角線(斜率為1)作為基準。該圖常用于衡量一個群體在某方面定量變化程度。斜率越大表示變化程度越大,教學效果越明顯;斜率越小(趨近1),表示教學效果相對不明顯。這種斜率稱為作用系數。除了作用系數,散點圖可觀察和分析學生個體的能力分布情況。

課程前后學生的能力平均值的增長對比情況如圖2所示。計算方法是對10種能力分別計算x和y的平均值,然后制圖。下面基于定量指標評價結果進行具體分析。

圖2 敏捷能力增長對比圖

3 優勢能力分析

從圖2直觀來看新語言應用能力和交流溝通能力的顯著增長。其中新語言應用能力的課前分值最低,交流溝通能力課后分值最高。原因分析如下:

(1)新語言應用能力分析。課堂上用15%課時介紹新語言(包括Java8和AspectJ/AOP),新語言對于實際工程開發具有重要作用。從圖1中能發現個別學生對于新語言是零知識,起點x=0,導致課程前平均分偏低,進而導致增長分值相對較高。同時也發現個別學生“零變化”,即y=x,原因是本課程未限定Java作為唯一編程語言,而且這些學生所選項目并未使用Java語言。對于動態指標的預期作用為y=1.2x,圖1中結果為y=1.322x,評價效果超過預期,說明動態引入新語言內容能有效增強學生的能力。

(2)交流溝通能力分析。團隊項目中要求每個人發言,對任何團隊決策都必須發表個人意見,表明個人態度,這種強制性對于交流溝通能力起到積極作用。此外團隊計劃游戲也對促進交流溝通能力提高。

從圖2可以看出,測試驅動開發能力和軟件難度評估能力也得到顯著提高。分析原因如下:

(1)測試驅動開發能力分析。雖然部分學生事先學過軟件測試相關課程,但傳統課程往往不包含測試驅動開發TDD,而TDD是ASD最重要特征之一。ASD課堂實踐中提供2個具體實例,分別占用2次課時,課堂上教師給出問題之后要求各團隊研討40分鐘,然后提交測試用例和關鍵編碼,最后教師立即講解要點和注意事項。這種實踐方式起到了積極作用。

(2)軟件難度評估能力分析。課堂上給出4種實踐方式:①用卡片書寫待解決的問題和待完成的任務。該方法在極限編程XP中用來描述用戶素材與設計任務。②用撲克牌1~10作為每個人對于問題難度和工作量的定量評估(1分最容易,10分最難工作量最大)。③團隊計劃游戲。這是一種SCRUM方法[6],在每個迭代周期第一天對每個新問題和新任務投票評估,評估過程中要求給出最高值和最低值的學生說明原因。④迭代式反饋修正。每完成一個任務都將實際工作量與預期相比較,逐漸使評估趨向準確。這種方法簡便易行,具有趣味性和互動性,得到學生認可。

4 不足之處及改進方法

從圖2中可以看出,工具能力和軟件表達能力提高相對不明顯。原因分析如下:

(1)工具能力分析。ASD相關工具涉及較多,主要分為個人工具(如編碼、測試與重構工具)與團隊工具(如代碼共享與版本控制工具)。研究生ASD課程中每周只有4學時開發實踐,而工具應用能力的提高需要較多的開發實踐做基礎,因此工具能力難以在短時間內明顯提高。另外,不同團隊允許采用不同語言和工具來開發不同項目,這使得工具應用多樣化,教師難以具體指導,導致工具應用能力與編程技能都難以在短時間內得到明顯提高。如果是全天課程且多項目都采用相同工具,即便4周時間,評估效果也能得到明顯提高。

(2)軟件表達能力分析。ASD課程強調兩方面表達能力:口頭表達(團隊項目展示與答辯)與字面表達(小論文或個性化論文,要求學生就某事情表明個人態度并給出理由,并非撰寫軟件文檔)。ASD課程需要培養學生的文字表達能力的原因是:通過每人提交小論文的形式,給每個學生一個平等的機會來表達自己態度和意見,避免團隊負責人或骨干的個人意見覆蓋所有成員的情況。大多學生對于小論文撰寫難以掌握,這成為本課程一個缺點。其改進方法有:①用2學時分析、總結往屆學生小論文的優點和缺點,并說明撰寫方法,強調實踐性、邏輯符合性與形式一致性;②放棄正規論文和軟件文檔的形式要求,著重強調學生個性化表達并鼓勵創新思維。

5 結 語

ASD課程建立明確的評價指標體系有兩個作用:①反映課程教學目標,指明教學與實踐的基本方向;②定量分析每一種能力的變化,有效評價教學效果,精準分析優勢、缺陷和不足,指導和改進ASD教學實踐。盡管ASD目前無法形成國際或國內標準,評價指標也可能因人而異,但ASD課程評價指標是動態可改變的,能適應當前軟件工程的最新進展,成為受學生歡迎的專業課程。

[1] Martin R C. 敏捷軟件開發: 原理、模式與實踐[M]. 鄧輝, 譯. 北京: 清華大學出版社, 2003.

[2] Cockburn A. Agile software develoment[M]. 2nd ed. New York: Pearson Education, Inc, 2007.

[3] Beck K. Extreme programming explained: Embrace change[M]. Boston: Addison-Wesley, 2004.

[4] Software & Systems Engineering Standards Committee (C/S2ESC). 1648 WG-RP for establishing and managing software development efforts using agile methods[EB/OL]. [2016-09-18]. http://standards.ieee.org/develop/wg/1648_WG.html.

[5] Devedzic V. Teaching agile software development: A case study[J]. IEEE Transactions on Education, 2011, 54(2): 273-278.

[6] Schwaber K, Beedle M. Agile software development with SCRUM[M]. New Jersey: Prentice Hall, 2002.

[7] 嚴悍, 苑俊旺, 邵帥, 等. 極限編程中結對編程的不良現象分析及對策[J]. 計算機教育, 2014(8): 51-53.

[8] Fowler M. Refactoring: Improving the design of existing code[M]. Boston: Addison-Wesley Longman, 2000.

(見習編輯:張 勛)

1672-5913(2017)03-0148-04

G642

南京理工大學研究生教育優秀工程項目(海外共建課程2014年第一批)。

嚴悍,男,副教授,研究方向為軟件工程與信息安全,yanhan@njust.edu.cn。

猜你喜歡
語言評價能力
消防安全四個能力
SBR改性瀝青的穩定性評價
石油瀝青(2021年4期)2021-10-14 08:50:44
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
大興學習之風 提升履職能力
人大建設(2018年6期)2018-08-16 07:23:10
讓語言描寫搖曳多姿
你的換位思考能力如何
累積動態分析下的同聲傳譯語言壓縮
抄能力
我有我語言
基于Moodle的學習評價
主站蜘蛛池模板: 97一区二区在线播放| 欧美亚洲一二三区| 日本免费一级视频| 高清无码一本到东京热| 67194亚洲无码| 99精品免费欧美成人小视频 | 69综合网| 97在线公开视频| 在线网站18禁| 凹凸国产分类在线观看| 精品国产免费观看一区| 99久久精品国产麻豆婷婷| 色精品视频| 亚洲无码91视频| 亚洲天堂精品视频| 婷婷综合缴情亚洲五月伊| 欧美a在线视频| 久久一本精品久久久ー99| 国产精品亚洲五月天高清| 国产欧美中文字幕| 手机在线国产精品| 91在线播放国产| 亚洲国产成人超福利久久精品| 国产美女自慰在线观看| 在线看片中文字幕| 国产综合亚洲欧洲区精品无码| 亚洲色精品国产一区二区三区| yjizz视频最新网站在线| 亚洲美女视频一区| 国产成人精品视频一区视频二区| 国产精品乱偷免费视频| 四虎国产精品永久一区| 日韩在线视频网| 日韩精品亚洲一区中文字幕| 日韩国产另类| 三级欧美在线| 精品久久久久久中文字幕女| 亚洲国产看片基地久久1024| 亚洲天堂精品在线观看| 国产精品成人久久| 最新国产麻豆aⅴ精品无| 午夜精品区| 国产黄色视频综合| 国产精品免费福利久久播放| 欧美综合成人| 精品一区二区三区视频免费观看| 欧美日韩国产系列在线观看| 不卡无码网| 国产一级在线播放| www.av男人.com| 一本大道视频精品人妻| 99热这里只有精品在线观看| 国产国产人成免费视频77777| 日韩专区欧美| 天天综合天天综合| 精品无码日韩国产不卡av| 国产一区二区福利| 国产美女自慰在线观看| 亚洲人成在线免费观看| 男女性色大片免费网站| 国产自产视频一区二区三区| 国内精品久久久久鸭| 国产色偷丝袜婷婷无码麻豆制服| 国产精品美女网站| 无码中文字幕乱码免费2| 国产免费自拍视频| 日韩成人在线视频| 精品国产福利在线| 国产真实乱子伦视频播放| av性天堂网| 第一区免费在线观看| 日韩高清中文字幕| 99在线视频网站| 国产成人精品三级| 婷婷丁香色| 日韩 欧美 小说 综合网 另类| 99久视频| 欧美在线视频不卡| 内射人妻无码色AV天堂| 欧美综合成人| 日韩精品视频久久| 久久精品视频亚洲|