時間:2023-09-25 17:59:56
開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇課程設計和開發,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。
0 引言
隨著農村社區規模的迅速擴大,農村社區數量逐漸增多,農村社區教育課程設計與開發成為農村社區教育發展的重大問題。開發適應當地經濟發展和生產與生活實際的教育內容或教材,給農村社區教育提供一定意義上的指導。
1 農村社區教育課程開發的意義
1.1 有利于構建特色專業課程體系
農村社區教育課程設計開發要充分考慮到社會效益,甚至需要將教育觸角延伸到地方經濟建設最前沿,形成具有地方特色的個性化的社區教育資源,有利于構建特色專業的課程體系。
1.2 能適應農村經濟建設需求
農村社區教育課程具有地方特色,促進農村社區居民知識結構調整,適應地方經濟建設需求,為新農村建設培養專業化人才。
1.3 有助于農村社區居民個性化發展
農村社區居民在文化程度和綜合素質上存在很大差異,對社區教育的需求也千差萬別。農村社區教育課程設計內容和形式豐富多彩,更有利于農村社區居民的個性化發展。
2 農村社區教育課程設計開發現狀及存在問題
2.1 政府支持力度不夠
主要表現在:一是對農村社區教育經費投入不足,經費短缺、基礎設施薄弱,嚴重影響高質量的課程開發和大規模的課程推廣。二是對社區教育管理力度不夠,還沒有一個適合的標準,在運行過程中不易評價。三是相關的政策法規需要進一步完善,需要相關的制度保障農村社區教育課程設計與開發。
2.2 理論和技術層面資源匱乏
現階段關于農村社區教育的研究還不是很多,對于農村社區教育課程設計與開發的相關研究更是少之又少,缺乏相關的理論指導。農村社區教育課程包含的內容廣泛,對課程設計開發人員素質提出更高要求,在具體課程設計開發實踐中還不能深入挖掘具有地方特色的課程資源,目前勝任農村社區教育課程設計開發工作的研究人員匱乏。
2.3 課程設計開發缺少規范
社區教育課程設計開發需要有課程專家的指導,要求有較高的專業素質和教育經驗。由于社區教育課程設計開發主體的缺位,課程設計與開發不能滿足農村居民的需求。目前農村社區教育課程設計開發缺乏主動性與積極性,大部分情況下是通過行政力量來推動的,農村社區領導為完成上級考核任務而進行,不能真正體現農村居民的興趣與需求,出現“以供代需”的現象。
3 農村社區教育課程設計與開發原則
開發設計農村社區教育課程應遵循以下原則:一是因地制宜原則。農村社區教育課程設計開發能夠服務于地方經濟建設,更能集中體現地方文化特色;能適應專業知識和操作技能的動態發展,更能體現社區居民的興趣、愛好和特長。二是科學性原則。農村社區教育課程設計開發過程中要講求實用性,但一定不要忽視科學性,從長遠目標進行規劃設計,確保課程開發的系統性和學術性。三是實踐性原則。課程設計開發應首先考慮知識性和技能性,課程評價體系也要本著實踐性原則,確保課程設計開發的科學性與合理性。四是個性化發展的原則。農村社區教育課程設計開發要根據農村社區居民的接受水平和個性化發展的需要設計教學活動和教學內容,根據發展需要不斷進行調整,形成一個動態生成的過程。
4 農村社區教育課程設計開發的建議及對策
4.1 提高認知,加大宣傳與力度
經費投入和基礎設施投入是政府針對農村社區教育課程設計開發需要解決的兩大問題,應提供足夠的資金和設施。在經費投入上采取“政府撥一點,社會籌一點,單位出一點,個人拿一點”的辦法。各級政府可設立農村社區教育專項經費,按時足額發放,鼓勵民間投資等形式支持農村社區教育。將農村社區教育課程設計開發納入部門考核,有效推動農村社區教育課程設計與開發進程。
對農村社區教育課程設計開發的宣傳,應努力提高認識,通過宣傳教育和推介,得到廣大民眾的認知、接受和支持,引起廣泛關注、參與和投入,營造濃厚的學習氛圍。
4.2 建立課程設計開發保障機制
課程設計開發是一個完整、規范的過程。包括前期對課程資料、存在問題、居民需求等方面的調查研究,并以此為契機,從農村社區發展、居民需求和需要出發,確定和選擇課程內容與教學方式,進而開展教學實施,完成課程評價。課程設計與開發需要管理者、專家、教育者、社區居民等主體協調配合、共同參與。
第一,組織相關人員針對課程設計與開發進行專業培訓,提升專業素質。
第二,科學合理地進行課程設計開發,使開發流程有計劃有步驟進行。在詳細了解農村社區情況及社區資源的基礎上,根據社區與社區居民的實際需求,結合地方農村社區的區域特點,因地制宜地制訂課程設計開發計劃與步驟。根據農村社區及居民的實際需求與需要設計和編排課程內容;根據社區及社區居民的發展確定課程目標;充分發揮學習者的積極性、主觀能動性和創造性,通過過程和發展評價課程體系。
第三,農村社區教育課程設計與開發需要建立質量評價體系,讓質量評價貫穿課程設計與開發全過程。在制訂課程目標、編排課程計劃、組織安排課程內容、進行課程實施等過程中都需要進行全程評價。參與評價的人員要包括授課教師、社區居民,還應該包括管理人員和課程設計專家等全員參與。通過“全程”與“全員”評價與反饋,不斷提高課程設計與開發質量與水平,促進農村社區教育目標快速實現。
4.3 加強教師隊伍建設
農村社區教育教師隊伍和管理隊伍整體素質需要提高,隊伍結構需要調整。
①加強農村社區教育專職、兼職教師的招募與培養,提高教師素質與水平。通過完善引進和培訓模式,以觀摩、研修、培訓等多種方式,提高農村社區教育教師業務素質,提高課程設計開發能力。
②利用城市帶動農村的拉動機制,通過城鄉交流輪崗、對口支援等方式,促進城鄉教師之間的交流與發展,提高農村社區教育教師素質與水平。
③制訂保障措施,提高農村社區教育教師待遇。
④建立健全農村社區教育教師引入與管理機制。建立日常考核和培訓制度,健全評價與考核機制。總之,農村社區教育課程設計與開發需要專職教師、兼職教師、志愿者共同參與,適應農村社區實際需要,保證社區教育課程設計開發高效率、可持續發展。
4.4 突出特色,注重質量
目前,無論從農村社區教育課程數量方面,還是課程質量方面,都不能滿足農村社區及社區居民的實際需求,數量少,整體水平偏低。在這種情況下,農村社區教育課程設計與開發更要突出特色、注重質量。課程內容、學習形式貼近居民需求,教學過程突出重點、難點,教學方式方法上體現多元化,切忌高、大、空,真正具有先進性和創新性。
4.5 完善課程評價體系
關鍵詞:復雜工程問題;計算機科學與技術專業;課程設計
工程教育認證要求通過認證的工程專業不僅要深入理解和把握復雜工程問題,更要按照國際實質等效原則培養學生具有解決復雜工程問題的能力[1]。目前,針對計算機相關專業解決復雜工程問題能力培養的研究還處于探索階段。許智宏等人認為可采用半開放式項目驅動教學方法達成目標[2];尚鳳軍提出課程群建設面向復雜工程設計的方案[3];黃永紅等人認為可增設綜合訓練項目來達到培養目標[4]。劉秀平等人提出了分層實施方案,從知識、實踐、設計的維度支撐了解決復雜工程問題的能力[5]。王宏宇等人提出了以學科競賽主題為對象,遵循工程邏輯設計開發過程的課程建設改革方法[6]。許多研究成果對于分解落實解決復雜工程問題能力的培養缺乏深入探索,對于如何優化課程設計體系和內容來提高學生解決復雜工程問題的能力方面也缺乏深入研究。
1課程設計改革的意義
完備的實踐教學體系主要包括課程實驗、課程設計、實習、畢業設計(論文)等。通常,國內高校都將畢業設計(論文)環節作為實現解決復雜工程問題的重要載體。但近年來,畢業設計期間應聘、考研等擠占了學生很多時間和精力,設計內容往往弱化甚至忽略難以處理的學科交叉問題和非技術因素,且畢業設計往往采取一人一題,很難達到個人與團隊的教學指標。課程實驗往往隨理論授課逐周分散進行,受學時限制以及學生知識掌握處于積累階段等因素,一些深度型、探究型、綜合型的實驗往往很難開展。實習由于受到場地、經費、管理難度、企業技術保密等限制,往往缺乏理論指導下的實踐。一些計算機類專業學生到實習單位后,只能接觸一些前端頁面或模塊代碼的機械性編寫,無法接觸軟件或硬件的具體設計過程,有些專業實習甚至畸變為企業參觀。《計算機類專業教學質量國家標準》要求計算機類專業學生4年的實驗當量應不少于2萬行代碼。在課程設計方面,要求至少完成兩個有一定規模和復雜度的系統的設計與開發。調研發現,實踐教學體系中提高學生解決復雜工程問題的環節應保證時間的集中性,內容的規模和復雜度要達到國家標準中的要求,且應在理論的指導下開展,課程設計比較符合這一要求,應作為提升學生解決復雜工程問題能力培養的關鍵突破口。
2課程設計改革宗旨和研究方法
2.1課程設計改革宗旨
第一,以培養學生解決復雜工程問題能力為主線,突出工程技術應用能力的培養,強調自主學習和終身學習意識培養,全面提升學生的能力和素質。第二,使學生能夠設計針對復雜工程問題的解決方案,在設計環節中體現創新意識,實現多方案分析與評價,從而全面提升實踐教學效果。第三,使學生深入掌握工程原理,結合工程實踐,體現綜合運用,提升解決復雜工程問題的能力。第四,分解落實解決復雜工程問題能力的培養,課程設計的持續改進逆向推進課程體系的整體優化。第五,構建計算機專業完善的實踐教學體系和課程群體系,建立各項實踐教學活動的持續改進機制。
2.2基本研究方法
第一,調研法。采取調研問卷調查和訪談的方式,對目前已畢業學生、在校生(包括計算機類專業本科生、研究生)、教師(包括教學管理、教學一線、教輔等多層面)開展調研。同時走訪和調研部分高校、IT企業和專業培訓機構等。第二,逆向研究法。從實踐入手,逆向優化專業類知識體系教學。第三,分析建模法。對調研數據、教學環節統計與考核數據、質量保證監控數據進行科學分析,借助人工智能手段進行建模優化。第四,螺旋優化、研以致用法。杜絕紙上談兵,形成的專業課程設計內容設置實施方案(含教改方案、教學大綱、課程標準、考核標準等),直接實施于一線教學活動,并通過實施效果的反饋螺旋優化后續方案。
3課程設計改革實踐
課程設計計劃的實施要求指導教師明確課程設計對應于工程教育認證標準具體的畢業要求指標點,并要在課程設計過程中堅持實施。明晰課程設計對畢業要求指標點的支撐作用,為合理安排課程設計的內容明確了指導思想。本校計算機科學與技術專業培養方案以工程教育專業認證為背景,共設置11門課程設計。一類課程設計在前5學期開設,涉及專業類知識課程門數相對較少,具體包括以下7門課程設計:C語言程序設計課程設計、Java程序設計課程設計、數據結構與算法課程設計、數據庫原理課程設計、計算機網絡課程設計、C++程序設計課程設計、JavaEE編程技術課程設計。以上課程設計以語言開發為主,是培養學生計算思維、軟件工程設計規范、計算機語言開發能力的基礎。指導教師面向解決復雜工程問題培養,認真設定課程設計題目和內容。以學生為中心,強調基礎性、技能性、應用性、工程性和創新性,采用問題驅動和求解漸進化方式不斷提升學生解決復雜工程問題的能力。每門課程設計在具體實施中,指導教師始終探索課程設計如何解決承上(課程實驗)啟下(畢業設計和實習),并不斷思考和探索課程設計如何逆向優化專業類知識課程的教學活動。計算機科學與技術專業另一類課程設計在第6和第7學期設置,綜合性較強(在某些高校或專業有時被稱為“綜合開發實訓”或“綜合訓練項目”等,但通常拘泥于一種開發語言或技術)。綜合類課程設計有4門:A.體系結構課程設計。專業類知識課程涉及體系結構、計算機組成原理、編譯原理、匯編與接口技術、計算機網絡等硬件類和系統類課程。B.操作系統課程設計。專業類知識課程涉及操作系統、Linux系統等系統軟件類課程和部分高級語言類課程。C.軟件開發綜合課程設計。專業類知識課程涉及各種高級語言類課程(如Java、C、C++)、軟件工程、數據結構與算法、數據庫原理等軟件開發類課程。D.Python與人工智能課程設計。專業類知識課程涉及各種高級語言類課程(如Python、Java、C、C++)、數據結構與算法、人工智能導論等課程。綜合類課程設計涉及大量通識類知識和學科基礎知識,具有較高的綜合性,包含多個相互關聯的子問題,體現問題和系統的規模、難度、復雜度、綜合性。課程設計更強調培養學生的系統觀,使學生能夠站在系統的高度,以系統的視角去看問題,去適應錯綜復雜的應用場景,最終實現問題的系統化、科學化求解。“軟件開發綜合課程設計”綜合了之前的.NET綜合課程設計、Java綜合課程設計等軟件開發類課程設計。根據工程教育專業認證要求,這門課程設計并不拘泥于某一種語言或技術要求,要求學生能夠針對復雜工程問題,選擇與使用恰當的技術、資源、現代工程工具和信息技術工具等設計開發一套軟件系統,并通過對比得到有效結論。“Python與人工智能課程設計”以解決復雜工程問題入手,學生首先分析問題建立模型,然后給出解決方案和算法設計,通過Python語言及其擴展庫編程實現系統,最后通過設計方案、模型、算法、開發語言等多個角度對比分析給出所設計系統的客觀性評價。在2017版培養方案中該課程設計為“Python程序設計課程設計”,設計內容包含了軟件開發、大數據、人工智能、深度學習等。2019版培養方案中,專業增設了1門48學時的人工智能導論理論課,Python程序設計和人工智能導論合并為1門2周的“Python與人工智能課程設計”。“體系結構課程設計”和“操作系統課程設計”是專業認真研究工程教育認證標準后于2019版人才培養方案中新設置的2門課程設計。在學時緊張的情況下,專業仍增設了這2門綜合類課程設計,力圖保證學生硬件系統、組成原理、體系結構、操作系統方面的綜合設計能力培養質量,保證人才培養的系統性和專業性。課程設計具體實施過程中,指導教師以突破解決復雜工程問題能力培養為核心安排課程設計內容,使學生的能力培養達到工程教育認證標準的培養要求,反復思考和嘗試解決以下關鍵問題:第一,課程設計內容重點覆蓋了《華盛頓協議》7個特征中的哪些特征?課程設計的規模、難度、復雜度、綜合性是否能滿足工程教育認證背景下的解決復雜工程問題的要求?第二,課程設計中,如何運用深入的而不是淺顯的工程原理,經過什么樣的分析,而不是直接套用原理、公式來解決設計目標?第三,課程設計中學生在哪些理論指導下進行實踐?加深對哪些原理的理解?第四,為了突出復雜工程問題的解決,與課程設計相關的一門或多門相關課程的講授環節中,將對傳統的授課方式、方法和內容采取哪些變化?與課程設計相關的理論知識講授和基本實驗環節能否為學生完成課程設計奠定扎實基礎?第五,課程設計是否要引入混合式教學?如果引入,混合式教學將如何提高課程設計效果?第六,從以學生為中心的角度分析學生如何通過課程設計和相關理論的學習,實現從“學了”到“學會”再到“會應用”?第七,課程設計“能力培養”如何量化考核,“復雜度”如何評價?以產出為導向,如何建立持續的人才培養改進機制?通過指導教師的不斷思考和改革嘗試,使各門課程設計實現了設計理念的轉變、從簡單到綜合的轉變、從單一系統到增加對比分析、綜合評價等突破常規的轉變。
4課程設計改革效果
課程設計改革使計算機科學與技術專業逐步形成一套課程設計內容設置實施方案(含教改方案、教學大綱、課程標準、形成性考核標準等),并直接實施于現有教學活動。通過培訓和專家輔導講座等形式,指導教師深刻理解了工程教育認證的本質和內涵,改變了傳統的課程設計理念。以復雜工程問題的提出和解決為課程設計核心,突出產出導向,精心設計課程設計題目,優化課程設計考核指標,建立了課程設計持續改進機制。課程設計改革在人才培養方面取得了切實效果。第一,以培養學生解決復雜工程問題能力為主線,突出工程技術應用能力的培養,增強了學生自主學習和終身學習意識培養,設計理念更符合學科發展趨勢。第二,使學生能夠設計針對復雜工程問題的解決方案,在設計環節中體現創新意識,養成了多方案分析、對比和評價的設計習慣。第三,使學生逐步掌握深入的工程原理,結合工程實踐,綜合運用,提升了解決復雜工程問題的能力。第四,以課程設計內容設置為突破口,逆向推進課程體系設置整體優化,使學生通過實踐逆向推動理論課學習的興趣和動力,學生的理論素質進一步提升。課程設計改革首先在省級一流本科專業“計算機科學與技術”專業實施,并推廣至軟件工程、數據科學與大數據技術、物聯網工程三個計算機類本科專業。與信息技術密切且相關的電子商務、電子信息工程、機器人工程等專業也逐步開展了面向復雜工程問題能力培養的課程設計改革,取得了切實有效的實施效果。
5結語
截至2018年,計算機類專業已達3349個專業點,培養學生復雜工程問題的解決能力,是工程教育專業認證對工程類專業人才培養的核心要求,也是一流本科專業建設的核心目標之一。隨著工程教育認證的普及開展,面向OBE理念,突出解決復雜工程問題能力培養的課程設計改革越發迫切和必要。只有不斷改革,建立持續改進機制,才能不斷優化計算機教育教學工作,為信息技術產業培養更多優秀人才,推動我國信息技術產業的蓬勃發展。
參考文獻:
[1]林健.如何理解和解決復雜工程問題:基于《華盛頓協議》的界定和要求[J].高等工程教育研究,2016,(05):17-26,38.
[2]許智宏,李妍,董永峰,等.半開放式項目驅動復雜工程問題能力培養實踐[J].計算機教育,2019,(02):37-40.
[3]尚鳳軍.面向復雜工程問題的計算機人才創新能力培養體系研究[J].計算機教育,2016,(09):70-73.
[4]黃永紅,蔡曉磊,劉國海,等.電氣類專業“復雜工程問題”的理解與實踐[J].電氣電子教學學報,2018,40(06):15-18,22.
[5]劉秀平,韓麗麗,胡新煜,等.基于工程教育專業認證的自動化專業復雜工程問題實踐探索[J].中國現代教育裝備,2021,(21):67-69.
關鍵詞:軟件開發;課程設計;教學模式
在軟件技術和軟件行業飛速發展的今天,世界各國都面臨著“軟件產品開發、軟件產品使用、軟件產品維護”人才的巨大需求。國內也比較重視軟件技術專業人才的培養,許多高校在近幾年紛紛設置獨立的軟件學院,計算機相關的專業中也開設關于軟件開發方面的課程,如C語言、C++語言、Delphi、VB、Java語言等[1]。即使每年有大批的軟件專業畢業生畢業,但軟件開發行業卻依然存在人才匱乏的問題。所以,如何讓軟件課程教學貼近社會需要,提高畢業生的市場競爭力,縮短與軟件開發行業差距成為了很多高校思考的問題。筆者認為,除了加強專業定位、整合相關課程外,還應該加強以崗位能力來指導軟件課程的綜合性課程設計環節,進而加強學生的職業能力,縮短與實際崗位差距。
1.軟件開發工作崗位能力介紹[2]
由于不同類型的軟件企業所設置的工作崗位與職責不盡相同,現僅列出軟件開發工作崗位共同的能力要求。
(1) 具有熟練操作使用計算機和網絡的能力。
(2) 具有熟練使用新型辦公軟件能力。
(3) 具有較強的信息檢索與分析能力。
(4) 具有較強的外語文檔閱讀能力。
(5) 具有較強的軟件工程文檔編寫能力。
(6) 具有較強的數據庫管理和維護能力。
(7) 具有較強的軟件應用、維護與測試能力。
(8) 具有較強的程序設計編碼能力。
(9) 具有較強的軟件分析與設計能力。
(10)從事相近專業和自主創業。
(11)具有一定的自我學習與提高能力。
(12)具有主動溝通與表達及團隊協作意識。
2.目前軟件開發系列課程綜合性課程設計存在的不足
(1) 偏重語句的使用規則和方法,對問題本身的特性關注度不夠。如項目中涉及到的算法效率問題多數任課教師易忽略;
(2) 缺乏相關的職業能力培養[3]。在課程設計中,多數教師只關注有沒有完成相關功能,從而忽略了軟件開發過程中必須遵守的準則,如程序的可讀性、重用性、易于維護、結構規范、良好的注釋等;
(3) 課程設計教學實施的過程中選擇的實踐題目不切合實際,學生完成項目開發后無法真正應用到實踐中去。
3.基于崗位能力的軟件系列課程綜合性課程設計的教學方法介紹
在基于軟件開發人員崗位能力的軟件課程設計的教學模式中,任課教師只負責引導學生如何學習新技術、如何開展及完成各階段分配的任務,并做出過程評價與最終評價標準。同時任課教師要制定多元化的有應用價值的真實的課題,將班內同學分成若干小組,以小組共同協作的方式開展相關課題的需要分析、計劃書寫、模塊開發、系統后期測試與完善、系統說明書的書寫及最終答辯等。
現將整個教學過程簡要闡述如下:
3.1學時安排及人員分工
軟件開發類的課程設計在教學計劃中一般安排54學時內完成。為培養學生的團隊精神和協作能力,特要求每班分成若干組,每組根據選題難度不同將3~5名同學組成一組,共同完成選題內容。
3.2教學過程
(1)作品演示
在課程開始初期一定要多選幾款歷屆學生的優秀作品做演示,讓學生了解在完成此教學環節后應該達到的程度,通過作品激發學生的學習熱情,堅定學習信念。同時也要介紹幾款歷屆失敗的作品,進而提醒學生在開發作品的過程當中應該注意的一些問題,如開發之前要弄清軟件的使用對象、要做好需要求分析,要知道軟件要達到的功能,不能想當然。
(2)讓學生了解課程設計的大體流程
在此過程中要求同學自學《軟件工程》課程,再按照指導教師的統一安排,以小組協作的方式共同完成項目設計。指導教師首先講解課程設計的實施流程與各個環節中的要求及注意事項,如圖1所示。再要求以小組為單位進行選題、需求分析[4]、調研和文獻資料檢索、書寫計劃書、開發軟件、軟件測試、書寫軟件設計說明書等[5],總共歷時54學時,最終以答辯形式進行驗收。
(3)定題與任務完成的時間安排
在此環節,指導教師可以從自己的科研項目中拿出一個模塊,或以學生比較熟悉的、感興趣的內容當中制作不同類型的題目以供學生參考,如:劇場票務管理及智能卡開發、圖書館內讀者導讀系統、中小學排課管理系統、題庫建設及試卷生成管理系統、個性文本編輯器、個性繪圖軟件開發、媒體播放器開發、個人網站開發、游戲軟件、國稅檔案管理系統等。同時也可以允許同學自行尋找課題,但必須是有實用價值的項目。同時,在給定學生制定課題時,一定要提供一些基本信息,如表1所示。
表1 課題對應的基本信息表
(4)課程設計評價
課程設計的總體評價=過程評價[6](40%)+綜合評價(60%)。
其中過程評價由自我評價[7]與指導教師評價共同組成。其中自我評價部分包括:本階段自主學習內容、課題進行中遇到的難點、解決方法、重要功能中的算法分析、不足之處等,如表2所示;而指導教師評價主要考察的是小組成員出勤情況、是否能按時完成相應的任務要求、完成質量如何、小組團結協作能力、自主學習能力、收集資料能力與解決問題的能力,如表3所示。
表2 過程評價之自我評價表
表3 過程評價之指導教師評價表
綜合評價包括最終課題完成情況,即與計劃書是否相符、程序的健壯性、代碼的可讀性、程序的實用價值、小組答辯情況等,如表4所示。
表4 綜合評價
4.基于崗位能力的軟件系列課程設計教學模式應用效果
基于實際崗位能力的程序設計類課程設計教學模式在應用的過程中,還應該輔助多種教學手段,如鼓勵學生參加國家級程序員等級考試、引導學生參加各種課外競賽活動,如ACM程序設計大賽等,以發揮學生的創新與實踐能力。自我校在程序設計類課程設計教學中采用了基于實際崗位能力的教學模式后極大地提高了學生的軟件開發能力,縮短了與實際崗位要求的差距,目前學生開發的很多作品也都投入到實際應用當中,如中小學排課系統、在線測評軟件、試題庫建設與試卷自動生成系統、公寓管理系統等。
參考文獻:
[1] 馬雪英.以能力為導向的程序設計類課程教學體系[J].計算機教育,2011,4:74-78.
[2] 金波.高職院校程序設計課程教學策略[J].西藏教育,2011,4.
關鍵詞:項目開發能力;教學過程;實施方法;考核方法
中圖分類號:G642 文獻標識碼:A
1引言
數據庫技術是計算機科學技術中發展最快的領域之一,也是應用最廣泛的技術之一,已成為計算機信息系統與應用系統的核心技術和重要基礎。當前,計算機的計算模式已由單用戶發展到主從式或主機/終端式結構、C/S結構、B/S結構,進而發展到了Web服務與網絡計算時代,而數據庫及其技術一直是它們的后臺與基礎。
當前國內軟件產業發展迅速,為了增強學生的就業競爭能力,必須全面培養學生的軟件項目開發能力,以適應時代的發展。學生在大學四年學習中,不僅應該掌握一定的理論與技術知識,而且應該樹立管理理念,建立項目工程思維觀念。
數據庫課程設計是學生實踐數據庫理論知識,真正掌握數據庫應用系統開發技能所必須的學習環節,目的在于培養學生面對大量而復雜的數據管理要求時,具備分析問題和解決問題的能力。我們于2004年完成對數據庫課程設計的教學方法改革,不僅在教學手段(包括課程設計的實施過程、考核方法等)上進行了體系化和規范化,而且與“軟件工程”課程結合,對兩門課程的實踐教學環節進行了整合。
通過兩課整合的課程設計,不僅使學生在理解數據庫理論的基礎上,實際動手開發一個實際的應用系統,而且培養學生應有的團隊協作、自主管理、主動學習、創新思維、綜合運用、動手實踐等能力,使課程設計真正成為學生驗證理論的“實驗場”,成為開發學生潛力、培養實戰能力的“戰場”,成為體驗項目開發過程的“運動場”。
2數據庫課程設計的教學方案
2.1基本內容
學生運用已學數據庫理論思想和數據庫設計理念,具體設計一個實用小型數據庫應用系統。開發設計過程按以下順序進行――自選課題研究方向,調查用戶需求,總結歸納數據流程,分析性能,書寫需求分析及總體設計報告(包括數據流圖、數據字典、數據庫概念模型、邏輯模型、系統功能模塊),完成應用系統的開發,匯報設計成果(包括撰寫設計報告、系統驗收、結果匯報),在這一系列工作中樹立學生項目開發管理思想,培養學生的綜合素質。
2.2進度安排
為使學生充分感受數據庫系統開發的全過程,安排課程設計進度如下。
2.2.1前期準備階段
該階段主要任務是理解數據庫、數據模型和數據庫系統的基本概念;掌握數據庫的概念模型、數據模型及數據
庫系統的設計方法;進而確立自選課程設計題目,并依據軟件工程中項目需求調研方法進行系統需求調研,繪制系統數據流程,提出系統要解決的問題。該階段成果主要包括3份報告。
(1) 系統需求分析報告:包括采用的工程開發模型,數據流圖和數據字典,系統功能。
(2) 數據庫信息要求報告:對數據庫中要存儲的信息及語義進行詳細描述,對數據約束和數據之間的關聯進行詳細描述。
(3) 數據庫的操作和應用要求報告:詳細描述數據庫的數據操作要求、處理方法和處理流程,畫出系統功能劃分的模塊圖。
2.2.2基本操作階段
主要任務是掌握數據庫系統的基本操作,包括SQL語言的應用以及利用DBMS的工具進行數據庫定義、維護、查詢及掌握數據庫安全性、數據完整性和并發控制技術等基本操作,初步設計系統測試數據,并能夠正確解決實際遇到的問題。該階段的成果包括一套系統數據表、關系以及基本數據。
2.2.3技術提高階段
該階段要求學生不僅掌握書本上的內容,而且還需要自學一些數據庫系統開發新技術和相關知識。主要任務是掌握數據庫備份和恢復技術以及有關的數據轉換、復制、傳送和數據庫系統編程技術。該階段成果為新技術交流討論資料。
2.2.4設計完成驗收階段
該階段教師通過3種方式對學生設計的應用系統進行全面驗收:系統運行測評、分小組成果匯報和上交課程設計報告。
2.3全程指導原則
在課程設計進行過程中教師僅從宏觀上把握一系列原則,讓學生自己有更大的可選范圍,實踐時間長,緊密結合應用,實現了在課程設計中全面培養項目開發能力的目標,體現了新課程教學理念。在方案實施中嚴格要求學生從理論出發,與實際項目結合,從而提高他們項目開發的綜合能力。
2.4評分原則
2.4.1根據數據庫系統總體結構對系統從三方面進行評測
數據庫原理、數據庫應用和數據庫設計三部分有機地聯系起來形成數據庫系統的總體結構,因此對課題設計的評測也從這三方面著手,達到對數據庫系統的主要內容和框架的評測。
(1) 數據庫原理部分:主要評測學生在數據庫的數據結構設計、數據庫系統總體設計以及數據庫安全保護方面完成的工作。
(2) 數據庫設計部分:主要評測學生如何將現實系統的數據通過某種數據模型組織起來,并利用DBMS系統提供的功能,完成結構及其約束的建立。
(3) 數據庫應用部分:主要評測現實系統業務邏輯的實現,即通過某種應用模式(C/S模式、B/S模式)和某些(個)程序設計語言、開發技術和工具,在數據庫設計以及DBMS平臺支持的基礎上,實現現實系統的業務功能,為用戶提供友好和人性化的業務操作界面。
該環節的目的是使學生對于理論課中涉及的內容和自學內容進行綜合實踐以達到對它們之間關系的清晰理解,實現理論與實際的緊密結合。
2.4.2嚴格把關和考核,確保每一名學生在課程設計中得到實實在在的鍛煉
由于課程是在學生第七學期開設,并且貫穿整個學期,很多學生面臨考研或其他一些畢業前的事務,為了防止有些學生對課程設計任務敷衍了事,我們對課程設計的考核方法進行了詳細規劃,實施過程考核,而不是結果考核。具體考核步驟主要分為以下幾個方面。
(1) 開題階段:在第1~3周進行,要求每組寫一份開題報告,包括課題內容、建立的需求分析及總體設計、小組成員任務分配、具體時間分配計劃等,審驗合格后方可進行系統開發。
(2) 中期檢查:在第8~9周開展,根據計劃表檢查學生開發進度,糾正問題,督促學生按計劃開展課程設計。
(3) 系統驗收:在第13周進行,學生演示系統,說明和解釋運行效果。考查的重點:每名學生是否完成了分配的任務以及任務量的多少、完成情況等。通過該階段以后方可進入答辯階段。
(4) 答辯:在第14周進行,每組學生指派一名代表進行陳述,然后進入教師提問環節(可提問小組中任何一名學生,為了鼓勵學生參與提問,凡是提問的學生可以獲得成績加分)。考查的重點:陳述是否清晰、回答問題是否正確。
(5) 課程設計報告:報告的編寫是考查一個學生總結工作,撰寫科技論文的能力。考查的重點:報告是否內容完整、充實,條理是否清楚,格式是否符合科技文章規范。
以上各個方面考查的結果,進行匯總和綜合評判,最后得出評分。
3數據庫課程設計的創新點
3.1整合課程
目前在我國項目管理人員奇缺,大多數項目負責人在技術上能獨當一面,而項目管理方面的知識缺乏,并且普遍存在著“重技術,輕管理”的思想,因此導致項目開發效率低、花費大。我們在課程設計中結合軟件工程課程中學習的項目開發管理思想,對整個課程設計任務進行全面管理與實施,樹立工程概念,培養團隊合作精神。主要從以下幾個方面強調管理理念。
(1) 認真執行需求分析與需求管理。
(2) 合理制訂時間執行計劃,記錄與分析時間分配效果,積累時間分配經驗。
(3) 個人分工明確,團隊合理協作,通過全過程管理理念的貫徹,提高學生的管理能力,培養學生團隊合作進行項目開發的素質。
同時各項目小組在課程設計的各個階段還需填寫階段性報告,包括項目開發計劃、小組角色的職責、需求規格說明書、概要設計說明書、詳細設計說明書、項目開發日志等。
通過全過程管理理念的貫徹,提高學生的管理能力,培養學生團隊合作進行項目開發的素質。
3.2豐富選題
教師推薦部分設計題目供學生選擇,學生也可以自擬題目課題。但是課題的選擇要由教師把關,主要依據以下幾個原則。
(1) 隨著Internet和Intranet的普及,網絡數據庫應用需求越來越廣泛,因此課題注重開發基于B/S或C/S結構的網絡數據庫系統,以適應時代需要。
(2) 選題要求學生盡量選擇實際需求的題目,這樣學生不僅可以走出“象牙塔”,通過調查走訪,了解國內計算機應用發展的狀況,開闊眼界,而且在開發一個真實項目中,帶來求學的動力,激發自主學習的渴望以及創造力。
(3) 對于虛擬題目,要求學生切合實際需要,符合發展潮流。
3.3工具多樣
市場實際可用的編程開發工具與日俱增,且不斷更新,為此在課程設計中,對于學生到底選擇哪種開發工具,不做過多限制,鼓勵學生自主選擇,使學生可以選擇自己感興趣的程序設計工具進行系統開發,一方面鍛煉他們自學的能力,另一方面也讓學生成為項目開發的決策者,這種“主人翁”意識使得他們變被動學習為主動學習,實踐證明學生自主學習的積極性和主動性直接決定了項目開發的成與敗。
實際運作中教師會隨時了解開發工具的發展形勢,提出指導性意見,使學生根據選題“量身訂做”工具,避免所選工具“大材小用”;跟上當前發展方向,實踐技術“與時俱進”。同時,要求學生以講座形式分類介紹所用新的開發工具,講解自己學習新開發工具之后的體會,通過這種研究性的學習方式,避免學生重復學習、盲目學習,同時打開眼界,更加廣泛了解技術發展局勢。
3.4彰顯個性
在完成數據庫應用系統基本功能的基礎上,鼓勵學生運用安全技術、多媒體技術和美術功底等突出系統特色,完善系統性能,培養學生綜合運用知識和創新的素質。
主要在以下幾方面做進一步要求。
(1) 強調系統中信息安全保護的實現,把理論課中關于“數據庫安全保護”的教學內容應用到所開發的系統中,學以致用。
(2) 用戶界面友好、設計合理、畫面優美反映系統設計人員的審美意識,強調色彩的協調,布局的合理,操作的方便。
(3) 各組之間允許選題相同,但必須突出本組特色,使學生通過競爭,努力發揮個人特長和創新意識。
3.5理論聯系實際
系統的評測按照數據庫系統的總體結構進行,從而達到對數據庫系統的主要內容和框架進行評測,使學生對于理論課中涉及的內容和自學內容進行綜合實踐,以達到對它們之間關系的清晰理解,實現了理論與實際的緊密結合。
3.6過程評測
課程設計分階段,每階段設有檢查與評估,既做到及時指導,又確保督促每一名學生在課程設計中得到實實在在的鍛煉。考核依據環節的特點進行不同形式的考評,不僅培養學生的語言表達能力、編寫技術文檔、科技論文的能力,而且可以發現有組織能力的人才。
4實踐效果
依據匯總的五輪評測統計表格可以看到,學生在課程設計中,學習積極性高漲,開發出來的系統形式多樣,有單機版、C/S或B/S結構的網絡版,甚至C/S和B/S結合的網絡版,使用的數據庫管理系統從小型DBMS,如VFP、ACCESS到大型DBMS,如SQL Server、Oracle等,前臺開發工具從傳統的Delphi、VB到先進的.Net、Java等,學生們普遍樂于挑選新工具、新技術,積極檢索學習資料,參與網上BBS技術論壇,相互討論,全面體驗網絡學習環境的樂趣。各組學生除了完成系統應具備的功能外,都在努力突出系統性能特色,完善系統功能,發揮本組同學的特長。各組開發的系統基本符合課程設計總目標的要求,并有幾個系統成為他們工作后繼續研究的方向。
通過數據庫課程設計,表現出大部分學生具備參與一個項目開發的基本能力,并使他們動手實踐、自主學習、積極創新等科學素質得到很好的培養,反映出課程設計大大提高了學生綜合應用所學知識的素質,說明我們培養的學生具備終生學習的能力,能夠適應社會發展的需要。
5小結
學習是人生的一個環節,就業是大學學習后的現實目標。面對嚴峻的就業形勢,培養學生的實際動手人力,提升他們的競爭能力,是教師的責任。在課程教學過程中不斷探索新方法,開展課程教學過程的改革,是教師的必須任務。這里所做的數據庫課程設計改革,意在與大家共同探討如何幫助學生擺脫“沒有工作經驗”難于就業的尷尬局面。
參考文獻:
[1] 錢雪忠. 數據庫原理及技術課程設計[M].北京:清華大學出版社,2009.
[2] 苗雪蘭. 數據庫系統原理及應用教程[M]. 北京:機械工業出版社,2004.
[3] (美)Stephen R.Schach.面向對象軟件工程[M]. 黃林鵬,等譯.北京:機械工業出版社,2008.
[4] 張海藩. 軟件工程[M]. 北京:人民郵電出版社,2006.
The Training for Students’ Project Developing Ability in Database Course Design
WANG Yan-hong, ZHANG Xiao-li, JIANG Xiang-gang
(Department of Computer Science and Technology, Beijing Electronic Science and Technology Institute, Beijing 100070, China)
關鍵詞:數據庫;課程設計;教學方法
中圖分類號:G434
文獻標志碼:A
文章編號:1002-0845(2007)05-0106-02
一、引言
隨著信息社會的到來,既掌握專業技能又具有計算機應用能力的人越來越來受到歡迎。為了適應社會的發展,必須培養既熟悉專業又能把計算機技術同各領域的專業需要緊密結合的復合型人才。數據庫技術成為高校各學科專業的必修或選修課程。數據庫課程設計一般是大學三年級學生在學完計算機應用基礎、計算機編程語言、辦公自動化軟件基礎、數據庫原理與應用等課程后進行的集中實踐環節,主要內容是通過社會調查,選擇一個實際課題,完成數據庫應用系統設計工作,課程結束后提交應用軟件系統和課程設計報告。通過課程設計,可以使學生較全面地理解、掌握和綜合運用所學知識,培養學生調查研究,查閱技術文獻、資料以及編寫技術文獻的能力。非計算機專業學生對于計算機類的課程通常有一定的畏懼感,尤其對計算機語言、編程等,覺得難以駕馭和掌握。如何讓學生通過數據庫課程設計,使他們的各方面能力得到培養和鍛煉,一直是值得思考的課題。本文結合教學實踐,就教學內容、教學手段、考核方式、課程管理等方面進行初步探索。
二、課程設計的目標、內容及要求
教師應了解學生以往所學過的計算機相關課程,注意課程的銜接,分析非計算機專業學生已經掌握的知識和知識的體系結構,明確數據庫課程設計的教學目標、內容及課程設計要求,對需要加強或充實的內容要重點講解和補充。數據庫設計是指對于一個給定的應用環境,構造最優的數據庫模式,建立數據庫及其應用系統,使之能夠有效地存儲數據,滿足各種用戶的應用要求,包括數據庫的結構設計(數據靜態模型的設計)和數據庫的行為設計(應用軟件等的設計)。學生應按照數據庫結構設計的需求分析、概念結構設計、邏輯結構設計、物理結構設計、數據庫實施、數據庫運行和維護這六個階段,分階段分步驟進行,完成每一個階段的任務。根據軟件工程的方法和理論進行應用程序的設計,熟練運用相關語言編制應用系統的界面,實現開發工具與數據查詢語言的無縫連接,建立數據庫應用系統。要求學生要提交課程設計報告、所開發的軟件系統和程序清單。課程設計報告包括各階段的設計內容和對所開發的應用系統的評價,以及課程設計的體會與建議。
為了發揮學生的主動性,教師授課的重點應放在系統化的開發步驟和關鍵性問題的求解上,首先要介紹設計思想、方法和程序設計的思想和方法。課程設計過程中教師要指導學生查資料,如數據庫原理及應用,數據庫系統,軟件工程,管理信息系統等方面的書籍,同時要指導學生善用軟件幫助系統,培養學生學會質疑、自學和調查研究解決問題的能力。針對在校學生接觸實際比較少,沒有實際開發軟件和工作經驗的特點,應精選有代表性的案例,從問題的提出、方案的設計與實施,到最終問題的解決,給學生全面了解解決問題的全過程。然后,由學生當主角,讓學生自己解決問題,鍛煉他們綜合運用知識的能力。
三、課程設計的選題
選題是整個課程設計的前提和關鍵。課程設計題目選擇的難易程度、范圍的大小和是否能激發學生的學習熱情,直接影響到這一實踐教學環節的效果。一個好的題目應該符合以下原則:首先,要符合教學要求,使學生通過課程設計進一步鞏固所學的專業知識,培養學生分析問題、解決問題的能力;其次,一個好的題目應該和實踐緊密聯系。理論來自于實踐,又服務于實踐。要貼近學生學習和生活實際,先選擇容易開發的實用的數據庫應用系統,對學生以后從事相關工作有幫助。脫離實踐的題目往往激發不出學生的學習熱情,達不到預期的目標。
首先,將學生分成若干個小組。分組的依據為:學生的學習成績、知識結構、學習能力、性格特點、男女搭配等,遵循互補的原則,成績好的與成績差的搭配,性格內向的與外向的搭配等。每組人員為5~6名,每組設組長,全面負責小組的學習討論和任務安排。在組長的指揮下,對成員進行分工,善于口頭表達的負責聯系工作和調查研究,計算機操作能力強的負責代碼的編寫,程序設計能力強的負責整體規劃、程序調試和連編,寫作能力強的負責技術文檔的書寫等,成員努力的成果與個體成員共同分享。教師只需提醒學生合理分配工作時間,注意小組成員之間的溝通,幫助把握進度。實踐表明:在互相討論又各自有所負責的學習氛圍中,學生之間可以相互學習、取長補短,對知識的掌握與鞏固有很大的幫助。
其次,各個小組通過討論、觀察、思考、查資料等方式,結合各個學生的特長,參考教師指定的范圍選定課程設計題目,然后與教師進行交流。教師應對學生選定的題目進行批閱,在可行性、工作量大小、小組成員及題目意義等方面進行把關評估,及時將意見反饋給學生,學生再針對教師的意見進行調整,最終確定課程設計的選題。結合教學實踐可以選擇如下題目:客房管理系統、學籍管理系統、學校工資管理系統、科研項目管理系統、高校設備管理系統、檔案管理系統、圖書資料管理系統、教學成績管理系統、后勤管理系統、系辦管理系統、居委會管理系統、職工人事管理系統、宿舍管理系統等。
四、方案設計和方案實施
選定題目后,即可著手完成數據庫課程設計的各個階段的任務。首先,各小組應對所選題目進行分析,通過查閱資料、小組討論、走訪專家或社會調查等途徑,進行調查研究和可行性分析。通過調查組織機構情況、業務活動情況、數據情況、用戶要求,確定新系統的邊界,完成系統需求分析。然后,采用實體聯系模型確定應用程序中的實體和聯系,確定實體的屬性和實體之間聯系的類型,得到局部E-R模型,異對局部E―R模型集成進行輸入/輸出設計和軟件結構設計等,完成概念結構設計。接下來,實現E-R模型向關系模型的轉化,利用關系規范化理論進行關系模式的優化,設計用戶視圖,同時進行界面設計,模塊設計等,完成邏輯結構設計階段的任務。再往下,進行物理設計和軟件實施,最后是應用系統的集成與。小組成員在組長的領導下,可以分頭完成各自負責的任務,小組成員要分工負責和團結協作。教師在指導課程設計過程中,可以設置幾個檢查點,制定階段性任務。如根據課程內容、教學目的、系統規模、工作量等因素,審查各小組遞交的初始設計方案,在設計方案的實現方法、表現形式等方面做出調整建議,以避免在方案實施過程中出現不必要的反復。
在課程設計過程中,提倡通過模仿來學習,只有多模仿才能掌握方法,才有可能創新。學生根據初始方案,通過各種途徑查找與自己的題目類似的范例,通過模仿范例來實現自己的程序。有的學生在范例中看到自己感興趣的內容,通過適當修改,將其應用到自己的程序中,使程序更合理,內容更豐富。學生在掌握了基本方法和解決問題的途徑后,對自己感興趣的內容,自然愿意努力去尋找答案。學生在方案設計、修改、實施的過程中不斷發現問題與解決問題,逐步產生了學習的樂趣。為了避免在分組的實驗、設計中有的同學不積極參與的現象,可以采用隨機抽查的辦法來考核小組的成績,促使小組內部互相監督、互相幫助、互相學習,有利于培養學生學習的積極性,提高教學效果。
數據庫課程設計中實驗是重要的組成部分,教師要詳細布置實驗,制訂上機紀律,并且督促學生嚴格按照課程設計各階段工作要求操作。實驗可以參考以下內容安排:(1)建立數據庫。包括創建數據庫,創建表,建立字段和記錄的有效性約束,建立索引,創建表間關系和觸發器設計等。(2)使用表單操縱數據庫。包括設計表單,創建表單,為表單添加對象,定義表單及其對象的屬性、事件和方法。(3)設計用戶視圖。包括創建不同的用戶視圖,實現用視圖來控制更新數據庫中的數據的目的。(4)設計報表。包括創建報表,打印和預覽報表,注意各個帶區的使用。(5)設計菜單系統。包括規劃菜單系統,創建菜單及其子菜單,為菜單指定任務,調試和使用菜單系統。(6)項目集成。包括使用項目管理器集成數據庫、表單、視圖、報表等數據庫對象,設置主控程序,編譯和發行軟件等。
五、課程設計的考核與評定
學生在課程設計結束后,不僅要提交軟件系統,還要提交課程設計報告,闡述其設計思路、運用的知識及自己的體會。課程設計的成績由以下幾部分組成:考勤占10分,平時抽查和提問題情況占10分,課程設計報告占30分,軟件系統設計占30分,演示與答辯占20分。課程設計報告主要看各個部分的完備性,分析的透徹性和獨到的見解。在評分方式上采取自評和互評的方式,首先由各小組依據教師給出的評價標準給本小組打分,然后由每組各選一名代表給大家介紹系統開發的情況并演示系統,同時回答學生和教師提出的問題。所有小組代表陳述完后,由各組分組討論,對其它組開發的系統進行評價和評分。最后由教師根據其自評、互評分數結合實際情況(包括軟件開發水平、演示能力、回答問題能力、軟件開發文檔等)適當總結并公布成績。
為有效避免學生在課程設計過程中的抄襲現象,教師可以對學生進行有針對性地提問,學生當場解答;教師也可以采取刪除軟件中一些關鍵性語句由學生當場調試的方法檢查學生的學習效果。通過評價和自我評價,學生的學習主體意識得到充分體現和加強,激發了學生發現、分析和解決實際問題的學習積極性,不僅提高了學生運用數據庫理論開發出具有實際應用價值的數據庫應用系統的能力,而且學生思考和解決實際問題的能力也有了較大提高。
六、結束語
課程設計是一種學習、實踐、探索和創新相結合的綜合教學,是高等學校培養人才的重要教育教學環節。通過近年來課程設計的指導實踐.筆者深切地體會到,正確合適的選題、恰到好處的指導、學生積極性的調動、科學的評價手段及課程設計規范化管理等對提高課程設計質量是至關重要的。實踐證明,課程設計大大激發了學生的學習興趣,促使學生將所學的課程知識運用到實踐中去,使學生對所學的知識融會貫通,鞏固加深。課程設計培養了學生的團隊意識和協作精神,增強了學生的創新意識,提高了學生的創新能力。
參考文獻:
[1]靳學輝.數據庫原理與應用[M].北京:電子工業出版社,2004.
關鍵詞:課程建設;課程設計;計算機軟件
作者簡介:張艷(1976-),女,河南南陽人,上海理工大學光電信息與計算機工程學院,講師。(上海 200093)
中圖分類號:G642.0 文獻標識碼:A 文章編號:1007-0079(2013)05-0096-01
計算機是一門技術性、工程性和應用性很強的學科,教育部高等學校計算機科學與技術教學指導委員會的發展戰略研究報告中也指出:計算機專業的人才應該被分為科學型、工程型、應用型三類,而絕大多數應該是工程型和應用型的。許多高校注重學生專業能力的培養,紛紛開設實踐類課程以滿足信息社會對實用型人才的需求。因此,如何建設實踐類課程無疑是擺在每位一線專業教師面前的重要課題。本文以“應用軟件課程設計”課程的建設為主要探討對象,介紹了該課程的設置意義、教學方法和實施細則,希望能對計算機專業實踐類課程的建設和教學以及學生的就業有所幫助。
一、課程設置的重要意義
在大學里,設置一門課程,不能只關注這門課程所含的內容,更要考慮本科教育培養學生基本專業能力、可持續發展能力等這些本質性的問題。計算機學科問題求解的基本思路是“問題形式化描述計算機化”,以抽象、理論、設計為其學科形態。按照計算機科學與技術專業本科生的培養目標,到學生畢業時應具備計算思維;算法設計與分析;程序設計與實現系統的認知、分析、開發與應用等四大基本能力。
“應用軟件課程設計”課程面向大三的學生開設,在計算機科學與技術專業四年本科教學中,是以前期的“數據結構”、“計算方法”、“離散數學”、“軟件系統”(包括編譯原理,操作系統)、“軟件工程”、“程序設計”、“數據庫原理”以及“計算機網絡與通信”等課程為基礎的一門軟件開發技術綜合應用的專業課程。該課程讓學生綜合運用專業知識,通過動手實踐,以團隊協作的方式根據軟件工程的原理選擇難度適中的課題,完成網絡環境下基于B/S架構的綜合應用軟件的系統設計與實現任務。課程設置的目的就是通過本課程的系統學習與實訓,達到全面提升學生綜合應用軟件的實際開發能力和團隊合作能力,以解決傳統教學中理論學習與工程應用相脫節、單門課程孤立地學習與缺乏正確運用學科體系的理念來指導學生實現綜合技術全面應用的突出問題,以期有效地實現計算機科學與技術專業本科學生的培養目標。
課程開設近10年的實踐證明,學生綜合運用計算機專業基礎知識,科學設計、開發軟件,合理進行軟件開發的能力得到全方位的、實戰型的鍛煉,不僅實現了專業理論知識與實踐有效地相互結合,而且很好地鍛煉了學生的動手實踐能力和團隊協作能力,為日后的擇業起到很好的鋪墊作用。
二、“應用軟件課程設計”的教學內容
“應用軟件課程設計”主要以曹渠江教授編寫的《綜合運用軟件設計》一書為教材,輔助以課程網站和網絡上的各類學習資源,要求學生利用軟件工程、面向對象程序設計的思想,根據課程項目任務和功能完成課題的需求分析;制定課程項目詳細的時間進度規范;利用面向對象程序設計、計算機網絡、數據庫原理、多媒體技術等相關知識來進行數據庫設計與開發;熟悉和掌握網絡應用的開發環境,分析課題中技術難點并進行技術攻關;根據制定的時間進度計劃和需求分析,進行網絡環境下基于B/S架構的系統軟件模塊的編寫、開發與整合;對整個項目所有模塊進行代碼集成測試、軟件產品完善;最后提交課程設計個人報告、課程設計小組報告以及完整程序。整個課程總學時為64學時,主要以機房實踐為主,通過演示軟件、答辯的形式公開、公平地評定成績。
三、應用軟件課程設計的實施方法
1.本課程的實施原則
實踐類課程不同于其他計算機專業課程,主要以實踐為主,這就比較難控制進度和公正地評價學習成績,因此筆者制定了如下實施原則:
由教師提供網上新聞管理系統、網上寵物商店、網上公文流轉系統、藥品管理系統、繼續教育管理系統、網上用戶投訴系統、在線同學錄、企業倉庫管理系統、班級相冊管理系統、在線學籍管理系統、網上聊天室、客戶關系管理系統等難度適中的十幾個項目,對于每個項目都講明設計要求和要求實現的基本功能;按照自愿原則,四到六個同學組成一個項目小組,推選出一位組長。對于沒被組合的同學,由教師統一安排,每組配備一位有項目開發與項目管理經驗的研究生為指導教師,負責學生的上機輔導、課外答疑、技術咨詢與指導;每組由組長填報所有成員的個人信息,以便師生之間緊密聯系;每組組長代表小組全體成員與指導教師商定每周一次的輔導、提問與答疑的時間,并互通聯絡信息;教師每周安排兩次上機,每次4個學時。最初的3周(12學時)進行理論授課,主要講課程基本要求和安排以及軟件工程、軟件開發工具和方法的基本知識;設立課程公共電子郵箱,上傳所有課程資料、進度安排和學生要提交的各個階段的文檔模板,每位學生必須根據給定的工作模板與課程要求,在不同時間節點完成個人與小組的初期、中期、末期三個時期的階段報告和最終的課程設計報告;最后進行大組公開演示和答辯,全體指導教師根據答辯情況、提交的報告質量、平時上機表現與平時的檢查情況集體打分,綜合評定出每位學生的最終成績。
2.本課程的教學安排
整個課程在實際教學過程中,按照16周的總體時間共分為以下5個階段。
(1)課程設計第一階段(3周):認真學習教材和閱讀課題任務說明書,根據軟件工程的理論和選定項目任務完成課題的需求分析;制定本課題的實施方案,完成個人角色任務分配等各類文檔和開發規范;確定課題技術難點及其攻關措施;熟悉和掌握.NET的開發環境、后臺數據庫開發工具以及與課題相關的開發工具。在本階段結束時,向指導教師提交課程設計個人及小組的初期報告。
(2)課程設計第二階段(4周):根據制定的時間進度計劃和需求分析,進行系統數據庫的實現及應用軟件的初步模塊編寫與開發。在本階段結束時,向指導教師提交課程設計個人與小組的中期報告以及個人階段性開發的程序源碼。
(3)課程設計第三階段(4周):本階段是項目開發的實質性階段,對整個項目所有模塊進行開發并進行代碼集成測試、完善整個軟件產品。在本階段結束時,向指導教師提交課程設計末期的個人和小組的報告。
(4)課程設計第四階段(3周):完成全部代碼的開發工作,檢查并匯總本課題小組成果,課題小組完成項目開發總結報告,個人完成各自的課程設計個人報告。在本階段結束時,向指導教師提交課程設計個人與小組的報告以及小組的完整的、可供運行的代碼文檔。
(5)最后是課程設計綜合評價階段(2周):對本課題設計項目綜合評價,最后進行大組公開演示和答辯,檢查程序運行效果;全體指導教師根據答辯情況、提交的報告質量與平時的上機情況集體打分,綜合評定出每位學生的最終成績,力求公平、公正。
另外,在課程結束后會召開師生座談會,集中講評、總結課程的教學、學習情況,征求學生對課程和教學方面的建議和意見,同時給學生指出專業學習的努力方向,學生給教師提出今后課程需改進的地方,使教與學相互促進從而不斷完善該課程。
四、結論
“應用軟件課程設計”在上海理工大學已經開設10年,是上海理工大學精品課程與上海市教委重點課程建設項目,它很好地體現了計算機專業課程的系統性、完整性、科學性和原理性,有效鍛煉了學生的動手實踐、軟件開發和團隊協作能力,對提高學生的專業能力和專業素質起到了關鍵作用。任課教師在教學實踐中付出了很大的努力,不斷完善課程的教學模式和評價手段,積累了大量經驗,該課程多次受到學生的好評,很多已就業的學生反饋的信息表明:該課程對學生專業素養的培養和從學校到職場的銜接起到了很好的作用,為計算機專業的實踐教學探索出一條切實可行的道路。
參考文獻:
關鍵詞:JSP實訓課程;實訓教學;教學改革
1問題的提出
近年來,我們開展課程設計的教學實踐證明:在二級學院里,相當數量的學生反映JSP語言程序設計課程設計動手實踐比較困難,同時學生在課程設計中缺少項目的實踐經驗,缺少團隊配合,很難獨立開發一個項目;學生的動手能力和公司的實際要求有一定差距,缺乏文檔先行的概念;在學校所學知識與公司實際開發脫軌,對軟件設計在企業中的最新運作模式不是很清楚。這直接影響了教師在后繼軟件課程的理論教學和實踐教學。
如何改革JSP語言程序設計課程設計教學實訓方式,如何緊跟軟件企業的運作模式,并且將這樣的實際開發模式移植到課程實訓的教學中,成為當前我系課程改革中最為急迫的任務。我系于2005年開始進行教學改革方面的研究,從二級學院生源的實際情況和Web程序設計基礎課程教育發展的趨勢出發,及時調整了教學計劃,選擇了JSP語言程序設計課程作為我系計算機專業課程改革的突破口。依據多年的實踐教學經驗,2008年我系對JSP課程設計教學改革進行了更深入的探究,推出一種新的實訓結構和實訓模式,將企業中軟件開發項目的真實組織結構還原于課堂,讓學生了解企業最新的軟件開發模型,軟件開發過程被很好地應用于課堂教學。
2JSP語言實訓課程的教改模式
2.1教改目標
JSP語言程序設計實訓課程教學改革涉及教學計劃、教材建設、教學管理、教學實踐環節以及思想教育等諸多因素。JSP語言程序設計實訓課程教改目標是:通過多方位、綜合性的課程建設,加強基礎,強化應用能力,全面提高學生業務和思想素質。通過項目驅動的方式,使學生掌握網站設計的基本思想與方法,能夠和同學合作編寫中型網站程序,掌握一般網站開發的基本過程,學會撰寫一般軟件設計中需要的文檔,為社會培養真正的應用型技術人才[1]。
2.2教改措施
課程教學改革實施的過程是實現教改目標的具體措施。從2004級開始,我們對JSP語言程序設計的實訓進行了新的探討。
2.2.1合理調整實訓的組織方式
為了在一定程度上緊貼軟件行業的發展,且讓學生學有所得,我系在推行課程設計體系時采取的是一人一題制,這樣可以使學生之間互不參考,獨立地完成課程設計。但這種方式也存在很多問題,例如題目數量很多,題目難度不統一,學生在開發中遇到的問題不一致,完全依靠老師的個人動手能力來進行課程設計的指導,不利于規模化培養,也不利于培養學生的團隊合作能力。
因此,在JSP的課程實訓中,我們使用一種新的實訓結構和實訓模式,即將企業中軟件開發項目的真實組織結構還原于課堂,讓學生了解企業最新的軟件開發模型,將軟件開發過程應用于課堂教學[2]。
課程設計由一人一題改革為12人一組,一個行政班級分為3~4組,各組題名都完全一樣,各組按照自己的方式組織開發團隊,團隊合作完成開發[3]。整個團隊由6種角色組成,分別為產品管理(Product Management)、項目管理(Program Management)、開發人員(Development)、測試人員(Test)、用戶教育人員(User Education)、管理(Release Management),如圖1所示。
每個團隊需要一名項目經理、一名測試經理、一名產品經理、一名程序經理(或稱開發經理)、開發人員若干名、測試人員若干名、用戶界面設計人員若干名。其中項目經理和測試經理需要專人承擔,程序經理可以由開發人員兼任,各種角色的目標和責任如表1所示。
整個團隊的一個主要目標就是在項目的約束條件下完成項目。項目的約束條件包括預算和進度等。為了實現這個目標,項目管理負責并推動進度表、功能集和預算資金。必須保證能夠在正確的時間正確的項目或產品,保證正確理解了項目投資方的期望,并自始至終貫穿于項目執行過程中。產品管理的目標就是滿足客戶需求。首先必須認清和理解客戶。需要清晰地區別和分析所有的需求,能規范說明詳細描述了整個團隊將要提供給客戶的交付物。開發人員必須按照客戶需求和功能規范說明來構建整個解決方案。同時,開發人員還需要為整個團隊提供技術方面的咨詢,這樣在設計和技術選擇時可以盡量減少開發風險。開發人員提供較低層次的功能設計,并預估完成設計所需的時間。所有的軟件產品在時都存在缺陷,測試人員在前必須清楚地認識和鑒別出這些問題,可以以問題的形式給出解決方法,或者是給出如何繞開該問題的文檔記錄。
教師在項目開發前期扮演客戶的角色,針對學生要開發的項目模擬企業客戶回答學生前期的調研問題,對待開發的項目提出功能要求和界面設計參考。前期主要由學生選出的產品經理對項目進行調研,項目經理負責人員的分配,開發經理帶領開發人員和測試人員進行知識儲備,對可能用到的知識進行深入的學習和準備,對產品經理獲得的調研信息進行教工,初步確定項目的需求,開始項目的概要設計,確定系統的功能和用戶,進行數據庫的設計和規范化。
2.2.2提交滿足企業要求的開發文檔
高校現有的實訓模式中大多強調學生是否完成課程設計,不太注重文檔的撰寫,而文檔的撰寫是企業開發中及其重要的工作技能[4]。課程設計教學改革中將要求學生遞交滿足企業要求的開發文檔,提高學生的動手能力,提高學生求職的基本功。
課程設計中將要求每組學生在項目開發的不同階段提交軟件概要說明書、功能說明書、詳細說明書、用例圖、類圖等20多種文檔,基本上包含了軟件企業進行軟件設計所需的全部文檔。文檔的撰寫由學生自主分工,在項目進行的不同時間段由指導教師檢查相應的文檔,每一階段的文檔完全符合企業規范才允許進行下一階段的開發。2.2.3合理調整實訓流程
以前課程設計的流程是簡單地教師發題目,學生按照題目進行程序設計;合理調整后,流程變更為以下7個步驟:
1) 文檔閱讀,需求理解;
2) 技術儲備,角色分工;
3) 計劃與規范;
4) 設計;
5) 開發與測試;
6)Bug追蹤與修復;
7) 產品。
在7個環節中,很多階段有了量化的標準,同時每個項目組都是同一道題目,相互的比較和參照性更強,如圖2、圖3所示。
在構思階段,程序管理團隊會確定滿足項目需求和項目目標的任務和交付成果。這個階段最后會達到一個遠景/范圍認可(vision/scope approved)里程碑。這個里程碑表明客戶和團隊對于項目的目的和方向已經達成共識。
在計劃階段,團隊決定要開發什么,并計劃如何創建解決方案。在本階段,團隊準備功能規格說明書、創建解決方案的設計、準備工作計劃、估計成本以及各種交付成果的日程表。
在開發階段,項目團隊將創建解決方案。該過程包括編寫實現解決方案的代碼,并為這些代碼編制文檔。除了開發代碼之外,團隊還開發解決方案使用的基礎結構。
在穩定階段,團隊執行解決方案的集成,裝載以及Beta測試。另外,還測試解決方案的部署場景。團隊著重于確定問題,區分問題優先級并解決問題,從而使得解決方案能夠為做好準備。同時,在本階段中解決方案的狀態也從完成了功能規格說明書中定義的所有功能的狀態,推進到了所定義的質量等級已經實現的狀態。另外,解決方案也做好了向商業機構進行部署的準備。
在部署階段,團隊部署解決方案技術及站點組件、穩定部署、將項目轉入運營和支持,并得到最終客戶對項目的認可。在部署完成之后,團隊進行項目評審和客戶滿意度調查。部署階段將在達到部署完成里程碑后結束。
隨著項目開發不斷深入到各個階段,開發過程的每次迭代都會使解決方案更接近于它的最終版本,而在一個具體的過程中迭代則會不斷地進行,直到實現該階段的目標。另外,迭代允許項目以更詳細的步驟進行開發,從而使未來的迭代過程可以根據早期步驟的成功或失敗來進行,如圖4所示。
在開始課程設計的動員會上我們要求學生不再把自己看作學生,而把自己作為企業的真正一員,每天按企業上班的時間表執行嚴格的考勤制度[5]。老師不再針對每個學生,每天晚上集中各個項目經理開會,了解各項目小組的開發進度,匯總各小組遇到的技術難點集中講解,督促項目經理注意開發進度。
2.2.4合理的激勵制度
課程設計由以前單純的老師管理學生,變更成老師管理項目經理,項目經理管理學生,學生之間進行交流,協作完成課程設計[6]。每個小組項目完成之后所有學生參加項目推廣大會,由各小組的產品經理對本小組的作品進行介紹,然后由所有指導教師作為評委根據每個項目文檔和代碼的規范程度給出一個分數,學生評委給出一個分數,按不同的權值計算出每個小組項目的最終得分,由項目經理按小組成員的貢獻程度給各組員不同的分數,從而解決了有學生出工不出力、混大鍋飯的現象。
同時我們將在課程設計中評選出“課程實訓優秀個人”,以提高學生的積極能動性。我們將管理的部分權利下放,既可以提高學生的管理能力和團隊協作能力,又可以更多地專注于學生分析問題和解決問題能力的提高。
2.3預期教學效果
隨著課程改革的開展。我們堅信經過JSP語言程序設計課程實訓的學生基本能夠自主編寫一般Web網站的程序,基本掌握企業軟件開發的一般方法,上機操作的能力大大提高,同時具有一定的文檔撰寫能力。
在課程改革的規劃、準備和實施的過程中,我們深切地感到學生通過學習成績的不斷提高,學習熱情和主動性也在不斷加強,能力的提高使學生對未來充滿信心。我們將進一步開拓思路、深化改革、不斷創新,爭取將JSP語言程序設計實訓課程建設成為我院的示范性實訓課程。
3結語
Web技術實訓幫助學生建立了企業應用的全局觀,了解了一個完整的企業應用場景,并且描述該知識技能所代表的職位在整個場景中的位置以及企業中其他相關職位的作用。這種實訓完全按照企業實際做法展開實訓,使得學生全面體驗到企業應用的開發技術,通過Web應用項目的開發,鞏固了學生的數據庫設計知識,以簡單、易用的實訓模型要求學生提供符合企業規范的文檔和代碼,在給學生大量參考資料的同時對項目開發進行詳實的考核,提高了學生規范化開發經驗和團隊開發體驗。本實訓模式經受了檢驗,取得了較好的教學效果,培養了學生軟件開發的動手能力,解決了學生畢業后走上社會就業的“最后一公里”問題。
參考文獻:
[1] 朱敏. 多元智能理論視野下的課程設計研究[J]. 華東師范大學學報,2003(6):54.
[2] 陳振華. 實踐教育學的探索[J]. 湖南師范大學教育科學學報,2006(4):84.
[3] 微軟公司. 基于.NET的需求分析和解決方案設計[M]. 北京:高等教育出版社,2007(8):1-45.
[4] 劉少華. 課程設計教學改革的思考[J]. 科技信息:科學教研,2007(18):34.
關鍵詞: Java;課程設計;項目驅動;教學方法
中圖分類號:TP31 文獻標識碼:A 文章編號:1006-4311(2012)18-0216-02
0 引言
程序設計類課程是高校計算機專業學生必學的課程之一,是專業知識的基礎與重點,也是一類理論與實踐開展同步教學的課程。Java程序設計作為一門強調實踐的課程,在其教學模式上應注意理論和實踐的雙重把握。與之相關的課程設計是這門課的一個重要實踐性教學環節,是課堂理論教學的延伸與擴展。通過課程設計培養學生面向對象建模及編程的能力,加深面向對象程序設計的思想,激發學生學習的積極性和主動性,培養學生的創新能力、綜合分析問題和解決問題的能力。在實際教學過程中尤其要注重學生實際應用能力的培養,以適應當今的社會需求,而實踐動手能力正是通過該門課程的課程設計教學環節鍛煉和體現的,也是最接近企業需求的重要內容之一,通過課程設計使學生在創新性、自主性、探索性和協作性等方面得到綜合培養,以適應新形勢下人才培養所應具備的基本要求。
1 Java語言課程設計教學現狀
目前我們的課程設計教學環節存在嚴重不足,課程設計成為理論教學的附屬,教學模式單一、教學內容多是單一的理論型、基礎型、驗證型題目,只是要求學生照搬照抄已有的知識簡單地進行理論知識的驗證,題目相對陳舊,而應用型、綜合設計型的題目比較匱乏,且與工程實踐相脫離,缺乏開展創新性和創造性活動的平臺,這樣以來使學生的學習主動性和積極性受到了嚴重制約,學生的思維能力、分析能力、實踐能力及創新能力無法得到充分的發揮與發展,經過課程設計以后學生所掌握的的仍然是理論課上所講授的一些基本語法和理論知識,而對整個項目的開發過程卻依然很陌生,工程性的知識十分欠缺,不具備開發項目的必需素質與能力,也就無法很好地適應以后工作的需要。
本文所研究的主題是在Java的課程設計中采用項目驅動的教學形式來改善其教學效果,目的旨在培養出具有較強動手能力的,適應社會需求的學生。通過項目的開發來帶動學生在深入學習語言基礎結構的同時,培養學生的項目開發能力,同時在項目開發的過程中給學生制造更多發現問題并解決問題的機會,對學生的自主學習起到了很好的促進作用。另外,以團隊的形式進行項目開發,還可以加強學生之間的團隊協作精神。
2 項目教學法及其特點
項目教學法是由美國教育家凱茲博士和加拿大教育家查德博士共同創建的一種以學生為主的活動教學法[1],它以項目驅動教學,學生在項目教學中以探索性學習為基礎。項目教學法的理論依據是建構主義的學習理論。建構主義認為學生學習的動力來自待解決的問題,教學關注的重點在于使學習者達到一定的程度,教師的職責在于使學習者置身于探索知識之中,為他們提供適當的“情境”,然后使學生在此情境之下,通過教師的指導、同學的討論來解決問題,即協助和會話,在完成任務的同時,達到最終的教學目的即實現意義建構[2]。將項目驅動教學法系統地應用于Java的課程設計教學過程中,對培養學生的創新能力、協作能力以及應用實踐能力起到了積極地推動作用。
項目教學法具有以下特點:
2.1 系統性:項目教學法注重從整體上把握系統的構建和設計,不僅要掌握Java語言特定的語法及使用規則,而且還要融合軟件工程的思想,使學生具有獨立完成項目的設計與開發的能力。
2.2 協作性:因為是以團隊的形式由若干個學生協作完成一個項目,所以有利于加強學生之間的溝通與交流。雖然學生之間的能力有差異,但是通過彼此之間的交流、溝通、甚至爭議,使他們可以交流心得和體會,共享學習資源,互相幫助,對所學知識能夠加深印象,共同提高。小組成員也可以適時分工,相互協作并及時交流信息,既可以節約時間,也能夠及時獲得學習資料,提高學習效率[3]。
2.3 模擬性:項目方式的教學實際上就是對未來企業中項目開發的模擬,在課程設計教學中運用項目驅動方式,能讓學生盡早的接觸并感受到真實工程的開發過程,這對于掌握計算機語言知識以及提高自身的獨立項目開發能力具有深遠的影響。
2.4 多角度:由于滲透了軟件工程的思維,因而項目教學法在實施的過程中對學生進行了多角度的培訓,從項目可行性與需求分析到維護等各方面,加深了學生在計算機程序設計中的軟件工程意識。
2.5 周期長:項目方式的課程設計在系統的設計這一環節可能會占用較多課時,因而其開發周期比較長。這樣使得教學過程更全面,也增強了學生的工程性編程理念,這恰恰是課程設計最終所要達到的目標。
3 項目驅動教學法在課程設計教學中的實施
Java語言課程設計是將所學知識用于實踐的過程,在課程設計中應用項目驅動教學法,使學生始終處于主體地位,能夠充分發揮學生的智慧與創造力,提高學生解決實際問題的能力和創新意識。
3.1 實施的原則 項目是項目驅動教學模式得以實施的基礎[4]。在教學開始前要選擇好合適的項目。總體上應當注重遵循以下幾個原則。
3.1.1 項目選擇適當原則 項目選擇的難易程度關系到該教學法實施的成敗。合適的項目應該具備一定的綜合性,不僅能使學生把已掌握的知識和將要學習的知識有機的融合,還包含了課程主要知識點。同時該項目還應利于和其他相關學科的知識相結合,以提高學生以一貫十的綜合應用能力。此外,項目的難易程度適中,模塊化程度要高。這樣的項目有利于他們團隊分工明確。選擇項目時還應注意其趣味性和現實性,這樣的項目對學生具有較強的吸引力,激發他們的學習熱情,對系統開發能認真自覺對待,利于項目更快更好的完成。
3.1.2 注重多層次教學原則 教學中應注意學生的個體差異,結合學生的實際情況,從個人與整體兩個方面考慮,因材施教,進行多層次項目設計,針對不同學生提出適當的目標要求。如第一個層次遵循的是教學大綱的基本內容,那么第二個層次可以在大綱的基礎上有所擴充,第三個層次則要求學生具有較高的項目開發的綜合能力。這樣有利于學生整體水平的提高。
3.1.3 適時歸納原則 項目驅動教學法的學習主體是學生,而學生的學習能力是有差異的,對知識的掌握程度有所不同,容易造成學生兩極分化和知識點掌握的不全面。教師應該在教學過程適當適時的加以總結和交流,對于學習有疏漏的學生或者學習能力差的學生來說,通過教師的總結彌補其疏漏的知識,跟上教學進度,達到教學目標,促進同步發展。另外,教師要及時對學生的學習效果進行評價,對學生的學習效果提供針對性的反饋信息,這樣可以使學生清楚自身對知識的掌握情況,采用更合適的學習方法,同時教師也可以根據實際的教學效果為下一步的教學做出合理安排。
3.2 實施過程
3.2.1 設置開發團隊 團隊組織是否得力是項目驅動教學法實施成敗的關鍵[5]。每個團隊由5到6人組成,可以根據每個學生的特長分別擔當項目組長、系統分析員、程序員、測試員、文檔編寫員等角色,由團隊共同完成某個項目。創建協作學習環境。這與企業中真實的項目開景相仿,教師作為組織者要對學生分組的總體原則給予控制,使各組的技術力量相對協調。盡量為每個團隊營造和諧的協作氛圍,使學生群體的智慧為每個學生所共享,最終實現項目的開發。
3.2.2 完成項目 項目驅動的核心思想就是讓學生在實踐中學習,其教學方式是以學生為主體、教師為主導的學習過程,教師在整個教學過程起到引導和監督作用。首先學生思考如何去完成項目,在完成項目的過程中提出自己無法解決的問題,由教師協助分析,在教師的指導下得到解決問題的方法。這樣不僅培養了學生獨立分析問題及解決問題的能力,還調動了學生的求知欲。當然,教師不過分干預各團隊項目開發的正常進度,保證團隊的自主性和主動性。但要注意隨時跟蹤學生情況和項目的進展狀況,一旦發現問題要及時給予協助指導,保證項目順利進行。
3.2.3 項目總結 把項目開發劃分為幾個階段,在每個階段要求學生進行階段性總結,不同團隊之間可以相互交流開發經驗,同時提出開發過程中及所遇到的困難。這種階段總結可以明確各團隊進度,促進團隊之間的交流,鍛煉學生的表達和交流能力。教師對出現的共性問題可以集中進行講授。同時,教師還要啟發學生對項目進行拓展,使之在今后遇到類似問題時能順利解決,最后教師對項目的完成情況進行綜合評價。
4 結論
通過項目驅動教學法在Java語言課程設計中的實施,使學生通過具體的項目開發自然而然地對語言語法結構融會貫通,掌握項目完整的開發過程,在項目的實踐中縮短與企業之間的距離。同時我們還應注重其他教學方法的運用,只有合理的將各種不同的教學方法綜合運用,才能在Java乃至其他語言的學習過程中,把項目教學驅動法切實的運用到其課程設計的教學中。
參考文獻:
[1]肖勝陽.在計算機課程教學中開展項目教學法的研究[J].電化教育研究,2003,(10).
[2]張哲,陳桂生.在 Java 語言教學中實施“項目驅動”教學法的實踐探索[J].教育與職業,2007,(18).
[3]侯書芹,劉學莉.計算機實驗教學的素質教育作用[J].安陽師范學院學報,2003,(5).
關鍵詞:電子技術;課程設計;教學改革
作者簡介:金丹(1978-),女,遼寧建平人,上海電力學院電氣工程學院,講師;王魯楊(1963-),女,天津人,上海電力學院電氣工程學院,副教授。(上海 200093)
基金項目:本文系上海電力學院“085智能電網技術本科教改研究”項目的研究成果。
中圖分類號:G642.0 文獻標識碼:A 文章編號:1007-0079(2013)02-0098-02
“電子技術課程設計”是電氣與控制類工科專業本科生的必修課程,該課程的基本任務一方面是鞏固和加深模擬“電子技術”、“數字電子技術”課程的學習成果和“電子技術基礎實驗課”中所掌握的實驗技能,另一方面是培養和訓練學生的科研作風及在電子技術方面的實踐技能,提高學生綜合運用電子技術知識解決實際問題的能力和創新能力。[1]
學生通過熟悉設計任務、查找資料、設計電路、計算機仿真、安裝調試、整理總結等環節,初步掌握電子工程設計思路,了解開展科學實踐的程序和步驟。學習電子產品工藝的基本知識和操作技能,培養專業學習的熱情,養成良好的專業素質,為較好完成后續課程的學習和設計做準備,為將來能在工作崗位上繼續學習接受新知識,進而發明創新打下良好基礎。因此綜合性強,實踐性突出的“電子技術課程設計”對學生的訓練和鍛煉是其他教學環節所不能替代的,是專業建設中值得重點建設的重要環節。
一、課程設計改革目的
近年來,電子技術課程實驗條件不斷改善,能夠適應“電子技術課程設計”對硬件設施所提出的更加靈活、更加高端的要求,為“電子技術課程設計”改革提供了硬件基礎。同時,隨著學生人數不斷增加,電子技術課程的師資隊伍也不斷壯大,為豐富課程設計內容、提高課程設計水平提供了人員保證。
在這樣的情況下,提出并實施“電子技術課程設計”改革,突出學生在課程設計過程中的主體地位,培養學生實踐動手能力與創新能力。結合本校實際,充分利用學校現有的教學資源,提高課程設計的教學效果和水平。
二、課程設計改革中的幾個措施
1.優化設計題目
好的設計題目可以激發學生的興趣,提高學生的積極性,這種內在的學習動力不僅能夠提升教學效果,而且真正寓教于樂。
題目的選擇原則是內容的豐富性、實用性、趣味性、先進性、創新性。題目的難易程度要適中,能體現出對基本理論、基本概念、基本技能的綜合應用。因此,選題時宜選擇與生活實際相關的題目;采用的芯片為目前主流的中等規模、大規模芯片;設計成品應該是一個包含信號源、信號處理、輸出顯示在內的完整的小系統。例如《洗衣機控制器》題目將課堂教學與生活實際密切聯系,讓學生切身體會到所學課程如何在工作中應用。再例如《乒乓球游戲機》題目,將課程與游戲相聯系,活潑新穎,獲得了學生的喜愛。
2.采用導師制
通常的課程都是以班級為單位,每個班級配置一名教師,以往的“電子技術課程設計”也采用這種方式。由于課程設計的題目靈活度較大,也具有一定深度,所以一般每個教師只會精通兩到三個設計題目,而學生就只能在這幾個題目中選擇。隨著師資隊伍地壯大,每個教師掌握兩個題目,那么所有教師加在一起就一共有三十幾個題目。本校希望這么多的教學資源能夠為所有學生所用。因此在本次教學改革中打破班級的概念,采用導師制。所有教師的所有題目均面向全體學生開放,學生可自由選擇,選擇題目的同時也就選擇了導師。對某個題目特別感興趣,可以直接選擇該題目。或者特別喜歡某個教師,也可以為了追隨那個教師而選擇他的題目。此外,每四個學生為一組,結組時也打破班級的概念,學生可自由選擇合作伙伴。所以學生不僅可以選擇題目、教師,也可以選擇同伴,自足選擇性很強。
3.采用項目教學法
以往教學模式中,教師把課程設計的電路、具體步驟都傳授給學生,學生很少思考,很少質疑,更沒有探索。本次改革中采用項目教學法,由教師引導,學生自主完成一個個具體的工程案例,按行動路線設計教學思路,培養學生的探索精神,提高其實踐能力。
設計過程模擬實際的項目開發過程,包含項目任務下達、方案設定、軟件仿真、硬件調試等各環節。體現為課程設計中的如下環節:學生選定設計題目與導師、下達任務書、確定設計方案、電路連線圖仿真、電子元器件的安裝與對所設計電子系統的調試、撰寫課程設計報告。
為了提高學生的創新能力,強調學生自主設計,重視啟發式教學。教師只在大思路上加以引導,對具體方案和設計細節不做過多干預,只起組織、引導、檢查、把關和解決一些疑難問題的作用,放手讓學生大膽實踐,充分發揮學生的主動性和創造性。同時,為了配合廣大學生大膽的發散的設計,提供了門類齊全、種類豐富的元器件供學生選擇。[2]
4.提高工程意識
“電子技術課程設計”本身就是一個工程設計的縮影,具有很強的工程特性,以其為載體,培養學生的工程意識具有天然的優勢。
對于一個工程的實施,所設計產品的性能并不是唯一的評價指標。設計周期、設計成本、團隊配合也同樣重要。為此,在課程改革中相應地采取了一些措施。首先,為了提高對設計周期地重視,在課程考核中加入了時間概念。在完成設計要求的情況下,時間使用最少的組成績最高。另外,為了提高對設計成本的重視,在設計中引入性價比概念,對高價格器件的領用進行登記、統計與限制,推薦學生采用低價格的元器件完成相同的功能。在幫助學生提高成本概念的同時,也為學校節省資金投入。最后,為了加強團隊配合,在每個組的四個人中推舉一名組長,負責整個設計過程的協調。由組員共同討論完成對項目的理解并做出具體的設計方案,然后統一調配每個成員所負責的設計任務。每個成員必須在規定的時間完成自己所負責的部分。在項目調試過程中必定會出現一些問題,而解決這些問題需要各部分的密切配合。因此要求每個人除了了解自己的設計部分以外,還必須了解其他人的設計思路。因此為了考核團隊配合,在答辯中除了檢驗每人分管的部分外,也會檢驗對整個方案和設計思路的理解。
5.引入模塊化設計理念
隨著電子電路產業的發展,所設計的產品在功能、線路等各方面都越來越復雜。在實際的電子電路開發中,教師一般將電路劃分為多個模塊,每個人負責一個模塊。先設計單獨模塊并獨立調試,然后再把幾個模塊聯調,最終將整個系統聯調。盡管在課程設計中所設計的電路功能較為簡單,但是為了模擬電子電路的實際開發過程,仍然希望在設計中能夠引入模塊化設計理念。因此,每個教師開發自己的題目時,都有意識的使所設計的電路功能齊全,保證整個系統結構完整。所以在每個題目中都包含了信號源、輸入、輸出、控制等多個部分,可以很方便地劃分為幾個模塊。每組中的四個成員可自行選擇設計模塊。既讓學生學習了電子電路的設計理念,又保證了每個學生的工作量,做到人人動手。
6.軟件仿真與實物調試相結合
由于計算機軟件和硬件技術的飛速發展,在電子應用領域產生了很多成熟的開發與仿真軟件,為實際電子電路的開發提供了準確的保證,同時節約了大量人力物力。EWB、Protel、ORCAD、PSPIC、Multisim等都是目前較為流行的電子電路仿真軟件,在實際的電子電路開發中也得到了廣泛的應用。因此,在本次教學改革中,模擬實際的電子電路的開發過程共十天的課程,其設計分成五天軟件仿真和五天硬件調試。前面五天學生采用自己喜歡的仿真軟件設計并調試電路。調試成功后根據所設計的電路制定元器件清單,并進行第一次答辯。答辯通過后根據清單領取元器件以及面包板、導線等硬件設備。后面五天進行實物連線與調試工作,調試成功后進行第二次答辯。然后撰寫課程設計總結報告并提交,完成整個課程設計過程。在此過程中,每個學生都能體會到軟件仿真與實物連線各自的特點。比如軟件仿真在原理性錯誤的排查方面具有強大的功能,而實物連線除了讓學生更熟悉元器件管腳排列以外,更加讓學生對元器件的時間延遲以及因此可能引起的誤動作產生更深的體會,這些都是在課本以及“電子技術實驗”課程中不能收獲的。通過課程設計,讓學生在軟件設計與元器件接線調試中均得到了鍛煉。
三、結束語
通過實踐,筆者發現這項教學改革效果十分明顯。教師們精心準備的題目引起了學生的極大興趣;采用導師制給了學生更多的自主選擇性;采用項目教學法激發了學生的自主性學習,也培養了學生的創新性思維;加入工程意識、模塊化設計理念以及軟硬件結合的設計方式等改革措施在不同方面讓學生體會了實際電子電路的開發過程,真正將理論與實踐相結合。
參考文獻:
【關鍵詞】軟件工程;課程設計;需求分析
一、引言
課程設計是指學生在學完相關課程后,綜合利用所學知識分析問題、解決問題、實現理論向實踐轉換的重要教學環節,也是對前期理論教學效果的檢驗。
軟件工程專業的大部分課程設計是有關軟件開發的。這就要求學生在設計過程中經歷一個完整的軟件開發流程:項目定義、分析、設計、開發、維護[1]。作為軟件開發過程中的一個重要環節,需求分析在實際的課程設計中由于各種條件的限制往往被忽略,沒有得到應有的重視[2]。針對這一問題,本文首先闡述了需求分析在軟件開發過程中的重要性,分析了軟件工程專業課程設計中需求分析階段存在的主要問題,并給出了相應的解決方案。
二、需求分析的重要性
軟件需求定義了系統必須具備的能力,即軟件能完成什么樣的功能,達到什么樣的性能,這種能力體現了用戶的需要和開發者對用戶需要的理解。軟件項目的開始,就是因為軟件需求的存在,需求是項目開發的基石。
一個項目成敗的關鍵因素之一就是對需求的把握程度,研究表明,軟件項目中大部分的問題都是在需求分析階段埋下的隱患,需求問題發現的越晚,軟件維護的開銷就越大。很多項目的失敗,也是由于需求分析的不明確而造成的,有些項目甚至是在需求沒有完全確認的情況下就開始執行了,這必然會導致成本浪費、進度延遲等嚴重問題。所以分析是軟件開發中最為基礎和重要的環節,是軟件項目邁向成功的第一步。
需求分析也稱需求建模,主要任務就是借助當前系統的邏輯模型導出目標系統的邏輯模型,解決目標系統“做什么”的問題,即對目標系統提出完整、準確、清晰、具體的要求[4]。分析用戶需求主要過程如下:
(1)以圖形描述系統的整體結構。
(2)為用戶提供可視化界面供用戶對需求做出評價。
(3)以模型描述系統功能、實體關系及狀態轉等內容[3]。
需求分析要保證需求明確,盡量避免需求描述不清楚、需求遺漏、需求互相矛盾等問題,避免在開發后期因需求問題對項目產生困擾。
三、課程設計中需求分析現狀
(1)學生重代碼,輕需求,急于完成可見的執行軟件,大大壓縮了需求分析時間。
(2)學生缺乏對所選課程設計題目相關的業務知識的了解,需求分析只是對需求的拼貼,不完善,不系統。
(3)教師缺乏實際項目經驗,對需求分析的認知只是停留在理論階段,不能在實踐上給學生以高水平的指導。
四、解決方案
針對以上問題,文中給出解決方案如下:
(1)一方面轉變學生對需求分析的認知誤區,強調需求分析的重要性,通過一些案例及調研數據讓學生了解忽視需求分析帶來的嚴重后果,讓學生重視需求。讓學生了解軟件項目開發工作和項目管理工作都與需求密不可分,如軟件項目成本估算、進度計劃、項目跟蹤控制、驗證、確認等工作都以需求為基礎;軟件設計、編碼、測試最終的目的都是為了提交一個滿足用戶要求的可執行軟件,用戶的要求主要就體現在需求分析的制品上。
另一方面增強需求分析的趣味性,讓學生主動參與需求分析,如選題上給學生充分的自主選擇權利,或者讓兩個同學選相同題目(分別做不同模塊),同組間進行需求分析競賽等。
在軟件開發過程中讓學生記錄并總結,自身項目中存在的那些需求問題,對項目產生了怎樣的影響,讓學生在實踐中體驗、總結需求的重要性,加深認識。
(2)題目選擇范圍上給學生更大空間,可從教師給定的題目中選取,也可學生自擬題目。因為課程設計的時間有限,需求又是一項要求精細、準確、全面的工作,所以在課設開始前至少一個月,讓學生預先選好題目,進行需求調研、分析工作。需求分析開始前,由教師預先規定應分析什么,如:軟件功能需求、性能需求、可靠性和可用性需求、接口需求、系統約束等;采用什么樣的分析方法,建立什么模型,如:功能模型、數據模型、行為模型等;及最終要形成軟件需求規格說明,該文檔模板由教師提供。任何軟件需求都離不開其涉及到的業務領域,因此也要要求學生對業務領域相關的標準模型進行分析和研究,對業界的一些標準和最佳實踐進行熟悉,對業務領域進行大量調研。這樣才能讓才能分析出真正的需求,否則需求就會脫離實際。
(3)作為教師不但要有扎實的理論知識,還應具有較強的實踐經驗,指導學生完成由理論知識向實踐技能的轉換。所以在選擇課程設計教師的一個重要條件就是教師要有軟件項目開發經驗及管理經驗[5],熟悉軟件開發的各個環節。若教師本身不具備這樣的能力,也可以通過加強教師培訓,讓教師到企業中實習的方式來提高教師實踐指導水平,通過考核的教師才可以指導課程設計。
五、結論
總之,需求分析是軟件開發過程中非常重要的一個環節,是項目所有活動展開的基石,在軟件工程專業軟件類的課程設計中,作為教師在這一環節應為學生提供有效的理論和實踐指導,讓學生理解需求分析的重要性,積極主動地做好需求分析工作,為后續的各項軟件工程活動展開打下良好基礎。
參考文獻:
[1] 秦放等.案例驅動與項目導向結合的軟件工程課程教學模式探討[J].計算機教育. 2013(9):87-90
[2] 陳杰.計算機專業課程設計中的需求分析[J].集美大學學報.2009(2):89-92
[3] 韓萬江等編著.軟件項目管理案例教程(第2版)[M].北京:機械工業出版社,2009.48
一、分層次培養學生的程序設計能力
程序設計能力培養是由多門課程即“課程群”和很多教師共同完成。培養學生程序設計能力,可分四個層次[1]:基本程序設計能力、模塊化程序設計能力、數據庫應用系統開發能力以及多層分布式系統開發能力。這個四個層次有一定的邏輯先后關系、相互聯系和相互促進。在教學過程中,狠抓學生這四個層次程序設計能力的訓練培養。
二、基本程序設計能力的培養
基本程序設計能力是程序設計能力進一步提高的基礎,也是后續許多計算機專業課程學習的基礎,由大學一年級第一門程序設計語言課程來完成,對于大多數學生來說,這是一個新的領域,因此必須高度重視。學生的基本程序設計能力表現為能比較熟練地運用一門高級程序設計語言提供的數據類型、運算符、語句和函數和過程獨立地編寫解決簡單問題的程序,在一定的程序設計集成環境下獨立地上機調試程序,掌握最基本的程序測試和調試的方法。為了有效培養學生基本程序設計基本能力,在教學過程中 從程序設計語言的選擇,教材的選用,到任課教師的安排,都必須進行周密的考慮。
根據多年的教學實踐經驗,譚浩強編寫的《C語言程序設計》作為程序設計課程的啟蒙教育,是比較好的選擇;教學人員安排,要求至少具有三年教學工作經驗、工作責任感強的老師擔任此課程的教學。
三、模塊化程序設計能力的培養
學生在學完第一門程序設計課程后,只掌握基本程序設計能力,能編寫處理一些簡單的問題程序(代碼通常不超過20行)。對于復雜一點的問題,還不能運行模塊化技術分解一個程序的功能進行設計程序。模塊化程序設計能力培養主要由《C語言課程設計》完成,由《C語言程序設計》教師擔任,更利于學生能力培養。在《C語言課程設計》中,教師重點培養學生抽象思維能力,對程序要解決的復雜問題按功能進行分解成一個個具有獨立意義的子功能,用C語言函數分別實現各個子功能,并使每個函數包含程序代碼長度符合學生容易理解的代碼長度。
案例教學法是快速培養模塊化程序設計能力的有效教學方法。任課教師精心準備幾個典型的案例[3],并對這些案例進行詳細分析、講解,讓學生運行程序和閱讀程序代碼,分析程序中各函數的功能和算法,分析各函數間的調用關系,使學生對程序的一般組成和結構有一個直觀的認識,然后讓學生模仿一個類似的實例,編制一個程序實踐,使學生逐步適應和學會運用抽象思維方式,學會模塊化程序設計技術,編寫出有一定規模、具有一定實用性的程序的能力,從而掌握模塊化程序設計的基本思想。在后續課程學習中,如《數據結構》、《操作系統》,教師要對模塊化程序設計技術做進一步加強、提高。
四、數據庫應用系統開發能力的培養
信息管理系統應用非常廣泛,信息管理系統實際上就是數據庫應用系統,因此,數據庫應用系統開發技術是計算機專業類學生必須掌握的技術。數據庫應用系統開發能力(單機環境)的培養主要是通過《數據庫原理》、可視化面向對象程序設計(如VB)等課程設計完成。
在實踐教學中,主要采取兩項措施保證這種能力的訓練。一是教師講解數據庫原理、面向對象程序設計(如VB、Delphi)課程時,一定要仔細分析一個信息系統開發案例,如“圖書管理系統”,“人才信息管理系統”,“學生信息管理系統”等等。這種生動實用的案例學習,能激發學生的學習興趣和動力,也很容易使學生理解掌握數據庫應用系統開發的一般規律。二是通過隨后開設的《數據庫課程設計》、《VB課程設計》、《Delphi課程設計》,要求學生自己用學到的知識,嚴格按照軟件工程的思想,開發數據庫應用系統實例。這種反復的訓練,使學生數據庫應用系統開發能力得到進一步鞏固、完善。
五、多層分布式系統開發能力的培養
隨著Internet/Intranet網絡的發展與廣泛應用,應用系統的規模不斷擴大,業務量的變化,用戶需求的進一步提高,多層分布式應用系統開發模式成為系統開發的主流,掌握多層分布式系統開發的基本過程、思想,也成為學生程序設計能力必不可少的教學內容。這種體系結構的軟件設計,要考慮兩個個方面的問題,一個是業務邏輯層(也叫應用服務器)設計,是程序設計的一個重點難點。另一個是網絡環境下,軟件系統部署和運行在多臺計算機上,需要相互協調地工作,必須考慮網絡通信協議的使用,客戶端與服務器之間怎樣建立連接,以及怎樣實現數據的交流等因素。
這個層次通常在數據庫應用系統開發能力培養和計算機網絡課程開設后進行。多層分布式系統開發編程技術訓練,可以在第三個層次培養案例基礎上進行,只需將系統的單機環境改為網絡環境,教師學生都只要把精力重點放“多層、分布式”技術上,既節約了時間,而且效果好。
六、加強實踐環節要求和管理
計算機課程光是“聽老師講”和“自己看書”是絕對不夠的。在努力提高課堂教學的同時,必須大力加強實踐環節的要求和管理。“理論+實驗+設計”教學模式,表明實踐環節的重要性,但還得管理好實踐環節。對于課程的實驗環節主要從以下幾個方面加強落實管理。
一是抓好常規實驗。教師必須認真對待上機實驗課,要像理論課教學那樣,每次都要明確指明實驗的目的、要求,對上機實驗內容要精心安排,對學生上機實驗要嚴格監督。
二是抓好課程設計,即綜合實訓。為了快速、有效培養這方面的能力,通常由課程設計的指導教師,分析幾個代表行的案例,然后由教師布置一些事先想好的課程設計作業,以小組為單位進行課程設計。每一個小組要挑選一到兩個專業素質較好的學生擔任正副組長,讓他們對本組項目全權負責,充分發揮優秀學生在課程設計中的積極作用,既可以減輕指導教師的壓力,又有利于課程設計質量的保證,發揮學生的創造能力。課程設計落實得好,將使學生的知識運用能力和程序設計能力得到迅速成長,教學效果也顯著。
為了保證學生認真對待實踐環節,防止學生復制或不做,比較好的辦法是要求每個學生提交實踐作業,并進行批閱,批閱的成績,參與課程結束的期末成績評定,實踐表明,這種辦法效果非常好。
三是組織各種程序設計比賽,鼓勵學生自己積極編寫程序代碼,對于程序代碼編寫多又好多學生,給予表揚和適當的物資獎勵,提倡在大學畢業前,編寫10萬行代碼。試想一個在校大學生,如果編寫了近10萬行的代碼,程序設計能力一定達到較高水平。
七、將科研項目與學生程序設計能力培養結合起來
教師要積極參加科研活動,通過科研項目活動不斷提高科研水平、教學水平和實踐水平。在進行科研過程中,可以將優秀好學的學生吸收進來,共同完成科研項目的開發。將科研與學生程序設計設計能力培養兩者結合起來,不但提高了教師的實際項目開發能力,也培養了學生的知識應用能力、解決實際問題能力和程序設計能力。
關鍵詞 課程設計;實踐教學;自動控制原理;計算機控制
中圖分類號:G642.4文獻標識碼:B文章編號:1671-489X(2012)15-0041-03
1 引言
實踐創新能力培養是當代大學生更快更好地適應社會工作需求的基礎和保障[1-2],其培養體系、實施方法、教學模式等受到教育界的廣泛關注[3-5]。課程設計是當前自動化專業實踐教學體系的重要內容,對增強學生理論實踐能力、提高自動化專業教學整體水平、建立適應社會發展與高校實踐教學改革創新模式等關鍵問題至關重要[6-7]。
2 課程設計在自動化專業實踐教學體系中現狀
的分析
課程設計是自動化專業實踐教學體系中的重要環節,一般涉及自動控制原理課程設計、計算機控制技術課程設計、綜合設計等相關內容,不同學校可能側重點不同,重慶郵電大學自動化專業課程設計在專業實踐平臺中的內容及安排如圖1所示。
多年來,課程設計一般由學生分組作業,往往因學生人數較多,過程監控較難。如何有效激發學生積極主動性,既讓每個學生在其設計題目中充分發揮作用,深刻掌握課程理論知識,又能有效鍛煉學生協作解決問題的能力,一直是大家關注的問題。隨著當前社會對創新性人才需求的增加,自動化專業課程設計日益暴露出一些新問題。一方面,為了增強教學效果,需要盡可能多地設計題目,以減小分組人數。然而如何掌握題目難度至關重要。往往一些題目應用背景非常廣泛,學生實施過程中缺少對具體對象的直觀理解,設計難度大,效果也很難驗證,在有限的一兩周時間內很難達到實際效果。另一方面,不同課程設計之間缺少統一聯系,結果難以互相驗證,成果難以共享。
如自動控制課程設計的模型難以為計算機控制技術課程設計和綜合設計驗證,計算機控制技術課程設計的算法與模塊難以在綜合設計中應用,不僅造成實踐對象靈活性差、實踐平臺資源浪費,也致使實踐教學整體效果難以保證,學生知識體系零碎,創新思維與創新能力受到極大限制。
顯然,實現自動控制原理的控制模型、計算機控制技術的算法與模塊、綜合設計軟硬件平臺與系統開發的有機統一,對培養學生實踐創新綜合能力、增強自動化專業實踐教學效果是非常重要的。
3 面向實踐創新能力培養的自動化專業課程設計
策略與方法
3.1 創新實踐教學方法,提高學生的積極性和主動性
由于課程設計一般都只有一周半或兩周時間,設計時間非常有限,特別是計算機控制技術課程設計及綜合設計,需要學生在這樣有限的時間內,完成具有可驗證的實驗系統是非常困難的。另一方面,進行課程設計之前,很多學生都參加過電子設計大賽,完成了單片機等相關實驗課程,具有一定軟硬件基礎與創新能力。因此,為了在課程設計中培養學生自主探索的創新能力與思維,必須探索新的課程設計實踐教學方法。
目前,重慶郵電大學自動化專業課程設計在實踐教學中采用了分段實施的方式,先停課一周集中進行設計,大綱要求的剩下時間安排在七八周之后再停課集中進行。這樣學生可以根據自己設計進展的實際情況,利用兩次集中停課之間的空余時間繼續設計。這樣不僅無形中延長了課程設計時間,學生有更充分的時間與精力進行設計,同時可以帶著問題學習,主動查閱資料,探索一些可能還沒學過的知識,提高積極性與主動性。當然,相應提高了設計的具體要求,增強了學生的設計效果。另一方面,對于自動控制原理課程設計,由于必須以理論教學為基礎,也提前征集題目,讓學生上理論課時就知道自己課程設計題目,這樣就可以帶著相關問題進行學習,對理論和實踐教學都有明顯的促進作用。同時,理論課教師一般都必須指導相應的課程設計。因此,要求教師有意識地結合自己設計的題目,在適當的授課環節分析設計相關問題,也極大地提高了學生的學習興趣,促進了理論教學效果。
3.2 科學研究,整體規劃,構建一體化實踐創新平臺
實現自動化專業課程設計間的協調統一,對增強自動化專業課程設計實踐教學綜合效果具有重要意義。這需要科學研究,整體規劃,不僅要保證實踐教學體系上的模型、算法、系統間的協調統一,也要求實踐平臺上的統籌規劃、靈活配置,以構建綜合實踐創新平臺[8-9]。在以往課程設計中,一些實驗特性較好的對象,如電機控制,被不斷地低級重復,上屆學生的設計結果基本上不能為下屆學生使用,造成極大浪費。因此,在現在實驗平臺基礎上,統一規劃,設計了新的綜合創新實踐平臺,滿足不同課程設計的實踐教學要求。
在實踐體系方面,自動控制原理課程設計以系統建模、仿真為主,實現系統分析、設計與校正;計算控制技術課程設計可以在自動控制原理設計的基礎上進一步實現計算機控制策略、算法、方案的驗證及控制模塊設計與開發;綜合設計可以在不同模塊中實現系統集成、分析與驗證,實現自動控制系統設計與開發。在實踐平臺方面,學生可以自己設計題目實現方案,靈活配置功能模塊,實現具體環節功能,如軟件模塊、硬件接口等,讓每個學生既在實踐中驗證了整體設計方案,又具體實現了一定模塊功能。如自動控制原理課程設計的模型,可以直接在實踐平臺上驗證,雖然學生實現的是控制對象的建模與仿真,但得到的是更直觀的控制結果,極大地激發了學生學習興趣,增強了實踐教學效果。
3.3 加強過程監控,建立合理有效的創新能力考核方法
有效監控課程設計中每個學生的實際工作,對促進課程設計效果的提高至關重要。例如,自動控制原理課程設計由于必須以理論教學為基礎,一般都安排在學期第十四五周,由于這段時間臨近期末,很難保證每個學生都如期完成課程設計,有時出現一個組只有一兩名學生實際在做設計的現象。由于種種原因,計算機控制技術課程設計、綜合設計也都存在類似現象。另一方面,以往都是由指導教師根據設計報告,給出學生成績。但由于缺少可實際操作的有效標準,設計成績難以把握,一定程度上造成學生“課程設計都能過”的假象。
因此,制定新的課程設計教學大綱,采用集中答辯方式,要求每個學生都必須在規定的時間內提交設計報告,報告中必須體現學生自己的工作。這樣學生必須在同一設計題目的整體框架下,獨立尋找屬于自己那部分問題的解決方案。指導教師根據學生實際參加設計過程評定每個學生的平時成績。然后由學院統一分組答辯,指導教師一般不參加其學生所在組的答辯,答辯時間一般控制在10分鐘內,采用學生口頭報告與教師提問相結合的方式,根據學生實際設計工作和答辯情況評定答辯成績,學生最終成績由指導教師成績和答辯成績綜合組成。
實際效果表明,在新大綱的統一要求下,經過集中答辯,學生的設計態度、報告質量、成果水平都比往年有了較大改進。同一題目,往往出現多種設計方案和不同實現方法,有的方案盡管不盡合理,也沒有具體結果,但思路獨特,仍然得到好的答辯成績。這樣極大地激發了學生學習興趣,培養了學生解決問題的創新實踐能力。當然一般仍有部分學生沒有通過答辯,將參加下一屆的相關課程設計。相信經過不斷完善,設計效果將得到明顯改進,學生實踐教學質量將能得到有效保證。
4 結束語
自動化專業課程設計實踐創新能力培養策略與方法適應了社會對當代大學生實踐創新能力的需求。本文分析了課程設計實踐教學實施創新方法、課程設計實踐體系綜合創新平臺設計與開發、課程設計過程監控與創新能力考核等相關內容。實踐表明,這些方法在自動化專業課程設計中取得良好效果,對促進學生創新能力培養,保障自動化專業實踐教學水平的整體提高具有重要作用。
參考文獻
[1]周濟.創新是高水平大學建設的靈魂[J].中國高等教育,2006(3):1-4.
[2]華心祝,楊科,涂敏,等.加強采礦工程專業本科生實踐能力培養的對策分析[J].實驗室研究與探索,2011,30(3):103-106,115.
[3]王留芳,董德禮,周拓宇,等.多模式、多層次電子電工實踐教學改革的探索與實踐[J].實驗室研究與探索,2011(3):94-96.
[4]劉德宇.關于加強大學生實踐能力建設的思考[J].教育理論與實踐,2009(11):17-19.
[5]周愛國.大學生實踐能力培養存在的問題及對策[J].教育探索,2009(1):74-75.
[6]李加旺,黃依珍.構建具有創新教育的電子專業實踐教學體系[J].裝備制造技術,2011(3):198-200.
[7]李林,陸靈云,沈明霞,等.SRT計劃創新人才培養模式的研究與實踐[J].實驗室研究與探索,2009(2):8-11.