• 
    

    
    

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

      ?

      軟件工程課程教學(xué)改革研究

      2014-09-16 13:20徐利軍等
      中國信息技術(shù)教育 2014年16期
      關(guān)鍵詞:軟件工程

      徐利軍等

      摘 要:軟件工程課程是計(jì)算機(jī)專業(yè)重要的專業(yè)基礎(chǔ)課,由于其實(shí)踐性較強(qiáng),歷來是教學(xué)的難點(diǎn)。我們基于案例化教學(xué)模式,設(shè)計(jì)并實(shí)施了一套綜合理論知識(shí)、應(yīng)用技術(shù)和項(xiàng)目實(shí)踐的教學(xué)模式。實(shí)踐表明,這種新的教學(xué)模式有利于培養(yǎng)學(xué)生的團(tuán)隊(duì)合作精神與運(yùn)用軟件工程技術(shù)和方法解決實(shí)際問題的能力。

      關(guān)鍵詞:軟件工程 實(shí)例化教學(xué) 項(xiàng)目實(shí)踐

      中圖分類號(hào):G462 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-2117(2014)16-00-02

      1 前言

      軟件工程是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。它涉及程序設(shè)計(jì)語言、數(shù)據(jù)庫、軟件開發(fā)工具、系統(tǒng)平臺(tái)、設(shè)計(jì)模式以及管理、標(biāo)準(zhǔn)、個(gè)人技能、團(tuán)隊(duì)協(xié)作和專業(yè)實(shí)踐等多方面的知識(shí)和技能。它是一門理論性和實(shí)踐性并重的重要學(xué)科。

      軟件工程課程是計(jì)算機(jī)專業(yè)重要的專業(yè)基礎(chǔ)課。通過軟件工程課程的學(xué)習(xí),學(xué)生能夠了解和掌握軟件工程的理論、技術(shù)和方法,具備作為軟件工程師所需的專業(yè)能力。由于軟件工程的課程特點(diǎn),傳統(tǒng)的教師課堂授課為主、學(xué)生被動(dòng)聽講為輔的教學(xué)模式在實(shí)踐環(huán)節(jié)上存在很大不足,軟件工程的理論和方法是從眾多軟件開發(fā)實(shí)踐中總結(jié)出來的。但是對(duì)于缺乏軟件開發(fā)實(shí)際經(jīng)驗(yàn)的本科生來說,單純地講授理論知識(shí)往往使學(xué)生感到枯燥無味且難以理解,這嚴(yán)重影響了課程的教育質(zhì)量和教學(xué)效果。近年來,部分學(xué)校采用了案例化教學(xué)的方式改革軟件工程課程教學(xué),在案例化教學(xué)中收集和總結(jié)了若干典型的軟件開發(fā)案例,將這些案例貫穿于理論知識(shí)的講解中;同時(shí)引入“做中學(xué)”教學(xué)模式,讓學(xué)生在實(shí)際的項(xiàng)目開發(fā)中進(jìn)一步理解理論知識(shí),取得了很好的教學(xué)效果。[1-4]

      我們在軟件工程的授課過程中,也引入了案例化教學(xué)模式??傮w來講,學(xué)生的反應(yīng)是積極的,不過也發(fā)現(xiàn)了一些問題。

      (1)任課教師本身缺乏使用軟件工程方法開發(fā)一個(gè)完整系統(tǒng)的經(jīng)驗(yàn),僅限于照本宣科地介紹基本原理和實(shí)際案例,不能將當(dāng)前實(shí)際案例和軟件工程方法有機(jī)地結(jié)合在一起,與實(shí)際的軟件工程實(shí)踐有明顯的差距。

      (2)大學(xué)階段的課程實(shí)踐基本以個(gè)人編程完成為主,軟件工程方法起到的作用有限。即使面對(duì)需要團(tuán)隊(duì)協(xié)作的作業(yè),也因?yàn)橐?guī)模小、從頭開發(fā)和無需維護(hù)的特點(diǎn),使得學(xué)生感覺到使用軟件工程方法作用不大,除了增加工作量外,沒有明顯的益處,無法激發(fā)他們進(jìn)一步學(xué)習(xí)的興趣。

      (3)現(xiàn)有的軟件實(shí)驗(yàn)環(huán)境偏重于提供編程工具的支持,缺少一個(gè)完整的軟件工程支持環(huán)境,缺少適合教學(xué)使用的實(shí)驗(yàn)環(huán)境和資料,學(xué)生得不到真正的鍛煉。

      2 教學(xué)改革

      針對(duì)現(xiàn)存的問題,結(jié)合ACM和IEEE聯(lián)合發(fā)布的CCSE2005的相關(guān)內(nèi)容[5],我們進(jìn)一步改革課程體系框架和教學(xué)內(nèi)容,本文將著重介紹我們在軟件工程課程教學(xué)中的經(jīng)驗(yàn)和成果。

      IEEE發(fā)布的軟件工程知識(shí)體系包括10個(gè)知識(shí)領(lǐng)域:軟件需求、軟件設(shè)計(jì)、軟件構(gòu)造、軟件測試、軟件維護(hù)、軟件配置管理、軟件工程工具和方法、軟件工程過程和軟件質(zhì)量。參考這10個(gè)領(lǐng)域知識(shí),根據(jù)教學(xué)目標(biāo),結(jié)合理論知識(shí)、軟件工具和工程實(shí)踐等方面組織整個(gè)課程內(nèi)容,在理論、應(yīng)用、實(shí)踐三個(gè)層次上建立了軟件工程的課程體系。

      理論部分以當(dāng)前流行的統(tǒng)一開發(fā)過程RUP和UML語言為核心,覆蓋IEEE發(fā)布的軟件工程知識(shí)體系。包括軟件需求、軟件設(shè)計(jì)、軟件實(shí)現(xiàn)、軟件測試、軟件演化、軟件質(zhì)量和軟件配置管理等內(nèi)容。

      應(yīng)用部分結(jié)合實(shí)際案例,覆蓋IEEE的系列軟件工程標(biāo)準(zhǔn),學(xué)習(xí)RationalRose、ClearCase、ClearQuest、JUnit、MicrosoftProject等常見軟件工程工具和環(huán)境。

      實(shí)踐部分要求學(xué)生以團(tuán)隊(duì)的方式協(xié)作開發(fā)具有一定規(guī)模的軟件系統(tǒng),并且在實(shí)踐過程中能夠熟練使用軟件工程工具。實(shí)踐部分著重培養(yǎng)學(xué)生應(yīng)用軟件工程的思想和現(xiàn)代技術(shù)解決軟件開發(fā)問題的能力。

      2.1 理論知識(shí)

      理論部分的教學(xué)仍采用教師授課為主的模式,向?qū)W生講述軟件工程的基本理論,內(nèi)容力求少而精,目的是在較短時(shí)間內(nèi)讓學(xué)生了解現(xiàn)階段最廣泛使用的軟件工程技術(shù)的理論基礎(chǔ),為下一步應(yīng)用部分的學(xué)習(xí)奠定基礎(chǔ)。在具體的授課過程中,為避免單純理論學(xué)習(xí)的枯燥性,授課內(nèi)容圍繞典型的軟件開發(fā)案例展開。學(xué)生學(xué)習(xí)的注意力和興趣是影響教學(xué)質(zhì)量的重要因素。我們使用的案例是從國內(nèi)著名的軟件開發(fā)公司得到的真實(shí)案例,學(xué)生可以完整地看到項(xiàng)目的全景,這樣既幫助學(xué)生認(rèn)識(shí)到學(xué)習(xí)課程的必要性,又調(diào)動(dòng)起學(xué)生的學(xué)習(xí)興趣。

      2.2 應(yīng)用技術(shù)

      軟件工程與其他計(jì)算機(jī)課程不同,學(xué)生需要面對(duì)的不只是單一的軟件工具,而是一組軟件工具組成的軟件支持環(huán)境。為了增強(qiáng)軟件工程課的真實(shí)性,我們選用了一組業(yè)內(nèi)流行的軟件工程工具,營造一個(gè)適合軟件工程課程項(xiàng)目實(shí)踐的軟件工程環(huán)境。使用RationalRose完成需求分析與系統(tǒng)分析和設(shè)計(jì),使用ClearCase完成源代碼管理,使用ClearQuest完成缺陷管理,使用MicrosoftProject完成項(xiàng)目資源調(diào)度等??紤]到相關(guān)軟件工具的復(fù)雜性,為避免學(xué)生陷入單純學(xué)習(xí)軟件功能的誤區(qū),我們堅(jiān)持“用中學(xué)”的方針,不要求學(xué)生面面俱到掌握軟件功能,而是從實(shí)用角度出發(fā),以完成項(xiàng)目為目的,掌握軟件的常用功能。我們會(huì)首先演示如何使用相關(guān)軟件完成典型案例,然后要求學(xué)生模仿示例,自行創(chuàng)作設(shè)計(jì)。

      2.3 項(xiàng)目實(shí)踐

      大學(xué)階段,大部分計(jì)算機(jī)課程實(shí)踐通過學(xué)生的獨(dú)立編程即可完成,軟件工程課程實(shí)踐則不同,軟件工程方法和技術(shù)的作用必須在完成項(xiàng)目的過程中通過團(tuán)隊(duì)合作才能體現(xiàn)出來。

      我們剛剛開始教這門課的時(shí)候,為了便于管理,選擇的項(xiàng)目偏小,一般適合3~5人完成。不過通過幾學(xué)期的實(shí)踐,發(fā)現(xiàn)效果不佳。因?yàn)橐?guī)模不大,通常只會(huì)有1~2人來承擔(dān)主要開發(fā)工作,其他學(xué)生通常只起到輔助作用。在開發(fā)過程中,由于核心開發(fā)人員少,口頭溝通遠(yuǎn)要比書面溝通簡單有效,沒有認(rèn)真準(zhǔn)備項(xiàng)目文檔的動(dòng)力;而且項(xiàng)目是從頭做起,不需要利用以前文檔來了解項(xiàng)目情況,無法體會(huì)到項(xiàng)目文檔的重要性。在此種情形下,學(xué)生感覺到引入軟件工程只是額外增加了工作負(fù)擔(dān),并沒有明顯的益處。endprint

      為了更好地幫助學(xué)生認(rèn)識(shí)到這門課的重要性,我們在實(shí)踐階段做了若干改進(jìn)。

      (1)有意識(shí)地?cái)U(kuò)大了項(xiàng)目的規(guī)模,開發(fā)團(tuán)隊(duì)的人數(shù)也相應(yīng)增加,通常開發(fā)團(tuán)隊(duì)人數(shù)在10人左右。人數(shù)的增多使得單純的口頭交流很難保證項(xiàng)目的順利進(jìn)行,從而促使學(xué)生撰寫項(xiàng)目文檔。

      (2)分組時(shí),根據(jù)學(xué)生的能力和水平,明確學(xué)習(xí)任務(wù),進(jìn)行合理有效的分工。在一個(gè)項(xiàng)目組內(nèi),應(yīng)該有項(xiàng)目經(jīng)理、系統(tǒng)分析師、軟件工程師、配置管理員、測試工程師等角色。同一名學(xué)生在不同的開發(fā)階段可能會(huì)承擔(dān)不同的角色。

      (3)項(xiàng)目開發(fā)也分為兩個(gè)階段,第一階段完成后,我們會(huì)再提出一份更新的需求,要求在第一階段的成果上繼續(xù)開發(fā)。項(xiàng)目組的成員也不是一成不變的,第二階段時(shí)每個(gè)項(xiàng)目組至少更換50%的成員。

      在項(xiàng)目開發(fā)過程中,我們會(huì)監(jiān)控項(xiàng)目的開發(fā)過程,參與項(xiàng)目階段成果的評(píng)審工作。項(xiàng)目開發(fā)過程盡可能模擬真實(shí)軟件企業(yè)的開發(fā)過程,最終使學(xué)生完成需求分析、設(shè)計(jì)、代碼編寫、測試、部署全過程,培養(yǎng)學(xué)生的合作意識(shí)、責(zé)任感和集體榮譽(yù)感。學(xué)生在開發(fā)過程中遇到問題,我們也不會(huì)直接給出答案,會(huì)建議他們自行討論來解決,提高他們的溝通交際能力,培養(yǎng)其團(tuán)隊(duì)合作精神。

      在教學(xué)過程中,理論部分、應(yīng)用部分和實(shí)踐部分并不是相互獨(dú)立,而是有機(jī)地結(jié)合在一起。我們在該課程教學(xué)初期,首先給學(xué)生若干項(xiàng)目課題進(jìn)行選擇,題目選定后,以自主結(jié)合的方式完成分組。這樣做可以有效地增強(qiáng)學(xué)生學(xué)習(xí)時(shí)的目的性。在重要章節(jié)的教學(xué)過程中,遵循先理論知識(shí)、再應(yīng)用技術(shù)、最后實(shí)踐部分的次序進(jìn)行。完成某章節(jié)的學(xué)習(xí)后,就應(yīng)該在規(guī)定時(shí)間內(nèi)提交項(xiàng)目相應(yīng)階段的工作成果。例如,需求分析章節(jié)的理論知識(shí)學(xué)習(xí)安排在第2周、應(yīng)用技術(shù)部分安排在第3周、需求分析說明書要求在第5周提交;系統(tǒng)分析的理論知識(shí)學(xué)習(xí)安排在第4周、應(yīng)用技術(shù)部分安排在第5周、系統(tǒng)分析報(bào)告要求在第7周提交。我們會(huì)及時(shí)對(duì)每一部分的工作成果進(jìn)行評(píng)講,指出缺陷和不足,保障項(xiàng)目開發(fā)的順利進(jìn)行。在期末考試結(jié)束之前,結(jié)束第一階段的開發(fā)工作。隨后,我們會(huì)給出項(xiàng)目的新增需求,并調(diào)整項(xiàng)目成員,開始第二階段的開發(fā)工作。由于第二階段是在所有課程考試結(jié)束之后,學(xué)生有條件在固定地點(diǎn)集中上機(jī),因此第二階段的工作將盡可能模仿軟件公司的開發(fā)模式。首先,項(xiàng)目經(jīng)理必須和組員共同討論出一份可行的項(xiàng)目開發(fā)計(jì)劃。我們將根據(jù)該計(jì)劃監(jiān)控項(xiàng)目進(jìn)展過程,并在重要節(jié)點(diǎn)抽查該項(xiàng)目的進(jìn)展情況。項(xiàng)目計(jì)劃的重大變化,必須及時(shí)更新項(xiàng)目開發(fā)計(jì)劃。其次,在項(xiàng)目進(jìn)展過程中,每個(gè)開發(fā)階段的工作成果都必須經(jīng)過評(píng)審。不評(píng)審或者評(píng)審不合格,不可以開始下一階段的工作。最后,每個(gè)項(xiàng)目成員必須每天提交工作進(jìn)展報(bào)告,內(nèi)部會(huì)議也要有會(huì)議記錄。所有這些項(xiàng)目管理相關(guān)文檔和項(xiàng)目本身的文檔都需要在項(xiàng)目結(jié)束時(shí)一并提交。評(píng)定成績時(shí)結(jié)果和過程并重,項(xiàng)目管理相關(guān)文檔是過程的重要體現(xiàn)。

      3 考核方法和教學(xué)效果分析

      為突出實(shí)踐環(huán)節(jié)的重要性,我們將項(xiàng)目實(shí)踐部分的考核比例增加至總成績的50%,即成績標(biāo)準(zhǔn)為項(xiàng)目實(shí)踐成績(50%)+筆試成績(30%)+平時(shí)成績(20%)。其中第一階段的項(xiàng)目實(shí)踐成績占20%,第二階段占30%。在對(duì)學(xué)生的實(shí)踐環(huán)節(jié)考核中,我們更側(cè)重于對(duì)學(xué)生的實(shí)踐操作能力、文檔編寫能力、團(tuán)隊(duì)合作和溝通能力的考核。為避免渾水摸魚,在評(píng)定成績時(shí),根據(jù)貢獻(xiàn)不同,組中的不同成員會(huì)有不同的權(quán)重,每個(gè)學(xué)生的最終成績是團(tuán)隊(duì)成績和權(quán)重的乘積。采用新的考核方法后,極大地調(diào)動(dòng)了學(xué)生參與項(xiàng)目實(shí)踐的熱情,取得了良好的學(xué)習(xí)效果。在隨后的畢業(yè)設(shè)計(jì)和程序設(shè)計(jì)比賽中學(xué)生都體現(xiàn)出較強(qiáng)的團(tuán)隊(duì)開發(fā)能力。

      4 結(jié)語

      軟件工程是一門理論和實(shí)踐并重的課程,只有加強(qiáng)實(shí)踐環(huán)節(jié)的訓(xùn)練,理論知識(shí)才能得到有效鞏固。我們在教學(xué)過程中,始終把項(xiàng)目實(shí)踐放在突出的地位,通過增大項(xiàng)目規(guī)模和引入兩階段項(xiàng)目開發(fā),讓學(xué)生主動(dòng)認(rèn)識(shí)到軟件工程課程的重要作用。實(shí)踐證明,現(xiàn)階段軟件工程的教學(xué)改革工作,有效地提高了學(xué)生的學(xué)習(xí)興趣,增強(qiáng)了學(xué)生使用軟件工程方法和技術(shù)解決實(shí)際問題的能力,培養(yǎng)了學(xué)生團(tuán)隊(duì)合作精神。下一步我們準(zhǔn)備通過“校企合作”,增強(qiáng)項(xiàng)目實(shí)踐的真實(shí)性,使軟件工程的項(xiàng)目實(shí)踐更加合理、完善。

      (上海海洋大學(xué)信息學(xué)院,上海201306)

      參考文獻(xiàn):

      [1]張劍波,方芳,袁國斌.軟件工程專業(yè)實(shí)踐教學(xué)體系改革[J].計(jì)算機(jī)教育,2013(12):37-41.

      [2]王衛(wèi)紅,楊良懷,江領(lǐng).軟件工程優(yōu)勢專業(yè)的建設(shè)與發(fā)展[J].計(jì)算機(jī)教育,2013(10):1-4,9.

      [3]湯淼.軟件工程專業(yè)“項(xiàng)目驅(qū)動(dòng)”實(shí)驗(yàn)教學(xué)模式研究[J].實(shí)驗(yàn)技術(shù)與管理,2012(4):267-271.

      [4]吳建斌,陳中育,葉榮華.軟件工程類課程教學(xué)模式改革探索[J].中國信息技術(shù)教育,2013(5):119-121.

      [5]IEEE-CS/ACMJointTaskForceonComputingCurricula,SoftwareEngineering2004Volume[R].2004.endprint

      猜你喜歡
      軟件工程
      基于課程群的軟件工程專業(yè)三位一體教學(xué)模式探索
      關(guān)于《軟件工程》教學(xué)改革的研究
      計(jì)算機(jī)技術(shù)在機(jī)械能源中的應(yīng)用
      依托工作室的軟件工程實(shí)踐教學(xué)研究
      高職軟件工程課程改革研究
      軟件工程應(yīng)用型課程建設(shè)與實(shí)踐
      應(yīng)用瀑布模型的MOOC制作方法
      融合APTECH體系的軟件產(chǎn)業(yè)人才培養(yǎng)探究
      基于工程教育認(rèn)證的《軟件工程》課程教學(xué)質(zhì)量建設(shè)研究 
      關(guān)于如何創(chuàng)新和完善計(jì)算機(jī)軟件工程管理的探討
      墨江| 锦屏县| 诸暨市| 胶州市| 清涧县| 沁源县| 昌黎县| 永善县| 沈丘县| 鸡西市| 岱山县| 凯里市| 正安县| 五峰| 交城县| 通州市| 汝阳县| 綦江县| 仙桃市| 蓬莱市| 武功县| 舞阳县| 荃湾区| 十堰市| 天台县| 来凤县| 冕宁县| 东阳市| 美姑县| 南投县| 嘉荫县| 伊春市| 都兰县| 三台县| 兴海县| 琼海市| 金昌市| 红原县| 即墨市| 于都县| 广南县|