亚洲成色777777女色窝,777亚洲妇女,色吧亚洲日本,亚洲少妇视频

軟件開發(fā)基礎(chǔ)知識(shí)

時(shí)間:2023-06-08 15:16:17

導(dǎo)語:在軟件開發(fā)基礎(chǔ)知識(shí)的撰寫旅程中,學(xué)習(xí)并吸收他人佳作的精髓是一條寶貴的路徑,好期刊匯集了九篇優(yōu)秀范文,愿這些內(nèi)容能夠啟發(fā)您的創(chuàng)作靈感,引領(lǐng)您探索更多的創(chuàng)作可能。

第1篇

解釋:

手機(jī)的軟件開發(fā)需要語言知識(shí)與計(jì)算機(jī)基礎(chǔ)知識(shí)。安卓需要Java基礎(chǔ),IOS需要OC基礎(chǔ)。

計(jì)算機(jī)基本知識(shí)包括算發(fā)與數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、數(shù)字邏輯等基礎(chǔ)課。而軟件工程專業(yè)與計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)有完整的學(xué)習(xí)以上知識(shí)的方案。

介紹:

1、軟件工程:

是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。它涉及程序設(shè)計(jì)語言、數(shù)據(jù)庫、軟件開發(fā)工具、系統(tǒng)平臺(tái)、標(biāo)準(zhǔn)、設(shè)計(jì)模式等方面。

2、計(jì)算機(jī)科學(xué)與技術(shù)專業(yè):

第2篇

蘇州大學(xué)軟件工程專業(yè)以計(jì)算機(jī)科學(xué)與技術(shù)學(xué)科為基礎(chǔ),強(qiáng)調(diào)軟件開發(fā)的工程性,使學(xué)生在掌握計(jì)算機(jī)科學(xué)與技術(shù)方面知識(shí)和技能的基礎(chǔ)上熟練掌握從事軟件需求分析、軟件設(shè)計(jì)、軟件測試、軟件維護(hù)和軟件項(xiàng)目管理等工作所必需的基礎(chǔ)知識(shí)、基本方法和基本技能,突出對(duì)學(xué)生專業(yè)知識(shí)和專業(yè)技能的培養(yǎng),培養(yǎng)能夠從事軟件開發(fā)、測試、維護(hù)和軟件項(xiàng)目管理的高級(jí)專門人才。

其主干課程有高等數(shù)學(xué)、大學(xué)物理、物理實(shí)驗(yàn)、線性代數(shù)、概率論與數(shù)理統(tǒng)計(jì)、程序設(shè)計(jì)語言、數(shù)據(jù)結(jié)構(gòu)、離散數(shù)學(xué)、操作系統(tǒng)、編譯技術(shù)、軟件工程概論、統(tǒng)一建模語言、軟件體系結(jié)構(gòu)、軟件需求和軟件項(xiàng)目管理等。

(來源:文章屋網(wǎng) )

第3篇

關(guān)鍵詞:校企合作;人才培養(yǎng);實(shí)踐教學(xué);人才培養(yǎng);軟件工程

中圖分類號(hào):G646 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1674-9324(2016)48-0024-03

一、引言

軟件工程是一個(gè)新興專業(yè),主要目標(biāo)是培養(yǎng)工程型、應(yīng)用型的專業(yè)軟件人才。隨著素質(zhì)教育改革的不斷推進(jìn),軟件工程專業(yè)的建設(shè)也面臨著全新考驗(yàn)。軟件工程建設(shè)重在實(shí)踐,只有在不斷的實(shí)踐中才能提升學(xué)生的技術(shù)和技能,為社會(huì)提供適用的專業(yè)軟件人才。本文結(jié)合近年來我院軟件工程專業(yè)的建設(shè)實(shí)踐,探討校企融合下應(yīng)用型軟件工程實(shí)踐教育模式的改革,旨在培養(yǎng)具有動(dòng)手實(shí)踐能力和創(chuàng)新意識(shí)、能很好地適應(yīng)市場需要的高素質(zhì)軟件工程應(yīng)用型創(chuàng)新人才。

二、應(yīng)用型軟件人才培養(yǎng)模式

軟件工程專業(yè)以計(jì)算機(jī)科學(xué)與技術(shù)學(xué)科為基礎(chǔ),強(qiáng)調(diào)軟件開發(fā)的工程性,要求學(xué)生在掌握計(jì)算機(jī)科學(xué)與技術(shù)方面知識(shí)和技能的基礎(chǔ)上,進(jìn)一步熟練掌握從事軟件需求分析、軟件設(shè)計(jì)、軟件測試、軟件維護(hù)和軟件項(xiàng)目管理等工作所必需的基礎(chǔ)知識(shí)、基本方法和基本技能,突出對(duì)學(xué)生專業(yè)知識(shí)和專業(yè)技能的培養(yǎng)[1],使學(xué)生成為能夠從事軟件開發(fā)、測試、維護(hù)和軟件項(xiàng)目管理的高級(jí)專門人才。

1.強(qiáng)調(diào)專業(yè)實(shí)際應(yīng)用能力的培養(yǎng)。通過高校、企業(yè)雙方的合作融合,引入實(shí)訓(xùn)機(jī)制,形成以“3+1”模式為框架、產(chǎn)學(xué)一體化為特色的應(yīng)用型軟件工程專業(yè)人才實(shí)踐與創(chuàng)新能力培養(yǎng)平臺(tái),并把在企業(yè)培養(yǎng)的1年時(shí)間分散在學(xué)生大學(xué)四年的學(xué)習(xí)過程中,使學(xué)生能不斷接觸軟件行業(yè)與企業(yè)[2],循序漸進(jìn),逐步加深學(xué)生對(duì)行業(yè)的認(rèn)識(shí)與理解。

2.目的是形成“工程化教學(xué)―課程實(shí)驗(yàn)教學(xué)―基地實(shí)習(xí)實(shí)訓(xùn)―真實(shí)項(xiàng)目開發(fā)”的培養(yǎng)過程,建立“課程實(shí)踐―項(xiàng)目實(shí)訓(xùn)―項(xiàng)目開發(fā)”的教學(xué)、實(shí)訓(xùn)模式,引導(dǎo)學(xué)生樹立系統(tǒng)、科學(xué)的工程項(xiàng)目概念。

3.由學(xué)校和企業(yè)雙方共同研究制訂實(shí)踐教學(xué)方案、共同實(shí)施,目的是提高學(xué)生的動(dòng)手能力以及解決實(shí)際問題的能力,使學(xué)生畢業(yè)后能很快適應(yīng)軟件企業(yè)的要求[3]。

4.每學(xué)年根據(jù)教學(xué)計(jì)劃以及教學(xué)實(shí)施的具體情況,在大一至大三期間,請(qǐng)合作企業(yè)選派資深工程師來校開設(shè)相關(guān)技術(shù)講座,并選擇部分專業(yè)課程由合作企業(yè)選派師資負(fù)責(zé)課程實(shí)踐教學(xué)、實(shí)訓(xùn)的具體實(shí)施,學(xué)生在大四的時(shí)候再集中到合作企業(yè)進(jìn)行強(qiáng)化訓(xùn)練。該專業(yè)學(xué)生4學(xué)年期間的實(shí)踐活動(dòng)簡表如下表1。

通過改革軟件工程專業(yè)的人才培養(yǎng)模式,結(jié)合“3+1”合作模式,借助企業(yè)的平臺(tái),按學(xué)期逐步推進(jìn)、鍛煉和提高學(xué)生的實(shí)踐能力和綜合素質(zhì),鍛煉學(xué)生適應(yīng)社會(huì)的需要,使學(xué)生能不斷接觸軟件行業(yè)與企業(yè),使其觀念及早融入社會(huì),循序漸進(jìn)地加深學(xué)生對(duì)軟件行業(yè)的認(rèn)識(shí)與理解[4],逐步形成“課程實(shí)踐―項(xiàng)目實(shí)訓(xùn)―項(xiàng)目開發(fā)”的教學(xué)、實(shí)訓(xùn)模式。

三、實(shí)訓(xùn)體系構(gòu)建

通過高校、企業(yè)雙方合作融合,將實(shí)訓(xùn)引入軟件工程專業(yè)的本科教學(xué)中,探索校企融合下應(yīng)用型軟件工程教育模式的改革。以JAVA專業(yè)實(shí)訓(xùn)為例,我們的實(shí)訓(xùn)目標(biāo)是提高學(xué)生的動(dòng)手能力以及解決實(shí)際問題的能力,使學(xué)生畢業(yè)后能盡快適應(yīng)軟件企業(yè)的要求。在企業(yè)項(xiàng)目經(jīng)理和學(xué)院教師的共同帶領(lǐng)下,通過實(shí)訓(xùn)中的具體項(xiàng)目,將原來分散的專業(yè)知識(shí)系統(tǒng)化,把整個(gè)項(xiàng)目的實(shí)施過程,貫穿于學(xué)生理論知識(shí)學(xué)習(xí)的始終[5],使學(xué)生獲得綜合性應(yīng)用鍛煉,進(jìn)一步了解標(biāo)準(zhǔn)軟件開發(fā)過程與規(guī)范,掌握軟件開發(fā)的基本技能,鍛煉其團(tuán)隊(duì)協(xié)作精神。

1.實(shí)訓(xùn)內(nèi)容和階段。我們的實(shí)訓(xùn)分兩個(gè)階段進(jìn)行:第一個(gè)階段的校內(nèi)專業(yè)實(shí)訓(xùn)為基礎(chǔ)實(shí)訓(xùn),一般以基礎(chǔ)性的、業(yè)務(wù)簡單的項(xiàng)目為案例,訓(xùn)練重點(diǎn)放在編碼實(shí)現(xiàn)上。第二個(gè)階段的企業(yè)工程實(shí)踐為大中型項(xiàng)目實(shí)訓(xùn),一般由合作企業(yè)從其案例庫中選擇其之前實(shí)踐過的真實(shí)項(xiàng)目作為案例,內(nèi)容涵蓋一個(gè)軟件項(xiàng)目開發(fā)的整個(gè)生命周期,目的是通過項(xiàng)目的強(qiáng)化訓(xùn)練過程,提升學(xué)生的基礎(chǔ)知識(shí)、基本技能和基礎(chǔ)技術(shù),熟悉企業(yè)級(jí)的運(yùn)行環(huán)境和框架。兩個(gè)階段的實(shí)訓(xùn)都貫穿軟件項(xiàng)目開發(fā)的整個(gè)生命周期,包括項(xiàng)目管理、需求分析、技術(shù)儲(chǔ)備、系統(tǒng)設(shè)計(jì)、編碼、測試、提交、項(xiàng)目評(píng)審等階段,但第一個(gè)階段側(cè)重于技術(shù)儲(chǔ)備,體驗(yàn)軟件項(xiàng)目的開發(fā)過程,培養(yǎng)學(xué)生掌握軟件項(xiàng)目的調(diào)試方法和技術(shù)[6]。以JAVA實(shí)訓(xùn)為例,在技術(shù)儲(chǔ)備階段,第二個(gè)階段側(cè)重于項(xiàng)目的開發(fā)流程和各類項(xiàng)目文檔,培養(yǎng)學(xué)生養(yǎng)成良好的編程習(xí)慣、了解行業(yè)前沿應(yīng)用狀況和項(xiàng)目開發(fā)的業(yè)務(wù)流程和知識(shí),提高學(xué)生的表達(dá)、溝通和團(tuán)隊(duì)協(xié)作能力,進(jìn)而養(yǎng)成良好的職業(yè)習(xí)慣。具體實(shí)訓(xùn)的內(nèi)容和階段如下圖1所示。

通過項(xiàng)目的實(shí)戰(zhàn)訓(xùn)練過程,提升學(xué)生的基礎(chǔ)知識(shí)、基本技能和基礎(chǔ)技術(shù),熟悉企業(yè)級(jí)的運(yùn)行環(huán)境和框架。通過完成案例項(xiàng)目的需求分析、系統(tǒng)設(shè)計(jì)、編碼、集成、測試和項(xiàng)目評(píng)審過程的實(shí)踐,了解軟件項(xiàng)目的開發(fā)流程和規(guī)范。

2.實(shí)訓(xùn)目標(biāo)。我們的實(shí)訓(xùn)目標(biāo)按階段的不同,具體內(nèi)容也有所區(qū)別,要求學(xué)生實(shí)現(xiàn)的分段目標(biāo)的側(cè)重點(diǎn)也有所不同。

(1)第一個(gè)階段的校內(nèi)短期實(shí)訓(xùn):該階段屬于基礎(chǔ)實(shí)訓(xùn),在實(shí)訓(xùn)過程中引入單元測試技術(shù)、軟件工程、質(zhì)量管理和ISO體系概念,讓學(xué)生了解到企業(yè)軟件開發(fā)對(duì)質(zhì)量的要求和管理方法,提高學(xué)員對(duì)自己編寫的軟件的測試和調(diào)試能力,修正和增強(qiáng)學(xué)員對(duì)軟件測試和質(zhì)量的意識(shí)。在實(shí)訓(xùn)過程中引入新的Web標(biāo)準(zhǔn)、HTML5、CSS3、Canva、SVG等,為學(xué)生將來進(jìn)入互聯(lián)網(wǎng)或移動(dòng)開發(fā)領(lǐng)域,進(jìn)行基礎(chǔ)知識(shí)、基本概念等的技術(shù)儲(chǔ)備。以JAVA實(shí)訓(xùn)為例,該階段的實(shí)訓(xùn)目標(biāo)如下表2所示。

(2)第二個(gè)階段的企業(yè)工程實(shí)踐:該階段為大中型項(xiàng)目實(shí)訓(xùn),在大三第二學(xué)期校內(nèi)短期的基礎(chǔ)實(shí)訓(xùn)、學(xué)生技術(shù)發(fā)展規(guī)劃的基礎(chǔ)上,按照J(rèn)ava方向、Android和PHP前端開發(fā)三個(gè)不同的專業(yè)方向,在合作企業(yè)實(shí)訓(xùn)基地分組進(jìn)行項(xiàng)目實(shí)訓(xùn)。期間結(jié)合加強(qiáng)項(xiàng)目訓(xùn)練和創(chuàng)新創(chuàng)業(yè)指導(dǎo),培養(yǎng)學(xué)生的敬業(yè)精神、團(tuán)隊(duì)精神;以及如何把個(gè)人價(jià)值觀和公司的價(jià)值觀進(jìn)行有效的銜接。以JAVA實(shí)訓(xùn)為例,該階段的實(shí)訓(xùn)目標(biāo)如表3所示。

3.預(yù)期成效分析。通過校企融合,借助于校企合作平臺(tái),探索應(yīng)用型軟件工程實(shí)踐教育教學(xué)模式:一是能使學(xué)生獲得實(shí)踐經(jīng)驗(yàn),提高學(xué)生的綜合素質(zhì)和就業(yè)競爭力;二是可為學(xué)生提供更多的與企業(yè)接觸機(jī)會(huì),創(chuàng)造就業(yè)機(jī)會(huì)[7],擴(kuò)大學(xué)生的就業(yè)渠道;三是可以為高校雙師型教師的成長提供平臺(tái)和環(huán)境。

(1)提高學(xué)生的綜合素質(zhì)和就業(yè)競爭力。有關(guān)統(tǒng)計(jì)信息表明:我國軟件專業(yè)畢業(yè)生,無論是本科軟件工程專業(yè),還是高職軟件專業(yè),其就業(yè)率和專業(yè)對(duì)口率都不是很高;另一方面,企業(yè)又普遍反映找不到合適的軟件人才。之所以會(huì)出現(xiàn)這樣的“兩難”局面[8],糾其原因在于目前高校軟件專業(yè)的培養(yǎng)與企業(yè)對(duì)軟件人才的需求不對(duì)稱,學(xué)生在學(xué)校所學(xué)的知識(shí)和技能無法緊跟市場,實(shí)踐動(dòng)手能力方面相對(duì)較弱,與企業(yè)直接頂崗的要求存在比較大的差距。校企合作模式,能在一定程度上彌補(bǔ)這方面的不足。

(2)提升學(xué)生的就業(yè)能力,擴(kuò)大學(xué)生的就業(yè)渠道。軟件工程的發(fā)展與信息社會(huì)的發(fā)展和需求是息息相關(guān)的,而目前高校該專業(yè)的教育模式仍然集中于過多過泛的基礎(chǔ)教育,教學(xué)方式仍然沿襲以理論講授為主的模式,導(dǎo)致學(xué)生的實(shí)踐能力與理論能力失衡[8]。因此,我們通過校企融合,整合優(yōu)化培養(yǎng)方案,圍繞培養(yǎng)目標(biāo),深化軟件人才培養(yǎng)模式改革。從第二學(xué)年開始,每個(gè)學(xué)年度請(qǐng)合作企業(yè)的資深工程師為同學(xué)們進(jìn)行實(shí)踐訓(xùn)練,通過實(shí)訓(xùn),使同學(xué)們逐步對(duì)大型軟件的開發(fā)流程和方法有一個(gè)初步的了解,體驗(yàn)軟件開發(fā)的工作氛圍,逐漸樹立基本的職業(yè)觀念,以便到畢業(yè)時(shí),能很好地適應(yīng)軟件開發(fā)相關(guān)技術(shù)崗位,提升就業(yè)能力,創(chuàng)造就業(yè)機(jī)會(huì),擴(kuò)大學(xué)生的就業(yè)渠道。

(3)培養(yǎng)“雙師型”教師。在校企合作的基礎(chǔ)上,選派部分教師到企業(yè)參與相關(guān)項(xiàng)目開發(fā)實(shí)踐,培養(yǎng)教師的“雙師”素質(zhì),提升教師的工程經(jīng)歷和軟件項(xiàng)目設(shè)計(jì)、開發(fā)經(jīng)驗(yàn),了解大中型軟件項(xiàng)目設(shè)計(jì)開發(fā)過程,提高教師實(shí)際工程研發(fā)能力,為雙師型教師的成長提供平臺(tái)和環(huán)境,使專業(yè)教師得到工程能力的鍛煉和提高,為以后“任務(wù)驅(qū)動(dòng)、項(xiàng)目導(dǎo)向”培養(yǎng)模式的開展提前做好師資儲(chǔ)備。

此外,通過校企融合模式,培養(yǎng)應(yīng)用型軟件工程人才,還可為企業(yè)培養(yǎng)更多優(yōu)秀的應(yīng)用型軟件人才。

四、結(jié)語

大學(xué)培養(yǎng)出來的軟件人才在層次上來說應(yīng)該是中高級(jí)的,他們受過良好的基礎(chǔ)教育和理論教育,但由于傳統(tǒng)的閉門造車式的培養(yǎng)模式,缺少實(shí)踐的機(jī)會(huì),而且所教授的理論和技術(shù)跟不上企業(yè)的現(xiàn)實(shí)需求,導(dǎo)致傳統(tǒng)學(xué)歷教育模式培養(yǎng)出的軟件工程專業(yè)學(xué)生往往是理論知識(shí)有余而實(shí)踐操作經(jīng)驗(yàn)不足,畢業(yè)生不能夠馬上和完全適應(yīng)企業(yè)的需要。因此,當(dāng)前高校軟件產(chǎn)業(yè)人才培養(yǎng)與實(shí)際需要存在著一定程度的脫節(jié),學(xué)歷教育與不斷變化的市場需求的矛盾相當(dāng)突出。而校企融合模式下應(yīng)用型軟件人才培養(yǎng)模式可以在一定程度上緩解這一矛盾,為企業(yè)培養(yǎng)更多優(yōu)秀的應(yīng)用型軟件人才。

參考文獻(xiàn):

[1]柳嬋娟,鄒海林.基于校企合作的應(yīng)用型軟件工程人才培養(yǎng)模式研究[J].計(jì)算機(jī)教育,2011,(24):9-12.

[2]張廣泉,楊季文.面向校企合作的軟件工程人才培養(yǎng)模式探討與實(shí)踐[J].計(jì)算機(jī)教育,2008,(21):29-32.

[3]張麗.軟件工程本科專業(yè)校企合作人才培養(yǎng)模式實(shí)踐[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2015,(8):137-139.

[4]徐洪智,覃遵躍.校企合作共建軟件工程專業(yè)實(shí)踐教學(xué)體系[J].實(shí)驗(yàn)室研究與探索,2013,32(6):128-130,160.

[5]王愛民,谷川.軟件工程專業(yè)校企合作實(shí)踐教學(xué)模式研究[J].實(shí)驗(yàn)技術(shù)與管理,2012,29(1):143-145.

[6]范會(huì)聯(lián),仲元昌.基于項(xiàng)目驅(qū)動(dòng)的軟件工程課程教學(xué)改革探索[J].教育與職業(yè),2013,(5):147-148.

第4篇

培養(yǎng)高質(zhì)量的軟件開發(fā)人才一直是社會(huì)和行業(yè)關(guān)注的焦點(diǎn)。早在11年前,對(duì)于工程教育的迫切性就被人提出來[1]。工程教育本身也作為一個(gè)系統(tǒng)問題被討論[2]。現(xiàn)在從國家層面在戰(zhàn)略上建立了軟件學(xué)院進(jìn)行專門培養(yǎng),各個(gè)高校也不斷推出新的課程、新的措施方案。在這一領(lǐng)域雖然比過去似乎已經(jīng)有了翻天覆地的變化,但來自企業(yè)的呼吁似乎一直反映出諸多不盡如人意。更多的思路希望將企業(yè)的力量直接引入到教學(xué),比如實(shí)訓(xùn)基地等[3];而國家層面也非常關(guān)注實(shí)訓(xùn)[4]。但實(shí)際效果可能變得流于表面,因?yàn)槠髽I(yè)往往難以將核心的工作拿給學(xué)生做,而其訓(xùn)練的項(xiàng)目也并未從更全面系統(tǒng)的角度去設(shè)計(jì),其鍛煉效果就有限了。在軟件開發(fā)這一領(lǐng)域,由于其具有變化迅速,新技術(shù)不斷涌現(xiàn)的特點(diǎn),導(dǎo)致不少在教育內(nèi)容上選擇了追逐新技術(shù)、新語言、新平臺(tái),以能用會(huì)用這些流行主流技術(shù)為目標(biāo)。典型的代表就是北大青鳥,有些二本的學(xué)生在畢業(yè)前專門花錢去青鳥學(xué)習(xí),似乎可以看到這種教育的優(yōu)勢。但另一個(gè)矛盾的情況是,往往那些關(guān)注員工后勁的公司卻不愿意招聘青鳥的學(xué)生。如果將目光投向國外的頂級(jí)大學(xué),例如斯坦福,其教學(xué)上并沒有去“依賴”校企合作,以及很熱門的“實(shí)訓(xùn)”。其核心課程依然是過去的傳統(tǒng)經(jīng)典課程。以一個(gè)研究生為例,一學(xué)期能修2門課是正常,3門就很優(yōu)秀。它并沒有追逐所謂的新技術(shù)。但無人質(zhì)疑其學(xué)生的工程能力、科研能力和創(chuàng)造能力。

2什么是計(jì)算機(jī)工程能力的核心

什么才是我們軟件開發(fā)教育的核心知識(shí)架構(gòu),怎樣才能培養(yǎng)學(xué)生可持續(xù)發(fā)展的核心競爭力?我們調(diào)查過一些非常高水準(zhǔn)的軟件開發(fā)者,發(fā)現(xiàn)他們往往在底層軟件上持之以恒地進(jìn)行長時(shí)間深刻的鍛煉,然后在未接觸的新領(lǐng)域才能非常迅速地掌握核心。例如,一個(gè)非計(jì)算機(jī)專業(yè)的系統(tǒng)分析員曾經(jīng)“只”在DOS這種原始的操作系統(tǒng)下玩了10年,甚至自己寫過一個(gè)漢化的DOS。他只有書本上的一點(diǎn)點(diǎn)網(wǎng)絡(luò)知識(shí)時(shí),就用一兩天時(shí)間解決了一個(gè)學(xué)通信的研究生1個(gè)月都不能解決的網(wǎng)絡(luò)故障。這是一個(gè)典型的例子,他并沒有“實(shí)際的”網(wǎng)絡(luò)經(jīng)驗(yàn),什么使得他如此輕松地進(jìn)入了新的領(lǐng)域呢?而另一個(gè)曾就職于vmware、google等頂級(jí)公司的程序員,在Unix下只用C語言做了10年系統(tǒng)級(jí)編程。當(dāng)用Java,C++甚至是javascript時(shí),其學(xué)習(xí)時(shí)間只是1天,很快就比做了幾年專門java編程的程序員還精通。如何才是軟件開發(fā)人員的本質(zhì)力量?什么才能讓他們?cè)谧兓f千的新技術(shù)面前屹立不倒,乘風(fēng)破浪?

2.1計(jì)算機(jī)工程能力

我們認(rèn)為計(jì)算機(jī)工程能力包含兩方面的內(nèi)容:(1)核心知識(shí)架構(gòu);(2)計(jì)算機(jī)的思維方式。什么是核心知識(shí)架構(gòu)呢?是反應(yīng)該領(lǐng)域最基本規(guī)律和支撐技術(shù)的知識(shí)。簡單地說就是傳統(tǒng)的操作系統(tǒng)、編譯、數(shù)據(jù)庫。操作系統(tǒng)將硬件、軟件、高級(jí)語言和匯編融匯在一起,它幾乎包括了軟件工程中所有重要的因素。舉一個(gè)簡單的例子,似乎只有面向?qū)ο筮@種“高級(jí)東西”才有的虛函數(shù)運(yùn)用,其實(shí)在Linux中就有相應(yīng)的虛文件系統(tǒng)。操作系統(tǒng)是最為復(fù)雜的計(jì)算機(jī)工程之一。編譯融匯了大量的算法,而且能讓大家真正看“穿”語言的外表,深入到其內(nèi)里,體現(xiàn)了最根本的計(jì)算機(jī)技術(shù)。其優(yōu)化技術(shù),也深刻地和硬件交融在一起,很好體現(xiàn)了底層風(fēng)范。數(shù)據(jù)庫,不僅是運(yùn)用算法最多的地方,甚至是超越操作系統(tǒng)的一個(gè)復(fù)雜的系統(tǒng),從緩存技術(shù)到i/o優(yōu)化,到索引,再到事務(wù)處理,無一不是反映計(jì)算機(jī)最深刻規(guī)律。大家可以發(fā)現(xiàn),所謂核心知識(shí)架構(gòu),都具有兩個(gè)特點(diǎn),反映本質(zhì)規(guī)律,體現(xiàn)軟硬融匯交織。也只有這樣,才能建立下面談到的“計(jì)算機(jī)思維方式”。

2.2核心知識(shí)架構(gòu)

為什么我們沒包括一些新興的語言和技術(shù)呢?似乎它們很“實(shí)用”。而且已經(jīng)出現(xiàn)的問題是,按照傳統(tǒng)科目和方式學(xué)習(xí)后,學(xué)生在企業(yè)什么都不會(huì)。這也正是大家關(guān)注工程教育的初衷。為什么不強(qiáng)調(diào)這些新興實(shí)用技術(shù)的教育還在強(qiáng)調(diào)“古老”的“基礎(chǔ)”。計(jì)算機(jī)領(lǐng)域一個(gè)顯著的特點(diǎn)是,表面上知識(shí)更新非??欤录夹g(shù)、語言層出不窮。這很容易導(dǎo)致當(dāng)我們發(fā)現(xiàn)學(xué)生能力欠缺時(shí),將問題歸罪于新技術(shù)的學(xué)習(xí)不得力,知識(shí)結(jié)構(gòu)老化。但其實(shí)目前的問題可以從另外一個(gè)角度考慮,是否是基礎(chǔ)教育不得力?分析國外著名大學(xué),如斯坦福、伯克利的課程,我們發(fā)現(xiàn)兩個(gè)特點(diǎn):(1)關(guān)鍵的基礎(chǔ)課程,如操作系統(tǒng)、編譯原理、數(shù)據(jù)庫,始終是其最重要的課程,并沒有過分追逐各種“新潮”技術(shù)。(2)學(xué)生一學(xué)期能修的課程非常有限,一般為3門課。而國內(nèi)卻呈現(xiàn)相反的狀況,比如編譯原理被降到了選修課的角色,新潮課程層出不窮,一個(gè)學(xué)生二年級(jí)一學(xué)期要修13門課。在這種走馬觀花的狀況下,計(jì)算機(jī)這種具有強(qiáng)烈“手藝”色彩和工程實(shí)踐的學(xué)科,被完全紙上談兵化。而一些可憐的實(shí)驗(yàn)內(nèi)容,還被學(xué)生的復(fù)制拷貝所湮沒。我們認(rèn)為,恰恰是這種情況,使得基礎(chǔ)核心知識(shí)教育沒有工程化,沒有充分動(dòng)手,導(dǎo)致了基礎(chǔ)知識(shí)教育某種程度上的巨大失敗。從以下鮮明的對(duì)比可以窺見問題的端倪:國內(nèi)學(xué)生反映操作系統(tǒng)課程是文科課程(只需要背條款考試即可);而相對(duì)地,國外著名高校操作系統(tǒng)課程要求學(xué)生實(shí)現(xiàn)“小”操作系統(tǒng)。國內(nèi)數(shù)據(jù)庫只講其應(yīng)用(如大量講解sql等運(yùn)用,sql即使非計(jì)算機(jī)專業(yè)人士也很容易學(xué)習(xí),這也是它被發(fā)明的初衷)。斯坦福的數(shù)據(jù)庫課程中有一門需要實(shí)現(xiàn)一個(gè)數(shù)據(jù)庫系統(tǒng)。在筆者走訪的計(jì)算機(jī)工程上優(yōu)秀的人才,發(fā)現(xiàn)其共同的特點(diǎn)就是在諸如操作系統(tǒng)或數(shù)據(jù)庫上都有很深入的學(xué)習(xí)經(jīng)歷,比如前面提及的自己構(gòu)建過漢化DOS系統(tǒng),或者在Unix下,做內(nèi)核以及驅(qū)動(dòng)很多年等。而當(dāng)他們接觸新技術(shù)時(shí),之前深刻的經(jīng)驗(yàn)和淬煉的思維就讓他們?nèi)缁⑻硪?,快人一等。更有甚者,國外真正的最頂?jí)專家,都是在這些領(lǐng)域有無與倫比水平的專家,從delphi的締造者,轉(zhuǎn)戰(zhàn)到微軟并入主.net平臺(tái)的開發(fā),也可看到雄厚的底層知識(shí)和能力的巨大作用。所以“老”知識(shí)并不是障礙,而是通向天堂的階梯。究其原因,就涉及到工程能力的第2個(gè)方面,計(jì)算機(jī)思維方式。

2.3計(jì)算機(jī)思維方式

對(duì)非專業(yè)人士它是很抽象的概念,而對(duì)真正專業(yè)人士,這又是一個(gè)非常鮮活的概念。這里限于篇幅,我們只舉一個(gè)簡單的例子。面對(duì)在C++中外部代碼如何直接修改私有變量的問題,計(jì)算機(jī)的思維方式就是:對(duì)象也是放在內(nèi)存中,只要能拿到對(duì)象的地址,并知道對(duì)象的布局,那么就可修改。而沒有建立這種思維的人,就完全被高級(jí)語言的語法所左右,無從下手。一句話,無法看到本質(zhì),沒有從下而上的底層思維。核心知識(shí)課程的有效深入教學(xué)和計(jì)算機(jī)思維方式建立有何直接關(guān)系呢?我們認(rèn)為核心知識(shí)因?yàn)槠浞磻?yīng)了計(jì)算機(jī)本質(zhì)規(guī)律,而且從底層建立起來,所以對(duì)其深入掌握運(yùn)用后,它從開始的逼迫到最后的陶冶,最終潛移默化地讓受眾建立起“計(jì)算機(jī)思維方式”。而這正是計(jì)算機(jī)工程師安身立命之本,就如同音樂家有其獨(dú)特的音樂思維方式一樣。為什么諸如java之類的課程于建立計(jì)算機(jī)基本思維不太合適呢?因?yàn)樗邔?,無法讓學(xué)生看到最下面。而唯有徹底、深刻和系統(tǒng)的底層淬煉,才能真正建立起“計(jì)算機(jī)思維方式”。

3如何打造強(qiáng)大的計(jì)算機(jī)工程能力

大家一方面指責(zé)基礎(chǔ)課程的“空洞”、“無用”、“陳舊”;另一方面在不斷開設(shè)的海量新課和技術(shù)中壓得學(xué)生更加遠(yuǎn)離編程,遠(yuǎn)離實(shí)踐。即使能培養(yǎng)出熟悉某種語言的學(xué)生,也無法看到他們和培訓(xùn)學(xué)校有何不同。實(shí)訓(xùn)也似乎沒有根本解決問題,我們?cè)趯?shí)踐中發(fā)現(xiàn),往往是那些自己醉心于編程的學(xué)生最后有著卓越的表現(xiàn)。讓基礎(chǔ)知識(shí)能支撐和指導(dǎo)實(shí)踐,而非僅僅“符號(hào)”,并引導(dǎo)學(xué)生進(jìn)行高效的實(shí)踐。

3.1“3塊連一線”,4門基礎(chǔ)課程整合打造核心知識(shí)架構(gòu)我們將4門基本課程進(jìn)行貫通式整合,著力塑造學(xué)生的“計(jì)算機(jī)思維”。下層的是3門基礎(chǔ)課(在上一小節(jié)探討了其在工程能力訓(xùn)練上不可替代的重要地位),對(duì)軟件開發(fā)環(huán)境產(chǎn)生支撐。而軟件開發(fā)環(huán)境又通過精心的設(shè)計(jì)和工程實(shí)踐,從應(yīng)用角度將3門課程所學(xué)的知識(shí)串聯(lián)起來。從而將基礎(chǔ)知識(shí)和工程開發(fā)更有機(jī)整合在一起。首先,闡述為什么將以上課程整合在一起的理由。要回答這個(gè)問題,必須先回答什么東西支撐了優(yōu)秀程序員。在我們的調(diào)查人員中,無一例外地都具有很深厚的底層軟件開發(fā)背景。有長期從DOS的Hack入手的;有長期從事Unix內(nèi)核編程的;有從Windows的driver起步的;有以反匯編逆向?yàn)楦?。長期在最底層的經(jīng)歷,使他們建立了最真實(shí)和能觸摸的系統(tǒng)觀,能以計(jì)算機(jī)的方式思考。所以面臨新技術(shù)時(shí),他們能透過新形式很快把握其精髓,深刻地把握其實(shí)質(zhì)。“太陽下面沒有真正的新事物”,例如號(hào)稱21世紀(jì)最新的重要的軟件技術(shù)AOP(AspectOrientedProgramming,AOP),其實(shí)在20世紀(jì)60年代就出現(xiàn)在了匯編一級(jí)的軟件技術(shù)中,它本質(zhì)就是鉤子技術(shù)的系統(tǒng)化。在底層的軟件世界,我們不僅能夠用到那些所謂的最新的技術(shù),而且能看到其本質(zhì)(我們可能就是用機(jī)器碼自己構(gòu)建出來的,而不被新技術(shù)的華麗外衣障目)。這些使得具有底層經(jīng)驗(yàn)的開發(fā)者,更有創(chuàng)造力,更能創(chuàng)造,也更能洞察迷亂后的本質(zhì),庖丁解牛,解決那些異常復(fù)雜的工程問題。舉一個(gè)筆者遇到的真實(shí)例子,一個(gè)具有深刻底層經(jīng)驗(yàn)的程序員(一直只有C語言和操作系統(tǒng)編程經(jīng)驗(yàn))和一個(gè)只有深刻Java經(jīng)驗(yàn)的程序員,在同時(shí)學(xué)習(xí)Javascript的閉包概念時(shí),后者一個(gè)禮拜都還有些似是而非。前者很快就能自如運(yùn)用,且最后指點(diǎn)了后者1個(gè)小時(shí),后者頓時(shí)豁然開朗。這是典型的“新”與“老”,上層和底層經(jīng)驗(yàn)在面對(duì)新事物時(shí)的對(duì)比。既然底層軟件賦予我們?nèi)绱藦?qiáng)大的能力,那么哪些是底層軟件呢?大家公認(rèn),操作系統(tǒng)、編譯和數(shù)據(jù)庫由來就是計(jì)算機(jī)工程自身的根基。所以,我們必須將這3門課涉及的知識(shí)好好淬煉。而如何將3門課的知識(shí)和我們?nèi)粘5能浖_發(fā)聯(lián)系起來呢?如何用它們指導(dǎo)平時(shí)程序的開發(fā)呢(我們大多數(shù)是開發(fā)用戶級(jí)軟件,不會(huì)開發(fā)內(nèi)核軟件,因此許多人認(rèn)為幾乎整個(gè)在內(nèi)核中的操作系統(tǒng)對(duì)用戶級(jí)軟件開發(fā)無從指導(dǎo))?另一門課,《軟件開發(fā)環(huán)境》解決了這一問題。它有一條主線,通過反匯編將C語言和匯編串聯(lián)起來,讓系統(tǒng)級(jí)的知識(shí)從高級(jí)語言的面紗下展現(xiàn)出來。同時(shí)用逆向工程這把庖丁之刃,將編譯、鏈接、面向?qū)ο蟮溶浖_發(fā)中的重要知識(shí)塊剖剔,讓底層與上層貫通一氣。而逆向的技術(shù)技巧,本身也是非常高級(jí)的軟件開發(fā)技術(shù)。因此,我們用“3塊連一線”來總結(jié)4門課的關(guān)系是最好不過了。為什么不納入語言課程,比如C/C++語言?從我們的工程經(jīng)驗(yàn)來看,語言只是計(jì)算機(jī)原理和思想的載體,是表述方式而已。為了表述形式而專門花大力氣是不值得的。比如,國外的著名大學(xué)很多都不開設(shè)語言課,在其他課程作業(yè)中必須用C語言編程,學(xué)生們就在那里鍛煉了。真正的語言的力量并非來自語言本身,而是底層知識(shí)為支撐的項(xiàng)目鍛煉。我們的思路是以構(gòu)建式完成大量的完整系統(tǒng)的編寫,這樣就很好鍛煉了軟件開發(fā)和工程能力。同時(shí),“軟件開發(fā)環(huán)境”本身從逆向?qū)用嬉矊?duì)語言有了深刻的剖析,這是純粹的語言課難以完成的。另外,從大綱安排上,我們?cè)诖笠痪蜁?huì)讓學(xué)生用C語言來初步接觸程序編寫,這時(shí)并不適合放入太高級(jí)主題。而在教學(xué)中,語言的力量已經(jīng)滲透到一個(gè)個(gè)工程構(gòu)建中,隨風(fēng)潛入夜了。為什么不納入算法課程?從某種程度上,“程序就是算法與數(shù)據(jù)結(jié)構(gòu)嗎”?我們認(rèn)為在系統(tǒng)中運(yùn)用算法,算法才具有生命力。而編譯、操作系統(tǒng)、數(shù)據(jù)庫以及我們專門設(shè)立的一些課程設(shè)計(jì)將全面運(yùn)用各種算法和數(shù)據(jù)結(jié)構(gòu)。在實(shí)戰(zhàn)中運(yùn)用并學(xué)習(xí)提升才是王道。這也正是構(gòu)建式學(xué)習(xí)的精髓所在,這也正是探索式學(xué)習(xí)培養(yǎng)學(xué)生的創(chuàng)造能力的精髓所在。算法課已經(jīng)為我們準(zhǔn)備了元件,就看你怎么去組裝甚至改造。

3.2以構(gòu)建主義的思路,深度實(shí)踐的風(fēng)格改革課程

前面我們論述了底層知識(shí)架構(gòu)的重要性,那么怎么來將它們實(shí)際地建立在學(xué)生的工程實(shí)踐中呢?簡單地說就是“構(gòu)建一個(gè)具體而微的系統(tǒng)”。講操作系統(tǒng)就構(gòu)建一個(gè)小操作系統(tǒng),講編譯原理就構(gòu)建一個(gè)小編譯器。同時(shí),設(shè)計(jì)一些跨度較大的課程設(shè)計(jì)覆蓋這些課程的一些重點(diǎn)內(nèi)容。構(gòu)建完整系統(tǒng)本身就可真實(shí)淬煉工程能力,而這些內(nèi)容的復(fù)雜性、難度以及運(yùn)用知識(shí)點(diǎn)的廣度,本身就超越了簡單的企業(yè)實(shí)訓(xùn)項(xiàng)目,在培養(yǎng)人才方面具有系統(tǒng)性、完整性、挑戰(zhàn)性獨(dú)特優(yōu)點(diǎn)。我們需要的是運(yùn)用團(tuán)隊(duì)的思路和現(xiàn)代軟件工程的手段,將其開發(fā)過程管理發(fā)起來,從而熟悉企業(yè)級(jí)開發(fā)的工具鏈,將軟件工程學(xué)到的知識(shí)貫通到實(shí)作中。這也回答了“和以前相似的強(qiáng)調(diào)基礎(chǔ)課程教育,什么特點(diǎn)使得我們的做法能獲得強(qiáng)大的工程能力?”這一問題。以前更多注重理論知識(shí)的學(xué)習(xí),而現(xiàn)在的做法是回歸計(jì)算機(jī)工程的自身科學(xué)規(guī)律———實(shí)踐為王。

3.3改革考核評(píng)價(jià)標(biāo)準(zhǔn),充分強(qiáng)調(diào)動(dòng)手實(shí)踐

以前我們一直是卷面考試,實(shí)驗(yàn)分?jǐn)?shù)只是象征性的點(diǎn)綴。這本身違反了計(jì)算機(jī)工程的特點(diǎn)。只有改變?cè)u(píng)價(jià)考核標(biāo)準(zhǔn),才能真正驅(qū)動(dòng)學(xué)生充分鍛煉工程。在課程軟件開發(fā)環(huán)境中,我們采取了平時(shí)的考試結(jié)合期末考試的方式,而兩者均為軟件編寫。期末考試在實(shí)驗(yàn)室上機(jī)編撰指定題目。不強(qiáng)調(diào)對(duì)一些函數(shù)名等死知識(shí)點(diǎn)的記憶,可以用在線幫助。這本身也符合軟件開發(fā)的規(guī)律。

第5篇

(1)是一門新興的交叉學(xué)科。相比于其他學(xué)科,如哲學(xué)、教育學(xué)等,軟件工程專業(yè)屬于一門新興學(xué)科,僅有20余年的辦學(xué)經(jīng)驗(yàn);而軟件工程專業(yè)所需的技能需要多學(xué)科知識(shí)的綜合應(yīng)用,因此它屬于一門交叉學(xué)科。(2)要求的基礎(chǔ)知識(shí)比較廣泛。軟件工程專業(yè)與軟件開發(fā)的工程實(shí)踐緊密結(jié)合,需要廣泛的專業(yè)基礎(chǔ)知識(shí),包括計(jì)算機(jī)科學(xué)、數(shù)學(xué)、工程學(xué)、管理學(xué)、經(jīng)濟(jì)學(xué)等。(3)具有較強(qiáng)的實(shí)踐性。軟件工程專業(yè)強(qiáng)調(diào)將基礎(chǔ)理論知識(shí)應(yīng)用于工程實(shí)踐,在教學(xué)過程中有大量的實(shí)踐環(huán)節(jié),需要通過實(shí)踐檢驗(yàn)基礎(chǔ)知識(shí)的掌握和應(yīng)用情況。(4)密切聯(lián)系工程實(shí)際應(yīng)用,與時(shí)俱進(jìn)。軟件工程專業(yè)是在工程應(yīng)用中形成的一門學(xué)科,是根據(jù)實(shí)際工程應(yīng)用的需要總結(jié)工程實(shí)踐經(jīng)驗(yàn)和提取知識(shí),將基礎(chǔ)知識(shí)和工程應(yīng)用相結(jié)合,運(yùn)用基礎(chǔ)知識(shí)解決實(shí)際應(yīng)用中出現(xiàn)的問題而逐步形成的。隨著工程應(yīng)用中的技術(shù)進(jìn)步,軟件工程專業(yè)的課程設(shè)置和授課內(nèi)容也需要進(jìn)行適當(dāng)調(diào)整。

2軟件工程專業(yè)的知識(shí)體系

經(jīng)過多年的發(fā)展,軟件工程專業(yè)的本科生和研究生已經(jīng)具備一定規(guī)模并獲得社會(huì)的普遍認(rèn)可。隨著社會(huì)的進(jìn)步和軟件產(chǎn)業(yè)的發(fā)展,軟件的需求量會(huì)越來越大,對(duì)軟件工程專業(yè)人才的需求仍會(huì)十分旺盛,迫切需要我們健全和完善軟件工程專業(yè)的知識(shí)體系,為社會(huì)發(fā)展培養(yǎng)緊缺人才。我們可以立足國情,借鑒國外的研究成果和經(jīng)驗(yàn)教訓(xùn),研究我國軟件工程專業(yè)的人才培養(yǎng)模式,不斷進(jìn)行教學(xué)改革,逐步形成具有中國特色的人才培養(yǎng)方案和課程評(píng)價(jià)體系,為我國社會(huì)主義建設(shè)的可持續(xù)發(fā)展奠定良好的基礎(chǔ)[2]。IEEE最新的軟件工程知識(shí)體系(SWEBOK)將軟件工程知識(shí)分解成10個(gè)知識(shí)域,并組成一個(gè)多級(jí)層次化的體系結(jié)構(gòu),如圖1所示。這10個(gè)知識(shí)域是從軟件開發(fā)的實(shí)際工程過程中總結(jié)出的,體現(xiàn)了軟件開發(fā)所必須掌握的技能,軟件工程專業(yè)的人才培養(yǎng)體系應(yīng)圍繞這些知識(shí)域展開。軟件工程知識(shí)體系結(jié)構(gòu)僅給出軟件工程專業(yè)的一個(gè)總知識(shí)框架,各軟件學(xué)院在具體辦學(xué)過程中可以根據(jù)自己的實(shí)際情況設(shè)置不同的專業(yè)方向,專業(yè)課程的設(shè)置也要不斷地根據(jù)市場對(duì)人才的需求進(jìn)行調(diào)整,調(diào)整的依據(jù)就是課程評(píng)價(jià)體系的結(jié)果。

3軟件工程專業(yè)課程評(píng)價(jià)體系設(shè)計(jì)

課程體系是為實(shí)現(xiàn)培養(yǎng)目標(biāo)而設(shè)置的全部課程及其內(nèi)容的總和,是由各類課程按照一定的邏輯關(guān)系構(gòu)成的課程系統(tǒng),是人才培養(yǎng)方案的核心內(nèi)容。軟件工程專業(yè)成立的時(shí)間較短,在課程評(píng)價(jià)方面尚沒有完整統(tǒng)一的評(píng)價(jià)體系,而且該專業(yè)課程設(shè)置更新的速度比較快,也缺乏一個(gè)評(píng)價(jià)課程設(shè)置與更新是否科學(xué)合理的依據(jù)。為此,需要根據(jù)軟件工程專業(yè)的特點(diǎn)和知識(shí)體系,設(shè)計(jì)課程的評(píng)價(jià)體系和具體的評(píng)價(jià)指標(biāo)。3.1評(píng)價(jià)原則課程設(shè)置是影響院校建設(shè)和發(fā)展的重要因素,對(duì)內(nèi)影響師資隊(duì)伍、教學(xué)設(shè)備、實(shí)驗(yàn)儀器等教學(xué)資源的配置,對(duì)外影響學(xué)生就業(yè)、學(xué)院在社會(huì)上的聲譽(yù)甚至局域經(jīng)濟(jì)的發(fā)展。因此,在對(duì)軟件工程專業(yè)設(shè)定評(píng)價(jià)體系時(shí),應(yīng)遵循以下原則。(1)知識(shí)體系全覆蓋原則。軟件工程專業(yè)旨在培養(yǎng)未來的軟件工程師,畢業(yè)生主要從事與軟件開發(fā)相關(guān)的工作,因此課程體系的設(shè)置要完全覆蓋軟件工程知識(shí)體系所要求的內(nèi)容。(2)科學(xué)規(guī)范原則。課程體系的設(shè)置不僅是每個(gè)學(xué)院的個(gè)別行為,也是一種社會(huì)行為。為使各個(gè)軟件學(xué)院的軟件工程專業(yè)整體結(jié)構(gòu)合理規(guī)范,國家試點(diǎn)建立了一批“國家級(jí)示范軟件學(xué)院”引導(dǎo)軟件工程專業(yè)課程體系的設(shè)定。這樣使學(xué)院之間、學(xué)院與企業(yè)之間、學(xué)院與人才市場之間的交流有了統(tǒng)一規(guī)范,但是在具體的專業(yè)方向以及選修課程的設(shè)置上沒有具體的規(guī)范,各個(gè)學(xué)院正在摸索著前進(jìn),在一些具體課程的設(shè)置上也會(huì)注意專業(yè)面寬窄的選擇、針對(duì)性與適應(yīng)性、靈活性與穩(wěn)定性等方面的矛盾處理問題。(3)保障條件原則。課程體系的設(shè)置與教學(xué)過程緊密相連,是實(shí)現(xiàn)專業(yè)培養(yǎng)目標(biāo)的重要前提,是質(zhì)量的根本保證。要進(jìn)行課程體系的設(shè)置,首先要具有開設(shè)該門課程的保障基礎(chǔ),包括師資隊(duì)伍、教學(xué)設(shè)備、實(shí)驗(yàn)環(huán)境等。(4)效益最大化原則。所謂的效益最大化,是指社會(huì)效益和經(jīng)濟(jì)效益的均衡,不能顧此失彼,要讓雙方都能獲得最大的效益[3]。社會(huì)效益是指滿足社會(huì)對(duì)人才的需求,培養(yǎng)學(xué)生掌握工作崗位所要求的技能,同時(shí)促進(jìn)學(xué)生的自身發(fā)展,為學(xué)生提供更好的發(fā)展機(jī)會(huì)。經(jīng)濟(jì)效益是因?yàn)榻逃灿谐杀?,軟件學(xué)院一般采用“成本辦學(xué)”模式,要考慮在辦學(xué)當(dāng)中的成本投入,特別是在當(dāng)前教育資源短缺的情況下,更要注重資源的利用。3.2參與評(píng)價(jià)的對(duì)象對(duì)于課程體系的評(píng)價(jià)不能聽信于一家之言,要有相關(guān)干系人的參與,包括教學(xué)院長、系主任、主講教師、已畢業(yè)學(xué)生、用人單位、軟件工程師等。通過各方面人員從不同的角度對(duì)課程體系進(jìn)行評(píng)價(jià)后,得到一個(gè)客觀公正的評(píng)價(jià)結(jié)果。3.3評(píng)價(jià)方法在進(jìn)行課程體系評(píng)價(jià)時(shí),可以采用多種評(píng)價(jià)方法,如問卷調(diào)查方法、訪談方法等。每一種方法都有自己的優(yōu)點(diǎn)和缺點(diǎn),也可以采用多種方法結(jié)合的方式。(1)問卷調(diào)查方法。首先由評(píng)價(jià)的主管部門組織專家設(shè)計(jì)問卷調(diào)查,然后把問卷發(fā)送給每一位參與的評(píng)價(jià)者并請(qǐng)他們按要求如實(shí)作答。問卷調(diào)查方法最重要的一個(gè)環(huán)節(jié)就是設(shè)計(jì)一份高信度、高效度的調(diào)查問卷和設(shè)定評(píng)價(jià)分值。(2)訪談方法。由評(píng)價(jià)主管部門依據(jù)事先擬定好的專業(yè)課程體系評(píng)價(jià)的訪談提綱,通過個(gè)別談話或座談會(huì)的形式收集信息,做詳細(xì)記錄并在事后進(jìn)行分析。3.4評(píng)價(jià)模型根據(jù)現(xiàn)在多數(shù)軟件學(xué)院軟件工程專業(yè)的辦學(xué)特點(diǎn),一般是先設(shè)定專業(yè)方向,然后再根據(jù)專業(yè)方向設(shè)定方向課程,因此我們采用二維四向評(píng)價(jià)模型,如圖2所示[4]。在該評(píng)價(jià)模型中,以O(shè)為原點(diǎn)的水平線,正向代表社會(huì)需求維度,逆向代表保障條件維度;然后再以O(shè)為原點(diǎn)畫出4條線,分別為OX1、OY1、OX2、OY2,其中X1方向代表經(jīng)濟(jì)效益,X2方向代表社會(huì)效益,Y1方向代表硬件保障條件,Y2方向代表軟件保障條件。在分析過程中,可以采用定量分析和定性分析。為了簡化模型的應(yīng)用,我們以定性分析為例,將每一個(gè)指標(biāo)按照由低到高的順序劃分為3個(gè)級(jí)別,分別用1、2、3表示,其中3表示“強(qiáng)”,2表示“中”,1表示“弱”。在每一個(gè)維度(X1、Y1、X2、Y2)上分別標(biāo)識(shí)一個(gè)點(diǎn),然后把4個(gè)點(diǎn)連成一個(gè)四邊形。構(gòu)成的四邊形面積越大,說明社會(huì)需求和保障條件越好。專業(yè)方向和課程的設(shè)置均可以采用此二維四向評(píng)價(jià)模型進(jìn)行評(píng)價(jià)。在該評(píng)價(jià)模型中,可以計(jì)算取值總和S=X1+Y1+X2+Y2,根據(jù)總和設(shè)定一個(gè)閥值,對(duì)專業(yè)方向進(jìn)行歸類。例如,當(dāng)閥值P>9時(shí),表示專業(yè)方向處于最佳狀態(tài);P>6時(shí),表示專業(yè)方向處于發(fā)展中狀態(tài);P<6時(shí),意味著即將被淘汰。同時(shí),還可以計(jì)算發(fā)展趨勢比t=(X1+X2):(Y1+Y2),若t=1,表示該專業(yè)方向處于穩(wěn)定期狀態(tài),意味著社會(huì)需求與保障條件比較協(xié)調(diào);t>1,表示處于強(qiáng)勢發(fā)展?fàn)顟B(tài),意味著需求比較旺盛,保障條件需要進(jìn)一步完善;t<1,表示處于衰退期狀態(tài),意味著社會(huì)需求不足而保障條件有冗余。在進(jìn)行專業(yè)方向評(píng)價(jià)時(shí),要參考S值和t值,同時(shí)要考慮(X1+X2)和(Y1+Y2)具體取值以及專業(yè)方向的歷史發(fā)展?fàn)顩r。當(dāng)然使用該模型的前提是已經(jīng)使用上述評(píng)價(jià)方法,對(duì)每個(gè)專業(yè)方向和課程進(jìn)行了較為準(zhǔn)確的判斷。對(duì)于該評(píng)價(jià)模型,我們可以很容易地將它轉(zhuǎn)化為定量分析,只需要在(X1、Y1、X2、Y2)的每一個(gè)維度上有一個(gè)準(zhǔn)確的數(shù)值即可。3.5評(píng)價(jià)過程課程體系的評(píng)價(jià)過程不是一蹴而就的,而是一個(gè)循環(huán)往復(fù)的過程,特別是對(duì)于軟件工程專業(yè),工程應(yīng)用技術(shù)的更新速度比較快,專業(yè)方向(課程)的更替也比較頻繁,但是不管課程如何更換,其最終目的都是實(shí)現(xiàn)專業(yè)方向培養(yǎng)目標(biāo),我們可以將評(píng)價(jià)過程簡單地用圖3表示。圖3所示的評(píng)價(jià)過程中有3個(gè)反饋循環(huán)。首先設(shè)定專業(yè)方向培養(yǎng)目標(biāo),根據(jù)培養(yǎng)目標(biāo)進(jìn)行專業(yè)方向的設(shè)計(jì),得到預(yù)期的專業(yè)方向課程體系,這時(shí)可以采用圖2的評(píng)價(jià)模型進(jìn)行課程體系的評(píng)價(jià),同時(shí)進(jìn)行結(jié)果反饋;根據(jù)預(yù)期的專業(yè)方向課程體系進(jìn)行專業(yè)方向?qū)嵤ㄟ^實(shí)施檢驗(yàn)是否達(dá)到專業(yè)方向的培養(yǎng)目標(biāo);然后根據(jù)出現(xiàn)的問題再次進(jìn)行反饋,可以更改專業(yè)方向的培養(yǎng)目標(biāo),也可以更改專業(yè)方向的課程體系。3.6評(píng)價(jià)示例哈爾濱理工大學(xué)軟件學(xué)院軟件工程專業(yè)成立于2002年,于2011年被確定為黑龍江省首批卓越工程師教育培養(yǎng)計(jì)劃(簡稱卓越計(jì)劃)試點(diǎn)專業(yè)。在卓越計(jì)劃的實(shí)施過程中,學(xué)校在企業(yè)中建立16個(gè)教學(xué)實(shí)踐基地,校企共同制訂人才培養(yǎng)標(biāo)準(zhǔn),實(shí)現(xiàn)校企深度融合,聯(lián)合培養(yǎng)軟件人才。軟件學(xué)院在2010年進(jìn)行專業(yè)方向和課程體系的重新修訂。在修訂過程中,根據(jù)市場的人才需求、當(dāng)前的技術(shù)更新以及課程評(píng)價(jià)體系的評(píng)價(jià)結(jié)果,重新制定了專業(yè)方向和課程教學(xué)計(jì)劃。軟件學(xué)院之前的軟件工程專業(yè)分為兩個(gè)專業(yè)方向:嵌入式軟件開發(fā)和數(shù)據(jù)庫應(yīng)用開發(fā)。在進(jìn)行專業(yè)方向的評(píng)價(jià)時(shí),邀請(qǐng)用人單位、往屆畢業(yè)生、軟件工程師、主講教師、外校教師等相關(guān)人員一起進(jìn)行討論并設(shè)計(jì)了問卷調(diào)查,收集大家的意見,最終嵌入式軟件開發(fā)的得分為(3+2+3+2),即該專業(yè)方向處于最佳狀態(tài),數(shù)據(jù)庫應(yīng)用開發(fā)的得分為(1+1+2+1),即該專業(yè)方向?qū)⒈惶蕴?。?jīng)修訂,軟件工程專業(yè)方向調(diào)整為嵌入式軟件開發(fā)、軟件開發(fā)J2EE技術(shù)、軟件開發(fā).NET技術(shù)和物聯(lián)網(wǎng)軟件開發(fā)技術(shù)。對(duì)于單門課程的評(píng)價(jià)也是一樣,采用二維四向評(píng)價(jià)模型可以對(duì)每一門課程進(jìn)行評(píng)價(jià),如原來的工程數(shù)據(jù)庫課程評(píng)價(jià)得分為(1+1+1+1),ERP原理及設(shè)計(jì)課程評(píng)價(jià)得分為(3+1+2+1)。顯然,工程數(shù)據(jù)庫課程應(yīng)該被淘汰,而ERP原理及設(shè)計(jì)課程應(yīng)該被保留。在2010版教學(xué)大綱的修訂過程中,我們依據(jù)軟件工程專業(yè)的特點(diǎn),按照軟件工程專業(yè)的知識(shí)體系,遵守課程評(píng)價(jià)的基本原則,采用該評(píng)價(jià)模型,對(duì)每個(gè)專業(yè)方向和每門課程進(jìn)行客觀而完整的評(píng)價(jià),最終形成軟件工程專業(yè)的課程體系。

4結(jié)語

第6篇

中圖分類號(hào):G642

摘要:分析軟件工程專業(yè)的崗位需求和知識(shí)結(jié)構(gòu),提出適合地方性應(yīng)用型高校的軟件工程專業(yè)核心課程設(shè)置方案和體系結(jié)構(gòu)。關(guān)鍵詞:地方高校;軟件工程;課程體系

0 引言

進(jìn)入21世紀(jì),以互聯(lián)網(wǎng)為核心的網(wǎng)絡(luò)與應(yīng)用得到快速發(fā)展,信息技術(shù)的應(yīng)用模式發(fā)生了巨大變化。在開放、動(dòng)態(tài)、復(fù)雜的網(wǎng)絡(luò)環(huán)境下,靈活、可信、協(xié)同的計(jì)算資源、數(shù)據(jù)資源、軟件資源、服務(wù)資源等各種信息資源的共享和利用、無處不在的普適計(jì)算、主動(dòng)可信的服務(wù)計(jì)算,均對(duì)軟件工程提出了巨大挑戰(zhàn)。

黃淮學(xué)院軟件工程專業(yè)是河南省省級(jí)特色專業(yè),近年來緊緊圍繞培養(yǎng)“就業(yè)能稱職、創(chuàng)業(yè)有能力、深造有基礎(chǔ)、發(fā)展有后勁”的高素質(zhì)技術(shù)技能型人才的目標(biāo)定位,積極推進(jìn)應(yīng)用型人才培養(yǎng)模式改革,緊扣產(chǎn)業(yè)辦專業(yè),牽手企業(yè)促學(xué)業(yè),強(qiáng)化職業(yè)促就業(yè),不斷提升專業(yè)價(jià)值,全面提高應(yīng)用型人才培養(yǎng)質(zhì)量。作為本科層次教育,重視較寬厚的基礎(chǔ)知識(shí)的傳授;作為應(yīng)用型人才的培養(yǎng)定位,重視面向生產(chǎn)、經(jīng)營、管理實(shí)際,面向經(jīng)濟(jì)社會(huì)活動(dòng)實(shí)際,培養(yǎng)運(yùn)用所學(xué)知識(shí)分析問題、解決問題的能力,同時(shí)也要培養(yǎng)學(xué)生適應(yīng)社會(huì)的能力、創(chuàng)業(yè)發(fā)展能力。應(yīng)用型本科院校課程體系的設(shè)計(jì)應(yīng)有其內(nèi)在的規(guī)律與特定的模式?;诖?,筆者以黃淮學(xué)院為例,對(duì)這一問題做如下探討。

1 軟件工程課程體系建設(shè)原則

原則1:構(gòu)建課程體系的重要原則是核心課程體系的構(gòu)建。核心課程體系的構(gòu)建不是計(jì)算機(jī)科學(xué)專業(yè)課程和軟件工程類課程的簡單堆砌,而是對(duì)計(jì)算機(jī)學(xué)科課程進(jìn)行有效的裁減和調(diào)整。對(duì)比軟件工程學(xué)科和計(jì)算機(jī)科學(xué)技術(shù)學(xué)科可以看出,計(jì)算機(jī)科學(xué)的主要目標(biāo)是為解決計(jì)算問題尋找有效的、能產(chǎn)生更好性能的途徑;軟件工程的主要目標(biāo)更注重具體方法和技術(shù)的應(yīng)用,軟件工程除了關(guān)注解決軟件問題的理論、原則、方法和技術(shù),還關(guān)注軟件質(zhì)量、軟件過程、項(xiàng)目管理、團(tuán)隊(duì)合作、與用戶/客戶相關(guān)的問題,研究的對(duì)象是軟件開發(fā)過程中的所有活動(dòng)。軟件工程專業(yè)的培養(yǎng)目標(biāo)是合格的軟件工程師,具有更明確的職業(yè)特性。

原則2:應(yīng)用型本科高校軟件工程專業(yè)不是簡單復(fù)制211或985高校的課程體系,而要根據(jù)培養(yǎng)“就業(yè)能稱職、創(chuàng)業(yè)有能力、深造有基礎(chǔ)、發(fā)展有后勁”的目標(biāo),結(jié)合實(shí)際工作崗位職業(yè)需求,基于傳統(tǒng)本科教育與職業(yè)教育相互滲透的培養(yǎng)理念,在通才與專才之間尋找平衡點(diǎn),專業(yè)知識(shí)體系夠用為主,“軟、硬并重”,以第一課堂為核心,以行業(yè)、企業(yè)和管理服務(wù)崗位對(duì)人才知識(shí)、能力、素質(zhì)的具體要求構(gòu)建課程體系。

原則3:權(quán)衡軟件工程專業(yè)本科畢業(yè)生所應(yīng)具備知識(shí)的深度、廣度和適應(yīng)性。在大學(xué)教育期間,學(xué)生應(yīng)學(xué)習(xí)的知識(shí)大致可以劃分為4個(gè).方面:人文社會(huì)科學(xué)知識(shí),這是做人之根本;數(shù)學(xué)知識(shí),這是軟件工程專業(yè)的底層基礎(chǔ);專業(yè)知識(shí),是軟件工程學(xué)科之特色;相關(guān)領(lǐng)域知識(shí),是學(xué)生就業(yè)之砝碼。知識(shí)是基礎(chǔ),能力是知識(shí)的綜合體現(xiàn)。對(duì)于軟件工程專業(yè)的學(xué)生應(yīng)該著力培養(yǎng)以下能力:專業(yè)必備的開發(fā)、設(shè)計(jì)能力,能終身受用的學(xué)習(xí)能力,培養(yǎng)領(lǐng)導(dǎo)力的處事能力和積累財(cái)富的創(chuàng)新能力。在注重學(xué)科知識(shí)的系統(tǒng)性和嚴(yán)謹(jǐn)性基礎(chǔ)上強(qiáng)調(diào)實(shí)際能力培養(yǎng)的重要性。

2 軟件工程專業(yè)課程體系基本構(gòu)架

黃淮學(xué)院軟件工程專業(yè)知識(shí)體系如圖1所示,該知識(shí)體系以人文外語知識(shí)和科學(xué)基礎(chǔ)知識(shí)為基本,軟件工程專業(yè)基礎(chǔ)知識(shí)為中堅(jiān),軟件工程與軟件管理專業(yè)知識(shí)為塔頂,輔以實(shí)踐和頂崗實(shí)訓(xùn)構(gòu)成軟件工程專業(yè)知識(shí)體系金字塔。

人文與外語知識(shí)包含由教育部統(tǒng)一要求的思想政治類課程、大學(xué)英語、專業(yè)外語以及創(chuàng)新創(chuàng)意和職業(yè)規(guī)劃方面的拓展課程;學(xué)科基礎(chǔ)知識(shí)則涉及數(shù)學(xué)系列課程、電子基礎(chǔ)課程和計(jì)算機(jī)科學(xué)基礎(chǔ)課程;專業(yè)基礎(chǔ)知識(shí)和專業(yè)技能知識(shí)包含程序設(shè)計(jì)基礎(chǔ)、軟件工程和軟件管理等,具體教學(xué)過程中可以涉及部分軟件工具和軟件產(chǎn)品作教學(xué)載體。針對(duì)軟件行業(yè)普遍反映的畢業(yè)生獨(dú)立解決問題能力不強(qiáng)、責(zé)任心差、對(duì)問題進(jìn)行抽象和分析的能力差的問題,設(shè)計(jì)了如圖2所示的實(shí)踐能力漸進(jìn)培養(yǎng)模式,該模式貫穿在課程教學(xué)、實(shí)驗(yàn)、實(shí)訓(xùn)和畢業(yè)設(shè)計(jì)等教學(xué)過程中。

3 軟件工程課程系列的設(shè)計(jì)

黃淮學(xué)院軟件工程專業(yè)的課程體系既考慮了工程性、技術(shù)性、實(shí)用性、系統(tǒng)性、綜合性和復(fù)合型,又注意到強(qiáng)化基礎(chǔ)在有效解決復(fù)雜軟件的構(gòu)造和應(yīng)用方面能起到關(guān)鍵性作用,采取了根據(jù)就業(yè)崗位的能力需求進(jìn)行知識(shí)分解,由課程模塊構(gòu)建系列課程,分階段互動(dòng)式的課程設(shè)置方法。具體安排如圖3所示。

從圖3可以看到基礎(chǔ)知識(shí)教學(xué)階段共2學(xué)年,這樣設(shè)計(jì)是為了強(qiáng)化學(xué)生基礎(chǔ)知識(shí),實(shí)現(xiàn)“基礎(chǔ)扎實(shí)、學(xué)科認(rèn)知和專業(yè)融入”的目標(biāo)。公共基礎(chǔ)系列課程針對(duì)人文與外語知識(shí),學(xué)科基礎(chǔ)理論系列課程的啟動(dòng)從數(shù)學(xué)基礎(chǔ)課程系列和計(jì)算機(jī)導(dǎo)論開始,內(nèi)容貫穿軟件工程所涉及的計(jì)算機(jī)系統(tǒng)、程序設(shè)計(jì)語言、軟件工程、網(wǎng)絡(luò)技術(shù)等專業(yè)基礎(chǔ)知識(shí)的知識(shí)點(diǎn)以及與信息技術(shù)有關(guān)的社會(huì)人文等知識(shí),力求使學(xué)生對(duì)所學(xué)專業(yè)有比較深入的了解,樹立專業(yè)學(xué)習(xí)的責(zé)任感和自豪感。其中包括高級(jí)語言程序設(shè)計(jì)、程序設(shè)計(jì)基礎(chǔ)、數(shù)據(jù)結(jié)構(gòu)和面向?qū)ο蟪绦蛟O(shè)計(jì),旨在引導(dǎo)學(xué)生領(lǐng)會(huì)計(jì)算思維的同時(shí)訓(xùn)練其編程能力;硬件與網(wǎng)絡(luò)系列課程包含數(shù)字邏輯、計(jì)算機(jī)組成原理和計(jì)算機(jī)網(wǎng)絡(luò),軟件工程系列基礎(chǔ)課程包括操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)原理和WEB程序設(shè)計(jì),這樣安排力求達(dá)到“編程、網(wǎng)絡(luò)和應(yīng)用開發(fā)”三位一體的教學(xué)目標(biāo)。

專業(yè)技能教學(xué)階段共設(shè)36周,設(shè)計(jì)思路是強(qiáng)調(diào)對(duì)學(xué)生工程性、技術(shù)性、實(shí)用性、系統(tǒng)性、綜合性和復(fù)合型能力的培養(yǎng),實(shí)現(xiàn)“熟悉軟件工程技能、樹立系統(tǒng)概念和掌握軟件設(shè)計(jì)開發(fā)技術(shù)”3個(gè)目標(biāo)。在這一階段中,綜合考慮主干專業(yè)課程和特色課程的設(shè)置,基于辦學(xué)特色設(shè)置若干動(dòng)態(tài)可擴(kuò)充的課程模塊,全面考慮課程之間的關(guān)聯(lián),強(qiáng)調(diào)統(tǒng)一設(shè)計(jì)、統(tǒng)一規(guī)劃。所有方向以系統(tǒng)分析與建模、軟件工程、軟件測試技術(shù)和嵌入式系統(tǒng)為基礎(chǔ),學(xué)生必須選修WEB程序開發(fā)和嵌入式軟件兩個(gè)專業(yè)方向中的一個(gè)課程模塊,WEB程序開發(fā)方向設(shè)置網(wǎng)站前臺(tái)開發(fā)技術(shù)、數(shù)據(jù)庫應(yīng)用技術(shù)、軟件框架技術(shù)、軟件需求工程和現(xiàn)代軟件開發(fā)技術(shù);嵌入式軟件專業(yè)方向開設(shè)單片機(jī)與接口技術(shù)、嵌入式Linux程序設(shè)計(jì)、移動(dòng)編程技術(shù)、手持設(shè)備軟件開發(fā)和嵌入式系統(tǒng)開發(fā)綜合實(shí)踐,同時(shí)要求至少選修4門任選課以拓展專業(yè)知識(shí)。

工程實(shí)習(xí)教學(xué)階段開設(shè)在第4學(xué)年,設(shè)計(jì)思路是通過具體項(xiàng)目參與真刀真槍的項(xiàng)目訓(xùn)練,通過畢業(yè)設(shè)計(jì)與論文培養(yǎng)總結(jié)概括能力,實(shí)現(xiàn)理論與實(shí)際結(jié)合、技能與職業(yè)素質(zhì)結(jié)合的目標(biāo)。

在軟件工程專業(yè)的課程體系設(shè)計(jì)中還應(yīng)充分考慮課程間的銜接性、系統(tǒng)性和創(chuàng)新能力培養(yǎng)。教學(xué)計(jì)劃中通過設(shè)置10門設(shè)計(jì)類課程,加強(qiáng)課內(nèi)實(shí)踐教學(xué),常設(shè)性的學(xué)生軟件設(shè)計(jì)比賽如ACM競賽和軟件設(shè)計(jì)大賽也被引入教學(xué)過程中。上述思路形成的課程體系更細(xì)化的結(jié)構(gòu)如圖4所示。

4 結(jié)語

一個(gè)好的軟件工程課程體系應(yīng)該在一個(gè)或若干個(gè)應(yīng)用領(lǐng)域方面體現(xiàn)出自己的特色,為了幫助學(xué)生在適當(dāng)?shù)纳疃壬蠈W(xué)習(xí)其他應(yīng)用領(lǐng)域的知識(shí),軟件工程課程體系應(yīng)該安排相應(yīng)的支持課程。軟件工程的應(yīng)用領(lǐng)域如此廣泛,軟件工程課程體系不可能也不應(yīng)該面面俱到。在相關(guān)領(lǐng)導(dǎo)的支持下,黃淮學(xué)院軟件工程專業(yè)建設(shè)已取得了可喜的成果。軟件工程專業(yè)在2010被批準(zhǔn)為河南省特色專業(yè),2012年批準(zhǔn)為河南省專業(yè)綜合改革試點(diǎn)專業(yè),每年畢業(yè)學(xué)生到各大公司進(jìn)行項(xiàng)目實(shí)踐,并推薦部分優(yōu)秀學(xué)生到IBM等業(yè)界著名企業(yè)實(shí)習(xí),獲得各公司的一致好評(píng)。這幾年的實(shí)踐表明,教學(xué)計(jì)劃的設(shè)計(jì)是確保培養(yǎng)目標(biāo)實(shí)現(xiàn)的保障,課程體系的設(shè)計(jì)是合理安排教學(xué)過程的關(guān)鍵。學(xué)院軟件工程專業(yè)的每一位老師在這幾年的教學(xué)改革中付出了辛勤的勞動(dòng),但回首軟件工程專業(yè)取得的進(jìn)步,大家都感到心情舒暢。高等院校的教學(xué)改革是永恒的主題,作為應(yīng)用型本科院校軟件工程專業(yè)的課程體系更應(yīng)與時(shí)俱進(jìn),我們一定會(huì)在現(xiàn)有基礎(chǔ)上進(jìn)一步優(yōu)化軟件工程專業(yè)的課程體系,以期獲得更好的結(jié)果。

參考文獻(xiàn):

[1]楊青,劉洪星.軟件工程學(xué)科的特征及其課程體系設(shè)計(jì)原則[J].武漢理工大學(xué)學(xué)報(bào),2005,27(2):183-186.

[2]曾永衛(wèi),林志剛,楊堯彪.應(yīng)用型本科院校課程體系頂層設(shè)計(jì)的探討[J].湖南工程學(xué)院學(xué)報(bào),2007,17(3):65-67.

[3]祁文青,紀(jì)鵬,馮運(yùn)仿,等.計(jì)算機(jī)類應(yīng)用型本科的人才定位和課程體系[J].黃石理工學(xué)院學(xué)報(bào),2012,28(1):60-63.

第7篇

論文摘要:隨著企業(yè)生產(chǎn)規(guī)模的不斷擴(kuò)大,財(cái)務(wù)管理內(nèi)容越來越多,管理項(xiàng)目越來越復(fù)雜、越細(xì)致,信息使用者所需要的財(cái)務(wù)數(shù)據(jù)信息也更加系統(tǒng)化、數(shù)字化。因此,依靠落后的管理手段已經(jīng)無法滿足客觀實(shí)際的需求,如何改善企業(yè)財(cái)務(wù)管理的工作環(huán)境,提高財(cái)務(wù)管理的水平,在企業(yè)內(nèi)部全面開展會(huì)計(jì)電算化已經(jīng)成為當(dāng)務(wù)之急。在此,就如何實(shí)現(xiàn)企業(yè)會(huì)計(jì)電算化,談幾點(diǎn)看法。

1 建立“企業(yè)ERP系統(tǒng)”

會(huì)計(jì)電算化發(fā)展到今天,已不是單純的會(huì)計(jì)與計(jì)算機(jī)的簡單結(jié)合,而是已經(jīng)發(fā)展成為一門延伸到通信學(xué)、企業(yè)管理學(xué)、市場運(yùn)籌學(xué)等學(xué)科的綜合性學(xué)科;它的推廣應(yīng)用不再是單純的財(cái)務(wù)管理系統(tǒng),而是正朝著企業(yè)資源計(jì)劃管理系統(tǒng)(ERP)方向發(fā)展,甚至發(fā)展成為不同企業(yè)之間跨地區(qū)、跨行業(yè)相互鏈接的大網(wǎng)絡(luò)系統(tǒng)。

通過幾年來在基層從事會(huì)計(jì)電算化工作所積累的經(jīng)驗(yàn),要想實(shí)現(xiàn)真正的財(cái)務(wù)管理現(xiàn)代化,必須在企業(yè)內(nèi)部建立以財(cái)務(wù)為中心的“企業(yè)ERP系統(tǒng)”。通過把企業(yè)內(nèi)部相關(guān)部門的計(jì)算機(jī)連接起來,建立企業(yè)內(nèi)部綜合信息管理網(wǎng)絡(luò)系統(tǒng),在業(yè)務(wù)量比較大的幾個(gè)部門建立獨(dú)立的資源子網(wǎng)。比如:財(cái)務(wù)管理信息子網(wǎng)、物資管理信息子網(wǎng)、生產(chǎn)管理信息子網(wǎng)等。各子網(wǎng)要以財(cái)務(wù)資源子網(wǎng)為中心,通過網(wǎng)間聯(lián)合與財(cái)務(wù)管理局域網(wǎng)相連接,其它部門可采用電信線路用單機(jī)掛接方式或者通過光纜與財(cái)務(wù)管理局域網(wǎng)連接。同時(shí),制定一套“財(cái)務(wù)管理局域網(wǎng)管理規(guī)范”,規(guī)范各資源子網(wǎng)的數(shù)據(jù)結(jié)構(gòu)、操作規(guī)范,安全規(guī)范、職業(yè)道德規(guī)范等一系列管理制度,確?!捌髽I(yè)ERP系統(tǒng)”運(yùn)行暢通無阻,實(shí)現(xiàn)網(wǎng)上信息資源在各部門之間的相互溝通和資源共享。

2 以商品化軟件為契機(jī),開發(fā)更具實(shí)用性的會(huì)計(jì)軟件

目前,我國工業(yè)企業(yè)財(cái)務(wù)部門使用的會(huì)計(jì)軟件,一種是外國公司開發(fā)的經(jīng)過漢化的會(huì)計(jì)軟件,是按照國際會(huì)計(jì)準(zhǔn)則設(shè)計(jì)的,適用于西方資本主義管理體系,而不適用于我國企業(yè)管理模式;另一種是國內(nèi)企業(yè)開發(fā)的商品化會(huì)計(jì)軟件,這種軟件由于受知識(shí)產(chǎn)權(quán)的影響,價(jià)格比較昂貴,而且商品化軟件維護(hù)起來比較麻煩,使用它勢必造成人力和物力的極大浪費(fèi)。當(dāng)然后一種商品化軟件是由各方面專家共同開發(fā)的,軟件比較規(guī)范、功能比較齊全、操作也相對(duì)簡便,而且軟件實(shí)施周期短、見效快,因此,對(duì)于缺乏軟件開發(fā)隊(duì)伍的單位采用商品化軟件是比較明智的。另外,我們還可以在同行業(yè)之間組織力量開發(fā)適用于某行業(yè)的會(huì)計(jì)電算化軟件,實(shí)行集中開發(fā)、集中管理和維護(hù),共同使用,這樣可以節(jié)省大量的資金,而且行業(yè)之間提供的會(huì)計(jì)信息資料共上級(jí)部門可直接進(jìn)行匯總處理,而不必再開發(fā)專用的匯總軟件,這是我們開展會(huì)計(jì)電算化工作既經(jīng)濟(jì)又適用的捷徑。

充分利用計(jì)算機(jī)技術(shù)和財(cái)務(wù)會(huì)計(jì)知識(shí),建立一套科學(xué)的財(cái)會(huì)綜合管理體系和會(huì)計(jì)電算化軟件發(fā)展規(guī)劃,采用在行業(yè)內(nèi)部或同行業(yè)之間選拔優(yōu)秀的計(jì)算機(jī)人才,建立行業(yè)計(jì)算機(jī)技術(shù)開發(fā)公關(guān)小組,開發(fā)適合行業(yè)內(nèi)部管理需要的會(huì)計(jì)電算化軟件,在企業(yè)各財(cái)會(huì)部門推廣應(yīng)用。達(dá)到集中開發(fā)共同使用的目的,縮短軟件開發(fā)應(yīng)用的周期,同時(shí)在應(yīng)用管理上也可縱觀全局,從長遠(yuǎn)利益出發(fā),制定一套完整的會(huì)計(jì)電算化工作的長遠(yuǎn)發(fā)展規(guī)劃。走出僅限于統(tǒng)計(jì)報(bào)表管理和數(shù)據(jù)存儲(chǔ)管理的初級(jí)探索階段,向大規(guī)模數(shù)值計(jì)算的專用軟件、面向問題和過程分析及判斷推理的高層次軟件綜合開發(fā)階段邁進(jìn)。由單機(jī)單用戶、聯(lián)機(jī)終端網(wǎng)絡(luò)向標(biāo)準(zhǔn)化網(wǎng)絡(luò)體系結(jié)構(gòu)發(fā)展,充分利用計(jì)算機(jī)的網(wǎng)絡(luò)結(jié)構(gòu),更大程度地共享計(jì)算機(jī)的硬件、軟件及數(shù)據(jù)資源,建立一套完善的計(jì)算機(jī)輔助管理專家系統(tǒng)和智能系統(tǒng),使計(jì)算機(jī)在財(cái)務(wù)管理工作中的應(yīng)用向更廣泛更深層次發(fā)展。為企業(yè)領(lǐng)導(dǎo)和決策者提供準(zhǔn)確可靠的信息情報(bào),編制出合理的企業(yè)生產(chǎn)經(jīng)營計(jì)劃報(bào)表及財(cái)務(wù)報(bào)表。有效地控制企業(yè)生產(chǎn)經(jīng)營中的資源浪費(fèi),加快資金流通,降低資金占用消耗和產(chǎn)品生產(chǎn)成本,提高企業(yè)經(jīng)濟(jì)效益。開創(chuàng)以商品化軟件為契機(jī),以自己的軟件開發(fā)隊(duì)伍為中心,實(shí)現(xiàn)企業(yè)自己的智能化信息與專家系統(tǒng)的會(huì)計(jì)電算化發(fā)展新路子。

3 搞好計(jì)算機(jī)技術(shù)培訓(xùn)工作,走“全員化管理”的道路

會(huì)計(jì)電算化工作的關(guān)鍵是應(yīng)用,特別是從事具體管理工作的人員,他們的會(huì)計(jì)電算化水平?jīng)Q定本企業(yè)會(huì)計(jì)電算化管理的水平,他們中有多少人會(huì)使用計(jì)算機(jī),能夠利用計(jì)算機(jī)進(jìn)行輔助管理工作,甚至有多少人會(huì)進(jìn)行簡單的計(jì)算機(jī)軟件編程工作都對(duì)會(huì)計(jì)電算化的順利實(shí)施起著至關(guān)重要的作用。所以說會(huì)計(jì)電算化工作要得到全面的發(fā)展,必須走全員化管理的道路。

全員管理就是動(dòng)員企業(yè)內(nèi)部從事各項(xiàng)管理工作的工程師、會(huì)計(jì)師、管理師、統(tǒng)計(jì)師、會(huì)計(jì)員、技術(shù)員及一般管理人員等在搞好本職工作的同肘,協(xié)同從事計(jì)算機(jī)程序設(shè)計(jì)的人員一起研究學(xué)習(xí)計(jì)算機(jī)技術(shù)基礎(chǔ)知識(shí)和其它管理科學(xué)的知識(shí),應(yīng)用計(jì)算機(jī)去從事各項(xiàng)管理工作。把計(jì)算機(jī)同現(xiàn)代化的管理科學(xué)融合在一起,培養(yǎng)出大批能從事多種工作的復(fù)合型人才,形成一個(gè)企業(yè)內(nèi)部全體上下相互協(xié)作,同心協(xié)力的全員學(xué)電腦、用電腦的局面,讓更多的人去學(xué)習(xí)計(jì)算機(jī)知識(shí),用學(xué)到的知識(shí)去為管理服務(wù),提高管理工作的水平和質(zhì)量。

第8篇

關(guān)鍵詞:嵌入式系統(tǒng);課程體系;實(shí)踐教學(xué)

隨著嵌入式系統(tǒng)在工業(yè)生產(chǎn)和社會(huì)生活中的廣泛應(yīng)用,嵌入式系統(tǒng)技術(shù)越來越得到國內(nèi)各大高校的重視。嵌入式系統(tǒng)涉及的知識(shí)面廣、技術(shù)新、難度大,相關(guān)的技術(shù)資料少,并且仍然在快速發(fā)展中,這使得教學(xué)面臨較多的困難[1-2]。因此,如何有效地進(jìn)行教學(xué),在相對(duì)緊張的學(xué)時(shí)內(nèi)使學(xué)生掌握更多的嵌入式系統(tǒng)知識(shí),成為許多高校開設(shè)“嵌入式系統(tǒng)”課程要首先解決的問題[3]。

本文結(jié)合作者幾年來的“嵌入式系統(tǒng)”本科教學(xué)實(shí)踐,提出和總結(jié)了教學(xué)工作中的一些思路和體會(huì),主要有以下一些經(jīng)驗(yàn)。

1主要課程體系的設(shè)置

嵌入式系統(tǒng)作為后PC時(shí)代的核心,所涉及的知識(shí)非常廣泛,既有計(jì)算機(jī)底層硬件的知識(shí),又包含操作系統(tǒng)、應(yīng)用程序、特定領(lǐng)域的知識(shí)等,建立良好的課程體系,對(duì)學(xué)習(xí)者非常重要。

從狹義上講,嵌入式系統(tǒng)知識(shí)可分為兩大類,一是針對(duì)將來只是應(yīng)用嵌入式系統(tǒng)硬件、軟件平臺(tái)來進(jìn)行二次開發(fā)的學(xué)生,應(yīng)側(cè)重學(xué)習(xí)特定軟硬件平臺(tái)的應(yīng)用系統(tǒng)設(shè)計(jì)和開發(fā);二是針對(duì)將來從事嵌入式系統(tǒng)軟硬件平臺(tái)設(shè)計(jì)的學(xué)生,需要重點(diǎn)學(xué)習(xí)嵌入式系統(tǒng)體系結(jié)構(gòu)及接口設(shè)計(jì)原理[4]。綜合上述嵌入式系統(tǒng)的知識(shí)特點(diǎn)并結(jié)合目前教學(xué)的實(shí)際,把嵌入式系統(tǒng)教學(xué)分為三個(gè)層次:

(1) 學(xué)習(xí)嵌入式操作系統(tǒng),主要掌握特定嵌入式操作系統(tǒng)的基本工作原理、特點(diǎn)及應(yīng)用。這是學(xué)習(xí)嵌入式系統(tǒng)的基礎(chǔ),主要為基于操作系統(tǒng)的軟硬件開發(fā)做準(zhǔn)備。

(2) 學(xué)習(xí)嵌入式系統(tǒng)硬件,主要掌握特定嵌入式CPU的體系結(jié)構(gòu)及其相關(guān)的接口電路的工作原理、特點(diǎn),并學(xué)習(xí)無操作系統(tǒng)下的編程技術(shù)。使學(xué)生深入理解底層硬件的工作機(jī)制及控制技術(shù),為頂層開發(fā)作準(zhǔn)備。

(3) 學(xué)習(xí)嵌入式軟件開發(fā),在具備了操作系統(tǒng)及相應(yīng)硬件知識(shí)的基礎(chǔ)上,學(xué)習(xí)基于操作系統(tǒng)之上的驅(qū)動(dòng)程序及應(yīng)用軟件的開發(fā)。

在這三個(gè)層次中,前兩個(gè)層次是基礎(chǔ),第三層次是目的,只有掌握好嵌入式操作系統(tǒng)及相關(guān)硬件機(jī)制,才能更好地進(jìn)行嵌入式軟件開發(fā)工作。建議開課的具體時(shí)間及學(xué)時(shí)如表1所示。

在表1中,特別加重了實(shí)驗(yàn)教學(xué)學(xué)時(shí),因?yàn)榍度胧较到y(tǒng)課程體系要求較強(qiáng)的實(shí)踐性,讓學(xué)生多動(dòng)手實(shí)踐對(duì)提高教學(xué)質(zhì)量很有幫助。

2教學(xué)內(nèi)容的選擇

2.1軟硬件平臺(tái)選擇

由于嵌入式系統(tǒng)技術(shù)在國內(nèi)出現(xiàn)時(shí)間不長,并且處于快速發(fā)展階段,新技術(shù)和應(yīng)用成果不斷涌現(xiàn),這給軟硬件平臺(tái)的選擇帶來了一定的困難。而且不同的選擇直接導(dǎo)致嵌入式軟件開發(fā)的技術(shù)差異,對(duì)教學(xué)及學(xué)生將來應(yīng)用的影響很大,需要仔細(xì)分析、認(rèn)真選擇。

選擇的基本原則是應(yīng)用廣泛或未來有發(fā)展?jié)摿Φ那度胧郊夹g(shù)。根據(jù)目前嵌入式系統(tǒng)在國內(nèi)外發(fā)展的現(xiàn)狀,ARM微處理器以其體積小、功耗低、成本低、性能高和應(yīng)用廣泛成為目前嵌入式系統(tǒng)硬件的首選。而操作系統(tǒng)的選擇則比較困難,既有出現(xiàn)時(shí)間較長,市場占有率很高的系統(tǒng),如VxWorks等,也有出現(xiàn)較晚但很有發(fā)展?jié)摿Φ南到y(tǒng),如Windows CE、嵌入式Linux、μC/OS-II等,各種不同的嵌入式系統(tǒng)均有各自的特點(diǎn),像VxWorks經(jīng)過多年的發(fā)展,市場占有率高,非常穩(wěn)定但價(jià)格昂貴;Windows CE由微軟公司開發(fā),技術(shù)力量雄厚且容易為大多數(shù)開發(fā)人員接受;嵌入式Linux開源穩(wěn)定且免費(fèi),受到很多企業(yè)的推崇;而μC/OS-II結(jié)構(gòu)緊湊小巧,適合教學(xué)。

根據(jù)選型原則,嵌入式Linux在很多企業(yè)得到了應(yīng)用,并且它的免費(fèi)特點(diǎn)會(huì)有助于未來應(yīng)用的擴(kuò)大,因此選擇學(xué)習(xí)嵌入式Linux有利于增強(qiáng)學(xué)生的競爭力。

2.2課程內(nèi)容選擇

精心選擇授課內(nèi)容,組織好授課知識(shí)體系并詳略得當(dāng),略去一些繁雜深?yuàn)W的細(xì)節(jié),而把授課內(nèi)容集中在需要重點(diǎn)學(xué)習(xí)的知識(shí)點(diǎn)上,對(duì)本科學(xué)生接受相關(guān)內(nèi)容幫助很大。針對(duì)我們的課程體系,各門課程主要講授內(nèi)容如下。

(1)Linux操作系統(tǒng):本門課程主要是以普及Linux操作系統(tǒng)基礎(chǔ)知識(shí)為主,使得學(xué)生掌握其工作的基本原理、組織結(jié)構(gòu)、配置方式等,學(xué)會(huì)Linux操作系統(tǒng)的基本操作及常用軟件的應(yīng)用。為開發(fā)基于嵌入式Linux操作系統(tǒng)的軟件打好基礎(chǔ)。

(2) 嵌入式系統(tǒng)原理:本門課程主要學(xué)習(xí)嵌入式系統(tǒng)的基礎(chǔ)知識(shí),介紹基于ARM微處理器的軟硬件開發(fā)環(huán)境,并學(xué)習(xí)無操作系統(tǒng)的硬件編程技術(shù)。重點(diǎn)學(xué)習(xí)內(nèi)容包括三個(gè)方面:一是ARM處理器的組織結(jié)構(gòu)及特點(diǎn),使學(xué)生對(duì)ARM處理器的整體結(jié)構(gòu)有較好的理解,為學(xué)習(xí)其接口技術(shù)做好準(zhǔn)備;二是ADS開發(fā)環(huán)境,掌握ADS的基本操作流程、相關(guān)的配置、理解交叉編譯連接等概念;三是ARM處理器的接口技術(shù),這是學(xué)習(xí)本門課的重點(diǎn),不僅要掌握各種接口的工作原理、工作流程及配置方法,還要求能夠利用C語言對(duì)其進(jìn)行編程控制。

(3) 嵌入式軟件開發(fā):本門課程以嵌入式Linux作為軟件開發(fā)平臺(tái),在基于ARM處理器上完成軟件開發(fā)工作。授課重點(diǎn)主要包括:一是Linux操作系統(tǒng)的深入學(xué)習(xí),包括Linux系統(tǒng)的工作機(jī)理、系統(tǒng)裁減移植及其系統(tǒng)的開發(fā)環(huán)境等;二是嵌入式Linux下的驅(qū)動(dòng)程序開發(fā),包括Linux設(shè)備驅(qū)動(dòng)的工作原理、開發(fā)流程,常用設(shè)備驅(qū)動(dòng)程序編寫方法;三是圖形界面的設(shè)計(jì),主要介紹基于QT的圖形界面開發(fā)方法。

3教學(xué)方法的運(yùn)用

教學(xué)方法的有效運(yùn)用對(duì)提高教學(xué)效果的作用是不言而喻的,如何在“嵌入式系統(tǒng)”教學(xué)中采用合適的教學(xué)方法,提高教學(xué)的質(zhì)量,使學(xué)生能夠從教學(xué)中得到最大的收獲,對(duì)教學(xué)的成敗至關(guān)重要。評(píng)判有效的教學(xué)方法的標(biāo)準(zhǔn)是看是否能增加學(xué)生的學(xué)習(xí)熱情,能否變被動(dòng)學(xué)習(xí)為主動(dòng)學(xué)習(xí)。

3.1注重基礎(chǔ),重點(diǎn)突出

“嵌入式系統(tǒng)設(shè)計(jì)”是一門綜合性的課程,涉及的知識(shí)面比較廣泛,例如既有計(jì)算機(jī)學(xué)科的計(jì)算機(jī)體系結(jié)構(gòu)、操作系統(tǒng)、程序設(shè)計(jì)等知識(shí),也有電子學(xué)科的電子技術(shù)、微機(jī)原理等知識(shí)。因此,在課堂內(nèi)容組織上,要分清主次,明確哪些知識(shí)僅需了解,那些知識(shí)需要重點(diǎn)掌握,并根據(jù)重要程度有計(jì)劃地組織教學(xué)內(nèi)容和學(xué)時(shí),使得整個(gè)教學(xué)體系層次清楚,詳略得當(dāng),為學(xué)生順利接受提供保障。

例如在規(guī)劃的教學(xué)體系中,硬件方面重點(diǎn)是接口技術(shù)、要求學(xué)生掌握各種接口的工作原理及其編程方法,軟件方面重點(diǎn)是基于嵌入式操作系統(tǒng)的驅(qū)動(dòng)程序設(shè)計(jì)及應(yīng)用程序開發(fā),而對(duì)于比較復(fù)雜的操作系統(tǒng)的內(nèi)部工作原理分析、操作系統(tǒng)移植、BootLoader等僅作原理性介紹。

3.2以實(shí)踐教學(xué)帶動(dòng)理論教學(xué)

通常理論教學(xué)比較抽象枯燥,學(xué)生接受大量的理論知識(shí)比較困難,為了提高理論教學(xué)的效果,為課程配備了較多的實(shí)驗(yàn)課時(shí),每當(dāng)在課堂上學(xué)習(xí)完成一部分理論知識(shí),即安排相應(yīng)的實(shí)驗(yàn),由學(xué)生親自動(dòng)手驗(yàn)證理論知識(shí)的正確性并加深對(duì)理論知識(shí)的理解,這樣把較抽象的理論具體化形象化,學(xué)生接受起來相對(duì)容易,提高了理論知識(shí)的學(xué)習(xí)效果。

3.3興趣創(chuàng)新的培養(yǎng)

興趣及創(chuàng)新能力的培養(yǎng)需要以應(yīng)用為驅(qū)動(dòng)力。學(xué)生對(duì)把所學(xué)理論如何應(yīng)用到實(shí)際應(yīng)用中非常感興趣,以此為切入點(diǎn),在理論教學(xué)時(shí),把實(shí)際產(chǎn)品經(jīng)簡化后引入課堂,介紹所學(xué)理論知識(shí)在具體產(chǎn)品中的應(yīng)用方式、方法,并進(jìn)一步指出理論或產(chǎn)品的優(yōu)缺點(diǎn),改進(jìn)方向等,為學(xué)生進(jìn)一步學(xué)習(xí)指明方向,從而激發(fā)學(xué)生求知欲及創(chuàng)新的潛能。如在實(shí)際的教學(xué)中,介紹mp3產(chǎn)品的工作機(jī)理及軟硬件設(shè)計(jì)方法,學(xué)生對(duì)此興趣非常高,教學(xué)效果明顯。

4實(shí)驗(yàn)教學(xué)的設(shè)計(jì)

嵌入式系統(tǒng)是面向應(yīng)用的,實(shí)踐是整個(gè)嵌入式系統(tǒng)課程體系中非常重要的環(huán)節(jié)。也是加深對(duì)嵌入式系統(tǒng)知識(shí)理解,培養(yǎng)興趣及創(chuàng)新能力的必經(jīng)途徑。

我院購買了基于ARM9的實(shí)驗(yàn)教學(xué)平臺(tái),該平臺(tái)擁有大量的接口設(shè)備并配備了嵌入式Linux操作系統(tǒng),為學(xué)生學(xué)習(xí)ARM底層編程技術(shù)、嵌入式Linux操作系統(tǒng)及其上的軟件開發(fā)提供了保障,

根據(jù)學(xué)生的能力特點(diǎn),我們把實(shí)驗(yàn)課程分為三個(gè)層次,便于不同類型的學(xué)生選擇。

(1) 基礎(chǔ)性實(shí)驗(yàn):本類實(shí)驗(yàn)主要是相關(guān)課程中最基本的實(shí)驗(yàn),要求所有學(xué)生必須掌握。如在“嵌入式系統(tǒng)原理”課程中,需掌握ADS開發(fā)環(huán)境、通用端口、中斷、DMA、UART等;在“嵌入式軟件開發(fā)”課程中,需掌握Linux實(shí)驗(yàn)環(huán)境搭建、各種基本驅(qū)動(dòng)程序設(shè)計(jì)、簡單應(yīng)用程序設(shè)計(jì)等。

(2) 綜合性實(shí)驗(yàn):是在前面基礎(chǔ)性實(shí)驗(yàn)的基礎(chǔ)上,綜合整個(gè)課程的知識(shí),盡可能利用實(shí)驗(yàn)系統(tǒng)上的硬件資源,構(gòu)造一個(gè)具有實(shí)際意義的嵌入式系統(tǒng),綜合性實(shí)驗(yàn)提供多個(gè)題目,要求學(xué)生選做。如在“嵌入式系統(tǒng)原理”課程中,可以實(shí)現(xiàn)無操作系統(tǒng)下的音頻錄放、俄羅斯方塊等程序設(shè)計(jì);在“嵌入式軟件開發(fā)”課程中也可以實(shí)現(xiàn)基于操作系統(tǒng)的類似程序設(shè)計(jì)。

(3) 設(shè)計(jì)性實(shí)驗(yàn):設(shè)計(jì)性實(shí)驗(yàn)主要提供給學(xué)習(xí)能力較強(qiáng)并對(duì)嵌入式系統(tǒng)感興趣的學(xué)生,本實(shí)驗(yàn)主要在計(jì)劃外學(xué)時(shí)進(jìn)行,由學(xué)生自主提出課題或通過其他方式選擇課題,教師適當(dāng)指導(dǎo)并利用實(shí)驗(yàn)室對(duì)外開放時(shí)間進(jìn)行。如通過國家大學(xué)生創(chuàng)新性實(shí)驗(yàn)計(jì)劃,設(shè)立了“智能生命救助儀研究”課題供學(xué)生進(jìn)行實(shí)驗(yàn)。通過完成該實(shí)驗(yàn),提高了學(xué)生研究能力和實(shí)際動(dòng)手能力,使學(xué)生進(jìn)一步理解了不同課程之間知識(shí)的有機(jī)聯(lián)系并深入體會(huì)了嵌入式系統(tǒng)面向應(yīng)用的含義。

5結(jié)語

嵌入式系統(tǒng)應(yīng)用的廣闊前景和未來發(fā)展的巨大潛力已得到了全社會(huì)的共識(shí),作為培養(yǎng)高級(jí)人才的大學(xué),要想又快又好地培養(yǎng)出大批嵌入式系統(tǒng)方面的優(yōu)秀人才,就需要從嵌入式系統(tǒng)課程體系的設(shè)置、課程內(nèi)容的選擇、教學(xué)方法的運(yùn)用及實(shí)驗(yàn)課程的設(shè)計(jì)等方面精心研究及組織,其最終目的是提高嵌入式系統(tǒng)的教學(xué)質(zhì)量,培養(yǎng)學(xué)生對(duì)嵌入式系統(tǒng)的學(xué)習(xí)興趣,激發(fā)學(xué)生自主創(chuàng)新能力,為我國嵌入式系統(tǒng)領(lǐng)域發(fā)展提供優(yōu)秀的人才保障。

參考文獻(xiàn):

[1] 凌明,劉昊,時(shí)龍興. 關(guān)于嵌入式系統(tǒng)課程教學(xué)過程中幾個(gè)問題的思考[J]. 電氣電子教學(xué)學(xué)報(bào),2007(增刊1):94-98.

[2] 孫士明,劉新平,鄭秋梅,等. 計(jì)算機(jī)專業(yè)嵌入式系統(tǒng)實(shí)踐教學(xué)體系探索[J]. 實(shí)驗(yàn)室研究與探索,2009(5):122-125.

[3] 江敏,錢平,單片機(jī)教學(xué)向嵌入式教學(xué)轉(zhuǎn)型的幾點(diǎn)研究[J]. 電氣電子教學(xué)學(xué)報(bào),2005(2):33-34.

[4] 符意德. 嵌入式系統(tǒng)設(shè)計(jì)原理及應(yīng)用[M]. 北京:清華大學(xué)出版社,2004.

Exploration of Embedded System Teaching System and Mode

LI Jun,YUAN Man,LIU Yan-jun

(College of Computer and Information Technology, Daqing Petroleum Institute, Daqing 163318, China)

第9篇

關(guān)鍵詞:嵌入式軟件開發(fā);C語言;課程改革

0.引言

C語言程序設(shè)計(jì)作為程序設(shè)計(jì)語言的入門基礎(chǔ)課程,是各高校理工科專業(yè)中計(jì)算機(jī)程序設(shè)計(jì)類課程的普遍選擇。作為一門理工科通識(shí)課程,其目的在于使學(xué)生通過對(duì)C語言中各種語言成分的學(xué)習(xí),初步認(rèn)識(shí)計(jì)算機(jī)程序設(shè)計(jì)及進(jìn)行程序設(shè)計(jì)的過程,掌握基本的程序設(shè)計(jì)思想與方法。作為通識(shí)類課程,目前各院校通常將該門課程的教學(xué)安排在一年級(jí),每周3-4學(xué)時(shí)(含實(shí)驗(yàn)),講授內(nèi)容主要包含C語言的數(shù)據(jù)類型與表達(dá)式、程序結(jié)構(gòu)、函數(shù)、指針、鏈表、文件等。在教學(xué)實(shí)踐中,我們發(fā)現(xiàn),由于學(xué)時(shí)限制或?qū)W生接受程度等原因,常常需要對(duì)部分教學(xué)內(nèi)容(如多級(jí)指針、文件操作、位操作等)進(jìn)行削減,無形中降低了課程內(nèi)容的深度與廣度。作為通識(shí)類課程,這樣的削減影響不太大。而對(duì)于信息類專業(yè)(計(jì)算機(jī)、電子、自動(dòng)化等)而言,僅掌握通識(shí)教育中所講授的部分是遠(yuǎn)遠(yuǎn)不夠的。

嵌入式系統(tǒng)開發(fā)是信息類專業(yè)的一個(gè)主要發(fā)展方向。進(jìn)入21世紀(jì)以來,融合先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)、電子技術(shù)及各行業(yè)領(lǐng)域具體應(yīng)用的嵌入式系統(tǒng),已在工業(yè)控制、交通管理、信息家電、智能家居、環(huán)境監(jiān)測、電子商務(wù)、機(jī)器人等領(lǐng)域得到了廣泛應(yīng)用。

一般說來,嵌入式系統(tǒng)是指以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可剪裁,適用于心用領(lǐng)域,對(duì)功能、可靠性、成本、體積、功耗等有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。由于在成本、功耗、體積等方面的限制,對(duì)嵌入式系統(tǒng)中的軟件開發(fā)提出了更高的要求。嵌入式軟件開發(fā)是在特定的硬件平臺(tái)上進(jìn)行,需要使用具有較強(qiáng)硬件操作能力的編程語言。由于C語言是具備了這一特質(zhì)的高級(jí)語言,成為嵌入式系統(tǒng)開發(fā)的最佳選擇。

調(diào)查顯示,在信息類專業(yè)中,電子類本科專業(yè)教學(xué)計(jì)劃與嵌入式系統(tǒng)教學(xué)要求相脫節(jié),電子類本科學(xué)生的軟件基礎(chǔ)也較弱。在這樣的背景下,對(duì)C語言程序設(shè)計(jì)課程進(jìn)行相應(yīng)改革,以適應(yīng)嵌入式系統(tǒng)開發(fā)人才培養(yǎng)的需要是十分必要的。

1.嵌入式軟件開發(fā)對(duì)C語言的需求

在適用于嵌入式系統(tǒng)開發(fā)的3類主要語言中,C語言占有超過70%的份額。開發(fā)嵌入式軟件,除掌握C語言的基礎(chǔ)知識(shí)和基本技能外,主要還存在以下幾方面的要求:

1)指針。

指針作為C語言的主要特點(diǎn),其使用十分靈活,因而也很難完全掌握。它可用于指向不同類型的普通變量、數(shù)組、字符串,甚至函數(shù)。在嵌入式軟件開發(fā)中對(duì)各類不同指針(數(shù)組指針、指針數(shù)組、指向結(jié)構(gòu)體的指針、多級(jí)指針)的使用十分普遍。因此,指針相關(guān)內(nèi)容的教學(xué)必須足夠深入。

2)位操作。

C語言有別于其他高級(jí)語言的一個(gè)特點(diǎn)是可直接對(duì)硬件進(jìn)行操作。指針和位操作是這一特點(diǎn)得以實(shí)現(xiàn)的工具。通過6種位操作符,可直接對(duì)內(nèi)存、寄存器或I/O端口的字節(jié)進(jìn)行測試、置換或移位處理。熟練掌握位操作符的使用,是進(jìn)行嵌入式軟件開發(fā)必不可少的重要基礎(chǔ)。在一些國內(nèi)高校普遍選用的經(jīng)典C語言教材(如文獻(xiàn)[4])中,由于定位于普適教育,并未包含位操作部分的內(nèi)容。

3)文件讀寫。

嵌入式系統(tǒng)中“一切皆文件”,系統(tǒng)的運(yùn)行以文件讀/寫方式進(jìn)行操作。理解文件系統(tǒng)的構(gòu)成、掌握基本的文件操作方法也是進(jìn)行嵌入式軟件開發(fā)必須掌握的技能。

4)宏定義。

在嵌入式軟件中使用宏定義,不僅可防止代碼出錯(cuò),提高可移植性、可讀性,而且是產(chǎn)生內(nèi)嵌代碼的唯一方法,可用于替代函數(shù)調(diào)用,從而達(dá)到嵌入式系統(tǒng)性能要求。

以上4個(gè)方面的內(nèi)容,在通識(shí)型的C語言課程中,由于課時(shí)和學(xué)生程度等原因,都不能進(jìn)行針對(duì)性的特別訓(xùn)練。學(xué)生在進(jìn)入嵌入式系統(tǒng)開發(fā)階段后,顯然會(huì)成為程序設(shè)計(jì)知識(shí)方面的短板。

2.課程改革思路

基于上一節(jié)的認(rèn)識(shí),我們對(duì)C語言程序設(shè)計(jì)課程的教學(xué)提出了下面的調(diào)整思路。

2.1課程設(shè)置

作為通識(shí)課程的C語言程序設(shè)計(jì)通常安排在一年級(jí)或二年級(jí)上學(xué)期完成。信息類專業(yè)的學(xué)生在大學(xué)三年級(jí)開始進(jìn)入嵌入式系統(tǒng)開發(fā)相關(guān)課程時(shí),不可避免地對(duì)已學(xué)過的C語言的知識(shí)會(huì)有一定程度的遺忘。

針對(duì)嵌入式系統(tǒng)開發(fā)的要求,考慮將C語言程序設(shè)計(jì)課程劃分為2個(gè)階段。第1階段為c語言程序設(shè)計(jì)基礎(chǔ),每周3學(xué)時(shí),可在大學(xué)一年級(jí)下學(xué)期或二年級(jí)上學(xué)期開設(shè);第2階段為嵌入式系統(tǒng)C語言程序設(shè)計(jì),每周2學(xué)時(shí),作為嵌入式系統(tǒng)開發(fā)方向的選修課,可在大學(xué)三年級(jí)上與其他嵌入式系統(tǒng)相關(guān)課程,如嵌入式系統(tǒng)、嵌入式操作系統(tǒng)一起開設(shè)。這樣設(shè)置一方面滿足了在低年級(jí)完成程序設(shè)計(jì)類通識(shí)課程的要求,使學(xué)生不必過早接觸C語言中較為深入、復(fù)雜的部分;另一方面,通過將與嵌入式軟件開發(fā)密切相關(guān)的知識(shí)適當(dāng)推后,確保了嵌入式系統(tǒng)開發(fā)各門課程問的知識(shí)聯(lián)系。

2.2教學(xué)內(nèi)容的劃分

由于將課程劃分為基礎(chǔ)部分和面向嵌入式系統(tǒng)開發(fā)的提高部分,則可將C語言的一般基礎(chǔ)(基本語句、控制結(jié)構(gòu)、數(shù)組、函數(shù)、指針、結(jié)構(gòu)體)劃人C語言程序設(shè)計(jì)基礎(chǔ)課程中,通過這部分的學(xué)習(xí)使學(xué)生掌握C語言的基本理論知識(shí)并具備基本的編程技能,達(dá)到程序設(shè)計(jì)類課程的通識(shí)教育水平。

對(duì)于與嵌入式開發(fā)密切相關(guān)的知識(shí),將在嵌入式系統(tǒng)C語言程序設(shè)計(jì)課程中講授,主要包括:宏定義、位操作、文件操作和復(fù)雜指針運(yùn)用。這部分內(nèi)容的教學(xué)可圍繞嵌入式軟件開發(fā)實(shí)例展開,深入講解各知識(shí)點(diǎn)的應(yīng)用。通過嵌入式系統(tǒng)C語言程序設(shè)計(jì)課程的學(xué)習(xí),學(xué)生應(yīng)更深入地理解和領(lǐng)會(huì)C語言的精華思想,同時(shí)具備基于嵌入式平臺(tái)進(jìn)行軟件開發(fā)的能力。

2.3實(shí)驗(yàn)內(nèi)容

任何程序設(shè)計(jì)語言的學(xué)習(xí)都離不開大量的實(shí)踐,實(shí)驗(yàn)是學(xué)習(xí)C語言的重要組成部分。根據(jù)前面對(duì)課程的劃分,C語言程序設(shè)計(jì)基礎(chǔ)課程中可開設(shè)的實(shí)驗(yàn)項(xiàng)目如表1所示。

實(shí)驗(yàn)1在學(xué)習(xí)了C語言的數(shù)據(jù)類型、運(yùn)算符、表達(dá)式和輸入/輸出之后進(jìn)行,目的在于使學(xué)生熟悉C語言的編譯環(huán)境,逐步認(rèn)識(shí)C語言語句的基本構(gòu)成。實(shí)驗(yàn)2涵蓋了程序的3種基本結(jié)構(gòu),便于學(xué)生統(tǒng)一認(rèn)識(shí)關(guān)系、邏輯運(yùn)算和程序結(jié)構(gòu)。實(shí)驗(yàn)3-6分別對(duì)應(yīng)于數(shù)組、函數(shù)、指針和結(jié)構(gòu)體各章節(jié)的內(nèi)容,重點(diǎn)掌握這些語言成分的定義及使用方法。實(shí)驗(yàn)7將綜合運(yùn)用本課程中的知識(shí),完成一個(gè)較小的、具備一定功能的小型軟件的開發(fā)。

嵌入式系統(tǒng)C語言程序設(shè)計(jì)課程的實(shí)驗(yàn)內(nèi)容則圍繞一個(gè)嵌入式軟件開發(fā)實(shí)例展開,實(shí)例由任課教師選定。根據(jù)所選實(shí)例,實(shí)驗(yàn)內(nèi)容可包含以下項(xiàng)目(如表2所示)。

實(shí)驗(yàn)1的目的在于使學(xué)生熟悉嵌入式系統(tǒng)的軟件開發(fā)環(huán)境,主要介紹嵌入式Linux下的c語言編譯工具。實(shí)驗(yàn)2-5則根據(jù)所選實(shí)例,選取特定的模塊有針對(duì)性地進(jìn)行文件操作、宏定義、位運(yùn)算及復(fù)雜指針運(yùn)用方面的練習(xí)。

2.4教學(xué)方法與手段的調(diào)整

毋庸諱言,由于種種因素的影響,當(dāng)前各高校中普遍存在學(xué)風(fēng)怠惰現(xiàn)象,相當(dāng)一部分學(xué)生學(xué)習(xí)積極性較低下。如何提升學(xué)生對(duì)所學(xué)課程的興趣,是每一名教師都要面對(duì)的問題。在多年的C語言程序設(shè)計(jì)課程教學(xué)過程中,我們接到學(xué)生的反饋意見最多的是“上課聽得懂,下來不會(huì)自己編程”。究其原因,大概不外乎兩種:一是學(xué)生盡管在課堂上聽了課,課下并未及時(shí)回顧整理并主動(dòng)思考;二是在理論課堂上一講到底,學(xué)生要等到實(shí)驗(yàn)課時(shí)才真正動(dòng)手體會(huì)講過的知識(shí),往往不能及時(shí)動(dòng)手練習(xí),進(jìn)而影響消化吸收。針對(duì)第一種情況,我們采取了每一堂課以提問開始的方式,提問內(nèi)容主要是對(duì)之前所學(xué)內(nèi)容的回顧和脈絡(luò)梳理,同時(shí)還留出了一定的課堂練習(xí)時(shí)間,這樣能在一定程度上起到督促學(xué)生課下及時(shí)復(fù)習(xí)的作用,也便于教師及時(shí)了解學(xué)生的知識(shí)掌握情況。而對(duì)于第二種原因,可嘗試采取將理論課堂搬至機(jī)房的方式,在完成一個(gè)知識(shí)點(diǎn)的講授后布置即時(shí)練習(xí),讓學(xué)生能及時(shí)體驗(yàn)和理解。但當(dāng)機(jī)房容量有限而班級(jí)較大時(shí),并不適用,這樣的情形如何處理?需要我們進(jìn)一步思考。

相關(guān)期刊