鄭英姿
(廣東技術(shù)師范學(xué)院天河學(xué)院 廣東廣州 510540)
《軟件工程》教學(xué)改革的研究
鄭英姿
(廣東技術(shù)師范學(xué)院天河學(xué)院 廣東廣州 510540)
《軟件工程》是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)一門重要的專業(yè)課程,本文分程析了軟件工程課程的特點(diǎn),針對軟件工程教學(xué)中存在的問題,進(jìn)行了教學(xué)改革的探索和研究,在優(yōu)化教學(xué)內(nèi)容、采用案例教學(xué)法、加強(qiáng)軟件工程實(shí)踐環(huán)節(jié)、加強(qiáng)教師隊(duì)伍建設(shè)、加大實(shí)驗(yàn)室的建設(shè)力度等方面提出了改革建議,通過軟件工程的教學(xué)改革,使件工程課程能夠適應(yīng)社會(huì)發(fā)展的需求,提高學(xué)生學(xué)習(xí)的興趣,培養(yǎng)學(xué)生的團(tuán)隊(duì)協(xié)作意識和創(chuàng)新精神,提高學(xué)生實(shí)際的軟件開發(fā)能力,為更深入地學(xué)習(xí)和今后從事軟件工程實(shí)踐打下良好的基礎(chǔ)。
軟件工程 教學(xué)問題 教學(xué)改革
(1)教學(xué)內(nèi)容陳舊
很多軟件工程的教材在形式上進(jìn)行了更新,從第一版更新到了第四版,但在具體內(nèi)容上沒有太大的變化,使學(xué)生從書本學(xué)到的內(nèi)容與實(shí)際軟件開發(fā)脫節(jié),無法掌握最新的開發(fā)技術(shù)、方法和工具。
(2)教學(xué)重點(diǎn)內(nèi)容模糊
軟件工程課程內(nèi)容應(yīng)該包括:軟件工程概述、軟件模型、過程和傳統(tǒng)方法學(xué)、面向?qū)ο蟮姆椒▽W(xué)、軟件項(xiàng)目管理、軟件工具等部分,實(shí)現(xiàn)了理論的實(shí)踐性和知識的綜合性的全面統(tǒng)一。目前很多高校教師在教學(xué)過程中,重點(diǎn)內(nèi)容與非重點(diǎn)內(nèi)容比較模糊,主要講解傳統(tǒng)方法學(xué),對于采用面向?qū)ο蠹夹g(shù)開發(fā)軟件的講解很少。
(3)教學(xué)方式陳舊
很多教師在教學(xué)中通常以理論為主,而輕視了實(shí)踐過程,沒有將軟件工程中的理論與實(shí)踐開發(fā)相結(jié)合,沒有將理論知識貫穿于軟件實(shí)際開發(fā)中,沒有充分進(jìn)行工程實(shí)踐過程,整個(gè)教學(xué)過程枯燥乏味,導(dǎo)致學(xué)生不清楚軟件工程在實(shí)踐中的應(yīng)用,不清楚如何利用軟件工程的原理、技術(shù)和方法開發(fā)軟件系統(tǒng),認(rèn)為學(xué)習(xí)這門課程的意義不大。
(4)學(xué)生基礎(chǔ)較差,學(xué)習(xí)積極性不高
軟件工程本身是一門比較難學(xué)的課程,而學(xué)生基礎(chǔ)普遍較差,學(xué)習(xí)積極性和主動(dòng)性不高,對學(xué)習(xí)有畏難情緒,軟件工程是一門多學(xué)科交叉的課程,在學(xué)習(xí)軟件工程之前,需要學(xué)習(xí)前置課程,包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫原理等,由于前置課程的學(xué)習(xí)不夠扎實(shí),許多知識體系不能連貫起來,學(xué)生在學(xué)習(xí)軟件工程時(shí),情緒比較低落。
(5)教學(xué)實(shí)踐環(huán)節(jié)存在難度
在教學(xué)中,如果只是單純的進(jìn)行枯燥模糊的課堂教學(xué),而學(xué)生沒有親身開發(fā)體驗(yàn),學(xué)生僅憑課堂和書本得來的知識理解軟件工程很難,以至于學(xué)完之后覺得用處不大。要讓學(xué)生相信和理解軟件工程對軟件開發(fā)的重要性,就是在學(xué)習(xí)期間完成一個(gè)中型左右的軟件開發(fā)。但這種方法又相對復(fù)雜耗時(shí),加上這門課一般在大三下學(xué)期以后開設(shè),時(shí)間上來不及,并不適合初次接觸軟件工程的學(xué)生的教學(xué)實(shí)踐。
1.優(yōu)化教學(xué)內(nèi)容
教師在教學(xué)備課時(shí),不能拘泥于一本教材,而且教材最好是在近兩年出版的,在教學(xué)備課當(dāng)中,多參考資料,講解新概念、新技術(shù)、新方法和新工具,采用CDIO工程教育理念,通過課程組形成的教學(xué)團(tuán)隊(duì)精心設(shè)計(jì)教學(xué)。在教學(xué)基礎(chǔ)方面讓給學(xué)生講解軟件工程相關(guān)概念、軟件過程等,在應(yīng)用部分重點(diǎn)講解當(dāng)前比較流行的統(tǒng)一開發(fā)過程、面向?qū)ο蠹夹g(shù)和UML語言。
2.采用案例教學(xué)法
這門課程理論知識多,內(nèi)容抽象,教師在講解課程內(nèi)容時(shí),如何使這門課程上得有聲有色,學(xué)生聽得津津是道,除了優(yōu)化課程教學(xué)內(nèi)容,有較強(qiáng)的表達(dá)能力以外,還要采用好的教學(xué)方法。
在本課程的教學(xué)中,我們都是以案例為導(dǎo)向,對軟件生命周期的基本任務(wù)、軟件模型的教學(xué),舉出三個(gè)案例,結(jié)合我們的理論知識,要求學(xué)生分析出三個(gè)案例分別適合采用哪種軟件模型、以及原因。通過教師工資支付系統(tǒng)案例講解如何采用傳統(tǒng)方法學(xué)對軟件進(jìn)行分析、設(shè)計(jì)、實(shí)現(xiàn),面向?qū)ο蠓椒▽W(xué)的講解,貫穿的案例是ATM自動(dòng)取款機(jī)系統(tǒng)。
3.加強(qiáng)軟件工程實(shí)踐環(huán)節(jié)
針對每部分的教學(xué)內(nèi)容設(shè)計(jì)實(shí)驗(yàn),在開學(xué)初要求每班學(xué)生自由組隊(duì),分成若干小組,教師提供項(xiàng)目的題目,每組選一個(gè)題目,緊跟教學(xué)的進(jìn)度,進(jìn)行項(xiàng)目的分析、設(shè)計(jì)和實(shí)現(xiàn),讓學(xué)生初步認(rèn)識到如何在實(shí)踐中應(yīng)用軟件工程的知識。
對于本課程的課程設(shè)計(jì),可邀請企業(yè)的工程師到學(xué)校來擔(dān)任課程設(shè)計(jì)的老師,按照企業(yè)開發(fā)的模式讓學(xué)生進(jìn)行項(xiàng)目開發(fā),項(xiàng)目以團(tuán)隊(duì)開發(fā)的形式進(jìn)行,每個(gè)小組選一個(gè)組長,組長負(fù)責(zé)規(guī)劃進(jìn)度、分工,小組成員按照軟件項(xiàng)目開發(fā)各階段進(jìn)行分工合作,這樣來鍛煉他們的團(tuán)隊(duì)協(xié)作精神和相互溝通能力,讓學(xué)生了解企業(yè)的實(shí)踐開發(fā)軟件的流程。
鼓勵(lì)學(xué)生到軟件公司參加培訓(xùn)、實(shí)習(xí)、兼職,親身體驗(yàn)到企業(yè)軟件開發(fā)全過程,提高實(shí)踐能力,增強(qiáng)對軟件工程技術(shù)、方法和原理的理解。
4.加強(qiáng)教師隊(duì)伍建設(shè)
教師隊(duì)伍建設(shè)是衡量一個(gè)學(xué)校教學(xué)和學(xué)術(shù)的重要指標(biāo),在教學(xué)過程中,教師扮演很重要的角色,把提高教師的綜合素質(zhì)作為本課程建設(shè)的一個(gè)重要內(nèi)容,對于計(jì)算機(jī)這個(gè)日新月異的專業(yè),教學(xué)內(nèi)容不斷向“基、精、深、新、能”發(fā)展,這就要求教師樹立新的教學(xué)理念,學(xué)校應(yīng)該多提供機(jī)會(huì)讓老師進(jìn)修、培訓(xùn),派骨干教師參加企業(yè)軟件項(xiàng)目實(shí)踐,教師把學(xué)習(xí)掌握的新技術(shù)、新理念融入到課堂教學(xué)中,讓教學(xué)的內(nèi)容更加實(shí)用性和先進(jìn)性,學(xué)校還可以采取開辦講座的形式拓展教師的知識面,提高軟件工程教學(xué)質(zhì)量。
5.加大實(shí)驗(yàn)室的建設(shè)力度
學(xué)校要加大軟件工程實(shí)驗(yàn)室的建設(shè)力度。軟件工程是一個(gè)實(shí)踐性和綜合性非常高的課程,需要一個(gè)設(shè)備完善、開發(fā)工具軟件多樣化、輔助軟件豐富、學(xué)生能夠穩(wěn)定連續(xù)進(jìn)行實(shí)驗(yàn)的環(huán)境支撐。
以上軟件工程的教學(xué)改革已在我校進(jìn)行了實(shí)施,對教學(xué)的課件進(jìn)行了多次修改,融合了很多軟件工程的新技術(shù),新理念,將軟件工程與UML、Rational Rose等結(jié)合起來進(jìn)行講解,加強(qiáng)軟件工程實(shí)踐環(huán)節(jié),在課程設(shè)計(jì)中,準(zhǔn)備了20多個(gè)設(shè)計(jì)的題目,將學(xué)生分成了若干個(gè)開發(fā)小組,要求學(xué)生在老師的指導(dǎo)下完成設(shè)計(jì)做品和設(shè)計(jì)論文,最后進(jìn)行答辯;寒暑假期間,積極組織學(xué)生到軟件企業(yè)培訓(xùn)實(shí)習(xí),了解企業(yè)的開發(fā)流程,增強(qiáng)對軟件工程技術(shù)、方法和原理的理解。
通過多年的努力,不斷的改進(jìn)教學(xué)的課件,;精心進(jìn)行教學(xué)設(shè)計(jì),使本課程在內(nèi)容上緊跟時(shí)代的最新技術(shù),激發(fā)學(xué)生的興趣和潛能,使學(xué)生掌握軟件開發(fā)和維護(hù)的方法學(xué),掌握軟件開發(fā)的過程和先進(jìn)的軟件項(xiàng)目管理方法,通過實(shí)踐性教學(xué)環(huán)節(jié),提高學(xué)生實(shí)際的軟件開發(fā)能力和工程素養(yǎng),培養(yǎng)學(xué)生的團(tuán)隊(duì)協(xié)作意識和創(chuàng)新精神,為更深入地學(xué)習(xí)和今后從事軟件工程實(shí)踐打下良好的基礎(chǔ)。