久久久国产精品视频_999成人精品视频线3_成人羞羞网站_欧美日韩亚洲在线

0
首頁 精品范文 軟件工程導論

軟件工程導論

時間:2023-05-29 18:00:16

開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇軟件工程導論,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。

第1篇

[關鍵詞]同伴教學法;軟件工程導論;課程教學

doi:10.3969/j.issn.1673 - 0194.2017.04.147

[中圖分類號]G642 [文獻標識碼]A [文章編號]1673-0194(2017)04-0-02

1991年,哈佛大學的埃里克?馬祖爾教授創建了同伴教學法,其最早應用于物理學教學中。同伴教學法是一種基于合作學習理論和動機學習理論設計的教學方法。它是以教師在課前要求學生進行知識預習,課上提出測試題,要求每名學生獨立答題,學生可以向教師提出1~2個問題,并形成自己的答案;然后由教師將學生進行分組、討論,每名學生都要在本組內闡述自己的答案,答案有差異時,成員之間可以用自己的觀點和理論說服對方,決定自己答案是否更改;教師統計學生上交的試題答案及正確率,根據準確率及時調整教學策略;學生根據教師講解的知識點和關鍵點對照自己的答案,并將知識進行有效遷移的教學過程。同伴教學法是在心理發展水平相當的同伴關系之間,通過同學之間進行闡述觀點、互相學習、討論、分享經驗,傳授技能并獲得同步提高。同伴教學法適用于原理、概念、過程、方法等比較難于理解、難于記憶、容易混淆的理論課程,這是一種講授自然科學課程簡單、有效、實用的教學方法。在軟件工程導論課程中M行同伴教學法進行教學,符合課程特點和教學發展規律。

1 軟件工程導論課程教學現狀

軟件工程學歸屬于自然科學中計算機科學與技術學科,是為了擺脫軟件開發成本和進度估計不準、系統滿意度不夠、產品質量不可靠、軟件維護性差、軟件開發生產率跟不上計算機發展速度等“軟件危機”的困擾,專門研究軟件開發與維護的普遍原理、技術的一門工程科學。軟件工程學已成為計算機科學的一個重要分支,研究范圍廣泛,其包括技術方法、工具、管理等多個方面。軟件工程導論課程是計算機專業開設的一門必修課,是軟件工程學的概要介紹,主要講述軟件工程的原理、概念、技術和方法,介紹各個實施階段的任務、過程、方法和工具。

1.1 課程內容繁多

軟件工程導論課程講述的概念、原理、模型、系統內容繁多,講述的知識面廣、軟件的發展速度快,課程的真實性和綜合性強,理論性的知識眾多,教師準備課程和講解知識雖然耗費了大量的時間和精力,但學生對知識點不易理解,不能完全掌握知識內容。

1.2 教學方法陳舊

軟件工程導論課程采用傳統的教學方式,即“滿堂灌”,教師在講臺上用無數豐富的語言去描述概念、原理、過程,學生只能被動的接受、機械的記憶,師生之間沒有互動,學生想在一節課上把教師所講的復雜的理論、概念完全記住,非常困難。

經過實踐證明,這種傳統的教學方法,已不能滿足學生的學習需求,影響了其學習效果。所以,必須要找到一種適合軟件工程導論課程的教學方法,同伴教學法是若干教學法中的最佳選擇。

2 同伴教學法的應用實例

以“總體設計的過程”這一節課程為例。

2.1 課前準備

在本節課前一周,教師布置閱讀任務,要求學生閱讀“總體設計的過程”的內容,在課堂上提出并要求學生回答類似下列的問題。

(1)詳述總體設計的過程,需求分析階段的數據流程圖在總體設計中起到了什么作用?

(2)在選取方案過程中,分析員一般要備份什么資料,這些資料有什么作用?

(3)數據庫設計的步驟是什么,每一步的功能是什么?

(4)在書寫文檔時,都需要哪些文檔?為什么要書寫這些文檔?這些文檔對軟件的開發起到什么作用?

這些問題必須是經過教師精心設計的,不能讓學生通過閱讀資料就可以找到答案,需要學生通過閱讀教材、查找資料,對資料進行獨立思考、深入分析,形成自己觀點的問題。教師要綜合知識點,對問題做好答案,以備講解。

2.2 問題提出

課堂上,教師先創設模擬情景,如:一個公司現在需要編寫一個財務軟件,最先要明確的就是總體的設計過程,那么這個設計過程應該是什么樣的呢?此時拋出的設計問題,請同學們進行討論,給出答案。學生閱讀教師給出的思考題,根據閱讀過的教材和資料,給出初步答案。此時,每名學生也可以向教師提出1-2個問題,教師進行回答。

2.3 小組討論

教師將學生分成若干個學習小組,每組有4-5名成員,可設置1名組長,也可不設置。在小組中,每名學生按次序將自己的答案提出,并說明形成答案的根據、理由和設計。小組內根據不同意見再進行分組,每名同學試圖用自己的理論說服對方,此時,教師可以在各組內進行巡視或旁聽,并給出一些建議,學生根據討論和交換的意見,再次形成新的答案。

2.4 統計答案

學生將答案提交給教師,教師根據學生方案中存在的問題,進行統計,并給出每道試題的正確率,查看知識點掌握情況,總結學生答案的優缺點,分析學生錯誤答案產生的原因,準備相關知識以備講解。

2.5 講解答案

教師講解答案如下。

(1)總體設計的過程包括設想供選擇的方案、分揀選取合理方案、推選最優方案、進行功能分解、設計軟件結構、數據庫設計、設置測試計劃、書寫軟件相關文檔及審查和復審等9個步驟,需求分析階段的數據流程圖在總體設計中是總設計的開始,數據流程圖中的自動化邊界是實現策略的方案。

(2)在選取方案過程中,分析員一般要備份系統流程圖、組成系統的物流元素清單、成本或效益分析、實現這個系統進度的計劃四份資料,這些資料是實施方案的基礎,是項目是否可行的依據。

(3)數據庫設計的步驟是模式設計、子模式設計、完整性和安全性設計、優化。模式設計是確定數據庫的物理結構,子模式設計是具體的數據規劃試圖,完整性和安全性設計是保證數據庫整體安全穩定運行的檢查方案,優化是改進模式和子模式數據的方案。

(4)在書寫文檔時,需要系統說明、用戶手冊、測試計劃、詳細的實現計劃、數據庫設計的結果等文檔。這些文檔是進行軟件開發的根據和基礎,也是以后開發同類產品的寶貴資料。

教師講解后,歸納總結學生方案的優缺點,對錯誤的成因進行分析,提煉出本節課程的重點和難點內容。同學們根據自己的答案對照教師的答案,分析自己答案的利弊,鞏固知識,再進行討論,最終領會本節課的知識和技能,提升自己的知識和能力,進而對知識做到最好的遷移。

3 結 語

在軟件工程導論課程中使用同伴教學法進行教學,使學生明確了學習目標,掌握了重點和難點,激發了學習興趣,提高了解決問題的能力,培養了合作精神、溝通能力、競爭意識、互助精神等綜合素質。改變了原有的教學模式,讓同學之間成為互相的傳授者,不但可以共同探討問題,還能共同增長知識和技能,達到了共同進步的目的。同伴教學法在自然科學門類的理論課程教學中具有顯著的作用和十分重要的現實意義,是同類課程的有益借鑒。

主要參考文獻

[1]吳蓓.PI教學法在“Java Web開發”課程中的應用研究[J].西部素質教育,2016(15).

第2篇

關鍵詞:721人才培養模式;翻轉課堂;軟件工程

中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2016)42-0184-02

一、引言

為落實黨的十八屆三中全會精神,湖北工業大學遵循教育基本規律,結合學校實際,提出了“721”人才培養模式,旨在對學生實行因材施教、分類培養,滿足社會發展的需求,進一步提高人才培養質量[1]。本校教學一線的老師們紛紛結合自己的實際教學工作,探索專業領域內的教育模式新方法,已初具成效。自翻轉課堂這一新式教學模式從美國傳入中國之后,越來越多的教育者對它進行嘗試和研究。不同專業的教師將它搬進課堂[2,3],促使它掀起教育領域一場真正的革命。

二、存在的問題

《軟件工程導論》是湖北工業大學計算機學院軟件工程專業的一門專業必修課,作為該專業的一門支柱和特色課程,它在課程體系中起著承上啟下的重要作用。學生是否能學好這門課程,對后續《軟件需求工程》、《軟件測試》、《軟件項目管理》、《軟件工程經濟學》等課程的學習有著重要影響。但是,按照現有傳統的教學模式,這門課程的教學過程中存在以下問題。首先,《軟件工程導論》這門課程概念和文字性內容較多,是計算機學科中較偏文科的一門課程。如果按照傳統的填鴨式和滿堂灌的授課方式,老師講,學生聽,學生會覺得枯燥乏味,容易在課堂上走神。其次,學生的基礎和水平參差不齊,有的學生能很快掌握課程的內容,有的學生則覺得很困難。傳統的“一刀切”的授課方式沒有注意到學生個人的差異性,按部就班地根據規定好的大綱內容和進度進行授課,雖然這種方式能照顧到大多數同學,但卻忽略了頭和尾的那兩部分同學。此外,講授這門課程的最終目的是讓學生能用工程化的思想來進行軟件項目的開發,能通過這門課程提高動手實踐能力和發揚團隊協作精神。按照傳統的方法,這門課程授課結束后,學生會有一周的時間合作完成一個軟件項目,以鞏固所學的理論知識,鍛煉動手能力。但通常,學生只是在學期末提交一個紙質的課程設計報告,學生是否真的進行了項目的開發無從得知,報告里面出現的問題老師也無法反饋給學生。這種授課與課程設計脫離的傳統方式使老師無法對項目的過程進行管理、控制和指導。

三、翻轉課堂與傳統課堂的區別

與傳統課堂相比,翻轉課堂有以下顯著區別:

1.課堂主體的變化。傳統課堂的主體是教師,教師根據既定教學目標和教學安排進行教學,教師講授,學生聽講。而在翻轉課堂,主體是學生,學生自主學習、團隊協作、匯報演示,教師只是扮演一個組織者和引導者的角色。

2.課堂教學內容的變化。傳統的教學內容一般為教材上的內容。按照翻轉課堂的新教學模式,教材上部分內容會成為學生課前自學的內容,網絡上一些學習視頻如MOOC等也會成為學生課下自主學習的內容,依照不同的章節,老師安排不同的教學內容,可能讓學生在課堂上討論案例,或者匯報項目進展,又可能是對自學過程中遇到的問題進行提問和解答。總之,教學內容較之以前會有很大的改變。

3.更加重視個體差異性。不同知識水平和能力的學生不必按照原有的統一進度進行學習。學有余力的學生可以通過網絡學習資料學習更多的相關知識;水平較低的學生也不必擔心跟不上老師授課的進度,因為他們可以在課下有充足的時間反復學習;組織能力強的同學可以在課程設計的團隊協作中擔任起小組長的角色。這正是“721”人才培養模式的核心理念:因材施教,分類培養。

四、實施方案

如圖1所示,結合《軟件工程導論》這門課程的學時、章節內容等特點,其翻轉課堂教學過程可按如下步驟進行。

1.課前給學生布置教學視頻觀看和資料學習的任務。這一環節非常重要,因為在傳統課堂上學生學習到的理論知識改變為在翻轉課堂的這一階段獲取。教學視頻可以教師錄制,也可以是網絡上的視頻資源。現在互聯網上有很多豐富的教學視頻,如MOOC視頻等,如果教師認為已有的視頻已經足夠適合這一節的教學內容,那么也可以不用親自錄制。翻轉課堂也并不要求學生學習的來源僅僅是流媒體形式,紙質教材、電子文檔、網頁等也都可以。

第3篇

(浙江工業大學 計算機科學與技術學院,浙江 杭州)

摘 要:分析國內高校在軟件工程課程設置上的側重點以及軟件職業技術資格考試內容,提出以SWEBOK V3中知識域的要求為課程內容基礎框架,基于畢業生的產出能力導向進行教學大綱、知識內容和考核方式改革,通過監控學生成績對課程教學效果進行分析和長期持續改進。

關鍵詞 :產出導向;軟件工程;課程改革

1 背 景

作為軟件工程專業的主要核心課程,軟件工程課程一直很受關注,圍繞著課程教學所進行的教學改革也比較多[1]。目前,正在各高校進行的工程教育專業認證是我國為推進工程教育改革、提高工程教育質量、建立工程教育與工程師制度銜接、提高工程教育對產業發展的適應性[2]和提高我國工程技術人才的國際競爭力所做的一項合格性評價,在給高校工程教育帶來發展契機的同時也提出了對教育理念、教學過程管理、教學內容更新換代等方面的挑戰和調整要求。

2 課程現狀

目前,國內高校軟件工程課程使用的教材主要有張海藩《軟件工程導論》、鄭人杰《實用軟件工程》和國外翻譯版《軟件工程》。教學內容主要有軟件工程概況、可行性研究、需求工程、傳統的軟件設計、面向對象設計、編碼、軟件質量與保證,項目計劃與管理、軟件開發工具與環境等。軟件工程是一門強調實踐的綜合性工程課程,各高校在具體課程安排上各有側重。

例如,復旦大學(54學時)的課程重點首先是結構化分析與設計、面向對象的分析與設計,這兩部分內容超過了1/4總學時;其次是軟件測試和軟件項目管理,分別約占總學時的1/6;課程特色在人機界面設計和Web工程上。清華大學(48學時)把面向對象方法UML和RUP作為重點,占總學時的近1/3;其次是結構化分析與設計,占總學時的1/4;軟件過程及軟件工程管理是另一重點,通過學生合作小組或參與項目組進行軟件開發,在實踐中理解軟件過程的意義和作用,培養軟件項目管理的意識和能力。浙江大學(理論32學時、實踐32學時)重點講述軟件工程的常用方法,包括分析模型的建立、總體設計、軟件測試等,其特色是網絡應用軟件的開發方法和實踐,通過從需求單位抽取出的大型模擬案例進行項目開發,鍛煉學生的系統設計、開發、談判、溝通、寫作、團隊合作等能力,培養學生的工程職業素養。

通過對國內幾所高校課程教學特點的分析,我們發現目前國內高校軟件工程課程主要以理論知識教學為主,雖然有的院校做到了實踐與理論并重(1:1),但是大多數院校還是以理論知識教學為主。課堂教學以講述概念性基礎知識為主,課程的內容主要有面向對象的分析設計、軟件測試和項目管理,對新知識、新技術和新工具介紹較少,目前軟件工程課程更像是一門導論課程。

3 面臨問題分析

3.1 工程專業畢業要求對課程的影響

工程專業畢業生應具備足夠的溝通能力、合作能力、專業知識技能、終身學習能力及人格、國際視野和責任感等能力素質,這些素質要求可以保證學生畢業進入職場前具備基本的職業素養和從業能力。產出導向是工程教育認證中重點關注的部分,課程體系設置、師資隊伍建設和外部條件配備均以有利于學生達到培養目標和畢業要求為導向。畢業要求反作用于課程設置,要求課程的內容建設、教學方法改進、過程監督以及成績考核都應圍繞這一要求,細化產出導向的要求和能力指標,設置相應知識點并調整各自的重要性比例,從知識點授課和實踐能力兩方面落實能力培養,達到畢業產出的要求。

3.2 與軟件工程課程相關的專業技術資格考試分析

工程教育認證是將來國家注冊工程師制度的基礎和重要環節,目前我國已經在土建、環境、核安全等領域開展試點工作,實現了對工程人才的社會評價及國際間人才資格互認。在我國,與軟件工程課程相關的全國性考試還有計算機技術與軟件專業技術資格(水平)考試,由國家人力資源和社會保障部、工業和信息化部領導,對全國計算機與軟件專業技術人員進行職業資格、專業技術資格認定和專業技術水平測試。筆者對與軟件工程課程相關的資格考試內容進行解析,以軟件設計師為例進行重點分析,見表1。

從表1分析內容可見,軟件工程基礎考試內容與課程教學大綱知識點一致,在信息安全知識和標準化知識上給出新增內容,這與SWEBOK2013知識體系一致。考試科目“軟件設計”以上述知識為基礎,考查工程師的實際工作能力。在最近幾次考試中有考題涉及數據流圖、UML圖的應用分析,與課程授課側重點也相符,更側重于實例的應用能力,需要實踐積累與運用。

3.3 SWEBOK V3和課程對應關系分析

軟件工程專業的課程體系是基于軟件工程知識體系SWEBOK(software engineering body of knowledge)、計算機教程軟件工程卷(computing curriculum-software engineering, CCSE)及其中的軟件工程教育知識體(soft engineering education knowledge,SEEK)而建立起來的[3-4]。2014年,IEEE計算機協會了軟件工程知識體系指南第3版,該版將原來的10個知識域擴展到15個,與現有軟件工程課程大綱的比較結果見表2,其中有分布到其他課程中的知識點未加以說明。新增和修改的相關知識點需要在軟件工程課程教學和實踐環節落實。

4 基于產出導向的軟件工程課程改革與建設

4.1 課程教學目標修訂

基于上述分析,我們進行基于產出導向的軟件工程課程改革和建設。課程教學以使學生掌握軟件工程的理論基礎知識和基本工作原理,培養學生具有工程問題需求分析的能力以及綜合運用計算機科學和工程技術完成系統設計、實施和維護的能力為目標。課程的主要任務是使學生掌握軟件開發過程的理論、方法、技術標準以及計算機輔助工程和環境等知識并通過實驗靈活應用;掌握軟件工程的基本概念、軟件開發模型、開發過程的管理和質量控制;掌握需求分析的任務與原則,傳統面向對象需求分析方法、設計過程與一般性概念以及文檔的編寫;掌握程序設計方法,增強編程實踐訓練,掌握軟件測試技術與糾錯性軟件維護方法;掌握UML建模技術,能在軟件工程過程中使用常用建模工具,能運用建模方法解決工程實際問題;了解專業開發活動涉及的標準、方針、政策和法律、法規,能正確認識實施軟件工程對客觀世界和人類社會的影響。

4.2 教學內容和教學方法改進

根據畢業產出要求及SWEBOK V3新修改版,我們對教學內容作如下調整:①在64學時課時中,將理論與實踐課時設定為1:1;②在需求分析和設計部分新增人機界面和系統安全知識;③獨立介紹軟件復用部分知識,結合軟件設計模式討論軟件可復用性;④在軟件質量保證和項目管理部分新增軟件產品標準和行業標準、國內外法律和法規;⑤在軟件維護部分新增軟件退役和遷移。

每一章都提供參考資料,教師引導學生有選擇地閱讀其中的部分內容,根據課程內容的進展情況布置相應的任務、思考題和作業,引導學生通過Internet或其他途徑查閱相關資料以拓寬知識面,了解軟件工程領域最新實踐研究成果。為了使學生建立起軟件開發和維護的工程化意識,較系統地掌握按照工程化思想開發與維護軟件的方法和技術,教師需在教學中培養學生從軟件企業開發和維護實際大中型軟件的角度出發,結合成本、風險、效益、進度、過程、質量等多種因素系統地分析軟件開發和維護過程中的問題,突破以往要求完成某一給定知識點作業的單一思考問題局限。此外,構造實驗環境用于課內工程項目實踐,通過模擬項目的開發,鍛煉學生的系統設計和開發能力、軟件工具的使用能力、語言交流能力、文檔編寫能力以及團隊合作能力,培養學生的職業素養。項目實踐引導需貫穿理論知識學習始終。

4.3 考核方式與持續改進并行

課程強調過程考核,總成績分為平時和期末兩部分,分別占50%。平時成績主要考核學生的課堂表現、作業、實驗能力和實驗報告撰寫情況等。其中,課堂表現主要從學生上課是否專心聽講、回答教師提問是否正確以及分組討論是否積極、正確、有獨特見解等進行考核,以提高課堂教學效果和運用工程基礎知識及本專業基本理論解決實際工程問題的能力;作業方面重點考核學生掌握軟件工程理論基礎知識和基本工作原理的程度;課內實踐教學環節重點考核學生的工程問題需求分析和設計能力,綜合運用計算機科學和工程技術完成系統的分析和設計并對設計文檔進行審查的能力;期末考試將按照課程教學目標全面考核學生課程學習的效果,選取一定數目的學生成績為樣本,計算該課程對畢業要求貢獻的達成度并通過建立閥值定量評估課程教學質量,通過不斷提出持續的改進意見并實施,切實加大課程對提高畢業產出能力的貢獻。

5 結 語

筆者基于畢業生產出能力對課程教學目標進行了修訂,完善了軟件工程課程的教學內容和知識結構,對教學方法進行了梳理,最后通過改變考核方式對課程進行長期監控和調整,實現課程的持續改進。下一步工作將重點關注課程中學生自主能力導引體系和畢業生能力評價反饋機制的構建。

第一作者簡介:江頡,女,副教授,研究方向為服務計算和信息安全,jj@zjut.edu.cn。

浙江省計算機應用與教育學會教育委員會第十八屆年會

參考文獻:

[1] 廖禮萍, 劉宏哲, 馬小軍, 等. 面向應用型人才培養的軟件工程課程教學改革[J]. 計算機教育, 2014(14): 19-21.

[2] 方崢.“華盛頓協議”簽約成員工程教育認證制度之比較[J].高教發展與評估, 2014(4): 66-76.

[3] 沈備軍. 解讀軟件工程知識體系SWEBOK V3[J].計算機教育, 2014(7): 1-2.

第4篇

近兩年,《軟件工程》這門課程在中國礦業大學(北京)計算機系的課程設置中由專業選修課改變為專業必修課,這就說明了《軟件工程》課程在計算機專業中的地位越來越高了。該課程使用的教材就是清華大學出版社出版的《軟件工程導論》,這也是軟件工程領域中一本非常經典的教材,很多高等學校都在使用。該教材詳細講述了近年來軟件工程的概念、原理和典型的方法學,并介紹了軟件項目的管理技術。

軟件工程與其他的計算機專業課有很大的區別,它并不是一個完全的計算機的概念,它是教給人們怎么用工程化、現代工業管理的方法來管理軟件開發的過程,因此該課程除了針對計算機專業的學生,在很多領域都有所開設,比如我們學校的理學院,為金融、數軟、信軟專業的學生也開設了該課程。

1 《軟件工程》實驗教學的重要作用

《軟件工程》的教學應當以“工程”為主,給予學生“工程”的概念,該課程圍繞軟件工程的三要素,以軟件生命周期的若干階段為主線,介紹了軟件開發中使用的若干模型,工具與開發方法。因此,在軟件開發中不僅要求學生要掌握開發技術,還要具備一定的其他領域的知識,同時要將管理的思想融合進去。但是在大多數的普通高校中,《軟件工程》的教學比較注重知識體系,注重理論,但是對實驗教學重視不夠,甚至沒有實驗環節,這樣就使得一門應用性很強的課程常常被當成理論課來開展。對于沒有開發過軟件經驗的學生來說,只是理論的講解是枯燥乏味且難以理解,課堂教學效果必然不好。

《軟件工程》應該是一門理論與實踐并重的課程,因此,教師不應只將知識一味的傳授給學生,也應當讓學生把知識與實踐相結合。軟件工程的教學應該采取理論和實驗相結合的教學方式,因此實驗環節是非常重要的,在我們學校新版的《軟件工程》教學大綱中不僅增加了實驗學時,后續還增設軟件工程實訓課程,這就更突出了實踐教學環節的重要性。通過實驗環節,希望學生可以將所學到的軟件開發過程、方法和工具,以及淺顯的管理學知識應用到整個項目開發中,從而更好地理解軟件工程的理念,熟悉和掌握軟件工程相關技術,同時也能提高學生的實踐動手能力。《軟件工程》的實驗環節與理論教學是相輔相成,相互影響、相互支持,相互促進的。

2 《軟件工程》實驗教學所面臨的問題

《軟件工程》課程雖然增設了實驗教學的環節,但是由于教學任務的需要,理論學時所占的比重很大,留給實驗環節的學時很少,在這有限的時間內要真正開發出一個完整的系統根本是不可能的,因此實驗內容的設置常常只是停留在組織學生編寫軟件項目若干設計文檔這個單一環節上,當然要編寫相對完整的軟件開發中各個階段相關文檔也是不可能完成的,這就導致學生對教學內容的理解相應地差了很多,學生的實踐能力也沒有真正地得到鍛煉。而且,由于中等教育中文理科的劃分,理工科學生的文檔編寫能力是個“軟肋”,他們不感興趣。因此,作為一門重要的計算機專業課程,如何開展《軟件工程》的實驗教學,如何保證《軟件工程》實驗環節的效果一直是值得研究和思考的問題。

3 實驗教學的創新

按照新版教學大綱的要求,我們學校的《軟件工程》實驗環節分為兩個部分,一部分是課內實驗,一部分是軟件工程實訓。

3.1 課內實驗的設置

因為《軟件工程》的課內實驗學時比較少,我們主要是讓學生做一些工具的實驗練習,把軟件工程的概念和理論知識融入到實踐當中,從而加深對軟件工程的認識和理解。實驗的內容涉及軟件生命周期的各個階段。如表1所示。

實驗1:軟件開發繪圖工具Visio。了解Visio工具軟件的功能特色和工作環境,掌握應用Visio工具繪制軟件開發圖形的基本操作;了解開發Visio解決方案的基本概念,熟悉Visio繪圖操作。實驗2:軟件分析與建模工具PowerDesigner。PowerDesigner是一個非常好的做數據庫的工具,使用它可以方便地對管理信息系統進行分析設計。通過該次實驗初步了解PowerDesigner的概念和操作界面;了解PowerDesigner的4個模型:概念數據模型(CDM)、物理數據模型(PDM)、面向對象模型(OOM)和業務程序模型(BPM)及其相互關系與作用;學習運用PowerDesigner工具進行簡單系統分析建模操作等。實驗3:軟件項目管理Project。了解IT項目管理的基本概念和項目管理核心領域的一般知識,初步掌握Microsoft Project的一般操作界面和基本操作。實驗4:軟件配置管理VSS。學習軟件配置管理的基本概念、分類、工具集成和相關技術,初步了解Visual SourceSafe配置管理工具的使用方法。

3.2 軟件工程實訓

《軟件工程》課內實驗的設計主要是讓學生熟悉一下各種工具的使用,并沒有涉及具體的項目開發。在后續的為期兩周的《軟件工程實訓》期間,讓學生能夠參與完成完整的軟件系統的開發全過程。

首先由學生自由結合,形成“項目小組”進行軟件開發,原則上每小組不得超過5人,其中一名學生擔任組長,然后選擇實驗題目,題目的選擇可以采取教師命題和學生自選相結合的方式,但每一個題目必須經過教師批準后才能繼續下一步工作。題目確定后就可以組織學生以一定的競技方式開展軟件工程項目的設計活動,使學生能綜合應用軟件工程知識,充分運用軟件工程工具,很好地實踐和完成軟件工程項目,從中感性地理解和把握軟件工程活動。最后通過答辯的方式進行成績評定。

第5篇

關鍵詞:小學期;軟件工程;培養模式;項目實訓;案例

中圖分類號:G642.0 ?搖文獻標志碼:A 文章編號:1674-9324(2013)14-0226-03

2009年7月23日到26日,第二屆全國高等學校計算機實驗與實踐教學研討會在山東省威海市召開。會議以推進計算機實踐教學體系改革,加強實驗課程建設為主題,圍繞高等學校計算機實驗教學內容、方法及實驗教學模式的改革與創新開展了討論。講座之后,主辦方山東大學威海分校邀請所有參會代表考察參觀了山東大學威海分校。該校信息工程學院副院長賀紅向參會代表介紹了該校軟件工程專業的人才培養模式和暑假“小學期”制度。

一、山東大學威海分校的“實訓”培養模式

山大威海分校軟件工程專業以實訓為導向,厚基礎、重實踐,走出了一條以專業實訓為特色的人才培養模式,該模式在山東省全省得到大力推廣,山大威海分校軟件工程系也成了山東省軟件外包人才培訓基地。通過詳細調查了解發現,山東大學威海分校之所以能夠走出這樣的一條特色之路,很重要的一點,就是該校沒有盲目的把學生拋向社會,沒有盲目的把學生交給社會上的計算機培訓機構。現如今,外界計算機培訓機構多如牛毛,各個層次的培訓公司紛紛看中了高校計算機信息類專業這個龐大的蛋糕。很多高校重理論,輕實踐,或即使意識到實踐的重要性,卻沒有辦法引進具有一線實踐開發技能和經驗的雙師型教師。又要為學生就業找個好歸屬,迫于無奈,只有將學生送到社會上的培訓機構學習。這種做法固然有其積極的一面,培訓公司教會了學生開發技術,同時也幫學生推薦找到了工作。而山大威海分校則是把外面的培訓機構和實訓教師引進來,在校內進行培訓,學校為其提供實訓平臺和場地。該校的做法,對學生比較方便適用,而且安全也有保障。同時,也幫學生省去了很多培訓費用。除此之外,威海分校實訓培養模式的成功,我們覺得還有以下幾個方面的原因:

1.威海市是夏季避暑勝地,好請人才。威海地處海邊,夏季平均氣溫只有26度,氣候宜人,很多專業人才愿意去該校做短期教學和培訓。山東大學威海分校根據其得天獨厚的自然條件,實行三學期制,從7月1日到7月30日是第三學期時間,被稱為小學期。在該學期,學校會邀請外界各個領域的知名人士到學校做學術報告,整個教學也是進行選修課、輔修課和實習實踐類課程,生產實習也是在這段時間進行。在暑假前,學校會到處“物色”各個方向的專業人才,邀請其到該校講學或做培訓,時間一般分為一周、兩周或三周。在培訓講學期間,學校為其提供住宿和三餐補助,并給其60元/學時的講課補貼。雖然補貼不多,但各個培訓教師能夠在愉快度假的過程中順便對學生進行一些培訓而且還有收入,應該是一個一舉兩得的事情。軟件工程系從外界的一些知名IT公司或知名IT培訓機構請來教師對學生進行實訓,一般都是按4周進行。現在的威海分校,實訓模式已經全面鋪開,整個工科領域的專業,幾乎全都在搞實訓模式,從結果來看,效果很好。

2.有資金支持。威海分校軟件工程系進行實訓教學,是從2006年開始。剛開始沒有資金支持,系里就先拿出一部分資金先墊付,在把一期做好后,效果出來了,學校也開始重視了,就開始資金投入了。再到后期,實訓的影響更大了,威海市政府和山東省教育廳都開始重視,大量政府資金開始注入。另外,有些大型的實訓,也會要求學生交納部分培訓費,100元左右。讓學生交納部分培訓費,按照道理來說,是不符合教育部的文件精神的。但威海分校的負責人告訴我們,從實際效果來看,讓學生交納部分培訓費,可以提高學生學習的積極性和主動性,否則,很多學生會對這樣的實訓不夠重視。再者,即使是收費的培訓,學生在學過后如果的確覺得物有所值,也就不會介意這部分培訓費。從另外一個方面來說,軟件工程系這樣做,其實是替學生節省了大部分錢。因為現在外界的IT培訓機構,培訓一個項目一般都是幾千元。

二、其他高校的借鑒意義

他山之石,可以攻玉。山東大學威海分校的成功,很值得其他學校借鑒。經過觀察,我們發現,國內很多本科高校的人才培養模式與社會需求相脫節。特別是IT信息類專業,新技術發展快,企業對人才的需求對大學的課堂教學提出了嚴峻的挑戰[1]。如果教學上還是過去那種陳舊的教學模式和方法,教師沒有掌握先進的開發技術和開發工具,這樣培養出來的學生一出去就成了社會的“棄兒”。針對以上分析,筆者認為,軟件工程教學應以項目開發為核心,緊盯業界技術前沿,組織項目開發團隊,分配項目開發任務,進行項目開發指導,讓學生提前適應企業。

1.積極建設軟件工程大類實訓實驗室,為學生創建豐富的實訓環境。(1)計算機組裝與維修實驗室。主要是為計算機系大一學生做計算機組裝與維修實訓。建立這個實驗室投入很小,可以使用學校歷年來淘汰的舊機器。計算機系的學生如果只學學計算機基礎是不夠的,還需要學習計算機導論課程,導論課程主要講解計算機學科專業完整的知識理論體系和學科主干課程,讓學生對自己的學習方向提前把握。根據計算機系新的教學計劃,在大一上學期結束期間開設計算機組裝與維修課程,引導學生對計算機進行組裝和維護,可以讓大一新生提早對計算機專業奠定學習興趣。有了這些專業知識后,本專業學生可以為其他同學提供技術咨詢,同時也可以在后期重點選拔計算機系的學生充實到學校的網絡中心幫助維護整個學校的其他師生的計算機。(2)具有實訓場景的計算機網絡和網絡工程實驗室。網絡實驗室的建設,除了要具備基本的網絡驗證實驗外,還要具備網絡科研功能。同時,作為學生網絡實訓使用,一定要模擬實際的工作場景,建設具有實訓背景的網絡工程場景。可以在結合計算機網絡實驗室網絡拓撲圖的基礎上,再建立一個動態的組網場景。其組網設備可以完全照搬學校的網絡中心機房模式來購置,真實再現網絡接入環境。引導學生架設網絡,從鋪線開始,包括設備選型、采購,一直到具體實施,從運營商的接入段一直到客戶終端,教會學生如何做網絡工程。同時,學生報考軟考的網絡工程師和網絡管理員考試,而這兩個考試對學生的網絡實踐要求非常多。另外,信息類專業畢業的學生,出去找研發類和技術支持類工作時,遇到的面試題目50%以上都是計算機網絡的知識。所以,提高網絡實踐教學,加強計算機網絡實驗室建設,對學生進行計算機網絡的實訓就顯得尤為重要。(3)軟件開發實訓實驗室。軟件工程實訓實驗室開設的越早,對學生越有利,宜早不宜遲。軟件工程實訓實驗室可以從三個方面著手來進行建設,分別是數據庫(Oracle,SQL Server)、程序開發(C,C++,Java,C#)和軟件工程(VSS,UML)。軟件工程實訓實驗室是學生進行實訓的重中之重,建議重點投入重點支持。同時,還可以在軟件工程實驗室進行軟考培訓,對報考程序員、軟件設計師和系統分析師的學生進行強化。

2.大力引進和培養計算機類專業雙師型教師隊伍。工科學校要有工科學校的“拳頭”,要保證有穩定的教師隊伍,防止人才流失。很多青年教師特別是男青年教師因為經濟壓力而從學校辭職,不少雙師型教師因待遇問題而投奔企業。要想留住和吸引大量的優秀計算機類人才,必須要舍得投入,要事業留人、待遇留人,要下大力氣提高計算機類專業教師的福利待遇。要想讓優秀的青年教師在學校“安身立命”并積極投身于教育事業。同時,要給青年教師壓擔子,給青年教師提供良好的成長環境,使其具有主人翁精神。(1)請進來和送出去。請進來,積極引進合適的雙師型教師,四面出擊邀請技術“牛人”投入計算機教學。很多高校的計算機教師教學經驗豐富,但項目實踐經驗少,大部分老教師主要承擔專業基礎課教學,項目實訓類青年教師較少,還有很多實訓實踐類課程無法開展,還需要從社會上引進一些短期兼職教師,建議大力度引進具有項目實踐經驗的教師。特別是教學型和工程應用型高校,需要更多軟件開發實踐經驗的教師。學校可以通過教師以一定的社會途徑在外界收集和打聽技術精英,在條件合適的情況下,引入學校作為兼職教師對學生進行短期培訓。從社會引進的實訓教師,要具有扎實的理論基礎和豐富的實踐經驗。兼職教師的培訓時間應以1-4周為宜,根據其實訓項目的安排來決定其實訓時間的長短。送出去。由于自身專業和技術的限制,一個人不可能掌握所有的計算機實訓技能。所以,還應該積極的對已有教師進行培訓。可以委派青年教師參加外界技術類培訓,比如,參加全國的一些大型公司舉辦的項目培訓。像微軟、IBM、Sun、Oracle、Cisco、中興、華為等這些公司每年都會定期舉行一些大型培訓。

3.以計算機科學和軟件工程專業為試點,大力推行

“實訓”模式。(1)以市場為導向,開展實訓模式。學生在學習專業課的過程中,感到很茫然,不知道專業課的先后聯系和前后邏輯,無法架起一個完整的專業課程體系鏈。因此,需要對學生進行專業導論教育。一部分學校現在在推行3+1的教學模式,即前3年進行課程理論的學習,第4年把學生送到外面的企業進行實習或培訓。3+1的教學模式,它的弊端就是學生在前三年期間,過多的強調理論而忽略實踐實訓課程,學生因為沒有動手實踐能力而過早的喪失了對專業的學習興趣。把實踐實訓課程放在校內進行,從大一到大四分散實施,結合培養方案,按照各個課程的先后順序開展對應的實訓,在每學期末進行實訓[2]。以“實訓+項目”的方式來帶動。依次進行計算機基礎實訓、C語言和C++實訓、Java實訓、Oracle實訓和C#實訓。通過這樣的方式,可以讓學生過早的領悟到“項目”的魅力,增加學習興趣。實訓時間建議定在每學期期末,以方便安排課程教學。(2)以項目開發帶動課程教學。結合專業實驗室積極開展對應的教學科研和項目開發工作。教師可以帶領學生做一些常規項目,比如精品課程網站、學校部門門戶網站和部門信息管理系統等。在項目完成交付使用后,學校可以給師生提供必要的資金支持,以提高開發人員的積極性。做軟件項目,要拋棄必須在外面找項目的觀念,要拋棄做出的軟件項目一定要有市場的觀念。很多信息管理系統,完全可以讓學校安排本校學生做,做完后學校自己使用,這樣做,一方面有利于學校的信息化建設,另一方面也鍛煉了學生。這種實訓模式做成功之后,項目開發達到了一定的規模和層次,可以考慮成立軟件工程工作室,承接外面的項目,做一些大型的軟件系統。

參考文獻:

[1]唐浩坤.以工程實踐為導向的計算機專業人才培養模式的探討[N].大學計算機課程報告論壇論文集,北京:高等教育出版社,2009.

第6篇

1 引言

CDIO代表構思(Conceive)、設計(Design)、實施(Implement)、運行(Operate),是由美國麻省理工學院、瑞典皇家工學院、瑞典查爾摩斯工業大學和瑞典林雪平大學共同創立的工程教育改革模式。CDIO改革是基于CDIO理念而建立的國際工程教育改革合作計劃,包括CDIO理念和與之相適應的學習目標(教學大綱)、實現與評估標準以及一系列的規劃、設計、實施、評估理論和實踐資源。

“軟件工程”課程是計算機學科最重要的專業基礎課程,該課程重點是從技術和管理兩個方面指導計算機軟件開發與維護的一門工程學科。其內容涉及可行性研究、需求分析、總體設計、詳細設計、實現和維護等基本原理和方法。針對目前學生反映的“軟件工程”課程理論性強、較為抽象等諸多問題,結合本科生的知識背景,探討面向CDIO工程教育模式的“軟件工程”課程教學改革與實踐,對學生專業技能和工程能力培養都具有重要意義。

2 軟件工程課程教學實踐

CDIO教學大綱以能力培養為目標,將學生能力分為四類,包括技術知識和推理能力、個人的職業技能和職業道德、團隊協作和交流能力以及項目的構思、設計、實現和運作能力,力求全面地提高學生的綜合素質。

2.1 教學現狀

目前學生所表現出來的問題有如下幾方面:①知識體系不完整;②缺乏實踐;③課程體系理解不全面;④教材過于理論化等等。而核心問題只有一個就是知識體系不完整,這種不完整包括:①軟件體系結構不清晰——這個可以通過知識的積累來解決;②軟件工程方法不系統——這個可以通過完善實踐環節來解決,理解項目經理、設計師、程序員質量管理員、配置管理員等不同角色的分工和職責。

2.2 教學實踐內容

(1) 以小學期、課程設計為主導,以實際開發項目為核心,采取理論聯系實際、重實踐、重創新的多方位教學模式。

(2) 課堂教學過程中采用啟發式和立體式教學,通過立體式的知識體系的構建,讓學生懂得軟件開發所涉及的所有技術環節,其他課程如:操作系統、C++語言、嵌入式軟件、編譯原理等在軟件體系結構中的位置;讓學生懂得開發嵌入式軟件、開發應用軟件、開發驅動程序所需要掌握的知識和方法。

(3) 構建案例庫,通過案例講述操作系統的關鍵技術和應用實踐方法,注重培養學生的工程推理和解決問題能力,學生通過書寫各種工程報告提高探尋知識的能力。給學生以模板,讓學生了解實際開發文檔在開發中的重要作用。

(4) 構建軟件工程文檔體系,基于ISO9000和CMMI的要求構建與實際開發接軌的軟件開發文檔體系,如:軟件規格說明書、軟件開發計劃、需求分析報告書等等。

(5) 利用項目組形式組成開發實際場景,指導學生擔任軟件開發中的不同角色,培養學生團隊協作能力,和體驗不同開發階段所應具備的開發能力。

2.3 教學實踐核心內容

軟件工程課程是軟件開發的工程學和方法學,它具有其他課程不具備的典型特征,是長期軟件開發實踐過程中總結出來的原理和經驗,具有很強的實踐性。缺乏實踐的學生很難在短時間內對本課程有很好的理解。針對這種核心問題,以實際工程內容給學生以較深的感性印象并使其較為準確地理解。以多種工程“案例”為核心,并有完整的軟件工程文檔體系支撐,各個文檔中都包含著較為實際的工程內容,比如:項目的可行性研究報告中包含系統的功能說明、系統流程圖、數據流圖、數據字典、成本效益分析,而且不止一個方案,要包含幾種不同的方案。從而使學生在實際的文檔結構、內容組織、方案詳盡程度上來理解可行性研究階段的研究過程中所需要解決的問題。

3 建設網絡教學平臺

網絡教學平臺包括:電子教案、課后練習、實驗輔導、教學錄像等教學資源為學生提供課外自學的網絡環境;在線答疑、作業提交、網上留言為師生提供了實時和非實時兩種方式的交流互動平臺。同時網站隨時更新課堂上介紹的操作系統新發展動向和技術等相關資料。

4 結論

軟件工程課程設置的目的是讓學生知道軟件開發工程中所能遇到的問題,并且學會利用軟件工程方法解決實際問題。由于軟件開發是一個非常繁瑣的過程,這些問題是技術和工程結合在一起、交織在一起的,因此,學生在初次接觸這門學科時會有些不適應。但是,當對每一個開發階段、階段的產出物都有了了解之后,情況會大大改變,同時學生學習的興趣也大大增強。

參考文獻

[1]CDIO國際合作組織.The CDIO Standard [EB/OL]..

[2]蔡映輝.高等工程教育模式改革中的文化和諧觀念[J].理工高教研究,2008,27(2):6-9.

[3]劉亮軍,周景偉.淺析高等職業教育人才培養模式改革[J].中國科教創新導刊,2008,(22):22-23.

第7篇

關鍵詞:《軟件工程》 教學改革 理論教學 實踐教學

中圖分類號:S762.2 文獻標識碼:A 文章編號:1672-3791(2012)10(c)-0146-02

隨著社會信息化技術的普及和軟件產業的迅速發展,軟件產業成為信息產業中增長最快的領域,然而高端軟件人才的匱乏嚴重阻礙了我國IT企業的發展,因此提高軟件行業從業人員具備必要的軟件開發、維護與項目管理的能力尤為重要[1]。《軟件工程》是高校計算機相關專業開設的一門專業核心課程,旨在培養學生理解和掌握軟件工程的理論、技術和方法,應用工程的思維進行軟件開發、管理和維護。為了順應當前軟件工程教育國際化和工程化的發展的需求,高等院校需要切實加強軟件工程課程的創新與改革,這對軟件工程人才的培養至關重要。

當前《軟件工程》課程教學中存在的一系列問題,直接影響了教育質量和教學效果。具體表現為:教學內容重理論而輕實踐,不能有效地培養學生軟件開發技能[2];教學案例缺乏完整性和實用性,不能幫助學生從整體上全面理解軟件開發的各環節及其之間的關聯[3];實踐教學也缺乏系統性和針對性,不能將基本原理融入當前軟件實際案例中去講解,教學內容與軟件工程實踐有明顯的差距等。因此,迫切需要對教學體系進行改革,形成一個融基礎理論、實驗教學、工程實踐為一體的整體培養機制,讓學生的基礎知識、科學素養、專業知識、創新能力、工程能力和職業素質都得到全面均衡的發展[4]。本文將從理論教學、實踐教學以及教學評價幾個方面進行改革與探索。

1 理論教學探索與思考

為了滿足當前軟件工程教育國際化和工程化的發展要求,《軟件工程》教學以IEEE的軟件工程知識體系為基礎,結合基礎知識、先進技術和工程實踐等方面構建該門課程的知識體系。《軟件工程》課程知識體系分為基礎、應用、實踐三個部分。基礎部分為理論教學,根據教學目的和教學要求,采用案例及問題驅動等教學方法,講解軟件工程的理論基礎知識,包括軟件生命周期各個階段、軟件質量和軟件項目管理等核心內容,通過案例的分析,促進學生的獨立思考,提高其對理論知識的理解和掌握。應用部分是以當前流行的統一開發過程、面向對象技術和UML語言為核心,融入實際案例,Rational Rose、Visio、Project、SVN、Loadrunner等軟件工程工具和環境,使學生掌握當前先進的軟件工程方法與技術。實踐部分要求學生分組組建團隊協作完成一個軟件系統的開發,讓學生從“可實踐”軟件工程的角度學習和運用軟件工程的思想和現代技術解決軟件開發問題,擁有識別、分析和解決具體問題的能力。《軟件工程》課程知識體系如圖1所示。

單純地講授《軟件工程》的理論和方法顯得枯燥且難以理解,若能通過一些軟件開發案例對理論知識進行形象的表述,不僅能讓學生易于理解這些理論和方法,亦能建立軟件開發的系統化與工程化觀念和質量意識。那么如何收集經典案例以及采納何種教學方法是關系理論教學成敗的關鍵因素。首先案例的選擇與設計要有針對性,如結構化和面向對象,這兩種方法側重知識點不同講解所貫穿的典型案例應不同,其次案例的選取應是學生熟悉的領域且它的實用性能激發學生的求知欲和興趣。如在軟件工程技術方面,作者結合學生成績管理信息系統、宿舍水電費管理系統、教學管理系統等,論述需求分析、軟件體系結構設計、用戶界面設計、詳細設計和軟件測試等內容,重點討論基于案例的面向對象方法和組件技術。采用何種教學方法應根據具體的知識點而定,如以IBM初期系統開發失敗的緣由為例利用問題驅動法引出軟件工程的概念和原理;對于軟件開發工具Rational Rose的介紹則采用項目驅動法。因此,在理論教學中,把抽象的知識盡量形象化、案例化,采用引導式、探索式、討論式和交互式等教學方式營造融洽輕松的學習氛圍,鼓勵學生獨立思考,查閱資料,細心體會當前軟件工程的精髓。

2 實踐教學內容創新模式

應用部分和實踐部分均屬于實踐教學,在此教學過程中,實施項目驅動教學法,實驗設計以項目開發為主,模擬企業軟件的項目管理和開發過程,碰到問題困難,進行師生互動討論尋找解決方案,開發完成通過成果展示來進行教學評價,整個過程使學生初步體驗到一個軟件項目開發的全過程。實踐教學活動的流程具體如下。

(1)分配任務:第一次課,要求學生以項目小組(一般5~6人,自由組合,每個成員扮演項目開發過程中的不同角色)的方式組建開發團隊協同開發一個規模及難度適中的完整項目,要求按照正規軟件開發流程組織實施,完成項目開發過程中形成的分析、設計、編碼和測試文檔,同時將Rational Rose、Visio、Project及Loadrunner等軟件工具在實施過程中進行有效地應用。

(2)組建團隊:學生自愿組建團隊,選出組長,每組角色包括項目經理、系統分析員、軟件設計師、軟件開發工程師、軟件測試工程師等,組員項目角色可隨項目開發進度而調換。項目實施過程中采取組長負責制,負責小組的討論和項目實踐的安排,分配組員任務,各小組查資料,自選軟件項目,分析開發的各項任務的安排和溝通,制定項目的開發計劃。

(3)計劃可行性評定:授課教師審核各組項目及項目計劃實施的可行性,不行則指導小組重新選定軟件項目和制定項目計劃。符合要求,方可進入實施階段。

(4)項目實施階段:小組成員根據各自的任務查找資料,收集解決方法,定時討論交流,各個模塊間相互配合協調完成任務。包括軟件分析設計階段,完成軟件需求規格說明;設計軟件系統的總體結構;對功能模塊進行編程測試,完成項目實現編寫所有相關文檔,測試和調試代碼。整個實施過程由授課教師控制項目的進度和質量,同時,教師要充分發揮引導作用,讓學生在實踐軟件設計和開發技能的同時,通過協作培養學生多人之間的溝通能力和團隊協作精神。

(5)項目驗收:根據軟件開發流程的各個階段成果包括可行性分析報告、需求規格說明書、項目計劃書、總體設計報告、詳細設計說明書、軟件測試報告、項目開發總結報告等。項目驗收采用階段驗收分析設計文檔,每次均以小組的形式提交作業。教師根據提交的材料結合學生是否熟悉軟件常用技術和工具按照軟件工程管理方法進行評審,還要求各組之間互評,發現不足之處進行討論,提供給大家一個互相交流的機會。項目結束后,每組要組織答辯,先由小組長對項目基本情況及組員作簡要介紹,然后讓各組員對自身完成的任務進行PPT答辯,教師和其他同學針對該成員實際負責的部分進行提問。最后項目組提交系統和所有文檔。

3 教學評價體制改革

教學評價是課程教學的必要環節,在本次教學改革實踐中,將課程學習評價分成3個組成部分:理論考核占50%,項目實踐成績占30%,考勤、平時作業、實訓練習等占20%。項目實踐成績的評定包括小組成績和個人成績兩部分,各占50%。小組成績為小組中所有成員開發項目的考核成績,包括各階段成績的平均值與最終答辯成績;個人成績為小組成員在項目開發過程中個人的考核成績。度量因素包括個人分配工作量及難易程度、平時工作態度及項目匯報時表現等。這種評價體制充分調動了學生學習的主動性和合作精神,教學效果明顯。

4 結語

本文對《軟件工程》的課程教學進行了探索和改革,以IEEE公布的軟件工程知識體系為基礎構建了軟件工程課程知識體系,提倡理論教學與實踐教學并重。理論教學著重于經典案例的選取及教學方法的采納,理論教學不再是抽象的講授,而是貫穿案例的具體實踐操作,達到了理論與實踐的緊密結合。實踐教學以項目為驅動模擬企業軟件的項目管理和開發過程,引導學生積極思考和參與討論,教師由知識的灌輸者成為學習的引導者,學生由被動地接受教育變成主動地探索知識。實踐證明,本課程極大地提高了學生的學習興趣,取得了良好的教學效果。在今后的教學工作中,將進一步完善和實踐教學改革的內容,逐步使這門課程規劃化、工程化,取得更好的教學效果。

參考文獻

[1] 張海藩.軟件工程導論[M].5版.北京:清華大學出版社,2008:5-7.

[2] 董躍華,楊書新,李淑芝.軟件工程專業多元化實踐教學體系研究[J].江西理工大學學報,2009,30(3):53-55.

第8篇

關鍵詞:課程體系:核心課程;核心知識體系

計算機科學與技術學科雖然很年輕,但它已經成為一個基礎技術學科,在科學研究、生產、生活等方面都占有重要地位。近50年來,我國的計算機科學與技術專業教育在國家建設需求的推動下,從無到有,逐漸壯大,尤其是從20世紀90年代以來,更是高速發展,已經成為理工科第一大專業。

針對計算機科學與技術專業學生量大,社會需求面寬的現實,“十五”期間,教育部高等學校計算機科學與技術教學指導委員會編制了《高等學校計算機科學與技術專業戰略研究報告暨專業規范(試行)》(高等教育出版社出版,2006年9月第一版,以下簡稱為《規范》)。其中,“戰略研究報告”建議改變當前我國計算機科學與技術專業教育的趨同性,鼓勵辦學單位對畢業生的分類培養,取4個可能的方向,即計算機科學、計算機工程、軟件工程以及信息技術。《規范》參照Computing Curricula 2005,分別詳細給出了四個方向的核心知識體系,以及覆蓋它們的必修課程組示例。

《規范》體現出的“分類培養”精神得到了廣泛認同,人們普遍認為中國800個左右的計算機科學與技術本科專業點,按同一種模式或者培養方案進行教學是難以滿足廣泛的社會需求的,許多學校也希望得到分類培養的具體指導。但是,如何理解和實現“信息技術”等新的專業方向的教育,如何利用已有的基礎,更好地實踐《規范》,成為大家關注的問題。

為了能更好地利用現已建成的國家、省部級精品課程、精品教材等優質資源,希望能夠按照4個專業方向公共要求來構建一些基本課程,每一個方向都可以通過在這一組課程的基礎上進行擴展來形成符合《規范》的完整的專業方向教學計劃。這一組課程是“耳熟能詳”的,無論是從師資還是教材的角度,在開始走向規格分類實踐時,也是一種現實做法。

一、核心課程選取的原則

本項研究的基本目的是要推薦一組課程,當辦學單位希望按照《規范》描述的知識結構制定自己的教學計劃時,無論四個方向中的哪一個,都能夠比較方便地在這組課程的基礎上進行擴充而實現。顯然,符合這個要求的一組課程不是惟一的,我們著重考慮了如下幾點原則。

1.體現公共要求

《規范》將計算機科學與技術專業劃分成4個專業方向,雖然他們有著不同的問題空間、能力要求、知識結構和課程體系,但還是有共性的部分,這也是作為同一個專業的不同方向所決定的。公共核心課程應該能夠將這些公共的要求涵蓋進去,實現在課程層面上對公共知識體系、專業培養公共要求和基本特征的體現。

2.有利于構成優化的課程體系

公共核心課程需要與其他相關課程一起才能構成完整的教學計劃,所以,這些課程需要易于與相關課程結合,構成不同專業方向的課程體系。

同時我們注意到,近些年來,許多學校在制定新的教學計劃中,采用了設置分級平臺的基本框架。例如,要求教學計劃由公共基礎、學科基礎、專業基礎等組成。考慮到計算機科學與技術專業對應到計算機科學與技術學科,這些課程可以適當照顧到學科的要求,構成一個既照顧到學科,又照顧到專業的基礎平臺,給人們制定有特色的教學計劃提供一定的基礎,使得人們能夠方便地構建完整的、全局優化的專業教育課程體系。

3.充分考慮學時的限制

由于公共核心課程相當于學科、專業平臺的基本內容,所以,只能做一個較小集合,而且課程的學時數要盡可能小,目標在于體現專業教育的最基礎要求,同時給具有特色的完整的教學計劃的制定留有足夠的空間。特別是近些年來,不少學校已經將教學的總學時數降到2500學時以下。所以按照20%計算,將公共核心課程的總學時控制在500學時以內。

4.盡可能成熟的課程

計算機科學與技術專業開辦50余年來,積累了豐富的辦學經驗,一些課程的建設取得了很好的成果,已經具備良好的基礎,這些課程將在專業教育中起到核心、骨干作用,將這些課程進行適當改造后構成公共核心課程,有利于充分利用已有的優質資源,迅速提高整體辦學水平。所以選取的課程應該是“耳熟能詳”的成熟課程。

5.體現本專業教育基本特征

課程要體現學科教育的一些基本特點。例如,雖然計算機科學與技術學科涉及到計算機理、工程實現和開發利用,但對大多數人來說,計算機科學與技術學科是一個以技術為主的學科,特別是在本科教育層面上更是如此。所以課程要對技術和學生的技能訓練有較好的體現。除了學科抽象、理論兩大形態使得初學者在理解上有一定的困難,需要通過實踐去深入體會外,還要考慮社會要求本專業的學生能夠更好地去實現一些系統的研究、構建和維護。因此,選擇的課程應該在加強學生理論聯系實際能力的培養上有引領作用。此外,在本學科發展異常快速的時候,這些課程相關的內容應該是成熟的、基礎的,有利于學生可持續發展能力培養的。

二、核心知識體系

這里給出計算機科學與技術專業公共核心知識體系,力求從不同專業方向的公共需求出發,給出該專業的學生應該具備的一些基本知識,我們并不試圖包括各個專業方向教育要求的全部知識,每個專業方向都需要在此基礎上按照專業方向的教育需要增加所需要的知識,以構成完整的專業方向知識體系,其具體內容可以參考《規范》。由于是基本知識,是學生必須掌握的,所以,沒有包含推薦的選修知識。該知識體系共包括8個知識領域,39個知識單元,共342個核心學時。其中,

(1)離散結構(DS)60核心學時,包括函數、關系與集合、基本邏輯、證明技巧、圖與樹。

(2)程序設計基礎(PF)67核心學時,包括程序基本結構、算法與問題求解、基本數據結構、遞歸、事件驅動程序設計。

(3)算法(AL)28核心學時,包括基本算法和分布式。算法。

(4)計算機體系結構與組織(AR)60核心學時,包括數據的機器級表示、匯編級機器組織、存儲系統組織和結構、接口和通信、功能組織。

(5)操作系統(OS)32核心學時,包括操作系統概述、操作系統原理、并發性、調度與分派、內存管理、設備管理、安全與保護、文件系統。

(6)網絡及其計算(NC)48核心學時,包括網絡及其計算介紹、通信與網絡、網絡安全、客戶,服務器計算舉例、構建Web應用、網絡管理。

(7)程序設計語言(PL)13核心學時,包括程序設計

語言概論和面向對象程序設計。

(8)信息管理(IM)34核心學時,包括信息模型與信息系統、數據庫系統、數據建模、關系數據庫、數據庫查詢語言、關系數據庫設計、事務處理、分布式數據庫。

按照各個方向核心知識結構的要求,公共核心知識體系覆蓋計算機科學341核心學時的內容,覆蓋率為60.9%,覆蓋計算機工程246核心學時的內容,覆蓋率為44.7%:覆蓋軟件工程199核心學時的內容,覆蓋率為40.3%覆蓋信息技術136個核心學時,覆蓋率為48.4%。

三、核心課程

公共核心課程共包括程序設計、離散數學、數據結構、計算機組成、計算機網絡、操作系統、數據庫系統等7門,這些課程的名稱都采用了盡量一般化的處理,即后面沒有諸如“基礎”,“原理”或者“技術”之類的字樣,為學校開設具體課程留有空間,學校可以根據自己課程的特點添上適當的限定,進一步體現自己的辦學特色。

表1給出了各門課程所含的必修知識單元和所需要的學時數,和各個學校相應課程的實際教學時數相比,其中有的課程必修學時數多一點,有的少一點。所需要的總課時為448。希望各個學校在滿足教學基本要求的前提下,根據本校的具體情況,做出適當的調整,可以通過強調某些內容來體現自己的特色。

四、專業方向必修課程示例

按照各個專業方向必修知識體系的要求,以7門公共核心課程為基礎,構建相應方向的必修課程。特別需要強調的是,這里給出的仍然只是“示例”,各個辦學單位可以根據自己的情況設計出更具特色的必修課程,并制定出恰當的教學計劃。

計算機科學專業方向的必修課程示例:計算機導論、程序設計基礎、離散結構、算法與數據結構、計算機組成基礎、計算機體系結構、操作系統、數據庫系統原理、編譯原理、軟件工程、計算機圖形學、計算機網絡、人工智能、數字邏輯、社會與職業道德。15門課程共計776學時。

計算機工程專業方向的必修課程示例:計算機導論、離散數學、程序設計基礎、數據結構、電路與系統、模擬電子技術、數字信號處理、數字邏輯、計算機組成原理、計算機體系結構、操作系統、計算機網絡、嵌入式系統、軟件工程、數據庫系統、社會與職業道德。16門課程共計理論學時920學時。

軟件工程方向必修課程示例:軟件工程專業導論、程序設計、面向對象方法學、數據結構和算法、離散數學、計算機組成、操作系統、計算機網絡、數據庫、工程經濟學、軟件工程、軟件代碼開發技術、人機交互的軟件工程方法、軟件設計與體系結構、軟件質量保證與測試、軟件需求分析、軟件項目管理。16門課程共計920學時。

信息技術方向必修課程示例:信息技術導論、離散數學、程序設計、數據結構、計算機組成、計算機網絡、操作系統、軟件工程、數據庫系統、應用集成原理與工具、Web系統與技術、人機交互、面向對象方法、信息保障和安全、信息系統工程與實踐、系統管理與維護、社會與職業道德。17門課程總計920學時。

五、結語

《規范》將“核心知識結構”作為開辦相應專業方向必須的要求,可以用不同的課程組合來覆蓋,《規范》中給出的“核心課程”只是這種覆蓋的一個“示例”,這里給出的是另一個“示例”。事實上,這也是《規范》所鼓勵的。這里的“公共核心課程”并不是《規范》中四個“核心課程”集合的簡單交集,而是根據對四個方向的理解,對它們公共核心知識單元的一個課程覆蓋。是每個專業方向公共的必修課程,而不是任何一個方向完整的必修課程集合。

第9篇

關鍵詞:校企合作;人才培養;實踐教學;人才培養;軟件工程

中圖分類號:G646 文獻標志碼:A 文章編號:1674-9324(2016)48-0024-03

一、引言

軟件工程是一個新興專業,主要目標是培養工程型、應用型的專業軟件人才。隨著素質教育改革的不斷推進,軟件工程專業的建設也面臨著全新考驗。軟件工程建設重在實踐,只有在不斷的實踐中才能提升學生的技術和技能,為社會提供適用的專業軟件人才。本文結合近年來我院軟件工程專業的建設實踐,探討校企融合下應用型軟件工程實踐教育模式的改革,旨在培養具有動手實踐能力和創新意識、能很好地適應市場需要的高素質軟件工程應用型創新人才。

二、應用型軟件人才培養模式

軟件工程專業以計算機科學與技術學科為基礎,強調軟件開發的工程性,要求學生在掌握計算機科學與技術方面知識和技能的基礎上,進一步熟練掌握從事軟件需求分析、軟件設計、軟件測試、軟件維護和軟件項目管理等工作所必需的基礎知識、基本方法和基本技能,突出對學生專業知識和專業技能的培養[1],使學生成為能夠從事軟件開發、測試、維護和軟件項目管理的高級專門人才。

1.強調專業實際應用能力的培養。通過高校、企業雙方的合作融合,引入實訓機制,形成以“3+1”模式為框架、產學一體化為特色的應用型軟件工程專業人才實踐與創新能力培養平臺,并把在企業培養的1年時間分散在學生大學四年的學習過程中,使學生能不斷接觸軟件行業與企業[2],循序漸進,逐步加深學生對行業的認識與理解。

2.目的是形成“工程化教學―課程實驗教學―基地實習實訓―真實項目開發”的培養過程,建立“課程實踐―項目實訓―項目開發”的教學、實訓模式,引導學生樹立系統、科學的工程項目概念。

3.由學校和企業雙方共同研究制訂實踐教學方案、共同實施,目的是提高學生的動手能力以及解決實際問題的能力,使學生畢業后能很快適應軟件企業的要求[3]。

4.每學年根據教學計劃以及教學實施的具體情況,在大一至大三期間,請合作企業選派資深工程師來校開設相關技術講座,并選擇部分專業課程由合作企業選派師資負責課程實踐教學、實訓的具體實施,學生在大四的時候再集中到合作企業進行強化訓練。該專業學生4學年期間的實踐活動簡表如下表1。

通過改革軟件工程專業的人才培養模式,結合“3+1”合作模式,借助企業的平臺,按學期逐步推進、鍛煉和提高學生的實踐能力和綜合素質,鍛煉學生適應社會的需要,使學生能不斷接觸軟件行業與企業,使其觀念及早融入社會,循序漸進地加深學生對軟件行業的認識與理解[4],逐步形成“課程實踐―項目實訓―項目開發”的教學、實訓模式。

三、實訓體系構建

通過高校、企業雙方合作融合,將實訓引入軟件工程專業的本科教學中,探索校企融合下應用型軟件工程教育模式的改革。以JAVA專業實訓為例,我們的實訓目標是提高學生的動手能力以及解決實際問題的能力,使學生畢業后能盡快適應軟件企業的要求。在企業項目經理和學院教師的共同帶領下,通過實訓中的具體項目,將原來分散的專業知識系統化,把整個項目的實施過程,貫穿于學生理論知識學習的始終[5],使學生獲得綜合性應用鍛煉,進一步了解標準軟件開發過程與規范,掌握軟件開發的基本技能,鍛煉其團隊協作精神。

1.實訓內容和階段。我們的實訓分兩個階段進行:第一個階段的校內專業實訓為基礎實訓,一般以基礎性的、業務簡單的項目為案例,訓練重點放在編碼實現上。第二個階段的企業工程實踐為大中型項目實訓,一般由合作企業從其案例庫中選擇其之前實踐過的真實項目作為案例,內容涵蓋一個軟件項目開發的整個生命周期,目的是通過項目的強化訓練過程,提升學生的基礎知識、基本技能和基礎技術,熟悉企業級的運行環境和框架。兩個階段的實訓都貫穿軟件項目開發的整個生命周期,包括項目管理、需求分析、技術儲備、系統設計、編碼、測試、提交、項目評審等階段,但第一個階段側重于技術儲備,體驗軟件項目的開發過程,培養學生掌握軟件項目的調試方法和技術[6]。以JAVA實訓為例,在技術儲備階段,第二個階段側重于項目的開發流程和各類項目文檔,培養學生養成良好的編程習慣、了解行業前沿應用狀況和項目開發的業務流程和知識,提高學生的表達、溝通和團隊協作能力,進而養成良好的職業習慣。具體實訓的內容和階段如下圖1所示。

通過項目的實戰訓練過程,提升學生的基礎知識、基本技能和基礎技術,熟悉企業級的運行環境和框架。通過完成案例項目的需求分析、系統設計、編碼、集成、測試和項目評審過程的實踐,了解軟件項目的開發流程和規范。

2.實訓目標。我們的實訓目標按階段的不同,具體內容也有所區別,要求學生實現的分段目標的側重點也有所不同。

(1)第一個階段的校內短期實訓:該階段屬于基礎實訓,在實訓過程中引入單元測試技術、軟件工程、質量管理和ISO體系概念,讓學生了解到企業軟件開發對質量的要求和管理方法,提高學員對自己編寫的軟件的測試和調試能力,修正和增強學員對軟件測試和質量的意識。在實訓過程中引入新的Web標準、HTML5、CSS3、Canva、SVG等,為學生將來進入互聯網或移動開發領域,進行基礎知識、基本概念等的技術儲備。以JAVA實訓為例,該階段的實訓目標如下表2所示。

(2)第二個階段的企業工程實踐:該階段為大中型項目實訓,在大三第二學期校內短期的基礎實訓、學生技術發展規劃的基礎上,按照Java方向、Android和PHP前端開發三個不同的專業方向,在合作企業實訓基地分組進行項目實訓。期間結合加強項目訓練和創新創業指導,培養學生的敬業精神、團隊精神;以及如何把個人價值觀和公司的價值觀進行有效的銜接。以JAVA實訓為例,該階段的實訓目標如表3所示。

3.預期成效分析。通過校企融合,借助于校企合作平臺,探索應用型軟件工程實踐教育教學模式:一是能使學生獲得實踐經驗,提高學生的綜合素質和就業競爭力;二是可為學生提供更多的與企業接觸機會,創造就業機會[7],擴大學生的就業渠道;三是可以為高校雙師型教師的成長提供平臺和環境。

(1)提高學生的綜合素質和就業競爭力。有關統計信息表明:我國軟件專業畢業生,無論是本科軟件工程專業,還是高職軟件專業,其就業率和專業對口率都不是很高;另一方面,企業又普遍反映找不到合適的軟件人才。之所以會出現這樣的“兩難”局面[8],糾其原因在于目前高校軟件專業的培養與企業對軟件人才的需求不對稱,學生在學校所學的知識和技能無法緊跟市場,實踐動手能力方面相對較弱,與企業直接頂崗的要求存在比較大的差距。校企合作模式,能在一定程度上彌補這方面的不足。

(2)提升學生的就業能力,擴大學生的就業渠道。軟件工程的發展與信息社會的發展和需求是息息相關的,而目前高校該專業的教育模式仍然集中于過多過泛的基礎教育,教學方式仍然沿襲以理論講授為主的模式,導致學生的實踐能力與理論能力失衡[8]。因此,我們通過校企融合,整合優化培養方案,圍繞培養目標,深化軟件人才培養模式改革。從第二學年開始,每個學年度請合作企業的資深工程師為同學們進行實踐訓練,通過實訓,使同學們逐步對大型軟件的開發流程和方法有一個初步的了解,體驗軟件開發的工作氛圍,逐漸樹立基本的職業觀念,以便到畢業時,能很好地適應軟件開發相關技術崗位,提升就業能力,創造就業機會,擴大學生的就業渠道。

(3)培養“雙師型”教師。在校企合作的基礎上,選派部分教師到企業參與相關項目開發實踐,培養教師的“雙師”素質,提升教師的工程經歷和軟件項目設計、開發經驗,了解大中型軟件項目設計開發過程,提高教師實際工程研發能力,為雙師型教師的成長提供平臺和環境,使專業教師得到工程能力的鍛煉和提高,為以后“任務驅動、項目導向”培養模式的開展提前做好師資儲備。

此外,通過校企融合模式,培養應用型軟件工程人才,還可為企業培養更多優秀的應用型軟件人才。

四、結語

大學培養出來的軟件人才在層次上來說應該是中高級的,他們受過良好的基礎教育和理論教育,但由于傳統的閉門造車式的培養模式,缺少實踐的機會,而且所教授的理論和技術跟不上企業的現實需求,導致傳統學歷教育模式培養出的軟件工程專業學生往往是理論知識有余而實踐操作經驗不足,畢業生不能夠馬上和完全適應企業的需要。因此,當前高校軟件產業人才培養與實際需要存在著一定程度的脫節,學歷教育與不斷變化的市場需求的矛盾相當突出。而校企融合模式下應用型軟件人才培養模式可以在一定程度上緩解這一矛盾,為企業培養更多優秀的應用型軟件人才。

參考文獻:

[1]柳嬋娟,鄒海林.基于校企合作的應用型軟件工程人才培養模式研究[J].計算機教育,2011,(24):9-12.

[2]張廣泉,楊季文.面向校企合作的軟件工程人才培養模式探討與實踐[J].計算機教育,2008,(21):29-32.

[3]張麗.軟件工程本科專業校企合作人才培養模式實踐[J].農業網絡信息,2015,(8):137-139.

[4]徐洪智,覃遵躍.校企合作共建軟件工程專業實踐教學體系[J].實驗室研究與探索,2013,32(6):128-130,160.

[5]王愛民,谷川.軟件工程專業校企合作實踐教學模式研究[J].實驗技術與管理,2012,29(1):143-145.

[6]范會聯,仲元昌.基于項目驅動的軟件工程課程教學改革探索[J].教育與職業,2013,(5):147-148.

第10篇

關鍵詞:軟件工程;培養方案;課程體系;從業競爭力

中圖分類號:TP311.5-4

信息產業是國家國民經濟和社會發展“十二五”規劃綱要中明確提出重點扶持的戰略性新興產業,其中軟件產業又是國家進一步鼓勵和優先發展的產業。軟件產業及軟件研究、教育機構不僅需要大量的軟件專業人才,其它產業與機構也普遍設有軟件崗位。軟件工程本科專業旨在培養符合國家需要的軟件工程專業高級人才,具有廣闊的發展前景。要使軟件工程專業高效地培養出學生實際工作能力,又能為學生終身學習和人生發展奠定良好的基礎,需要對軟件工程專業培養模式進行創新。

1 學制設計與改革

對專業的選擇是在學生進入大學前進行的,此時學生通常對專業內涵和特征的認識還比較模糊,對人生規劃還不太清晰。上學以后,隨著專業學習的深入,部分學生會出現專業興趣不濃、學習積極性不高的現象。另一方面,也有部分學生會對軟件工程專業興趣日漸濃厚,加上專業基礎好,學習能力強,學習又用功,在校前幾年就能夠掌握較多的專業知識并具備就業能力,希望盡早發揮年輕優勢就業或創業。但是,按照現行的學制安排,學生考入軟件工程本科專業后需要進行為期四年教育,考核合格后方能畢業。由于四年本科教育體制時間跨度較大,中間又缺少可供學生選擇的出口,致使這兩部分學生的個性化發展受到限制。

如果能將學制改為專、本、碩連讀的六年制,則可先進行兩年基礎知識教育,然后在大學二年級末,根據志愿和考核對學生進行專、本分離,進入專科學習的學生在三年級進行后續的專科教育,考核合格后就可畢業就業;而進入本科學習的學生,則繼續進行本科教育,在三年級末再根據志愿和考核進行本、碩分離,留在本科的學生繼續進行后一年的本科教育,考核合格后畢業;進入碩士研究生教育的學生,再繼續進行后續三年的碩士研究生教育,考核合格后畢業。專、本分離和本、碩分離的考核,可以按照平時各科成績加權計算,不單獨進行考試,這樣的考核節約資源,也更客觀、全面,同時又能激勵學生平時學習。考核后,符合進入本科學習條件的學生也可志愿申請加入專科學生序列;符合進入碩士研究生學習條件的學生也可志愿申請留在本科學生序列,這樣能夠為優秀學生提供更多選擇機會,也有利于拔尖人才脫穎而出。按照國家現行機制,專、本分離考核中未能進入本科學習的學生,仍然可以通過專升本機制進行第二次升本競爭,并可另外選擇自己喜歡的本科專業和院校;而在上述本、碩分離考核中未能進入碩士研究生教育的學生,也可在本科畢業時參加全國研究生考試,重新選擇自己喜歡的碩士專業和院校。

上述的學制設計,使學生在上學期間具有了多次競爭性選擇機會,既能滿足部分學生提前就業的要求,又能實現部分學生繼續深造的愿望。該設計賦予學生多次調整人生規劃的機會,有利于學生及時調整學習方向,舒展個性,發揮優勢,最大程度激發學習的主動性和積極性。

上述學制設計其管理的復雜性會略有增加,但對現有教師編制、課程設置和教學計劃影響不大,因而具有較強的操作性;但是,學制的改變需要申請和審核,這些工作具有一定工作量和復雜性。

2 專業改革與創新

軟件工程屬于一級學科,知識繁雜,本科四年不可能學完所有知識。實際上,從事軟件工程專業的工作崗位有多種,每一崗位所需的知識和技能不同,所以本科四年的學習應當有所側重。根據軟件工程專業的社會需求和學校特色,軟件工程專業可以開設不同的專業方向和軟件應用領域,讓學生根據自己的特點和興趣進行選擇,這樣能夠更有效地獲取該專業方向和軟件應用領域的從業能力。例如,軟件工程專業方向可以劃分為軟件開發、軟件測試、軟件項目管理、軟件配置管理、軟件維護等專業方向,軟件應用領域可以開設動漫、財務、政務、項目管理等領域。選擇學習個性化的軟件工程專業方向和軟件應用領域,既要選修該專業方向和應用領域的專業課,也包括從事該領域的畢業設計。通過有的放矢的理論學習和動手實踐,學生能夠更有效地掌握該專業方向和軟件應用領域較強的專業知識和技能,獲得較強的工作能力。例如,以下是幾種軟件應用領域與專業方向的組合

2.1 制造業ERP軟件維護方向

該方向主要培養現代先進制造業ERP軟件維護工程師,該崗位需要理解現代先進制造業的基礎知識,掌握現代先進制造業ERP軟件的實施、調整、維護、管理和二次開發知識與技能。我國已經成為世界制造業大國,ERP軟件已成為現代化先進制造業主要應用軟件,幾乎涉及到企業各個部門和所有運作流程,全國每年都需要大量的ERP維護、銷售、實施和培訓工程師。

2.2 大型數據庫管理與維護方向

該方向主要培養大型數據庫管理員。數據庫管理員負責數據庫管理、備份、調整、維護和應用開發等日常工作,是機構信息中心的核心業務工程師。數據庫是金融、物流、制造、銷售等行業和部門的命脈,也是云計算核心,每年都需要大量的數據庫管理員。

2.3 手機應用軟件開發方向

該方向主要培養手機應用軟件開發工程師。由于蘋果、谷歌和微軟公司相繼推出手機應用軟件商店,實現了手機應用軟件開發和應用之間直接對接,使得國內手機應用軟件開發工程師能夠和國外同行在相同條件自由競爭,創業和收入具備有很大的拓展空間,促使了該職業從業人數呈現爆炸式增長。

3 課程體系調整與改革

根據上述學制、專業方向和軟件領域的設計,需要對課程體系進行相應的調整和改革方能實現上述培養目標。課程體系調整和改革的基本原則是,在遵循國家教委對課程體系要求的基礎上,參考軟件工程教指委組織編寫的軟件工程規范以及IEEE SWEBOK、SE2004,并結合中國軟件產業實踐和學校辦學方針及辦學實際。

首先需要調整的是數學和英語課程。由于軟件工程專業對這兩門課程具有特殊的依賴性,建議入學前兩年利用學生年齡優勢和高中的學習慣性突擊強化數學和英語教學,教學目標定位為使多數學生能夠通過研究生入學資格考試。強化數學和英語教育,不僅對后續的軟件工程專業學習和從業有特殊的重要性,也為學生進一步深造或擇業創造了條件。對于中外聯合辦學的軟件工程專業,強化英語和數學的必要性則是顯而易見的。

由于強化了數學和英語,勢必需要減少一些其他課程或其他課程的課時。首先可以考慮將一些課程合并,以達到精簡課程內容和減少課時的目的。有些課程原先是針對計算機專業開設的,現在對軟件工程專業講解,則講解的角度和內容應該有所不同。例如,可以在第一學年針對軟件工程專業開設一門新課《軟件工程引論》,系統介紹本專業基本情況和基本知識,使學生對本專業有概括性的了解,同時掌握對計算機、網絡以及常用工具軟件的使用,以融合并代替現有的《計算機基礎》、《計算機導論》、《計算機組成原理與體系結構》、《計算機基礎綜合實驗》等課程。

軟件工程專業學生在大學學習的第一門程序設計語言建議為C#或JAVA,因為它們具有現代編程語言的要素和優點,簡潔實用,既能引起學生學習的興趣,又能與后續的面向對象程序設計和應用軟件開發等課程無縫銜接。C語言、匯編語言和嵌入式開發最好匯集為一個課程模塊,放在第三學年針對嵌入式開發方向的學生集中講,這樣能夠使學生學習的目標性更強,又能現學現用,立竿見影,收到較好的學習效果。

在畢業設計中,學生應當在軟件項目團隊或模擬團隊中擔當一個項目角色,參與開發一個軟件項目,完成項目指定角色的任務。模擬軟件項目開發團隊可由參加畢業設計的研究生、本科生和專科生混合搭配,由研究生或老師擔當系統分析師或項目經理角色,本科生擔當主程序員、測試設計或程序管理角色,專科生擔當程序員或測試員,該團隊在老師的指導下模擬實際項目開發過程進行開發。

除了在課程體系結構方面進行調整外,還需要從課程教學內容、教材編寫、教學方法、考核方法、成績評定上體現學校的辦學理念和辦學特色。

4 結束語

在我國,綜合性和理工科大學基本都開設了軟件工程本科專業,對軟件工程專業教育進行了多方面的研究和實踐探索,出現了百花齊放局面,但從業界對畢業生的質量反饋來看,需要改進地方還很多。各高校在不同程度上都具有自己的辦學特色和優勢,在軟件工程專業創出特色形成優勢互補,能夠促進軟件行業的繁榮。隨著國內外高校生源爭奪日益激烈,在軟件工程專業上辦出學校的特色和優勢,不僅關系到畢業生的就業競爭力,也會涉及到學校該專業的興衰存亡。

參考文獻:

[1]王秀彥,王超.歐洲高等教育區改革的新趨勢及啟示[J].中國高等教育,2013,(8):61-63.

[2]黃杰等.卓越軟件工程人才產學研用培養新模式的探索與實踐[J].計算機工程與科學,2011,33(A1):70-73.

[3]ACM/IEEE Software Engineering Coordinating Committee.Guide to the Software Engineering Body of Knowledge[EB/OL].[2013-8-8].http:///.

[4]駱斌等.國際軟件工程專業碩士研究生教程初探[J].計算機工程與科學,2011,33(A1):41-44.

[5]Integrated Software & Systems Engineering Curriculum(iSSEc) Project.Curriculum Guidelines for Graduate Degree Programs in Software Engineering[EB/OL].[2013-8-8].http:///.

作者簡介:趙風景(1953-),男,教授級高級工程師,專業方向:軟件工程。

第11篇

關鍵詞:軟件工程;課程體系;培養方案

軟件工程教育兼屬科學教育和工程教育范疇,軟件工程的科學教育屬性主要是引導學生對人類意識與智慧進行科學理解、增強運用軟件本質特性(構造性與易演化性)和解決具體問題的能力;而軟件工程的工程教育屬性主要是引導學生綜合應用計算機科學、數學、管理等科學原理,借鑒傳統工程的原則、方法,提煉和固化知識,通過創建軟件來達到提高質量、降低成本的目的。然而,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與中間件等認證課程納入本科教學計劃中,全面體現學生的“多證多能”。

第12篇

關鍵詞:大數據時代;地方應用型高校;軟件工程專業;課程體系

0引言

大數據作為繼云計算、物聯網之后IT行業又一顛覆性的技術,備受人們的關注,大數據技術正從概念轉向實際的應用,涌現出越來越多的大數據技術應用成功案例,大數據的價值也在迅速增長。2015年,中國大數據市場規模達到115.9億元人民幣,增速達38%,預計2016~2018年中國大數據市場規模將維持40%左右的高速增長[1]。大數據時代的到來,使得軟件行業對人才的應用能力和綜合素質提出了更高的要求。咸陽師范學院作為咸陽市地方應用型高校以服務咸陽地區經濟社會發展為己任,肩負著培養滿足咸陽地方社會需求軟件人才的使命,需要把培養面向大數據時代的軟件工程專業人才作為戰略任務來抓。而課程體系的建設是軟件工程專業人才培養體系最重要的一個方面。本文通過分析我院傳統軟件工程專業課程體系,以及大數據時代下企業對軟件工程專業人才要求,找出大數據時代下軟件工程專業應用型人才中課程體系存在的問題,探索出我院面向大數據環境的應用型軟件工程人才中課程體系的建設。

1我院軟件工程專業傳統的課程體系

自我院計算機系成立以來,軟件工程專業一直是我院重點建設專業。2013年,“‘3+1’校企合作軟件人才培養模式創新實驗區”被確定為省級人才培養模式創新實驗區。一直以來,該專業以培養“厚基礎、強能力、高素質”應用型人才的為培養目標,以企業、市場需求為導向,重視實踐、技能和應用能力的培養,與尚觀科技、中軟國際、華清遠見、藍鷗科技等西安多家企業聯合,采取3+1嵌入式校企聯合教育培養模式,將課程教學、工程實踐、行業理念進行無縫結合。課程體系是一個專業所設置的課程相互間的分工與配合[2],主要反映在基礎課與專業課,理論課與實踐課,必修課與選修課之間的比例關系上[3]。地方應用型本科院校的課程體系設計既要體現基礎知識的傳授,也要體現實踐能力的培養,同時還要考慮學生的職業能力規劃發展問題。我院2013-2015級軟件工程專業課程體系結構圖如圖1所示。圖12013-2015級軟件工程專業課程體系結構圖從圖1可以看出通識教育必修課程的教學階段共3個半學年,主要涉及思想政治基礎知識、體育、人文歷史、外語應用能力等;相關學科基礎類課程主要包括高數、線性代數、數字邏輯等數學類課程;本學科基礎類課程主要涉及程序設計語言、計算機網絡、操作系統、數據結構、計算機組成原理等;專業技能教學階段強調對學生工程性、實用性、技術性和復合型能力的培養,主要安排專業必修課程和專業選修課程。專業必修課程包括面向對象程序設計、軟件工程、數據庫原理與應用、軟件設計與體系結構、算法分析與設計等,專業選修課程包括Web軟件開發、Linux系統應用程序開發、移動終端開發等。根據教育部專業教學指導委員會軟件工程行業規范[4],本著“輕理論,重實踐”的原則,我院在一定程度上壓縮理論課課時,增加實踐課課時,優化專業課程體系結構。我院2015級軟件工程專業的人才培養計劃中,各類課程學分設置與所占比例。

2大數據時代企業對軟件工程專業人才的要求

大數據時代所需要的人才是一定擁有數據處理、分析技術的,也就是對數據有敏銳的直覺和本質的認知、能夠運用統計分析、機器學習、分布式處理等技術,從海量、復雜的數據中挖掘出有用的信息,以清晰易懂的形式傳達給決策者,并創造出豐富有價值的專業人士[5]。在大數據時代下,對軟件專業人才培養,應具備以下四個方面的技能。(1)具有厚實的數學、統計和計算機學科的相關知識,能夠根據具體案例大數據分析任務的要求,運用大數據處理、分析平臺,收集整理海量數據并加以分析,挖掘出有價值的信息。(2)掌握大數據處理技術及可視化工具,能根據具體任務的需求,對數據進行選擇、轉換、加工等處理操作,采用有效方法和模型對數據進行分析并形成數據分析報告,用易于用戶理解的方式,提供科學的決策依據。(3)熟悉行業知識、專門業務及流程,將大數據技術和企業文化相結合,充分利用大數據分析處理的結果,挖掘出海量數據中隱藏的價值并應用于企業市場領域。(4)團隊合作精神,大量數據的收集整理、存儲、分析和處理,一個人是很難完成的,需要一個由團隊成員合理分工、共同協作完成。

3大數據時代我院軟件工程專業傳統的課程體系存在的問題

地方高校一直以來受傳統的“學術型”、“研究型”人才培養模式的影響較大,形成了適合于“精英教育”為培養研究型人才的課程體系,無法適應以工程實踐能力、創新創業意識、新技術新方向為目標的人才培養,課程體系中理論教學占主導地位,實踐教學往往處于次要地位[6]。而目前處于大數據時代,信息技術的不斷創新、企業需求不斷變化、綜合型人才需求巨大等因素的影響下,傳統的培養研究型人才的課程體系,無法適應大數據時代以工程實踐能力、創新創業意識、新技術新方向為目標的人才培養。通過了解大數據環境企業對軟件工程人才的要求,分析我院2013-2015級軟件工程專業人才培養課程體系結構,發現存在以下問題:(1)缺少大數據技術方面的課程。傳統的課程體系中主要包括軟件工程專業一些傳統的課程,如數據結構、軟件工程、軟件體系結構等,而且課程內容較陳舊,所開設的一些應用軟件的學習不能緊密貼合行業和技術發展,軟件工程專業教育必須適應互聯網時展和大數據技術的需求,關注企業發展及大數據系統的建設問題,以滿足企業對應用型人才的需要。(2)實踐類課程學時所占比例較少。我院2015級軟件工程專業實踐類課程占總學時的10.8%,是因為傳統的課程體系注重知識傳授,而忽略了學生解決問題、動手能力的提高。地方高校在人才培養中重視理論內容、計算機編程能力,而忽略學生探索能力的培養,這些都不利于學生對新技術、新方向發展的把握,學生難以應對各種層出不窮、錯綜復雜的海量數據,很難挖掘出隱藏的數據價值并有效利用。(3)課程體系結構設置方面,一是存在通識教育類課程教學階段持續時間長,一直到第7個學期,這就影響了后面專業類課程的學習;二是專業基礎類分為專業必修和選修,沒有從課程教學階段不同來劃分,不能體現課程先后的銜接關系。

4大數據時代我院軟件工程專業課程體系建設改革

在大數據時代,軟件工程專業教育必須適應企業發展和大數據行業的需求。教學內容的設置應與行業需求接軌,根據我院學生特點調整2016級軟件工程專業課程體系。具體做了以下幾點的調整。(1)課程體系結構更合理。一是通識教育類課程的調整。一方面將教學階段全部調整到第1、2學年完成,這樣在第3學年學生就可以重點學習專業類技能課程;另一方面此部分增加了大學生心理健康和創新創業教育課程,主要可以加強學生團隊合作精神的培養。二是專業類課程結構的調整。將專業類課程分為專業(學科)基礎課程和專業技能課程兩大類,專業(學科)基礎課程主要包括數學類課程、計算機導論、程序設計語言、數據結構、操作系統、軟件工程、運籌學、數據分析與處理。專業技能課程又分為專業核心課程和專業方向課,專業核心課程包括面向對象程序語言類、軟件設計模式、算法分析與設計、軟件測試等軟件工程專業要求的核心課程,而專業方向課分為3個方向:大數據分析、Web技術應用、移動終端開發,鼓勵學生在學好專業基礎和核心課程的同時,發現自己專業類的興趣,選擇一個自己感興趣的方向集中學習,大數據分析方向是重點向學生推薦。在教學階段安排上,一般專業(學科)基礎課程要優先于專業技能課程,這樣可以讓學生在掌握了學科、專業基礎上,充分了解軟件工程專業技能的訓練。(2)增加了大數據技術方面的課程。在新調整的課程體系中,專業(學科)基礎課程和專業技能課程都增加了大數據相關內容。基礎課設置增添運籌學、數據分析與處理等,使學生了解大數據行業基礎知識,激發學生對大數據行業發展及大數據應用前景的興趣;專業技能課設置了數據倉庫與數據挖掘、大數據統計分析與應用、數據挖掘算法與應用等前沿科學技術相關課程以滿足大數據系統建設與應用的需要,培養更多企業需要的大數據管理分析軟件專業人才。院級選修課鼓勵研究大數據方向的教師積極申請大數據案例分析、大數據安全與隱私保護、HadoopMap/Reduce技術原理與應用等實用性強的課程,以補充對大數據方向特別感興趣學生的學習內容。(3)增加實踐類課程所占比例。相比較2015級,以培養地方應用型人才為總目標,實踐類課程課時由19課時增加到28課時,所占總課時比例提高了約50%。實踐類課程包括校內(課程設計和實訓)和校外(見習、實習、實訓、畢業論文),種類多樣化,使得學生多方面提升自己解決問題和動手操作能力。針對校內實驗我院教師結合大數據教學實驗平臺,根據課程內容設計實驗項目,從初級到高級,安排合理的階梯式學習,實驗內容持續更新,加入最新、主流的分析建模工具和挖掘算法,學生在免費、開放的平臺環境下進行大數據構建、存儲、分析統計等實驗內容,使學生熟練掌握Ha-doop、HBase、Spark等關鍵技術,提高大數據理論分析及技術應用的能力。做好校內實踐的同時,校外實踐更是尤為重要,首先在實習、實訓企業的選擇上,盡量選擇“口碑好、技術強、理念先進”的單位,目前我院已與鄰近城市西安與尚觀科技、中軟國際、華清遠見、藍鷗科技等西安多家企業聯合,第四學年分批組織學生到合作企業的實訓基地參加真實的實訓項目,體驗IT企業真實的工作環境、工作流程和企業文化,了解互聯網大數據、零售大數據、金融大數據等領域知識,學習海量數據搜集、分析、存儲技術,引導學生按照項目的需求、總體設計、詳細設計、編碼、測試等流程完成實踐內容,規范化文檔和代碼的編寫,培養學生的行業、職業素養。

5應用效果

目前應用此方案有2016和2017級兩級學生,雖然這兩級學生都還沒有就業,但在創新應用能力方面都較2015級之前學生有顯著提升。近兩年有10余組學生團隊獲得國家級、省級、校級“大學生科研訓練項目”立項資助,有8名同學獲得“藍橋杯”程序設計大賽國家級二等獎、三等獎,省級一等獎2項,二等獎、三等獎多項。2016年有兩隊學生獲得陜西省高校“互聯網+”創新創業大賽三等獎,一隊學生獲得咸陽市青年創業大賽二等獎。數十名學生在核心期刊上公開發表學術論文。從目前取得的成績來看,課程體系結構的調整,使得學生不僅獲得扎實的理論知識,而且具備了過硬的實踐和創新能力,我院軟件工程專業畢業生一定會深受用人單位喜歡。

6總結

針對大數據時代下地方本科院校軟件專業人才培養中課程體系存在的一些問題,筆者分析了大數據環境對軟件工程專業人才的要求,以地方本科院校咸陽師范學院為例,改革調整了課程體系,主要在在理論教學和實踐教學中增加大數據相關理論及技術內容,通過近年來的探索與實踐,此課程體系結構有效提高了學生的創新應用能力,為大數據時代企業發展培養了高水平、高素質的大數據分析人才,新的課程體系適應了大數據環境下軟件工程人才的培養。

參考文獻

[1]孫琳.大數據應用的創新路徑[N].人民政協報,2016-05-17.

[2]潘正高.地方應用型高校軟件工程專業課程體系的研究[J].西昌學院學報,2017,31(3):94-97.

[3]潘怡.應用型本科院校軟件工程專業課程體系設置探討[J].長沙大學學報,2008,22(5):98-100.

[4]教育部專業教學指導委員會.高等學校軟件工程專業規范[M].北京:高等教育出版社,2011.