【摘 要】軟件工程作為工程概念與軟件技能培養(yǎng)的課程,選擇合適的教學內(nèi)容是提高軟件工程基礎(chǔ)理論學習效果和培養(yǎng)軟件開發(fā)能力的重要環(huán)節(jié)。本文結(jié)合多年的軟件工程教學經(jīng)驗和內(nèi)容改革實踐,闡述了教學內(nèi)容改革的必要和提出了改革的方法;目的是能夠有效培養(yǎng)出對軟件工程基礎(chǔ)理論有清晰理解,并能學以致用的符合社會需求的合格軟件人才。
【關(guān)鍵詞】教學內(nèi)容;結(jié)構(gòu)化方法;面向?qū)ο蠓椒?;軟件框?/p>
一、軟件工程教學內(nèi)容的現(xiàn)實情況
隨著大數(shù)據(jù)、云計算時代的來臨,各種軟件技術(shù)和體系結(jié)構(gòu)層出不窮。但是長期以來,由于軟件工程課程教學偏重于方法學理論的講授,授課內(nèi)容核心是軟件生命周期的工程理論與方法。而在教學內(nèi)容的選擇上,目前很多高校采用《軟件工程導(dǎo)論》、《軟件工程-實踐者的方法》等經(jīng)典教材,它們雖然闡述系統(tǒng),但其為了保證知識體系的完整性,過多偏重于理論和接過以及各種體系的闡述,有時難以讓學生掌握學習的重點。同時,而有的高校嘗試著選用其它一些教材,這種闡述值得鼓勵,但應(yīng)特別注意避免選用一些斷章取義加上粗糙的案例之類的教材。它們表面上很實用,但其實是對整個軟件工程知識的錯誤傳播。從而,使學生僅僅從簡單而不成體系的實例中,只能偏重于對代碼的片面強調(diào),而忽略了對軟件工程基本理論、方法的理解。從而產(chǎn)生了感覺軟件工程對軟件開發(fā)的作用不大的錯覺。他們對軟件工程應(yīng)用的流行方法缺乏了解,缺乏基本概念和經(jīng)典流程的應(yīng)用能力。此外,軟件工程的某些教學內(nèi)容也未能跟蹤當前的軟件工程技術(shù)的流行熱點,某些知識相當過時,即使面向?qū)ο蟮闹髁鞣椒ǘ缄U述不清。當前,我國業(yè)界的軟件開發(fā)水平和工程能力和發(fā)達國家有非常大的差距,甚至和印度的軟件業(yè)都有相當大的差距。鑒于這樣的情況,學校迫切需要對軟件工程的教學內(nèi)容加以改革,逐步建立教學與業(yè)界應(yīng)用相結(jié)合的教學內(nèi)容,著力培養(yǎng)學生的工程化開發(fā)能力,進而形成一個融基礎(chǔ)理論和參加軟件開發(fā)實踐的教學培養(yǎng)機制。
二、教學內(nèi)容改革與實踐
教學內(nèi)容的改革就是要打破傳統(tǒng)軟件工程課程教學的不足,充分調(diào)動學生學習的積極性和主動性,極大地激發(fā)學生的學習興趣,以軟件開發(fā)實踐帶動軟件工程理論的學習。本人認為,課程教學內(nèi)容應(yīng)包含這兩方面的特性:軟件工程知識體系的框架基礎(chǔ)性和當前流行技術(shù)與框架的可用性。第一個特性是指它應(yīng)該包含軟件工程理論的基本骨架前提下,應(yīng)該貫穿兩條理論與方法主線:其一是結(jié)構(gòu)化分析和設(shè)計。它在軟件開發(fā)學上具有舉足輕重的地位,目前仍有廣泛應(yīng)用,特別是對某些有限內(nèi)存的嵌入式軟件系統(tǒng)的開發(fā)中,而且它和某些結(jié)構(gòu)化語言如C語言有緊密結(jié)合的優(yōu)勢。其二是面向?qū)ο箝_發(fā)的理論和方法。該方法已經(jīng)非常的成熟,它具有易交流,并且在系統(tǒng)的分析、設(shè)計和實施以及測試等各個階段無縫的連接的優(yōu)越性。這是傳統(tǒng)的軟件開發(fā)方法不可比擬的,同時,面向?qū)ο蟮姆椒ㄒ蔡峁┝撕芏喑墒斓念悗旌涂蚣?,比如J2EE和NET的框架,非常便于應(yīng)用的快速開發(fā)。比如常見的開發(fā)工具、開發(fā)框架,能夠便捷地進行組合,表現(xiàn)了它的實用能和便捷開發(fā)能力。此外,當前流行的概念和技術(shù),也應(yīng)該作為它的一部分加以介紹,如云計算、分布式計算和云存儲以及大數(shù)據(jù)等知識和框架都應(yīng)該有所補充。這樣教學內(nèi)容改革就能改變能使學生對所學理論知識有所鞏固并加以應(yīng)用,同時,能培養(yǎng)其對軟件工程的主動學習興趣,從而使教學出現(xiàn)可喜的變化。
我們所做教學內(nèi)容改革實踐是在軟件工程理論知識的基礎(chǔ)上,挑選某種易于擴展、應(yīng)用的工程技術(shù)方法,在某種軟件工程規(guī)范的要求下進行軟件開發(fā)。并有效地引入各種框架和結(jié)構(gòu),如SSH輕量級的JavaEE體系結(jié)構(gòu),同時使學生熟練掌握必要的開發(fā)工具的使用。軟件工程教學內(nèi)容改革實踐所做的工作是:首先,關(guān)于軟件系統(tǒng)設(shè)計相結(jié)合的教學內(nèi)容的設(shè)計上,要以學生興趣為中心來選擇教學內(nèi)容。其次,要提供合適的教學示范案例,并不斷地引導(dǎo)學生向正確的方向前進。
三、教學內(nèi)容改革方法和目的
教學內(nèi)容改革的出發(fā)點是根據(jù)課程教學的具體要求,以學生為主體,教學的內(nèi)容側(cè)重于加深對理論的理解和工程技能的培養(yǎng)。根據(jù)實踐,這里總結(jié)出方法是:第一,明確教學的目的與期望,以兩條方法主線選擇教學內(nèi)容。教學準備階段就是對教學內(nèi)容所涉及的工程知識進行精煉概括與總結(jié),使學生易于理解這些知識關(guān)系和層次結(jié)構(gòu)。第二,精心的選擇教學示范案例。使其能夠覆蓋教學內(nèi)容能夠滿足教學要求,又要精干有效,切忌過于龐雜。第三,增添軟件開發(fā)的相關(guān)指導(dǎo)內(nèi)容。并適時地監(jiān)督和引導(dǎo),使學生較好地掌握軟件工程的基本技能并鞏固對應(yīng)的工程理論知識。第四,選拔優(yōu)秀示范開發(fā)素材。對于一些開發(fā)能力強的學生,可組合成為精干、合作的開發(fā)小組,可選擇小型軟件項目來進行開發(fā)與設(shè)計。對于完成的軟件,應(yīng)組織有學生參與對所完成軟件從文檔、設(shè)計過程、運行性能等待方面來進行優(yōu)化,并加以整理和完善。把它們增補作為課堂教學內(nèi)容,使所有學生都能受益,整體上提高軟件工程課程的教學效果。
總之,軟件工程教學內(nèi)容改革應(yīng)該以基本理論與基本概念占據(jù)了教學的主體,同時訓(xùn)練學生軟件工程技術(shù)的基本技能。目的是培養(yǎng)學生在工程實踐中發(fā)現(xiàn)知識與分析、解決問題的能力。這樣就能夠使學生理解并掌握基本的需求獲取與分析、系統(tǒng)分析與設(shè)計等軟件生命周期的技能,使他們畢業(yè)后能夠順利過渡到實際的軟件應(yīng)用開發(fā)中,在實踐中對軟件工程理論進行檢驗并發(fā)展,并同時成長成為社會急需的各類軟件人才。
【參考文獻】
[1]大數(shù)據(jù)時代下軟件工程專業(yè)教學改革的探討,2016(2):127-129
[2]鄭英姿.《軟件工程》教學改革的研究[J].新教育時代,2015(2)
[3]賴均.軟件工程課程設(shè)計實踐教學探索[J].課程教育研究,2014(2):243-244
[4]賴均,周丹.軟件工程課程教學與改革[J].科技資訊,2011(2)endprint