軟件工程項(xiàng)目驅(qū)動(dòng)實(shí)踐能力的培養(yǎng)
時(shí)間:2022-06-17 03:16:02
導(dǎo)語(yǔ):軟件工程項(xiàng)目驅(qū)動(dòng)實(shí)踐能力的培養(yǎng)一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
摘要:軟件工程實(shí)踐教學(xué)與理論教學(xué)存在脫節(jié)問(wèn)題,學(xué)生實(shí)踐能力培養(yǎng)較為薄弱,與市場(chǎng)需求不匹配。為能夠提高軟件工程實(shí)踐教學(xué),對(duì)目前軟件工程課程教學(xué)現(xiàn)狀進(jìn)行分析,提出了應(yīng)對(duì)的軟件工程教學(xué)的措施,通過(guò)案例教學(xué),使學(xué)生理解軟件開(kāi)發(fā)過(guò)程中的知識(shí)點(diǎn),把抽象的知識(shí)具體化、形象化,以輔助學(xué)生理解理論與實(shí)踐的知識(shí)。在課下,教師提供必要的項(xiàng)目案例,學(xué)生多借鑒和吸收實(shí)際項(xiàng)目開(kāi)發(fā)經(jīng)驗(yàn);通過(guò)慕課、在線課堂等,對(duì)理論知識(shí)的學(xué)習(xí);在課堂上,教師根據(jù)學(xué)生提出的問(wèn)題進(jìn)行答疑、解惑。實(shí)踐課學(xué)生選擇項(xiàng)目,利用項(xiàng)目完成情況對(duì)學(xué)生進(jìn)行實(shí)踐能力的考核。實(shí)踐課程的項(xiàng)目驅(qū)動(dòng)教學(xué),利用所掌握的知識(shí),鍛煉學(xué)生的動(dòng)手能力,項(xiàng)目與將來(lái)參加競(jìng)賽、畢業(yè)設(shè)計(jì)等有一定關(guān)系。通過(guò)項(xiàng)目的深入持續(xù)的開(kāi)發(fā),不斷提升學(xué)生動(dòng)手能力。通過(guò)實(shí)踐證明了提出的應(yīng)對(duì)措施和實(shí)施過(guò)程有效,提高了學(xué)生的軟件工程素質(zhì)。
關(guān)鍵詞:案例教學(xué);軟件工程;項(xiàng)目驅(qū)動(dòng);案例實(shí)施
軟件工程是一門(mén)指導(dǎo)軟件開(kāi)發(fā)和維護(hù)的一門(mén)工程學(xué)科[1],2002年為了適應(yīng)市場(chǎng)需求,教育部把軟件工程列為新增專業(yè)[2],而市場(chǎng)對(duì)軟件開(kāi)發(fā)人員持續(xù)的需要,軟件工程專業(yè)一直是熱門(mén)專業(yè),就業(yè)好、薪資高,受到越來(lái)越多的學(xué)生選擇這個(gè)專業(yè)。隨著人工智能作為國(guó)家戰(zhàn)略,對(duì)軟件人才的需求繼續(xù)擴(kuò)大。軟件工程專業(yè)課程設(shè)置都是圍繞軟件開(kāi)發(fā)和維護(hù)的內(nèi)容設(shè)置的,使培養(yǎng)出來(lái)的學(xué)生能夠勝任軟件開(kāi)發(fā)和維護(hù)。而軟件開(kāi)發(fā)需要學(xué)生具備一定的實(shí)踐動(dòng)手能力,能夠綜合運(yùn)用多種計(jì)算機(jī)知識(shí),例如程序設(shè)計(jì)語(yǔ)言、數(shù)據(jù)結(jié)構(gòu)、計(jì)算機(jī)網(wǎng)絡(luò)、操作系統(tǒng)、數(shù)據(jù)庫(kù)原理等[2]。實(shí)踐能力的培養(yǎng)不是知識(shí)的傳播,而是知識(shí)的運(yùn)用,大多數(shù)學(xué)生在學(xué)習(xí)過(guò)程中,有一定的難度,容易造成學(xué)生無(wú)法繼續(xù)堅(jiān)持學(xué)習(xí)?!盾浖こ獭氛n程是計(jì)算機(jī)類(lèi)的核心課程,對(duì)于軟件工程專業(yè)更是核心課程?!盾浖こ獭氛n程是理論和實(shí)踐都要并重的課程,受課時(shí)的限制、課程的難度、學(xué)生基礎(chǔ)等因素,往往達(dá)不到課程設(shè)置的目標(biāo)。傳統(tǒng)的理論教學(xué)模式需要進(jìn)一步改革,以彌補(bǔ)課時(shí)不足、學(xué)生基礎(chǔ)薄弱、缺少實(shí)踐練習(xí)等缺陷。為了更好掌握《軟件工程》課程中的知識(shí),本文通過(guò)對(duì)目前《軟件工程》課程的不足進(jìn)行分析,提出針對(duì)性的措施,給出詳細(xì)的實(shí)施過(guò)程,以提高學(xué)生的實(shí)踐動(dòng)手能力。使培養(yǎng)的學(xué)生具有分析問(wèn)題、解決問(wèn)題的能力,有團(tuán)隊(duì)精神,培養(yǎng)學(xué)生學(xué)習(xí)興趣。在學(xué)生項(xiàng)目實(shí)踐練習(xí)中,結(jié)合后期的畢業(yè)設(shè)計(jì)、畢業(yè)實(shí)習(xí)、競(jìng)賽及大學(xué)生創(chuàng)新項(xiàng)目等目標(biāo),進(jìn)行長(zhǎng)期一致性規(guī)劃設(shè)計(jì),減少學(xué)生的重復(fù)勞動(dòng),使學(xué)生的實(shí)踐項(xiàng)目具有一定深度和廣度,與市場(chǎng)需求的軟件盡量接軌,為學(xué)生就業(yè)上崗打好基礎(chǔ)。
1《軟件工程》課程教學(xué)現(xiàn)狀分析
《軟件工程》課程理論知識(shí)是從軟件開(kāi)發(fā)經(jīng)驗(yàn)中總結(jié)出來(lái)的,對(duì)軟件開(kāi)發(fā)初學(xué)者具有一定的指導(dǎo)意義,使初學(xué)者能夠快速地掌握軟件開(kāi)發(fā),少走彎路,把別人的經(jīng)驗(yàn)變?yōu)樽约旱慕?jīng)驗(yàn),因此學(xué)習(xí)《軟件工程》課程,能使初學(xué)者更好地掌握軟件開(kāi)發(fā)知識(shí),并獲得一定的軟件開(kāi)發(fā)經(jīng)驗(yàn)。軟件開(kāi)發(fā)是為用戶服務(wù)的,而用戶對(duì)軟件的需求也是不斷變化的,從功能、性能、硬件環(huán)境等方面,對(duì)軟件開(kāi)發(fā)具有一定的要求和約束,因此開(kāi)發(fā)出來(lái)的軟件常常需要進(jìn)行維護(hù)。在軟件開(kāi)發(fā)和維護(hù)的過(guò)程中,出現(xiàn)了很多問(wèn)題,例如需求不明確,開(kāi)發(fā)的軟件不是用戶真正需要的軟件等。軟件開(kāi)發(fā)過(guò)程中的這些問(wèn)題,即軟件危機(jī),為了解決這個(gè)問(wèn)題,提出了軟件工程的概念。讓軟件開(kāi)發(fā)盡可能擺脫軟件危機(jī),在成本、效率、質(zhì)量等方面都滿足用戶和開(kāi)發(fā)者的要求。而在《軟件工程》課程的教學(xué)過(guò)程中,出現(xiàn)了一些問(wèn)題,具體表現(xiàn)在如下方面。1.1理論教學(xué)抽象?!盾浖こ獭氛n程的理論知識(shí)是從軟件開(kāi)發(fā)經(jīng)驗(yàn)中總結(jié)出來(lái)的,這些經(jīng)驗(yàn)被證明是非常有指導(dǎo)意義的。而很多學(xué)生剛接觸這些理論知識(shí),沒(méi)有編程的經(jīng)驗(yàn),無(wú)法理解書(shū)中所講述的知識(shí),沒(méi)有引起共鳴。學(xué)生在學(xué)習(xí)理論知識(shí)時(shí),非常抽象。面對(duì)如此抽象的理論知識(shí),學(xué)生提不起學(xué)習(xí)興趣,甚至產(chǎn)生了厭學(xué)情緒[3]。另外,教材中的案例,多數(shù)是從國(guó)外教材中翻譯過(guò)來(lái),與學(xué)生的知識(shí)背景不符,學(xué)生無(wú)法理解案例的背景知識(shí),案例并沒(méi)有起到應(yīng)有的作用。1.2基礎(chǔ)課程多。《軟件工程》課程教學(xué)要求學(xué)生需要學(xué)習(xí)前期課程[3],例如程序設(shè)計(jì)語(yǔ)言、數(shù)據(jù)結(jié)構(gòu)和算法、數(shù)據(jù)庫(kù)原理、計(jì)算機(jī)網(wǎng)絡(luò)、操作系統(tǒng)等,學(xué)生對(duì)前期課程掌握程度差異性較大,這給教學(xué)帶來(lái)了一定的難度。在教學(xué)過(guò)程中,需要對(duì)前期的課程進(jìn)行復(fù)習(xí),打好基礎(chǔ)。另外,學(xué)生掌握的前期課程,對(duì)知識(shí)的綜合應(yīng)用練習(xí)較少,大多數(shù)表現(xiàn)在知識(shí)的掌握上。開(kāi)發(fā)軟件系統(tǒng)需要綜合運(yùn)用前期課程知識(shí),這給學(xué)生軟件開(kāi)發(fā)能力的培養(yǎng),帶來(lái)了一定的困難。1.3學(xué)生動(dòng)手實(shí)踐機(jī)會(huì)少。前期的課程教學(xué)中,往往都是小程序的練習(xí),這與軟件系統(tǒng)開(kāi)發(fā)的要求相比,差距非常大。學(xué)生還不具有軟件開(kāi)發(fā)經(jīng)驗(yàn),從未在軟件開(kāi)發(fā)上進(jìn)行專門(mén)的訓(xùn)練[4],對(duì)軟件開(kāi)發(fā)就是編寫(xiě)程序的思想還比較嚴(yán)重。因此,軟件工程教學(xué)非常有必要對(duì)學(xué)生進(jìn)行專門(mén)的實(shí)踐練習(xí),通過(guò)項(xiàng)目實(shí)踐讓學(xué)生把所學(xué)的知識(shí)轉(zhuǎn)化為軟件,對(duì)知識(shí)的掌握提出更高的要求。1.4缺乏必要案例學(xué)習(xí)。軟件工程教材中出現(xiàn)的案例,一般都是為了解釋理論知識(shí)的,個(gè)別案例是從國(guó)外的教材中翻譯過(guò)來(lái)的,并不適合學(xué)生閱讀和學(xué)習(xí)。教師有必要在教學(xué)中挑選合適的案例進(jìn)行講述。目前網(wǎng)絡(luò)資源比較豐富,通過(guò)課下整理案例,相信可以挑選出合適的案例作為教學(xué)內(nèi)容,幫助學(xué)生理解理論知識(shí)。另外,對(duì)實(shí)踐教學(xué)內(nèi)容,教師需要挑選一些完整的案例,讓學(xué)生學(xué)習(xí)和閱讀,這些案例中的程序能夠運(yùn)行,學(xué)生根據(jù)案例的文檔和資料,理解軟件工程中的相關(guān)理論知識(shí)[5]。1.5缺乏較為直接的視頻教學(xué)。學(xué)生的基礎(chǔ)知識(shí)參差不齊,對(duì)于基礎(chǔ)較差的學(xué)生,簡(jiǎn)單的語(yǔ)言介紹,并不能讓學(xué)生掌握其中的含義,需要?jiǎng)邮盅菔拒浖_(kāi)發(fā)過(guò)程。對(duì)于課時(shí)限制的教學(xué)來(lái)說(shuō),課堂現(xiàn)場(chǎng)展示軟件開(kāi)發(fā)過(guò)程并不現(xiàn)實(shí)。因此教師需要提供一些視頻教學(xué)素材,讓學(xué)生在課下觀看[6]。1.6學(xué)生缺乏學(xué)習(xí)毅力。軟件開(kāi)發(fā)是腦力勞動(dòng),需要學(xué)生的抽象思維能力。軟件開(kāi)發(fā)不同于現(xiàn)實(shí)中的硬件制作過(guò)程,無(wú)法觸摸到實(shí)際的產(chǎn)品,軟件開(kāi)發(fā)是邏輯產(chǎn)品,制作過(guò)程抽象。學(xué)生在學(xué)習(xí)過(guò)程中,遇到較大的困難,如果這些困難無(wú)法解決,學(xué)生不能明白其中的含義,勢(shì)必打擊學(xué)生學(xué)習(xí)的積極性。有些學(xué)生在學(xué)習(xí)中,可能堅(jiān)持一段時(shí)間后,主動(dòng)選擇了放棄;一方面是學(xué)生學(xué)習(xí)方法不對(duì),沒(méi)有找到有效的學(xué)習(xí)辦法,另一方面,沒(méi)有專家的指導(dǎo),自己遇到困難一時(shí)無(wú)法解決,浪費(fèi)了大量的時(shí)間,學(xué)生有時(shí)候并不愿意去請(qǐng)教教師或同學(xué),或者去找資料解決問(wèn)題。也就是說(shuō),學(xué)生在學(xué)習(xí)軟件開(kāi)發(fā)一段時(shí)間后,當(dāng)遇到困難無(wú)法解決,或感覺(jué)學(xué)習(xí)非常吃力的時(shí)候,選擇了放棄。其實(shí)剛開(kāi)始遇到困難是正常的,只要不放棄,學(xué)習(xí)方法不對(duì)的時(shí)候,請(qǐng)教老師調(diào)整學(xué)習(xí)方法,就能找到正確的學(xué)習(xí)方法。另外,學(xué)生要多交流,主動(dòng)尋求幫助,解決遇到的困難。1.7教師素質(zhì)有待提高。軟件開(kāi)發(fā)需要老師指導(dǎo),如果教師的軟件開(kāi)發(fā)水平較高,就可以很好地指導(dǎo)學(xué)生進(jìn)行學(xué)習(xí)。然而,高校在招聘教師的時(shí)候,比較看重學(xué)歷,對(duì)教師的軟件開(kāi)發(fā)水平并未做過(guò)多的考核。即使有豐富經(jīng)驗(yàn)的一線開(kāi)發(fā)人員,如果想在高校從事教學(xué),而學(xué)歷較低,不予錄用。其實(shí),目前高校中比較缺乏具有豐富經(jīng)驗(yàn)的軟件開(kāi)發(fā)人員。需要提升教師的軟件開(kāi)發(fā)能力才能滿足市場(chǎng)的需要[7]。當(dāng)前,移動(dòng)手持設(shè)備開(kāi)發(fā),例如Android、IOS開(kāi)發(fā)等,都需要教師學(xué)習(xí)新的知識(shí),才能夠指導(dǎo)學(xué)生進(jìn)行軟件開(kāi)發(fā)。當(dāng)前市場(chǎng)上軟件開(kāi)發(fā)人員工資普遍較高,高校的薪酬很難招到水平較高的軟件開(kāi)發(fā)人員。1.8課程考核形式單一。軟件工程課程的考核以平時(shí)作業(yè)和期末的考試為主,并沒(méi)有突出學(xué)生的實(shí)踐動(dòng)手能力。過(guò)程的考核也非常重要,因此需要對(duì)課程考核進(jìn)行改進(jìn)。突出學(xué)生的動(dòng)手能力,過(guò)程考核督促學(xué)生在平時(shí)的學(xué)習(xí)中,花費(fèi)足夠的時(shí)間學(xué)習(xí)。
2軟件工程課程項(xiàng)目驅(qū)動(dòng)教學(xué)設(shè)計(jì)
軟件工程教學(xué)存在很多不足,針對(duì)這些不足進(jìn)行改進(jìn),提高學(xué)生的動(dòng)手能力。軟件工程教學(xué),不僅僅是講述軟件工程的理論,同時(shí)也要考慮學(xué)生的基礎(chǔ)水平,針對(duì)基礎(chǔ)水平不同的學(xué)生,提出個(gè)性化教學(xué)。既要講授理論知識(shí),也要鍛煉學(xué)生的動(dòng)手能力。從學(xué)生方面提出針對(duì)性的教學(xué),給學(xué)生提供學(xué)習(xí)環(huán)境,有動(dòng)手練習(xí)的機(jī)會(huì)。教師本人不斷提高自己業(yè)務(wù)水平,適應(yīng)教學(xué)需求,迎合市場(chǎng)對(duì)人才需要,培養(yǎng)合格的軟件開(kāi)發(fā)人才。從學(xué)生各個(gè)方面考慮,有必要對(duì)學(xué)生進(jìn)行長(zhǎng)遠(yuǎn)規(guī)劃,盡可能減少重復(fù)的勞動(dòng),空出更多的學(xué)習(xí)時(shí)間。學(xué)生在后期還要進(jìn)行畢業(yè)設(shè)計(jì)、畢業(yè)實(shí)習(xí)、參加競(jìng)賽或者主持及參加大學(xué)生創(chuàng)新項(xiàng)目等,這些內(nèi)容都可以與軟件工程的課程聯(lián)系起來(lái),統(tǒng)籌規(guī)劃,長(zhǎng)遠(yuǎn)考慮學(xué)生的實(shí)踐能力培養(yǎng)。如圖1所示,項(xiàng)目驅(qū)動(dòng)解決方案示意圖。就從以下幾個(gè)方面提出教學(xué)設(shè)計(jì)。2.1補(bǔ)習(xí)前序薄弱課程。某些學(xué)生在前序課程中,對(duì)基礎(chǔ)知識(shí)掌握較為薄弱,能力較差的學(xué)生,可在教學(xué)中,進(jìn)行必要的知識(shí)補(bǔ)充,以便學(xué)生具備軟件開(kāi)發(fā)的基礎(chǔ)知識(shí)。另外,也要對(duì)學(xué)生進(jìn)行必要的統(tǒng)計(jì),以便摸底學(xué)生的基礎(chǔ)水平,可以借助網(wǎng)絡(luò)試卷測(cè)試,客觀評(píng)價(jià)學(xué)生的基礎(chǔ)水平。另外,借助慕課、網(wǎng)絡(luò)資源課等網(wǎng)絡(luò)資源,學(xué)生進(jìn)行復(fù)習(xí)相關(guān)知識(shí),以加強(qiáng)基礎(chǔ)知識(shí)的掌握。教師要引導(dǎo)、輔助、創(chuàng)造學(xué)習(xí)環(huán)境等,使學(xué)生盡快地補(bǔ)充薄弱內(nèi)容。2.2理論教學(xué)案例化。對(duì)于理論抽象難懂的問(wèn)題,需要用更具體的內(nèi)容進(jìn)行講述,教師在教學(xué)過(guò)程中,需要挑選合適的案例進(jìn)行講述,以具體的案例形式,使學(xué)生更容易理解。其實(shí),案例的選擇需要教師篩選,有些適合理論教學(xué),有些適合實(shí)踐教學(xué),教師要做分類(lèi)。案例盡量選擇學(xué)生熟悉的內(nèi)容,有利于學(xué)生利用情景再現(xiàn)其過(guò)程。例如學(xué)生管理系統(tǒng),需要學(xué)生選課、查課表等,學(xué)生在日常生活中,就已經(jīng)使用過(guò)學(xué)生管理系統(tǒng),對(duì)其中的操作比較熟悉,學(xué)生接觸到熟悉的案例,更容易理解和接受[5]。傳統(tǒng)的師傅帶徒弟的模式,仍然具有一定的借鑒意義。在軟件開(kāi)發(fā)教學(xué)過(guò)程中,如果學(xué)生能夠在真實(shí)的案例中學(xué)習(xí)到相關(guān)知識(shí),舉一反三,就可以掌握軟件開(kāi)發(fā)的精髓。案例教學(xué)越來(lái)越重要,相關(guān)的軟件培訓(xùn)公司就是盡可能的少講理論知識(shí),直接動(dòng)手傳授軟件開(kāi)發(fā)過(guò)程[10]。通過(guò)這種模式,學(xué)生的動(dòng)手能力得到培養(yǎng)。而大學(xué)課程教學(xué),缺少必要的課時(shí)或相關(guān)培訓(xùn)教師,因此通過(guò)購(gòu)買(mǎi)案例進(jìn)行課下教學(xué),案例的內(nèi)容要跟蹤前沿技術(shù),學(xué)生跟著案例就可以進(jìn)行學(xué)到相關(guān)的知識(shí)。一個(gè)案例的學(xué)習(xí),積累了相關(guān)的經(jīng)驗(yàn),學(xué)生就可以通過(guò)閱讀大量的案例,進(jìn)行其他知識(shí)的掌握。文檔代碼的閱讀量非常重要,是借鑒別人的經(jīng)驗(yàn),從中吸取精華,在自己的軟件開(kāi)發(fā)中,運(yùn)用這些知識(shí),可以加快軟件的開(kāi)發(fā),提高軟件開(kāi)發(fā)質(zhì)量,其實(shí)也是軟件重用的思想。軟件開(kāi)發(fā)不提倡自己編寫(xiě)軟件的各個(gè)內(nèi)容,有些內(nèi)容可以通過(guò)重用,快速地搭建軟件,節(jié)約了時(shí)間和成本。學(xué)生需要有軟件重用的思想,其實(shí)很多的軟件,就是利用這種模式開(kāi)發(fā)出來(lái)的。案例的學(xué)習(xí)和借鑒就屬于軟件重用的一種,具有非常大的借鑒意義。2.3實(shí)踐教學(xué)項(xiàng)目驅(qū)動(dòng)教學(xué)。學(xué)生在軟件工程課程中,學(xué)生進(jìn)行3-5人分組,小組選擇一個(gè)項(xiàng)目,項(xiàng)目具有一定的實(shí)踐鍛煉的效果,結(jié)合后期學(xué)生的畢業(yè)設(shè)計(jì)、實(shí)習(xí)、競(jìng)賽、或主持或參與大學(xué)生項(xiàng)目等,學(xué)生選題不能具有隨意性[8-9]。教師在選題過(guò)程中要給予指導(dǎo)并提供建設(shè)性的意見(jiàn),學(xué)生的選題要有長(zhǎng)遠(yuǎn)的規(guī)劃性,不僅僅是完成當(dāng)前的課程實(shí)踐作業(yè),后期的畢業(yè)設(shè)計(jì)、實(shí)習(xí)、競(jìng)賽、主持或參與的大學(xué)生項(xiàng)目結(jié)合起來(lái),這樣后期的工作量就相對(duì)輕松,可以節(jié)約大量的時(shí)間,學(xué)生在空余的時(shí)間內(nèi)容,可以學(xué)習(xí)更多的內(nèi)容。項(xiàng)目的選題長(zhǎng)遠(yuǎn)規(guī)劃非常重要,個(gè)別學(xué)生可能并未考慮這些,需要教師給予引導(dǎo)。項(xiàng)目實(shí)踐的內(nèi)容,學(xué)生可以完成較為簡(jiǎn)單的項(xiàng)目,課程結(jié)束后,學(xué)生可以在項(xiàng)目上進(jìn)行擴(kuò)充,實(shí)現(xiàn)更加復(fù)雜的功能。這樣學(xué)生可以運(yùn)用更多的知識(shí),繼續(xù)完善項(xiàng)目,更加接近實(shí)用性,開(kāi)發(fā)完善的項(xiàng)目,最終可以提供給用戶使用。完成項(xiàng)目開(kāi)發(fā)的學(xué)生在就業(yè)中更具有競(jìng)爭(zhēng)性,能更快地適應(yīng)崗位工作。學(xué)生選題之前,也可以對(duì)市場(chǎng)需求進(jìn)行調(diào)研,了解社會(huì)需要的人才狀況,進(jìn)而學(xué)習(xí)相關(guān)技術(shù)知識(shí),提高自身競(jìng)爭(zhēng)力。2.4網(wǎng)絡(luò)視頻案例教學(xué)。這種模式可以通過(guò)學(xué)校購(gòu)買(mǎi),網(wǎng)絡(luò)上可以選擇相關(guān)的案例學(xué)習(xí)。學(xué)生也可以自己尋找免費(fèi)的網(wǎng)絡(luò)資源,也可以付費(fèi)購(gòu)買(mǎi)網(wǎng)絡(luò)資源。這樣可以快速地掌握相關(guān)的技術(shù)知識(shí),節(jié)約了大量的時(shí)間。視頻案例學(xué)習(xí),可以觀看培訓(xùn)老師一步一步地軟件制作過(guò)程,具有軟件開(kāi)發(fā)情景再現(xiàn)場(chǎng)景,跟隨老師的思路,一步步學(xué)習(xí)軟件開(kāi)發(fā),慢慢消化所學(xué)的知識(shí),并且對(duì)知識(shí)的應(yīng)用有一個(gè)模仿案例,通過(guò)長(zhǎng)時(shí)間的積累,學(xué)生就可以自己領(lǐng)悟軟件開(kāi)發(fā)的真諦,直至自己進(jìn)行軟件開(kāi)發(fā)。2.5培養(yǎng)學(xué)生軟件開(kāi)發(fā)興趣。學(xué)生在學(xué)習(xí)軟件開(kāi)發(fā)遇到困難,需要學(xué)習(xí)能夠解決,但是在學(xué)習(xí)的道路上,困難重重,能夠堅(jiān)持下來(lái),需要一定毅力,因此在學(xué)習(xí)的道路上,學(xué)生和老師互相加油,共同迎接困難。教師在教學(xué)過(guò)程中,多講述自己的經(jīng)驗(yàn),以啟發(fā)學(xué)生。在學(xué)習(xí)的道路上,沒(méi)有捷徑可走,唯有知識(shí)的積累,才能有量變到質(zhì)變。在學(xué)習(xí)的過(guò)程中,多思考,多借鑒,多搜索,多問(wèn)同學(xué)和老師。困難遇到得多了,慢慢地就積累了經(jīng)驗(yàn),水平才能提高。在水平提高后,學(xué)生的學(xué)習(xí)興趣就提高了,也會(huì)慢慢地帶動(dòng)身邊的人去學(xué)習(xí)。2.6教師業(yè)務(wù)能力提升。教師需要不斷提高自己的軟件開(kāi)發(fā)能力,要想學(xué)生有一碗水,老師就要有一桶水的水平。因此老師要在課下,不斷鉆研業(yè)務(wù)水平,提高自己的動(dòng)手能力,在教學(xué)過(guò)程中,才能做到游刃有余,得心應(yīng)手。老師的水平得到學(xué)生的認(rèn)可,學(xué)生才能愿意跟著老師學(xué)習(xí),聽(tīng)老師的安排。教師利用慕課,假期培訓(xùn)等方式,提高自己業(yè)務(wù)素質(zhì)。學(xué)院要充分給予教師自由,提供培訓(xùn)機(jī)會(huì)。教師在教研室活動(dòng)中,要和同行教師交流,相互之間交流經(jīng)驗(yàn),分享教學(xué)心得。相互分享自己的案例素材,以提高自己的教學(xué)水平。2.7重實(shí)踐考核方式。學(xué)生的考核方式,要想實(shí)踐能力傾斜。在平時(shí)的教學(xué)過(guò)程中,利用學(xué)生課下看視頻時(shí)間,作業(yè)完成情況,項(xiàng)目完成情況,個(gè)人項(xiàng)目匯報(bào)情況,期末成績(jī)等,綜合打分。表1給出考核的內(nèi)容。
3實(shí)施過(guò)程
3.1案例篩選。理論課教學(xué)過(guò)程中,為了更容易明白理論知識(shí),教師可在教學(xué)過(guò)程中,講述一些貼近學(xué)生生活的案例,促使學(xué)生更容易理解。在備課過(guò)程中,教師要整理案例材料,做到材料通俗易懂,服務(wù)理論教學(xué)。實(shí)踐課中,教師準(zhǔn)備完整案例,包含文檔和程序,程序配有完整的安裝說(shuō)明,以備學(xué)生運(yùn)行程序。實(shí)踐教學(xué)的案例,要完整的內(nèi)容。在實(shí)際教學(xué)過(guò)程中,能夠收集到較為完整的案例,并不容易,小型案例,可能比較簡(jiǎn)單,文檔資料并不齊全,需要教師進(jìn)行整理。另外,國(guó)內(nèi)很多軟件開(kāi)發(fā)公司,規(guī)模較小的企業(yè),對(duì)文檔的撰寫(xiě)重視不夠,往往程序的文檔材料,并不齊全。大型的軟件,有完整的文檔,內(nèi)容比較復(fù)雜,并不適合案例教學(xué)。3.2教師重現(xiàn)程序編寫(xiě)過(guò)程。教師在實(shí)踐教學(xué)過(guò)程中,需要用一個(gè)實(shí)際的案例進(jìn)行教學(xué),以提高學(xué)生的動(dòng)手能力。而實(shí)踐課時(shí)不足的情況下,教師可以課下錄制好,再發(fā)給學(xué)生課下觀看,這無(wú)疑增加了教師的負(fù)擔(dān),學(xué)院可以給予一定的補(bǔ)貼政策。教師在講述案例的過(guò)程中,要熟練教學(xué),需要教師在課下多進(jìn)行練習(xí),達(dá)到熟練的地步。完整的案例教學(xué),可以激發(fā)學(xué)生的學(xué)習(xí)興趣,也可以讓學(xué)生直觀地看到軟件制作的過(guò)程[11]。教學(xué)過(guò)程中,教師要有理論的知識(shí)講述,有實(shí)踐方面的操作,也有工具的使用。尤其在編碼過(guò)程中,遇到錯(cuò)誤如何處理的,這需要教師有一定的代碼調(diào)試功底,在教學(xué)過(guò)程中,有的放矢。教師在案例的講述過(guò)程中,盡量錄制課程,以便后期給更多的學(xué)生觀看。通過(guò)多年的積累,教師手頭的課程資料就更多、豐富、案例的講述也更得心應(yīng)手,畢竟是自己一手制作的。3.3教師提供教學(xué)資料。只通過(guò)任課教師的教學(xué)內(nèi)容,畢竟知識(shí)面有限。在目前互聯(lián)網(wǎng)比較發(fā)達(dá)的時(shí)代,慕課、網(wǎng)絡(luò)公開(kāi)課較為豐富的狀況下,教師可以在網(wǎng)絡(luò)上收集資料,通過(guò)網(wǎng)絡(luò)軟件把信息發(fā)送給學(xué)生[12]。學(xué)生只要愿意學(xué)習(xí),就可以掌握編程方面的知識(shí)。網(wǎng)絡(luò)可以更快讓學(xué)生接觸到前沿技術(shù),在畢業(yè)后能夠更好地勝任崗位,提高自身競(jìng)爭(zhēng)力。3.4嚴(yán)控學(xué)生項(xiàng)目。光看不練,能力無(wú)法提高,在學(xué)生編寫(xiě)軟件過(guò)程中,處于初級(jí)階段,會(huì)遇到各種各樣的錯(cuò)誤。有些錯(cuò)誤比較簡(jiǎn)單,通過(guò)一定量的積累,就對(duì)一些小錯(cuò)誤有直觀的認(rèn)識(shí)。通過(guò)排錯(cuò)經(jīng)驗(yàn)的積累,能力得到提升,慢慢就積累了興趣,學(xué)生建立了自信。在學(xué)生利用項(xiàng)目進(jìn)行練習(xí)的過(guò)程中,教師要嚴(yán)控學(xué)生的制作過(guò)程,有些學(xué)生為了投機(jī)取巧,可能并沒(méi)有真實(shí)地參與到軟件開(kāi)發(fā)中。對(duì)出現(xiàn)這些問(wèn)題的學(xué)生,進(jìn)行嚴(yán)肅處理,杜絕學(xué)生再犯。通過(guò)提問(wèn)、項(xiàng)目匯報(bào)等途徑,教師可以得到一些端倪,以便核實(shí)和處理。另外,杜絕學(xué)生抄襲程序,可以用系統(tǒng)進(jìn)行,以便發(fā)現(xiàn)抄襲問(wèn)題。3.5項(xiàng)目長(zhǎng)遠(yuǎn)規(guī)劃。學(xué)生在軟件工程的實(shí)踐中完成項(xiàng)目。實(shí)施項(xiàng)目驅(qū)動(dòng)教學(xué),學(xué)生在選擇項(xiàng)目名稱的時(shí)候,與以往的項(xiàng)目名稱有所限制。項(xiàng)目的名稱應(yīng)該貼近實(shí)際市場(chǎng)需要,對(duì)以后選擇畢業(yè)設(shè)計(jì)題目相吻合的題目,在軟件工程課程結(jié)束后,學(xué)生的項(xiàng)目的功能,還有待完善,因此項(xiàng)目可以作為后續(xù)繼續(xù)完善的項(xiàng)目。項(xiàng)目完善較好的,可以參加競(jìng)賽,直接定位畢業(yè)論文設(shè)計(jì)的題目,如果能夠獲獎(jiǎng)也是證明學(xué)生能力的一種體現(xiàn),在就業(yè)也中有一定的優(yōu)勢(shì)。如果學(xué)生在大學(xué)期間,主持或參與大學(xué)生創(chuàng)新項(xiàng)目,可以用創(chuàng)新項(xiàng)目的題目作為項(xiàng)目名稱,一方面可以完成大學(xué)項(xiàng)目所要求的系統(tǒng),另一方面,也可以完成軟件工程實(shí)踐課程,同樣也可以作為畢業(yè)設(shè)計(jì)的題目。如果學(xué)生考研,這能節(jié)約不少的時(shí)間,在研究中復(fù)試中,可以處于有利地位。畢竟研究生階段要求學(xué)生具備一定的實(shí)踐能力,大多數(shù)導(dǎo)師都有項(xiàng)目,需要學(xué)生參與完成。
4結(jié)束語(yǔ)
本文通過(guò)對(duì)軟件工程課程教學(xué)中出現(xiàn)的實(shí)踐與理論脫節(jié)問(wèn)題,通過(guò)對(duì)目前軟件工程的教學(xué)現(xiàn)狀進(jìn)行分析,提出了一些改進(jìn)措施。對(duì)提高實(shí)踐能力方面給出了具體實(shí)施措施。在案例的選擇、實(shí)踐操作、網(wǎng)絡(luò)資源的利用、實(shí)踐項(xiàng)目監(jiān)督等方面,對(duì)實(shí)踐教學(xué)提出了實(shí)施的辦法,通過(guò)對(duì)阜陽(yáng)師范大學(xué)軟件工程專業(yè)、計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)、物聯(lián)網(wǎng)專業(yè),進(jìn)行了實(shí)施,學(xué)生的實(shí)踐能力得到提升,培養(yǎng)了能力較強(qiáng)的計(jì)算機(jī)軟件開(kāi)發(fā)人才,很多學(xué)生考取研究生進(jìn)一步深造。實(shí)踐結(jié)果表明了,提出的教學(xué)模式對(duì)軟件工程素質(zhì)的培養(yǎng)具有重要的意義。
作者:劉華明 畢學(xué)慧 王秀友 李懷敏 晁妍 單位:阜陽(yáng)師范大學(xué)