摘要:本文針對計(jì)算機(jī)軟件開發(fā)類相關(guān)課程具有的工程性和實(shí)踐性的特點(diǎn),提出了以項(xiàng)目為導(dǎo)向的教學(xué)策略:以一個(gè)完整的項(xiàng)目貫穿整個(gè)課程教學(xué)過程的始終,以項(xiàng)目的構(gòu)建過程為線索安排教學(xué)步驟。并以PowerBuilder這門課程的教學(xué)實(shí)踐為例,具體論述了項(xiàng)目教學(xué)法的實(shí)施及效果。
關(guān)鍵詞:項(xiàng)目教學(xué)法;軟件開發(fā);教學(xué)策略;PowerBuilder
中圖分類號:G642文獻(xiàn)標(biāo)識碼:B
文章編號:1672-5913(2007)16-0085-04
1問題的提出
CCC2002指出:“計(jì)算機(jī)科學(xué)與技術(shù)學(xué)科除了具有較強(qiáng)的科學(xué)性外,還具有較強(qiáng)的工程性”,因此,計(jì)算機(jī)課程的教學(xué)應(yīng)該是面向設(shè)計(jì)的。特別是計(jì)算機(jī)軟件開發(fā)類課程,如“面向?qū)ο蟪绦蛟O(shè)計(jì)”、“數(shù)據(jù)庫技術(shù)與應(yīng)用”、“軟件工程”、“軟件開發(fā)工具與環(huán)境”更是具有極強(qiáng)的實(shí)踐性。對這類課程的教學(xué),必須突出其工程性和實(shí)踐性。
我們在教學(xué)實(shí)踐中,于2004年開始嘗試以項(xiàng)目為導(dǎo)向的教學(xué)策略,取得了良好的效果。下面以PowerBuilder課程的教學(xué)為例,予以詳細(xì)闡述。
PowerBuilder是一套十分優(yōu)秀的計(jì)算機(jī)應(yīng)用系統(tǒng)開發(fā)工具,具有面向?qū)ο蟮拈_發(fā)方法和可視化的開發(fā)界面。它不僅能夠設(shè)計(jì)傳統(tǒng)的高性能、基于客戶機(jī)/服務(wù)器(Client/Server)體系結(jié)構(gòu)的應(yīng)用系統(tǒng),也能夠方便地構(gòu)建和實(shí)現(xiàn)分布式系統(tǒng),隨著Internet的飛速發(fā)展,PowerBuilder提供了對OLE、OCX、跨平臺等技術(shù)的全面支持,因此也已經(jīng)成為World Wide Web應(yīng)用環(huán)境下的開發(fā)利器。
由于PowerBuilder的上述優(yōu)點(diǎn),目前不少高校選用其作為“數(shù)據(jù)庫開發(fā)”和“軟件開發(fā)工具與環(huán)境”相關(guān)課程的背景環(huán)境,也成為很多高校學(xué)生畢業(yè)設(shè)計(jì)所選用的開發(fā)工具。
1.1傳統(tǒng)的教學(xué)方法及缺點(diǎn)
傳統(tǒng)的計(jì)算機(jī)課程教學(xué)一般是采取知識結(jié)構(gòu)驅(qū)動的教學(xué)法,教師循序漸進(jìn)地講授一門課程的知識點(diǎn),學(xué)生按部就班地學(xué)習(xí)知識點(diǎn)。雖然大多數(shù)教學(xué)環(huán)節(jié)也有實(shí)例,但是作為整個(gè)課程來說,這些實(shí)例是彼此沒有聯(lián)系的、孤立的。
這種教學(xué)模式的主要缺點(diǎn)是:
(1) 學(xué)生在學(xué)習(xí)過程中,看不到當(dāng)前所學(xué)的局部知識的用處,缺乏學(xué)習(xí)的興趣和內(nèi)在動力,容易產(chǎn)生厭倦情緒。
(2) 學(xué)生在學(xué)習(xí)中難以抓住重點(diǎn),往往過分注重細(xì)節(jié),以至于淹沒在知識細(xì)節(jié)的海洋中,難以把握整體的知識框架。
(3) 主要是以教師為中心,學(xué)生只是被動的聽講和練習(xí),難以激發(fā)學(xué)生的積極性、主動性。
(4) 學(xué)生學(xué)完后,所掌握的知識是零碎的、不系統(tǒng)的,只見樹木,不見森林,缺乏對一門課程的整體把握能力。
(5) 學(xué)生學(xué)完后,即使考試成績很好,但仍然缺乏實(shí)際能力。學(xué)生對一個(gè)完整項(xiàng)目的整個(gè)分析和設(shè)計(jì)過程不甚清楚,不能把所學(xué)的知識完整地應(yīng)用起來,解決實(shí)際問題時(shí)顯得很茫然。
1.2項(xiàng)目教學(xué)法
我們認(rèn)為,學(xué)生學(xué)習(xí)一門軟件開發(fā)與設(shè)計(jì)課程,其主要目的并不僅僅是為了學(xué)習(xí)一些關(guān)于這門課程的知識,而更重要的是為了“掌握”和“運(yùn)用”:即在掌握了基本的概念和關(guān)鍵的技術(shù)要點(diǎn)后,具有實(shí)際的應(yīng)用開發(fā)能力。對于計(jì)算機(jī)專業(yè)的學(xué)生,采用多種模式、啟發(fā)自主學(xué)習(xí)、重視實(shí)踐環(huán)節(jié)、培養(yǎng)創(chuàng)新意識、樹立團(tuán)隊(duì)精神顯得尤為重要。
我們在長期教學(xué)實(shí)踐和開發(fā)實(shí)踐的基礎(chǔ)上,在教學(xué)中運(yùn)用了基于項(xiàng)目的教學(xué)法,它是教和學(xué)互動的模式。其基本思路是:以一個(gè)完整的軟件開發(fā)項(xiàng)目貫穿整個(gè)課程教學(xué)過程的始終;以項(xiàng)目的構(gòu)建過程為線索安排教學(xué)步驟;整個(gè)教學(xué)過程是由項(xiàng)目的任務(wù)驅(qū)動。學(xué)生在學(xué)習(xí)過程中參與一個(gè)完整項(xiàng)目的分析、設(shè)計(jì)、實(shí)現(xiàn)的全過程,這樣就在課堂教學(xué)中把理論和實(shí)踐教學(xué)有機(jī)地結(jié)合起來,學(xué)生在教學(xué)過程中就不是被動的接受者,而是積極的參與者,這種開放性、創(chuàng)新性的教育思想和模式,有利于克服以往的教學(xué)模式的弊端,極有利于學(xué)生在計(jì)算機(jī)信息管理應(yīng)用方面實(shí)際水平的提高。
2項(xiàng)目的選擇
在基于項(xiàng)目的教學(xué)法中,項(xiàng)目的選擇是一個(gè)非常關(guān)鍵的問題。所選擇的項(xiàng)目應(yīng)該具有以下特點(diǎn):
1. 項(xiàng)目應(yīng)具有一定的代表性,雖然一個(gè)項(xiàng)目不可能具有某一類問題的全部特征,但要能反映問題的本質(zhì)特征。
2. 項(xiàng)目應(yīng)具有一定的實(shí)用性。項(xiàng)目最好來源于實(shí)際工作需求,盡可能選擇與實(shí)際需要相結(jié)合的項(xiàng)目??山Y(jié)合科研任務(wù)、技術(shù)開發(fā)項(xiàng)目、信息工程建設(shè)的需要及實(shí)際應(yīng)用的需要進(jìn)行選擇。
3. 項(xiàng)目的規(guī)模要適中。項(xiàng)目規(guī)模過大則在一門課程的教學(xué)時(shí)數(shù)內(nèi)難以完成,學(xué)生也難以把握;項(xiàng)目規(guī)模過小則難以涵蓋主要的知識點(diǎn),也缺乏整體性和挑戰(zhàn)性。
4. 任課教師對所選項(xiàng)目應(yīng)該非常熟悉,最好是教師親自開發(fā)的項(xiàng)目。
5. 項(xiàng)目應(yīng)和學(xué)生生活比較貼近,這樣一方面增強(qiáng)學(xué)生的興趣,更重要的是便于學(xué)生理解和接受,使學(xué)生專注于項(xiàng)目的技術(shù)問題。
基于以上考慮,我們在PowerBuilder課程的教學(xué)實(shí)踐中,選用了“高校學(xué)生管理信息系統(tǒng)”作為項(xiàng)目案例。系統(tǒng)主要模塊如圖1所示。
3教學(xué)設(shè)計(jì)過程
3.1分析“高校學(xué)生管理信息系統(tǒng)”項(xiàng)目需求和系統(tǒng)主要功能模塊。
把一個(gè)項(xiàng)目分成若干個(gè)模塊,每個(gè)模塊根據(jù)對應(yīng)的知識點(diǎn)再分成若干部分課堂教學(xué)內(nèi)容,將教學(xué)目標(biāo)和內(nèi)容融入對實(shí)際項(xiàng)目的理解和實(shí)踐中,教學(xué)過程實(shí)際就是項(xiàng)目的建構(gòu)過程。具體做法是:
每一個(gè)教學(xué)單元圍繞一個(gè)主題,提出項(xiàng)目設(shè)計(jì)目標(biāo),然后利用項(xiàng)目的設(shè)計(jì)過程,講解教學(xué)內(nèi)容,最后給學(xué)生布置項(xiàng)目任務(wù)。
3.2項(xiàng)目教學(xué)的整體構(gòu)想
項(xiàng)目教學(xué)的實(shí)施按照以下步驟進(jìn)行:
(1) 認(rèn)識PowerBuilder集成開發(fā)環(huán)境,建立一個(gè)新的Workspace和一個(gè)新的Application。
(2) 掌握窗口:窗口的創(chuàng)建、屬性、常用函數(shù)、事件、基本窗口編程。創(chuàng)建系統(tǒng)主窗口。
(3) 學(xué)習(xí)和掌握PowerScript語言。
(4) 創(chuàng)建數(shù)據(jù)庫。創(chuàng)建學(xué)生數(shù)據(jù)庫以及數(shù)據(jù)表。
(5) 學(xué)習(xí)和掌握常用的窗口控件:命令按鈕,單選鈕、復(fù)選框、分組框、編輯框、編輯掩碼控件等。創(chuàng)建信息錄入窗口。
(6) 學(xué)習(xí)和掌握數(shù)據(jù)窗口技術(shù)。這一部分是PowerBuilder的核心內(nèi)容,也是學(xué)習(xí)的重點(diǎn)內(nèi)容。
(7) 學(xué)習(xí)和掌握高級窗口控件:下拉列表框、樹狀視圖等。創(chuàng)建信息查詢窗口。
(8) 菜單的使用。建立系統(tǒng)主菜單,對前面創(chuàng)建的窗口進(jìn)行統(tǒng)一管理。
(9) 學(xué)習(xí)和掌握SQL語句。創(chuàng)建信息修改等窗口。
(10) 學(xué)習(xí)和掌握游標(biāo)。創(chuàng)建學(xué)生成績管理等窗口。
(11) 進(jìn)行功能調(diào)試和系統(tǒng)測試。
(12) 將Application編譯成可執(zhí)行文件,制作安裝盤,交付使用。
3.3項(xiàng)目教學(xué)的實(shí)施案例之一
(1) 主題:窗口與常用控件
(2) 項(xiàng)目任務(wù):創(chuàng)建學(xué)生基本信息錄入窗口。如圖2所示。
(3)、教學(xué)目標(biāo):學(xué)習(xí)和掌握常用的窗口控件:命令按鈕,單選鈕、復(fù)選框、分組框、編輯框、編輯掩碼控件。
(4) 教學(xué)過程:在此環(huán)節(jié)中學(xué)習(xí)創(chuàng)建窗口對象,熟悉各種窗口控件及特性。學(xué)會對象屬性、方法的引用格式,事件過程的創(chuàng)建。讓學(xué)生創(chuàng)建一個(gè)窗口實(shí)現(xiàn)向student表添加本班同學(xué)信息的功能,這樣可以添加的同時(shí)也能體會到成功的喜悅,使學(xué)生深入理解和掌握面向?qū)ο蠓治鰡栴}的方法。
3.4項(xiàng)目教學(xué)的實(shí)施案例之二
(1) 主題:數(shù)據(jù)窗口技術(shù)
(2) 項(xiàng)目任務(wù):創(chuàng)建學(xué)生信息綜合查詢窗口。如圖3所示。
(3) 教學(xué)目標(biāo):學(xué)習(xí)和掌握數(shù)據(jù)窗口技術(shù)。
(a) 使學(xué)生掌握數(shù)據(jù)窗口對象和數(shù)據(jù)窗口控件的概念,特別是分清這兩者的區(qū)別。
(b) 使學(xué)生掌握事務(wù)對象的概念。
(c) 使學(xué)生掌握數(shù)據(jù)庫連接和斷開的概念和方法。
(d) 使學(xué)生掌握數(shù)據(jù)提取的概念和方法。
(e) 在以上4項(xiàng)的基礎(chǔ)上,使學(xué)生熟練掌握使用數(shù)據(jù)窗口的步驟。
(4) 教學(xué)重點(diǎn)和難點(diǎn)分析:
數(shù)據(jù)窗口技術(shù)是PowerBuilder的核心專利技術(shù),數(shù)據(jù)窗口能夠從5種數(shù)據(jù)源提取數(shù)據(jù),并且開發(fā)者可以從11種顯示風(fēng)格中進(jìn)行選擇,這樣在應(yīng)用程序開發(fā)過程中,開發(fā)者利用這種技術(shù)可以以方便、直觀、簡捷的方式操作數(shù)據(jù)庫,因此可以把精力主要放在應(yīng)用系統(tǒng)功能的實(shí)現(xiàn)上,提高了開發(fā)效率,所以掌握數(shù)據(jù)窗口技術(shù)是使用PowerBuilder進(jìn)行軟件開發(fā)的關(guān)鍵。
由于這一部分進(jìn)入的新概念較多,數(shù)據(jù)窗口的使用步驟也較為復(fù)雜,因此掌握數(shù)據(jù)窗口技術(shù)也是本課程的一個(gè)難點(diǎn)。
(5) 教學(xué)過程:
(a) 提出項(xiàng)目任務(wù)。
(b) 概述數(shù)據(jù)窗口技術(shù)。激發(fā)學(xué)生興趣和積極性。
(c) 演示使用數(shù)據(jù)窗口畫筆創(chuàng)建數(shù)據(jù)窗口對象:dw_student。
(d) 演示創(chuàng)建一個(gè)新窗口,添加數(shù)據(jù)窗口控件:d_student。
(e) 演示通過數(shù)據(jù)窗口控件的屬性設(shè)置和編寫代碼這兩種方法,將數(shù)據(jù)窗口控件與數(shù)據(jù)窗口對象建立關(guān)聯(lián)。
(f) 演示編寫代碼。連接數(shù)據(jù)庫,提取數(shù)據(jù),修改數(shù)據(jù)庫的數(shù)據(jù),斷開連接等。
(g) 給學(xué)生布置項(xiàng)目任務(wù)。讓學(xué)生通過數(shù)據(jù)窗口控件在窗口對象做學(xué)生表、課程表及三表連接的修改、刪除和查詢及瀏覽頁面,并且和窗口對象創(chuàng)建的瀏覽頁面進(jìn)行比較。
(h) 給學(xué)生布置拓展任務(wù)。要求學(xué)生在學(xué)習(xí)了“學(xué)生”信息更新和查詢后,自己獨(dú)立完成“課程”,“成績”等查詢窗口的設(shè)計(jì),以收舉一反三之功效。
4考核方式
采用項(xiàng)目教學(xué)法必須進(jìn)行課程考核方式的改革。我們嘗試的考核方式為:形成性考核、期末筆試和整個(gè)項(xiàng)目完成情況考核三部分相結(jié)合的方式。這三所占比例為20:40:40。
形成性考核主要是對學(xué)生的平時(shí)作業(yè)、學(xué)習(xí)過程中的學(xué)習(xí)行為表現(xiàn)、上機(jī)實(shí)踐環(huán)節(jié)等方面進(jìn)行考核評價(jià)。
筆試考核學(xué)生對基本概念、基本理論、基本技能的掌握。
項(xiàng)目完成情況考核主要考核學(xué)生綜合運(yùn)用所學(xué)知識解決問題的能力和實(shí)際開發(fā)設(shè)計(jì)能力。
5教學(xué)效果
基于項(xiàng)目的教學(xué)法在實(shí)踐性較強(qiáng)的計(jì)算機(jī)課程教學(xué)中,具有無可比擬的優(yōu)點(diǎn),它使學(xué)生能夠融會貫通地掌握一門課程的精髓;強(qiáng)化學(xué)生的計(jì)算機(jī)應(yīng)用軟件開發(fā)能力;提高學(xué)生以計(jì)算機(jī)軟件工程的原則對開發(fā)項(xiàng)目的分析、架構(gòu)、設(shè)計(jì)、管理、文檔編寫等能力;給學(xué)生畢業(yè)后繼續(xù)在計(jì)算機(jī)技術(shù)方面自我發(fā)展奠定了良好的基礎(chǔ);培養(yǎng)了學(xué)生的合作共事的能力和團(tuán)隊(duì)協(xié)作精神。
我們采用項(xiàng)目教學(xué)法兩年多來,收到了明顯的成效。從表1可以看出,學(xué)生無論是考試及格率,還是職業(yè)技能鑒定通過率和畢業(yè)設(shè)計(jì)良好以上比例,都有了明顯提高。
尤其可喜的是,由于學(xué)生的實(shí)際軟件開發(fā)能力得到明顯提高,大大增強(qiáng)了他們的就業(yè)競爭力。例如三名學(xué)生通過Internet把自己的設(shè)計(jì)作品上傳給某軟件企業(yè),企業(yè)對他們開發(fā)的軟件表示認(rèn)可,很快就到軟件公司從事專業(yè)的軟件開發(fā)工作。
6結(jié)束語
計(jì)算機(jī)技術(shù)與應(yīng)用的飛速發(fā)展,促使我們必須對傳統(tǒng)的計(jì)算機(jī)課程教學(xué)模式進(jìn)行改革,不斷更新教學(xué)觀念、教學(xué)內(nèi)容、教學(xué)方法、教學(xué)手段?;陧?xiàng)目的教學(xué)法,作為我們在教學(xué)改革實(shí)踐中的探索,盡管取得了一定的成效,但也面臨著挑戰(zhàn),例如,項(xiàng)目教學(xué)法對教師的教學(xué)水平提出了更高的要求,要求教師不僅要具有一定的理論水平,也要具備較為豐富的開發(fā)經(jīng)驗(yàn)。我們將在今后的教學(xué)實(shí)踐中繼續(xù)探索,以達(dá)到提高學(xué)生專業(yè)技能和綜合素質(zhì)的目的。
參考文獻(xiàn)
[1] 鄭阿奇. PowerBuilder實(shí)用教程[M]. 北京:電子工業(yè)出版社,2005.
[2] 明日科技. PowerBuilder管理信息系統(tǒng)完整項(xiàng)目實(shí)例剖析[M]. 北京:人民郵電出版社,2005.
作者簡介:牛軍濤(1969-),男,河南襄城人,計(jì)算機(jī)軟件與理論專業(yè)工學(xué)碩士,講師,高級程序員,現(xiàn)任河南質(zhì)量工程職業(yè)學(xué)院信息工程系主任,研究方向:數(shù)據(jù)庫,軟件工程。
聯(lián)系電話:13937546348
E-mail: niujtao@163.com