摘要:本文分析了當(dāng)前高等院校面向?qū)ο蠓治雠c設(shè)計課程的教學(xué)現(xiàn)狀,指出其存在的弊端;提出了該課程基于項(xiàng)目驅(qū)動的實(shí)踐體系結(jié)構(gòu);在知識體系結(jié)構(gòu)、教學(xué)方法、考核方式等方面,探討了本門課程的教學(xué)改革思路。
關(guān)鍵詞:項(xiàng)目驅(qū)動 面向?qū)ο蠓治雠c設(shè)計 實(shí)踐教學(xué)
中圖分類號:G613 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2011)10(c)-0000-00
1 引言
面向?qū)ο蠓治雠c設(shè)計(OOA/D)課程主要任務(wù)是在學(xué)生已掌握的面向?qū)ο蟪绦蛟O(shè)計語言的基礎(chǔ)之上,使學(xué)生們能夠深入理解面向?qū)ο蠓椒ǖ木韬蛯?shí)質(zhì),全面了解面向?qū)ο蠓治雠c設(shè)計相關(guān)領(lǐng)域的主要研究內(nèi)容及關(guān)鍵技術(shù),包括面向?qū)ο蟮男枨蠼?、面向?qū)ο蟮南到y(tǒng)分析、面向?qū)ο蟮南到y(tǒng)設(shè)計及設(shè)計模式、軟件架構(gòu)和軟件構(gòu)件技術(shù)等內(nèi)容。面向?qū)ο蠓治雠c設(shè)計方法是目前軟件開發(fā)的主流方法,它是軟件工程人才必須掌握的基礎(chǔ)知識和必備的能力[1]。
可以說OOA/D是軟件系統(tǒng)開發(fā)中最能體現(xiàn)從業(yè)人員創(chuàng)新思維以及其技術(shù)精髓閃光點(diǎn)之處,而與這門課程在軟件行業(yè)的重要性形成鮮明對比的是,目前OOA/D課程教學(xué)模式已然落后,偏重理論講授而脫離項(xiàng)目實(shí)踐,學(xué)生的學(xué)習(xí)興趣和積極性大打折扣,教學(xué)改革迫在眉睫。
2 教學(xué)現(xiàn)狀分析
當(dāng)前我們在此門課程的講授不能滿足教學(xué)大綱培養(yǎng)需求,經(jīng)分析現(xiàn)行的課程教學(xué)模式主要存在以下問題:
?。?)理論知識傳授過程中某些知識點(diǎn)的講授無法切實(shí)讓學(xué)生清晰的領(lǐng)會教學(xué)內(nèi)容,因本門課程對項(xiàng)目實(shí)踐能力要求較高以及對學(xué)生抽象思維能力要求較高,即便是在結(jié)合案例的講授方式下,學(xué)生仍然對主要內(nèi)容的把握上表現(xiàn)出不知所措,學(xué)習(xí)興趣及積極性自然大打折扣。
?。?)實(shí)驗(yàn)體系也演化為為了機(jī)械的“做”而做,而不是為了“學(xué)”而做,課堂教學(xué)與實(shí)驗(yàn)教學(xué)互相脫鉤,學(xué)生將軟件建模的過程當(dāng)成了UML的畫圖過程,違背了“做中學(xué)”的思想[2],因此無法在實(shí)踐中去領(lǐng)會教學(xué)內(nèi)容,也無法更清晰更形象的體會知識點(diǎn)。
?。?)課程的評價考核也與此門課程的教學(xué)目標(biāo)相脫離,考核內(nèi)容大多演化成機(jī)械的文字背誦,因在教學(xué)過程中項(xiàng)目實(shí)踐引入較少,使得考核過程中對分析與設(shè)計環(huán)節(jié)的考查變成了形式上的空洞。
3 基于項(xiàng)目驅(qū)動的課程體系結(jié)構(gòu)的改革
3.1 課程實(shí)踐體系結(jié)構(gòu)的搭建
本課程教學(xué)的關(guān)鍵在于以實(shí)踐為導(dǎo)向,以項(xiàng)目為驅(qū)動,這也是該課程教學(xué)的中心環(huán)節(jié)[3],為此我們首先需要搭建能夠承載本課程知識點(diǎn)的實(shí)踐體系結(jié)構(gòu)。
WAZVS9zfNPB8/lFbk1URww== 在搭建項(xiàng)目體系的過程中,我們利用學(xué)院現(xiàn)已結(jié)題的橫縱向軟件項(xiàng)目,對其中的面向?qū)ο蠓治雠c設(shè)計結(jié)果摘取其中要點(diǎn)與課程理論知識點(diǎn)對接,進(jìn)一步在分析與設(shè)計的各個階段,將項(xiàng)目的面向?qū)ο笤O(shè)計文檔和課程的各個UML圖形成對接,這樣由點(diǎn)即線,形成了完備的課程實(shí)踐體系結(jié)構(gòu),學(xué)生在這樣的結(jié)構(gòu)環(huán)境下實(shí)踐能更準(zhǔn)確更清晰的理解實(shí)踐要點(diǎn)及理論要點(diǎn),并重現(xiàn)了真實(shí)的分析與設(shè)計過程,達(dá)到了良好的教學(xué)效果。
在此過程中,擯棄了以往單純使用沒有實(shí)踐積累的紙面案例進(jìn)行建模畫圖的思路,搭建了全新的面向?qū)Ψ椒治雠c設(shè)計的實(shí)踐體系結(jié)構(gòu),從而在實(shí)踐中講授知識,將理論知識的關(guān)鍵點(diǎn)轉(zhuǎn)化為實(shí)踐的關(guān)鍵點(diǎn)來傳授。
3.2 課程知識體系結(jié)構(gòu)的改革
我們發(fā)現(xiàn)本課程現(xiàn)行的知識體系結(jié)構(gòu)存在著先期準(zhǔn)備知識的不完備性以及知識點(diǎn)之間的銜接不連續(xù)性,這些斷層導(dǎo)致學(xué)生對知識的理解模糊以及對知識的掌握找不到切入點(diǎn)。因此有必要對知識體系結(jié)構(gòu)進(jìn)行改革和完善。
面向?qū)ο蠓治雠c設(shè)計課程要求學(xué)生具備良好的抽象能力,軟件過程重要的第一步便是利用抽象將軟件需求轉(zhuǎn)化為分析結(jié)果;而第二步考慮具體的軟件可擴(kuò)展性、可維護(hù)性、高效的靈活性,對分析結(jié)果給出優(yōu)化的設(shè)計方案。這兩個關(guān)鍵的步驟是開發(fā)出高質(zhì)量軟件系統(tǒng)的關(guān)鍵,也是本門課程對學(xué)生先期素質(zhì)的準(zhǔn)備需要。而當(dāng)前我們軟件工程專業(yè)的教學(xué)計劃中其他課程的知識傳授不能滿足面向?qū)ο蠓治雠c設(shè)計學(xué)習(xí)的先期需要,導(dǎo)致課程授課難度加大以及學(xué)生對知識的理解模糊。
因此整個知識體系結(jié)構(gòu)有必要將《需求工程》及《設(shè)計模式》納入到教學(xué)計劃中,《需求工程》是上述第一步從抽象中得到分析結(jié)果的能力培養(yǎng),《設(shè)計模式》是第二步優(yōu)化設(shè)計思維的培養(yǎng),這樣它們二者便與現(xiàn)有的面向?qū)ο蠓治雠c設(shè)計及軟件工程共同構(gòu)成了軟件工程專業(yè)分析與設(shè)計能力培養(yǎng)課程群[4]。接下來,我們要將這幾門課程內(nèi)容進(jìn)行整合,求同存異,形成統(tǒng)一的面向?qū)ο蠓治雠c設(shè)計知識體系結(jié)構(gòu),在內(nèi)容選擇以及實(shí)驗(yàn)配備上統(tǒng)一步調(diào),在課程之間的連貫性以及知識點(diǎn)的銜接性方面進(jìn)一步優(yōu)化體系結(jié)構(gòu)。
4 基于項(xiàng)目驅(qū)動的教學(xué)方法改革
4.1 案例輔助教學(xué)
該課程講授的原理、技術(shù)、方法都很抽象,容易產(chǎn)生枯燥乏味的感覺。為了激發(fā)學(xué)生的學(xué)習(xí)熱情,培養(yǎng)學(xué)生分析解決問題的能力,在教學(xué)過程中可設(shè)計若干可操作和難度適中的實(shí)際案例,將復(fù)雜抽象、枯燥的概念融于具體生動的案例中進(jìn)行講解,能夠收到事半功倍的效果。
例如在講需求建模,類圖,用例圖等需求分析建模工具時,可以引入ATM儲蓄系統(tǒng)、圖書管理系統(tǒng)等學(xué)生熟知的案例輔助教學(xué),學(xué)生獨(dú)立分析、思考,然后教師再進(jìn)行講解,指出不足。
這種方法不但給學(xué)生提供了充分的思考、探究和創(chuàng)新的空間,而且學(xué)生邊學(xué)邊做,會對所學(xué)的知識理解得更深,對其應(yīng)用場合更明確。
4.2 基于項(xiàng)目驅(qū)動的教學(xué)
在成功搭建課程的實(shí)踐體系結(jié)構(gòu)之后,我們便可在教學(xué)過程中以項(xiàng)目實(shí)踐為主線,使之成為驅(qū)動其他教學(xué)環(huán)節(jié)的有效手段。隨著課程進(jìn)展布置任務(wù),從項(xiàng)目開發(fā)的準(zhǔn)備工作、系統(tǒng)分析過程、系統(tǒng)設(shè)計過程、項(xiàng)目實(shí)施,結(jié)合所學(xué)習(xí)的理論知識,逐步完成項(xiàng)目的分析與設(shè)計。具體的實(shí)施過程如下:
(1) 設(shè)計多個典型的、完整的、難度適中的、實(shí)際的軟件項(xiàng)目,由學(xué)生分組完成。
選擇項(xiàng)目時應(yīng)盡量面向社會、面向應(yīng)用,反映新技術(shù),以獲得更好的工程設(shè)計實(shí)踐訓(xùn)練。項(xiàng)目最好來源于授課教師直接參與的軟件項(xiàng)目,以便授課教師對其全部細(xì)節(jié)能夠準(zhǔn)確掌握。
項(xiàng)目設(shè)計好之后,將學(xué)生分成五至六人的小組,然后為每個小組分配一個項(xiàng)目。小組成員分工合作,明確項(xiàng)目開發(fā)各階段的任務(wù),將每項(xiàng)任務(wù)落實(shí)到個人,由學(xué)生獨(dú)立完成。
(2) 即學(xué)即練
在講授一個軟件項(xiàng)目分析與設(shè)計過程后,安排一到兩節(jié)的討論課,由學(xué)生自由發(fā)言。小組可以集思廣益,派一個代表講解小組對本組項(xiàng)目的理解、分析和設(shè)計的過程,說明運(yùn)用所學(xué)的知識解決問題的方案。其他小組人員可以提出疑問,最后由教師給出評價,確定最終的實(shí)施方案,這樣項(xiàng)目開發(fā)的每個階段都在教師的正確指導(dǎo)下進(jìn)行。
在項(xiàng)目開發(fā)過程中,教師要經(jīng)常了解每組的進(jìn)展情況,解決學(xué)生遇到的實(shí)際問題,給予正確的引導(dǎo),確保項(xiàng)目能夠按部就班地、有條不紊地順利完成。
(3) 統(tǒng)一答辯和驗(yàn)收
在課程結(jié)束時,每個小組的項(xiàng)目也接近尾聲,然后要統(tǒng)一組織答辯,上交文檔。這時可以讓小組代表對其項(xiàng)目的功能、采用的技術(shù)等做總結(jié)陳述,然后讓每個小組成員說明在整個項(xiàng)目開發(fā)過程中所完成的任務(wù),并一一進(jìn)行演示。教師針對每個學(xué)生實(shí)際負(fù)責(zé)的部分進(jìn)行提問,最后根據(jù)系統(tǒng)完成的功能、文檔的質(zhì)量、開發(fā)技術(shù)的難易程度、工作量等給出每個小組及組內(nèi)每個成員的成績。
通過面向?qū)ο蠓治雠c設(shè)計課程的學(xué)習(xí),學(xué)生的系統(tǒng)分析與設(shè)計能力以及開發(fā)的規(guī)范程度都有一定程度的提高,具備一定的獨(dú)立分析、解決問題能力、團(tuán)隊(duì)合作能力和有效溝通的技能。
5 考核方式改革
考核方式應(yīng)盡量做到多樣化,以達(dá)到全面客觀地衡量學(xué)生真實(shí)水平的目的。
作為理論性和實(shí)踐性都很強(qiáng)的課程,面向?qū)ο蠓治雠c設(shè)計的考核方式有別于其他課程。我們提出的方案是:總成績?yōu)?00分,平時成績(其中包括出勤和作業(yè))占總成績的10%,科技小論文占10%,項(xiàng)目成績占40%,期末考試占40%。
期末時,學(xué)生提交一篇科技小論文。主要考查學(xué)生對此門課程新思想、新理論、新技術(shù)等的了解程度,同時也為學(xué)生以后繼續(xù)深造打好基礎(chǔ)。
項(xiàng)目成績,是指學(xué)生開發(fā)貫穿教學(xué)始終的那個項(xiàng)目的成績,主要考查學(xué)生的實(shí)踐動手能力以及分析設(shè)計能力。
另外,由于此門課程的理論性強(qiáng),一些原理、方法、規(guī)范要求學(xué)生牢固掌握,對于這部分內(nèi)容以閉卷方式考核。同時筆試反對死記硬背,重點(diǎn)考查學(xué)生綜合運(yùn)用理論知識的能力和方法,考核學(xué)生對面向?qū)ο蠓治雠c設(shè)計思想和軟件開發(fā)方法的實(shí)際掌握程度。
6 結(jié)語
本文闡述的教學(xué)改革中,提出了“以分析設(shè)計能力培養(yǎng)為核心、以項(xiàng)目實(shí)踐為驅(qū)動” 的教學(xué)模式。課程安排分為課堂理論教學(xué)和實(shí)踐教學(xué)兩大部分:課堂理論教學(xué)的目的是使學(xué)生掌握基本概念、原理和方法,在此我們重點(diǎn)進(jìn)行了此門課程的知識體系結(jié)構(gòu)改革,優(yōu)化了知識體系結(jié)構(gòu);實(shí)踐教學(xué)的目的是在搭建好的軟件項(xiàng)目體系結(jié)構(gòu)的實(shí)踐平臺上培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識的能力。在此教學(xué)模式下,能夠很好的培養(yǎng)學(xué)生系統(tǒng)分析設(shè)計的能力,培養(yǎng)他們嚴(yán)謹(jǐn)、求實(shí)的科學(xué)態(tài)度和團(tuán)隊(duì)精神,激發(fā)他們的創(chuàng)新意識和實(shí)踐精神。
參考文獻(xiàn)
[1] 梁金昆. 面向?qū)ο蟮南到y(tǒng)分析與設(shè)計[M]. 北京: 清華大學(xué)