發布時間:2022-06-20 04:48:44
序言:寫作是分享個人見解和探索未知領域的橋梁,我們為您精選了8篇的計算機科學導論論文樣本,期待這些樣本能夠為您提供豐富的參考和啟發,請盡情閱讀。
關鍵詞:美國;計算機;基礎課程;教學大綱
2009年11月,作為國家示范教學實驗中心建設工作的一部分,國內高校計算機教學單位組團,對美國中部幾所大學的計算機教育情況進行了考察。本文對美國伊利諾伊大學香檳分校(UIUC)和伊利諾伊理工學院(IIT)的計算機基礎教育和美國大學非計算機專業計算機基礎教育的指導方針進行介紹和探討。
伊利諾伊大學香檳分校(University of Illinois at Urbana-Champaign,UIUC)成立于1867年,學科專業設置齊全,共有近200個專業,最好的學科是工程和商科,還有農學院、法學院、教育學院、航空學院、工程學院、通信學院、獸醫學院、藝術學院、勞資關
系學院、企業管理學院、社會研究學院、人類學院、化學和化工學院、人文和家庭研究學院、應用科學生命學院、哲學和理學院等20多所學院[1]。
UIUC的計算機科學系創建于1972年,經歷30多年的發展,一直雄居全美前5名,僅次于Stanford、Berkeley、MIT和CMU[1]。UIUC的計算機科學(CS,Computer Science)課程體系規劃基本成形于1986年,并在此后的20多年間不斷完善。目前有57位教員(Faculty)[2],承擔著全部本科教學和科研工作。CS本科課程設置特點為廣、深結合,理論、實踐結合。課程覆蓋計算機理論、設計和應用等領域[3]。
伊利諾伊理工學院(IIT)始創于1890年,坐落于芝加哥,是一所同時重視科學和工程學的學府,是美國知名的三大理工院校之一,下設7個學院和1個研究中心,即阿默工程學院(Armour College of Engineering)、芝加哥肯特法學院(Chicago-Kent College of Law)、建筑學院、文理學院、設計學院、心理學院、斯圖爾特商學院(Stuart School of Business)和職業發展中心[4]。IIT的CS系目前有16位教員,承擔著計算機本科教學和科研工作。
1計算機專業基礎教學的特點
分類的計算機基礎課是美國大學基礎教學的主要特色,不同類型的計算機基礎課分別面向計算機專業、理工科專業和非理工專業。其中,根據美國本科教育的特點,計算機專業的基礎課有非常顯著的針對性。非計算機專業的計算機基礎課設計也很耐人尋味。
美國的計算機基礎課一般有兩門,在UIUC分別是CS100 Freshman Orientation(新生指導,1學分)和CS 125 Intro to Computer Science(計算機科學導論,4學分) [5]。在IIT分別是CS100 Introduction to Professions (職業生涯介紹,2學分)和CS201- Accelerated Introduction to Computer Science(簡明計算機科學導論,4學分)[6]。
面向新生開設的CS100類課程不僅課時較少,內容也比較簡單,在國內高校中較為少見。例如,IIT的CS100課程“作為一種(從事計算機)科學和工程職業介紹,闡述應用(計算機)工程和科學解決問題的過程,強調跨學科和國際化解決問題并需要評估計算、金融和社會制約因素下的解決方案[7]。”學習目標定位在使學生“理解計算機科學基本概念,包括計算歷史、二進制計算/邏輯/程序轉換、算法、計算機體系結構、操作系統等;展示使用偽代碼解決基本問題,如排序和遞歸;與計算機科學職業生涯有關的職業操守(ACM Ethics Code);利用圖書館資源研究和撰寫計算機科學技術的研究論文;創建并進行計算機科學理論的教學演示或計算機科學技術銷售演示[7]。”
這類課程在美國大學是非常有意義的。許多選擇計算機為職業方向的本科新生對計算機專業的培養目標、專業課程和職業生涯并沒有真正了解,而這門課程就可以幫助這些學生了解計算機專業的培養目標和就業前景,然后再作決定。不少學生學完這門課后,發現現實與自己想象的完全不同,就可以盡快轉到其他專業。另一種情況則相反,一些沒有專業方向的本科生(美國大學允許大學生沒有專業方向,但需要輔修若干小專業)在選修了這門課程后,可能將計算機作為自己的主修或輔修專業。
UIUC的CS125計算機科學導論是以Java語言為主的編程入門課,涵蓋了一些算法的內容,介紹與解決計算問題有關的基本概念和基本技術,此外還有與之配套的實驗課[2],擬作為計算機科學專業的第一門課程。該課程與我們國內多計算機專業開設的第一門計算機課程有共同之處。
2非計算機專業計算機基礎指導方針
美國大學的非計算機專業計算機基礎的指導方針出自美國國家科學研究委員會 (National Research Council,NRC)1999年出版的報告《Being Fluent with Information Technology》[8]。在報告中,該委員會將現代高等教育中受教育者的計算機或信息技術應用能力分別定義為智力性能力、信息技術的概念和信息技術技能3個方面,每個方面包含10項內容,共30項。
這3個方面的具體內容如下:
1)Intellectual capabilities(智力性能力,指在復雜和支撐性環境中應用信息技術)。
(1)Engage in sustained reasoning(持續運用推理能力)。
(2)Manage complexity(管理復雜性)。
(3)Test a solution(測試解決方案)。
(4)Manage problems in faulty solutions(在失敗的解決方案中尋找并解決問題)。
(5)Organize and navigate information structures and evaluate information(組織和導出信息結構并評估信息)。
(6)Collaborate(合作)。
(7)Communicate to other audiences(與他人溝通)。
(8)Expect the unexpected(準備好應對預料之外、情理之中的情況)。
(9)Anticipate changing technologies(預見技術的變化)。
(10)Thinking about information technology abstractly (關于信息技術的抽象思維)。
2)Information technology concepts(信息技術的概念)。
(1)Computers(計算機)。
(2)Information systems(信息系統)。
(3)Networks(網絡)。
(4)Digital representations of information(信息的數字化表達)。
關鍵詞:工程碩士;開放式教學;課程組
中圖分類號:G642文獻標識碼:B
1引言
軟件學院軟件工程碩士的培養目標是培養高層次、應用型人才,針對這個目標,其教學實施應著重體現出以下兩個差異性:
(1) 軟件工程學科領域和計算機學科領域間專業設置的差異性,這個差異應能夠很好地體現培養應用型人才的目的;
(2) 工程碩士課程和軟件學院本科課程的差異性,這個差異應能夠很好地體現培養高層次人才的目的。
目前國內軟件學院軟件工程學科和傳統的計算機科學學科在課程設置上差異還不顯著,工程碩士的培養方案中甚至部分課程只是本科階段的重復。雖然大都開始強調學生的軟件項目實踐,但普遍缺乏過程管理。本文在對IEEE的軟件工程知識體系進行深入學習的基礎上,針對軟件學院軟件工程碩士提出了實現開放式教學體系的教學改革方案。
2軟件工程知識體系
2004版SWEBOK將整個軟件工程知識體系分為11個知識領域(Knowledge Area,KA),其中前5個知識領域是按軟件開發的生命期諸階段排列的,即軟件需求、軟件設計、軟件構造、軟件測試和軟件維護;后6個知識領域是軟件開發中的支撐性或者輔的方面,可能覆蓋軟件開發的多個階段,包括軟件配置管理、軟件工程管理、軟件工程過程、軟件工程工具與方法、軟件質量、相關學科知識領域。這些知識領域SWEBOK并沒有重新系統規定,而是直接套用已經成型的各領域知識體系,因此不可避免地存在重疊和不匹配。
在SWEBOK的基礎上,IEEE與ACM又共同擬定了CCSE。其中的核心部分是軟件工程教育知識(SEEK)。SEEK由十個知識領域組成,包括:計算機基礎(CMP)、數學和工程學基礎(FND)、職業實踐(PRF)、軟件建模與分析(MAA)、軟件設計(DES)、軟件驗證(VAV)、軟件演化(EVL)、軟件過程(PRO)、軟件質量(QUA)、軟件管理(MGT)。
可以看出,SEEK和SWEBOK基本內容是相近的。總的來說,二者都是包含了軟件工程核心類的知識領域、基礎類或前導類的知識領域,以及其他相關領域的知識。
3高等教育教學改革研究狀況
目前國內關于高等教育教學改革的論文很多,如翁敬農、劉云等在軟件學院實踐教學體系的內容與規劃中提出了“一個目標”、“兩種途徑”、“三大環節”、以及“四級臺階”的具體步驟。王移芝、林艷琴提出基于“兩段教學”的計算機基礎課程的教學體系框架。謝芳清、閆大順提出了以素質教育為目標的實踐教學體系。王浩、胡學鋼等提出計算機科學與技術專業實踐教學體系的總體研究與建設。王志英以國家實驗教學示范中心為例,提出實踐是綜合能力培養的基礎,并以此構建計算機科學與技術專業實踐教學體系。董瑋、邱建華等以專業課“程序設計基礎(C語言)”為例給出了建設實踐教學體系的實踐探索。然而目前還沒有檢索到專門研究軟件學院工程碩士教學改革的論文。無論是從傳統計算機科學與技術專業與軟件學院軟件工程專業的區別,還是本科生與研究生的區別來看,針對軟件學院工程碩士的教學改革研究都是十分有必要的,同時也是迫切的。
4工程碩士的課程體系設計策略
我們以IEEE SWEBOK和CC2004SE的知識體系為主體,結合中國軟件產業以及本院的具體實際情況,設計了中國科學技術大學軟件學院軟件工程專業的知識體系,作為我院工程碩士課程設置和教學計劃實施的依據。以SEEK為基礎,我們對軟件工程的課程設置進行規劃。整個課程設置可以分為三個層次,即導論性課程、軟件工程核心課程和其他課程。如圖1所示,該知識體系定義了7個知識體系子類。計算機基礎和數學和工程學基礎屬于導論性課程、其他課程包含了職業實踐、領域課程、軟件工具、工程實踐等四個子類。
其中計算機基礎定義了軟件工程作為計算學科所必需包含的計算科學基礎以支持軟件產品的設計與建設;數學與工程學基礎提供了軟件產品獲得所需屬性的理論和科學基礎;職業實踐則聚焦于軟件工程師以職業行為從事軟件工程實踐所必需具備的知識、技能和態度;軟件工程核心課程應該包含軟件開發生命周期所涉及到的主要知識領域;領域課程包含了對于某個特定領域軟件工程師應該接受的特定教育或經驗;軟件工具定義了從事軟件工作所必需掌握的當前主流工具與軟件產品等;工程實踐則是學生使用所學到的知識從事實際開發活動,提供動手能力的重要環節。
對于工程碩士來說,大部分同學經過計算機本科專業的學習,已經具備了初步的計算機基礎以及數學與工程學基礎,因此目前其課程體系建設如圖2所示,重點是完成軟件工程核心課程教學,并結合IT界的最新技術趨勢設計相關領域課程。教學改革的核心是如何設計軟件工程的核心課程,并指導學生熟練掌握相應的軟件工具,強化他們的實踐動手能力。
5工程碩士開放式教學體系建設
對于如何設計軟件工程的核心課程,我們的主要思路是打破原先各子知識體系間的界線,圍繞專業培養目標,結合學生的工程實踐,引入課程組的概念,實現一個完整的開放式教學體系。如圖3所示,整個開放式學習體系包含三個部分:
(1) 設計課程組:在理論環節采用課程組的概念,集中講授較高層次的、符合碩士生水平的軟件工程的某些重要環節;
(2) 開設實踐教學環節:在實踐教學中采用做中學(Learning by Doing或LBD)理念,由指導教師講述軟件工具的具體操作過程,同學實際動手學習;
(3) 強化工程實踐:在工程實踐中由學生自主選題,并將LBD中講述的工具在項目整個生命周期中貫穿使用。
5.1設計 課程組
目前我院開設的高級軟件工程和本科的軟件工程課程內容并沒有太大差別,對于軟件工程的各個環節面面俱到,但又都比較淺顯,對于工程碩士的培養顯然是不合適的。因此我們設計了軟件工程課程組的理念,初步設計了以下課程:
(1)“軟件開發管理”(Managing Software Development)
(2)“軟件系統架構”(Architectures for Software Systems)
第一門課程主要針對以后立志從事軟件工程管理方向的同學,課程針對IT項目集中闡述如何實現風險、資金、工期等各方面的管理;第二門課程主要針對以后立志從事軟件高級開發方向的同學,課程主要講述復雜軟件系統架構層上的設計,介紹目前通用的軟件系統結構、設計技術以及實現這些結構的模型、表述方法等。這兩門課程對于軟件工程碩士應該至少必修一門。除了這兩門課程,其他軟件工程類的課程包括了設計模式、軟件測試、語言類課程如J2EE、.NET等等,學生可根據自己的實際情況進行選修。
5.2開設實踐教學
針對該課程組,我們開設了實踐教學環節,采用做中學理念,由指導教師(可以由助教擔任)根據事先確定的主題,選用具體工具講述如何使用該工具完成項目開發的某具體環節,工具涵蓋了項目管理、架構設計文檔化以及測試等軟件項目開發的主要方面。
對于軟件工具的選擇,有兩種思路。一種方法是對軟件工程的不同環節分別選擇不同工具,例如項目管理選Project、開發文檔化選Rational、測試再選別的工具這樣來做,但結構分散,不利于整體化考慮。另一種是采用套件,完成項目開發全程的所有操作,目前我們選擇了兩種套件,一是微軟的VSTS,該套件和微軟的Visual Studio開發平臺綁定,適合學習.net開發框架的同學;另一種是IBM的RSA,該套件和Eclipse開發平臺綁定,適合選擇開源J2EE開發框架的同學。
5.3強化工程實踐
大多數的軟件學院目前都開設了專門的工程實踐環節,但實際的效果并不盡如人意。因此我們將工程實踐環節也納入到開放式學習體系中,以前面所說的理論以及實踐教學環節來指導學生更好地高質量完成整個工程實踐。
從教學方法上,工程實踐應盡可能地貼近現實項目,除了常見的軟件工程文檔,我們還要求學生提交過程管理類文檔(軟件開發合同、會議記錄、工作日程記錄、合同執行報告:財務報告和開發過程報告、個人總結、小組總結等)。
從技術上,學生可以自由選題,也可參考工程實踐題庫中的選題。選題涉及所有領域課程包含的內容。要求學生必須采用實踐教學環節中介紹的工具全程介入項目開發的各個階段。學院設立專門的工程實踐網站提供學生選題及交流,以及指導教師的監督。
從教學形式上,則注重如何實現應用型軟件人才的核心能力分析與培養,要求學生運用職業實踐子知識體系中的相應內容,鍛煉學生的口頭表達能力、書面表達能力等。通過學生的開題演講、采用各種工具完成相應的項目文檔、結題答辯等環節來實現學生職業素質的培養。
從實踐效果評價上,我們制定了一系列的成績考核方法、管理考核信息、分析考核結果、評價教學質量等措施,實現完整的考核體系。
6結論
軟件工程專業學生的培養,在學科教育與培養面向市場需求的人才方面有著事實上的矛盾。軟件學院現有的實踐教學體系存在著專業課程設置定位不準確、課程實驗師資不足、實驗教學內容質量不高、實驗指導和管理落后等問題。根據軟件工程專業教學所面臨的挑戰,在充分調研IEEE SWEBOK和CC2004SE知識體系的基礎上,針對軟件學院的工程碩士,我們提出了軟件工程碩士開放式教學體系的建設,圍繞專業培養目標,結合學生的工程實踐,引入課程組的概念,制定了一套較為完整的開放式實踐教學實施計劃。
參考文獻 :
[1] Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering [EB/OL]. [2004-08-25]. /ccse/SE2004Volume.pdf.
[2] 翁敬農,劉云. 北航軟件學院本科生實踐教學體系的研究與實踐[J]. 計算機教育,2007(11).
[3] 王移芝,林艷琴.“計算機基礎課程”實踐教學體系的研究與實踐[J]. 實踐教學,2008(8).
[4] 謝芳清,閆大順. 計算機工程專業實踐教學體系的研究[J]. 中國科技信息,2008(9).
[5] 王浩,胡學鋼,侯,等. 計算機科學與技術專業實踐教學體系的研究與建設[J]. 計算機教育,2007(11).
姓名: 專業: 所屬系別:
學號 指導教師姓名 職 稱:
開題報告時間: 年 月 日
論 文 題 目 :小型醫院業務管理系統設計
1、擬選課題國內、外的研究動態、水平、存在問題,與本人實習、社會實踐、調研的關系,并附主要參考文獻:
醫院的醫療水平和服務質量一直是國內外關注的焦點,僅靠增加基礎設施投入和脫離信息化的管理方法的改進,是不能從根本上提高醫院的工作效率、服務質量和管理水平的。醫院業務管理系統的目的就是減輕業務勞動強度,減少了差錯,科學管理藥品,節省人力,提高醫院的財、物管理水平,增加經濟效益,改善患者的就醫環境,方便患者就醫和查詢,提高醫院的服務效率和服務質量,提高醫院的醫療質量和管理水平。所以,一個現代化的適應社會發展需要的醫院,除了具備一流的醫療隊伍、一流的服務設施之外,還應具備一流的業務管理系統。
醫院業務管理系統不僅能提高醫務人員的工作效率和醫療水平,而且能提高醫院的服務質量。因此,醫院對業務管理系統有著強烈的需求。本文介紹了醫院出入院處、病區、藥房、藥庫的業務流程,在整體分析醫院各部門以及部門之間的實際工作業務的基礎之上,結合管理系統開發的理念,用VB 6.0作為前端開發工具,開發了醫院業務管理系統。目的就是利用計算機軟硬件技術、 網絡通訊技術等現代化手段,對醫院及其所屬各部門的業務進行綜合管理。從而為醫院的整體運行提供全面的、自動化服務的業務信息系統。全文通過對業務流程的分析以及對系統的模塊設計、實體-聯系圖(E-R圖)設計、關系模式設計、數據庫設計、代碼設計、人機界面設計等,詳細地闡明了本系統開發的目的、過程及預期效果。
業務管理系統是一門集管理科學、信息科學、系統科學及計算機科學為一體的綜合性學科,研究的是管理活動的全過程,以便有效的管理醫院。
參考文獻
[1]張莉 王強 趙文方 董莉 《SQL Server 數據庫原理及應用教程》清華大學出版社,2002
[2] 薩師煊、王珊.數據庫系統概論(第三版).北京:高等教育出版社,2000
[3] 張海藩.軟件工程導論(第四版).北京:清華大學出版社,2003
[4] 催五子、于寧。界面設計與Visual Bbasic.北京:清華大學出版社,2004
2、課題擬解決的主要問題,在理論和應用方面的意義,完成課題的條件(包括實習單位情況)和設計(論文)的主要內容:
意義:1、為病人提供更好更快、更快的服務,提高醫院在醫療市場的競爭力以及吸引更多的病人到本醫院就醫;
2、人力工資昂貴,迫使醫院采用計算機以提高勞動效率;
功能:1、門診掛號:為病人提供就醫卡方便病人;
2、住院病人管理系統:是醫院可以隨時了解病人情況;
3、藥房管理系統:提高了藥品管理的質量,和工作效率;
4、門診醫生工作站、住院費用的管理、病歷管理系統、以及外部接口等。
3、指導教師對學生選題報告的評語:
指導教師簽字: 年 月 日
4、選題報告會評議組意見:
組長(簽字): 年 月 日
5、學院審查意見:
關鍵詞:網絡工程;培養方案;人才培養;課程體系;實踐教學
中圖分類號:G434文獻標識碼:A文章編號:16727800(2012)008021202
作者簡介:趙卿松(1972-),男,碩士,武漢工程大學計算機科學與工程學院副教授,研究方向為計算機網絡、數據庫技術。
1專業培養方案的體系結構
根據素質教育和專業教育并重的原則,課程體系的設置以“低年級實行通知教育和學科基礎教育以提升學生素養,高年級實行有特色的專業教育以提升學生的實踐動手能力、創新精神和創新能力”為準則,構建理論教學平臺、實踐教學平臺和創新教育平臺。
理論教學平臺由三類課程組成:通識教育課程、學科基礎課程和專業課程。通識教育課程由公共基礎課和素質教育課兩個模塊組成;學科基礎課程按照學科大類安排學科基礎課程;專業課程則分為專業主干課和專業選修課兩個模塊。
實踐教學平臺由實訓、實驗和實習組成:①實訓包括:軍訓、綜合課程設計等;②實驗教學以課程內實驗為主,并開設一定比例的綜合性、設計性實驗等;③實習包括:認識實習、生產實習、畢業實習、畢業設計(論文)等環節。
創新教育平臺由課程創新教育、學術創新活動和實踐創新活動組成。課程創新教育包括學科前沿課程和創新教育課等;學術創新活動包括學科競賽、課外科技活動和創新性實驗計劃項目等;實踐創新活動包括以取得職業資格證書或企業培訓合格證為目的的各類專業技能培訓活動等。
2專業培養目標及課程體系
結合本校的實際情況及社會對網絡專業人才的需求,以培養“高級應用型網絡人才”為目標,具備計算機科學與網絡技術的基礎理論知識、具備網絡規劃設計及計算機網絡應用系統開發能力、具有網絡維護與管理專長、能從事網絡工程領域的科學研究、技術開發、管理維護等工作。
課程體系是專業培養方案的核心內容,是培養目標的具體體現,很大程度上決定了學生的知識結構。按照學校整體的人才培養特色,結合學院目前的學科發展狀況,按照“寬口徑、厚基礎、重實踐、有特色”的培養原則,在課程設置方面認真考慮了以下幾點:
(1)由于網絡工程是多學科交叉融合的新興專業,因此,在計算機科學技術、數字通信技術、信息處理等方向上,設置了對應的專業核心基礎課程,以提高學生的適應性。
(2)課程設置強調了公共基礎和學科基礎的重要性,對重要的基礎課程給予了充足的學時。
(3)將方向的選修課程分為網絡規劃設計及管理、網絡信息處理兩部分,以適應社會對網絡工程專門人才的需求。網絡工程專業課程體系如表1。
表1網絡工程專業課程體系
作為工科專業,公共基礎課程的設置與其它工科專業類似,開設大學英語、數理、政治理論基礎和計算機基礎等課程。學科基礎課程除了電類基礎和計算機軟硬件系統基礎外,增加了網絡工程導論、計算機網絡和數字通信原理等課程,以補充學生在數字通信領域上的基礎知識,為進一步學習網絡工程的后繼課程打下良好的基礎。針對網絡規劃設計方向,在專業主干課和專業選修課中設置了現代通信技術、網絡操作系統、網絡規劃設計、現代網絡技術、網絡系統集成、網絡設備等課程,以培養學生在網絡組網和網絡規劃設計方面的能力;針對網絡信息處理方向則設置了網絡編程、網絡協議、網絡互聯技術、Linux系統管理、Linux程序設計、Java程序設計等課程,以培養學生在網絡應用程序設計與開發方面的能力。
3實踐教學環節
3.1課程內實驗
所有的學科基礎課程、專業主干課程和專業選修課程都設置了一定比例的實驗,課程內實驗以加深、鞏固對基本原理的理解和掌握。課程內實驗以實驗項目的形式來組織,每個實驗項目占2學時或4學時,實驗項目分為基礎性實驗項目、設計性實驗項目或綜合性實驗項目,一般設計性或綜合性實驗項目的學時數占課程內實驗學時的30%~40%。
基礎性實驗項目主要是對課程所涉及到的基本原理與過程、基本方法進行實驗驗證,以消除學生對課程基本原理理解上的抽象性和神秘感。綜合性實驗項目以基礎性實驗項目的掌握為基礎,綜合運用課程涉及到的知識,以增強學生對課程基本原理的掌握并融會貫通,適用于數字通信原理、網絡操作系統、網絡規劃設計、現代網絡技術、網絡系統集成、網絡設備等課程學習過程中進行,為后繼的綜合課程設計打下基礎。設計性實驗項目也是以基礎性實驗項目的掌握為基礎,提出實驗任務與要求,由學生自主設計完成實驗任務的方案、實驗步驟和方法,適用于程序設計、計算機網絡、網絡編程、網絡協議、數據庫系統原理等課程學習過程中。通過設計類實驗項目的鍛煉,學生可以初步了解網絡應用系統開發的思路,掌握網絡程序設計的基本方法,培養學生的創新能力。
3.2綜合課程設計
綜合性的課程設計是一個重要的實踐環節,其目的是進一步培養學生理論聯系實際的能力和專業知識綜合運用的能力。從第四學期開始至第七學期,開設了基礎軟件綜合設計、基礎硬件綜合設計、網絡工程綜合設計、網絡通信綜合設計、網絡應用綜合設計等綜合課程設計。每個綜合課程設計集中安排在學期末,占2周時間,為了更好滿足學生的興趣,采用教師給出多個設計題目供學生選擇這種雙向選擇的方式。同時要求課程設計指導教師的最多指導學生的人數不能超過30人,以保證教師對學生的指導效果。
為培養學生的論文書寫能力,要求學生書寫完整的綜合設計報告,包括課題背景、設計簡介及設計方案論述、詳細設計、設計結果及分析、總結等內容;為保證綜合設計的質量,安排了綜合設計答辯環節,答辯中由學生先對設計的內容進行闡述和演示,然后答辯教師針對設計內容隨機提問,以考察設計完成情況。綜合設計成績評判由平時表現、完成情況、報告質量和答辯情況等內容按照一定比例組成,能比較客觀地評價學生完成綜合設計質量。
3.3實習與畢業設計
為讓學生接觸社會,體驗未來就業單位的工作環境和實際項目開發過程,從三年級上學期開始分別組織3次實習,即認識實習、生產實習和畢業實習。
認識實習安排在第五學期初,占2周時間,參觀IT企業或事業單位的科研環境或辦公網絡環境,見識不同廠家或品牌的網絡設備(如交換機、路由器、服務器等)及網絡應用系統的應用情況或研發過程,以增強學生對專業的興趣,為后續專業課程的學習增加感性認識。
生產實習和畢業實習安排在第七學期和第八學期初,各占3周時間,為了保證實習的效果,與IT企業或思科認證培訓機構合作,建立了多個校外實習基地,讓學生參與到組網工程、網絡管理與維護和網絡軟硬件系統開發等項目中。特別是在與思科認證培訓機構的合作過程中,充分利用他們的師資與設備資源,很好地克服了我校網絡組網設備不足的缺陷,為學生提供了一個理論與實踐相結合的平臺。
畢業設計為網絡工程專業學生在畢業前提供了一次綜合性專業技術實踐鍛煉,畢業設計課題圍繞網絡規劃設計與網絡信息處理兩個方向展開,畢業設計周期為14周左右,包括選題、開題、課題任務的完成、書寫畢業設計論文和論文答辯等環節。我們將校企合作方式也引入到畢業設計環節中,對部分學生實行校內和校外指導教師共同指導的方式,真題真做,以達到在完成畢業設計任務的同時,解決企業某方面實際問題的目的。
4結語
網絡工程專業是在計算機科學與技術、通信等專業基礎上經過發展逐步形成的專業,作為一個實用性強、服務面廣的專業,在人才培養過程中不能簡單地套用傳統計算機專業的人才培養模式,需要根據專業特點不斷地摸索、循序漸進和逐步完善。
參考文獻:
\[1\]王春枝,李紅.網絡工程專業培養方案探索與實踐\[J\].計算機教育,2010(23).
學校簡介
伊利諾伊大學香檳分校是“十大”盟校(The Big Ten)之一,建立于1867年,一直是全美最優秀的大學之一,理工科在“十大”中更是排名第一。該大學排名全美前10名的研究生專業有物理學、化學、計算機科學、心理學、教育學、工程學、會計學、大眾傳播學、圖書館科學、音樂、數論、代數、邏輯學、微生物學。工程學院在全美聞名遐邇,其電子工程、計算機工程、土木工程、材料科學與工程、機械工程、原子工程、農業工程、環境工程等系科都排在全美前五位,化學工程、航空航天工程排在全美前十位。
該校的教授和校友有不少知名人士,比如歷史上第一次在同一領域(固體物理學)中兩次獲得諾貝爾物理學獎的發明了晶體管并提出了低溫超導理論(BCS理論)的巴丁教授;哈肯教授與阿佩爾合作在計算機完成了四色定理的證明;網絡神童馬克?安德森(Mark Anderson)在伊利諾伊大學厄巴納-香檳分校設計了因特網瀏覽器軟件Mosaic及Netscape;身價一度超過比爾?蓋茨成為世界首富的甲骨文公司(Oracle)董事長兼首席執官拉里?埃里森(Larry Ellison)曾在伊利諾大學香檳分校讀書;AMD創始人兼首席執官杰里?桑德斯(Jerry Sanders)是伊利諾大學香檳分校電子工程學士;通用電氣(GE)董事長兼首席執官杰克?韋爾奇(Jeck Welch)是伊利諾大學香檳分校化工博士。截至2003年,該大學共有二十位教授及校友榮獲過諾貝爾獎,兩位校友榮獲過圖靈獎,一位教授榮獲過菲爾茲獎,二十一位教授及校友榮獲過普利策獎,十一位教授榮獲過美國國家科學獎章,現任教授中有兩位普利策獎得主、二十六位美國國家科學院院士、二十九位美國國家工程院院士。
該校的計算機系創建于1972年,多年來在全美排名一直保持在Top5之內,一些事實也無可爭辯地捍衛著這一地位:世界上最早的計算機Eniac誕生在這里;世界上第一個網絡瀏覽器Mosaic誕生在這里;其畢業生所建立的公司(Netscape、YouTube、PayPal、Lotus和Sieble Systems)在計算機界赫赫有名;其國家超級計算機應用中心(NCSA)是全美國五大計算機研究中心之一。
課程設置
該校計算機系的課程設置乍一看上去和國內大學似乎沒有什么大的區別。對本科生來說,“1”開頭的系列基礎課程,主要是包括計算機導論,離散數學等計算機基礎課程;“2”開頭的是更專業一些的課程,比如類似國內操作系統的System Programming、計算機體系結構和數據結構;“3”開頭的目前僅有兩門課:397 Individual Study和398 Special Topics in CS,主要是擴展學生的學習興趣和能力。研究生的課程都是以“4”開頭的專業基礎課程和以“5”開頭的專業課程,其中以598開頭的為前沿學科討論課程。學生也分為碩士和博士,但對碩士的要求不高,所以很多直接跟隨教授做研究的學生都是博士。課程的要求也是作業、項目和最后的考試。但實質上,由于管理、研究水平等原因,這些設置還是有所不同。
該系目前提供三種類型的本科學位,一種是五年的本科和碩士生打通的學位,五年畢業后取得本科和碩士兩個學位;另兩種是計算機科學本科學位和軟件工程學位。每一種根據對學生都有不同的學分和課程要求。比如對于第一種學位,要求選夠120學分,其中理論(473 Algorithms或者475 Formal Models of Computation)、結構(431 Embedded Sys Arch and Software或者433 Computer System Organization)和軟件(421 Programming Lang and Compilers或422 Programming Language Design或423 Operating Systems Design)必須按研究生學分選修。
研究生分論文和非論文兩類。論文學位中和國內一樣分碩士生和博士生。普通論文碩士要求28個課程學分和4個論文學分。博士生的總學分要求是96個課程學分,包括課程學分和論文學分,其中至少要求32個論文學分;學士直讀的博士生要求96個課程學分。目前注冊的研究生人數近450人。
從課程設置方面看,該系的課程分得很細,從和國內相類似的專業基礎課,比如計算機導論、數據結構、軟件體系結構、數據庫系統、操作系統、軟件工程;到很專業的課程,比如算法、密碼學導論、程序驗證、自主信息系統、形式化軟件開發方法以及以598打頭的帶有主講教師名字代號的擴展課程。尤其以研究生的課程設置最為細致。數一下他們的課程可以發現,學生有很多方向可以選擇,本科生的課程多達77門,研究生的更是多達102門。當然有不少課程是兩者都可以選修的。一般一門課程3~4個學分(根據是否完成Project區分),每周兩次,一次75分鐘。
講授該課程的教師基本上都是該校專門從事這一方面研究的權威,有著多年的研究經驗。比如我所選修的“程序驗證”課程屬于該系的研究生基礎理論課程,任課教師Meseguer教授已經在這方面從事了近三十年的研究,而且目前也是這方面的權威。“數據挖掘”課程的教師是Han教授,也是數據挖掘的世界級權威。這保證了任課教師在講授課程的同時貫穿了該課程在學科中的領先技術和知識。同時,比較明顯的一點是課程結合實際動手的項目比較緊密。比如我所選修的“程序驗證”課程雖然有很強的數學背景,介紹了等式邏輯和重寫邏輯,但該課程輔以該實驗室的Maude系統作為實踐工具,所以所介紹的理論可以實實在在地在計算機上看到其作用和結果。“程序設計原理”這門課也使用了Maude系統作為高級程序語言的規格說明語言,這立刻就讓本來很抽象的兩門課有了感性認識的平臺,學生可以立刻通過工具感受邏輯在計算機中的作用,可以使用該工具立刻設計出自己的新的程序語言。相比而言,國內類似的課程都缺乏相應的輔助工具,學生學理論不知道怎樣用到計算機中,學程序語言設計多是看看別人設計的語言是怎樣的,難以在短時間內自己動手設計一個。
開放性
這半年中我感受最深的當數該系信息資源的開放性。從課程上來說,每學期的每一門課程都能在系里的網絡上找到相應的講義、作業、項目以及閱讀的參考資料。和課程相對應,每位教授都開設一個甚至多個專題討論會,這些討論會都有相應的MailList可以讓學生或是研究人員加入。根據我的研究興趣,我參加了Maude、Runtime Verification以及軟件工程討論小組。每一個討論組由教授主持每周定時討論一至兩個小時,同時維護一個網站公布每次討論的主題或是論文。所以,和國內的例會不同,這些討論會除了教授自己的學生,往往會有一些感興趣的學生或是像我這樣訪問學者參加。通過這樣的方式,也有教授的介紹,我和目前我感興趣的幾個教授都交流過,他們都很細致地介紹自己的研究,包括介紹實驗室開發的軟件工具。而這些軟件工具都放在他們自己實驗室的網站上,有的是可以免費使用的,有的甚至是源碼公開的,同時有他們公開發表的論文。有兩位教授的實驗室研究內容我比較感興趣,但他們還沒有源碼,經過兩次討論后,他們都表示可以提供源碼以便進行進一步的研究。同時,我找他們的學生詢問相關工具的一些細節技術,他們都詳細解答,有時甚至花費兩個多小時。
其實這一點在我聯系訪問的Host Professor時就感受頗深:每一位教授都可以在他們的主頁上找到非常詳細的資料,他們的研究概況、發表的論文、教授的課程、所做的研究項目、學生、聯系方式等等。對比國內同行,很多都沒有自己的主頁,有一些由于單位組織倒是有,但所找到的基本上都是僅僅一頁的概述而已。這導致國內很多信息無法交流。當然,我想這也有一點客觀原因,就該系的項目情況而言,縱向課題的資助就已經足夠教授們完成研究,所以他們并不在乎把研究成果轉化為實際產品,而是公開這些研究成果,讓其他人盡量多地使用,讓其他人或公司完成產品的轉化工作。反之,國內很難找到根據研究成果完成的軟件工具,因為一般如果做到工具,都希望更進一步做到產品化,能以此爭取到橫向課題的支持,以便彌補縱向課題經費的不足。由于橫向課題講求實用,有很多非前沿性,非研究性質的工作需要完成,直接影響了研究的深度。
開放性還反映在該系的研究領域交叉之中。該系的研究領域分為:算法和理論;人工智能;體系結構、并行計算機和系統;復雜生物及計算生物;數據庫及信息系統;圖形圖像和人機界面;系統和網絡;程序語言、形式化系統和軟件工程;以及科學計算。但在我所參加的討論中,經常可以看到多個實驗室的教師和學生相互參與討論。比如我上上周參加的形式化小組的討論會上,就有體系結構實驗室的學生;上一周的軟件工程討論會上,報告者是一個數據庫實驗室的學生,因為他的工作內容涉及到用數據挖掘和統計的方法進行軟件調試,同時與會的還有該實驗室的兩位教授以及其他實驗室的學生。同一個研究領域內的合作就更多,比如我所訪問的教授專注于程序語言、形式化系統和軟件工程領域,他自己的實驗室和另外該領域的另一位教授Rosu的實驗室相連,兩人合作過多篇文章,Rosu的程序設計語言以及形式化軟件開發方法課程中應用了Prof. Meseguer的形式化工具,甚至有一些講義。我大致看過該系教授們的簡歷,非常少有本校畢業的學生,這說明相關合作并不是以前師生關系的繼續。同時,這里常常有一些前沿講座是由斯坦福、劍橋、伯克利和愛丁堡大學的教授和博士生開設(應聘的博士生都要公開做一個面試形式的講座),也有微軟和IBM這樣的大公司的研究院或是一些著名公司的學者的講座,這些講座頻率很高,常常可以在該系每周的日歷上看到這些通知。
其實,訪問學者這樣的一個制度本身就是很開放的。半年一年的互訪,帶來了很多交互的信息。相比而言,國內有不少實驗室雖然也設有客座教授、開放項目等,但是很難落到實處,很難有人真正是在實驗室里交流這么長時間,更多的僅僅是每年幾次的互訪而已。不過,為每一位訪問學者提供一間寬敞明亮的辦公室,提供所有辦公服務恐怕也是目前高校難以提供的緊缺資源。
風氣
另一個讓我感受比較深的地方是該系的學習風氣。由于課程設置很細,很多課程選課的人并不多,一二十個學生的課堂是很常見的,有的課程僅僅4~5個學生。當然也有上百人的大課,這一般是本科和研究生共同選修的課程。我上學期選修的program verification課程共有12個學生,這學期選修的formal method software development也不過十七八個學生。但給我印象很深的一點是,從開學到學期末,學生數目基本上保持不變,可見很少有人缺課。上課的氣氛很活躍,課堂上幾乎沒有見過學生打瞌睡,講課中間學生隨時提問,教師也是當時就回答。對于教師提出的問題,也幾乎沒有冷場沒有人回答的情況,當然也不是每一次回答都正確。相比而言,國內大學目前缺課的現象相當嚴重,有的必修課程都有三分之一缺課的,選修課就更不用說了。這當然有教師的原因,目前教學普遍不受重視,所有職稱的評定基本上由科研決定,這從前年上海交大的倍受學生歡迎的教師始終僅僅是一個講師就可見一斑。而教學顯然是很需要花費時間和精力的。
也不是說這里的教授上課都很好,也有底下學生反映講課不好的,但無論是從教師的授課還是學生的學習,你可以明顯感受到兩個字:認真。研究生自己決定上什么課,一個學期一般也就選修2~3門。相比而言,國內碩士研究生一學期的課程多達七八門,其中不少都是必須選修的,學生的學習相對比較被動,很多學生就為拿學分,課堂上打瞌睡,學Tofel和GRE,復習考研的學生大有人在,課堂上很少看到學生主動提問。在我的一門電子商務的選修課上我就問過學生,他們是否愿意做我以項目的方式提供的考試,很多學生說很有興趣,可是卻沒有時間。必修課和學位課的項目、作業已經讓他們窮于應付,還要復習考研、考Tofel和GRE,實在是心有余而力不足。為此我還調整過項目完成時間,允許學生在第二個學期開學時交,可以看到效果要好一些,有一些學生利用假期完成了自己感興趣的內容。可是隨著教學管理的正規化,要求課程結束后一周內必須給成績,剛開放一些的項目只好又恢復原狀。
這些情況造成了惡性循環,學生老師相互認為對方不認真,老師認為學生既然不想學,花的時間精力又不值,何必認真。學生認為老師備課不認真,講授的內容陳舊,學不到東西,沒必要好好學。從作業方面看兩者也有很大的差距。作為訪問學者,我雖然選修了課程,但其實并沒有學分,也沒有在學校注冊,充其量也就是旁聽,但由于教授建議我做作業以加深理解,我也基本上按時完成了作業,一學期一共五次作業,有理論證明,也有系統的使用(實驗室開放了根據他們的理論開發的軟件工具)和編程,要求打印作業并提交。發還作業的時候,我看到所有學生,包括我自己在內的作業都被認真批改過。而我自己為了完成作業把講義看了一遍又一遍,花了很多時間,但也從中發現很多深入的問題,如果不做作業還以為自己理解了,其實不然。詢問其他學生,他們也花很多時間做作業。該系的學生鮮有抄作業的,一方面學校處理很嚴,大家都認為是很不光彩的行為;另一方面認為做作業時為自己能學到東西做的。相比之下,國內目前學生抄襲作業的現象非常嚴重,有的學生私下里說有的課程甚至超過90%的比例。我認為這一方面有社會風氣的影響:君不見教授、學者的學術抄襲都時有曝光;另一方面是管理不嚴造成的。雖然國內的大學也有同樣的制度說抄襲者要懲罰,可是國內大學一門必修課由于研究生擴招甚至達到三百多人,雖然也有助教制度,但如此高的學生教師比例勢必造成作業、項目甚至試卷批改難以把關,從而進一步加劇了抄襲現象。
關鍵詞:軟件工程;課程體系;培養方案
軟件工程教育兼屬科學教育和工程教育范疇,軟件工程的科學教育屬性主要是引導學生對人類意識與智慧進行科學理解、增強運用軟件本質特性(構造性與易演化性)和解決具體問題的能力;而軟件工程的工程教育屬性主要是引導學生綜合應用計算機科學、數學、管理等科學原理,借鑒傳統工程的原則、方法,提煉和固化知識,通過創建軟件來達到提高質量、降低成本的目的。然而,McKinsey Global Institute2005年10月發表的一份報告稱,我國2005年畢業的60多萬工程技術人才中適合在國際化公司工作的不到10%,主要原因是中國教育系統偏于理論,學生在校期間幾乎沒有受到Project和團隊工作的實際訓練,這對我國高等院校工程教育改革與創新提出了挑戰,也為軟件工程專業建設指明了方向。
合理的課程體系是高等院校保證培養目標和形成辦學特色的重要手段。目前,我國1900多所普通高校中雖有100多所院校開設了軟件工程專業,但與當前軟件工程技術發展差距較大。為了培養出既有理論知識又有應用技能的工程型實用軟件人才,軟件工程專業課程體系必須進行改革。對此,本文結合CC2005、SE2004、SWEBOK、國內軟件工程專業課程設置現有的研究成果,探索軟件工程專業本科教學課程體系建設問題。
1 軟件工程專業課程體系設計策略
計算學科本科教學常用的課程體系設計策略主要劃分為:課程啟動策略、課程組織策略、特色課程設置策略。課程啟動策略主要包括:1)圍繞算法設計展開的算法優先策略;2)自底向上展開的硬件優先策略;3)從計算機導論展開的廣度優先策略:4)強調編程能力的程序設計優先策略;5)強調系統使用命令優先策略;6)從面向對象展開的對象優先策略。
課程組織策略主要有:1)基于主題的組織模式,它把知識體系中的每個知識域組織成一門或幾門課程;2)基于系統的組織模式,它把每類計算機軟硬件系統設置成一門或幾門課程;3)混合模式,在課程設計時不考慮區分前兩種方法,兼而有之。特色課程設置策略主要依據本校辦學特色和研究專長來確定。
由于軟件工程教育兼屬科學教育和工程教育范疇,其科學屬性和工程屬性決定了軟件工程專業本科教學課程規劃,一方面要強調工程性、技術性、實用性、系統性、綜合性和復合型,另一方面要強化基礎軟硬件知識在解決復雜軟件構造和應用方面起到的關鍵作用。對于課程啟動策略而言,傳統計算機科學專業的課程啟動方式并不適合于本專業,但工程優先策略似乎也不適合于沒有任何計算機基礎的本科生;同樣,在課程組織策略上,基于主題的組織模式更多地具有科學研究屬性,而基于系統的組織模式又不利于基礎知識強化;此外,特色課程設置時,有時會缺乏全面綜合考慮,因人設課會造成特色課程系統性差問題。因此,在軟件工程專業課程體系設計策略方面,應根據軟件工程學科自身屬性,綜合考慮以上各種策略特點,全局思考,統一規劃,避免課程系統性差、教學內容重復和遺漏并存等現象。
2 軟件工程專業課程體系架構模型設計
根據軟件工程專業本科教學的培養目標及規格要求,其課程體系采用“夯實基礎教育、提高系統認知、強化軟件開發、推進工程實訓”為主線的設計思路,構建了“分層次、互動式、工程化”的課程體系架構模型(如圖1所示)。該模型共分為四個層次,即基礎知識教育層、系統認知教育層、工程設計開發層和工程實踐訓練層。各層次不是相互獨立的,而是相互關聯、相互影響、逐層遞進的演進關系。該模型簡化了計算機科學核心課程數量,突出基于主題的組織模式,沿著由淺入深、循序漸進的認知路徑,力圖實現“基礎與編程一體化、編程與系統一體化、系統與工程一體化、工程與職業一體化”四位一體的工程型實用軟件人才教學目標。
2.1 基礎知識教育層
基礎知識教育的設計思路,強化學生的基礎知識和編程意識,實現“基礎扎實和編程意識強”兩個目標。基礎知識教育層結構具體劃分為:數學基礎類課程模塊、外語類課程模塊、軟件基礎類課程模塊、其他公共基礎類課程模塊。根據各模塊自身特點,全面考慮各模塊之間的關聯性,做好彼此之間的銜接。在課程啟動策略方面,主要采取基于基礎的編程優先策略。在數學基礎類課程模塊中確定一門銜接較好的基礎課作為軟件基礎類課程模塊的啟動,軟件基礎類課程模塊率先啟用軟件設計基礎課程,力圖達到“基礎與編程一體化”的教學目標。在課程組織策略方面,采取基于主題的組織模式,有利于學生掌握基礎理論知識。
2.2 系統認知教育層
系統認知教育的設計思路:強化學生的編程能力和對軟件系統的認識能力,實現“編程能力強和系統級認知”兩個目標。根據軟件工程專業對硬件系統和系統軟件的知識要求,系統認知教育層結構劃分為:數據庫系統類課程模塊、網絡系統類課程模塊、操作系統類課程模塊和編譯系統類課程模塊。在課程啟動策略方面,主要采取基于編程的系統優先策略。通過軟件基礎類課程模塊的數據結構等課程和系統認知類課程模塊的數據庫原理及應用等課程,進一步強化學生的編程能力,并以程序設計為主線引導學生的系統級認識能力,實現“編程與系統一體化”的教學目標。在課程組織策略方面,采取基于系統的組織模式,簡化計算機科學核心課程數量,提高學生學習的有效性和對知識的掌握程度。
2.3 工程設計開發層
工程設計開發的設計思路:以工程化方法為手段,依托項目培養學生的“工程”意識,鍛煉學生對軟件系統的設計與開發能力,進一步強化學生的系統級認識,實現“更完整的系統級認識和軟件系統工程化設計開發技術”兩個目標。根據軟件工程項目開發流程,工程設計開發層結構劃分為:軟件過程類課程模塊、軟件設計類課程模塊、軟件架構類課程模塊、軟件測試類課程模塊、人機交互類課程模塊、特色項目類課程模塊、可擴充類課程模塊。該層綜合考慮核心專業課程和特色項目課程設置,基于專業方向設置若干動態可擴充課程,全面考慮課程之間的關聯,強調統一設計、統一規劃。學生在這個層次必修一些工程設計開發系列課程,選修可擴充類課程,達到“系統與工程一體化”的教學目標。課程啟動策略采取基于系統的工程優先策略。課程組織策略采取項目的組織模式,以此來提高學生的軟件系統設計與開發能力。
2.4 工程實踐訓練層
工程實踐訓練總體設計思路:通過實驗訓練、專業實習、項目實訓、畢業設計等教學環節,依托校內 外實習實訓基地,采用校外實習實訓、自主實習實訓、校內實習實訓和外聘軟件工程師等形式,強化學生的工程能力,培養學生的職場素質,實現工程與職業一體化的教學目標。工程實踐訓練層結構具體劃分為兩大類,一類是實驗與實習類課程模塊,另一類是工程實訓與畢業論文類課程模塊。其中,實驗與實習類課程模塊的具體設計思路,通過基礎實驗、系統體驗、編程能力訓練三個環節,進一步夯實學生的基礎知識,完善學生的系統級認識,強化學生的開發技能;而工程實訓與畢業論文類課程模塊的具體設計思路,通過“軟件工程項目實訓”這個載體,采取“企業+實訓+論文+就業”捆綁的運作模式,與多家國內知名IT公司合作,讓學生到企業進行實際項目綜合訓練,并完成畢業論文設計工作,實現理論與實踐結合、技巧與職業素質結合的教學目標,同時也為學生就業提供一個良好平臺。
上述四個教育層是彼此聯系和互動發展的,在課程體系設計中充分考慮銜接性、系統性和創新性。交流、溝通、講演、寫作的培養更多體現在第二課堂科技學術活動中。
3 軟件工程專業核心課程設置
3.1 課程設置原則
軟件工程專業課程設置遵循六個基本原則,即先進性、靈活性、復合性、工程性、創新性和模塊化。1)先進性:課程設置和課程內容需反映國際上先進的軟件技術發展成果和軟件企業對先進技術的需求,以及相關的基礎理論。2)靈活性:課程設置需具有靈活性,應根據軟件技術的發展及時調整。3)復合性:課程設置需包括技能、工程、管理等方面的教學內容,使學生具有必要的綜合技能和基本素質。4)工程性:課程設置面向軟件工程實踐,強調工程實踐能力培養,使學生能夠自覺運用先進的工程化方法和技術從事軟件開發和項目管理,具有團隊協作精神。5)創新性:課程設置應倡導學生自主學習,并給予必要的指導,從而培養學生自主學習和自我提高能力,以及勇于開拓和善于創新能力。6)模塊化:課程應按照模塊化準則設計,課程模塊設計可以交叉。根據軟件技術最新發展、當前市場需求及專業培養方向、學生目前具備的領域知識等,靈活調整課程設置和課程內容。
3.2 核心課程模塊設置
1)軟件基礎類課程模塊設有:計算機硬件基礎、軟件設計基礎、數據結構、計算機組織原理、面向對象程序設計、算法分析與設計等課程。2)操作系統類課程模塊設有:操作系統原理、LINUX系統基礎、嵌入式系統基礎等課程。3)網絡系統類課程模塊設有:計算機網絡、網絡規劃與集成、網絡安全檢測與防范技術、網絡協議與網絡軟件等課程。4)數據庫系統類課程模塊設有:數據庫原理及應用、ORACLE數據庫、數據倉庫與數據挖掘技術等課程。5)編譯系統類課程模塊設有:編譯系統原理、編譯技術等課程。6)軟件過程類課程模塊設有:軟件工程、需求工程、軟件項目管理、軟件建模技術UML等課程。7)軟件設計類課程模塊設有:C++高級程序設計、J2EE與中間件、.NET架構技術、設計模式等課程。8)軟件架構類課程模塊設有:大型軟件系統構造、軟件體系結構等課程。9)軟件測試類課程模塊設有:軟件測試技術、軟件測試與評估等課程。10)人機交互類課程模塊設有:人機交互技術等課程。11)特色項目類課程模塊設有:軟件工程項目案例解析、大型軟件工程項目實訓等課程。12)可擴充類課程模塊設有:手機游戲開發、網絡游戲開發、計算機圖形學、嵌入式Linux網絡及GUI應用開發、嵌入式Linux驅動開發、手持設備軟件開發等課程。
4 軟件工程專業培養方案制定與實施
軟件工程專業培養方案制定是基于軟件與工程的復合,將軟件工程與領域應用相結合,強調計算機科學和數學基礎的同時,將專業課程重點放在軟件新技術和軟件工程新技術方面,通過對實踐類課程工程化改造,增設軟件工程項目實訓環節,開設部分技能課程,試圖使學生的基礎知識、專業技能、創新能力、工程能力和職業素質都能得到全面均衡發展。具體措施如下。
4.1 建立英語為主日語為輔的外語教學體系
根據IT市場的實際需求,軟件工程專業培養方案制定,除正常開設四個學期大學英語外,增開兩個學期標準目語和一個學期專業英語,堅持外語學習四年不斷線,旨在為學生選擇日企或對日外包企業就業提供方便。
4.2 建立工程化實踐教學體系
建立“四年不斷線、三個層次相呼應、兩大措施為保障”的工程化實踐教學體系。“四年不斷線”是指實踐環節四年不斷線,每個學期至少有一個集中性的實踐教學環節,體現“全過程”實踐;“三個層次相呼應”主要是從實踐教學內容設計上考慮的,包括第一層次教學實驗,第二層次課程設計及專業實習,第三層次工程項目實訓與畢業設計;“兩大措施為保障”主要指教學計劃保障和考核制度保障。
4.3 設置專門的實踐課程
針對工程化軟件人才應具備的個人開發能力、團隊開發能力、系統研發能力和設備應用能力,以必修課和選修課形式,開設四類特色化、階梯狀工程實踐學分課程,即程序設計類實踐課程、軟件工程類實踐課程、項目管理類實踐課程和網絡平臺類實踐課程,構成了系統全面的學生實踐能力訓練體系。
4.4 提高專業課程教學中的實驗課時量
除個別側重理論教學的專業課程外,80%以上的專業課程包含實驗或實習環節,實驗或實習成績占總成績的30%以上,一部分實踐性較強的課程是以上機考試和答辯作為最終考試方式。
4.5 開設部分技能課程
在技能課程中,與該領域內具有國際領先水平的企業在課件共享、教師培訓和資源投入等方面展開合作,共同設計、講授和評估課程。鼓勵學生參與企業提供的專業認證考試,或參加國家相應的專業資格考試,對此,學院將計算機網絡、Oracle數據庫、J2EE與中間件等認證課程納入本科教學計劃中,全面體現學生的“多證多能”。
【關鍵詞】Openstudy;開放課程資源;社交學習;整合;國家精品課程
【中圖分類號】G40-057 【文獻標識碼】A 【論文編號】1009―8097(2011)07―0010―05
2001年麻省理工學院推行的“開放課件”運動將開放課程資源推向了一個新的熱潮[1]。十年來,伴隨著互聯網技術的發展和普及,各種開放課程資源項目迭出。哈佛、耶魯等傳統名校相繼推出自己的開放課程,力圖使自己在未來的教育競爭中跟上潮流,更不用說英國開放大學這種以“開放學習”為宗旨的大學了。即便是在民間,也有很多個人或團體受到開放教育理念的鼓舞,憑一己之力創建了許多開放教育資源項目,如近期興起的可汗學院(Khan Academy)[2]、P2P University[3]等。
社交學習[4]則是近年來興起的另一種學習熱潮,作為開放教育資源項目的Openstudy是這個熱潮中出現的一個典型案例,通過剖析Openstudy,也許我們可以從中窺探到開放教育資源運動的一些規律,探尋開放教育資源發展的趨勢。
一 Openstudy簡介
1 Openstudy的創建
Openstudy建立于2007年,是一家社交學習網站,由Ashwin Ram,喬治亞理工學院教授及他以前的學生Preetha Ram(現任埃默里大學的副院長)、首席執行官Chris斯普拉格,共同在硅谷建立的。他們和企業家以及喬治亞理工學院、埃默里學校的學生團隊合作,總部位于佐治亞理工學院ATDC(Advanced Technology Development Center)中心的科技廣場,目前已得到美國國家科學基金會、美國國立衛生研究院和佐治亞州研究聯盟的資助。
Openstudy創立的初衷是因為創辦者們感覺到學生大多是個體孤立的學習,比較辛苦,為解決此問題而開發了Openstudy。Openstudy是一個社交學習網絡,來自世界各地的任何人都可以在平臺上提問以尋求他人的解答,也可以按照自己的興趣和其他人一起組成小組對某個問題進行研究,還可以通過網站學習麻省理工學院的開放教育資源,并與他人進行討論學習。Openstudy致力于建立一個大的學習社區,大家共同學習,而不僅僅局限于個別學校、個別區或某種情境。正如Openstudy宣稱的那樣:讓世界成為你的學習團隊[5]。
Openstudy目前有來自喬治亞理工學院和埃默里學校的學生團隊及類似于Fast company這樣的教育創新孵化公司為其提供運作支持。Openstudy的用戶已經擴展到來自138個國家的1500所學校,而且仍在蓬勃發展。據統計,在Openstudy大約90%學生的問題得到了解決。
2 Openstudy的發展
Openstudy創建之初只是一個為學習者提供自由交流、協作的平臺,隨著其影響的日益增長,以及部分麻省理工開放課件(MIT COW)課程學習者的成功案例,吸引了麻省理工學院(MIT)的關注。隨后Openstudy建立了與MIT OCW項目的正式合作,由MIT提供課程資源,Openstudy提供學習平臺,引導MIT OCW課程的學習者在Openstudy上開展討論、交流等學習活動,MIT甚至提供了一些指導教師,對在Openstudy上學習的學習者進行指導。
MIT OCW外聯部主任史蒂夫•卡森說:“麻省理工學院幾年前開過一個BBS,試圖以此促進開放式課程的討論,但每門課程的討論都不多。所以剛開始和Openstudy合作時只開放了《計算機科學導論》、《單變量微積分》和《中文》三門課程,但反響非常好”。很快就有三千多名學生參與計算機科學的學習小組,微積分小組有2400人,中文組有800人。于是,麻省理工學院和Openstudy又增加了更多學習小組,現在已經有十門課建立了學習小組,幾周內就有幾百學生加入。Openstudy上的學習者發現幾乎每時每刻學習小組中都有人在線。卡森表示這次嘗試為以后開放式課程的發展指明了新的道路:很顯然開放式課程學習者感興趣的不僅僅是學習資料,還有學習時能在一個社區共享和討論彼此的想法[6]。
最近,耶魯大學等其他大學也紛紛展開與Openstudy的合作,共享優質開放教育資源,方便了廣大的學習者,完善了平臺的資源機制。Openstudy還與互聯網上最流行的Web2.0的社交平臺Twitter、Facebook等合作,學習者注冊Twitter、Facebook之后,就可以加入Openstudy,與Openstudy上的人分享自己的生活狀況和思想感悟等,逐步擴展自己的交際面,然后找到興趣一致的同伴,選擇合適的群體共同學習。或者按照自己的興趣點,邀請自己的朋友或同學加入Openstudy進行交互學習。
3 Openstudy用戶的學習方式與支撐平臺
Openstudy用戶的學習主要通過三種途徑完成:直接交流、學習小組、開放課程。
所謂直接交流學習就是用戶登錄后,可以直接在Openstudy網站上提出自己的問題,其他用戶看到問題后可以跟帖形式回復答案,也可發郵件給提問者。這種方式適合于特定問題的學習。
學習小組(Study Pad)是Openstudy的一種協作學習形式,即若干具有相同興趣的學習者組成一個學習小組,共同針對某個問題進行研討。學習小組可由用戶自己創建,然后邀請自己的朋友參與,或者等待其他有興趣的用戶參與。學習小組通常由5~6人組成。這種方式可以發揮同儕教學的作用。
開放課程這種途徑,是指用戶通過Openstudy瀏覽MIT或其他學校提供的開放課程,并參與在Openstudy上組建的課程學習小組,與其他選學了相同課程的學習者進行交流,或者接受指導教師的指導。這種方式適合于系統的課程學習,目前以MIT提供的課程為主。
上述三種學習途徑并存,可以同時使用,即,對于學習者而言,隨時可以根據需要選擇合適的學習方式,從而獲得最佳的學習效果。用戶在Openstudy上的學習流程如圖1:
為了支撐用戶在Openstudy上的各種學習活動,Openstudy不斷研發、完善學習支持平臺,其目標是為學習者提供各種學習交流和相應學習資源。例如為了幫助學習者創建或尋找到合適的學習小組,Openstudy提供了對學習小組按關鍵詞瀏覽和檢索的功能。學習小組中的問題與討論也可通過郵件的方式發送給小組成員,隨時提醒各位組員討論的進展與變化。
Openstudy學習平臺的基本結構如圖2所示(見下頁):
4 Openstudy的典型案例
《計算機科學導論(Intro Computer Science)》學習群體是Openstudy平臺中最大的一個學習群體,目前該學習群體已經發展到一萬多人,該討論群體是基于麻省理工學院的開放教育課程―《計算機科學導論》―發起的討論。
《計算機科學導論》課程的教學對象是很少或沒有編程經驗的學生,它的目的是幫助學習者理解電腦在解決實際問題中所起到的作用,并且幫助所有專業的學生學會編寫程序,克服對計算機使用的恐懼。
當選學這門課程的學習者在Openstudy平臺注冊時,系統會提示該門課程的學習者中影響力較大的學習群組或人――比如計算機科學小組。學習者可以選擇加入或者不加入該小組。一旦加入該學習群體之后就可通過網站來進行課程學習。當學習課程中遇到一些技術或者理論的問題時,學習者可以向該群體里的成員(有老師和學生)求助,求助的形式有以下幾種:
a 直接提出問題,該討論組的其他成員會看到并及時答復。
b 建立討論組,提出相關的問題邀請他人或朋友加入,然后他們看到你的問題,你們可以相互討論并解決疑惑。
c 如果你提出的問題不想公開,想私下解決,也可以給平臺里的任何人寫郵件,請求他給你答復。當然作為群體中的一員,可以隨時回答群成員提出的問題。如果涉及到理科的數字符號,可以使用平臺提供的公式編輯器。此外,平臺還可以記錄你或他人回答問題的過程,類似用一個攝像頭把解決問題的過程記錄下來,這樣會更直觀,并且可與其他人的答案進行對比。通過課程的學習和與不同的學習者進行討論能夠使自己快速學到計算機方面的知識,進而擴展自己的交際面,且不受時間和空間的限制。
該平臺還開發了標簽和搜索技術,通過標簽可以快速查看影響力較大的群體或個人,這樣就能夠明白大家都在討論和學習什么。利用搜索可快速鎖定網站的群體或個人,方便學習者更好的學習。
由于該學習小組人數較多,所以當你提出一個問題時其他成員會馬上告訴你答案。這也正好反映了網站的思想:更多的社交學習體驗注入開放式課程,確保學習者不會孤單。無論來自何處,大家都在你身邊。當你總覺身邊有個智囊團時,學習者會有很強的社會存在感和滿足感。
《計算機科學導論》及其他MIT OCW課程的成功使得Openstudy與MIT加強了合作,也讓其他大學增強了與Openstudy合作的意愿和信心。
二 Openstudy與其他開放教育資源的比較分析
如前所述,開放教育資源運動在世界各地蓬興勃發。21世紀的第一個十年,涌現出許多優秀的開放教育資源項目,表1是其中影響力較大的幾個項目與Openstudy的對比:
以MIT OCW為代表的開放教育資源項目,因其提供的課程資源較優秀,又有著較完整的課程設計,對有興趣學習這些課程的學習者而言不啻為一種福音。但由于缺乏相應的學習指導等學生支持服務,學習者在學習過程中出現的問題和困難較難得到有效解決,這在很大程度上制約了課程的學習效果[7]。
相比MIT等以課程為主的開放教育資源,Openstudy創辦的最初目標是為學習者提供一個相互交流的學習平臺,因此,學習者所學的問題和內容幾乎不受固定框架的限制,而且它還能為學習者提供答疑、討論服務。在Openstudy中無論是直接交流還是學習小組,或者是便捷的學習伙伴的尋找,都是為了給學習者提供及時的學習幫助,讓他們可以在立體化的交流中解決自己的學習問題。
而與MIT OCW的合作則為Openstudy開拓了另一種新的學習模式,在這種學習中,既能發揮MIT OCW的課程資源優勢,又可以發揮Openstudy原有的同儕教學優勢,二者相互補充,達到開放學習較佳的成效。
在這方面,英國開放大學(簡稱“英開”)的Openlearn與Openstudy有些相似,Openlearn既擁有英開優秀的課程資源,也為學習者搭建了交流的平臺,力爭實現課程資源與社交學習的整合[8]。不同的是,Openlearn和Openstudy的出發點和發展路徑有所不同。Openlearn是從更好利用課程資源的角度出發,圍繞已有課程資源來設計學習活動并提供相應的支持平臺,而Openstudy是從純粹的學習者間的交流出發來設計和開發支持平臺,在發展過程中逐步整合開放課程資源。由于出發點和理念上的差異也導致兩個平臺在功能上的差異。盡管如此,也不難看出,整合開放課程資源和社交學習,是提升開放教育資源應用效果的途徑之一。
三 整合:開放教育資源的發展趨勢
總的來說,開放教育資源的關注點有三個:資源(開放存取的教育內容)、平臺(開放的工具和平臺)和協議(開放的標準和協議)[9]。協議作為一種社會活動的規范,主要是起到引導和規范的作用,對于普通的開放教育資源的建設者和使用者,不用過多關注,從建設和使用的角度來看,焦點還在資源和平臺上。
MIT OCW、耶魯和哈佛的開放課堂、可汗學院等開放教育資源項目,大致屬于開放課程資源的建設者,他們主要是創建某種形式的課程資源(如課件、文本、視頻等)并以開放的形式出來。這些課程資源引起了很大的轟動,也為許多有心學習的人提供了學習的機會。但是,這些單向的課程資源,也由于諸如“缺乏完善的指導機制”、“不利于學生自學”等原因而導致資源的“利用率低”、“學習效果不夠好”等現象。
為了更好地使用這些資源,一些機構開發了輔助資源使用的平臺,如英開的Openlearn。Openlearn依托英開豐富的課程資源,搭建了一個開放的學習平臺,并開發了一系列的學習工具,輔助學習者學習,同時在學習的過程中還可以創建出新的學習資源,從而對原有的課程資源形成補充和完善[10]。
但無論是開放課程資源還是Openlearn,都是以課程資源為出發點的,其關注的核心仍然是在資源。
若將視野放寬一些,除了傳統意義上的資源(教材、課件、視頻錄像等),“教師支持”也是一種資源[11]。此外,教學中還存在另一種形式的“智力資源”,即學習中的同伴交流以及對學習過程進行的指導(同儕教學)。
如果說教材、課件等資源是學習的基礎,那么教學指導這種資源則是學習效果和效率的必要條件。
社會建構理論告訴我們,知識和意義是在學習者的交流與交往中建構起來的[12]。學習的發生,離不開交流,無論是與同伴的交流還是與指導者的交流。傳統教育更早就揭示了教學指導對學習的價值。人類社會之所以會出現學校和其他專門的教學活動,就是因為人們發現要想提高學習的成果與效率,必須為學習者提供合適的指導。在下示“主導―主體”的結構圖中,可以清晰地看到,學習者是學習活動的主體,但這種主體在對學習對象的認知過程中會產生困惑,或者缺乏更有效率的認知策略,因此需要有教師對學習者的認知過程進行指導,教師在這里甚至應該發揮主導的作用,這樣才能幫助學習者取得學習的最大成效[13]。
如前所述,Openlearn和Openstudy這兩個出發點不同的項目,卻在走向同一個目標:實現課程資源和社交學習的整合,實現優勢互補,這是開放教育資源建設與應用的一個發展趨勢。
對于我國的精品課程建設,Openstudy的啟示尤其值得關注。目前我國的精品課程較多地停留在課程資源的提供上,而較少關注對學習者的指導[14]。誠然,依靠精品課程建設團隊來為海量的學習者提供學習指導并不現實,但精品課程的建設可否參考Openstudy與MIT的合作案例,創建一個合理的機制,為學習者提供開放的、自由的交流平臺,引導他們相互學習,從而提升精品課程的學習效果呢?
其實,類似Openstudy理念的項目在國內早有實踐。早在2001年,國內就出現了一個名為“優異研究院”的研究性學習網站。這個網站允許來自全國各地不同的學生根據興趣愛好組成一個個研究小組,同時允許各地的教師和成人申請成為研究指導教師,通過網絡讓研究小組和指導教師自愿結對形成一個個研究團隊開展研究性學習。這個在今天看來依然具有較先進理念的嘗試不到兩年就宣告失敗,原因是缺乏資金的支撐,沒人愿意投錢給這種看不到經濟利益的項目,而社會又缺乏足夠的公益基金,這種局面一直延續至今。
對比“優異研究院”的失敗與Openstudy的成功,可以說并沒有理念上的本質差異,也不是技術手段的障礙,制約我國開放教育資源建設的一個重要原因在社會。因為體制的緣故,更因為市民階層不發達,我國缺乏各種公益基金和非營利性組織,單純依靠政府投資是不夠的。據悉目前國家正在籌建開放大學,這對我國的開放教育是一個利好消息。但是,開放教育不能僅靠政府的推動,更多地需要依靠民間力量。而在國內相對民間力量薄弱的當下,不妨將目光投向國外,考慮從國外的基金申請資助來建設我們自己的開放教育資源項目。這種可能性不是沒有,事實上,國外有很多基金在到處尋找有價值的項目。這里說的價值,更多的是指社會價值。開放教育的項目,通常都具有較高的社會價值,因此,獲取國外相關基金的支持完全有可能,這也許是國內開放教育資源運動獲取支持的另一種方式。
四 結語
開放教育資源作為一種平民化運動的反映在未來相當長一段時間內仍將得到持續發展,國內也是如此。未來我國開放教育資源發展可考慮兩點:1、整合學習資源與學習指導―這是Openstudy給我們最大的啟示;2、合作―開放教育資源的宗旨就是沖破一切束縛,面向世界上任何需要的人,提供教育服務,因此辦開放教育,也應該突破慣有的思維。不僅要突破原有對“資源”的認識,努力整合各種可為教育服務的資源,也應拓寬眼界,尋找一切可能的支持,在世界大同的環境下實現教育的大同世界。
致謝:本文關于Openstudy的部分介紹,來自于對Openstudy創始人之一的Preetha Ram女士的在線訪談,學習流程圖和平臺結構圖亦經Preetha Ram女士修訂。關于“優異研究院”的部分介紹,來自于對“優異研究院”創始人之一的柳棟先生的在線訪談。特此致謝。
參考文獻
[1] 杜文超,何秋琳,江麗君. 開啟世界課程資源共享的先河-MIT OCW項目評析[J].現代教育技術, 2011, 21,(04):14-18.
[2] 可汗學院, 相關介紹參看《百度知道》中的“可汗學院”[OL].
[4] Gergely Csibra, György Gergely. Social learning and social cognition: The case for pedagogy [M]. Y. Munakata & M. H. Johnson (Eds.), Processes of Change in Brain and Cognitive Development. Attention and Performance, XXI. (pp. 249-274). Oxford: Oxford University Press, 2006.
[5] Openstudy.About Us[ DB/OL].省略/about-us>
[6] Audrey Watters. OpenStudy Teams Up With MIT OpenCourseWare to Help OCW Users Study Together[DB/OL].
[7] 武麗志,丁新. 學生支持服務:大衛•西沃特的理論與實踐[J]. 中國遠程教育, 2008, (1):25-29.
[8] 佘艷云,詹春青.開放學習的典范-英國開放大學OpenLearn評析[J]. 現代教育技術, 2011,21 (03):10-14.
[9] 焦建利,賈義敏. 國際開放教育資源典型案例_一個研究計劃[J]. 現代教育技術, 2011, 21(01):9-13.
[10] 羅琳霞,丁新. 英國開放大學開放學習項目評述[J]. 開放教育研究, 2007, (8):109-112.
[11] 弗萊德•穆德.利用開放教育資源推進終身學習[J]. 開放教育研究, 2007, (8):32-37.
[12] 徐芳,孫曉青. 基于社會建構主義理論的網絡異步交互活動設計[J]. 遠程教育, 2011,( 2):68-72.
[13] 王策三,裴娣娜,叢立新. 教學認識論[M]. 北京:北京師范大學出版社, 2004:113-119.
[14] 楊玉芹,鐘洪蕊. 國家精品課程網上資源教學設計與開發的內容分析研究[J]. 中國遠程教育, 2008, (12):52-57.
Integration of Open Learning Resources and Social Learning: the Revelation of Openstudy
WANG Xiao-dongZHANG Li-chun
(Future Education Research Center, South China Normal University, Guangzhou,Guangdong 510631,China)
Abstract: Introduced the history and the development of Openstudy, discussed a typical case in Openstudy, showed the figure of the learning flow and the structure of the platform of Openstudy. The Comparison among Openstudy and few other open learning resources was listed, and found that the integration of resources and social learning is one of the trends of the development of Open learning resources. The revelation of Openstudy for China also be mentioned.
關鍵詞:系統建模與仿真;Petri網;課程教學方法
作者簡介:劉飛(1976-),男,山東平度人,哈爾濱工業大學控制與仿真中心,副教授,博士生導師。(黑龍江 哈爾濱 150080)
基金項目:本文系國家自然科學基金項目(項目編號:61273226)的研究成果。
中圖分類號:G643.2 文獻標識碼:A 文章編號:1007-0079(2014)05-0099-02
Petri網是由德國科學家C. A. Petri于1962年在其博士學位論文“自動機通信”[1]中首次提出的,后來,Petri網為眾多計算機科學家所認識和重視,成為計算機、自動化等學界的熱門研究課題。Petri網已經廣泛應用于計算機網絡、通信協議、軟件工程、柔性制造系統、離散事件動態系統、生物系統等眾多領域。[2,3]目前,許多高校都開設了Petri網相關課程,但是他們通常只關注Petri網的理論和應用。與之不同的是,本課程“基于Petri網的系統建模與仿真”不僅講授Petri網的基本理論和方法,而且重點講授如何利用Petri網實現系統建模與仿真,目的是讓研究生學習和掌握一種可視化的數學建模語言和方法,培養學生良好的思維習慣和邏輯能力。本文將對基于Petri網的系統建模與仿真課程的教學從教學目的、內容、方法等多個方面進行探討和研究。
一、基于Petri網的系統建模與仿真課程的教學目的
Petri網是一種重要的離散事件建模方法,已廣泛應用于各個領域的建模與仿真中,因此,筆者在教授本課程時,要教給學生一種強大的可視化建模與仿真方法,為學生開展建模與仿真研究奠定堅實的基礎。
第一,通過課程學習讓學生全面了解該領域研究現狀、前沿、采用的主流研究方法,以及研究資料收集的一般途徑和整理研究資料的常用工具。
第二,通過課堂講授、文獻講解培養學生掌握Petri網的理論和方法;學習并掌握Petri網的仿真算法設計和實現;最終掌握基于Petri網的系統建模、仿真和分析方法;讓學生熟悉這些方法的主要應用過程和應用范圍,提高研究生對科學研究工作的系統認知。
第三,結合實驗利用各種實例使學生能夠在各自的領域內實際運用Petri網。Petri網是控制、計算機等多個學科中的重要工具,在多個領域具有重要的應用價值,掌握其應用能夠為學生學習和今后工作打下基礎。
二、教學內容的創新
本課程主要是講授如何利用Petri網來實現系統的建模與仿真。由于教學目的與其它已有Petri網課程的教學目的不同,因此需要對教學內容進行創新。針對上述教學目的,本課程的講授主要分為以下兩個部分。
第一部分講授Petri網的基本知識,包括概念、結構屬性、行為屬性和分析方法等,從而使學生首先了解和掌握Petri網的基本理論,為下一部分的講授和Petri網的實際應用打下基礎。
第二部分主要從系統建模與仿真的角度來講授Petri網。首先講授包含Petri網的各種擴展的建模框架,然后對隨機、連續、有色等各種不同類型的Petri網分別進行講授。講授過程中重點關注如何利用各種不同類型的Petri網來建模不同應用領域的實際系統,如何設計不同的仿真算法來實現系統的仿真和分析等,最終使學生掌握基于Petri網的系統建模、仿真和分析方法。本課程的主要內容可以概括為圖1。
本課程由哈爾濱工業大學控制與仿真中心開設,該課程的講授將密切聯系實際的工程項目,因此需要學生進行大量的計算機建模與仿真實驗。
三、提高教學效果的措施
結合本課程的理論與工程密切結合的特點,筆者建議從以下幾個方面開展教學活動。
第一,案例式課堂教學:根據本課程的具體教學內容,盡量多設計一些典型的案例,利用案例進行課堂講授或者進行小組課堂討論。例如,在講授隨機Petri網時,可以設計排隊系統、Lotka-Voltera系統等多個案例來講授隨機Petri網的基本概念以及如何設計隨機仿真算法。這樣學生就會容易理解為什么會應用隨機Petri網,如何設計和實現一個隨機仿真算法等問題。
第二,研討式文獻閱讀:針對課程的相關內容,給學生提供與之密切相關的典型學術論文,要求學生分組閱讀和討論,并遞交簡短研究報告,培養學生的科學研究能力。例如,針對文獻,[3]讓學生閱讀并理解如何使用不同類型的Petri網來建模與分析同一個生物系統,從而使學生加深理解不同類型Petri網的建模能力。
第三,工具軟件應用:Petri網是一種圖形化建模軟件,離不開工具的支持。因此,從課程的開始,就要求學生學習自己開發的工具軟件Snoopy[3]的應用。利用Snoopy可以建立和分析該課程中所有類型的Petri網。不僅如此,與Snoopy配套的相關軟件工具還可以對Petri網從行為屬性、結構屬性、模型檢查等多個方面提供自動化的分析功能。針對課堂的每個知識點,要求學生能夠自己應用工具軟件去建立和分析Petri網模型。這不僅鍛煉了學生使用工具軟件的能力,更重要的是加深了學生對知識點的理解。
第四,計算機實驗:本課程需要進行多個計算機實驗,如連續仿真算法設計與實現、隨機仿真算法設計與實現、利用Petri網建立相關系統的概念模型等。針對每個實驗,需要為學生提供足夠的上機時間,讓學生去自己編程實現相關的仿真算法或者建立相關的模型進行仿真和分析等。不僅安排學生在實驗室統一進行計算機實驗,而且通過將實驗進行分割要求學生平時自己安排時間完成相應的模塊。此外,對于每個實驗,都讓學生分組完成,但是同一小組的學生需要分工明確。
第五,結合科研項目教學:目前,Petri網已經大量應用于現在正在進行的科研項目中,如復雜仿真系統概念建模與分析、仿真劇情校核與分析等。為了讓學生深刻理解理論與實踐的結合,有必要從科研項目中提取相關的研究內容,讓學生去討論和實踐。例如,針對該課程的需要,對相關科研項目中的模型進行模塊劃分,然后讓學生充分了解課題的背景,完成相應的模塊。最后還要求學生對此做出總結,并匯報各自的心得。
第六,論文指導:讓學生閱讀典型的學術論文,引導他們提出研究問題,然后書寫科研論文,從而培養他們科學研究的習慣和能力,這也可以作為課程的考核結果。如果有必要,可以鼓勵學生發表與課程學習相關的學術論文。
第七,積極指導學生查詢Petri網相關的期刊和會議等,擴展學生的知識面,引導他們早日進入科學研究的殿堂。
四、理論和實踐相結合的考核方式
考慮到本課程理論與實踐密切結合的特點,采用以下考核方式:
課程考試成績:開卷考試,該成績占課程總成績的40%。
課堂討論成績:根據學生在課堂參與討論的具體情況給定成績,評分標準為積極參與次數、表達能力、分析能力等方面,該成績占總成績的20%。
Petri網課程論文成績:根據學生提交的Petri網課程論文的原創性、文獻綜述的全面性、撰寫論文的規范性、研究內容的系統性情況給定成績,該成績占總成績的20%。
實驗成績:本課程是一門工程實踐課程,需要進行多個計算機實驗,因此實驗成績在最終考核中應該占有一席之地,如20%。
五、面向應用自編講義
“基于Petri網的系統建模與仿真”是航天學院控制科學與工程學科的一門研究生課程,是碩士階段研究生重要的理論與應用密切結合的課程,在培養高素質應用型、綜合型人才方面起著重要的作用。但是目前,還沒有任何一本教材能夠完全覆蓋所有的教學內容,因此筆者結合相關的文獻編寫了自己的講義。
教材不僅分析了Petri網課程的主要知識點,還把知識傳授和能力培養有機地結合起來,由從前的“知識型”講授模式轉向“知識能力型”,從而培養學生發現問題、解決問題的能力,提高學生的學習興趣和創新思維,使學生能扎實地掌握和靈活運用所學知識。
教材是以服務教學為目的,在整體上形成知識網絡或知識鏈,一方面保持自身的系統性,另一方面與直接關聯的實際操作內容上相銜接,結合實驗利用各種實例使學生能夠在各自的領域內實際運用Petri網,使教材在內容組織上形成有機整體,并具有強大的可操作性。其中,Petri網的基本理論部分參考文獻;[2,4-6]隨機Petri網部分參考文獻;[7-9]連續Petri網部分參考;[6,9]有色Petri網部分參考;[9,10]針對每種網類還加入如何利用Petri網實現系統建模與仿真。
六、德國的Petri網課程教學
Petri網為德國人所提出,并且德國在很多高校都開設了該門課程。根據筆者在德國的學習和工作經歷,認識到德國大學的Petri網教學主要存在以下幾個特點:課堂上老師與學生充分互動,使得學生通常能夠在課堂上深入透徹地掌握所講授的內容;充分利用Petri網工具來輔助課堂教學,認真細致地講解如何用Petri網建立和分析每一個實例;將學生進行分組,合作完成課程作業和實踐項目,并在課堂上進行討論,分享心得。
這些好的教學手段都是應該借鑒的。在教學過程中,筆者將充分利用上述這些寶貴的經驗來提高教學效果。
七、總結
本文對研究生課程“基于Petri網的系統建模與仿真”的教學進行了一些探討,希望與同行進行交流或對同行提供一定的參考。由于該門課程具有較強工程背景,因此在講授時不能完全采用傳統的教學習慣,必須充分考慮理論與實踐的密切結合。在以后的教學工作中,筆者還要根據學生的反應繼續探索適合的教學手段和方法,為培養具有創新能力和研究能力的學生做出貢獻。
參考文獻:
[1]C.A.Petri.Kommunikation mit Automaten [D].Institut fu?r instrumentelle Mathematik,Bonn,1962.
[2]T.Murata.Petri Nets:Properties,Analysis and Applications[J].Proc.of the IEEE,1989,77(4):541-580.
[3]Chen Ming,Hofest? dt, Ralf (Eds.).Approaches in Integrative Bioinformatics-Towards Virtual Cell[M].Berlin:Springer,2013.
[4]M.Heiner,M.Herajy,F.Liu,等.Snoopy - a unifying Petri net tool [A].Proc.of PETRI NETS 2012,LNCS 7347[C].Berlin:Springer,2012:398–407.
[5]吳哲輝.Petri網導論[M].北京:機械工業出版社,2006.
[6]袁崇義.Petri網原理與應用[M].北京:電子工業出版社,2005.
[7]M.Heiner,D.Gilbert,R.Donaldson.Petri Nets for Systems and Synthetic Biology [A].LNCS 5016[C].Berlin:Springer,2008:215-264.
[8]林闖.隨機Petri Nets和系統性能評價[M].北京:清華大學出版社,2005.