肖祥慧 林冬梅 胡春萍
摘要:結(jié)合軟件工程實(shí)驗(yàn)教學(xué)的經(jīng)驗(yàn),提出了采用網(wǎng)絡(luò)教學(xué)平臺(tái)作為軟件工程實(shí)驗(yàn)課程的輔助手段,對(duì)軟件工程實(shí)踐課程的教學(xué)改革進(jìn)行了探索。通過(guò)網(wǎng)絡(luò)教學(xué)平臺(tái)的輔助學(xué)習(xí),可以提高學(xué)生的知識(shí)水平和實(shí)踐能力,對(duì)提高教學(xué)質(zhì)量和教學(xué)效果有很大幫助。
關(guān)鍵詞:網(wǎng)絡(luò)教學(xué);軟件工程;實(shí)驗(yàn)教學(xué)
中圖分類(lèi)號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2013)09-2194-03
1 概述
軟件工程是研究計(jì)算機(jī)軟件開(kāi)發(fā)與軟件管理的工程學(xué)科,是一門(mén)理論性和實(shí)踐性都很強(qiáng)的綜合性課程。軟件工程本身涉及到的知識(shí)內(nèi)容很廣,是將面向?qū)ο蠹夹g(shù)、程序開(kāi)發(fā)方法和數(shù)據(jù)庫(kù)原理等課程綜合的過(guò)程。通過(guò)軟件工程的學(xué)習(xí),目的是培養(yǎng)學(xué)生獨(dú)立分析和解決問(wèn)題的能力,增強(qiáng)學(xué)生實(shí)踐和動(dòng)手能力,并熟練地掌握計(jì)算機(jī)軟件的各種開(kāi)發(fā)工具。
目前的軟件工程課程,比較注重課堂教學(xué),實(shí)驗(yàn)教學(xué)學(xué)時(shí)少,任務(wù)重,包含的內(nèi)容多,如果學(xué)生之前沒(méi)有花時(shí)間預(yù)習(xí)和準(zhǔn)備實(shí)驗(yàn),沒(méi)有對(duì)整個(gè)實(shí)驗(yàn)過(guò)程作系統(tǒng)規(guī)劃,會(huì)導(dǎo)致上實(shí)驗(yàn)課時(shí)無(wú)從下手,影響學(xué)生的學(xué)習(xí)積極性和學(xué)習(xí)效果,因此科學(xué)地規(guī)劃軟件工程實(shí)驗(yàn)課程并對(duì)實(shí)驗(yàn)課程進(jìn)行教學(xué)改革是非常有必要的。該文提出了采用網(wǎng)絡(luò)教學(xué)平臺(tái)作為軟件工程實(shí)驗(yàn)課程的輔助手段,對(duì)軟件工程實(shí)踐課程的教學(xué)改革進(jìn)行了探索。利用網(wǎng)絡(luò)學(xué)習(xí)的方法,能夠在更大程度上調(diào)動(dòng)學(xué)生的學(xué)習(xí)主動(dòng)性和積極性,增強(qiáng)學(xué)習(xí)效果,更好地實(shí)現(xiàn)教學(xué)目標(biāo)
2 實(shí)驗(yàn)課程網(wǎng)站建設(shè)
近年來(lái)隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)教學(xué)模式越來(lái)越顯示出其優(yōu)越性。教學(xué)網(wǎng)站具有教學(xué)資源豐富、學(xué)習(xí)自由的特點(diǎn),網(wǎng)絡(luò)教學(xué)的模式也有利于學(xué)生自主學(xué)習(xí)能力和創(chuàng)新精神的培養(yǎng)。建立軟件工程實(shí)驗(yàn)課程網(wǎng)站的主要目的,是讓學(xué)生對(duì)所要進(jìn)行的軟件工程實(shí)驗(yàn)有整體的認(rèn)識(shí)和了解,明確實(shí)驗(yàn)任務(wù)、實(shí)驗(yàn)要求和實(shí)驗(yàn)方法,對(duì)整個(gè)實(shí)驗(yàn)過(guò)程有合理的規(guī)劃。根據(jù)軟件工程開(kāi)發(fā)的整個(gè)過(guò)程和技術(shù)要求,設(shè)置實(shí)驗(yàn)課程網(wǎng)站,主要包括以下幾個(gè)模塊:
2.1 課程資源
課程資源是涵蓋理論課和實(shí)驗(yàn)課的各種相關(guān)資源信息,主要包括課程介紹、教學(xué)大綱、實(shí)驗(yàn)大綱以及課程相關(guān)資料等。這個(gè)模塊為學(xué)生課下自主學(xué)習(xí)提供了非常有針對(duì)性的資源, 對(duì)課堂教學(xué)是一個(gè)很好的補(bǔ)充。
2.1.1 理論教學(xué)資源
課程介紹:是對(duì)課程的主要內(nèi)容、課程的特點(diǎn)、課程學(xué)習(xí)的目的和任務(wù)等多方面作一個(gè)總括性的簡(jiǎn)介方便學(xué)生對(duì)課程有一個(gè)總體的把握與了解。
教學(xué)大綱:主要包括課程教學(xué)的內(nèi)容與要求,對(duì)每章節(jié)的知識(shí)點(diǎn)、重點(diǎn)和難點(diǎn)進(jìn)行說(shuō)明, 闡述具體的教學(xué)安排和課時(shí)分配, 便于學(xué)生按照大綱的指導(dǎo)進(jìn)行學(xué)習(xí)。
教學(xué)日歷:用來(lái)描述課程的進(jìn)度安排。學(xué)生可以通過(guò)查看教學(xué)日歷, 事先預(yù)習(xí)教學(xué)內(nèi)容,使得課堂學(xué)習(xí)更有目的性和針對(duì)性,提高了教學(xué)效率。
授課教案和課件:這是學(xué)生自主學(xué)習(xí)最重要的部分,包括各章節(jié)的文字教案和多媒體教學(xué)課件。如果學(xué)生課堂上沒(méi)有完全理解授課內(nèi)容的,可以帶著問(wèn)題在課下繼續(xù)進(jìn)行自主學(xué)習(xí),能調(diào)動(dòng)學(xué)生的自主學(xué)習(xí)的積極性,提高教學(xué)效果。
預(yù)備知識(shí):列出學(xué)生已經(jīng)學(xué)習(xí)過(guò)的與軟件工程設(shè)計(jì)有關(guān)的課程目錄,如程序語(yǔ)言、數(shù)據(jù)庫(kù)、操作系統(tǒng)等,引導(dǎo)學(xué)生復(fù)習(xí)一些在軟件工程中需要涉及到的相關(guān)知識(shí)。
2.1.2 實(shí)驗(yàn)教學(xué)資源
實(shí)驗(yàn)大綱:根據(jù)課程實(shí)驗(yàn)的要求組織實(shí)驗(yàn)項(xiàng)目,編寫(xiě)實(shí)驗(yàn)大綱,主要包括各個(gè)實(shí)驗(yàn)的實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)原理、實(shí)驗(yàn)內(nèi)容和實(shí)驗(yàn)環(huán)境等。注意實(shí)驗(yàn)項(xiàng)目?jī)?nèi)容應(yīng)從簡(jiǎn)單到復(fù)雜對(duì)學(xué)生進(jìn)行引導(dǎo), 給學(xué)生留下充足的學(xué)習(xí)思考空間,引導(dǎo)學(xué)生自主學(xué)習(xí)的方式和解決問(wèn)題的方法,
課程設(shè)計(jì)要求:主要包括分組情況、任務(wù)分配、任務(wù)書(shū)的規(guī)范說(shuō)明、提交方式、打印格式和成績(jī)核定方法。
此外,還可以給出實(shí)驗(yàn)計(jì)劃表和課程設(shè)計(jì)計(jì)劃表等實(shí)驗(yàn)詳細(xì)信息,使學(xué)生能合理規(guī)劃好整個(gè)實(shí)驗(yàn)環(huán)節(jié)所要完成的任務(wù)。
2.2 項(xiàng)目任務(wù)
該模塊主要包括項(xiàng)目實(shí)例,方便學(xué)生學(xué)習(xí)和了解;建立項(xiàng)目題庫(kù),學(xué)生可以選擇項(xiàng)目,完成實(shí)驗(yàn)任務(wù)。
2.2.1 項(xiàng)目實(shí)例
教師根據(jù)學(xué)生的知識(shí)結(jié)構(gòu)和實(shí)際情況,虛擬設(shè)計(jì)一兩個(gè)小型系統(tǒng),作為項(xiàng)目實(shí)例,如停車(chē)場(chǎng)管理系統(tǒng)、借還書(shū)管理系統(tǒng)等。貫穿軟件生命周期整個(gè)過(guò)程,從問(wèn)題定義、可行性分析、需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)到調(diào)試分析和軟件測(cè)試,給出項(xiàng)目的全過(guò)程設(shè)計(jì)。
學(xué)生通過(guò)實(shí)例學(xué)習(xí),對(duì)軟件工程開(kāi)發(fā)項(xiàng)目有全面的認(rèn)識(shí)和了解,知道軟件生命周期的各個(gè)過(guò)程應(yīng)該做些什么,如何進(jìn)行可行性研究,需求分析的任務(wù)是什么,采用什么分析工具,怎樣能全面周到的做好總體設(shè)計(jì)規(guī)劃,詳細(xì)設(shè)計(jì)階段的設(shè)計(jì)說(shuō)明書(shū)的作用是什么,系統(tǒng)模塊如何劃分,程序?qū)崿F(xiàn)的方法有哪些,怎么設(shè)計(jì)軟件測(cè)試方案以及軟件維護(hù)說(shuō)明書(shū)。
2.2.2 項(xiàng)目題庫(kù)
教師可為學(xué)生準(zhǔn)備一些軟件項(xiàng)目, 如停車(chē)場(chǎng)管理系統(tǒng),在線考試系統(tǒng),圖書(shū)管理系統(tǒng),學(xué)生信息系統(tǒng),銀行卡管理系統(tǒng),教材定購(gòu)系統(tǒng),工資管理系統(tǒng),設(shè)備管理系統(tǒng)等,建立項(xiàng)目題庫(kù),每個(gè)項(xiàng)目配備相應(yīng)的項(xiàng)目任務(wù)書(shū),以便學(xué)生選擇項(xiàng)目,下載相關(guān)的項(xiàng)目任務(wù)書(shū),完成項(xiàng)目計(jì)劃。
項(xiàng)目題庫(kù)中的項(xiàng)目,要不斷更新。項(xiàng)目的來(lái)源可以根據(jù)企業(yè)的需求、也可以是教師自己的科研項(xiàng)目,要對(duì)各個(gè)項(xiàng)目進(jìn)行共同討論,決定項(xiàng)目的可行性,并根據(jù)教學(xué)要求和課程特點(diǎn),對(duì)實(shí)際項(xiàng)目進(jìn)行剪切或劃分成子項(xiàng)目,使其具有可操作性和實(shí)踐性,便于學(xué)生操作和實(shí)訓(xùn)。
2.3 軟件工具
該模塊是配置相應(yīng)的軟件工程實(shí)驗(yàn)軟件,主要提供建模工具和編程軟件的下載,便于學(xué)生完成項(xiàng)目的分析過(guò)程,實(shí)現(xiàn)系統(tǒng)功能。
2.3.1 建模工具
對(duì)幾種UML統(tǒng)一建模工具進(jìn)行簡(jiǎn)單介紹,并提供軟件下載,安裝方法和使用教程。學(xué)生可以采用不同的分析工具,建立系統(tǒng)的分析模型,并做好需求分析和系統(tǒng)設(shè)計(jì)。
主要的建模工具有Microsoft Office Visio、Rational Rose和PowerDesigner三種。Microsoft Office Visio中引進(jìn)了軟件分析設(shè)計(jì)功能到代碼生成的全部功能,可以更輕松地將流程、系統(tǒng)和復(fù)雜信息可視化、可以創(chuàng)建多種類(lèi)的圖表。Rational Rose主要是對(duì)開(kāi)發(fā)過(guò)程中的各種語(yǔ)義、模塊、對(duì)象以及流程、狀態(tài)等進(jìn)行比較好的描述,能從各個(gè)方面和角度來(lái)分析和設(shè)計(jì),對(duì)系統(tǒng)的代碼框架生成有很好的支持。PowerDesigner是一種數(shù)據(jù)庫(kù)建模工具,允許使用一種結(jié)構(gòu)化的方法有效地創(chuàng)建數(shù)據(jù)庫(kù)或數(shù)據(jù)倉(cāng)庫(kù),它還提供了直觀的符號(hào)表示,使數(shù)據(jù)庫(kù)的創(chuàng)建更加容易,并使項(xiàng)目組內(nèi)的交流和通訊標(biāo)準(zhǔn)化。
2.3.2 編程工具
給出幾種軟件開(kāi)發(fā)工具,如結(jié)構(gòu)化編程語(yǔ)言或面向?qū)ο蟮木幊誊浖–、C++、JAVA、DELPHI),以及SQL、Powerbuilder等開(kāi)發(fā)工具,并提供軟件下載和安裝方法,供學(xué)生選擇編程軟件,編寫(xiě)程序,并測(cè)試軟件。
2.4 文檔資料
該模塊主要列出整個(gè)項(xiàng)目所要提交的各類(lèi)文檔資料。此外,還應(yīng)該提供統(tǒng)一格式的實(shí)驗(yàn)報(bào)告和課程設(shè)計(jì)任務(wù)書(shū)范本,便于學(xué)生下載,并按要求填寫(xiě)內(nèi)容。
項(xiàng)目文檔:主要包括有可行性分析報(bào)告,需求規(guī)格說(shuō)明書(shū),項(xiàng)目計(jì)劃書(shū),總體設(shè)計(jì)報(bào)告,詳細(xì)設(shè)計(jì)說(shuō)明書(shū),軟件系統(tǒng)的程序代碼,軟件測(cè)試報(bào)告以及用戶使用手冊(cè)等。
規(guī)格說(shuō)明:可以給出一些規(guī)格說(shuō)明的樣例和標(biāo)準(zhǔn),學(xué)生可以使用非形式化、半形式化和形式化等方法描述需求分析規(guī)格說(shuō)明,詳細(xì)設(shè)計(jì)規(guī)格說(shuō)明,并給出系統(tǒng)各部分的設(shè)計(jì)規(guī)格說(shuō)明書(shū)。鼓勵(lì)學(xué)生學(xué)習(xí)和使用形式化的方法描述規(guī)格說(shuō)明,例如:有窮狀態(tài)機(jī)、Petri網(wǎng)以及Z語(yǔ)言等,這樣可以用數(shù)學(xué)方法研究和驗(yàn)證規(guī)格說(shuō)明是否正確,并消除二義性。
2.5成績(jī)?cè)u(píng)價(jià)
該模塊主要給出實(shí)驗(yàn)教學(xué)各階段的成績(jī)考核方式及評(píng)定標(biāo)準(zhǔn)。課程實(shí)驗(yàn)中,上機(jī)操作占課程實(shí)驗(yàn)成績(jī)的50%(含平時(shí)上機(jī)操作和考勤),課程實(shí)驗(yàn)需要提交的文檔和報(bào)告占50%。課程設(shè)計(jì)因?yàn)槭欠中〗M進(jìn)行,成績(jī)?cè)u(píng)定可以分成個(gè)人成績(jī)和小組成績(jī)兩部分,個(gè)人成績(jī)主要根據(jù)個(gè)人在小組中所分工作多少和完成工作情況來(lái)確定,小組成績(jī)則由各個(gè)小組階段成績(jī)和系統(tǒng)最終驗(yàn)收的情況來(lái)確定(如系統(tǒng)是否達(dá)到需求規(guī)格說(shuō)明中的功能性、提交的文檔是否全面和規(guī)范, 源程序編寫(xiě)是否規(guī)范、可維護(hù)性等)。
每個(gè)項(xiàng)目組都應(yīng)該進(jìn)行匯報(bào),展示自己的成果,由教師和其他同學(xué)組成評(píng)審團(tuán), 對(duì)每個(gè)項(xiàng)目組的匯報(bào)進(jìn)行評(píng)審和打分, 提出修改意見(jiàn)和建議。匯報(bào)結(jié)束后, ,教師要進(jìn)行總結(jié)點(diǎn)評(píng), 并寫(xiě)出評(píng)語(yǔ)。既要評(píng)價(jià)項(xiàng)目成果,也評(píng)價(jià)學(xué)生的表現(xiàn),幫助學(xué)生整理學(xué)習(xí)內(nèi)容, 鼓勵(lì)學(xué)生的積極性。
3 網(wǎng)絡(luò)輔助教學(xué)
建立軟件工程實(shí)驗(yàn)課程網(wǎng)絡(luò)教學(xué)平臺(tái)后,如何讓學(xué)生充分利用平臺(tái)資源進(jìn)行網(wǎng)絡(luò)學(xué)習(xí),也是必不可少的關(guān)鍵部分。整個(gè)教學(xué)實(shí)踐過(guò)程可在教師引導(dǎo)下, 學(xué)生自主管理, 分工協(xié)作, 這樣既鍛煉了學(xué)生參與項(xiàng)目管理的能力, 又訓(xùn)練了學(xué)生之間的團(tuán)隊(duì)合作精神。有了網(wǎng)絡(luò)學(xué)習(xí)平臺(tái),在理論課程學(xué)習(xí)的同時(shí),學(xué)生可以分三個(gè)階段完成軟件工程實(shí)驗(yàn)課程:
1)網(wǎng)絡(luò)學(xué)習(xí):該階段主要學(xué)習(xí)課程資源,同時(shí),學(xué)生進(jìn)行選題,分小組和分派任務(wù),進(jìn)行項(xiàng)目的可行性研究和項(xiàng)目的需求分析。
2)課程實(shí)驗(yàn):該階段主要是讓學(xué)生學(xué)習(xí)建模工具,通過(guò)使用建模工具,完成項(xiàng)目的分析過(guò)程,并進(jìn)行系統(tǒng)的詳細(xì)設(shè)計(jì),劃分系統(tǒng)的各組成模塊,給出系統(tǒng)的各部分設(shè)計(jì)規(guī)格說(shuō)明書(shū)。
3)課程設(shè)計(jì):該階段主要是根據(jù)項(xiàng)目的需求規(guī)格說(shuō)明書(shū)和系統(tǒng)設(shè)計(jì)文檔,采用合適的程序設(shè)計(jì)軟件完成對(duì)整個(gè)系統(tǒng)的代碼編寫(xiě),遵循代碼的開(kāi)發(fā)規(guī)范。設(shè)計(jì)測(cè)試用例,對(duì)系統(tǒng)進(jìn)行測(cè)試,并提交相關(guān)文檔。
成績(jī)?cè)u(píng)價(jià)部分由教師來(lái)完成,每個(gè)階段都要進(jìn)行階段性評(píng)價(jià),并根據(jù)項(xiàng)目的最終完成情況給出整體評(píng)價(jià)。要著力培養(yǎng)學(xué)生軟件工程開(kāi)發(fā)工具的應(yīng)用能力, 要求學(xué)生按規(guī)定提交項(xiàng)目要求的各種文檔,形成較為科學(xué)的綜合成績(jī)?cè)u(píng)定方法。
4 結(jié)束語(yǔ)
軟件工程實(shí)驗(yàn)課程的教學(xué)改革是軟件工程課程改革的一個(gè)重要部分,教學(xué)方法和實(shí)驗(yàn)環(huán)境是軟件工程實(shí)驗(yàn)課程改革得以實(shí)現(xiàn)的重要保障。利用網(wǎng)絡(luò)教學(xué)平臺(tái)輔助軟件工程的實(shí)驗(yàn)教學(xué), 可以實(shí)現(xiàn)資源共享,使得學(xué)生對(duì)整個(gè)實(shí)驗(yàn)教學(xué)有全面的認(rèn)識(shí)和了解,有利于調(diào)動(dòng)學(xué)生的學(xué)習(xí)興趣和主動(dòng)性,提升學(xué)生分析問(wèn)題能力和實(shí)際解決問(wèn)題的能力,對(duì)增強(qiáng)學(xué)生的項(xiàng)目管理能力和開(kāi)發(fā)能力,起到很好的作用。
參考文獻(xiàn):
[1] 張海藩.軟件工程(第3版)[M].北京:人民郵電出版社,2010.
[2] 李志民,鄭秋生,苗鳳君.軟件工程實(shí)訓(xùn)課程的建設(shè)與實(shí)踐[M].計(jì)算機(jī)教育, 2012(6): 99-102.
[3] 宋慶元,余前明,江寧.基于Web 的網(wǎng)絡(luò)教學(xué)平臺(tái)的建設(shè)與研究[M].電腦知識(shí)與技術(shù)2009(5):3642-3643.