軟件工程設(shè)計教學(xué)改革研究

時間:2022-02-24 09:00:30

導(dǎo)語:軟件工程設(shè)計教學(xué)改革研究一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

軟件工程設(shè)計教學(xué)改革研究

【摘要】針對用人單位對軟件的人才需求,以軟件工程專業(yè)模塊化課程體系為研究對象,提出了面向?qū)ο蟪绦蛟O(shè)計課程體系及教學(xué)方法改革。研究如何將本專業(yè)其它課程融入其中,整合教學(xué)內(nèi)容。根據(jù)不同的教學(xué)內(nèi)容,探索靈活的教學(xué)方法,并提出實踐教學(xué)方法的改革思想,以提高面向?qū)ο蟪绦蛟O(shè)計的教學(xué)質(zhì)量。

【關(guān)鍵詞】面向?qū)ο蟪绦蛟O(shè)計;Java;課程體系;教學(xué)改革

0引言

Java是新一代面向?qū)ο缶幊陶Z言。由于它的優(yōu)點在不斷發(fā)展,現(xiàn)已成為目前使用最廣泛和最卓越的的面向?qū)ο蟪绦蛟O(shè)計語言之一,從桌面辦公的應(yīng)用軟件到企業(yè)級大型復(fù)雜的應(yīng)用軟件,再到小型移動設(shè)備的嵌入軟件,因此此類人才的市場需求與日俱增,一方面人才需求缺口很大,一方面企業(yè)很難招聘到合格的Java軟件工程師。其主要原因體現(xiàn)在以下幾方面。(1)課程內(nèi)容孤立:教學(xué)內(nèi)容和其它課程知識點的缺乏融合、滲透。(2)教學(xué)方法單調(diào):老師只是單純講授每節(jié)課的知識點。很難激發(fā)學(xué)生學(xué)習(xí)興趣。(3)實踐教學(xué)滯后:實踐項目和實踐教學(xué)方法滯后,沒有完善的實踐教學(xué)環(huán)節(jié)。(4)學(xué)習(xí)方法被動:學(xué)生聽完教師講完課,被動地根據(jù)實驗項目做該節(jié)單元實驗。本文結(jié)合多年的Java教學(xué)經(jīng)驗和教學(xué)過程中體會,以軟件工程專業(yè)模塊化課程體系為研究對象較,找出面向?qū)ο缶幊毯推渌n程模塊的結(jié)合點整合Java教學(xué)內(nèi)容,探索面向?qū)ο蟪绦蛟O(shè)計的新教學(xué)方法和教學(xué)手段的改革思想,引導(dǎo)學(xué)生自主學(xué)習(xí)意識,提升授課的效果。

1挖掘軟件課程間的結(jié)合點,整合教學(xué)內(nèi)容

在整合教學(xué)內(nèi)容時,一方面以軟件工程專業(yè)模塊化課程體系為研究對象,探討本專業(yè)各課程特點,挖掘Java與本專業(yè)其他課程教學(xué)內(nèi)容的結(jié)合點,另一方面將新技術(shù)、新知識融入其中,注意保持與Java技術(shù)的發(fā)展同步。java教學(xué)內(nèi)容可分為四部分:基礎(chǔ)知識(Java語法、數(shù)組字符串、工具類)、面向?qū)ο螅嫦驅(qū)ο蠓治龇椒ā⒚嫦驅(qū)ο笤O(shè)計方法、面向?qū)ο筇卣鳎┗揪幊碳夹g(shù)(多線程技術(shù)、異常處理機制、Applet應(yīng)用編程、圖形用戶界面設(shè)計、輸入輸處流)綜合應(yīng)用技術(shù)(網(wǎng)絡(luò)編程、數(shù)據(jù)庫編程、多媒體編程等),具體如圖1所示。如講解包、集合和工具類的使用時,可以集合數(shù)據(jù)結(jié)構(gòu)的線性表、棧、隊列、二叉樹例子。講解Java線程生命周期、線程同步、線程死鎖時,以操作系統(tǒng)的進(jìn)程管理為例。講解String類的使用時,可重點講解字符串的各種操作,為后續(xù)的編譯原理中詞法分析的實現(xiàn)打下基礎(chǔ)。講解Socket通信、web編程、JSP程序設(shè)計結(jié)合計算機網(wǎng)絡(luò)TCP/IP協(xié)議等知識點,講解JDBC時,結(jié)合數(shù)據(jù)庫操作相關(guān)知識,講解Java高級編程時,將軟件工程、軟件測試等相關(guān)課程融入其中,總之,整合課程內(nèi)容時,將本專業(yè)相關(guān)課程的知識互相融合滲透,完善課程內(nèi)容體系。

2靈活運用教學(xué)方法,提高教學(xué)質(zhì)量

針對不同的教學(xué)內(nèi)容,靈活運用教學(xué)手段和方法。如對基礎(chǔ)知識部分,Java語法主要以自學(xué)為主,以任務(wù)為驅(qū)動,重點講授面向?qū)ο蟮某绦蛟O(shè)計思想和如何運用面向?qū)ο蠓椒▽陀^實際問題進(jìn)行建模。任務(wù):用面向?qū)ο蟮乃枷胪瓿绍嚨脑O(shè)計,車是由發(fā)動機、輪子、車門、窗戶等部件構(gòu)成的,每個部件設(shè)計一個類,車類(Car類)有自己的屬性和方法,還包含這些部件類。通過該設(shè)計任務(wù)的講解讓學(xué)生學(xué)會用面向?qū)ο笏枷虢鉀Q客觀實際問題,注重培養(yǎng)學(xué)生面向?qū)ο蠼D芰Γ瑢崿F(xiàn)班級學(xué)生。基本編程技術(shù)這部分內(nèi)容,以案例為主線,結(jié)合生動形象的案例講解,如案例1:實現(xiàn)windows附件所帶計算器,通過該的案例分析、設(shè)計、編程實現(xiàn)的過程逐一介紹Applet應(yīng)用、容器中組件的添加與設(shè)置、菜單的使用技術(shù)、布局管理器、Java核心包中數(shù)組、Math類的使用、異常的處理、事件處理機制等相關(guān)知識。案例2:操作系統(tǒng)的進(jìn)程管理中生產(chǎn)者與消費者,介紹Java多線程技術(shù),將具體的問題抽象為編程技術(shù)的實現(xiàn),引導(dǎo)學(xué)生盡快掌握J(rèn)ava基本編程技術(shù)和設(shè)計技巧。對第三部分內(nèi)容.采用項目教學(xué)法,綜合運用前兩部分知識,結(jié)合最新技術(shù)解決實際問題,如通過對聊天室軟件的分析設(shè)計,讓學(xué)生學(xué)會將輸入輸處流、圖形用戶界面的設(shè)計、數(shù)據(jù)庫JDBC連接、Socket通信、線程等技術(shù)加以綜合應(yīng)用。在講解Java高級編程時,主要是結(jié)合一個具體項目,如實現(xiàn)學(xué)生管理系統(tǒng),講解項目的設(shè)計思想、方法和步驟時,啟發(fā)鼓勵學(xué)生結(jié)合已有的知識積極主動地參與項目分析,然后再根據(jù)學(xué)生分析的進(jìn)度將項目整個實現(xiàn)過程逐步講解、逐一展示給同學(xué),切忌將整個程序代碼直接展示介紹。否則學(xué)生只能讀懂代碼的功能,而沒有完整的思路。而面向?qū)ο蟪绦蛟O(shè)計課程的目的是培養(yǎng)學(xué)生運用面向?qū)ο蟪绦蛟O(shè)計方法解決問題的能力。

3將軟件工程素質(zhì)的培養(yǎng)貫穿在整個實踐教學(xué)過程中

在實踐教學(xué)當(dāng)中,一方面把所學(xué)的知識與技術(shù)融入到工程項目中,另十分關(guān)鍵是如何將軟件工程素質(zhì)的培養(yǎng)貫穿在整個實踐教學(xué)過程中,面向?qū)ο蟪绦蛟O(shè)計實踐教學(xué)采用項目驅(qū)動方式實施整個實踐教學(xué)環(huán)節(jié),通過成立項目小組模擬企業(yè)真實項目練習(xí),具體過程如下:(1)調(diào)研,選題;(2)研討項目方案,擬定開發(fā)計劃,小組成員分工;(3)查閱學(xué)習(xí)相關(guān)技術(shù)資料,完成需求分析;(4)小組成員研討課題相關(guān)的技術(shù),完成設(shè)計階段;(5)編碼實現(xiàn)和測試等各個階段;(6)開發(fā)文檔整理、編制。利用軟件質(zhì)量保證計劃完成整個項目的實施完成需求分析、系統(tǒng)設(shè)計、編碼實現(xiàn)和測試等各個階段,撰寫各個階段的相應(yīng)文檔。特別在需求分析、系統(tǒng)設(shè)計階段等階段,充分理解和詳細(xì)分析項目的需求,要注重培養(yǎng)學(xué)生的創(chuàng)新能力,經(jīng)過需求分析、系統(tǒng)設(shè)計后,再用相應(yīng)的Java技術(shù)對設(shè)計的結(jié)果進(jìn)行編碼,最后通過單元測試、集成測試完成整個項目。通過一個模擬實戰(zhàn)項目訓(xùn)練,學(xué)生既掌握J(rèn)ava技術(shù)知識和運用,又對軟件工程實際項目實施過程有一個清晰完整的思路,拓寬了學(xué)生的視野,增強了學(xué)生的學(xué)習(xí)興趣。在是學(xué)生能明確自己的學(xué)習(xí)目標(biāo)。很好地培養(yǎng)了學(xué)生軟件工程素質(zhì)。任課教師也要參與軟件項目的開發(fā),不斷提高自身工程實踐能力。

4引導(dǎo)學(xué)生自主協(xié)作學(xué)習(xí)

首先要完善整合課程網(wǎng)絡(luò)資源:包括課程介紹、教學(xué)大綱、教學(xué)周歷、電子教案、重點難點內(nèi)容特別指導(dǎo)、實踐項目任務(wù)書等必需的教學(xué)資源。讓學(xué)生依據(jù)自身學(xué)習(xí)能力、學(xué)習(xí)興趣和學(xué)習(xí)時間,通過網(wǎng)絡(luò)資源自主安排學(xué)習(xí)進(jìn)度。教師可通過多種方式實時指導(dǎo)學(xué)生,如電話、電子郵件、課程學(xué)習(xí)論壇、建立QQ課程群等形式實時指導(dǎo)學(xué)習(xí),培養(yǎng)學(xué)生自主學(xué)習(xí)能力。其次組織成立興趣小組確定學(xué)習(xí)項目、讓組長安排分配學(xué)習(xí)任務(wù),教師參與定期交流學(xué)習(xí)體會,能解決活動中存在的問題。而協(xié)作學(xué)習(xí)有助于增強學(xué)生之間的溝通能力以及培養(yǎng)學(xué)生的團隊意識。再學(xué)生可通過訪問專業(yè)網(wǎng)站與經(jīng)驗豐富的編程人員交流,以提高自己的編程水平。并定期進(jìn)行考核計入總評成績,督促鼓勵學(xué)生進(jìn)行自主學(xué)習(xí)。同時了解學(xué)生學(xué)習(xí)效果,調(diào)整學(xué)習(xí)方法,激發(fā)學(xué)習(xí)興趣,培養(yǎng)學(xué)生學(xué)習(xí)的主動性,使學(xué)生不在是被動的、孤立地學(xué)習(xí),從而培養(yǎng)學(xué)生的自學(xué)能力和團隊協(xié)作精神。

5考核方式的改革

目前大多采用理論考試和實踐考試相結(jié)合模式,以掌握知識為主單一的閉卷筆試占比例更大些,以至于難以衡量學(xué)生實踐動手能力,不能客觀公評價學(xué)生掌握該課程情況,甚至制約了課程教學(xué)改革和教學(xué)質(zhì)量的提高。因此改革考核方式也是教學(xué)改革的重要內(nèi)容之一,運用多樣化的考核形式有利于全面真實地對學(xué)生的知識掌握程度、實踐能力的衡量。考試重心轉(zhuǎn)移到對學(xué)生的實際能力的考核,如,采用項目答辯、上機考試、過程考該等多種考試方式。完善的考核方式將推動課程的教學(xué)改革研究。

6結(jié)束語

在面向?qū)ο缶幊碳夹g(shù)課程教學(xué)過程中,應(yīng)避免理論教學(xué)和實踐環(huán)節(jié)脫離、注重學(xué)生項目開發(fā)能力的培養(yǎng),授課教師應(yīng)定期到軟件企業(yè)調(diào)研,掌握最新的Java技術(shù),調(diào)整教學(xué)計劃,整合課程體系。還應(yīng)采用科學(xué)合理的教學(xué)方法,引導(dǎo)學(xué)生采用正確的學(xué)習(xí)方法。理解面向?qū)ο蟪绦蛟O(shè)計的總體思路及各種抽象概念。培養(yǎng)學(xué)生查閱資料、編寫和調(diào)試程序能力。特別注重在整個教學(xué)過程中貫穿軟件工程的思想.培養(yǎng)學(xué)生具有一定的軟件工程的素質(zhì)和團隊合作意識,為今后從事軟件技術(shù)開發(fā)工作打下良好基礎(chǔ)。今后,本課程組要總結(jié)前期課程建設(shè)工作,如教學(xué)內(nèi)容的整合、教學(xué)方法和教學(xué)手段的改革和實踐能力培養(yǎng)的突出方法。構(gòu)建課程體系,編制實教材,建設(shè)案例庫和項目庫等資料,完善本課程教學(xué)體系。

作者:吳曉琴 檀 明 許 強 胡春玲 單位:合肥學(xué)院計算機科學(xué)與技術(shù)系

【參考文獻(xiàn)】

[1]王新海,李建東.李捷娜.軟件工程專業(yè)課程體系研究與實踐[J].計算機教育,2012(4):70-73.

[2]韓春燕,高曉興,姜慧妍,等.軟件工程專業(yè)課程體系優(yōu)化方法研究與實踐[J].計算機教育,2009(2):70-73.

[3]王秀坤,張憲超,郭禾.本科軟件工程專業(yè)軟件類核心課程關(guān)聯(lián)式教學(xué)模型研究與實踐[J].計算機教育,2008(12):91-92.

[4]陳云芳,孫力娟.軟件工程專業(yè)課程體系研究[J].高等工程教育研究,2009(2):140-144.

[5]許慶偉.徐兆佳.楊莉.軟件工程專業(yè)Java教學(xué)初探[J].計算機教育,2009(1):28-30.

[6]陽王東,吳宏斌,祝青.以工程項目為主線的軟件工程專業(yè)課程設(shè)計實踐教學(xué)[J].計算機教育,2012(12):90-93.