康雁 李浩 柳青
摘 要:為了有效達到工程教育與新工科建設要求,對軟件工程課程進行改革實踐研究,培養面向變化與未來發展的創新人才,從而滿足新技術、新經濟、新產業發展人才需求。課程教學基于軟件產品構建,融非技術類教學與技術類教學于一體,以解決非技術性教學難題。采用與華為合作的協同育人混合式教學,加強實踐教學環境建設,探索大規模網絡開發課程(Massive Open Online Courses,MOOC)學習方法。從軟件工程實際要求出發,逐步建設相關軟硬件環境,將開發流程、文檔模板、評審標準相融合形成實踐指導和評價方式,滿足學生求知、增能、成才需求。
關鍵詞:教學改革;新工科教育;工程認證;軟件工程;能力培養
DOI:10. 11907/rjdk. 191990 開放科學(資源服務)標識碼(OSID):
中圖分類號:G434文獻標識碼:A 文章編號:1672-7800(2020)002-0172-04
英標:Exploration on the Reform of Software Engineering Course for New Engineering Talents Training
英作:KANG Yan1,LI Hao2,LIU Qing1
英單:(1.School of Software, Yunnan University;2.Department of Science and Technology, Yunnan University, Kunming 650091, China)
Abstract: The reform and practice of Software Engineering course is carried out for the aim of effectively meeting the requirements of engineering education and new engineering construction, cultivating innovative talents for change and future development, so as to meet the talent needs of new technologies, new economy and new industry development. The teaching of the course is based on the construction of software products and solves the non-technical teaching problems through integrating non-technical teaching with technical teaching. The reform, specifically, adopts the mode of mixed education of teaching plus cooperation with the Huawei Corporation, strengthens the construction of the practical teaching environment, and explores the MOOC (Massive Open Online Courses) learning method. We will gradually build the related software and hardware environments with the requirements of software engineering, and integrate the development processes, document templates, and evaluation criteria to form the practical guidance and evaluation methods so that the students can meet theirdemand for knowledge, ability, and talent.
Key Words: teaching reform; new engineering talent training; engineering certification; software engineering; ability training
0 引言
軟件工程課程是軟件工程專業核心必修課,內容涵蓋現代軟件工程概念、方法和技術,涉及軟件過程、開發管理、需求建模、設計實現和測試維護等。面對不斷升級的軟件技術和日益增長的社會需求,課程建設與改革從未止步。其中,不少課程結合MOOC進行學習方法改革[1-5]。自2017年以來,各高校紛紛響應教育部倡導的新工科建設與工程認證[6-10],結合自身特色進行了各具特色的新工科建設規劃與方案實施,以完成創新人才培養目標[11-13],滿足學生求知、增能、成才需求。該課程有效融合了MOOC和新工科建設目標,課程中強調軟件工程的根本性和永久性原則,關注軟件系統的復雜性工程問題求解,要求學生實踐迭代化開發方法,進行實際項目管理、開發和運營。以創新能力培養為導向進行以工程實踐為主的課程教學建設,以學生為本,分層次、多元化進行實踐和創新能力培養。目標是讓軟件工程專業的學生能夠獨立定義問題、自主學習應用知識、設計求解方案,熟練使用軟件工程流行的支撐工具,完成軟件工程生命周期相關任務。
云南大學軟件學院的軟件工程課程是軟件工程專業核心必修課,共3學分,54學時。課程開設于2003年9月,授課學生數超過1 500人,經歷了云南大學精品課程、云南省精品課程、教育部—英特爾精品課程、國家級精品資源共享課程、中國大學資源共享課程建設歷程,在師資隊伍、教學設計、教學案例和實驗項目等方面進行了大量積累。所在軟件工程專業獲得云南省卓越工程師項目和國家卓越工程師項目支持,課程結合卓越工程師培養目標,注重培養實踐能力強的工程人才。課程參考國際著名軟件工程英文教材[14],在科學出版社完成軟件工程與需求工程教材出版[15-16]。與軟酷網合作進行慕課資源建設,指導學生按組進行軟件系統開發,讓學生完整地體驗軟件工程專業基礎理論,建立起軟件開發工程概念、原則和習慣,培養學生分析問題、解決問題,以及團隊協作、談判溝通等能力。
1 現有問題分析
軟件工程具有技術性和工程性強的特點,學生需要在實際“動手做”和“真正練”中體會和掌握其思想和技術。原有課程教學中,學生很難理解抽象介紹的基本原理,與實際工程實踐要求差距明顯。在以往軟件工程教學中,課程實踐僅僅是提供一個軟件開發項目及相關文檔要求,缺少軟件工程的過程管理和環境支撐建設;沒有開發經驗的學生習慣性地采用非工程的方法,以突出個人技巧為主要目標,軟件過程雜亂,因而很容易導致項目開發失敗。因此,在整個教學過程中,始終貫穿標準規范和支持工具,建立支持小組式開發的軟件工程環境,為學生項目實踐提供有力支持。
2 成果導向教學流程改革
軟件工程課程目標滿足新技術、新經濟、新產業發展人才需求,培養面向變化與未來發展的創新人才。為了有效達到工程教育與新工科建設要求,課程教學基于軟件產品構建,融非技術類教學與技術類教學于一體,以解決非技術性教學難題[17-20]。具體采用與華為合作的協同育人混合式教學,探索MOOC學習方法,課程評價改革。從軟件工程要求出發,逐步建設相關軟硬件環境,將開發流程、文檔模板、評審標準相融合形成實踐指導,滿足學生求知、增能、成才需求。
2.1 華為云合作協同育人混合式教學
依托華為云進行軟件工程課程建設,開展混合式教學改革,在教學中貫徹工程教育理念,與企業合作培養學生實踐能力。基于華為云平臺進行課程講授和交流,將理論與實踐有機銜接、學校與企業實時連接。依托華為云平臺,不斷建設實踐案例庫,完成實踐過程的支持服務,將基本原理、企業案例、關鍵技術與工具等有機結合,使得軟件工程基本知識和原則講授與軟件工程實踐有機結合。在教學過程組織上,強調理論與實踐相結合。采用基于項目驅動的教學模式,以一個典型的軟件開發實例作為授課主線,在軟件工程方法論指導下,一步步完成系統需求挖掘、系統需求確定、系統體系結構設計、詳細設計開發,系統實現,以及系統有效性評估等開發流程,并將軟件工程—能力成熟度模型(Capability Maturity Model Integration,CMMI)和項目管理等知識融合到項目開發中,降低課程內容的抽象性和難度,提高學生學習興趣。
利用面向軟件開發者的云端開發環境,支持在云端創建工作空間,在線編寫代碼、智能提示、代碼調試、代碼檢視、代碼提交、配合代碼檢查并修改代碼缺陷、代碼片段(示例代碼)搜索等。軟件工程課程探索依托華為云的教學實踐模式,為學生提供實踐培訓,推行工程教育模式,讓學生經歷軟件工程各環節,建設高校產學合作協同育人項目。課程秉承產教融合的發展理念,充分發揮華為云資源在軟件工程領域的獨特優勢,進行信息交互和溝通合作,有效搭建教學合作的便捷通道。以企業崗位能力、素質要求為目標,將企業的職業道德和職業精神融入課程全過程,并在課程中加強企業所需的能力模塊學習,產教深度融合,實現教學水平全面提升。課程堅持校企合作、產教融合的理念,不斷健全校企合作項目建設,創新課程實踐模式。混合華為云,讓學生在CloudIDE中編寫代碼,對代碼進行在線管理,在線配合代碼檢查并修改代碼缺陷、搜索示例代碼等。根據華為云選擇的“技術棧”類型不同,學生可選擇不同“模板”,創建項目名稱,利用倉庫地址擁有權限的代碼倉庫,實踐配置管理中的代碼倉庫,從代碼倉庫中獲取具有權限的分支。按照企業人才培養方案實施授課指導,幫助學生提高實踐操作技能和專業知識水平。
邀請企業資深開發人員開展講座,并與學生進行討論,學生通過文獻查閱以及與軟件企業人員的直接交流,體會當前軟件工程業界的真實案例和最佳實踐。課程實踐讓學生通過項目實踐了解軟件生命周期模型,熟悉常見軟件過程模型,掌握需求分析、設計、測試等軟件開發階段的常用工具與實用方法,體驗實踐項目開發過程,以及項目管理與質量保證的工具和技術。以綜合應用開發能力和創新能力培養為導向,以學生為本,分層次、多元化培養,將課程與實踐緊密結合。
2.2 基于MOOC的課程建設
軟件工程課程基于MOOC突出“教”與“學”相結合,利用網絡課程和擴展資源加強師生之間的交流和學生之間的協作,發揮網絡教學優勢,引導學生根據個人興趣和實際項目需要進行自主式學習。與軟件公司合作,充分利用公司的網絡教學平臺和實用案例,引導學生主動積極地思考,以團隊為單位進行合作。通過軟件工程MOOC的教學活動,驅動教師以調動學生學習興趣和能力培養為主,激發學生學習積極性、主動性和創造性,進行教育思想轉變的教學培養創新。課程以啟發式教學和實踐教學為主,采取提問法、案例法、場景模擬法和小組討論法等方式培養學生獨立分析問題、解決問題的能力以及創新能力。慕課建設以每小節8~16分鐘講授軟件工程基本概念、原則與方法。對傳統知識點進行重新梳理,建設清單如表1所示。
2.3 課程評價改革
為了培養學生獨立分析問題、團隊合作、問題解決能力以及創新能力,全面改造原課程的評價體制為總成績=平時成績(20%)+期中評估(20%)+大作業(60%)。課程大作業要求學生以開發小組形式協作完成軟件系統,建立階段性評審、產品發布和運營模式,進行軟件開發過程管理和風險評估。針對大部分學生不擅長主動尋找問題并提出自己獨到見解的現狀,大作業要求學生在系統環境下自主選擇問題和創新性地提出問題解決方案。從軟件工程要求出發,逐步建設相關軟硬件環境,將開發流程、文檔模板、評審標準融合在一起,改變學生以往突出個人技巧的雜亂過程。
通過大作業實踐要求學生具備以下能力:通過閱讀教材和資料,做好軟件開發準備工作——自學能力;借助計算機以及學生所學程序設計語言和數據庫原理,開發一個項目——動手能力和對不確定事物決策時的首創精神與主動積極性;能夠運用軟件工程理論對項目開發進行初步分析判斷——分析能力、系統思維能力;學會撰寫各階段的文檔報告即遵循國際標準提交各階段文檔——表達能力;對各自負責的模塊通過以前所學知識實現——設計能力;軟件開發以小組為單位進行,以小組成員合作方式實現該項目——團隊合作能力;培養與提高學生科學素養——實事求是的科學作風、嚴肅認真的工作態度、主動研究的探索精神。以項目為實施形式,以校內外實習基地為依托,最終落實CDIO的全部過程——工程實現、領導能力、企業管理能力和創新思維能力。
3 結語
軟件工程專業積極響應教育部倡導的新工科建設,結合軟件工程課程特色,以軟件工程新工科人才培養目標為導向,進行了課程改革。采用與華為合作的協同育人混合式教學,逐步建設一體化的軟硬件環境,為學生搭建平臺、創造機會、提供實踐教育。將開發流程、文檔模板、評審標準融合在一起形成實踐指導,探索MOOC學習方法,基于軟件產品構建開展教學,融非技術類教學與技術類教學于一體,建立成果導向的改革課程評價體系,最終滿足學生求知、增能、成才需求。
參考文獻:
[1] 趙語,賈銀江,李曉明,等. 基于MOOC的軟件工程課程雙語教學的研究與實踐[J]. 中國教育信息化, 2017(23):77-79.
[2] 鄭春滿,李宇杰,黃楠,等.? MOOC挑戰下課程教學的應對策略與改革思考[J]. 高教學刊, 2017(5):97-99.
[3] 吳建屏. 基于MOOC平臺的公共計算機課程教學改革探討[J]. 信息記錄材料, 2019,20(2):151-152.
[4] WU, YONGCHENG. Research and practice on bilingual teaching of major courses based on MOOCs-a case study of the course of introduction to computer science[C]. 2018 2nd International Conference on Education Science and Economic Management(ICESEM 2018),2018.
[5] LI, ZHE, YONGCHANG R, et al. Teaching reform of computer basis course based on MOOC[C]. 2018 6th International Education,Economics,Social Science,Arts,Sports and Management Engineering Conference (IEESASM 2018),2019.
[6] 教育部高等教育司. 教育部高等教育司關于開展新工科研究與實踐的通知[S]. 教高司函[2017]6號,2017.
[7] 吳愛華,侯永峰,楊秋波,等. 加快發展和建設新工科主動適應和引領新經濟[J]. 高等工程教育研究,2017(1): 1-9.
[8] SUN, JIANGUO. Construction of teaching quality assurance system in the context of engineering education certification[C]. International Conference on E-Learning, E-Education, and Online Training,2018.
[9] 沈海波,周如旗,朱雄泳. 新工科+工程教育認證背景下軟件工程特色專業建設探索[J]. 軟件工程,2018, 21(3):57-59.
[10] 馬萬征,肖新,謝越,等. 新工科背景下符合工程教育認證標準的環境科學與工程專業建設探索[J]. 教育現代化,2018, 5(41):82-84.
[11] CHANG,LIANG. The practicing of teaching mode under the concept of engineering education[C]. 2018 3rd International Conference on Politics, Economics and Law (ICPEL 2018),2018.
[12] CHEN,YAOJIE.Reform and construction of computer major on local colleges under the background of emerging engineering education[C]. 2018 3rd International Conference on Politics, Economics and Law (ICPEL 2018),2018.
[13] LI,JUNSHAN,JIANJUN L.The reform and innovation of the applied talent cultivation mode in software engineering[C]. 2018 2nd International Conference on Management, Education and Social Science, 2018.
[14] SOMMERVILLE I. Software Engineering[M]. 10th Edition. 北京:機械工業出版社,2017.
[15] 李彤. 軟件工程概論[M]. 北京:科學出版社,2012.
[16] 康雁,何婧,林英,等. 軟件需求工程[M]. 北京:科學出版社,2012.
[17] WANG J. Exploration and practice of training international software engineering talents[C]. 2018 4th International Conference on Humanities and Social Science Research,2018.
[18] ZHANG,QIWEN,QIUYU Z,et al. Discussion on the mode of software engineering talent training based on emerging engineering[C]. DEStech Transactions on Social Science, Education and Human Science,2018.
[19] 趙業清. “軟件工程”課程教學改革探索[J]. 中國電力教育, 2013(14):85-86.
[20] ZHANG,JINSHENG,DONGHU G,et al. Exploring the practical teaching mode of software engineering courses[Z]. 2019.
(責任編輯:孫 娟)