康國棟 鐘鍵
當(dāng)前,社會各行業(yè)對軟件人才的需求日益增長,雖然我國高校軟件專業(yè)畢業(yè)生很多,但大部分進入企業(yè)后的畢業(yè)生主動或被動定位為“碼農(nóng)”,往往因跟不上產(chǎn)業(yè)的迅猛發(fā)展與技術(shù)的快速更新而倍感壓力,簡單的認為軟件行業(yè)是“青春飯”行業(yè),進而選擇辭職轉(zhuǎn)業(yè);與之相對應(yīng)的是,許多軟件企業(yè)招聘不到合適的人才, 甚至不愿聘用畢業(yè)生。實際上,企業(yè)真正缺少的是能夠快速理解軟件架構(gòu)及編碼核心思維并能根據(jù)新技術(shù)、新潮流創(chuàng)新求變的人員,這類專業(yè)人才必然要具有良好的思維能力與數(shù)學(xué)素養(yǎng)。 ?離散結(jié)構(gòu)課程是軟件工程專業(yè)基礎(chǔ)課,一般由計算機學(xué)科專業(yè)的教師負責(zé)教學(xué),其作用有別于高等數(shù)學(xué)、線性代數(shù)等公共數(shù)學(xué)課程。 然而軟件工程專業(yè)本科學(xué)生往往意識不到離散數(shù)學(xué)與軟件科學(xué)之間的關(guān)系,誤將其看作公共數(shù)學(xué)課,學(xué)習(xí)興趣不高、主動性較差,更談不上將課程內(nèi)容與軟件科學(xué)領(lǐng)域?qū)嵺`相結(jié)合[1]。 針對這種情況,部分軟件工程專業(yè)教師提出了相應(yīng)的教學(xué)改革思路:大幅壓縮理論課教學(xué),大力加強實踐教學(xué),把一些經(jīng)典的應(yīng)用案例及解決模式傳授給學(xué)生,然后讓學(xué)生大量練習(xí)套用所學(xué)模式解決常見技術(shù)問題。 但一段時間的實踐證明,該理念易于使軟件工程專業(yè)本科教育傾向于技術(shù)培訓(xùn)與強化訓(xùn)練, 偏離了軟件工程專業(yè)本科教育人才培養(yǎng)目標(biāo)。 因此,客觀認識離散結(jié)構(gòu)課程的教學(xué)目標(biāo)并實施該課程教學(xué)的綜合改革是實現(xiàn)人才培養(yǎng)目標(biāo)的需要。
一 思路與舉措
結(jié)合筆者近年來的教學(xué)實際,借鑒國內(nèi)多位名師的教學(xué)理論與實踐經(jīng)驗,下面介紹筆者以思維與應(yīng)用有機結(jié)合為核心理念(“思維——應(yīng)用”)進行教學(xué)綜合改革的思路與具體舉措。
1 研究優(yōu)化教學(xué)內(nèi)容
目前,國內(nèi)出版的高等院校離散數(shù)學(xué)類教材,一般包含四個部分:集合論、數(shù)理邏輯、代數(shù)系統(tǒng)和圖論,也有部分計算機專業(yè)的離散數(shù)學(xué)教材把二元關(guān)系從集合論中剝離開來,單獨作為一部分。國內(nèi)教材的特點是數(shù)學(xué)性強,結(jié)構(gòu)明確,側(cè)重概念、定理、推理與證明,但實例較少[2-4]。而國外經(jīng)典離散數(shù)學(xué)教材,以Discrete Mathematics and Its Applications 一書為例[5-6],結(jié)構(gòu)為:邏輯、集合、函數(shù)基礎(chǔ)、算法整數(shù)矩陣基礎(chǔ)、數(shù)學(xué)推理、計數(shù)、高級計數(shù)技術(shù)、關(guān)系、圖、樹、布爾代數(shù)、計算模型。其特點是:一方面概念的引入、定理的詮釋高度數(shù)學(xué)抽象,學(xué)生短時間內(nèi)難以入門;另一方面?zhèn)戎赜趯嶋H問題的引入,實例多而精彩,但體系龐大不易把握。 因此, 國內(nèi)外教材各有其優(yōu)越性。 為此,教研組選擇了邵學(xué)才、葉秀明等編寫的《離散數(shù)學(xué)》作為理論課教材[7]。該教材知識點清晰,概念的引入,定理的描述推導(dǎo)相對淺顯易懂,便于學(xué)生掌握。并且把該教材集合論基礎(chǔ)理論部分、函數(shù)部分定為學(xué)生自學(xué)內(nèi)容,刪節(jié)了代數(shù)系統(tǒng)的環(huán)和域的理論部分;實例部分則由教研組綜合比較國外系列教材,共同研究具體實踐案例。
2 精選教學(xué)案例
在有限的教學(xué)時間內(nèi),既要保證學(xué)生對離散數(shù)學(xué)知識點的理解掌握,又要培養(yǎng)學(xué)生使用離散數(shù)學(xué)思維解決軟件工程領(lǐng)域?qū)嶋H問題的意識,這就對教學(xué)案例的選取有較高要求。鑒于文獻[8]的研究,以下是筆者在教學(xué)過程中采用的部分精選案例。
(1)集合論、二元關(guān)系
此部分內(nèi)容中集合論的知識較容易理解(自學(xué)),但涉及到“關(guān)系”知識點時,由于新的概念、定義較多,學(xué)生往往接受困難。針對該知識點,教學(xué)中的首要目標(biāo)是讓學(xué)生把握關(guān)系的實質(zhì),選用的實例多用來說明關(guān)系在軟件工程領(lǐng)域中的應(yīng)用。以常見關(guān)系數(shù)據(jù)庫SQL Server為例,使學(xué)生意識到關(guān)系的本質(zhì)就是一些n 元組的集合,而且關(guān)系的運算本質(zhì)可轉(zhuǎn)化為矩陣運算(注意:矩陣運算是先期線性代數(shù)課程的重要知識點),因此舉實例時, 可以先介紹矩陣運算在加密解密、信息壓縮等方面的應(yīng)用,激發(fā)興趣,而后介紹相關(guān)矩陣運算的計算機編碼實現(xiàn)技術(shù)。 進一步為加強學(xué)生的實踐能力,本章的重要知識點,判斷關(guān)系傳遞性的Warshall 算法設(shè)置為課外實驗題。
(2)數(shù)理邏輯
數(shù)理邏輯研究的核心問題是邏輯命題及系統(tǒng)推理。離散數(shù)學(xué)課程介紹了數(shù)理邏輯的基本內(nèi)容,但是其眾多數(shù)學(xué)符號、定義、定理往往使學(xué)生陷入枯燥繁復(fù)的數(shù)學(xué)知識學(xué)習(xí)中[9]。為激發(fā)學(xué)生學(xué)習(xí)興趣、培養(yǎng)學(xué)生的“思維——應(yīng)用”意識,在此部分教學(xué)中,我們選擇了布爾檢索、專家系統(tǒng)原理等實例。 邏輯聯(lián)結(jié)詞是數(shù)理邏輯中的基本知識點,就其本身概念來說,屬于易于掌握的知識點,合適的實例能使學(xué)生認識到該課程在軟件工程領(lǐng)域中的實際應(yīng)用。 布爾檢索技術(shù)目前廣泛用于網(wǎng)絡(luò)資源、Web 頁面搜索中,大多數(shù)學(xué)生都使用過baidu、 google等搜索引擎。在這種背景下,我們設(shè)計了布爾檢索實例:先引入布爾檢索概念中,聯(lián)結(jié)詞AND 用于匹配包含兩個檢索項的記錄,聯(lián)結(jié)詞OR 用于匹配兩個檢索項之一或者兩項均匹配的記錄,而聯(lián)結(jié)詞NOT 用于排除某個特定的檢索項。進而設(shè)置了如下問題供討論:
問題:用布爾邏輯搜索北京市或上海市非985大學(xué)主頁。
答案:((Beijing OR Shanghai)AND UNIVERSITIES) NOT 985(需要注意,AND 運算級別高于OR )。該實例教學(xué)將布爾檢索中的這些概念緊密地與數(shù)理邏輯中的合取、析取、否定聯(lián)結(jié)詞知識點聯(lián)系起來,加深了學(xué)生對邏輯聯(lián)結(jié)詞的認識,更重要的是,引導(dǎo)學(xué)生以數(shù)理邏輯思維重新認識信息精確化定位檢索的實踐。
(3)圖論
圖論是離散數(shù)學(xué)的重點, 并且是數(shù)據(jù)結(jié)構(gòu)等課程的基礎(chǔ),與計算機、軟件工程科學(xué)的聯(lián)系較明顯,易于調(diào)動學(xué)生聯(lián)系其與軟件工程的意識。但是,圖論內(nèi)容抽象、難度大,對低年級學(xué)生來講,難以過渡到用相關(guān)算法在計算機上編程模擬實際問題。 我們選用的理論課教材實例也多為趣味性問題,如旅行售貨員問題、代價最低網(wǎng)絡(luò)通路等問題。盡管如此,我們設(shè)置了一些課外實驗課題供學(xué)生選做。
二 研究改進教學(xué)方式
軟件工程專業(yè)的課程體系與傳統(tǒng)的計算機專業(yè)相比,基礎(chǔ)理論課時更少,再加上課程具有邏輯性強、抽象且難度大的特點,對本課程的教學(xué)方式提出了更高的要求。下面重點介紹筆者采用現(xiàn)代技術(shù)改進教學(xué)方式的主要舉措。
1 信息化教學(xué)資源建設(shè)
首先,重視多媒體教學(xué)資源設(shè)計。離散數(shù)學(xué)課程的特點是概念、性質(zhì)多,傳統(tǒng)的板書效率低、教學(xué)效果差,而多媒體課件的醒目、美觀、可塑性能揚長避短。 關(guān)于這部分的內(nèi)容我們綜合采用各位名家的教育理念與經(jīng)驗[10-12]。 除了做到常規(guī)的要求(標(biāo)題簡潔明了、條理清晰等)外,在概念的引入、講解中,重視圖文并茂,適量演示學(xué)生易接受的應(yīng)用實例及實踐技術(shù)。
其次學(xué)院與深度合作企業(yè)建設(shè)了“高校智能移動學(xué)習(xí)云平臺”以下簡稱“移動云平臺”。 教研組實時向云服務(wù)器加載精選的電子教學(xué)資源(包括多媒體教學(xué)課件、擴展的教學(xué)視頻資源,如:慕課MOC資源等),更新實踐案例庫,為學(xué)生提供豐富多彩的網(wǎng)上教學(xué)資源,彌補課堂教學(xué)時效有限性。 實踐證明,“移動云平臺”的搭建及運用方便了學(xué)生自主學(xué)習(xí)和師生間的交互, 有利于指導(dǎo)學(xué)生進行個性化學(xué)習(xí)和協(xié)同學(xué)習(xí),培養(yǎng)學(xué)生的學(xué)習(xí)能力和創(chuàng)新能力。
2 注重研討式教學(xué)
離散數(shù)學(xué)中基本概念、性質(zhì)、定理較多,而且連貫性不明顯,單純地講解,枯燥乏味,難以激發(fā)學(xué)習(xí)熱情。而通過設(shè)置少量的研討課題,開展課堂研討式教學(xué),并列入考核指標(biāo)體系,可增強學(xué)生的學(xué)習(xí)積極性。在研討式課堂教學(xué)中,以小組單位,所有學(xué)生都能直接參與到所設(shè)置問題的討論中,回答問題或提出質(zhì)疑,相互交流意見,有助于調(diào)節(jié)課堂氣氛,加深學(xué)生對理論知識的理解和記憶。 考慮到課堂教學(xué)時間有限,還可充分利用網(wǎng)絡(luò)平臺讓師生參與討論,增進師生、同學(xué)之間的交流。
三 配套考核模式
傳統(tǒng)的考核模式一般是粗放式“1+1”模式。隨著多種教學(xué)方法的運用,我們嘗試了配套的精細化“1+1”考核模式,細化了平時成績,強化了對思維能力與實踐能力的考核,詳見表1。
表1考核模式指標(biāo)體系
其中,能力測試主要對學(xué)生進行隨堂考試,對有一定綜合性的理論知識或思考題進行解答;課外實驗設(shè)計成績的評價指標(biāo)主要包括原理分析正確,程序邏輯清晰,代碼符合規(guī)范,實驗報告完整等。下面重點闡述我們在課外實驗設(shè)計教學(xué)環(huán)節(jié)上所作的一些改革。
目前離散數(shù)學(xué)不提供上機實驗課時,如果僅僅讓實例停留于上課時的講解演示,無法進一步調(diào)動學(xué)生的自主性和動手能力[13-14]。因此,我們編寫了課外實驗設(shè)計指導(dǎo)講義(根據(jù)知識點分布,我們目前共設(shè)置了12個課外實驗題目),并在“移動云平臺”加載了對應(yīng)的電子版,供學(xué)生自由選做其中3個(注意:每個知識點僅選一題), 并在期末考核中占20%。以下僅列出部分實驗設(shè)計題庫簡表:
表1 ? 部分實驗設(shè)計題庫簡表
其中,圖論部分實驗設(shè)計對于計算機專業(yè)低年級本科生來說偏難。但是考慮到圖論是后續(xù)課程數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ),數(shù)據(jù)結(jié)構(gòu)課程將涉及到這些算法與編程實現(xiàn),所以將其選編入課外實驗中,供學(xué)有余力的學(xué)生課外選作。上述課外實驗設(shè)計題目在教學(xué)過程中不斷增加,以期形成與時俱進的實踐題庫。
2011級5個教學(xué)班的大部分同學(xué)至少選作兩道題,均提交了源代碼、實驗報告的電子文檔。小部分同學(xué)提交了較多課外實驗報告,文檔、代碼水平較高,這部分同學(xué)的綜合成績普遍處于優(yōu)秀級。另外,對于學(xué)生做好畢業(yè)設(shè)計也有潛在效果,教研組老師所指導(dǎo)的30名學(xué)生的畢業(yè)設(shè)計完成效率高,質(zhì)量較好。體現(xiàn)了課外實驗對于提升學(xué)生綜合能力尤其是實踐能力的作用。
總之,借鑒國內(nèi)名家的教育理論與教學(xué)經(jīng)驗,本文從教學(xué)內(nèi)容、教學(xué)方式、配套的考核模式等方面對吉首大學(xué)軟件工程專業(yè)綜合改革之離散結(jié)構(gòu)的教學(xué)綜合改革舉措進行了探討。實踐證明,教學(xué)改革舉措的穩(wěn)步實施增強了學(xué)生的學(xué)習(xí)興趣,促進了課程的教學(xué)效果,對提升學(xué)生的學(xué)習(xí)能力、實踐能力起到了良好的促進作用,尤其是加強了學(xué)生從思維到實際應(yīng)用的意識,為學(xué)生今后的發(fā)展打下了堅實的基礎(chǔ)。 是適應(yīng)軟件產(chǎn)業(yè)對人才需求趨勢,培養(yǎng)“思維——實踐”高層次軟件工程人才的具體實踐,是教育部湖南省吉首大學(xué)軟件工程專業(yè)“十二五”綜合改革試點的有機組成。
參考文獻
[1][11]韓春燕,朱志良,姜慧研,劉益先. 軟件工程專業(yè)離散數(shù)學(xué)的教學(xué)思考[J].計算機教育,2011(11):68-70.
[2]左孝凌,李為鑑,劉永才.離散數(shù)學(xué)[M].上海:上??茖W(xué)技術(shù)文獻出版社,1982.
[3]左孝凌,李為鑑,劉永才.離散數(shù)學(xué)[M].上??萍技夹g(shù)文獻出版社,2006.
[4][7]邵學(xué)才,葉秀明.離散數(shù)學(xué)[M].北京:機械工業(yè)出版社,2011.
[5] Kenneth H. Rosen. 離散數(shù)學(xué)及其應(yīng)用(英文版5 版)
[M].北京:機械工業(yè)出版社,2007.
[6]Kenneth H. Rosen. Discrete Mathematics and Its Applications (4th Edition) [M].McGraw-Hillcompanies, Inc, USA, 2002.
[8] 師雪霖,尤 楓,顏可慶.離散數(shù)學(xué)教學(xué)聯(lián)系計算機實踐的探索[J].計算機教育,2008(20):113-115.
[9]何鋒.離散數(shù)學(xué)教學(xué)中的命題符號化難點討論[J].計算機教育,2007(9):38-40.
[10] 趙青杉,孟國艷.離散數(shù)學(xué)多媒體課件的開發(fā)與應(yīng)用[J]. 計算機科學(xué),2004,33(11):304-305.
[13] 藺永政,王新紅,李金屏.“離散數(shù)學(xué)”中實踐教學(xué)的探討[J].計算機教育,2006(10):103-104.
[14] 翁梅,劉倩,馮志慧,閭素紅.“離散數(shù)學(xué)”課程教學(xué)實踐與探索[J].計算機教育,2004(12):62-63.