劉安豐 趙 輝 趙 巖 利彥軍 張倚榕 廖夢君
文章編號:1672-5913(2009)10-0143-03
摘要:本文針對目前中國計算機專業(yè)本科教育中生產(chǎn)實習受客觀因素所限,造成學生實驗動手和科技創(chuàng)新能力不足的問題,提出利用軟件實習工廠進行生產(chǎn)實習的方法,將生產(chǎn)實習投入到一個實際項目的開發(fā)與建設上,真實模擬軟件公司的生產(chǎn)過程,并探討其建設的總體設計思想和結(jié)構(gòu)模型。
關(guān)鍵詞:實習工廠;虛擬實驗;項目庫;軟件工程
中圖分類號:G642
文獻標識碼:A
1引言
生產(chǎn)實習(也稱操作性實習)是學校實現(xiàn)培養(yǎng)目標的一個重要環(huán)節(jié)。學生通過參加生產(chǎn)實習,將所學的專業(yè)基礎知識和技能應用于生產(chǎn)實際,達到鞏固和充實理論知識,培養(yǎng)處理實際問題的能力,為畢業(yè)后獨立從事專業(yè)工作奠定基礎的目的。目前,全國高校都十分重視生產(chǎn)實習環(huán)節(jié),并投入了大量的人力、物力,在長期的工作中積累了許多好的經(jīng)驗。
但目前我國高校計算機專業(yè)的生產(chǎn)實習仍然是薄弱環(huán)節(jié),暴露出不少問題,主要是生產(chǎn)實習這個重要的教學環(huán)節(jié)沒有達到生產(chǎn)實習應有的目的。
舉例來說,從2002年至2005年作者指導計算機專業(yè)生產(chǎn)實習的反饋情況來看,生產(chǎn)實習主要就是參觀實習單位的生產(chǎn)情況和聽報告。學習活動沒有結(jié)合計算機專業(yè)特點,在生產(chǎn)實習中把學生所學的基礎知識與計算機技術(shù)在生產(chǎn)中的應用相結(jié)合,學生在這個環(huán)節(jié)中沒有學到應有的生產(chǎn)技能。作者隨機對參加實習前后的2000級、2001級、2002級計算機專業(yè)學生進行了訪問調(diào)查。
(1) 認為畢業(yè)實習效果較好的同學不到10 %,而認為效果不大好的同學超過60%;認為實習達到了一定效果的學生只有30%左右,而在認為達到了效果的學生中,認為鍛煉了勞動的能力和吃苦耐勞精神的學生高達80%,認為外出實習達到了將所學的專業(yè)基礎知識和技能應用于生產(chǎn)實際,達到鞏固和充實理論知識,培養(yǎng)處理實際問題的能力的同學不到10%。
(2) 實習前后的態(tài)度:實習前愿意去的同學超過60%,但在這些同學中,有超過80%的學生認為去就是參觀,鍛煉一下,看看外面的世界。實習后的同學認為實習值得去的比例不超過30%。
(3) 實習中:實習的安排時間每年都是最熱的時期,而實習的條件較差。指導老師的精力不是花在指導學生理論與實踐相結(jié)合的能力上,而是集中在生活及安全方面?,F(xiàn)代企業(yè)面對的是市場的激烈競爭,不能像計劃經(jīng)濟那樣為高校預備實習條件。而現(xiàn)在學校規(guī)模較大,學生數(shù)量多,企業(yè)不能為這么多臨時的實習學生準備硬件設施。2002年,在某鋼鐵企業(yè)進行的生產(chǎn)實習,企業(yè)能夠提供的床位不到實習學生人數(shù)的一半,相當多的學生只能住教室,條件很差,老師與學生將平安地返校當成實習的最高目標,更不用說生產(chǎn)實習的具體環(huán)節(jié),真正目的與要求了。
在與其他院校的教師交流中,也討論過類似現(xiàn)象。文獻[2]指出,高校,特別是“211”、“985”的高校,提出了研究性本科教學,注重理論教學,注重開放性教學,對學生動手能力培養(yǎng)和生產(chǎn)實習的重視程度相對不夠。文獻[3~5]指出,即使是研究性本科教育,其動手能力,實踐與理論的結(jié)合也顯得尤其重要,因為研究性本科教育不僅是對當前生產(chǎn)流程的掌握,更是對當前生產(chǎn)流程、技術(shù)的改進,需要獨立的設計技術(shù)方案和改進方法,對其實踐的要求不是降低了,而是更高了。另外一面,用人單位對重點大學學生的期望值更高,期望所錄取的畢業(yè)生能夠立即獨立工作,甚至能夠帶領一個團隊進行項目開發(fā),而我們的學生往往存在一定的“差距”,這種差距不是知識上的,而是一種系統(tǒng)、全面、獨立進行生產(chǎn)實踐能力上的差距。生產(chǎn)實習在這些環(huán)節(jié)中起著重要的作用,學校的生產(chǎn)實習環(huán)節(jié)做得好,學生才能獲得這種實踐能力。
高校生產(chǎn)實習效果差、方法落后、手段單一的主要原因有兩個方面:
(1) 缺乏生產(chǎn)實習基地。計算機專業(yè)的生產(chǎn)實習有特殊性。其他專業(yè)與實際的生產(chǎn)企業(yè)、生產(chǎn)的工藝設備、現(xiàn)場知識與操作關(guān)系緊密,通過一個具體的生產(chǎn)工藝過程就能使學生深刻理解理論和實踐的過程,如果能夠在生產(chǎn)中親自實驗和設計一個流程,學生能學到不少東西。而計算機專業(yè)的生產(chǎn)流程與制作是一種無形的腦力產(chǎn)品制作過程,如果軟件開發(fā)人員不將本公司的開發(fā)情況介紹、演示出來,實習人員僅憑參觀,無法了解其流程,而在競爭激烈的市場中,鑒于保密、人力成本等方面的考慮,軟件開發(fā)人員很難配合實習學生的實習,配合大批量的實習學生更不現(xiàn)實。況且實習的單位往往是一些與計算機專業(yè)不相關(guān)的大中型企業(yè)(如鋼鐵、冶金、加工企業(yè))。實習學生缺乏實踐經(jīng)驗,不能給企業(yè)直接創(chuàng)造利潤,還給企業(yè)帶來生產(chǎn)和管理上的諸多不便,因此,這些單位不愿意接收學生實習。再者,市場經(jīng)濟以經(jīng)濟效益為主,生產(chǎn)企業(yè)沒有為學校提供實習基地和教學的義務。加上有些學校與企業(yè)關(guān)系不是十分密切,學校的生產(chǎn)實習不能進行有效組織與質(zhì)量管理也是必然的。
(2) 生產(chǎn)實習效果不佳。既使有實習單位愿意接納學生實習,學生也很少直接參與實踐活動,大多數(shù)實習單位以組織學生參觀、聽報告為主,生產(chǎn)實習效果不佳。
計算機專業(yè)與其他專業(yè)不同之處在于,它的生產(chǎn)實踐主要是一種腦力開發(fā)過程,產(chǎn)品大多以無形的軟件編碼為主,而對硬件環(huán)境要求并不高,完全可以在校內(nèi)建立虛擬的“軟件實習工廠”。針對以上情況,我們提出了一種新的計算機專業(yè)生產(chǎn)實習模式:“軟件實習工廠”的實習方式。希望以此達到兩個目的:一是為計算機專業(yè)的生產(chǎn)實習提供穩(wěn)定、適宜、有效的實習基地;二是讓實習學生充分參與到生產(chǎn)實習中去,發(fā)揮其動手能力和創(chuàng)新能力,以這種方式適應國家建設要求。
我們具體做了兩方面工作:一是探索性地建設了校內(nèi)“軟件實習工廠”基地;二是探討了“軟件實習工廠”的生產(chǎn)實習教學的實施過程、實施方法。最后對比給出了“軟件實習工廠”在某校的實習情況與效果?,F(xiàn)僅就第一方面作如下探討。
2軟件實習工廠構(gòu)建
“軟件實習工廠”建設的主要目標就是通過組合校內(nèi)計算機專業(yè)實驗室的硬件與軟件建立“軟件實習工廠”管理平臺。平臺系統(tǒng)包含了產(chǎn)生實習需要完成的各項任務,主要是一些軟件企業(yè)真實的項目,將其分解后形成了在一次生產(chǎn)實習中能夠完成的任務,實習學生通過“軟件實習工廠”管理系統(tǒng)登錄實習工廠,按照要求完成各項目任務。將過去那種參觀性的被動實習變?yōu)橹鲃訉嵙?,讓實習學生學習、熟悉項目開發(fā)的相關(guān)技術(shù)和技能,以及團隊集體開發(fā)的能力與組織方式。使學生經(jīng)過實習后能夠相當于經(jīng)歷一次軟件公司的“準工作”經(jīng)歷,為畢業(yè)設計做一次理論與實踐相結(jié)合的預練。
在實習后,將學生做的每一個項目與已經(jīng)成功運作的項目相比較,讓學生體會到自己的產(chǎn)品與真正市場的產(chǎn)品的距離,從而激發(fā)與培養(yǎng)學生創(chuàng)新意識、實踐能力和意志品質(zhì)。
2.1軟件實習工廠需要軟硬件基礎
“軟件實習工廠”的建設需要考慮軟、硬件基礎:
(1) 硬件平臺的組織:軟件實習工廠的目的是在實驗室模擬實際項目開發(fā),以提升學生軟件開發(fā)的能力與水平。而實際的項目具有不同的平臺、不同的系統(tǒng),是一個異構(gòu)的系統(tǒng),如何整合這些異構(gòu)的系統(tǒng),讓實習者能夠根據(jù)實際項目的應用環(huán)境來選擇相應的硬件開發(fā)環(huán)境,本項目需要綜合考慮這些因素。我們是通過構(gòu)造一個異構(gòu)的、開放的復雜實驗室環(huán)境來滿足軟件實習工廠的需求。具體來說,就是充分利用我校目前具有的不同種類微型機、服務器、小型機這一有利條件。組建了一個具有6種以上操作系統(tǒng)(Windows、Linux、AIX UNIX、Solaris、SCO UNIX、HP UNIX),由IBM小型機、HP服務器、SUN服務器、普通微型機組成的綜合實驗硬件基礎。
(2) 軟件平臺的組織:有了硬件基礎,可以安裝當前常用的開發(fā)工具,如Visual Studio 2003、2005集成開發(fā)工具,PowerBuilder、JBuilder、Delphi這些可視化C/S(B/S)模式開發(fā)工具,以及JBoss、Tomcat、Resin等JSP和ASP.net開發(fā)工具。數(shù)據(jù)庫安裝有SQL Server 2000,Oracle,DB2,Sybase等數(shù)據(jù)庫。對于有不同平臺的軟件分別在不同的操作系統(tǒng)下安裝。一般來說,服務器和小型機價格較高,所購置數(shù)量有限,采用微型機作為實習者的工作平臺,然后通過網(wǎng)絡工具,如Telnet,以及FTP工具連接上服務器操作,實習者可以通過每人一臺的實習PC機連接上服務器,熟悉并使用非Windows平臺與開發(fā)環(huán)境,擴展當前計算機教學與實踐中對非Windows平臺掌握與使用的不足。同時,這些服務器又可以充作源代碼版本控制服務器,以組織團隊的項目開發(fā),對源代碼進行Check In/Out操作。
2.2軟件實習工廠實驗平臺建設
2.2.1軟件實習工廠管理系統(tǒng)
我們提出的“軟件實習工廠”項目的運行模式主要是將實際的軟件企業(yè)的項目分解成在一次生產(chǎn)實習中能夠完成的任務,在實習前,介紹此項目的背景、開發(fā)的進度與時間要求,以及“客戶”對開發(fā)的產(chǎn)品的要求,讓實習者將項目置身于一個真實需求的環(huán)境中。在“軟件工廠”的生產(chǎn)實習中,指導教師主要擔任技術(shù)總監(jiān)或部門經(jīng)理和用戶雙重角色。而實習者擔任項目組長、技術(shù)開發(fā)人員、軟件測試人員、軟件質(zhì)量品質(zhì)檢查人員、軟件產(chǎn)品的最終用戶等角色。
指導教師以“技術(shù)總監(jiān)”或“部門經(jīng)理”的身份指導實習者按正規(guī)的公司開發(fā)的方法進行實習,在實習中又以“客戶”的身份對實習者做出的產(chǎn)品進行評價和提出新的要求;在實習中,“軟件實習工廠”管理平臺系統(tǒng)會按項目開發(fā)的流程,在實習者提交實習解答,在教師評判后,系統(tǒng)會自己進入下一個實習的環(huán)節(jié),在整個項目完成后給出實際項目的真實例子,讓實習者體會到自己的產(chǎn)品與真正市場的產(chǎn)品的距離。
為達到以上目標,我們設計與開發(fā)完成了一整套為達到以上總體目標的“軟件實習工廠”管理平臺系統(tǒng)。系統(tǒng)主要由如下幾個部分組成:
(1) 學生實習前端系統(tǒng)。它的作用是在學生登錄生產(chǎn)實習系統(tǒng)后,可以選擇生產(chǎn)實習的題目,以及每一個生產(chǎn)實習項目的具體要求、項目開發(fā)的應用需求、應用環(huán)境,同時,可選擇的開發(fā)工具、項目開發(fā)的具體時間進度要求、每一個階段需要達到的目標等等。在系統(tǒng)演示中,實習者可以在做項目前看到本項目在生產(chǎn)中的成功使用情況及部分界面演示功能,激發(fā)生產(chǎn)實習的積極性。實習后,此次實習開發(fā)的產(chǎn)品被放到系統(tǒng)往屆實習例子中,這樣每屆實習的同學都可以見到前幾屆實習做的系統(tǒng)演示(在實習前不提供源代碼,自己的實習任務提交后才有權(quán)限查看源代碼),這樣實習者會對前屆系統(tǒng)進行改進。
(2) 教師端管理系統(tǒng)。主要處理與檢查學生生產(chǎn)實習的情況,學生實習時每天將項目開發(fā)的源代碼與開發(fā)文檔按正規(guī)軟件工程開發(fā)過程提交給教師,教師進行打分、評價、問題解答。有共性的例子、習題、可參考的資料在系統(tǒng)中公布,并作解答。
(3) 系統(tǒng)后臺處理系統(tǒng):提供基地建設后臺人員增加新的生產(chǎn)實習項目,以及系統(tǒng)維護、管理等功能?!败浖嵙暪S”管理系統(tǒng)是整個項目的一個平臺,提供給教師與實習者進行生產(chǎn)實習的一個管理系統(tǒng),是本項目研發(fā)的一個基礎工作。
“軟件實習工廠”的系統(tǒng)功能結(jié)構(gòu)如圖1所示:
圖1系統(tǒng)功能模塊圖
“軟件實習工廠”管理系統(tǒng)要求能夠適應不同平臺,教師可以遠程登錄系統(tǒng)來檢查實習者的進展。同樣,實習者也可以通過系統(tǒng)來在本地機上,對不同平臺上的資源進行操作。經(jīng)過仔細分析,“軟件實習工廠”的管理平臺系統(tǒng)采用B/S模式來開發(fā),并采用Java跨平臺技術(shù)來保證在混雜性實驗環(huán)境中都能夠使用。
2.2.2軟件實習工廠項目庫建設
在前面,雖然搭建了“軟件實習工廠”的管理系統(tǒng)只提供了生產(chǎn)實習的框架與管理平臺。但“軟件實習工廠”的內(nèi)在核心在于實習項目的設計與開發(fā),也就是生產(chǎn)實習題目及內(nèi)容的設計與開發(fā),系統(tǒng)平臺只有擁有了豐富而先進的實習案例,才能激發(fā)同學們學習的興趣。
生產(chǎn)實習的題目一般要求是一個實際的軟件項目,雖然我院老師大多具有豐富的項目,但由于商業(yè)機密、版權(quán)、隱私等限制,很難直接運用到我們的系統(tǒng)中來。因此,“實習工廠”只能以這些實際項目的需求說明來重新組織項目,而且一個實際的軟件項目必須經(jīng)過仔細的處理與加工才能進入到“軟件實習工廠”。因此,項目庫的建設就是針對各種實際規(guī)模的項目,詳細地按照軟件工程開發(fā)過程的步驟,詳細地設計并完成每一個具體過程,并在每一個階段給出詳細的文檔說明書。如可行性研究報告書、概要設計說明書、軟件需求說明書、數(shù)據(jù)要求說明書、數(shù)據(jù)庫設計說明書、詳細設計說明書、項目開發(fā)計劃、開發(fā)進度月報、模塊開發(fā)、測試計劃、測試分析報告、用戶手冊,等等。
一旦學生選定一個生產(chǎn)實習題目,管理系統(tǒng)會全程監(jiān)控整個項目的開發(fā),在需要提交或者需要老師檢查時,會通過時間觸發(fā)實習者或者教師進行資源提交、檢查實習情況,并給出每一個階段的實習分數(shù)。
由此可見,項目庫的建設不僅僅是項目的程序?qū)崿F(xiàn),也體現(xiàn)在對實習者教學期望訓練的理解上的項目處理。因此這部分工作一般來說必須由具有教學經(jīng)驗人員來完成,因此項目庫的建設是整個平臺系統(tǒng)中最重要,同時也是最難的部分。在實習結(jié)束后,給實習者演示的就是完整的整個項目情況。
目前,我們的“軟件實習工廠”已經(jīng)完成了11個項目,可以供1~2個班同時進行生產(chǎn)實習的需要,更多的項目庫建設正在進行中。
3小結(jié)
本文對某大學的軟件實習工廠的建設模式、實習方法進行了探討,提出一種較好的計算機本科專業(yè)實習工廠的總體構(gòu)建模型。計算機本科專業(yè)實習工廠建設與試運行,表明了這種方式具有一定的優(yōu)越性,這一部分的內(nèi)容我們將在另文中論述。
參考文獻:
[1] 徐承俊,方萍. 關(guān)于實踐教學改革的思考[J]. 高等教育研究,2001(2):17-18.
[2] 李明富. 淺析大學生社會實踐與素質(zhì)教育[J]. 吉林省教育學院學報:學科版,2008,24(9):157.
[3] 莊友明,張建一. 制冷空調(diào)學科畢業(yè)實習模式教學改革探索[J]. 集美大學學報,2003,4(3):103-105.
[4] 景麗潔,翦英紅,王麗敏,等. 改革生產(chǎn)實習教學,加強學生創(chuàng)新精神與實踐能力的培養(yǎng)[J].化工高等教育,2004(2):46-48.
[5] 范海燕,王玉吉. 大學生實踐教學中存在的問題及解決對策[J]. 陜西教育學院學報,2004,20(2):33-35.
[6] 劉影. 努力探索生產(chǎn)實習的有效途徑[J]. 現(xiàn)代教育科學,2002(1):50-51.
[7] 張煉. 產(chǎn)學研合作教育的理論問題及在我國的實踐[J]. 職業(yè)技術(shù)教育,2002(34):43-45.
[8] 孫克輝,李長庚,盛利元,等. 專業(yè)性實踐教學模式的改革與探索[J]. 高等工程教育研究,2003(2):34-37.
[9] 黃永俊,張國忠, 胡月來. 工科專業(yè)生產(chǎn)實習教學的探討[J]. 農(nóng)機化研究,2005(4):45-48.
[10] 韓郁蔥. 計算機科學與技術(shù)專業(yè)實踐教學體系建設初探[J]. 阜陽師范學院學報,2005,2(2):84-86.
[11] 李學相,歐研,李占波,等. 示范性軟件學院實訓模式的探討[J]. 計算機教育,2005(12):102-105.
[12] 王敏,姜華斌. 淺談模擬公司在軟件專業(yè)人才培養(yǎng)中的運用[J]. 職教論壇,2007(6):87-92.
Research on Building Software Practice Factory Teaching for Computer Major
LIU An-feng,ZHAO Hui, ZHAO Yan, LI Yan-jun, ZHANG Yi-rong, LIAO Meng-jun
(College of Information Science and Engineering , Central South University , Changsha 410083, China)
Abstract: The paper aims at the short of Chinese undergraduates experiment ability and science and technology innovation ability because it is affected by practice conditions interaction with objective factors. The software factory for the practice is proposed in this paper. The main idea is letting student to develop and construct real projects, and really simulation Software Company's production process. The design idea and structure model are given in detail in this paper.
Key words: practice factory; virtual experiment; item database; software engineering