邱 贊,張新倫
(桂林航天工業(yè)學院計算機科學與工程學院 廣西 桂林 541004)
當今移動互聯(lián)網(wǎng)蓬勃發(fā)展,智能手機已經(jīng)普及,移動應用軟件的數(shù)量與日俱增,催生了移動應用軟件開發(fā)人才的巨大需求。移動應用軟件開發(fā)技術(shù)逐漸成為全國高校計算機軟件相關(guān)專業(yè)的必修課程,也是軟件開發(fā)工程師、軟件測試工程師及軟件項目管理師等崗位應該掌握的知識和技能。移動應用軟件開發(fā)課程是一門非常注重實踐的課程,涉及的知識點眾多,且內(nèi)容比較抽象,在學習過程中學生很難理解,進而感覺枯燥無味,導致學習興趣較低,最終影響教學效果。移動應用軟件開發(fā)技術(shù)相關(guān)課程近些年才逐漸進入計算機軟件相關(guān)專業(yè)的培養(yǎng)方案,課程教學體系還不完善,課程教學研究剛剛開展,課程教學方法仍在摸索階段[1]。
目前,移動應用軟件開發(fā)課程的教學基本是運用其他編程類課程的教學模式,主要講授Android的系統(tǒng)結(jié)構(gòu),以教師課堂講解為主的授課形式,以學生聽懂理解為教學目標[2]。因而帶來了一系列問題,首先是“填鴨”式教學,教師講解多,學生操作少,缺乏學生的分析問題、處理問題以及綜合運用能力的培養(yǎng);其次是課程教學內(nèi)容更新緩慢,而移動應用技術(shù)更新迅速,大部分教材僅是知識點的羅列,缺乏系統(tǒng)的原理知識介紹,不利于培養(yǎng)學生處理復雜工程的實踐能力;再次是理論講授為主與上機實驗為輔的教學模式,很難調(diào)動學生的學習積極性,缺乏與實際應用項目的結(jié)合,難以培養(yǎng)學生解決實際項目的應用能力;最后是課程的考核形式仍然采用筆試形式,主要集中在理論知識的考核,過分注重背記進而忽略運用,無法提升學生的實踐操作、團隊合作和交流溝通等綜合能力[3]。
由于移動應用軟件開發(fā)課程本身應用性強的特性,該門課程更加強調(diào)實踐操作,并需要注重基本技能和動手能力的培育。此時,一個行之有效的教學方案非常重要,而逆向教學設(shè)計倡導預先開展實踐,遇到實踐問題,再在教學中傳授解決問題的理論[4]。這種教學模式既能鍛煉學生實踐能力,又能鞏固學生理論基礎(chǔ),還能將實踐與理論相結(jié)合。本文研究將逆向教學設(shè)計應用于移動應用軟件開發(fā)課程,根據(jù)課程特點,進行教學設(shè)計,提高教與學的成效。
國內(nèi)外已開展多年逆向教學設(shè)計的研究,在工科、理學、管理等學科領(lǐng)域的教學應用越來越廣泛。逆向教學設(shè)計主要是指預先設(shè)計教學目標,然后確定考核評價,再根據(jù)預期成果設(shè)計教學活動的過程[5]。逆向教學設(shè)計是一種教學改革新模式,是改進并更新傳統(tǒng)教學設(shè)計。在這種教學模式下,特別關(guān)注清晰的學習目標和明確的教學評價,進而根據(jù)達成目標的評價為依據(jù)來設(shè)計教學活動,以促使設(shè)定目標能夠較好實現(xiàn)[6]。逆向教學設(shè)計可以處理傳統(tǒng)教學設(shè)計所遇到的難處,其教學過程是預先安排學生實踐發(fā)現(xiàn)問題,隨后教師講解問題涉及的理論和方法,最后學生依據(jù)所學的理論和方法自主解決問題。改變了傳統(tǒng)教學中以教師講授為核心的模式,讓學生作為主體,教師作為引導者,以學生的學來確定教師的教,教學目標是根據(jù)學生的學習和需要而明確,提前制訂貫穿教學過程的考核評價,同時采用評價目標的達成情況安排教學活動,鼓勵學生自主學習達成目標。
相比傳統(tǒng)的教學模式,逆向教學設(shè)計更加強調(diào)學生的學習效果,教學目標、考核評價與課堂活動的一致性更強,評價活動則作為驅(qū)動與診斷教學的有效手段被融合在教學過程中,以使得學生收獲良好的學習成效,因而逆向教學設(shè)計是制訂高質(zhì)量教學方案的重要途徑。
逆向教學設(shè)計不僅較好地處理了實踐環(huán)節(jié)與理論環(huán)節(jié)的關(guān)系,而且非常關(guān)注學生綜合應用能力的培養(yǎng)。為了提升移動應用軟件開發(fā)課程的教學效果,培養(yǎng)適應新工科人才需求的軟件開發(fā)人員,本課程教學改革嘗試引入逆向教學設(shè)計理念,結(jié)合移動應用軟件開發(fā)的課程特點,制訂了清晰的教學目標,設(shè)計了明確的教學評價,安排了靈活的教學活動,最終取得了良好的教學效果。
移動應用軟件開發(fā)課程是計算機軟件相關(guān)專業(yè)的一門重要課程,培養(yǎng)學生的系統(tǒng)思維、軟件設(shè)計、編程調(diào)試等專業(yè)素質(zhì),提高學生使用專業(yè)知識解決實際問題和開展自主創(chuàng)新的綜合能力。本課程以主流移動應用操作系統(tǒng)Android為基礎(chǔ),以實際工程項目為教學案例,學習移動應用軟件的開發(fā)流程和實現(xiàn)方法,掌握Android 移動應用軟件設(shè)計、開發(fā)、部署等相關(guān)技術(shù),能夠獨立動手實踐進行手機軟件開發(fā)。因此,移動應用軟件開發(fā)課程的教學目標制訂如下:第一,能夠通過學習Android的理論知識,理解Android開發(fā)的系統(tǒng)架構(gòu)和開發(fā)模式;第二,能夠根據(jù)項目需求,快速地設(shè)計出美觀且合理的Android UI界面;第三,能夠依托實際問題,設(shè)計并開發(fā)出滿足要求的APP 發(fā)布到手機上使用。
移動應用軟件開發(fā)課程是對計算機軟件相關(guān)專業(yè)人才培養(yǎng)的重要支撐,建立多元化的教學評價體系是對學生所需具備能力進行多維度的綜合評價。本課程的教學考核貫穿整個教學過程,由課堂表現(xiàn)、隨堂測驗、課程實驗三部分構(gòu)成平時考核成績,再由程序作品、答辯匯報、考核報告三部分構(gòu)成期末考核成績。
本課程的平時考核注重學生上課過程的學習質(zhì)量,其中課堂表現(xiàn)占課程總成績的10%,主要考核課堂中學生的表現(xiàn),包括積極回答問題與否、上課是否認真學習以及有無學習無關(guān)行為等方面;隨堂測驗占課程總成績的10%,主要考核課堂講解的內(nèi)容是否掌握,通過教學平臺的測試題庫進行測驗;課程實驗占課程總成績的10%,主要考核課內(nèi)實驗的開展情況和實驗報告的完成情況。
本課程的期末考核最終以參加答辯匯報后提交程序作品和考核報告的形式完成,程序作品占課程總成績30%,主要考核學生設(shè)計實現(xiàn)的程序功能是否完善美觀且使用方便;答辯匯報占課程總成績20%,主要考核學生溝通表達能力,是否能夠?qū)⒊绦蜃髌吠ㄟ^匯報呈現(xiàn)并應對問題進行答辯;考核報告占課程總成績20%,主要考核學生規(guī)范文檔撰寫能力,是否能夠按照規(guī)范撰寫程序作品的設(shè)計報告。
在制訂清晰的預期目標和明確的評價證據(jù)后,需要有效地開展教學活動來獲得與預期目標保持一致的教學效果。移動應用軟件開發(fā)課程的教學改革中,嘗試在教學活動中選擇一個生活實際應用且易于學生理解的項目案例APP,項目涉及的理論知識要求與課程教學大綱基本契合,按照知識點對項目案例進行拆分,以有利于開展教學和實踐。課程教學選取了具有客戶端與服務(wù)器交互訪問功能的高考志愿填報輔助軟件——報考通APP作為項目案例。報考通APP 的功能界面呈現(xiàn)會使用Android UI 界面控件和界面布局的相關(guān)知識,省控線查詢結(jié)果列表會使用List-View 與適配器的相關(guān)知識,投檔線查詢、錄取線查詢以及個人信息維護等功能會使用Android 多線程開發(fā)、事件監(jiān)聽機制、數(shù)據(jù)庫編程以及服務(wù)器端的設(shè)計開發(fā)等相關(guān)知識。該項目案例基本涵蓋了課程教學大綱所包含的知識點,報考通APP將伴隨上課進度貫穿整個教學過程,學生可通過該項目案例體會一個APP從無到有的完整設(shè)計開發(fā)過程。
在教學活動開展過程中,在課程之初就把項目案例的完整代碼和說明文檔分發(fā)給學生,同時把課程考核評價要求也告知給學生,強調(diào)期末考核任務(wù)需要完成一個與課程教學項目案例開發(fā)工作量相似的APP,要求學生自由組合成立一個3―4 人的學習小組來分工合作完成任務(wù)。課堂教學先要求學習小組自主學習項目案例的說明文檔,并根據(jù)說明文檔安裝所需軟件,最后運行項目案例代碼,提前體驗項目案例的完整功能。根據(jù)項目案例功能特點,學生結(jié)合自身想法或身邊所遇到問題擬定期末考核APP 的題目,并以學習小組為單位報給指導教師審核通過后按照課程進度開始實施。項目案例經(jīng)拆分后,能夠與教材的知識點相對應,以項目案例為驅(qū)動,引導學生主動探索功能實現(xiàn),教學過程采用先自主學習,后講解理論知識的形式。在自主學習過程中,學生可以翻閱教材嘗試自行解決問題,若遇到難題則教師負責答疑解惑,針對多次詢問的難點,教師集中講解理論知識。在熟悉并實現(xiàn)項目案例的過程中,學生也可模仿實現(xiàn)期末考核任務(wù)所擬定題目的功能,當把項目案例所有功能重新實現(xiàn),那么學生的期末考核任務(wù)也基本可以完成。
在教學中定期組織學生進行階段性成果展示,并對學生進行指導,通過項目案例將理論知識串聯(lián)起來,并讓學生應用于期末考核任務(wù),真正實現(xiàn)學以致用。在教學中不定期應用教學平臺題庫測驗學生對理論知識點的掌握情況,根據(jù)測驗結(jié)果調(diào)整課程教學進度,做到使學生均能學有所獲。為提升學生的學習興趣,設(shè)置課程進階實驗,主要分為驗證性實驗和設(shè)計性實驗。驗證性實驗包括基本的UI 界面控件、對話框以及事件監(jiān)聽器的實現(xiàn)等,設(shè)計性實驗是延伸實踐內(nèi)容,增加學習興趣,要求學生針對一個獨立的實際問題進行自主解決的實驗,設(shè)計性實驗難度稍大,允許學生以學習小組討論完成實驗。課程教學結(jié)束之際,開展期末考核APP 答辯匯報,以學習小組為單位進行答辯匯報,每個學習小組選派一名答辯人對學習小組所做APP進行操作演示和匯報講解,并回答其他學習小組及教師的提問,最終教師根據(jù)答辯情況對學生進行期末考核評價。
移動應用軟件開發(fā)課程采取逆向教學設(shè)計開展教學后,該課程的教學效果提升顯著,尤其在培養(yǎng)學生學習興趣、提升學生知識理解和鍛煉學生動手能力等方面的效果尤為突出。
①培養(yǎng)學生學習興趣:通過逆向教學設(shè)計,先有項目案例完整成品,再通過知識點逐步重新構(gòu)建項目案例,引導學生自主探索獨立開發(fā)一個實際問題的APP,激發(fā)了學生的學習熱情,促進了學生主動深入探索移動應用開發(fā)的相關(guān)技術(shù),并且后續(xù)發(fā)現(xiàn)很多學生愿意嘗試使用移動應用開發(fā)技術(shù)去做畢業(yè)實習實訓項目和畢業(yè)設(shè)計實踐項目等移動應用軟件開發(fā)課程以外的項目。
②提升學生知識理解:項目案例經(jīng)拆分后與知識點能夠基本對應,使得理論知識瞬間變?yōu)閷嵗涂梢暬档土死斫庵R的難度,通過教學平臺題庫測驗,學生平均得分超過了八十分,比上一年級未實施逆向教學設(shè)計時有明顯提高。
③鍛煉學生動手能力:在課程教學之初給學生發(fā)布課程考核要求,學生需要完成一個與項目案例工作量相似的APP,且需要進行階段性匯報,所以在學習過程中,學生會模仿教學案例實現(xiàn)自己項目的功能,有效地提升了學生解決實際問題的能力,從最終期末考核結(jié)果發(fā)現(xiàn),各個學習小組的程序作品都實現(xiàn)了一個功能相對完整的APP 項目。
本文為解決移動應用軟件開發(fā)課程在傳統(tǒng)教學模式下遇到的問題,研究了逆向教學設(shè)計相關(guān)理論,并將逆向教學設(shè)計運用于移動應用軟件開發(fā)課程的教學改革。在逆向教學設(shè)計的模式下,根據(jù)移動應用軟件開發(fā)的課程特點,制訂了清晰的教學目標,設(shè)計了明確的教學評價,安排了靈活的教學活動,有效提升了學生的學習興趣和專業(yè)素質(zhì)以及獨立分析問題和解決問題的實踐能力。教學改革是一個更新完善的過程,要求教師根據(jù)學科的發(fā)展情況,實施改進的教學模式,聚焦培育學生專業(yè)素質(zhì)和綜合能力,才能為社會培養(yǎng)出更加符合市場需求的人才。