黃 健,程 虹,吳中博
?
基于合作學(xué)習(xí)的“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)
黃 健,程 虹,吳中博
(湖北文理學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,湖北襄陽(yáng) 441053)
“軟件設(shè)計(jì)與體系結(jié)構(gòu)”是軟件工程專業(yè)的重要課程,傳統(tǒng)的“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)存在弊端,革陳出新勢(shì)在必然. 文章將合作學(xué)習(xí)運(yùn)用到“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)中,試從合作學(xué)習(xí)教學(xué)環(huán)境的建立,合作學(xué)習(xí)過(guò)程的實(shí)施,合作學(xué)習(xí)多元評(píng)價(jià)方式的形成等方面入手展開(kāi),以期為“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)改革提供必要的參考.
合作學(xué)習(xí);軟件設(shè)計(jì);體系結(jié)構(gòu);教學(xué)改革
隨著計(jì)算機(jī)技術(shù)的發(fā)展,以信息技術(shù)為核心的高新技術(shù)不斷影響著經(jīng)濟(jì)社會(huì)的發(fā)展,影響著人們的生產(chǎn)與生活. 在信息技術(shù)產(chǎn)業(yè)迅速發(fā)展的前提下,我國(guó)各大院校紛紛設(shè)立軟件工程學(xué)院,開(kāi)設(shè)計(jì)算機(jī)軟件相關(guān)專業(yè),培養(yǎng)計(jì)算機(jī)軟件人才,以滿足市場(chǎng)發(fā)展對(duì)人才的需求. “軟件設(shè)計(jì)與體系結(jié)構(gòu)”是軟件工程專業(yè)重要課程,重點(diǎn)在于培養(yǎng)學(xué)生的軟件設(shè)計(jì)思想、運(yùn)用軟件開(kāi)發(fā)技術(shù)的能力. 但是,目前我國(guó)高校“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)方法存在弊端,教學(xué)改革也處在起步階段,因此,相關(guān)的教育工作者確有必要對(duì)此作進(jìn)一步的深入研究和探討[1]. 在此,筆者結(jié)合當(dāng)前實(shí)際,試從合作教學(xué)出發(fā),來(lái)探析“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)新途徑,以期為“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)改革提供必要的參考.
合作學(xué)習(xí)興起于20世紀(jì)70年代的美國(guó),隨著合作學(xué)習(xí)的應(yīng)用發(fā)展,在我國(guó)教育領(lǐng)域也日漸受到重視. 合作學(xué)習(xí)是一種系統(tǒng)學(xué)習(xí)方式,也是一種教學(xué)策略. 在教學(xué)過(guò)程中將學(xué)生分為不同的學(xué)習(xí)小組,小組有一個(gè)共同的目標(biāo),通過(guò)學(xué)生之間在小組之內(nèi)的相互學(xué)習(xí)、相互合作、相互討論,最終完成設(shè)置的目標(biāo)任務(wù),從而完成各個(gè)學(xué)生的具體學(xué)習(xí)任務(wù).
在傳統(tǒng)教學(xué)中,“教師講、學(xué)生聽(tīng)”的模式不利于學(xué)生與學(xué)生之間,教師與學(xué)生之間的實(shí)時(shí)互動(dòng)與交流. 合作學(xué)習(xí)卻注重發(fā)揮教學(xué)集體互動(dòng)的特點(diǎn)優(yōu)勢(shì),一改傳統(tǒng)教學(xué)注重教師講而忽略學(xué)生自主學(xué)習(xí)的狀況,而將教學(xué)重點(diǎn)放在學(xué)生的互動(dòng)上. 把合作學(xué)習(xí)運(yùn)用到課堂上,構(gòu)建以學(xué)生互動(dòng)學(xué)習(xí)為根本的新型教學(xué)模式,學(xué)生通過(guò)互動(dòng)學(xué)習(xí)活動(dòng)來(lái)完成各自的具體任務(wù),通過(guò)合作來(lái)完成共同的目標(biāo)任務(wù),從而促進(jìn)學(xué)生的分工協(xié)作與共同發(fā)展,提高教學(xué)效率. 同時(shí),在合作學(xué)習(xí)中,小組內(nèi)的每個(gè)學(xué)生鑒于完成共同的目標(biāo)任務(wù),將會(huì)進(jìn)行明確的責(zé)任分工,開(kāi)展一系列的互助學(xué)習(xí)與活動(dòng),共享信息和資源. 并且,合作學(xué)習(xí)互動(dòng)不僅僅限于學(xué)生之間,更強(qiáng)化了學(xué)生與教師之間的交流,從而達(dá)到了提高學(xué)生學(xué)習(xí)能力與認(rèn)知水平的目的.
“軟件設(shè)計(jì)與體系結(jié)構(gòu)”主要是深入研討軟件設(shè)計(jì)的相關(guān)理論與技術(shù),重點(diǎn)在于培養(yǎng)學(xué)生用工程化的方法設(shè)計(jì)、開(kāi)發(fā)、維護(hù)軟件. 其中包括軟件開(kāi)發(fā)理論、原理、方法和技術(shù),解析軟件開(kāi)發(fā)、維護(hù)、管理等工程活動(dòng). 對(duì)“軟件設(shè)計(jì)與體系結(jié)構(gòu)”學(xué)習(xí)必須具備工程化思想,要求高;同時(shí)工程軟件的運(yùn)行與設(shè)計(jì)離不開(kāi)研發(fā)團(tuán)隊(duì),其中每一個(gè)開(kāi)發(fā)人員必須具有基本的團(tuán)隊(duì)精神. 工程軟件從設(shè)計(jì)、開(kāi)發(fā)到順利運(yùn)行需要各個(gè)環(huán)節(jié)工作人員的共同努力與通力合作,某個(gè)人或某些人是不能夠完成的. 完整的軟件開(kāi)發(fā)項(xiàng)目必須將各個(gè)環(huán)節(jié)的研發(fā)與組織者擰成相互協(xié)作的統(tǒng)一整體,團(tuán)隊(duì)成員間相互交流、相互合作、共同完成,而大型工程軟件更是需要團(tuán)隊(duì)的通力合作.
“軟件設(shè)計(jì)與體系結(jié)構(gòu)”是軟件工程的重要課程之一,綜合性高、實(shí)踐性強(qiáng)、專業(yè)特點(diǎn)突出. 這就突顯出了開(kāi)展合作學(xué)習(xí),培養(yǎng)學(xué)生的工程能力與團(tuán)結(jié)協(xié)作精神的必要性和迫切性. 團(tuán)結(jié)協(xié)作是現(xiàn)代應(yīng)用型軟件人才必備的基本能力與素質(zhì). 具體在“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)中,應(yīng)充分貫徹合作學(xué)習(xí)方式,共享學(xué)習(xí)信息與認(rèn)知經(jīng)驗(yàn),參照真實(shí)的軟件開(kāi)發(fā)流程,模擬軟件開(kāi)發(fā)情境,訓(xùn)練在團(tuán)隊(duì)框架下的以小組學(xué)生為單位來(lái)完成軟件工程項(xiàng)目. 教師是教學(xué)的引導(dǎo)者和組織者,要全程參與合作學(xué)習(xí)過(guò)程中,通過(guò)師生之間面對(duì)具體問(wèn)題的交流,來(lái)引導(dǎo)學(xué)生完成目標(biāo)任務(wù),促進(jìn)學(xué)生的學(xué)習(xí)與開(kāi)發(fā)設(shè)計(jì)的積極性. 總之,“軟件設(shè)計(jì)與體系結(jié)構(gòu)”特點(diǎn)決定了其在教學(xué)中應(yīng)用合作學(xué)習(xí)的合理性,是教學(xué)改革的必然要求[2].
3.1 明確課標(biāo)
“軟件設(shè)計(jì)與體系結(jié)構(gòu)”內(nèi)容主要有軟件設(shè)計(jì)及軟件體系結(jié)構(gòu)的相關(guān)思想、理論與方法,包括軟件設(shè)計(jì)與軟件體系結(jié)構(gòu)在軟件工程中的地位和作用、軟件設(shè)計(jì)的基本方法與原則、統(tǒng)一建模語(yǔ)言UML2.0、面向?qū)ο蟮能浖O(shè)計(jì)方法、面向數(shù)據(jù)流的軟件設(shè)計(jì)方法、人機(jī)界面設(shè)計(jì)、軟件體系結(jié)構(gòu)風(fēng)格與設(shè)計(jì)模式、基于構(gòu)件的軟件體系結(jié)構(gòu)、軟件體系結(jié)構(gòu)評(píng)估、軟件設(shè)計(jì)進(jìn)化等內(nèi)容. 課標(biāo)重點(diǎn)在于培養(yǎng)學(xué)生從軟件體系結(jié)構(gòu)角度開(kāi)展軟件設(shè)計(jì),分析軟件體系結(jié)構(gòu)的能力,并探析已有軟件的優(yōu)勢(shì)與不足,提出整改意見(jiàn)和方案;達(dá)到學(xué)生系統(tǒng)學(xué)習(xí)之后,設(shè)計(jì)出適合軟件體系結(jié)構(gòu)和形成相應(yīng)的軟件體系的整體風(fēng)格的目的. 明確了課標(biāo)要求,學(xué)生歷經(jīng)基于合作學(xué)習(xí)的不斷實(shí)踐,從而提高和培養(yǎng)學(xué)生設(shè)計(jì)大規(guī)模軟件的技術(shù)水平和動(dòng)手能力,以利于學(xué)生在合作學(xué)習(xí)中實(shí)現(xiàn)教學(xué)目標(biāo)[3].
3.2 建立合作學(xué)習(xí)教學(xué)環(huán)境
對(duì)于“軟件設(shè)計(jì)與體系結(jié)構(gòu)”,僅為學(xué)生提供簡(jiǎn)單的軟件工程項(xiàng)目是不夠的. 軟件開(kāi)發(fā)的每一個(gè)環(huán)節(jié)都需要不同的技術(shù)與組織人才,需要每個(gè)研發(fā)者能夠全面充分地在軟件工程開(kāi)發(fā)的各個(gè)環(huán)節(jié)中得以發(fā)揮,成功的軟件開(kāi)發(fā)離不開(kāi)嚴(yán)格專業(yè)的產(chǎn)業(yè)化的生產(chǎn)運(yùn)作,包括項(xiàng)目規(guī)劃,項(xiàng)目設(shè)計(jì),項(xiàng)目開(kāi)發(fā)、測(cè)試、包裝、宣傳、營(yíng)銷、售后服務(wù)等等. 學(xué)生在學(xué)習(xí)中不僅需要熟悉軟件設(shè)計(jì)與體系結(jié)構(gòu)理論知識(shí),更要學(xué)習(xí)掌握整個(gè)軟件開(kāi)發(fā)的總體過(guò)程,唯有如此,才能在真正意義上熟悉軟件開(kāi)發(fā)過(guò)程和把控研發(fā)全局[4]. 這種流程細(xì)節(jié)與全局整體缺一不可密切相聯(lián)下的合作學(xué)習(xí),首先要有適合學(xué)生合作學(xué)習(xí)的教學(xué)環(huán)境,配備軟件開(kāi)發(fā)的硬件設(shè)施尤其必要. 在軟件課程項(xiàng)目中引進(jìn)先進(jìn)的軟件工程,合理地使用建模工具、測(cè)試工具、軟件設(shè)計(jì)開(kāi)發(fā)設(shè)備等進(jìn)行軟件的分析、設(shè)計(jì)、測(cè)試. 還可以模擬企業(yè)開(kāi)發(fā)軟件的具體流程,編寫“軟件設(shè)計(jì)與體系結(jié)構(gòu)”相關(guān)的軟件設(shè)計(jì)流程規(guī)范,指導(dǎo)學(xué)生依據(jù)實(shí)際操作過(guò)程和步驟,在合作學(xué)習(xí)中有序地提高. 總之,合作學(xué)習(xí)下的“軟件設(shè)計(jì)與體系結(jié)構(gòu)”,通過(guò)模擬企業(yè)的軟、硬件工作環(huán)境,讓學(xué)生在具體的情境中開(kāi)展研習(xí),會(huì)使他們終生受益[5].
3.3合作學(xué)習(xí)的實(shí)施
合作學(xué)習(xí)教學(xué)模式強(qiáng)調(diào)全部學(xué)生在合作下共同學(xué)習(xí)、共同進(jìn)步,僅將幾個(gè)學(xué)生組織起來(lái)的學(xué)習(xí)是遠(yuǎn)遠(yuǎn)不夠的. 合作學(xué)習(xí)可針對(duì)教學(xué)目標(biāo)將學(xué)生進(jìn)行合理分組,有利于教師對(duì)學(xué)生進(jìn)行因材施教,提高教師的教學(xué)效率. 在“軟件設(shè)計(jì)與體系結(jié)構(gòu)”中,教師根據(jù)學(xué)生的具體學(xué)習(xí)認(rèn)知能力將學(xué)生分為不同的小組,小組內(nèi)的成員根據(jù)不同的技術(shù)水平和性格差異進(jìn)行不同層次的分工. 小組的共同目標(biāo)是一致的,但是每個(gè)成員的具體分工是不同的,小組成員之間互相合作,完成最終的目標(biāo)項(xiàng)目.
教師可以通過(guò)具體案例來(lái)實(shí)施合作實(shí)習(xí)過(guò)程,比如:設(shè)置具體的教學(xué)情境為某軟件工程企業(yè),學(xué)生為企業(yè)員工,目標(biāo)任務(wù)是開(kāi)發(fā)具有一定規(guī)模的軟件系統(tǒng). 教師將學(xué)生分為5到8人的小組,小組成員自己進(jìn)行“角色分配”. 項(xiàng)目組長(zhǎng)主要負(fù)責(zé)軟件開(kāi)發(fā)任務(wù)的分配、進(jìn)度管理以及人員協(xié)調(diào),軟件測(cè)試員主要負(fù)責(zé)軟件的測(cè)試以及軟件開(kāi)發(fā)各個(gè)階段的質(zhì)量保障,軟件設(shè)計(jì)師主要負(fù)責(zé)軟件系統(tǒng)設(shè)計(jì)以及代碼編寫,軟件需求分析員主要負(fù)責(zé)文檔的撰寫、傳達(dá)客戶意見(jiàn)與需求等工作. 各個(gè)小組成員在完成任務(wù)目標(biāo)的過(guò)程中既有分工又要合作,小組內(nèi)成員的交流和討論有助于調(diào)動(dòng)學(xué)習(xí)的主動(dòng)性,積極性;小組中每個(gè)角色首先單獨(dú)制定各自工作的內(nèi)容與流程,然后進(jìn)行匯總討論,將每個(gè)角色的任務(wù)和流程匯總成一套完整的軟件設(shè)計(jì)與開(kāi)發(fā)流程. 最后再討論實(shí)際操作問(wèn)題. 同時(shí),教師須參與全過(guò)程,給予學(xué)生必要的指導(dǎo),指導(dǎo)過(guò)程是教師與學(xué)生的交流過(guò)程,加強(qiáng)了學(xué)生與教師間的互動(dòng)與聯(lián)系. 合作學(xué)習(xí)具體環(huán)節(jié)上既要注重學(xué)生小組內(nèi)的合作,還要關(guān)注小組之間的競(jìng)爭(zhēng),確保每個(gè)小組成員都能完成屬于自己的任務(wù),鼓勵(lì)小組成員之間、小組與小組之間的互幫互助,培養(yǎng)學(xué)生的團(tuán)隊(duì)意識(shí)[6].
3.4 形成多元化的評(píng)價(jià)方式
在合作學(xué)習(xí)的過(guò)程中,小組成員間的信息交流與共享是重點(diǎn),從中能夠發(fā)現(xiàn)各自成員在軟件設(shè)計(jì)與開(kāi)發(fā)項(xiàng)目過(guò)程中的優(yōu)勢(shì)特長(zhǎng)與存在的問(wèn)題. 因此,如何評(píng)判成績(jī)與問(wèn)題,對(duì)結(jié)果達(dá)成共識(shí)是必不可少的,也是非常必要的. 作為工程項(xiàng)目,采用項(xiàng)目評(píng)價(jià)方式比較適宜. 可以實(shí)行小組內(nèi)成員互評(píng),分析每個(gè)成員存在的問(wèn)題或缺點(diǎn),小組內(nèi)部成員協(xié)助解決. 在項(xiàng)目完成后,各個(gè)小組展示自己的軟件設(shè)計(jì)與開(kāi)發(fā)成果,實(shí)行小組互評(píng),從而讓各小組能夠通過(guò)評(píng)判自己與評(píng)判別人來(lái)學(xué)習(xí)其他小組的優(yōu)點(diǎn),認(rèn)識(shí)到自己在實(shí)踐過(guò)程中的不足,進(jìn)而改進(jìn)方法并進(jìn)而解決學(xué)生學(xué)習(xí)的盲目性,有針對(duì)性地提高學(xué)生的學(xué)習(xí)與實(shí)踐效率. 教師還應(yīng)在學(xué)生自我評(píng)價(jià)全部結(jié)束后,從整體上總結(jié)學(xué)生在合作學(xué)習(xí)過(guò)程中存在的共性問(wèn)題、難點(diǎn)環(huán)節(jié),及時(shí)指導(dǎo)學(xué)生糾偏扶正,必要時(shí)進(jìn)行現(xiàn)場(chǎng)演示,讓學(xué)生更加深刻地體會(huì)到自己在學(xué)習(xí)與實(shí)踐中的成敗原因之所在. 通過(guò)對(duì)合作學(xué)習(xí)這種多元化的評(píng)價(jià)方式來(lái)實(shí)現(xiàn)學(xué)生的個(gè)體發(fā)展,促進(jìn)學(xué)生合作精神的形成.
綜上所述,在“軟件設(shè)計(jì)與體系結(jié)構(gòu)”教學(xué)中實(shí)施合作學(xué)習(xí)是必要的,具有可行性. 其充分發(fā)揮了學(xué)生的主體地位,考慮了學(xué)生的個(gè)體差異性,結(jié)合了教學(xué)目標(biāo),構(gòu)建了合理的教學(xué)環(huán)境,把理論學(xué)習(xí)與真實(shí)案例實(shí)踐相結(jié)合,采用了工程項(xiàng)目中的互評(píng)方式,從而引導(dǎo)學(xué)生既積極主動(dòng)、分工明確,又整體協(xié)調(diào)地進(jìn)行學(xué)習(xí)與實(shí)踐. 并且,在學(xué)生學(xué)習(xí)與掌握軟件設(shè)計(jì)與開(kāi)發(fā)過(guò)程中,不僅加強(qiáng)了學(xué)生與教師之間的實(shí)時(shí)互動(dòng)與交流,培養(yǎng)學(xué)生的自信心和主動(dòng)性,而且提高了學(xué)生的實(shí)踐能力,培養(yǎng)了學(xué)生的團(tuán)隊(duì)合作精神,為學(xué)生日后參加社會(huì)工作打下了堅(jiān)實(shí)的基礎(chǔ).
[1] 駱 斌, 臧斌宇, 丁二玉. 軟件工程專業(yè)教育知識(shí)體系的分析、重構(gòu)與求精[J]. 計(jì)算機(jī)教育, 2010(23): 2-8.
[2] 駱 斌, 葛季棟, 丁二玉, 等. 軟件工程專業(yè)課程體系的研究與創(chuàng)新實(shí)踐[J]. 計(jì)算機(jī)教育, 2010(23): 9-13.
[3] 曾明星, 周清平, 王曉波, 等. 軟件工程專業(yè)“項(xiàng)目化”教學(xué)實(shí)施體系的構(gòu)建[J]. 實(shí)驗(yàn)室研究與探索, 2013(05): 158-163.
[4] 楊慧炯, 韓燕麗. 應(yīng)用型工科院校軟件工程專業(yè)工程化特色人才培養(yǎng)模式研究[J]. 計(jì)算機(jī)教育, 2012(06): 19-25.
[5] 史銘之. 中美合作學(xué)習(xí)的比較研究[D]. 成都: 四川師范大學(xué), 2006.
[6] 尚金蘭. 復(fù)雜理論視域下的小組合作學(xué)習(xí)研究[D]. 上海: 華東師范大學(xué), 2012.
Teaching of“Software Design and Architecture”Based on Cooperative Learning
HUANG Jian, CHENG Hong, WU Zhongbo
(College of Mathematical and Computer Sciences, Hubei University of Arts and Science, Xiangyang 441053, China)
“Software Design and Architecture” is an important course in software engineering specialty. There are drawbacks in the traditional teaching of “Software Design and Architecture”, the new trend is inevitable. In order to provide the necessary reference for the teaching reform of “Software Design and Architecture”, the paper applies the cooperative learning to the teaching of software design and architecture, it will start with the establishment of the cooperative learning environment, the implementation of the cooperative learning process, the formation of the multi evaluation method of cooperative learning.
Cooperative learning; Software design; Architecture; Reform in education
(責(zé)任編輯:陳 丹)
G423.07
A
2095-4476(2015)08-0086-03
2015-06-08;
2015-07-01
湖北省教育科學(xué)十二五規(guī)劃項(xiàng)目(2012B191)
黃 健(1969- ), 男, 湖北武漢人, 湖北文理學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院講師.
湖北文理學(xué)院學(xué)報(bào)2015年8期