軟件工程課程案例教學(xué)法研究

時(shí)間:2022-12-13 11:23:38

導(dǎo)語(yǔ):軟件工程課程案例教學(xué)法研究一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

軟件工程課程案例教學(xué)法研究

[摘要]文章對(duì)軟件工程教學(xué)中存在的問(wèn)題提出了改進(jìn)方法,即項(xiàng)目驅(qū)動(dòng)下案例教學(xué)法。介紹了案例教學(xué)法實(shí)施的必要性和實(shí)施方法,改進(jìn)軟件工程教學(xué)模式,如何建設(shè)教學(xué)案例庫(kù),以及課程實(shí)踐采用項(xiàng)目化方式進(jìn)行。

[關(guān)鍵詞]軟件工程;項(xiàng)目;案例;教學(xué)

軟件工程這門課是計(jì)算機(jī)學(xué)科的專業(yè)必修課,講授的是軟件開發(fā)與維護(hù)全過(guò)程中所采用的方法和技術(shù),以及應(yīng)該撰寫的文檔,目前這門課的教學(xué)采用以理論講授為主,實(shí)習(xí)為輔的教學(xué)方法,學(xué)生對(duì)理論知識(shí)的學(xué)習(xí)不感興趣。實(shí)習(xí)是在學(xué)期結(jié)束前安排兩周的時(shí)間,讓學(xué)生分組模擬完成一個(gè)項(xiàng)目的文檔寫作,導(dǎo)致這門課學(xué)生的實(shí)習(xí)流于形式。

1案例教學(xué)法的必要性

軟件工程學(xué)科有兩個(gè)主要的方法學(xué),它們是生命周期方法學(xué)和面向?qū)ο蠓椒▽W(xué),軟件開發(fā)通常分成項(xiàng)目可行性分析、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼與測(cè)試等幾個(gè)階段[1],所以當(dāng)實(shí)施案例法教學(xué)時(shí),也要根據(jù)軟件開發(fā)的幾個(gè)階段設(shè)計(jì)不同的教學(xué)案例。而且這些案例要具有一定的連貫性,即將這些案例組合起來(lái)就是一個(gè)綜合性的案例。當(dāng)學(xué)生完成整個(gè)案例教學(xué)后,對(duì)書本知識(shí)的理解會(huì)更加深入,也能體會(huì)到軟件開發(fā)的不同階段的緊密聯(lián)系,對(duì)學(xué)生的綜合知識(shí)的掌握和綜合能力的提高會(huì)有很大的幫助。

2項(xiàng)目驅(qū)動(dòng)案例教學(xué)法的實(shí)施

2.1引入案例教學(xué)法,改進(jìn)軟件工程課程的教學(xué)模式。就軟件工程課程本身而言其理論教學(xué)枯燥乏味導(dǎo)致學(xué)生不感興趣,也就沒(méi)有學(xué)習(xí)的積極性和動(dòng)力,而其實(shí)踐教學(xué)內(nèi)容又過(guò)于獨(dú)立沒(méi)有整體性,前后階段沒(méi)有連貫,有的也太簡(jiǎn)單,這樣就導(dǎo)致理論教學(xué)與實(shí)踐教學(xué)很難做到相輔相成。因此,在教學(xué)過(guò)程中,使用好的實(shí)踐教學(xué)案例,可以充分的將理論和實(shí)際結(jié)合起來(lái),使得學(xué)生掌握的知識(shí)可以實(shí)時(shí)地來(lái)解決實(shí)際問(wèn)題,即學(xué)以致用[2]。在查閱了很多軟件工程課程教材后,這些教材都具有一個(gè)共同的問(wèn)題:教材中介紹理論知識(shí)后也會(huì)引入實(shí)例進(jìn)行講解,然而這些實(shí)例的選取不太合理,實(shí)例的規(guī)模要么太復(fù)雜要么太簡(jiǎn)單,有的還比較老舊等等。所以在選擇實(shí)踐案例時(shí)不僅要理論聯(lián)系實(shí)際,而且還要考慮案例的規(guī)模、新穎性等,更為重要的是需要一個(gè)完整的項(xiàng)目案例,將其不同開發(fā)階段分散到理論課程的相關(guān)章節(jié),這樣就可以將案例自始至終貫穿于理論教學(xué)中,從而提高學(xué)生的綜合應(yīng)用能力。項(xiàng)目驅(qū)動(dòng)下軟件工程課程案例教學(xué)過(guò)程如圖1所示。對(duì)所選擇的案例設(shè)計(jì)教學(xué)內(nèi)容,設(shè)計(jì)情景教學(xué)中師生交互的教案,包括組建開發(fā)小型項(xiàng)目的團(tuán)隊(duì)、模擬項(xiàng)目開發(fā)的實(shí)際過(guò)程等。教師通過(guò)項(xiàng)目驅(qū)動(dòng)的案例教學(xué)方式,加強(qiáng)團(tuán)隊(duì)成員之間的技術(shù)交流,調(diào)動(dòng)學(xué)生學(xué)習(xí)的主觀能動(dòng)性。該教學(xué)方法可以培養(yǎng)軟件人才綜合的實(shí)踐技能,鍛煉學(xué)生獨(dú)立地完成項(xiàng)目小組成員應(yīng)承擔(dān)的任務(wù)[3]。2.2建設(shè)軟件工程案例庫(kù),拓展教學(xué)內(nèi)容。計(jì)算機(jī)科學(xué)領(lǐng)域的新理論、新技術(shù)、新方法層出不窮,知識(shí)更新快,相比之下,軟件工程課程教材內(nèi)容就顯得過(guò)于陳舊,沒(méi)有及時(shí)更新?lián)Q代,教材中的案例也是如此。比如目前比較好的軟件工程教材是張海潘編著的《軟件工程導(dǎo)論》,盡管她已經(jīng)更新到第六版,但仍然存在這樣的問(wèn)題。同時(shí),用人單位也需要畢業(yè)生能夠掌握一些軟件工程學(xué)科的前沿知識(shí)和技術(shù),以便他們能夠更好地適應(yīng)未來(lái)的工作崗位。所以,在建設(shè)軟件工程案例庫(kù)時(shí)要考慮到這些問(wèn)題,應(yīng)當(dāng)采用內(nèi)容新穎的案例。這就需要我們?cè)谠O(shè)計(jì)和選取案例時(shí)花費(fèi)更多的人力物力,同時(shí)難度也很大。為了科學(xué)合理的建設(shè)案例庫(kù),可以采用多種方法同時(shí)并用。首先,可以與長(zhǎng)期工作在教學(xué)一線的老師進(jìn)行交流,博采眾長(zhǎng),汲取他們?cè)诮虒W(xué)實(shí)踐中積累的經(jīng)驗(yàn)和教訓(xùn)。其次,與已上過(guò)軟件工程課程的學(xué)生交談,在學(xué)生中對(duì)教學(xué)案例進(jìn)行調(diào)研,對(duì)調(diào)研報(bào)告分析總結(jié),把好的案例留下,不好的案例去掉,需要改進(jìn)的案例進(jìn)一步改善和優(yōu)化。此外,還應(yīng)該與軟件公司合作,一般成熟的軟件公司都會(huì)把成功開發(fā)的項(xiàng)目作為案例建成數(shù)據(jù)庫(kù),我們可以從他們的案例庫(kù)中挑選一些合適的使用于教學(xué)的案例,這樣才能更好地提升學(xué)生分析問(wèn)題和處理問(wèn)題的能力。總之,根據(jù)軟件工程課程相關(guān)內(nèi)容,建成的案例庫(kù)內(nèi)容主要包括軟件工程基本原理、軟件開發(fā)過(guò)程文檔、軟件開發(fā)方法和技術(shù)、軟件開發(fā)實(shí)例、軟件項(xiàng)目管理等。選取與課程內(nèi)容關(guān)聯(lián)性較強(qiáng)甚至超出課程內(nèi)容的一些實(shí)際案例[4],能使得學(xué)生的視野豁然開朗,促使學(xué)生變被動(dòng)學(xué)習(xí)為主動(dòng)研究,將自己的個(gè)人學(xué)習(xí)興趣與時(shí)展緊密結(jié)合在一起,可以幫助學(xué)生在將來(lái)的職業(yè)發(fā)展道路上走的更好更遠(yuǎn)。2.3課程實(shí)踐采用項(xiàng)目化方式進(jìn)行。軟件工程課程的實(shí)踐環(huán)節(jié)非常重要,如果采用傳統(tǒng)的方式進(jìn)行,肯定收效甚微,所以需要采用項(xiàng)目管理的方式進(jìn)行。但在校的學(xué)生沒(méi)有軟件開發(fā)全過(guò)程的經(jīng)驗(yàn),一般只有簡(jiǎn)單的軟件設(shè)計(jì)和程序編碼的能力。因此,在軟件工程實(shí)踐課程中可以模仿軟件公司開發(fā)項(xiàng)目的情形。首先,將學(xué)生按照每5人一組進(jìn)行分組,由于學(xué)生能力不同,所以5人組成員構(gòu)成為:一名組長(zhǎng)(負(fù)責(zé)項(xiàng)目管理和分工)、一名骨干(能力很強(qiáng))、三名普通成員(能力一般)。其次,分配任務(wù)。老師先提供一些題目讓各小組挑選,如果小組有自選題目,可以先報(bào)給老師審查,審查通過(guò)就可以用自選題目。每個(gè)小組要完全按照軟件工程開發(fā)過(guò)程來(lái)開發(fā)自己的項(xiàng)目。然后,明確項(xiàng)目實(shí)現(xiàn)的過(guò)程管理。整個(gè)項(xiàng)目開發(fā)過(guò)程要求經(jīng)歷可行性分析,需求分析,總體設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼,測(cè)試,維護(hù)全過(guò)程。每個(gè)階段完成后都要進(jìn)行評(píng)審,提交相應(yīng)文檔和里程碑。在項(xiàng)目進(jìn)行過(guò)程中要定期開例會(huì),由組長(zhǎng)主持,組長(zhǎng)通報(bào)項(xiàng)目總的進(jìn)展情況。每個(gè)成員都要匯報(bào)自己的工作情況和進(jìn)展,以及與其他人的協(xié)作情況。會(huì)議上對(duì)相關(guān)技術(shù)問(wèn)題進(jìn)行討論。[5]最后,驗(yàn)收和評(píng)分。由老師組織驗(yàn)收(答辯)小組,小組成員可以從各小組中抽取優(yōu)秀同學(xué)來(lái)組成。每個(gè)小組派一個(gè)代表來(lái)答辯,介紹本小組項(xiàng)目完成的情況和結(jié)果,由老師領(lǐng)導(dǎo)的答辯小組進(jìn)行評(píng)定,給出成績(jī)。

3案例教學(xué)法的應(yīng)用

對(duì)于案例教學(xué)法的應(yīng)用,我們要考慮以下因素:首先,先學(xué)習(xí)軟件工程的基本方法和原理,然后把一個(gè)有代表性的、易于理解的實(shí)際案例導(dǎo)入到軟件工程的教學(xué)中去,把抽象的概念和理論融入到實(shí)際的案例中。其次,案例教學(xué)的應(yīng)用必須要學(xué)生積極參與進(jìn)來(lái),讓學(xué)生嘗試著對(duì)案例教學(xué)的分析和設(shè)計(jì),這樣才能提高學(xué)生的實(shí)踐能力。為此我們對(duì)軟件工程課程設(shè)置了綜合案例,鍛煉學(xué)生的綜合應(yīng)用能力。[6]

4結(jié)語(yǔ)

高校培養(yǎng)出來(lái)的軟件人才一般還要經(jīng)過(guò)公司的集中實(shí)訓(xùn),才能真正勝任工作角色?,F(xiàn)在很多高校已采取與大公司聯(lián)合培養(yǎng),使公司的培訓(xùn)提前進(jìn)入學(xué)校,使學(xué)生的學(xué)習(xí)內(nèi)容更貼近于實(shí)際的社會(huì)需求,創(chuàng)造出校企合作的軟件工程教學(xué)模式。如果將案例教學(xué)法應(yīng)用于軟件工程的課程教學(xué)中,更能錦上添花,進(jìn)一步提高學(xué)生的實(shí)踐能力。

【參考文獻(xiàn)】

[1]張海藩.軟件工程導(dǎo)論(第6版)[M].北京:清華大學(xué)出版社,2013.

[2]劉強(qiáng),陳越,駱斌,等.軟件工程課程教學(xué)實(shí)施方案[J].中國(guó)大學(xué)教育,2011(2):41-44.

[3]宋玉成,靳紹禮.案例法在軟件工程學(xué)教學(xué)中的應(yīng)用[J].中國(guó)科技創(chuàng)新導(dǎo)刊,2010(16):72.

[4]王靜.以案例庫(kù)為導(dǎo)向的“現(xiàn)代軟件工程”教學(xué)模式探索[J].教育教學(xué)論壇,2018-04-18.

[5]唐劍梅.軟件工程課程教學(xué)改革與探索[J].科教文匯(上旬刊),2011-10-10.

[6]栗元龍.軟件工程課程案例教學(xué)方法的分析和研究[J].電子世界,2014-06-30.

作者:李娟 明德廷 單位:江西農(nóng)業(yè)大學(xué)計(jì)算機(jī)與信息工程學(xué)院