亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于敏捷開發(fā)模式的“GIS軟件工程”實驗教學

        2014-04-08 21:10:27張志敏杜景龍連達軍
        實驗室研究與探索 2014年11期
        關鍵詞:單元測試編程實驗教學

        張志敏, 杜景龍, 連達軍

        (蘇州科技學院 環(huán)境科學與工程學院,江蘇 蘇州 215009)

        0 引 言

        “GIS軟件工程”作為高校地理信息系統(tǒng)專業(yè)的主干課,是理論與實踐并重的一門年輕課程[1-4]。實驗教學是重要環(huán)節(jié),它對于掌握GIS理論課所講授的基本內容、提高學生的實際動手能力、培養(yǎng)學生的創(chuàng)新思維和團隊合作精神,都具有十分重要的意義。

        目前“GIS軟件工程”實驗教學主要是按照傳統(tǒng)的軟件工程實驗方法,以軟件生命周期的瀑布模式進行設計,沒有將GIS軟件的特點與實驗方法進行有效結合[5-7],學生普遍反映枯燥乏味,效果不好。因此,如何改進“GIS軟件工程”的實驗教學,提高實驗環(huán)節(jié)的效果是培養(yǎng)高素質合格GIS軟件人才的迫切要求。

        1 “GIS軟件工程”課程的特點

        “GIS軟件工程”是一門工程實踐性較強的課程,目標是讓學生掌握GIS軟件的基本思想、工具、技術、過程和方法,為后續(xù)的專業(yè)知識學習以及今后從事GIS軟件項目開發(fā)與管理奠定良好的基礎[8-9]。本課程學生學習起來感到較抽象枯燥,感覺無用,教師講授起來也比較困難,難以控制。其主要原因有:

        (1) 課程的復雜性強。“GIS軟件工程”是建立在復雜的空間數(shù)據(jù)處理和專業(yè)的GIS組件二次開發(fā)基礎之上的,需要學生具有程序設計、空間數(shù)據(jù)處理、數(shù)據(jù)庫開發(fā)、網(wǎng)絡通信和開發(fā)測試工具等多方面技能和綜合素質。而學生知識面單一,而且沒有系統(tǒng)化的訓練。

        (2) 學生主動性不足,動手能力不強。學生對GIS工程實踐沒有感性認識,難以理解所講述的實踐經(jīng)驗和知識,學習的動力和主動性不足,認為沒有什么用。再加上授課對象是大二的學生,學過的專業(yè)知識和開發(fā)工具很有限,動手能力不強。

        (3) 教師工程經(jīng)驗不足,缺乏有效的指導。本課程的很多授課教師是剛從學校畢業(yè)就從事教學的,沒有實際的GIS工程項目經(jīng)驗,對真正有效的工程實踐缺乏了解,因此感覺本課程較難講授,難以駕馭。

        (4) 實驗教學學生獨立完成,沒有考慮團隊合作和溝通。在實驗教學過程中,學生都是根據(jù)實驗指導書按部就班地獨立完成,而忽視了溝通、交互與團隊合作,學生的積極性沒有調動起來。

        根據(jù)與學生訪談和畢業(yè)論文完成過程中的情況來看,很多同學并沒有真正理解“GIS軟件工程”的思想,更沒有在實際軟件項目開發(fā)中很好地運用所學的軟件工程的方法和技術。應該對實驗教學內容進行改進,通過引入敏捷開發(fā)模式,并結合GIS案例教學等教學手段和教學方法,來培養(yǎng)學生實施GIS軟件系統(tǒng)的工作能力、實際操作能力以及合作溝通能力。

        2 敏捷開發(fā)法

        在傳統(tǒng)軟件工程理論飽受爭議、冷落的今天,軟件開發(fā)領域中的另一種思想?yún)s給人以如沐春風的感覺,正以勢如破竹之勢迅速燎原到軟件開發(fā)者陣營中,它就是敏捷開發(fā)[10]。在2001年召開的研討軟件過程未來發(fā)展趨勢的一次會議上,一批業(yè)界專家聚集在一起概括出一些可讓軟件開發(fā)團隊具有快速工作和響應變化能力的價值觀和原則,這就是敏捷聯(lián)盟的誕生。他們提出展示他們價值觀的敏捷聯(lián)盟宣言。內容如下:

        “我們正在通過親身實踐以及幫助他人實踐,揭示更好的軟件開發(fā)方法。通過這項工作我們認為:人和交互重于過程和工具;可以工作的軟件重于面面俱到的文檔;客戶的合作重于合同談判;隨時應對變化重于遵循計劃。雖然右項也有其價值。但是我們認為左項更加重要?!盵11]

        敏捷方法強調應加強開發(fā)人員之間的交互,加強與客戶的交互,注重有可工作的軟件和完善、不過分的文檔,積極、快速應對客戶的需求變化,而不是回避。

        極限編程(Extreme Programming,XP)是敏捷軟件開發(fā)中最富有成效的方法之一[12]。極限編程是大師級人物Kent Beck于1998 年首先倡導的,它是一個輕量級的、靈巧的軟件開發(fā)方法;同時它也是一個非常嚴謹和周密的方法。它的基礎和價值觀是交流、簡單、反饋和勇氣;即,任何一個軟件項目都可以從四個方面入手進行改善:加強交流;從簡單做起;尋求反饋;勇于實事求是。極限編程是一種近螺旋式的開發(fā)方法,它將復雜的開發(fā)過程分解為一個個相對比較簡單的小周期;通過積極的交流、反饋以及其他一系列的方法,開發(fā)人員和客戶可以非常清楚開發(fā)進度、變化、待解決的問題和潛在的困難等,并根據(jù)實際情況及時地調整開發(fā)過程。極限編程的核心是結對編程,它的核心精髓就在于小組內(通常為2人)成員緊密合作,時刻交流。采用極限編程進行合作的學生能更有效地交流,相互學習和傳遞經(jīng)驗;能提供更好的設計質量和代碼質量;能訓練更強的問題解決能力。同時,采取結對編程,以強帶弱,學生更容易樹立信心并能從學習中獲得更多的友誼、快樂和滿足感。

        3 實驗教學組織及實施過程

        3.1 組織與實施策略

        通過分析“GIS軟件工程”的課程特點、敏捷開發(fā)的核心思想以及極限編程的有效實踐,在“GIS軟件工程”課程實驗教學中引入敏捷方法有助于提高學生對GIS軟件工程關鍵性技術的全過程實踐與應用,理解軟件需求與軟件測試、開發(fā)的緊密關系,掌握響應客戶需求變化、結對編程、測試驅動、重構等方面的技術。因此,在“GIS軟件工程”課程中以案例驅動的方式講授應用敏捷開發(fā)[13-14]。在實驗教學中,教師組織學生以分組的形式完成規(guī)定題目系統(tǒng)的敏捷開發(fā),并全程指導應用結對編程、測試驅動、重構、持續(xù)集成等敏捷方法,鼓勵并促進小組成員之間的溝通與合作[15-16]。

        3.2 實施過程

        (1) 案例選擇及學習。由于實驗教學環(huán)節(jié)的時間限制,一般指定學生較熟悉的應用型GIS系統(tǒng)進行設計與開發(fā),這樣學生可以騰出更多的時間與精力,來體會和實踐敏捷開發(fā)的過程。因此就選擇像校園地理信息系統(tǒng)、城市旅游地理信息系統(tǒng)、城市交通地理信息系統(tǒng)等案例,業(yè)務功能比較直觀,和學生日常生活聯(lián)系也比較緊密。

        (2) 構建敏捷開發(fā)實驗環(huán)境。將現(xiàn)有的實驗設施稍做調整,使工作臺和計算機的擺放便于兩名搭檔之間和各組搭檔之間高效率的交流,并配備白板以便于展開更充分的討論。參加實驗的人都將擔任一個角色(項目經(jīng)理、客戶、開發(fā)人員、測試人員等),所有的人都在同一個開放的開發(fā)環(huán)境中工作。教師扮演“客戶”的角色全程指導項目開發(fā),選擇一名組織溝通能力比較強的學生擔任項目經(jīng)理負責項目進度和資源控制,學生按照自愿原則每兩個同學結成編程小組,再選擇兩名同學組成測試組人員負責驗收測試用例的編寫和管理。

        (3) 需求分析與管理。教師在整個實驗過程中全程參與和指導。教師和學生一起,把各種需求變成一個個小的用戶故事(User Story),例如“按照名稱查詢并在地圖上定位公交站點”,這些模塊又會根據(jù)實際情況被組合在一起或者被分解成更小的模塊,它們都被記錄在一些故事卡(Story Card)上,之后分別被學生在各個小的迭代中(Iteration,通常是1周一次實驗課)實現(xiàn);教師根據(jù)每個模塊的重要程度來指定它們的優(yōu)先級,學生要做的是確定每個需求模塊的開發(fā)風險,風險高的(通常是因為缺乏類似的經(jīng)驗)需求模塊將被優(yōu)先研究、探索和開發(fā),經(jīng)過學生和教師分別從不同的角度評估每個模塊后,它們被安排在不同的開發(fā)周期里,教師將得到一個盡可能準確的開發(fā)計劃;最后,教師指導測試組學生為每個需求模塊指定驗收測試(功能測試)。

        (4) 基于測試驅動的設計。從具體開發(fā)設計的角度來看,極限編程過程是一個個基于測試驅動的開發(fā)周期,諸如計劃和設計等外層的過程都是圍繞這些展開的。每個開發(fā)周期(1周一次的實驗課)都有很多相應的單元測試。剛開始,因為什么都沒有實現(xiàn),所以所有的單元測試都是失敗的;隨著一個個小的需求模塊的完成,通過的單元測試也越來越多。通過這種方式,教師和學生都很容易檢驗,是否完成了既定的開發(fā)任務。另外,通過設計走查、代碼走查以及重構來優(yōu)化設計;在這些過程中不斷運行單元測試和功能測試,可以保證經(jīng)過重整和優(yōu)化后的系統(tǒng)仍然符合所有需求。

        (5) 結對編程。2個學生結對坐在同一屏幕前,使用同一臺計算機進行編程開發(fā)。所有的開發(fā)人員寫程序和重構程序的時候,都要嚴格遵守編程規(guī)范。任何人都可以修改其他人寫的程序,修改后要確定新程序能通過單元測試。結對編程的好處是,1個人編寫代碼時另1個人在思考,思考者的頭腦中保持總體概念。如果編碼者遇到困難,他們就交換位置。如果2個人都遇到困難,他們的討論可能被在這個區(qū)域工作的其他人聽到,可能給出幫助。這種結對方式,使事情順暢、有章可循。也許更重要的是,他能使程序設計更具有社交性和娛樂性。

        (6) 測試。極限編程要求學生開始寫程序之前先寫單元測試。學生應該經(jīng)常把開發(fā)好的模塊整合到一起,每次整合后都要運行單元測試;做任何的代碼走查和修改,都要運行單元測試;發(fā)現(xiàn)了BUG,就要增加相應的測試。除了單元測試之外,還有集成測試,功能測試、壓力測試和系統(tǒng)測試等。所有這些測試,是極限編程開發(fā)過程中最重要的文檔之一,是最終交付內容。

        (7) 結果評審。在實驗結束時學生提交項目報告和進行項目設計答辯,對其取得的學習和開發(fā)的成果進行評估,鼓勵學生撰寫科技小論文,整理發(fā)表。對有進一步開展研究興趣的學生,組織他們完善其應用開發(fā)設計作品,參加全國的GIS高校學生開發(fā)大賽。最后,教師要對小組的表現(xiàn)進行總結點評,幫助學生整理敏捷開發(fā)過程中的技術內容,鼓勵積極性,但也要適當?shù)刂赋鱿到y(tǒng)開發(fā)中的不足。

        4 結 語

        引入敏捷開發(fā)方法后,學生普遍反映能夠較好地理解并掌握GIS軟件工程的開發(fā)理論和方法。敏捷開發(fā)模式對于教師的要求比較高,首先,要求教師應當能夠靈活地應用敏捷開發(fā)的思想,其次,要求教師能夠正確地指導學生。采用敏捷開發(fā)模式的GIS實驗教學方案,其主要特色可以歸納為:

        (1) 通過引入敏捷開發(fā)模式能降低學生開發(fā)一個實用GIS軟件系統(tǒng)的難度,使學生能在開發(fā)實用系統(tǒng)的同時自覺應用軟件工程思想,包括運用敏捷開發(fā)的方法來分析問題和解決問題,從而激發(fā)了學生的學習熱情,增強了學生勇于實踐的信心。

        (2) 采用案例教學法,學生通過案例操作得到具體的體現(xiàn)和理解,使學生在深入理解案例的基礎上能效仿該案例,運用其中的技術來開發(fā)新系統(tǒng)。

        (3) 學生通過參與并在完成小組任務和實驗的過程中,掌握了極限編程的主要實踐,鍛煉了自學能力和團隊合作意識,提高了動手解決實際問題的能力。

        總之,敏捷開發(fā)模式在“GIS軟件工程”教學中是一種新的嘗試,如何有效地在實驗教學中深入應用敏捷開發(fā)思想將是筆者下一步探索的重點。

        [1] 孫亞琴,張海榮. GIS軟件工程課程教學實踐與探討[J]. 測繪通報,2011(5):91-93.

        SUN Ya-qin,ZHANG Hai-rong. Teaching Practice and Study for Course of GIS Software Engineering[J]. Bulletin of Surveying and Mapping,2011(5):91-93.

        [2] 田 雨,鄭文華,盧秀山. “地理信息系統(tǒng)GIS”課程實驗教學體系改革[J]. 實驗室研究與探索,2006(11):1426-1428.

        TIAN Yu,ZHENG Wen-hua,LU Xiu-shan. The Experimental Teaching System Reform of Geographic Information System Course[J]. Research and Exploration in Laboratory,2006(11):1426-1428.

        [3] 湯國安,周 衛(wèi). “地理信息系統(tǒng)”課程的設計與實踐[J]. 地球信息科學,2005(2):65-69.

        TANG Guo-an,ZHOU Wei. Exploration and Practice for the Construction of Advanced GIS Course[J]. Geo-information Science,2005(2):65-69.

        [4] 吳信才. 地理信息系統(tǒng)設計與實現(xiàn)[M].北京:電子工業(yè)出版社,2009.

        [5] 焦東來,楊立君,王得玉. 《GIS軟件工程》實驗模式研究[J]. 現(xiàn)代計算機(專業(yè)版),2011,24:32-34.

        JIAO Dong-lai,YANG Li-jun,WANG De-yu. Research on the Experiment Pattern in GIS Software Engineering[J]. Modern Computer,2011,24:32-34.

        [6] 李華蓉. 工程驅動下的GIS實驗教學改革[J].實驗室研究與探索,2010(1):120-122,167.

        LI Hua-rong. The Reform of Geographic Information System Experimental Teaching System Based on Engineering [J].Research and Exploration in Laboratory,2010(1):120-122,167.

        [7] 孔維華,曲國慶. 《地理信息系統(tǒng)》課程教學改革研究[J]. 測繪科學,2006(6):167-168.

        KONG Wei-hua,QU Guo-qing. Research on teaching reform of Geographic Information System course[J]. Science of Surveying and Mapping,2006(6):167-168.

        [8] 陳 昊,明 仲. 在軟件工程實驗教學中引入敏捷方法的探索[J]. 計算機教育,2008,24:46-47.

        Chen Hao,Ming Zhong.Research on Introducing the Agile Methods in the Experimental Teaching of Software Engineering[J].Computer Education,2008,24:46-47.

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

        GUAN Lin-ting,GU Shen-ming. Software Engineering Teaching Research Based On Agile Software Development[J]. Computer Era,2009(8):45-46,49.

        [10] 李中華,陳建國,倪明濤. 敏捷開發(fā)模式在本科層次教學中的應用探索[J]. 科技視界,2012,17:26-28.

        Li Zhong-hua,Chen Jian-guo,Ni Ming-tao.Research on Application of Agile Methods on Undergraduate Teaching[J]. Science & Technology Vision,2012,17:26-28.

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

        [12] Kent Beck. 解析極限編程——擁抱變化[M].唐東銘譯.北京:人民郵電出版社,2002.

        [13] 劉國棟,王政霞. 案例教學法在GIS原理教學中的應用與實踐[J]. 礦山測量,2011(3):90-92.

        Liu Guo-dong,Wang Zheng-xia. Practice and Application of Case Teaching in Geographic Information System Course[J]. Mine Surveying,2011(3):90-92.

        [14] 張潤蓮,張向利,葉 進.案例教學法及其運用[J].桂林電子工業(yè)學院學報,2004(4):102-105.

        ZHANG Run-lian,ZHANG Xiang-li,YE Jin.Case Teaching Method and its Application [J].Journal of Guilin University of Electronic Technology,2004(4):102-105.

        [15] 蔡 勇,楊海中. 軟件工程實驗教學體系的探討[J].實驗室研究與探索,2008(2):49-51+55.

        CAI Yong,YONG Hai-zhong. On the Experimental Teaching System of Software Engineering[J]. Research and Exploration in Laboratory,2008(2):49-51+55.

        [16] 舒蘭英.以小組合作學習模式進行軟件工程教學[J].四川師范學院學報(自然科學版),2003(1):138-140.

        SHU Lan-ying.Teaching Software Engineering by Group Learning Model[J].Journal of China West Normal University(Natural Sciences),2003(1):138-140.

        猜你喜歡
        單元測試編程實驗教學
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        小議初中化學演示實驗教學
        甘肅教育(2020年4期)2020-09-11 07:42:36
        電容器的實驗教學
        物理之友(2020年12期)2020-07-16 05:39:20
        對初中化學實驗教學的認識和體會
        甘肅教育(2020年8期)2020-06-11 06:10:04
        幾何體在高中數(shù)學實驗教學中的應用
        一年級上冊第五單元測試
        一年級上冊一、二單元測試
        亚洲国产av一区二区三区四区| 亚洲国产精品久久九色| 久久国产成人午夜av影院| 精品免费一区二区三区在| 午夜日本理论片最新片| 高清不卡日本v二区在线| 中文字幕亚洲无线码在线一区| 中字幕人妻一区二区三区 | caoporon国产超碰公开| 亚洲视频在线免费观看一区二区| 中文字幕亚洲视频一区| 国产精久久一区二区三区 | 亚洲国产一区二区三区亚瑟| 淫妇日韩中文字幕在线| 久久婷婷国产五月综合色| 麻豆视频av在线观看| 激情综合色综合啪啪开心| 久久er99热精品一区二区| 91精品啪在线观看国产18| 日韩av在线不卡一二三区| 一区二区三区午夜视频在线| 男人女人做爽爽18禁网站| 亚洲欧美日韩一区二区三区在线 | 极品少妇被猛的白浆直喷白浆 | 无码一区二区三区不卡AV| 日本熟妇视频在线中出| 久久精品国产色蜜蜜麻豆国语版| 特级精品毛片免费观看| 人妻无码人妻有码中文字幕| 无码一区二区丝袜| 日韩女优视频网站一区二区三区 | 亚洲国产精品久久精品| 东京无码熟妇人妻av在线网址| 国产精品久久久久孕妇| 久久久国产精品三级av| 国产成人一区二区三区影院| 亚洲国产一二三精品无码| 国产精品亚洲综合色区韩国| 亚洲va成无码人在线观看| 久久久亚洲av成人乱码| 日韩亚洲中文有码视频|