前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇軟件開發基礎知識范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。
關鍵詞:高職;軟件開發課程;虛擬實訓;實踐教學
中圖分類號:G712 文獻標識碼:A 文章編號:1007-9599 (2012) 11-0000-02
一、引言
為培養應用型和技能型軟件開發人才,在高職軟件技術專業中實施三階段技能遞進培養模式,該模式將技能培訓分為基本技能積累、專業核心能力培養和綜合技能培訓三階段。基本技能積累階段包含培養學生基本操作技能和編程技能的課程,如程序設計基礎等課程;專業核心能力培養階段包含培養更高一級專業能力的課程,如桌面應用程序開發、web應用程序開發等課程;綜合技能培訓階段是在前兩個階段的基礎上,開展以提高職業行動能力為目標的綜合技術應用訓練。
學生在教學階段遞進過程中需要通過大量實踐掌握軟件開發技能,因此每一門專業核心課程都設置相應的實訓課程,這些課程與綜合技術應用訓練都是以軟件開發項目為載體,通過實訓,使學生提高實踐能力、積累實際軟件開發經驗。為實現實踐教學過程與軟件開發過程的對接,必須采用相適應的教學模式以及提供合適的軟件開發實訓環境。由于培養費用、實踐場地的限制,讓每個學生都走上實際工作崗位參加真實環境中的項目開發存在很大的困難。在軟件開發實訓課程中采用基于虛擬實訓的實踐教學模式可以很好的解決上述問題,虛擬實訓作為一種打破時間、空間限制的實訓方式在節約教學投資、優化教學情境和實現資源共享等方面均起到十分重要的作用。
二、構建基于虛擬實訓的實踐教學模式
(一)構建思路
根據對軟件開發人員崗位需求的調研,軟件產品開發工作過程包括項目立項、需求分析、設計、編碼、測試等一系列工作。工作任務對工作和技術的要求為熟悉軟件開發流程,掌握相關開發技術,具備良好的代碼編碼習慣及技術文檔編寫能力,有較強自學能力、分析和獨立解決問題的能力、團隊合作精神和溝通能力。
為達到學習過程與工作過程的一致性,引入虛擬公司形式,采用虛擬環境與真實項目相結合、虛擬員工與真實管理相結合的方式,構建基于虛擬實訓的實踐教學模式。在學校的實訓室中,模擬公司的工作環境,以真實項目為載體,按照公司的軟件項目開發流程完成項目開發,縮短學生所學知識和應用的距離。通過教師學生員工化,模擬公司開發部的組織結構,教師擔任項目經理的角色,完成崗位相應的工作,包括協調人員配置、制定項目解決方案、監控項目執行、提供技術指導、組織項目評審。學生擔任開發部普通員工的角色,在軟件開發員崗位上完成項目開發各階段任務,在項目實踐過程中熟悉規范的軟件開發流程,掌握高效的軟件項目開發方法和技能。
(二)內容結構
基于軟件開發崗位工作任務的要求,構建具有“工學結合、校企結合、虛實結合”特點的虛擬實訓教學模式。該模式主要由四部分組成:知識培訓、項目實施、項目管理和項目評審。各組成部分涉及三大類角色:項目經理(教師)、項目組長(學生)、項目成員(學生),項目經理負責完成知識培訓和項目管理,項目組長和項目成員負責項目實施工作,項目經理、項目組長和項目成員共同完成項目評審。
知識培訓部分:包括專業基礎知識、實訓項目涉及的關鍵技術與知識以及項目應用領域知識的培訓。專業基礎知識培訓包含軟件工程基本知識、特定語言的代碼規范、團隊開發規范、技術文檔編寫、軟件測試用例的執行和記錄等項目開發支撐知識。關鍵技術與知識的培訓由項目經理根據課程目標和項目特點展開,包括關鍵技術和常用架構的學習、企業最新技術和開發工具的引入。領域知識培訓是指項目應用領域背景知識的介紹,例如財務管理系統的開發背景涉及金融財會的相關知識。
項目實施部分:項目實施是虛擬實訓教學的重要組成部分,包括實訓任務分解和項目實現。項目組接受來自項目經理的實訓任務,由項目組長進行任務分解并分配到各項目成員。項目成員按照企業軟件開發流程執行項目實施各階段的典型工作任務。
項目管理部分:項目管理包括進度控制和過程檢查兩部分,由項目經理實施以保證實訓項目按實訓計劃、實訓大綱的要求如期完成。項目經理指導項目組長制定項目開發計劃,根據項目計劃監督各組的工作進度。過程檢查部分包括設定過程檢查點以及階段通過標準,項目經理按照通過標準審查階段成果,確保項目完成質量。
項目評審部分:項目評審部分由項目演示交流和項目考核兩部分組成。在項目演示交流環節,各項目組介紹開發過程、演示項目運行結果、進行項目答辯。在項目考核方面,采用多元化的考核體系,注重對學生實訓過程的評價,在項目經理考核的基礎之上,參照項目組長評價,得出最終評價結果。
(三)應用過程
關鍵詞:軟件工程教學;案例教學法;問題式教學模式;層次化實踐教學
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2014)02-0042-03
軟件工程是計算機科學與技術專業開設的一門核心課程,學生掌握軟件開發過程和主流的軟件開發方法是軟件工程課程教學的基本目標。受教學資源、既定培養方案、學生個人條件等諸多因素的影響,軟件工程課程教學中還存在一系列問題。我們根據軟件工程課程特點,在近幾年的教學實踐中,對軟件工程課程的教學內容、教學方法、實踐教學方式等進行了逐步調整和改進,解決了軟件工程課程教學中存在的部分問題。
一、軟件工程教學中的問題
軟件工程是一門伴隨著軟件危機的出現而發展起來的、集工程性和應用實踐性為一體的課程。由于軟件規模不斷擴大、軟件環境更迭頻繁、軟件危機的表現形式多樣,致使軟件開發的新方法、新技術層出不窮,軟件工程課程的內容處于一種不斷改進和發展的狀態。但目前軟件工程教材內容相對滯后,且多以軟件開發理論和設計原則的形式呈現,軟件開發案例等應用性內容偏少。在教學過程中,受教材內容影響,教師習慣從軟件開發理論、軟件設計原則出發安排教學內容,忽視軟件開發案例在教學中的支撐作用,教學內容與實際應用脫節。軟件開發過程包括軟件體系結構設計、數據庫系統設計、應用程序設計、軟件系統實施等多個環節,所以軟件工程教學內容還涉及除軟件工程之外的其他多門軟件類課程。受教學資源和課程計劃學時等因素的制約,軟件工程的教學內容往往缺乏相關軟件類課程之間的實質性聯系,且實踐教學內容和時間相對不足。加之學生少有軟件項目開發的機會和經歷,致使學生感覺軟件工程課程內容難以理解、不夠實用,缺乏整體感和系統性。針對上述問題,我們將新的教學內容注入軟件工程課程;通過案例教學強化軟件工程課程的實用性特色;以層次化方式組織實踐教學,使學生在軟件開發基本技能、綜合分析問題能力、軟件系統開發經歷、團隊協作意識培養等方面得到系統訓練。
二、軟件工程教學的改革思路
1.調整教學內容、注入教學案例。在教學內容方面,對較陳舊的教材內容進行精簡,并增加與現代軟件開發方法和技術緊密相關的教學內容。針對軟件工程教材內容普遍重視理論、實用案例不足的狀況,將案例教學法[1]引入課堂教學中,通過案例分析對抽象內容進行詮釋,幫助學生理解軟件開發理論和原則。
2.貫通學科知識、突出綜合特色。軟件工程課程內容覆蓋面較寬,與數據庫系統原理、程序設計語言、算法設計與分析等軟件類課程內容交織,為了實現相關課程之間內容的貫通、拓展學生的學科知識、提高學生綜合分析和解決問題的能力,將專題學習(Project-Based Learning)[2]、任務學習(Task-Based Learning)[3]和基于問題的學習(Problem-Based Learning)[4]等教學方法不同程度的引入課程教學中,突出軟件工程課程的綜合性、實踐性特色。
3.拓展實踐環節、培養工程能力。軟件工程實踐教學直接影響學生的軟件開發能力,學生軟件開發能力的提高是一個循序漸進的過程。在常規的軟件工程課程培養方案中,主要安排了基礎實驗內容,對學生的工程化意識和綜合實踐能力的培養重視不夠。采取分層次、分步驟安排實踐教學內容,由基礎實驗逐步過渡到綜合實踐的教學方式,可以將軟件工程學科概念和學生的軟件項目研發能力逐步整合在一起,使學生在軟件工程實踐過程中逐步掌握學科知識、提高軟件項目的分析設計和實施能力。
三、軟件工程教學改革的實踐
1.課堂教學中的案例教學。案例教學可以強化軟件工程理論與實際應用問題的結合。通過典型案例分析,可以對抽象的軟件工程原理和準則進行直觀詮釋,幫助學生理解課程內容。
教學案例通常不是孤立的個案,一組精心設計的教學案例可以幫助學生理解基礎知識、掌握基本技能、提高運用知識的能力。以軟件需求建模為例,在講述軟件系統行為模型的描述工具狀態轉換圖時,使用幾個不同的教學案例,由淺入深地分析狀態轉換圖的作用、使用規則以及如何描述系統的行為三個方面的問題。首先,以學生比較熟悉的操作系統中的一個進程為例,通過狀態轉換圖形象的描述了進程的就緒、運行、等待和完成四個狀態及其轉換關系,著重說明狀態轉換圖的作用。第二個案例是機票預訂系統的行為模型創建,介紹狀態轉換圖的畫法規則。機票預訂系統行為涵蓋機票查詢、機票預訂、訂單支付等幾個分支,比較完整地展現了狀態轉換圖中的圖符及使用規則。實際的軟件項目通常比較復雜,軟件需求建模要考慮多種條件、各種異常狀態,所以將復印機控制程序作為第三個案例,其狀態轉換圖包括復印機正常工作流程、中斷處理流程(比如復印過程中復印紙用完等情況)、硬件故障處理流程等幾種系統行為。
2.問題式教學模式的運用。軟件開發過程是一個綜合性的系統工程。軟件工程課程內容與多門先修的軟件課程密切相關,軟件開發項目是一個多學科貫通的綜合實踐問題。對于軟件工程課程,從教學內容到教學形式都應該倡導調動學生的主動學習情緒,即學生能夠基于自己的思考和實踐解決問題。我們在軟件工程教學改革實踐中,提出了一種主動式、知識探究型的教學模式——問題式教學模式。問題式教學活動中,教師依據課程內容和學生的知識結構、設計具備一定挑戰空間的非良構問題;將學生組織成學習團隊;學生通過分析、解決緊密聯系實際的非良構問題來探究問題背后隱含的概念和原理、拓展學科知識、提高實踐能力、培養團隊協作意識。[5]問題式教學方法注重教學內容的實用性,在一定程度上激發了學生的學習主動性、強化了學生的軟件開發實踐能力。
3.實踐教學環節的調整。從學生運用軟件工程基礎知識的能力、系統化的個人職業技能訓練、軟件項目的開發能力和團隊協作意識四個層面出發,將軟件工程實踐教學劃分為基礎實驗和綜合實踐兩個層次。
基礎實驗培養學生對軟件生命周期組成階段的理解,重點訓練學生對需求分析、軟件設計和軟件測試階段相應開發技能和工具的掌握。基礎實驗的內容偏重于設計型,實驗形式又具有驗證型的特征。基礎實驗是課堂教學中案例教學法的延伸和應用,教師在課堂上通過教學案例闡述如何運用軟件工程理論、技能和工具;學生在實驗過程中,模擬解決與教學案例類似的軟件問題,以實踐的方式體會和鞏固軟件工程知識。基礎實驗強調對每個學生進行軟件工程基本技能的完整訓練,學生通過實驗獲得軟件開發過程的認知、掌握軟件工程的理論和方法,提高個人的軟件項目能力。
軟件工程綜合實踐側重對學生軟件項目開發能力和團隊協作意識的培養,是一個系統化的工程實踐活動,實踐內容涵蓋軟件項目開發的完整過程。學生可以通過綜合實踐環節獲得較真實的軟件項目開發經驗。
在綜合實踐環節,教師要為學生提供兼具普適性和創新性特色的綜合實踐題目。普適性意味著實踐題目要具備明確的可操作性,學生能夠通過綜合實踐活動體驗軟件項目開發的基本規范、經歷軟件開發的完整過程、鞏固軟件工程理論知識和技能。所以綜合實踐題目應該與現實中的實際需求密切相關,這類需求明確具體,學生的感性認識深刻。考慮到學生組織成不同的軟件開發團隊、每個團隊要完成各自獨立的軟件項目開發工作,實踐題目還應該具備在知識需求上基本相同、但應用背景不同的特點,使學生容易借鑒類似的軟件開發案例、從中汲取直觀具體的軟件設計和實現經驗。題目的創新性特色體現在軟件開發技能方面引導學生溫故知新、舉一反三;即對滿足普適性要求的實踐題目,進行適當的需求擴展和功能延伸,要適當保持問題的非良構性、保留一定的不確定性和疑點,留給學生思考空間。在綜合實踐題目的創新性層面上,學生需要在問題的牽引下去適當學習專業以外的知識、搜集提煉信息、補充項目本身缺失的條件,最終制定可行的軟件項目實現方案并解決軟件實施問題。綜合實踐題目的創新性特點,可以在一定程度上激發學生的創造性思維潛力、擴展學生的專業視野。
軟件工程綜合實踐環節是學生對軟件開發過程的模擬體驗,現代軟件開發工作多以團隊協作方式進行。所以對學生而言,需要組建軟件項目開發團隊并進行成員角色分配。組建項目團隊時要考慮學生的認知優勢、學習習慣、學習興趣、動手能力、邏輯思維能力,性格特點等因素,引導學生按照既發揮個人特長、又優勢互補的原則進行團隊組建和工作分工。
四、結語
將精心設計的典型教學案例注入軟件工程教學內容中,可以有效改善軟件工程教材內容偏重軟件開發理論和軟件設計原則、弱化軟件開發實踐的狀況。知識探究型為主要特點的問題式教學模式可以激發學生的學習主動性、拓展學生的學科知識、提高學生綜合分析和解決問題的能力。基礎實驗與綜合實踐相結合的層次化實踐教學方式,將學生的軟件工程基本技能和軟件項目研發能力整合在一起,使學生在軟件項目的分析設計和實施能力的訓練、團隊協作意識的培養方面獲得完整體驗。
參考文獻:
[1]Hay·P,Katsikitis·M.The expert in problem-based and case-based learning:necessary or not?[J].Medical Education,2001,35(1):25-30.
[2]Robert Michael Capraro,Scott?W.Slough.Project-Based Learning:An Integrated Science,Technology,Engineering,and Mathematics(STEM)Approach[M].Sense Publishers,2009.
[3]B·R,Simone Grin Verlag.New Media and Task-Based Teaching/Task-Based Learning:Web Quests[M].Grin Verlag,2010
[4]Boud·D& Feletti,G.I.(eds.).The Challenge of Problem-Based Learning,2nd Ed[M].London:Kogan Page Ltd.,1997.
[5]盧瑩,林蔭.問題式教學模式研究[J].計算機教育,2011,(14):98-101.
[論文關鍵詞] 企業信息化 信息管理與信息系統 企業資源計劃 ERP沙盤
[論文摘 要] 本文通過分析企事業單位信息化建設人才的需求,探討高校信息管理與信息系統專業人才職業定位,研究信息管理專業人才知識體系構成,提出信息管理專業人才培養新模式,為信息管理與信息系統專業人才走出就業瓶頸提供可參考的人才培養新思路。
1現狀分析
高校的專業設置受到社會分工的直接影響。一般說來,高校的專業設置主要以滿足社會已有專業分工為原則,使大學生一畢業就能很好地適應專業工作崗位。
然而,信息管理與信息系統(以下簡稱信息管理)專業的設置卻有些特殊。中國信息技術發展與應用起步較晚,遠遠落后于發達國家。為了盡快與發達國家接軌,加快國家信息化建設的步伐,在社會專業崗位并不清晰的情況下,中國高校紛紛開設信息管理專業。
從20世紀80年代開始,信息管理專業從無到有,發展非常快,至今已遍布全國各大高校。信息管理專業的職業定位從建立至今始終處于探索狀態,雖然國內外學者一直在研究探索信息管理專業的教學體系、職業定位,但是大多沒有系統化地從信息管理專業社會職業定位的角度來反思學生的知識構成與專業技能,使得教學體系的改革始終與學生就業脫離,沒有從根本上實現信息管理專業學生專業培養與將來就業的直接接軌。
從理念上說,信息管理專業是一個管理學與計算機科學交叉的專業,所學的課程一般包括管理學相關課程、計算機相關課程和信息管理相關課程等。學生的就業方向可以是管理、計算機和信息管理,側重在信息管理。
但從實際就業情況來看,信息管理專業畢業生應聘工作崗位時,往往會出現這樣的情況:管理技能不如管理專業的學生,計算機技能學生不如計算機專業的。人才市場上提供的信息管理崗位需求比較少,且多數是要求從事電子化辦公秘書工作,沒有多少專業技能可言,這樣的崗位各專業的本科生都可以勝任。由此反映出現行的信息管理專業在職場上沒有體現其特有的、有別于其他專業的自身職業素質和技能,這是影響信息管理專業實現可持續發展的關鍵問題。
2信息管理專業人才職業定位分析
教育部在《普通高等學校本科專業目錄和專業介紹》中對信息管理與信息系統專業的業務培養目標做了明確規定:本專業培養具有現代管理學理論基礎、計算機科學技術知識能力,掌握系統思想、信息系統分析和設計方法以及信息管理等方面的知識與能力,能在國家各級管理部門、工商企業、金融機構、科研單位等從事信息管理及信息系統分析、設計、實施管理和評價等方面工作的高級專門人才。
根據上述培養目標來檢索具體的社會崗位需求,發現國家企事業單位或部門在招聘的時候很少提供信息管理專業崗位需求,即使提到也是等同于計算機相關專業要求。
國家企事業單位信息化建設已經進入高速發展軌道,信息化戰略地位、信息化推進組織體系、 信息化政策規劃體系、信息化基礎設施等已初步建立。信息化建設已經成為衡量企事業單位核心競爭力的重要指標,我國現階段正處于信息化建設期,毫無疑問,社會需要信息化建設人才。
以企業信息化建設為例,其信息化人才需求包括技術領域、制造領域、管理領域等方面信息化建設人才,同時需要計算機硬件系統購置與維護、軟件系統開發與維護、網絡環境維護、信息化建設規劃等方面人才。
技術領域信息化建設主要要求計算機輔助設計專業;制造領域信息化建設主要要求計算機輔助制造專業或自動化專業;管理領域信息化建設一般要求計算機及相關專業。
很明顯,信息管理專業崗位應該在管理領域(覆蓋政府機關、工商企事業單位等各行業管理領域)信息化建設,重點要放在信息化建設規劃,管理信息系統分析、設計與開發,信息系統軟件引進、實施與維護上。
從我國信息化建設現狀來看,企業內部在信息化建設方面的崗位需求沒有進行專業細分,它將管理信息系統軟件的分析、設計、開發、引進、實施、維護和信息管理等工作需求統歸為做軟件。因此,企業招聘應屆畢業生的入門要求就是能夠編程,包括企業內部覆蓋銷各職能部門的信息系統軟件,也包括企業各層次網站系統開發。而政府機關、事業單位則以網站系統開發和工作流管理為主。
也就是說,信息管理專業人才進入企事業單位的基礎技能是軟件開發,這一點與計算機軟件專業畢業生就業要求相近。但在開發過程中,信息管理專業人才優勢逐漸顯露出來。即在系統需求分析過程中,信息管理專業學生更容易理解管理者的要求,對管理理論思想方法的掌握使其能夠在理解現行管理系統的同時提出更高的管理信息化建設思路。
根據上述分析,信息管理專業人才要在信息化建設中找到合適崗位,軟件開發技能培養是未來就業的敲門磚,而管理理論思想和方法的掌握則是其未來成為企業CIO的奠基石。
3信息管理專業人才知識體系構成
信息管理與信息系統專業培養的專業技術人才既不是計算機軟件開發人員,也不是管理人才,它不同于計算機科學與技術專業,也有別于工商管理等管理專業。它的專業知識體系是二者的融合,與二者有很多交叉,又有很大差別。在基礎理論上它強調管理學基礎,在應用技能上則強調信息系統軟件開發能力,編程能力將是其走入社會成功就業的基本要求。
應對現行的社會需求,信息管理專業人才知識與能力的構成至少要包含下述幾個方面:
(1) 經濟學、管理學等方面理論知識
要求信息管理專業學生學習掌握經濟學的基本理論與分析方法,掌握企業管理相關理論知識,知識面涉及企業計劃、采購、生產、財務、銷售、人力資源等多方面管理理論知識。
(2) 計算機科學與技術方面基礎知識
要求信息管理專業學生學習掌握計算機基本組成、操作系統、數據結構、數據庫原理、程序設計基礎、網絡基礎知識等。
(3) 管理學思想理論方法綜合應用能力
要求學生能夠綜合運用所學的管理學理論與方法、經濟學理論與方法、運籌學方法、應用統計學方法解決實際管理問題,這需要在教學過程中以案例引導方式培養學生自主思維、自主學習、自主解決問題的能力。
(4) 信息系統軟件開發能力
要求學生在掌握計算機科學與技術知識的基礎上,綜合運用數據庫技術和相關開發工具,實現信息系統軟件的開發。
(5) 應用信息技術解決管理問題的能力
要求學生能夠綜合分析現行管理存在的問題,借助信息技術的應用,結合管理流程再設計,提出管理信息系統綜合解決方案。
作為一個從事管理信息系統分析、設計、開發和維護的信息化建設人才,要掌握必需的管理學理論知識,并在此基礎上強化信息系統分析、設計與開發能力。對于信息技術的掌握,不能只是認識和了解,必須經過信息系統軟件開發的磨煉,形成系統化應用信息技術的能力,才能支持學生進入信息化建設行業中,勝任信息化建設規劃,管理信息系統分析、設計與開發,信息系統軟件引進、實施與維護等信息化建設工作。
4建立信息管理專業人才培養新模式
為了能夠適應當前社會需求,信息管理專業人才培養必須以就業為導向,將理論教學和實踐教學密切結合,將信息管理專業學生培養成為既有扎實的理論知識,又有一定專業實踐技能的跨學科復合型人才,真正實現信息管理專業人才培養與社會崗位需求的零距離對接。 信息管理專業人才培養需要分階段確定培養目標,通過各階段學習與積累,逐步達到人才培養目標。
(1) 信息管理專業管理學基礎能力培養
以理論教學為主,結合案例教學,培養學生管理學基礎。參考教育部規定,開設下述課程:經濟學、會計學、市場營銷學、生產與運作管理、組織戰略與行為學、管理學原理、應用數理統計、運籌學等。
(2) 信息管理專業管理運營技能培養
以提高學生的運營管理方面專業素質為目標,在掌握管理學基礎知識的基礎上要求學生掌握經營管理的綜合運用能力。開設ERP沙盤模擬演練實驗課,通過實際運營的模擬演練,將學生對理論知識的掌握上升到實際運用階段。同時,通過運營能力的競賽激發學生專業學習興趣,培養學生系統管理思想,提高學生綜合運用管理知識的能力,使學生建立立體的管理學思維方式。
(3) 信息管理專業計算機基礎能力培養
在管理學基礎知識培養的同時,培養學生計算機基礎能力,主要開設下列課程:計算機導論、數據結構、操作系統、數據庫原理與應用、程序設計語言、網絡工程、軟件工程等。
以提高學生的計算機技術方面專業素質為目標,要求學生掌握簡單軟件開發能力。結合信息系統分析與設計課程,建立軟件開發基礎實驗室,通過對數據庫、程序設計語言的綜合運用,提高學生對計算機技術的基礎應用能力。
(4) 管理信息系統分析與設計思想的培養
在管理學基礎知識和計算機基礎能力培養的基礎上,開設企業資源計劃(ERP)原理與應用課程,開設ERP系統操作實驗課,培養學生將管理學知識與計算機知識綜合應用能力,強化學生管理信息系統集成設計思想,提高管理信息系統分析設計能力。
(5) 管理信息系統軟件開發能力的培養
開設信息系統分析與設計課程,開設軟件開發實訓課程,要求學生完成一個管理信息系統的開發,提高學生的軟件開發能力。結合學生的畢業設計,要求學生完成管理信息系統分析、設計、實施全過程中,使學生具備信息化建設人才崗位需要的能力。
5結束語
當然,信息管理專業人才培養新模式的推出將對舊教學體系有很大沖擊,特別是對本專業專任教師的知識構成和技能要求非常高。
學生專業思維方式的形成是通過每一門課程的學習、每一位授課教師專業思維方式的滲透而逐步形成的。這涉及專業人才隊伍知識構成的改變,涉及整體教學課程的調整,對師資力量提出了有別于管理專業和計算機軟件專業的、更高的專業技能要求。
信息管理專業專任教師的知識構成要兼有管理學知識和信息技術技能,同時要求進行過管理信息系統軟件開發,否則很難在學生的4年學習過程中逐步引導學生建立系統分析、設計、實施,用信息技術工具解決管理問題的完整的、系統化的專業思維方式。特別是學術帶頭人應該具有實際管理信息系統開發經驗和大型軟件實施經驗,能夠從專業發展角度引領信息管理專業人才培養方向,達到高質量、高目標的專業人才定位。如果以管理學方面教師或計算機方面教師作為學術帶頭人,由于其專業思想的局限,會導致專業發展向某一方面側重,造成信息管理專業學生只懂管理、計算機相關技能很差,或者有一定的計算機相關技能、管理理論基礎卻很薄弱的情況。
另外,在實際教學過程中,雖然將編程作為學生的基本技能培養,但更要注重學生的分析與設計能力的提高。編程能力是信息管理專業學生就業的基礎,而在信息管理專業人才未來的職業生涯中,能夠助其良好向上發展的應該是分析與設計能力。
在當前學生就業形勢非常嚴峻的大環境下,如何最大限度滿足社會對專業人才的需求,合理調整專業人才培養體系,實現教育與就業的近距離對接,這是當前高校專業教育必須思考的問題。從本科生職業定位入手,研究適合學生專業的社會需求,明確崗位所需要的專業技能,針對不同學習階段,確定不同的相互關聯的人才培養目標,形成完整的教學體系,將是未來高校專業人才培養體系調整的新思路,也是解決高校教育與社會就業脫離的人才培養新模式。
主要參考文獻
[1] 中華人民共和國教育部高等教育司.普通高等學校本科專業目錄和專業介紹[Z].北京:高等教育出版社,1998.
[2] 胡昌平.面向21世紀的中國信息管理類專業教育[J]. 情報學報,1999,18(1):3-9.
關鍵詞:軟件工程;實訓;課程體系
實訓是一種新的實踐教學形式,最早在職業技術教育中開展,其目的是解決畢業生走向職業崗位時達不到崗位要求的問題。由于職業教育的定位是面向崗位的職業技能教育,培養生產一線的操作人員,所以實訓教學以系統地訓練崗位技能和技術運用為主。近幾年,高校為了解決畢業生由于不能適應工作崗位技能要求導致就業不暢的問題,加強了以培養學生實踐能力為主的實踐教學改革。許多院校的軟件工程類專業(方向)在學生進入實習之前,增加了實訓教學環節。由于對實訓教學目標定位的認識不同,導致在實訓的時間長度、內容、要求和管理上有很大差異,對實訓教學的研究和建設投入不足。本文結合我校計算機科學與技術專業(軟件工程方向)人才培養的實踐,以及我們對本科軟件工程實訓的認識,介紹我校軟件工程實訓的目標定位和對相應課程體系的探索、實踐情況。
1軟件工程人才培養課程體系
我校是以教學為主,培養應用型人才的地方本科院校。我校的計算機軟件工程人才培養定位是:“掌
握計算機科學與技術學科的基礎知識與技能,具有一定的工程技術基礎和較強的實踐動手能力,具有創新精神、競爭意識和良好的團隊合作能力,能夠適應技術進步和社會需求變化,能夠從事計算機應用軟件開發與管理的高素質軟件工程人才”。根據國家對本科人才培養“寬口徑、厚基礎、強能力、高素質”的總體要求,和教育部高等學校計算機科學與技術教學指導委員會的軟件工程專業規范[1],我們構建了簡稱為“211”結構的課程體系,它主要包括大學基礎教育、專業教育、職業技能與技術應用教育、綜合素質培養四大板塊。即在大學一、二年級,用兩年的時間進行大學基礎教育,包括人文社科、身心健康、工具(外語、計算機、文獻檢束等)、專業基礎等,以學生長遠發展需要,提升基礎知識層面和綜合素質,為后繼的專業課程學習做鋪墊為目標;三年級進行系統的專業教育,以專業核心知識和基本能力培養為主,以提升學生專業知識層面和專業基本能力為目標,同時開啟必要的專業方向課程,為后繼的職業技能培養做鋪墊;四年級進行面向崗位的專業職業技能培養和技術應用創新教育,以學生就業為目標,其主要的教學形式是實踐教學。課程體系結構如圖1所示。
圖1人才培養課程體系結構示意圖
2目前國內軟件開發實訓存在的主要問題
目前國內開展軟件實訓的機構主要有三類:企業或軟件行業協會投資的社會培訓機構;由政府、企業等多方投資建設,獨立運營的實訓機構;校企合作共建的實訓基地,這中間又有兩種,一種是以學校投資為主,實訓基地建在校內;另一種是學校進行必要的投資,實訓基地建在企業。實訓開展形式主要有三類:1)學校將實訓委托給社會培訓機構或企業,由他們負責學生實訓教學;2)學校與社會培訓機構或企業合作,派出實訓指導教師與承擔實訓教學任務的機構共同實施實訓教學;3)由學校自己組織在校內進行實訓教學。由于承擔實訓任務的主體各自的利益目標不同,各自的擅長不同,實訓對象所擁有的基礎不同和各自對實訓的理解不同等多種原因,造成目前軟件實訓存在以下主要問題:
1) 實訓的內容體系設計單一,通常只要求通過訓練掌握某項具體的開發平臺技術,追求的是程序代碼的實現。
2) 用于實訓的軟件開發項目小,軟件開發過程的控制與管理、軟件質量控制與保證、團隊的合作與協調等軟件工程的重要內容和思想體現不出來,使得學生在實訓之后,沒能體會到軟件工程的特點和重要性。
3) 實訓指導教師的軟件項目開發經驗少,工程素質不高,同時缺乏相關的教學經驗,不能保證軟件工程的思想、技術、方法和要求在實訓中得到貫徹落實。高校教師在軟件開發的工程能力和經驗上缺乏,而來自企業的指導教師在軟件工程理論和實訓教學方法上存在明顯不足。
4) 實訓所需的工具、平臺等條件不足,不能保證實訓目標全部實現。
5) 實訓的團隊合作、團隊目標管理往往被忽略,這使得經過實訓之后,學生的團隊意識,與人溝通、協調、合作的能力沒有明顯的提高。
6) 實訓中學生對新知識、新技術學習的能力培養沒有得到應有的重視和訓練,鼓勵創新的機制和措施不夠,這使得經過實訓之后,學生除在具體某項技能方面有所收獲之外,在學習能力、技術應用能力、接受新事物和創新意識等方面收效甚微。
3軟件工程實訓課程體系建設
實訓是一個綜合、系統的工程,其目的是提高學生的知識、技術應用能力,積累工程實踐經驗,從而提高職業技能,實現從學生向職業工作者的轉化。對于以上存在的問題,我們認為師資、課程體系是核心和基礎,實訓項目是關鍵,在干中學,在學中干是行之有效的方法。以下僅就軟件工程實訓課程體系的建設進行探討。
3.1目標定位
課程體系反映了對人才培養的知識和能力要求[2]。本科軟件工程型人才的實訓定位應該從軟件開發企業的崗位要求、學生職業發展空間、初步能夠適應多種崗位需要等多方面考慮。從學生初次就業的崗位看,軟件開發人員的主要崗位有程序員、測試員等。這類人員需要有良好的理解設計和程序的能力,能夠在一種開發平臺上熟練地進行規范的程序設計和相應的程序測試,能夠清楚自己所做工作與他人工作之間的關系,理解自己所做工作在整個(或局部)設計中的作用。從職業發展空間看,軟件開發人員經過2~3年的實際工作鍛煉,應能夠承擔軟件工程師的角色,承擔必要的分析、設計、任務分解、技術指導、協調和管理任務。所以,本科的實訓目標定位既要面向現實,又要給學生發展的潛力和意識。我校的軟件工程實訓的目標定位是提高軟件開發程序實現技能,提高軟件工程知識、技術應用能力,積累軟件工程實踐經驗,實現從學生向軟件職業工作者的轉化。具體要求是:
1) 熟練掌握一種軟件開發平臺及相關技術,能夠用它們進行規范的程序設計。
2) 掌握軟件測試的方法,初步能夠設計測試方案,用測試數據集完成相應的軟件測試工作。
3) 理解軟件生命周期中各環節的主要概念,初步掌握各環節的主要工作、所采用的技術和實施方法,初步掌握有關工具的使用,能夠用它們完成相關的分析、設計工作。
4) 了解軟件開發的過程控制、質量保證和管理的方法和特征,理解它們的重要性。
5) 理解團隊及各種角色的作用,掌握交流勾通、協調合作的必要方法,形成團隊意識。
6) 形成快速學習專業知識和技術的能力,查閱相關技術資料(含英文資料)的能力。
7) 了解、體驗軟件企業的工作環境、形式和要求。
3.2構成原則
實訓以項目為載體,以軟件開發的工作流程為驅動實現知識、技術、能力和素質的全面提高。實訓課程體系作為實現實訓目標,制定實訓計劃的基礎和核心,應堅持以下原則:
1) 以企業實際需求為導向,以能力培養為核心,以學生適應軟件技術崗位為目標,以職業崗位技能為重點,兼顧長遠發展。
2) 注重知識、技術、能力、素質的協調發展,使學生通過實訓既學習了知識和技術,又提高了應用知識、技術的能力,升華了自身的素質。
3) 以職業技能訓練為重點,突出技術應用能力培養,強調在應用中創新,通過解決問題來體現技術和人的價值。
4) 課程體系應具有開放性、靈活性,能夠即時反映軟件技術的發展。
5) 課程體系要與人才培養方案的課程體系銜接,有明確的應用軟件開發領域,體現自身特色。
3.3課程體系內容
我校的計算機專業軟件工程方向人才培養計劃課程設置以計算機科學優先,接著是軟件工程基礎和軟件開發平臺技術基礎課程,將軟件工程的技術與方法、軟件開發的管理、軟件開發平臺技術的深化、職業綜合素質等方面的課程統一綜合到實訓課程體系中;以互聯網應用軟件開發為平臺,以管理信息系統和電子政務/電子商務為應用領域。實訓過程以軟件項目開發工作流程為主線,內容涵蓋項目開發的全過程,保證學生能夠體驗到軟件開發的全過程。實訓以職業技能和技術應用為重點,教師講解不超過總時間的20%。軟件工程實訓課程體系如圖2所示。
1) 在實訓之前開設軟件工程與技術基礎課程群。它主要是為學生進入實訓之前奠定必要的技術、
圖2軟件工程實訓課程體系示意圖
工程和應用領域知識基礎。主要課程有軟件工程導論、面向對象設計方法、信息管理系統設計與開發、C#語言程序設計、.Net架構程序設計(或Java語言程序設計、J2EE架構程序設計)、XML語言、Linux操作系統(或Unix操作系統)、電子商務、電子政務等。
2) 開發技術平臺課程群。它是在.Net開發平臺(或J2EE開發平臺)基礎之上進一步深化、細化有關技術,提高在開發平臺上的軟件實現能力的一組課程。主要課程有人機交互與界面設計、數據庫程序設計、數據接口程序設計、Web Services設計、應用安全程序設計、動態服務組合、新技術介紹等。
3) 軟件工程技術與方法課程群。它是一組提高學生軟件工程意識、技術和方法的課程,是學生今后向高層次軟件職業人員發展必備知識和能力。它培養學生具有軟件工程的理論知識,能夠應用它們指導軟件開發的實踐。要求學生掌握常用的需求分析與設計工具,具備一定的軟件分析與設計能力,了解軟件開發的管理過程和技術。主要課程有:軟件需求分析、軟件設計與體系結構、軟件詳細設計、軟件測試與質量保證、軟件過程與管理、軟件分析與設計工具等。
4) 職業綜合素質課程群。它是一組提高學生非技術方面的綜合素質的課程。它培養學生團隊意識、溝通合作能力、專業資料獲取與專業外語應用能力,使其具有良好的職業道德和一定的工程經濟概念,了解現代軟件企業的運行與管理。主要課程有團隊激勵與溝通、工程經濟學概念、信息社會與職業道德、軟件成熟度模型與軟件企業管理等。
在課程體系中,開發技術平臺課程群是學生實習、初次就業體現自己的技術和能力的主要內容,同時它是更好地理解、掌握軟件工程技術與方法中諸課程的基礎。所以,它是實訓的重點。軟件工程技術與方法是中、高級軟件職業人員必備的知識和能力,需要在大量的工程實踐中去提高認識和積累經驗。它在實訓中以體驗、領悟為主,重點是訓練分析、設計的方法和相關文檔的規范表達。職業綜合素質課程群的知識對于學生步入社會,在職場上取得成功很重要,并且它是實訓取得成功的基礎性知識,要貫穿整個實訓過程。
3.4評價指標
實訓所包涵的內容和重點是實訓成功的核心和
基礎。為了科學評價與不斷優化實訓內容與重點,通過向行業專家咨詢和實踐,我們初步建立了一個實訓課程體系評價指標體系[3]。它主要由職業技能、工程實踐、專業知識和職業綜合素質幾個方面構成。評價指標體系如圖3所示。
圖3課程體系評價指標體系
4結語
我校從2005年開始,通過與微軟合作,引進微軟職業技術教育課程,開始在計算機本科教育中用一定的時間進行職業技術教育。通過對兩屆學生的教學實踐,我們感到微軟職業技術教育課程相對本科人才培養存在著軟件工程方法、技術方面內容薄弱,而微軟
開發技術內容過細的問題。2007年,我們通過對有關教學內容的調整補充,整合成軟件工程實訓。實訓大大提高了學生軟件開發技術的掌握和應用能力,增強了學生的就業能力和質量。2007、2008屆參加軟件工程實訓的學生,90%以上到軟件開發企業就業。學生的知識結構、技術水平和能力、綜合素質等得到企業好評。
參考文獻:
[1] 教育部高等學校計算機科學與技術教學指導委員會. 高等學校計算機科學與技術專業發展戰略研究報告暨專業規范(試行)[M]. 北京:高等教育出版社,2006:12.
[2] 舒蔚,萬常選. 計算機專業程序設計課程體系架構的研究與實踐[J]. 吉林大學學報:信息科學版,2005(8):1-4.
[3] 韓春燕,高曉興,姜慧妍,等. 軟件工程專業課程體系優化方法研究與實踐[J]. 計算機教育,2009(4):70-73.
Research on Curriculums in Software Engineering Training
YUAN Lei, HUANG Jian, NING Bin
(Mathematics and Computer Science College, Xiangfan University, Xiangfan 441053, China)
關鍵詞:軟件工程;課程體系;培養方案
軟件工程教育兼屬科學教育和工程教育范疇,軟件工程的科學教育屬性主要是引導學生對人類意識與智慧進行科學理解、增強運用軟件本質特性(構造性與易演化性)和解決具體問題的能力;而軟件工程的工程教育屬性主要是引導學生綜合應用計算機科學、數學、管理等科學原理,借鑒傳統工程的原則、方法,提煉和固化知識,通過創建軟件來達到提高質量、降低成本的目的。然而,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與中間件等認證課程納入本科教學計劃中,全面體現學生的“多證多能”。