趙春霞


摘? 要 軟件工程課程是計算機類專業教育中的必修課程之一,但因各種原因,傳統的教學方法效果不佳。云計算的興起為課程教學模式改革提供了有效平臺。從軟件工程課程教學現狀入手,分析該課程的內容與特點,探討該課程在教學中所存在的問題,在此基礎上探索課程的翻轉課堂教學體系,更好地為課程教學服務。
關鍵詞 軟件工程;翻轉課堂;云計算;教學模式
中圖分類號:G642.0? ? 文獻標識碼:B
文章編號:1671-489X(2018)20-0111-03
Research on Teaching Mode Reform of Software Engineering Supported by Cloud Computing//ZHAO Chunxia
Abstract Software engineering is one of the compulsory courses in
computer professional education, but the traditional teaching methods
are not effective for all kinds of reasons. The rise of cloud compu-ting provides an effective platform for the reform of curriculum tea-
ching mode. Starting with the current situation of the software engi-neering course, the paper analyzes the contents and characteristics of
the course, and probes into the problems in the course. On the basis of this, it explores the flipping class teaching system of the course.
Key words software engineering; flipped classroom; cloud compu-ting; teaching mode
1 引言
當今社會軟件開發的大中型項目越來越多,對軟件開發人才的數量需求及能力要求也不斷增加,學生進入社會后不僅需要具備基本的編程能力,同時要能很快融入項目的整體研發,實現團隊合作。這就要求學生具有軟件工程的相關知識與能力,而這正是軟件工程課程所能教會學生的。同時,軟件工程課程是計算機類專業課程的核心課程[1],其主要目的是讓學生掌握現代化的軟件開發方法,然而實際教學中會存在很多問題,如理論性強、抽象性高[2]等,導致學生通過課程學習無法達到既定的教學目標。因此,優化教學內容和方法,提高教學質量,是軟件工程課程教學改革研究的主要內容。
基于云計算平臺的翻轉課堂教學是當前新興的一種教學模式和教學嘗試。當前研究中基于云平臺的翻轉課堂模式應用廣泛[3-4],而軟件工程課程因自身的特點,也可以嘗試基于云平臺采用翻轉課堂模式進行授課,從而增強教學效果。
2 軟件工程課程教學中的主要問題
軟件工程課程是計算機類專業的核心課程,但因該課程內容涉及知識面廣、課程實驗所需專業技能較多等,多作為其他主干課程的后續課程。在長期的教學實踐中,筆者發現主要存在以下幾個問題。
學生出勤率低? 因為課程內容的特點,軟件工程課程在教學培養方案中多安排在第六或第七學期開設,而此時多數學生面臨考研、考公務員、就業等壓力,大量精力花在課程之外。甚至有的學生為了專心考研而不愿再去上課,有的學生找到了較好的實習單位,也不愿再去上課。因此,出勤率低是筆者在授課中面臨的最大的問題。
學生積極性不高? 各種考研、就業等事情的壓力,使得學生不愿意把精力放在課程上,即使在課堂上也不太愿意聽課,而是忙著復習考研、考公務員等。此外,加上與數據庫、程序設計等課程相比,軟件工程課程內容較抽象,學生理解起來較困難,在一定程度上挫傷了學生學習的積極性。
學生較難學以致用? 學生學完課程之后,對課程的內容并不能完全理解和消化,最直接的表現就是在隨后的課程設計和畢業設計中不能將所學知識靈活應用,對于一個具體的項目仍不知從何入手,或者仍然從寫代碼入手,導致最后項目出現很多邏輯問題甚至錯誤。
課程教學目標難以實現? 軟件工程課程的教學目的是讓學生在掌握軟件工程基本理論、概念的基礎上掌握系統化、工程化的軟件開發方法和技術,具備初步以工程學理念參與項目開發的能力。而由于學生主觀積極性不高、主動性不強,課程客觀上抽象性較高等原因,教學目標難以實現。
3 軟件工程課程的翻轉課堂教學模式構建
以教師為主導的傳統教學模式,很難提高學生在課程教學中的積極性和主動性,而翻轉課堂則可以較好地調動學生的主動性,讓學生從被動到主動地參與課程教學中來,提高學生的積極性。同時考慮到大部分學生面臨考研、就業的實際情況,翻轉課堂能在一定程度上讓學生更自由、靈活地安排時間,完成課程任務。將翻轉課堂教學模式引入軟件工程課程教學中,除了“課前學習+課堂研討”的形式之外,考慮到軟件工程課程本身的特點及授課內容,其教學模式可以按照圖1所示進行,包含了“課前學習+課堂研討+課后實踐”三個環節,每個環節的主題內容圍繞課程的知識點和實踐項目開展。
課前模塊? 翻轉課堂的課前模塊,主要是學生在課前自主學習,觀看教學視頻,查閱相關資料,發現存在的疑點難點,并在課堂上請教師進一步答疑。而軟件工程課程的課前環節,學生除了完成這方面內容之外,還需要配合項目實踐開展相關工作。軟件工程課程的主要內容是完整的軟件生命周期過程,是軟件項目從定義到開發、運維的全過程。為了讓學生對這一過程有更直觀的理解和認識,課程需要結合小組具體項目實戰開展。課程開始前,學生首先需要根據教師給定的備選題目或自選感興趣的題目,進行可行性分析,確定項目的最終選題;再針對項目選題,確定分階段的目標,搜集資料;通過小組討論完成每個階段的工作目標及具體工作任務,制訂分階段工作計劃。
課中模塊? 翻轉課堂的課中環節,相對于傳統的教學模式,不再以教師講授為主,而是以教師的答疑和引導為主。在軟件工程課程的翻轉課堂課中模塊,教師主要根據學生在課前學習中的問題進行答疑,并結合軟件開發過程的不同階段,介紹各階段的主要任務及重點,以及對當前項目實踐環節需要完成的主要工作內容進行分析。接下來,由各項目組對當前階段的工作安排及存在問題進行簡要分析,以小組為單位,小組之間、師生之間進行探討,以幫助各組明確當前階段準確的工作任務,并修改項目計劃。
課后模塊? 課后即下次課前,在大多數翻轉課堂模式研究中,并未把課后模塊作為獨立模塊,但是考慮到軟件工程課程所包含的項目實踐需要,需要把課后模塊作為翻轉課堂中的獨立模塊加以描述。在課后模塊,對于理論知識,學生不清楚的地方可以隨時在線觀看視頻、查閱資料進行學習,并與教師在線交流;而對于項目實踐的內容,學生需要小組協作完成分階段的工作任務(如可行性研究報告、項目需求設計報告、項目總體設計、項目詳細設計、數據庫設計、界面設計、項目模塊代碼、項目開發總結等)并在線提交,供教師審閱以及時了解學生對知識的理解、掌握情況,進而在下一次課中環節有針對性地對學生的項目實踐提出建議。
課前→課中→課后的循環? 在多數課程的翻轉課堂模式中,課前→課中→課前是一個連續不斷進行的過程,直到課程結束。而在軟件工程課程的翻轉課堂模式中,課前→課中→課后→課前不僅僅是一個順序的過程,更像是一個循環過程。三個模塊依次進行一次是一個循環,課程的進行與軟件生命周期的項目實踐密切結合,完成一個循環之后也代表完成了軟件生命周期的一個小的階段,即將進入下一個階段的軟件生命周期過程。課前→課中→課后的循環不斷進行,伴隨的是課程內容的不斷推進,同時項目開發實踐也在深入,到課程完結時,項目實踐也相應完成。
4 基于云計算平臺的翻轉課堂構成
近年來,云計算技術的不斷成熟和發展,使其能夠根據服務提供者和用戶間的協議動態地提供服務[5],并因其計算能力強、存儲容量大、對硬件要求低等特點,廣泛地應用于各個領域。在軟件工程課程構建翻轉課堂的過程中,可以充分借助于各種云計算技術構建教學平臺。筆者在教學實踐中對翻轉課堂的構建主要借助于以下相關平臺。
網絡教學輔助平臺? 網絡教學輔助平臺是學校引進的一個輔助教學的重點平臺,該平臺功能強大、資源豐富,為軟件工程課程翻轉課堂教學的開展提供了重要支撐。借助該平臺,軟件工程課程所構建的翻轉課堂主要內容如圖2所示。
該網絡教學輔助平臺的主要功能模塊包括課程管理、課程建設、教學資源、課程預覽、課程活動,為翻轉課堂構建提供支撐的主要是課程管理、教學資源及課程活動模塊。課程管理模塊主要對課程的基本信息(如教學日歷、教師基本信息、學生選課信息、學生權限等)進行管理。教學資源模塊在翻轉課堂建設中發揮了重要作用,學生課前活動所需要的資源可以從這里獲取,如課程基本信息、教學視頻、教學大綱、課程重難點、項目信息等。課程活動模塊是翻轉課堂課后環節得以實現的主要技術支撐,該模塊提供了答疑討論的功能,方便教師與學生互動,同時教師可以發布作業、問卷等,學生也可以在線提交其完成的項目成果、課程作業等,教師可以在線評閱。借助網絡教學輔助平臺,保證了軟件工程課程翻轉課堂實踐的順利開展。
其他平臺的輔助? 在軟件工程課程翻轉課堂教學實踐中,為了能夠達到更好的教學效果,隨時隨地與學生進行溝通,除了借助學校提供的教學輔助平臺外,還借助微信、QQ、電子郵箱等,使得與學生的溝通更暢通,有些學生不愿意在網絡教學平臺上公開討論的問題也得到有效解決。
5 結語
基于云平臺的翻轉課堂教學模式,能夠更好地調動學生的積極性和主動性,同時兼顧了學生考研、就業等客觀情況,方便學生隨時隨地學習。結合軟件工程課程本身的特點,筆者在教學實踐中嘗試構建“課前學習+課堂研究+課后實踐”的翻轉課堂教學模式,并借助網絡教學平臺和其他平臺進行實現。實踐表明,通過這樣的教學過程,學生的責任意識明顯增強,他們對課程內容的認識也有了一定程度的提高,基本能實現以小組為單位,以軟件工程項目開發的規范完成中小型軟件項目開發的任務,教學目標基本實現?!?/p>
參考文獻
[1]姚紅巖,馬云吉.“軟件工程”教學策略探討[J].軟件工程師,2014,17(8):10-11.
[2]田保軍.軟件工程課程教學改革的研究[J].計算機教育,2007(23):38-39.
[3]何坤,鄒霞.基于云平臺的翻轉課堂教學流程設計與分析[J].中國教育信息化,2017(10):84-87.
[4]聶曉秋,趙辰光.基于云計算環境的軟件工程專業翻轉課堂教學模式研究[J].計算機教育,2015(7):32-35.
[5]李喬,鄭嘯.云計算研究現狀綜述[J].計算機科學,
2011(4):32-37.