国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

樂教樂學(xué)軟件工程-生活案例教學(xué)法改革探討

2019-09-10 07:22狄國(guó)強(qiáng)錢忠勝劉德喜
關(guān)鍵詞:生活案例軟件工程教學(xué)改革

狄國(guó)強(qiáng) 錢忠勝 劉德喜

摘 要:軟件工程方法、工具和過程對(duì)學(xué)習(xí)、工作具有啟迪作用,軟件生命周期、里程碑、過程模型、建模、面向?qū)ο蟮群诵母拍詈椭R(shí)點(diǎn)均可選取生活中的典型事例來類比和闡述,以更好地幫助學(xué)生加速理解、加深印象,使專業(yè)課程的教學(xué)變得生動(dòng)有趣,使枯燥的理論說教變得通俗易懂,達(dá)到事半功倍的效果.生活案例教學(xué)法被應(yīng)用于課堂教學(xué)和中國(guó)大學(xué)MOOC《樂學(xué)軟件工程》中,配合翻轉(zhuǎn)課堂和混合式教學(xué),成效顯著,受到學(xué)生的普遍好評(píng).

關(guān)鍵詞:軟件工程;樂教樂學(xué);生活案例;教學(xué)改革

中圖分類號(hào):G642.4 ?文獻(xiàn)標(biāo)識(shí)碼:A ?文章編號(hào):1673-260X(2019)12-0157-04

1 引言

從軟件工程是一級(jí)學(xué)科來看,足見其知識(shí)面、技能面之廣;從軟件工程作為一個(gè)專業(yè)來看,說明其知識(shí)點(diǎn)、技能點(diǎn)之深;軟件工程還是軟件工程專業(yè)的導(dǎo)論課,是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的核心課.作為計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)中一門重要的專業(yè)必修主干課程[1],它的內(nèi)容既能串起先修課程的知識(shí)和技能,又能訓(xùn)練學(xué)生綜合運(yùn)用知識(shí)、技能解決問題的能力,在培養(yǎng)學(xué)生的專業(yè)技能和職業(yè)素養(yǎng)上具有重要作用.軟件工程課程知識(shí)點(diǎn)多、涉及面廣,既有理論又有實(shí)踐,教和學(xué)難度都比較大.雖說知識(shí)、技能的學(xué)習(xí)和掌握需要學(xué)習(xí)者付出努力,但從教的角度上看,若能以鮮活的案例進(jìn)行比擬和解說,無疑能更好地幫助學(xué)生加速理解、加深印象,起到事半功倍的效果.這是作為教師應(yīng)該不斷追求和提升的教學(xué)技能,需要教師在教學(xué)中不斷探索和積累,不斷改進(jìn)教學(xué)效果,不斷提升授課能力.

筆者課程組在日常教學(xué)中,經(jīng)過不斷探索,采用人生來比擬軟件工程,選取日常生活中的一些典型事例來詮釋軟件工程中的知識(shí)點(diǎn),以使專業(yè)課程的教學(xué)變得生動(dòng)有趣,力圖追求教與學(xué)的最佳狀態(tài),快樂學(xué)習(xí),將教師快樂教學(xué)、學(xué)生快樂學(xué)習(xí)視為教師職業(yè)的一項(xiàng)成就和滿足.

2 挖掘生活案例促進(jìn)知識(shí)點(diǎn)理解

軟件工程是軟件開發(fā)方法和工程學(xué)的有機(jī)結(jié)合,是工程的系統(tǒng)觀和方法論在軟件業(yè)的應(yīng)用,而工程的系統(tǒng)觀和方法論同樣適用于人生.軟件工程的方法、工具和過程不僅是軟件開發(fā)的要素,也有助于學(xué)習(xí)、工作和生活,如軟件項(xiàng)目的可行性分析、業(yè)務(wù)模型的表述適用于日常任何活動(dòng)的開展、溝通和交流.軟件工程課程的內(nèi)涵和外延中的很多內(nèi)容演繹之后,能夠?qū)θ松l(fā)揮啟迪作用,具有在學(xué)習(xí)、生活、工作中實(shí)用化的功用.而且,工程化的思維、方法、工具和手段有利于培養(yǎng)學(xué)生的職業(yè)能力和綜合素養(yǎng).下面通過幾個(gè)例子來探討如何借助生活案例幫助學(xué)生理解重要的知識(shí)點(diǎn).

2.1 生命周期、里程碑與四期

軟件生命周期是軟件工程的基本概念之一,如果用人的生命周期來類比,更易理解.人們常說的生老病死可以類比軟件的開發(fā)、運(yùn)行、維護(hù)和更新.人類的一生可以從計(jì)劃生育到孕育、誕生,然后成長(zhǎng)、成年為社會(huì)做貢獻(xiàn),再到老年、辭世和遺產(chǎn),其中每個(gè)時(shí)期的重點(diǎn)內(nèi)容、表現(xiàn)和標(biāo)志都不一樣,如圖1所示.其中的階段標(biāo)志就是“里程碑”,如生日、滿月、百日、周歲、成年等等非常受重視的時(shí)間節(jié)點(diǎn)是重要的里程碑,這些標(biāo)志幾乎不占用時(shí)間段,但是會(huì)取特定的名稱并進(jìn)行相應(yīng)的慶?;顒?dòng),如成人禮,最常見就是過XX歲生日.人類生命周期的階段還可進(jìn)一步細(xì)分,也可粗分.細(xì)分如計(jì)劃、懷孕、幼兒園、小學(xué)、中學(xué)、大學(xué)等;粗分如孕育、教育、貢獻(xiàn)、老年等.

一般工程的生命周期與人類似,如圖2所示,但階段的名稱有別于人類成長(zhǎng)中的嬰兒、少年、成年等名稱,而是用項(xiàng)目建議書、工程規(guī)劃、可行性研究、初步設(shè)計(jì)、技術(shù)設(shè)計(jì)或施工設(shè)計(jì)、施工與監(jiān)理、運(yùn)行維護(hù)來進(jìn)行工程階段的細(xì)分,大體上可劃分為四期:概念期、設(shè)計(jì)期、實(shí)現(xiàn)期、運(yùn)行期.工程被更新?lián)Q代或者遺產(chǎn)的話,一般不再提起,除非具有特別的意義,比如長(zhǎng)城、趙州橋等.工程的正式立項(xiàng)、破土動(dòng)工、竣工驗(yàn)收是重要的時(shí)間節(jié)點(diǎn)和標(biāo)志,一般要進(jìn)行儀式化的慶典,比如早期的房屋上大梁,現(xiàn)在的大樓封頂?shù)?,類似于人的出生、百日、成年儀式等.

軟件工程的生命周期與此基本類似又有細(xì)微的不同,階段的劃分沒有一般工程細(xì),可以細(xì)分為問題定義、可行性研究、需求分析、總體設(shè)計(jì)(或概要設(shè)計(jì))、詳細(xì)設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、運(yùn)行維護(hù)八個(gè)階段[2];也可粗分為四期:概念期、設(shè)計(jì)期、實(shí)現(xiàn)期、運(yùn)行期.經(jīng)過這樣的類比,軟件工程生命周期、里程碑更容易被學(xué)生理解.

將軟件的生命周期細(xì)分為八個(gè)階段是很多軟件工程教科書中的經(jīng)典劃分法,這里為什么又要提出將軟件的生命周期粗分為四期?筆者認(rèn)為:這是因?yàn)樵絹碓蕉嗟拈_發(fā)工具試圖成為一種全生命周期的工具,這類工具希望將概念期、設(shè)計(jì)期、實(shí)現(xiàn)期、運(yùn)行期的工作都納入其支撐范圍,以減少開發(fā)人員的不便,提升開發(fā)效率.不過,由于在這四期中軟件的表現(xiàn)形式很不相同,因此在許多工具里面,分了較多的視圖來呈現(xiàn)軟件而沒有分XX期,如設(shè)計(jì)視圖、代碼視圖、運(yùn)行視圖.例如:Dreamwaver中的視圖[3],如圖3所示.

實(shí)際上,一些開發(fā)工具本身自帶或者加裝插件后的UML視圖或ER視圖對(duì)應(yīng)了概念期;設(shè)計(jì)視圖對(duì)應(yīng)設(shè)計(jì)期;代碼視圖對(duì)應(yīng)實(shí)現(xiàn)期;運(yùn)行視圖或模擬運(yùn)行視圖對(duì)應(yīng)運(yùn)行期.

2.2 軟件過程模型與生產(chǎn)

軟件過程模型也是軟件工程的基本概念之一,對(duì)于沒有軟件開發(fā)經(jīng)歷的大多數(shù)同學(xué)來說,并不容易理解.如瀑布模型、原型模型、增量模型、迭代模型、螺旋模型、噴泉模型、敏捷模型等[2].由于軟件工程中用到“模型”一詞的地方非常多,因此需要強(qiáng)調(diào)它們是過程模型,代表著軟件開發(fā)要經(jīng)歷的經(jīng)典過程,有相對(duì)固定的內(nèi)容、流程、方法、工具、成果,有其產(chǎn)生的背景和需要消耗的資源,有特點(diǎn)及其適用的場(chǎng)合.要使學(xué)生更快理解軟件過程模型的涵義和作用,可借用女人的生育過程來說明.因?yàn)榕松械捻槷a(chǎn)、難產(chǎn)、剖腹產(chǎn)、流產(chǎn)并不是陌生的詞匯,當(dāng)聽到這些名詞時(shí),這些過程所蘊(yùn)含的內(nèi)容、流程、方法、工具、成果是特指的,其背景和需要消耗的資源是特定的,不同生產(chǎn)過程的特點(diǎn)和適用的場(chǎng)合也是不同的.

一種預(yù)計(jì)的過程可能因?yàn)閷?shí)際情況發(fā)生變化而需要轉(zhuǎn)換為另一種過程,如本來預(yù)計(jì)是順產(chǎn)的,但是不料發(fā)生了難產(chǎn);按照難產(chǎn)的醫(yī)療處理還不行,需要進(jìn)行剖腹產(chǎn).這意味著內(nèi)容變化了,相應(yīng)的一整套處理要改變,包括流程、方法和工具都要改變.但是最終的結(jié)果不能變,就是不管哪種生產(chǎn)過程最終都要誕生健康的寶寶.軟件的實(shí)際開發(fā)過程也類似,并不見得預(yù)期確定了某種過程模型后就不變了.因?yàn)楝F(xiàn)實(shí)中的軟件開發(fā)往往是前松后緊,前期可能是瀑布過程模型,到了后面要趕工期,可能就轉(zhuǎn)成敏捷模型.筆者以為軟件開發(fā)過程中,過程模型變化不是什么問題,只要能夠在工期內(nèi)、低成本地開發(fā)出高質(zhì)量的軟件.

2.3 軟件建模與表白

軟件的建模工作非常重要,但是很多學(xué)生不重視建模,尤其是學(xué)了一些編程語言之后.對(duì)于軟件項(xiàng)目,一開始就急著編碼,往往事倍功半.這些現(xiàn)象可說明軟件建模的重要性.軟件模型怎樣才算建好?可用“表白”來說明.比如:你表白過嗎?你向什么人表白?怎么表白的?效果如何?別人是否明確地了解你“表白”的內(nèi)涵,也就是說“表白”的對(duì)象、目的、內(nèi)容、方法、工具、效果是否經(jīng)過了思考?原來表白還有這么多的竅門.此例不僅可以引出軟件表述的目的、對(duì)象、作用和內(nèi)容,用來說明軟件建模、軟件文檔、軟件原型的重要性;從“表白”的方法、工具來說明軟件建模的方法、工具,因?yàn)檐浖F鋵?shí)是一種表白;從“表白”的成效來說明軟件建模的成果與效果.此例還可引出可行性分析等話題.僅僅只有語言、文字的表白是否蒼白無力?借助于經(jīng)典表征的、非語言的表達(dá)方式是否更加精準(zhǔn)、更具有沖擊力和感染力?這充分說明軟件開發(fā)不僅需要文檔,還需要圖形、表格甚至是原型來表述.以此說明軟件建模中要撰寫好軟件文檔,不可缺少圖、表,最好還有原型.這樣的類比會(huì)不會(huì)產(chǎn)生一定程度的“笑果”呢?

2.4 面向?qū)ο笈c人

面向?qū)ο蟮能浖_發(fā)方法是現(xiàn)代軟件工程中的重要方法,也是軟件工程中的核心概念之一,其中諸多的概念和理論對(duì)于學(xué)生來說,要充分理解和完全掌握還是有相當(dāng)難度的.要講清楚這個(gè)概念,可以挖掘一些淺顯易懂的案例來闡述.辛好,面向?qū)ο蠓椒ū旧砭褪莵碓从谌祟悓?duì)于客觀世界的思考方法,生活為我們提供了豐富的案例.

筆者嘗試了用與人相關(guān)的常識(shí)來闡述面向?qū)ο蟮母拍睿司褪侵v解面向?qū)ο蠛芎玫陌咐?每個(gè)人作為具體的對(duì)象是人這個(gè)類的實(shí)例;人的姓名、年齡、性別、學(xué)號(hào)等固定不變的特征是人這個(gè)對(duì)象的屬性,而其每天的吃、喝、拉、撒、睡、學(xué)、工、動(dòng)等個(gè)體行為是人這個(gè)對(duì)象的方法.我們通常說的言談舉止能夠表明一個(gè)人的修養(yǎng),反映出一個(gè)人的內(nèi)在,可以用來說明對(duì)象的封裝.人與人、人與外界的相互溝通和相互作用都是通過看、聽、聞、味、觸五大感覺器官來實(shí)現(xiàn),足以說明對(duì)象的溝通和互動(dòng)可以通過接口和消息來實(shí)現(xiàn).感覺器官就是接口,發(fā)出或接收到的內(nèi)容就是消息.人與人之間如果是父與子或者家族親戚,他們的遺傳就是類的繼承.這些對(duì)象和類的形象的案例和解說,能夠?qū)⒚嫦驅(qū)ο蟮念悺?shí)例、屬性、方法、繼承、封裝、多態(tài)、消息等核心概念的理解難度大大降低.

2.5 軟件測(cè)試、調(diào)試與體檢

要提升軟件質(zhì)量,軟件的測(cè)試與調(diào)試不可或缺.軟件的測(cè)試與調(diào)試如同我們?cè)卺t(yī)院進(jìn)行身體檢查、化驗(yàn)和治療.為了確定身體是否感染疾病,需要檢查或化驗(yàn)以確定有沒有病,是什么病,以及病情的程度.軟件測(cè)試好似體檢和化驗(yàn),僅僅是檢查、發(fā)現(xiàn)或定位疾病,而不是治療疾病.軟件調(diào)試則不同,是排除軟件不足的手段,如同醫(yī)生開處方進(jìn)行疾病的治療.軟件測(cè)試中的白盒測(cè)試方法好比X射線拍片、CT掃描、B超彩超的檢查等;軟件測(cè)試的黑盒測(cè)試方法則好比中醫(yī)的望、聞、問、切,它是通過對(duì)象的接口和外在表現(xiàn)來檢查、分析和判斷所檢查的對(duì)象是否存在問題.

2.6 軟件運(yùn)維與保健治病

生命的延續(xù)離不開身體的保健,定期和不定期的體檢,能夠及時(shí)地發(fā)現(xiàn)疾病,起到早發(fā)現(xiàn)、早治療的作用.軟件的壽命與此類似,需要在運(yùn)行中持續(xù)的維護(hù)和管理,軟件維護(hù)中的預(yù)防性維護(hù)、適應(yīng)性維護(hù)、擴(kuò)展性維護(hù),以及軟件運(yùn)行中的定期或不定期的檢查、日志審計(jì)、資源輪換、垃圾清理等不僅能夠提升軟件運(yùn)行的質(zhì)量,無疑是延長(zhǎng)軟件生命周期的重要措施.運(yùn)維起到有病治病,沒病延年的作用.軟件的維護(hù),特別是糾錯(cuò)性維護(hù)好比醫(yī)生治病,不會(huì)有副作用嗎?會(huì)有后遺癥嗎?國(guó)內(nèi)近年就出現(xiàn)過因?yàn)榫S護(hù)不到位而產(chǎn)生嚴(yán)重后果的實(shí)例.這些既可以作為解說軟件維護(hù)的案例,也可以用作課堂設(shè)問的引入話題.

3 教學(xué)成效

以上所列的生活案例,凡此種種,不一而足,是課程組基于多年從事軟件工程教學(xué)、開發(fā)實(shí)戰(zhàn)的經(jīng)驗(yàn)積累.借助生活案例詮釋軟件工程中的重點(diǎn)、難點(diǎn)概念取得了良好的教學(xué)效果.

3.1 課程建設(shè)方面

課程組積極挖掘生活案例開發(fā)的課件曾獲得第五屆全國(guó)多媒體課件大賽二等獎(jiǎng)、第九屆全國(guó)多媒體課件大賽一等獎(jiǎng).實(shí)施生活案例教學(xué)法后的軟件工程課程于2006年獲批為江西省優(yōu)質(zhì)課程,2014年江西省精品資源共享課程,江西省第十三次優(yōu)秀教學(xué)成果二等獎(jiǎng)[4-6].課程組不僅將生活案例教學(xué)法應(yīng)用于線下的課堂教學(xué),還積極開展MOOC教學(xué),2016年獲批為首批江西省精品在線開放課程建設(shè)項(xiàng)目,在中國(guó)大學(xué)MOOC、超星MOOC平臺(tái)上開展了《樂學(xué)軟件工程》教學(xué).2018年11月獲批為江西省高校育人共享計(jì)劃課程,2019年1月10日被認(rèn)定為江西省級(jí)精品在線開放課程.學(xué)生在課程學(xué)習(xí)中,不僅是如何完成作業(yè),還有自己以后的人生規(guī)劃.從軟件的生命周期到人生的發(fā)展歷程,每一環(huán)都很重要,每一環(huán)都為下一環(huán)打下了基礎(chǔ).近幾年來,配合翻轉(zhuǎn)課堂和混合式教學(xué)[7],學(xué)生的學(xué)習(xí)效果得到改善,選課人數(shù)不斷刷新,并主動(dòng)進(jìn)行系統(tǒng)的、完善的思考,取得優(yōu)異成績(jī)的同學(xué)逐年增多,反饋也非常積極,受到學(xué)生的普遍好評(píng).

3.2 校內(nèi)教學(xué)反饋

校內(nèi)選修的同學(xué)在結(jié)課的學(xué)習(xí)總結(jié)中寫到:“老師課堂上用生活中案例引導(dǎo)我們積極思考、表達(dá)自己的觀點(diǎn)和想法,給我們提出許多有深度的建議,讓我們不斷成長(zhǎng)和進(jìn)步.感謝老師這一學(xué)期以來的認(rèn)真付出和悉心教導(dǎo),在軟件工程上所學(xué)習(xí)到的知識(shí)我今后也會(huì)更多的運(yùn)用到實(shí)際生活中,爭(zhēng)取獲得更大的進(jìn)步……”

“軟件工程是一門很好的課程,老師熱心指導(dǎo)同學(xué),良好的氛圍提高了我們的學(xué)習(xí)熱情,每次上課同學(xué)們的學(xué)習(xí)積極性都很高,也讓我們更加熱愛這門課,再加上老師合理的作業(yè)布置,讓我們更加深刻地理解了課程原理,掌握了軟件開發(fā)的方法……”.

3.3 慕課教學(xué)方面

跨校選修的同學(xué)在中國(guó)大學(xué)MOOC平臺(tái)上的評(píng)教如下.

用戶“19981877108”的評(píng)教:“老師講的深入淺出,講解的非常透徹.讓我對(duì)軟件有了全新的認(rèn)識(shí).”

用戶“19972216167”的評(píng)教:“講解有條理,并且有可看性.”

用戶“楊玉潔ykt1503729963489”的評(píng)教:“老師講的深入淺出,知識(shí)點(diǎn)清楚詳細(xì),通俗易懂,強(qiáng)力推薦!十分棒!”

圖4是中國(guó)大學(xué)MOOC平臺(tái)上的《樂學(xué)軟件工程》的評(píng)價(jià)截圖.慕課網(wǎng)址為http://www.icourse163.org/course/JXUFE-1002335005.

4 結(jié)語

傳統(tǒng)的軟件工程課程教學(xué)枯燥難懂、晦澀乏味,教學(xué)改革時(shí)不我待.破解方法之一是努力發(fā)掘日常生活中能夠映射到專業(yè)知識(shí)學(xué)習(xí)的事例,用常見的案例來闡述枯燥的專業(yè)原理,使教和學(xué)成為有趣的探討,也給學(xué)生理解專業(yè)知識(shí)打下深刻的烙印.誠(chéng)然,軟件工程在不斷地發(fā)展,內(nèi)容也不斷更新,還有更多、更好的生活案例有待發(fā)掘,期待同仁們探索并分享,以改進(jìn)專業(yè)課程的教學(xué)效果,使更多的學(xué)習(xí)者受益.

參考文獻(xiàn):

〔1〕教育部高等學(xué)校計(jì)算機(jī)類專業(yè)教學(xué)指導(dǎo)委員會(huì),全國(guó)高等學(xué)校計(jì)算機(jī)教育研究會(huì).培養(yǎng)計(jì)算機(jī)類專業(yè)學(xué)生解決負(fù)責(zé)工程問題的能力[M].北京:清華大學(xué)出版社,2018.140-149.

〔2〕張海藩,牟永敏.軟件工程導(dǎo)論(第6版)[M].北京:清華大學(xué)出版社,2013.8.

〔3〕柏松.中文版Dreamweaver網(wǎng)頁(yè)設(shè)計(jì)[M].上海:上海科學(xué)普及出版社,2009.9.

〔4〕狄國(guó)強(qiáng),楊小平,杜賓.軟件工程實(shí)驗(yàn)[M].北京:清華大學(xué)出版社,北京交通大學(xué)出版社,2008.2.

〔5〕狄國(guó)強(qiáng).軟件工程實(shí)踐教學(xué)探討.2007年度全國(guó)高校軟件工程專業(yè)教育年會(huì)論文集[M].北京:高等教育出版社,2008.4.

〔6〕狄國(guó)強(qiáng).移動(dòng)互連網(wǎng)的遠(yuǎn)程教育支持服務(wù)[J].教育信息化,2005(06):70-71.

〔7〕萬常選,劉喜平,廖國(guó)瓊,吳京慧,劉愛紅.數(shù)據(jù)庫(kù)系統(tǒng)原理課程的翻轉(zhuǎn)課堂教學(xué)模式探索[J].計(jì)算機(jī)教育,2015(20):53-57+63.

猜你喜歡
生活案例軟件工程教學(xué)改革
結(jié)合生活案例提高道德認(rèn)知的研究
依托工作室的軟件工程實(shí)踐教學(xué)研究
基于工程教育認(rèn)證的《軟件工程》課程教學(xué)質(zhì)量建設(shè)研究 
關(guān)于如何創(chuàng)新和完善計(jì)算機(jī)軟件工程管理的探討
基于人才培養(yǎng)的技工學(xué)校德育實(shí)效性研究
現(xiàn)代信息技術(shù)在高職數(shù)學(xué)教學(xué)改革中的應(yīng)用研究
以職業(yè)技能競(jìng)賽為導(dǎo)向的高職單片機(jī)實(shí)踐教學(xué)改革研究
微課時(shí)代高等數(shù)學(xué)教學(xué)改革的實(shí)踐與探索
高中化學(xué)新課教學(xué)中生活案例的導(dǎo)入
探析數(shù)學(xué)生活化教學(xué)的有效手段
丽水市| 巴中市| 香港 | 丁青县| 东丰县| 申扎县| 建瓯市| 阿合奇县| 沂南县| 福海县| 辛集市| 宝清县| 漯河市| 永州市| 曲阜市| 余庆县| 四会市| 蒙阴县| 托克逊县| 常德市| 黔西| 平塘县| 龙游县| 习水县| 怀柔区| 淅川县| 同仁县| 本溪市| 广宁县| 托里县| 灵璧县| 象州县| 东乡| 新疆| 建始县| 大埔县| 阳东县| 大荔县| 墨脱县| 宜都市| 聊城市|