《《軟件體系結(jié)構(gòu)》課程教學(xué)改革探討》由會(huì)員分享,可在線閱讀,更多相關(guān)《《軟件體系結(jié)構(gòu)》課程教學(xué)改革探討(5頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、《軟件體系結(jié)構(gòu)》課程教學(xué)改革探討
作者:朱澤民張青何中林
來(lái)源:《軟件導(dǎo)刊》2014年第12期
摘要:《軟件體系結(jié)構(gòu)》課題具有抽象、內(nèi)容豐富、對(duì)學(xué)生實(shí)踐技能要求高等特點(diǎn),學(xué)
生學(xué)習(xí)有一定難度,難以實(shí)際運(yùn)用。針對(duì)目前《軟件體系結(jié)構(gòu)》課程教學(xué)中存在的問(wèn)題,結(jié)合
筆者“精品資源共享課”教學(xué)改革成果,從課程內(nèi)容優(yōu)化、教學(xué)形式優(yōu)化等方面探討其教學(xué)改
革。
關(guān)鍵詞:軟件體系結(jié)構(gòu);教學(xué)改革;案例教學(xué)法
D01 : 10.11907/ijdk. 143778
中圖分類號(hào):G433
文獻(xiàn)標(biāo)識(shí)碼:A;;文章編號(hào):1672-7800 (2014) 012-0171-02
基金項(xiàng)目:湖北省戰(zhàn)略性
2、新興(支柱)產(chǎn)業(yè)人才培養(yǎng)計(jì)劃項(xiàng)目(軟件工程專業(yè))(鄂教高
\[2012\]13號(hào));黃岡師范學(xué)院2012年教學(xué)研究計(jì)劃項(xiàng)目(2012CE12)
作者簡(jiǎn)介:朱澤民(1978-),男,湖北長(zhǎng)陽(yáng)人,黃岡師范學(xué)院計(jì)算機(jī)學(xué)院副教授、系統(tǒng)
分析師,研究方向?yàn)檐浖こ碳坝?jì)算機(jī)應(yīng)用。
。引言
軟件都有體系結(jié)構(gòu),不存在沒(méi)有體系結(jié)構(gòu)的軟件vs叩>[l]
3、體系結(jié)構(gòu)脫胎于軟件工程,在其形成與
發(fā)展中借鑒了計(jì)算機(jī)體系結(jié)構(gòu)和網(wǎng)絡(luò)體系結(jié)構(gòu)中的許多寶貴思想和方法。
目前,《軟件體系結(jié)構(gòu)》已經(jīng)成為軟件工程專業(yè)的核心專業(yè)課。由于本課程起步晚、抽
象、內(nèi)容多、變化快、對(duì)學(xué)生實(shí)踐技能要求高,學(xué)生感覺(jué)學(xué)習(xí)難度大,難于實(shí)際運(yùn)用,這為本
課程的課堂教學(xué)提出了較高要求。有必要對(duì)本課程的教學(xué)實(shí)踐與改革進(jìn)行探討。
筆者所在學(xué)院自2006年開(kāi)辦軟件工程本科專業(yè)以來(lái),積極開(kāi)展《軟件體系結(jié)構(gòu)》課程教
學(xué)改革與研究。從最開(kāi)始邀請(qǐng)企業(yè)兼職教師擔(dān)任授課教師,到后來(lái)培養(yǎng)自己的骨干“雙師型''教
師,根據(jù)學(xué)生實(shí)際情況構(gòu)建了豐富的教學(xué)案例庫(kù)。同時(shí),學(xué)校以建設(shè)“湖北省戰(zhàn)略性新興(
4、支柱)產(chǎn)業(yè)人才培養(yǎng)計(jì)劃項(xiàng)目(軟件工程專業(yè))’‘為契機(jī),以培養(yǎng)社會(huì)所需的卓越工程師為目
標(biāo),在課程中強(qiáng)化了軟件設(shè)計(jì)內(nèi)容的教學(xué)。本文結(jié)合筆者所在學(xué)院軟件工程專業(yè)《軟件體系結(jié)
構(gòu)》課程的教學(xué)改革實(shí)際情況,尤其是“精品資源共享課”建設(shè)的部分成果,從現(xiàn)狀分析、課程
內(nèi)容優(yōu)化、教學(xué)形式優(yōu)化等方面探討其教學(xué)改革思路與路徑。
1《軟件體系結(jié)構(gòu)》課程教學(xué)現(xiàn)狀
(1) 教學(xué)目的不突出。目前,《軟件體系結(jié)構(gòu)》課程教學(xué)目的主要停留在介紹軟件體系
結(jié)構(gòu)的理論、經(jīng)典的軟件體系結(jié)構(gòu)、最新的軟件體系發(fā)展方向等層面。對(duì)于軟件工程等相關(guān)專
業(yè)的本科生,或偏重工程應(yīng)用的軟件工程專業(yè)碩士而言,其培養(yǎng)“工程師”的定位決
5、定了教學(xué)目
的更應(yīng)該突出工程性,重視軟件體系結(jié)構(gòu)的實(shí)踐與應(yīng)用。
(2) 教學(xué)內(nèi)容陳舊,沒(méi)有針對(duì)學(xué)生的知識(shí)結(jié)構(gòu)進(jìn)行優(yōu)化。目前,國(guó)內(nèi)已經(jīng)有許多學(xué)者編
著出版了《軟件體系結(jié)構(gòu)》教材,如張友生(清華大學(xué)出版社)、覃征(清華大學(xué)出版社)、
齊治昌(高等教育出版社)等??傮w來(lái)說(shuō),這些教材系統(tǒng)介紹了軟件體系結(jié)構(gòu)的基本原理、方
法和實(shí)踐,反映了軟件體系結(jié)構(gòu)研究和應(yīng)用的最新研究進(jìn)展[l]。但是,大多數(shù)教
材偏重于理論,實(shí)踐性有待于進(jìn)一步加強(qiáng),尤其是對(duì)于軟件工程本科專業(yè)的學(xué)生來(lái)說(shuō),多介紹
與其知識(shí)結(jié)構(gòu)一致的體系結(jié)構(gòu)及案例非常必要。
(3) 照本宣科,學(xué)生缺乏興趣,教學(xué)效果不理
6、想。由于教學(xué)內(nèi)容缺乏實(shí)踐性,教師在授
課過(guò)程中過(guò)于注重理論講解,注重對(duì)經(jīng)典模式或體系結(jié)構(gòu)的介紹,而忽視了案例的價(jià)值、模式
應(yīng)用,導(dǎo)致學(xué)生不能很好地理解消化這些理論,從而失去學(xué)習(xí)興趣。
(4) 課程教學(xué)脫離學(xué)生的知識(shí)結(jié)構(gòu)。出于各種考慮,有的學(xué)校將本課程“外包"給企業(yè)師
資來(lái)講授。這種方式如果處理得好,會(huì)起到開(kāi)闊學(xué)生眼界、彌補(bǔ)學(xué)校師資不足等缺陷,但往往
企業(yè)教師不善于講授,或者是講授內(nèi)容脫離學(xué)生的實(shí)際情況,或者是將本課程變成純粹的軟件
設(shè)計(jì)與編碼課程,沒(méi)有達(dá)到本課程應(yīng)有的教學(xué)目的。
2教學(xué)內(nèi)容優(yōu)化
(1) 結(jié)合學(xué)生實(shí)際確定教學(xué)目的。對(duì)于軟件工程及相關(guān)專業(yè)的本科生,或偏重應(yīng)用的軟
7、件工程專業(yè)碩士,應(yīng)有針對(duì)性地確定教學(xué)目標(biāo),制訂合適的教學(xué)大綱。筆者所在學(xué)院“精品資
源共享課”建設(shè)中,確定本課程的培養(yǎng)目標(biāo)如下:①培養(yǎng)學(xué)生學(xué)會(huì)用模式的視角來(lái)觀察、研究
軟件系統(tǒng)的思維。一個(gè)高質(zhì)量的軟件系統(tǒng)必然具有一個(gè)好的結(jié)構(gòu)與設(shè)計(jì),對(duì)這些好的結(jié)構(gòu)與設(shè)
計(jì)進(jìn)行不斷總結(jié)與抽象,就會(huì)得到許多可以反復(fù)使用的模式。教學(xué)中注重學(xué)生用模式的視角來(lái)
觀察和研究軟件系統(tǒng);②學(xué)習(xí)和積累經(jīng)典、常見(jiàn)的模式與軟件結(jié)構(gòu)。模式是成功經(jīng)驗(yàn)的總結(jié),
學(xué)生應(yīng)該熟練掌握經(jīng)典、常見(jiàn)的模式,并懂得如何運(yùn)用這些模式解決實(shí)際問(wèn)題;③了解基于模式或體系結(jié)構(gòu)構(gòu)建軟件系統(tǒng)的基本方法。通過(guò)上述教學(xué)目的,開(kāi)闊學(xué)生視野、培養(yǎng)學(xué)生理解并
8、應(yīng)用模式與體系結(jié)構(gòu)來(lái)解決實(shí)際問(wèn)題的能力。
(2) 循序漸進(jìn)安排教學(xué)內(nèi)容。在軟件設(shè)計(jì)中,模式的“粒度”有大有小。一般來(lái)說(shuō),廣義
的模式包含3個(gè)層次:①軟件體系結(jié)構(gòu)模式,是模式系統(tǒng)中最高等級(jí)的模式,為軟件系統(tǒng)提供
了一個(gè)結(jié)構(gòu)化的框架,具體的細(xì)化和實(shí)現(xiàn)工作還需要設(shè)計(jì)模式以及慣用法的支持;②類之間的
設(shè)計(jì)模式,結(jié)構(gòu)良好的面向?qū)ο筌浖w系結(jié)構(gòu)中都包含此模式;③各種語(yǔ)言的慣用法,是特定
程序設(shè)計(jì)語(yǔ)言模式,主要描述如何在特定語(yǔ)言中解決具體的實(shí)現(xiàn)問(wèn)題[2]
9、抽象粒度更大的軟件體系結(jié)構(gòu)。文獻(xiàn)《軟件設(shè)
計(jì)——從程序設(shè)計(jì)到體系結(jié)構(gòu)》vs叩>[31
很好地注意了這點(diǎn)。
(3) 與時(shí)俱進(jìn),不斷優(yōu)化教學(xué)內(nèi)容與教學(xué)方法。比如,在講解“管道過(guò)濾器”等經(jīng)典軟件
體系結(jié)構(gòu)之后,可講解“平臺(tái)/插件”體系結(jié)構(gòu)風(fēng)格[4]
10、計(jì)算架構(gòu)。
(4) 引導(dǎo)學(xué)生通過(guò)查閱學(xué)術(shù)論文進(jìn)行課程學(xué)習(xí)。近年來(lái),計(jì)算技術(shù)飛速發(fā)展,課堂教學(xué)
內(nèi)容嚴(yán)重滯后于技術(shù)發(fā)展。為了讓學(xué)生了解軟件體系結(jié)構(gòu)、設(shè)計(jì)模式方面的最新研究成果,教
師在講授過(guò)程中,可向?qū)W生介紹如何通過(guò)查閱文獻(xiàn)來(lái)學(xué)習(xí)最新的研究成果。筆者在課程改革
中,專門(mén)留出時(shí)間向?qū)W生介紹使用電子圖書(shū)館的方法,鼓勵(lì)學(xué)生查閱最新的研究成果并撰寫(xiě)文
獻(xiàn)綜述。此方法也為學(xué)生畢業(yè)論文寫(xiě)作打下了基礎(chǔ)。
(5) 借助計(jì)算機(jī)技術(shù)與軟件專業(yè)技術(shù)資格(水平)考試來(lái)優(yōu)化知識(shí)體系。計(jì)算機(jī)技術(shù)與
軟件專業(yè)技術(shù)資格(水平)考試(簡(jiǎn)稱計(jì)算機(jī)軟件考試)是一項(xiàng)專業(yè)技術(shù)資格認(rèn)定國(guó)家級(jí)考試
[5J
11、>o 設(shè)計(jì)
模式、軟件體系結(jié)構(gòu)等是許多考試項(xiàng)目的重要考核內(nèi)容,其在計(jì)算機(jī)軟件考試、軟件設(shè)計(jì)
師等中級(jí)資格考試中均有涉及?!跋到y(tǒng)架構(gòu)設(shè)計(jì)師”是2009年II月新增加的一個(gè)考試項(xiàng)目,屬
于高級(jí)資格考試。其考試大綱特別注重軟件設(shè)計(jì)模式的應(yīng)用、軟件架構(gòu)的分析與設(shè)計(jì),是與軟
件體系結(jié)構(gòu)課程最為契合的一個(gè)考試項(xiàng)目。在該課程教學(xué)過(guò)程中,可以引導(dǎo)、鼓勵(lì)學(xué)有余力的
同學(xué)積極參加計(jì)算機(jī)軟件相關(guān)資格考試。
3教學(xué)方法改革
(1) 采取案例教學(xué)法。軟件體系結(jié)構(gòu)較抽象,對(duì)于缺乏軟件開(kāi)發(fā)經(jīng)驗(yàn)的學(xué)生來(lái)說(shuō),難以
理解。案例教學(xué)法可以較好的解決這個(gè)問(wèn)題。案例教學(xué)法具有實(shí)踐性、啟發(fā)性、針對(duì)性、研究
性
12、>[6]
強(qiáng)的優(yōu)勢(shì),可以增強(qiáng)學(xué)生的實(shí)踐經(jīng)驗(yàn),開(kāi)闊視角。通過(guò)案例教學(xué)法,可以將
抽象的模式、大粒度的軟件結(jié)構(gòu)直觀地表現(xiàn)出來(lái),啟發(fā)學(xué)生的思維,拉近課堂與軟件企業(yè)真實(shí)
項(xiàng)目的距離。采用案例教學(xué)法需要建立并不斷豐富案例庫(kù)。《軟件體系結(jié)構(gòu)》課程的案例庫(kù)素
材一般來(lái)源于學(xué)術(shù)論文、企業(yè)解決方案、技術(shù)文獻(xiàn)等。
(2) 考核形式靈活開(kāi)放??梢圆扇⌒≌撐牡乳_(kāi)放的形式進(jìn)行課程考核,也可通過(guò)軟件系
統(tǒng)考核,這比機(jī)械考核教材上的教條更有意義和價(jià)值,更容易激發(fā)學(xué)生的創(chuàng)造性。不一定采用
閉卷和考識(shí)記,重點(diǎn)考核學(xué)生對(duì)各種粒度模式的理解和應(yīng)用。
(3) 與新技術(shù)新思想接軌。通過(guò)講座等形式引導(dǎo)學(xué)生從更高的
13、視角來(lái)研究復(fù)雜的系統(tǒng),
比如云計(jì)算等。一方面,讓學(xué)生學(xué)習(xí)最新的軟件發(fā)展前沿,從而開(kāi)闊學(xué)生視野;另一方面,也
為將來(lái)就業(yè)打下基礎(chǔ)。
(4) 基于開(kāi)源軟件開(kāi)展軟件體系結(jié)構(gòu)實(shí)驗(yàn)。開(kāi)源軟件的一個(gè)重要優(yōu)點(diǎn)是源代碼是可以自
由訪問(wèn)??梢砸龑?dǎo)學(xué)生分析某個(gè)比較成熟的開(kāi)源軟件的結(jié)構(gòu),并鼓勵(lì)其閱讀源代碼,研究軟件
結(jié)構(gòu)的實(shí)現(xiàn)。文獻(xiàn)[7]深入地論述了開(kāi)源平臺(tái)Eclipse的插件體系結(jié)構(gòu),并以一個(gè)小例子簡(jiǎn)單介
紹下插件的開(kāi)發(fā)和實(shí)現(xiàn)機(jī)制。
4結(jié)語(yǔ)
《軟件體系結(jié)構(gòu)》課程內(nèi)容豐富、更新快等特點(diǎn)決定了其教學(xué)需要與時(shí)俱進(jìn)。經(jīng)過(guò)近幾
年建設(shè),筆者所在學(xué)院該課程教學(xué)改革取得了一定成效,學(xué)生評(píng)課滿意度保持在97%以
14、上。該
課程2012年立項(xiàng)為黃岡師范學(xué)院重點(diǎn)建設(shè)課程;2014年立項(xiàng)為“精品資源共享課本文系統(tǒng)探
討了其發(fā)展改革的思路和做法,下一步研究將重點(diǎn)探討如何提高本課程教學(xué)質(zhì)量,以培養(yǎng)國(guó)家
和社會(huì)急需的高質(zhì)量的軟件工程人才。
參考文獻(xiàn):
\[1 \]張友生,李雄.軟件體系結(jié)構(gòu)原理、方法與實(shí)踐[M].北京:清華大學(xué)出版社,2009.
[21 FRANK BUSCHMANN, REGINE MEUNIER, HANS ROHNERT, et al.面向模式的軟
件體系結(jié)構(gòu)[M].北京:機(jī)械工程出版社,2003.
13] ERIC J BRAUDE.Softwarc design : from programming to architccturclMJ. Wiley, 2003.
[4]李俊娥,周洞汝.“平臺(tái)/插件”軟件體系結(jié)構(gòu)風(fēng)格[J].小型微型計(jì)算機(jī)系統(tǒng).2007 (5):
876-881.
[5] 中國(guó)計(jì)算機(jī)技術(shù)職業(yè)資格網(wǎng)[EB/OL].http : //
[6] 李雅玲.課堂案例教學(xué)與基于網(wǎng)絡(luò)的案例教學(xué)的比較研究[J].電化教育研究,2003
(12) : 48-51.
[7] 谷樞,楊艷斌,王澤生.Eclipse插件體系結(jié)構(gòu)的研究[J].電腦知識(shí)與技術(shù),2009 (31)
8706-8708.
(責(zé)任編輯:陳福時(shí))