吳瑜
(深圳信息職業(yè)技術學院廣東深圳518029)
《數(shù)據(jù)庫應用程序開發(fā)》多種課程教學方法探討
吳瑜
(深圳信息職業(yè)技術學院廣東深圳518029)
《數(shù)據(jù)庫應用程序開發(fā)》是高職軟件技術專業(yè)的核心課程。針對該門課程教學內(nèi)容多、學習難度大的特點,本文以.NET平臺數(shù)據(jù)庫應用程序開發(fā)課程為例,探討了在教學中項目教學、遞進分組、角色扮演、示范模塊等多種教學方法的綜合應用。
數(shù)據(jù)庫應用程序開發(fā);項目教學;遞進分組;角色扮演;示范模塊
《數(shù)據(jù)庫應用程序開發(fā)》課程是高職軟件技術專業(yè)的一門重要課程,該課程概念多、編程復雜,涉及數(shù)據(jù)庫技術、數(shù)據(jù)訪問方法、數(shù)據(jù)顯示控件等多種技術的綜合應用,教師面臨教學內(nèi)容多和學生學習難度大的困難,需要不斷探索教學方法,以期取得良好的教學效果。筆者從事該課程教學多年,經(jīng)過一系列改革與實踐,總結了一些經(jīng)驗,下面以.NET平臺數(shù)據(jù)庫應用程序開發(fā)課程為例,探討適合該課程的多種教學方法。
通過對.NET平臺軟件開發(fā)崗位需求進行分析,可以明確.NET方向軟件開發(fā)人員的典型工作任務包括桌面應用程序開發(fā)等工作任務。該工作任務要求開發(fā)人員具備窗體應用程序開發(fā)技術、數(shù)據(jù)訪問技術、三層架構技術,基于上述要求,在保證學生所學內(nèi)容“夠用”的前提下,可在課程教學中應用項目教學法。選取三個典型項目貫穿整個教學過程,教師和學生圍繞三個完整項目的實施進行教學活動。教師基于項目精心組織教學內(nèi)容,完成教學設計、課件制作、習題設計、視頻資料準備,學生在完成項目任務的過程中,學習和應用相關知識和技能,達到“教、學、做”一體化。
在遞進項目中融入知識與技能為適應學生的認知規(guī)律,教師可安排三個遞進的教學項目,三個項目規(guī)模由小到大,難度由易到難,課程知識和技能以迭代的方式分布于各項目中。項目一、項目二、項目三分別為通訊錄、學生成績管理系統(tǒng)、酒店客房管理系統(tǒng)。通過項目一,學生可以掌握Windows數(shù)據(jù)顯示控件、連接數(shù)據(jù)源、連接環(huán)境數(shù)據(jù)訪問方法的使用;通過項目二,學生可以掌握非連接環(huán)境數(shù)據(jù)訪問方法、水晶報表工具的使用;通過項目三,學生可以掌握實體類、三層結構在數(shù)據(jù)庫應用程序中的應用。教師隨著項目的推進逐步教授新知識,學生應用上一階段所學知識以及本項目階段的新知識完成項目任務。例如,在項目二的實施過程中,學生既要使用已掌握的連接數(shù)據(jù)源、連接環(huán)境數(shù)據(jù)訪問方法等知識實現(xiàn)身份驗證功能,也要學習DataAdapter和DataSet非連接環(huán)境數(shù)據(jù)訪問類等新知識實現(xiàn)數(shù)據(jù)存取。經(jīng)過課堂教學過程后,學生進入集中實訓階段,綜合使用所學知識和技能完成實訓項目。
教學流程符合軟件開發(fā)工作過程每個項目都遵循軟件開發(fā)工作任務的實施過程,包括需求分析、系統(tǒng)設計、編碼實現(xiàn)、系統(tǒng)測試、系統(tǒng)部署、項目總結各階段。教師對整個項目開發(fā)進行過程監(jiān)督、指導和考核,帶領學生完成項目需求分析、總體設計和數(shù)據(jù)庫設計,講解關鍵技術、指導學生編碼,提供各階段相關資料,總結項目技術及檢驗完成情況。學生通過教學流程體驗軟件產(chǎn)品開發(fā)過程,加深對數(shù)據(jù)庫應用程序開發(fā)工作任務的認識。
任務驅動教學項目教學以任務驅動的方式展開,任務驅動適合以項目為載體的教學過程。根據(jù)項目功能需求和實現(xiàn)流程,項目被分為多個工作任務,任務是項目實施的最小單元,每一次教學單元都是以完成一個工作任務為目標。例如,項目一的任務包括需求分析和功能設計、數(shù)據(jù)庫設計、搭建系統(tǒng)框架、連接數(shù)據(jù)源、實現(xiàn)數(shù)據(jù)瀏覽、實現(xiàn)數(shù)據(jù)增加、實現(xiàn)數(shù)據(jù)刪除和修改、部署系統(tǒng)。任務驅動教學過程包括“引入、分析、講解、實施、拓展訓練、檢驗、總結”,以項目一的實現(xiàn)數(shù)據(jù)瀏覽任務為例,在教學中應用任務驅動的過程如下:第一步是引入任務,由教師提出任務要求:在主窗口的列表控件中顯示所有聯(lián)系人信息,并演示任務操作效果,使學生明確學習目標,激發(fā)他們的學習興趣。第二步是分析任務,教師帶領學生進行任務分析,分析程序流程以及關鍵問題。第三步是講解知識與技能,教師講解完成任務所需知識與技能:(1)Command對象的作用;(2)Command對象的創(chuàng)建方法;(3)Command對象的屬性和方法;(4)DataReader對象的屬性和方法;(5)使用Command對象執(zhí)行查詢的步驟;(6)列表控件的常用方法。第四步是實施任務,教師示范關鍵功能代碼,學生在教師指導下,使用Command對象和DataReader對象完成瀏覽數(shù)據(jù)功能。第五步是拓展訓練,教師給出拓展任務:實現(xiàn)按姓名、手機、電子郵件查詢聯(lián)系人信息,學生應用已學技能完成拓展任務,深化對知識的理解和技能的應用。第六步是檢驗任務,按照功能要求,教師檢驗本次任務的完成情況。最后是總結任務,教師總結本次任務的主要知識與技能,布置習題鞏固基本知識。
軟件開發(fā)類課程的項目教學組織形式通常為分組教學法,將學生分成若干組,以小組為單位開展項目計劃實施活動。分組教學有利于促進學生在學習中合作與競爭,也有利于針對學生學習能力的差異實施分層教學。分組大小取決于項目規(guī)模和學生的學習能力,為適應項目遞進教學模式,在本課程教學中采用遞進分組方法,分組人數(shù)隨著項目難度遞進,從每組1人,逐漸遞增至每組4人或5人,這樣,既能分層次鍛煉學生個人能力,也有利于培養(yǎng)學生團隊合作精神。
獨立操作鍛煉個人能力項目一規(guī)模小、難度低,學生獨立完成項目任務,教師在組織教學的過程中,通過過程考查,可以對全班學生的學習能力進行全面了解和分析,了解學生學習態(tài)度、學習能力、學習方法以及運用技術的能力。根據(jù)學生的個體差異,劃分為高、中、低三個層次,教師對于不同層次的學生給予不同的提示與指導,既能兼顧不同層次學生的能力鍛煉,也能縮小學生間的差距。例如,完成瀏覽數(shù)據(jù)任務時,在教師的詳細指導下,所有學生都必須完成基本任務,而對于能力強的學生,完成基本任務之后,鼓勵他們查找資料、獨立思考完成按條件查詢數(shù)據(jù)的拓展任務。對于中等能力的學生,教師給予關鍵技術提示,促使他們努力完成拓展任務。對于能力較弱的學生,教師可以向他們演示主要代碼,讓學生理解代碼,稍加完善后完成拓展任務要求。
團隊工作提高合作能力在啟動項目二之前,教師基于前期了解的學生情況,根據(jù)學生學習能力、個人性格、男女比例等特點,將全部學生分成若干組,每組2~3人,并設立組長,負責成員分工、組織小組學習討論和項目的實施。各組根據(jù)教學進程,在組長的組織領導下,分工協(xié)作完成項目各階段任務,并派代表在課堂上展示項目作品。隨著項目難度的增加,項目三的組員數(shù)量和人員搭配也隨之變化,組員人數(shù)增加為4~5人,每組都包含能力強的、中等的和比較弱的學生。組內(nèi)分工更細并且根據(jù)學生情況分配相應難度的任務,以編碼階段為例,組內(nèi)能力強的學生先完成模塊中難度最大的編碼任務,能力中等的學生完成其余部分編碼任務,能力弱的學生在能力強的學生幫助下完成編碼任務。組員之間必須加強協(xié)調溝通,才能共同完成項目各模塊功能,這樣,既能調動能力強學生的積極性,也能激發(fā)能力中等和較弱的學生的學習熱情,充分發(fā)揮每一個學生的優(yōu)勢,達到團隊合作與共同進步的效果。
軟件公司的商業(yè)軟件開發(fā)是由項目組完成,項目組包含不同的角色。因此,在項目教學過程中,引入角色扮演法有利于學生加深對軟件開發(fā)流程的理解以及培養(yǎng)職業(yè)素質。角色扮演是指學生在課堂上的虛擬開發(fā)團隊中承擔不同的角色并履行角色職責。在項目一的教學過程中,教師帶領學生經(jīng)歷不同角色的轉換:在需求分析階段是分析人員,在設計階段是數(shù)據(jù)設計人員和架構師,在編碼實現(xiàn)階段是開發(fā)人員,在系統(tǒng)測試階段是系統(tǒng)測試人員。學生被要求在承擔角色之前搜集資料、明確角色職責,為后續(xù)分組項目的角色分配做準備。在項目二和項目三的教學過程中,教師指導項目組長根據(jù)學生情況在組內(nèi)分配角色,模擬工作場景,將1個角色交由多人承擔,或者將多個角色分配給1人。每個學生都有明確的定位和職責要求,各角色扮演者負責完成角色操作任務以及過程性文檔。這樣,既有利于團隊協(xié)同工作,又能增加學生的學習興趣、主動性和積極性。
以項目三為例,組長在教師的協(xié)助下將分析人員、數(shù)據(jù)設計人員、架構師、界面設計人員、開發(fā)人員、測試人員等角色分配給組員。教師作為需求提出方與該組分析人員交流,分析人員細化項目需求并整理為文檔,交由整個項目組查閱。數(shù)據(jù)設計人員根據(jù)功能需求設計、創(chuàng)建數(shù)據(jù)庫并完成數(shù)據(jù)庫設計文檔。架構師在教師講解三層結構搭建知識后完成搭建架構的任務。界面設計人員負責設計和添加項目表示層的界面。開發(fā)人員承擔實現(xiàn)數(shù)據(jù)訪問層、業(yè)務邏輯層和表示層的任務并完成編程說明文檔。測試人員根據(jù)教師提供的測試用例文檔對項目進行系統(tǒng)測試并記錄測試結果。組長最終將項目源程序、項目部署結果、過程性文檔以及項目總結報告提交給教師。
數(shù)據(jù)庫應用程序開發(fā)項目通常包括多個功能模塊。其中很多模塊的實現(xiàn)技術基本相同,因此,教師可以某個典型模塊為示范模塊,對其涉及的知識和技能進行詳細講解,讓學生在該模塊的操作實踐中掌握主要技術,然后,將其他功能模塊的開發(fā)任務交給學生,要求學生在任務驅動下遵循“明確目標、計劃、決策、實施、檢查、評估”的工作流程自行完成任務。教師的教學內(nèi)容由講解技術、示范代碼轉變?yōu)橐龑Р僮?、技術答疑,學生則相應地由模仿編碼轉變?yōu)樽灾髟賱?chuàng)造。這種方法可有效地提高學生的動手能力,培養(yǎng)學生觀察、分析和解決問題的能力,激發(fā)學生的創(chuàng)新意識和思維,真正實現(xiàn)教師與學生的交互。
例如,項目二的班級管理和課程管理模塊的功能要求相似,都包括信息查看、修改、增加、刪除、保存和取消修改功能。在指導學生完成班級管理模塊各任務的過程中,教師講解非連接環(huán)境數(shù)據(jù)訪問類和數(shù)據(jù)顯示控件DataGrid的使用,然后,要求學生完成課程管理模塊。組長帶領各組學生明確功能目標,做好任務實施計劃,參照班級管理功能實現(xiàn)方法選取關鍵技術,確定組內(nèi)分工,完成課程管理模塊的編碼操作,最后,提交給教師進行檢驗和評估。項目三的客房類型管理和客房管理功能模塊也是類似情況,學生在相似模塊的實踐中積極觀察和思考,吸收新知識并及時應用于實際,技術運用能力得以鍛煉。
綜上所述,《數(shù)據(jù)庫應用程序開發(fā)》是一門實踐性很強的課程,基于崗位工作任務需求,選取課程教學內(nèi)容,采用項目教學、遞進分組、角色扮演、示范模塊教學方法,可以充分發(fā)揮學生的主體作用,調動學生的學習積極性,培養(yǎng)學生的動手能力。教師在綜合應用多種教學方法的同時,可以結合使用多媒體、網(wǎng)絡課程等教學手段,從而獲取最佳的教學效果。
浙江省杭州市近日出臺《關于促進中等職業(yè)教育校企合作的若干意見》,于6月7日起實施。
為了讓學生能更好地實習,《意見》提出,中等職業(yè)學校學生在企業(yè)上崗實習期間每月應獲得不低于最低工資標準50%的實習生活補貼。如果企業(yè)接納中職生上崗實習而且實習時間累計超過1個月,那么將按照人均每月200元的標準享受獎勵。這個獎勵標準,還將根據(jù)最低工資標準逐步提高。
《意見》提出,每年將集中組織不少于10%的中等職業(yè)學校專業(yè)課教師到企業(yè)進行不少于1個月的實踐,每年組織不少于100名企業(yè)優(yōu)秀技術人員走進中等職業(yè)學校當“老師”,開展不少于1周的支教活動。
《錢江晚報》
[1]徐麗.對高職軟件技術專業(yè)教學方法改革的思考[J].職業(yè)教育研究,2009,(8).
[2]傅華勤,胡巧玲.關于解決高職計算機基礎教學中學生知識水平差異問題的思考[J].教育與職業(yè),2009,(27).
[3]羅莎.“項目教學法”在高職計算機專業(yè)課程中的探索與實踐[J].職業(yè),2010,(26).
[4]顧永杰.基于項目教學的計算機專業(yè)教師角色之轉變[J].職業(yè)技術,2010,(6).
G712
A
1672-5727(2012)06-0072-02
吳瑜(1981—),女,江西分宜人,計算機科學與技術碩士,深圳信息職業(yè)技術學院軟件工程系講師,研究方向為計算機軟件。