軟件測試實訓總結范文

時間:2023-03-29 08:28:05

導語:如何才能寫好一篇軟件測試實訓總結,這就需要搜集整理更多的資料和文獻,歡迎閱讀由公文云整理的十篇范文,供你借鑒。

軟件測試實訓總結

篇1

【關鍵詞】軟件測試;工作過程;課程設計

1.課程的定位與教學設計

1.1 課程定位

《軟件測試》課程作為軟件專業(yè)二年級下學期的專業(yè)課,它的前導課程是《數(shù)據(jù)庫設計》、《數(shù)據(jù)結構》、《軟件工程實施》,后續(xù)課程是課程實訓及畢業(yè)實習。通過本課程的學習,使學生加深對軟件測試基本理論和基本方法的理解與應用,能熟練使用常用軟件測試工具,并能運用軟件測試工具完成應用軟件的測試工作,提高學生對軟件的測試與維護能力,并進一步培養(yǎng)學生的的團隊協(xié)作能力。

1.2 課程設計思路

軟件測試是高職計算機軟件專業(yè)學生在以后的工作崗位上要用到的核心技能。因此,本課程應該作為專業(yè)必修課程和核心課程,重點培養(yǎng)學生在以后的工作崗位上所需的職業(yè)能力:白盒測試、黑盒測試、自動化功能測試與性能測試。

《軟件測試》課程的總體設計思路是,轉變傳統(tǒng)的學科課程模式,不再以知識傳授為主,構建以工作任務為中心的企業(yè)培訓體系,引入企業(yè)項目,讓學生在真實的企業(yè)項目中完成相應的工作任務,從而儲備相關的專業(yè)知識,發(fā)展職業(yè)能力。授課內容重點突出對學生職業(yè)能力的培養(yǎng)。課堂上不再單純地只講授理論知識,而是圍繞實際工作任務的需要來選取,這充分考慮了高職學生動手能力強,理論知識薄弱的特點。

2.教學設計

2.1 教學情境設計

本課程小組通過學院專業(yè)指導委員會、重慶亞德科技、重慶大佳、重慶港澳大家等軟件公司的企業(yè)技術人員進行實際調查,制定了適合高職學生的軟件測試課程體系與職業(yè)能力,確定了軟件測試課程典型的教學情景與子情景,在教學情景中給出具體的工作任務、工作方法以及要求學生掌握的知識與技能等,在教學中貫徹理論實踐一體化的教學模式,做到教、學、做三結合,充分體現(xiàn)工學結合的優(yōu)勢,培養(yǎng)學生的職業(yè)素質。本課程的5個工作過程及11個典型工作任務如表1所示。

2.2 教材設計

(1)教材應充分考慮軟件測試的實踐特性,以工作任務為導向,引入必須的軟件測試理論知識,讓學生在實際測試的過程中,循序漸進地掌握必要的理論知識。

(2)編寫的內容要以項目驅動為原則,以企業(yè)的實際案例、場景模擬、工作過程錄像為載體,增強課后的能力拓展,并根據(jù)高職學生的職業(yè)能力所需知識的深度和廣度來編寫,并在具體的工作任務中使學生逐漸形成團隊協(xié)作意識。

(3)教材應突出軟件測試技術的實用性、前瞻性和開放性,不能只是簡單地介紹一些技術上的操作,而忽略了軟件學生所需的職業(yè)能力,在教材中應融入軟件測試技術中所用到的新規(guī)范、新技術、新標準、新工具、新知識,讓學生能系統(tǒng)地掌握軟件測試的前沿知識。

(4)教材應充分引領學生主動、積極地去學習,因此,文字表述要簡明扼要,內容展現(xiàn)應圖文并茂,內容應詳略得到。

2.3 教學方法設計

由于本課程的主要教學內容涉及白盒測試、黑盒測試、自動化功能測試與性能測試等操作性很強的教學環(huán)節(jié),必須通過課程實訓才能達到對項目作規(guī)范需求分析的培養(yǎng)目標。具體教學方法設計如下:

(1)全班學生分為N個項目小組,3人一小組,1人任組長,組長要求協(xié)調溝通能力比較強。

(2)在教學過程中應加強學生對軟件總體的測試能力,采用任務驅動教學,注重以任務引領,提高學生學習興趣;

(3)組建軟件外包中心,引進企業(yè)項目,讓學生真實地體驗在軟件公司的測試流程。外包中心作為理論實踐一體化教室,達到理論和實際不脫節(jié)。

(4)教學過程中可參考軟件測試評師考試中規(guī)定的知識要求和技能等級職業(yè)標準。

(5)教師模擬企業(yè)的項目經(jīng)理,必須具有開拓精神,帶領團隊完成工作任務,并在完成工作任務的過程中,探索基于工作過程的職業(yè)教育新模式,培養(yǎng)學生的軟件測試能力,構建軟件測試知識體系。

2.4 教學評價設計

(1)突出過程評價,結合課堂提問、實作測試、課后拓展、任務考核等手段,加強實訓教學環(huán)節(jié)的考核,并注重平時考核。

(2)強調目標評價和理論與實踐一體化評價,注重引導學生進行學習方式的改變。

(3)每個項目小組在完成課程后,要將所學的內容做ppt,匯報本小組項目完成的情況以及體會。

(4)實行學習過程的過程化考核。平時作業(yè)、期中與期末考試均采用上機實訓的方式考核,對于不合格者,在團隊的協(xié)作幫助下持續(xù)練習,直至過關。這樣可以督促學生不斷地練習,真正提高動手能力。

(5)課程的學期成績=平時作業(yè)(10%)+上課考勤(10%)+小組項目測試情況(30%)+小組ppt總結情況(10%)+期末成績(40%)

3.課程資源的開發(fā)與利用

(1)圍繞軟件測試課程,收集教師和學生必備的軟件測試工具,制作適宜教學的多媒體教學課件。

(2)組建軟件外包中心,搭建實訓工作平臺,為學生實訓提供真實的工作環(huán)境,從而提高其職業(yè)素養(yǎng)。

(3)要充分開發(fā)網(wǎng)絡課程,讓學生在課余時間可以自主學習,彌補學生課本知識的不足。

(4)充分利用和開放實訓中心,將教學與實訓合一,將理論與實踐合一,滿足學生綜合能力培養(yǎng)的要求。

(5)積極利用電子書籍、電子期刊、數(shù)字圖書館、校園網(wǎng)、各大網(wǎng)站等網(wǎng)絡資源,使教學內容從單一化向多元化轉變,通過企業(yè)技術人員的指導,課程教師的輔導,使學生知識和能力的拓展成為可能。

4.課程的實施效果

(1)基于項目化的授課內容

建立軟件外包中心,引入企業(yè)項目內容,軟件測試的授課內容緊緊圍繞企業(yè)項目的典型工作任務開展,學生的能力與素質參照軟件測試工程師的崗位要求,讓學生真實感受企業(yè)環(huán)境,就業(yè)零距離上崗。

(2)基于過程化的授課方式

老師授課不再單純地講解理論,完全按照企業(yè)的軟件測試流程開展,制定規(guī)范的軟件測試計劃、編寫測試用例、利用測試工具測試、編制測試報告,有利于學生養(yǎng)成職業(yè)化的學習習慣與工作習慣。

(3)基于理論實踐一體化的教學設備

學生在軟件外包中心上課以及實驗,真正實現(xiàn)了“做中學,學中做”的企業(yè)工作環(huán)境。

(4)基于能力化的學習評價

學生的評價不再單純地以理論考試為依據(jù),而是從學生的軟件測試專業(yè)能力、利用軟件測試工具的能力、團隊溝通協(xié)調能力進行綜合地評價。

參考文獻

[1]鄭泳.基于工作過程系統(tǒng)化的高職《軟件測試》課程設計[J].漯河職業(yè)技術學院學院,2010(9).

[2]程茂,溫靜,吳玉潔.《軟件測試》課程的教學研究[J].河北師范大學學報,2010(4).

[3]蔡建平.開源軟件測試實踐教學方案設計[J].計算機教育,2011(3).

篇2

關鍵詞:軟件測試;教學改革;人才培養(yǎng)

中圖分類號:G64

文獻標識碼:A

文章編號:1672-3198(2010)03-0237-01

軟件測試是保障軟件質量的重要環(huán)節(jié),隨著中國軟件行業(yè)的不斷發(fā)展,企業(yè)對于軟件質量意識的逐步增強,促使國內軟件測試人員的地位不斷提升,軟件產(chǎn)品的質量要求與質量管理正逐漸成為企業(yè)生存與發(fā)展的核心。為了保證軟件在交付使用的時候能盡量完善,大多數(shù)IT企業(yè)在軟件產(chǎn)品前都需要做大量的質量控制工作。作為軟件質量控制中的重要一環(huán),軟件測試重新顯示了它的重要位置。

由于中國高等教育往往落后于企業(yè)的實際發(fā)展,所以在很多高校重開發(fā)、輕測試的思想十分嚴重。許多學生對測試工作存在偏見,其中對軟件測試工作有三個認知誤區(qū)尤為突出:一、軟件測試是軟件開發(fā)完成之后才進行的,只是軟件編碼的最后一個階段。二、軟件測試無需具備很高的技能,是沒有前途的工作,工作枯燥,不具創(chuàng)造性。三、軟件后如果發(fā)現(xiàn)BUG就是測試人員的責任。這些認知缺陷導致軟件測試人才缺口進一步擴大,影響了企業(yè)對測試人員的招募工作,繼而影響到中國IT產(chǎn)業(yè)的發(fā)展。同時,國內軟件業(yè)因對軟件質量控制的重要作用認識較晚,尚未形成系統(tǒng)的軟件測試人才需求供應鏈。因此,高職院校有必要對此進行思考。

1 軟件測試課程教學現(xiàn)狀

根據(jù)各高職院校的專業(yè)設置情況來看,目前還沒有高職院校設置軟件測試專業(yè),因此還沒有專門培養(yǎng)專業(yè)的軟件測試人才的體系。根據(jù)目前軟件企業(yè)對軟件測試技術人才的巨大需求,對于以培養(yǎng)滿足社會發(fā)展需求的應用型人才為辦學宗旨的高職院校來說,應該增加軟件測試專業(yè)的設置和軟件測試人才的培養(yǎng)。

目前,雖然很多高職院校增加了《軟件測試》課程,但在教學方法上一般采用傳統(tǒng)的灌輸式枯燥地講解測試理論和方法,使學生產(chǎn)生抵觸和厭學情緒。軟件測試是一項專業(yè)性較強的工作,它包括許多理論知識并要求測試人員具有一定的工程實踐經(jīng)驗,缺少這些知識和經(jīng)驗,測試的深度和廣度就不夠,測試工作的質量也就無法保證。因此在該門課程教學中需要提供豐富的實例和習題,并且采用實際軟件項目的測試案例,增加實訓環(huán)節(jié),激發(fā)學生的學習興趣,促進了理論和實踐的教學,把對學生的應用能力的培養(yǎng)融匯于教學中。

2 軟件測試課程教學目標

根據(jù)目前軟件企業(yè)對軟件測試技術人才的能力需求,我們給軟件測試課程教學制定了兩個教學目標:其一,幫助學生熟練掌握規(guī)范化的軟件開發(fā)流程和軟件測試理論;其二,能進行一般的軟件測試,能編寫測試用例,能掌握至少一種軟件測試工具。因此,學生應掌握的知識主要包括:(1)掌握單元測試、集成測試、系統(tǒng)測試、性能測試、功能測試等測試方法。(2)熟悉黑盒測試和白盒測試技術。(3)能夠制定測試計劃和設計測試用例。(4)掌握常用的軟件自動化測試工具。(5)能夠編寫系統(tǒng)測試總結報告。

3 軟件測試課程教學改革方案

3.1 修正學子對軟件測試的認知誤區(qū),提高對軟件測試重要性的意識

傳統(tǒng)的瀑布模型中,軟件項目主要有計劃、需求分析、概要設計、詳細設計、編碼、測試和運行維護這幾個階段。軟件測試處于運行維護階段之前,僅僅是軟件產(chǎn)品交付用戶使用之前保證軟件質量的重要手段。

隨著軟件業(yè)的發(fā)展,瀑布模型日益暴露出如下缺點:項目之間極少有反饋,在項目后期才能看到結果,這給經(jīng)常發(fā)生需求變更的軟件研發(fā)工作產(chǎn)生很多不便,一旦在編碼階段結束才發(fā)現(xiàn)設計和需求階段的錯誤問題,修復的成本就會很高。因此測試人員應該在項目早期就介入,進行測試需求分析、制定測試計劃等。軟件測試應貫穿于整個軟件開發(fā)生命周期的全過程,以保證各個階段工作產(chǎn)品輸出的正確性。這要求測試人員有很好的溝通能力、理解能力、分析問題能力,同時還必須對該軟件服務的行業(yè)有一定的了解。

教師須結合軟件測試的最新趨勢,向學生普及新知識,新技術,以引起學生的學習興趣,擴展學生視野,提高對軟件測試崗位的理解,增強學生內在的學習動力,發(fā)揮學生的主動精神,將“要學生學習”變?yōu)椤皩W生要學習”。

3.2 改革教學內容,強化實踐教學,促進理論與實踐教學的統(tǒng)一

關注新技術的發(fā)展,及時更新教學大綱,在課程內容安排上,注意理論與實踐并重,將《軟件測試》課程劃分為二個模塊組織教學?!盾浖y試理論》課程是理論模塊,占60個學時,《軟件測試實訓》課程是實踐模塊,占60個學時。其中《軟件測試理論》課程涵蓋軟件測試的各項基本技術和知識,以學生較熟悉的應用背景和業(yè)務流程的項目開發(fā)和測試實踐為主線進行講解,提供豐富的實例和習題,激發(fā)學生的學習興趣,內容安排上由易到難,深入淺出。為了驗證理論,加深對理論的理解和掌握,安排需求分析和軟件設計的UML建模、單元測試、WEB系統(tǒng)的性能測試、系統(tǒng)集成測試等實驗。軟件測試實訓需要著重解決的問題是實驗的設計,既要考慮滿足教學的條件與要求,又要實現(xiàn)與實際測試工作的對接,并體現(xiàn)出軟件開發(fā)和測試的過程。

理論課和實訓課的講義,由參加了項目開發(fā)的專業(yè)老師和一些軟件公司的項目負責人編寫、整理出開發(fā)過程的所有文檔,包括用例圖、用例描述文本、時序圖、類圖、源代碼以及單元測試和系統(tǒng)測試的測試計劃和測試用例等。

3.3 建立了校外實訓基地, 通過企業(yè)實習提高學生的崗位技能,深化教學改革

學生到企業(yè)實習是軟件測試人才培養(yǎng)的重要組成部分。同學校周邊的軟件公司合作,建立校外實訓基地,讓學生在軟件開發(fā)隊伍中從事真正的軟件測試工作。學生在實習中不但能親身體會軟件測試在軟件開發(fā)流程中的作用,提高測試技術,而且可以培養(yǎng)測試人員必須具備的溝通能力、理解能力、分析問題的能力。一名好的測試人員必須能夠同軟件測試涉及的所有人進行溝通, 具有與技術開發(fā)者和客戶、管理人員等非技術人員的交流能力,這種能力在課程教學上無法培養(yǎng)的。

讓學生到企業(yè)實習還可以實現(xiàn)學生的職業(yè)能力與企業(yè)工作崗位的“零距離”,使學生根據(jù)自己的專業(yè)特長和愛好選擇自己在測試團隊的具體方向。掌握相關自動化測試工具的學生可以把自己定位于自動化測試人員,編程功底扎實的同學可以定位于腳本撰寫人員,對相關測試中最易發(fā)現(xiàn)問題的地方敏感的同學可以定位于手工測試人員。4 結語

軟件測試課程的教學難點在于對實踐能力的高要求上,我們引入案例教學,營造學生主動學習的氛圍,將課內學習和學生興趣融為一體,切實提高了學生的軟件測試能力,當然軟件測試教學改革方案還需要不斷根據(jù)軟件技術的發(fā)展和學生的特點不斷進行改進和調整,需要長期堅持不懈的探索。當前軟件測試的重要性已是軟件項目成敗的關鍵環(huán)節(jié),當它的重要性已經(jīng)被各家公司提升到一定高度的時候,高校學子們也應該與時俱進,對于有志從事IT崗位的高校畢業(yè)生來說,充分了解各個職位的真實情況,對于將來職業(yè)的選擇和規(guī)劃都有著莫大的好處。通過對軟件測試課程教學改革,可以看到教學效果明顯改善。學生的理論課成績顯著提高,畢業(yè)設計階段能夠應用軟件測試理論對自己的畢業(yè)設計進行測試,實驗課教學質量提高了,培養(yǎng)了學生自主創(chuàng)新能力。

參考文獻

[1]王中鳳.開放式實驗教學與創(chuàng)新型人才的培養(yǎng)[J].合肥學院學報(自然科學版),2009,(02).

[2]鐘元生.軟件測試實踐教學特色的構建實踐[J].電化教育研究,2006,(10).

[3]程寶雷.基于 Rational 的軟件測試課程實驗教學方法探討[J].實驗室研究與探索,2007,(12).

篇3

[關鍵詞]軟件測試 課程體系 教學改革

[作者簡介]李靜(1969- ),女,陜西興平人,河北北方學院信息工程學院,副教授,碩士,研究方向為教學設計、操作系統(tǒng)與軟件測試;趙志升(1965- ),女,河北張北人,河北北方學院信息工程學院,教授,碩士,研究方向為教學設計、軟件工程、數(shù)據(jù)挖掘。(河北 張家口 075000)

[中圖分類號]G642.3 [文獻標識碼]A [文章編號]1004-3985(2014)02-0135-02

軟件測試技術近年來發(fā)展迅速,已經(jīng)成為與軟件開發(fā)齊頭并進的專業(yè)技術。軟件測試工程師承擔產(chǎn)品功能、性能、可靠性、易用性等全方位測試,保證產(chǎn)品質量,滿足用戶需求,保證企業(yè)信譽,是當前IT業(yè)界需求量驟升的熱門人才。目前我國軟件產(chǎn)業(yè)在產(chǎn)品功能和性能測試領域仍然存在著嚴重不足,軟件測試的廣度和深度已成為影響企業(yè)生存與發(fā)展的核心問題。培養(yǎng)大量的具備專業(yè)素養(yǎng)和高層次技能的測試人才,更好地推進我國測試行業(yè)和測試技術的長足發(fā)展,是高等院校必須擔負的職責。

一、國內軟件測試專業(yè)教育現(xiàn)狀

自2000年軟件測試技術在我國興起至今十余年,軟件測試人才隨著軟件行業(yè)的迅猛發(fā)展呈現(xiàn)出供不應求的態(tài)勢。專業(yè)的軟件測試機構、測試網(wǎng)站及測試技術培訓機構等迅速發(fā)展起來。目前,國內許多高校已經(jīng)逐步設有本科階段軟件測試方向的專業(yè)。2011年11月,由教育部主辦的“2011年高等學校軟件測試課程教學論壇”在上海同濟大學召開,對國內軟件測試人才的培養(yǎng)及測試領域的全面發(fā)展起到積極推動的作用。

1.社會培訓模式與現(xiàn)狀。當前國內業(yè)界一些知名網(wǎng)站主要承擔起測試人才的培養(yǎng)職責,如51testing、達內科技、北大青鳥等,為測試行業(yè)輸送了大批動手能力較強的測試人才。針對性很強的短期教育模式是社會培訓的特色。培訓機構通常按照助理級、初級、中級和高級測試人員安排培訓內容。諸如北大青鳥等規(guī)模較大的培訓機構引進歐美的混合教學模式,采用“理論知識+分模塊項目實踐+全真項目實訓+職業(yè)素質訓練”的模式,形成一個科學并且實用的培訓體系。培訓機構通常設立自己專用的教學平臺,通過網(wǎng)絡遠程授課與集中化分期分班授課方式,在半年到一年的較短時期,培訓出上崗快、操作熟練、針對性強的應用人才,而且很多學員直接通過測試工程師面試,并在后期工作中累積了較深厚的測試經(jīng)驗,成為測試領域的支撐力量。培訓課程主要內容涵蓋操作系統(tǒng)管理、網(wǎng)絡應用與Web編程、數(shù)據(jù)庫管理等專業(yè)課程,實訓環(huán)節(jié)應用主流的測試工具,如Winrunner,Loadrunner,Rational Robot等。著重于實用性的項目實踐和開發(fā)是培訓機構與高校教育的最大區(qū)別。參加這些培訓班已成為目前大學生崗前培訓的主要途徑。

2.高校專業(yè)教育現(xiàn)狀。軟件測試技術要得到廣泛應用和深入發(fā)展,不能僅依靠社會辦學,高校系統(tǒng)化的專業(yè)教學體系能夠為學生奠定一個更加扎實和科學的專業(yè)基礎,并對測試技術本身的學科化發(fā)展起到不可替代的作用。近三年來,軟件測試技術作為專業(yè)課程逐漸在多所高校開設。目前,多數(shù)高校將“軟件測試技術”作為一門獨立課程設置,交叉課程主要為“軟件工程”。當前一些高校開始申報軟件測試專業(yè),但是軟件測試技術的學科化發(fā)展目前仍受到諸多因素的影響。主要是:(1)缺乏豐富的理論支撐。軟件測試目前仍是發(fā)展中的計算機技術,專業(yè)論著少,適合于高校的教學材料非常有限,并且普遍存在知識結構不合理,教學內容不規(guī)范統(tǒng)一,論點少并缺乏依據(jù),實驗指導教材匱乏等問題。另外作為一門獨立學科,與其他學科的交叉與相輔是理論體系的必要部分,測試技術與計算機領域諸多技術關聯(lián),相互結合教學是當前教改面臨的問題。(2)目前通用性測試平臺仍未完善發(fā)展與普及,在高校中缺乏結合教學實驗內容的通用的實踐平臺,實驗環(huán)境單薄。多數(shù)高校停留在泛泛講授幾個熱門的測試工具的階段,缺乏成熟、實用的測試環(huán)境來實踐完整的測試項目。(3)教學模式上存在嚴重缺陷,專業(yè)培養(yǎng)過程中存在大量的不規(guī)范性和隨意性。主要表現(xiàn)在:實踐課程比例小,測試項目實例缺乏;理論課程知識結構不合理;教學理念和手段陳舊,脫離測試技術發(fā)展的實際與市場應用;不重視對學生從事軟件測試職業(yè)素養(yǎng)的培養(yǎng)。尖端技術的學科化發(fā)展是高等院校的職責,建立一個科學、完整的專業(yè)教學體系是高等教育最為核心的問題。

3.當前推進測試技術應用的其他途徑。除了專業(yè)公司培訓和高校培養(yǎng)外,當前軟件測試行業(yè)的發(fā)展還依賴于多種良好途徑:校企合作、技術沙龍、測試專業(yè)微群、社會信息輻射等。新興技術發(fā)展需要社會傳播產(chǎn)生的廣泛影響力來推動。以MPD(亞太軟件研發(fā)團隊管理)峰會、51testing等領銜的線下技術沙龍活動和巡回演講,聚集了很多高端的測試人才,相互學習交流,積極推進軟件測試行業(yè)的發(fā)展。一些較有影響的網(wǎng)絡微群提供測試技術的交流和分享,如軟件測試、敏捷測試、落地微群等,大量的測試人員和測試工程師提供測試過程管理、測試工作總結等資料,有很強的借鑒性。

軟件測試行業(yè)的人才匱乏仍然是當今的重要問題。依照行業(yè)需求,軟件測試人員配備應是軟件開發(fā)人員的2倍,而目前我國軟測人員與開發(fā)人員比例卻僅在15至18之間。以高等院校專業(yè)教育為主,實現(xiàn)多種途徑的人才培養(yǎng)是當前軟件測試行業(yè)的當務之急。

二、高校軟件測試專業(yè)課程體系建設

構建專業(yè)課程體系,需要設置好基礎課與專業(yè)課、理論課與實踐課、必修課與選修課的比例關系,并合理安排與協(xié)調課程相互間的分工與配合。建設科學完整的軟件測試專業(yè)的課程體系是一個需要多方考證借鑒和不斷探索完善的工作。

1.課程設置。軟件測試是一門技術性很強的專業(yè),對專業(yè)素養(yǎng)要求很高。在測試模式、測試方法上與軟件開發(fā)的模式、開發(fā)平臺直接相關。學生必須對操作系統(tǒng)、軟件的邏輯結構以及物理存儲過程、操作實現(xiàn)方法達到一定深度的了解和掌握,對于硬件的拓撲結構、物理結構要也需要盡可能多地熟知。在軟件測試行業(yè),對優(yōu)秀人才的要求是擁有高敏感能力、高發(fā)散能力、高分析能力,而這些都是以扎實的理論基礎為前提的。建設軟件測試專業(yè)課程體系,應契合技術發(fā)展、學科發(fā)展與從業(yè)需求。經(jīng)過多方考證,下表所述課程囊括的專業(yè)知識對于高層次的自動化軟件測試技術的掌握必不可少。

由于計算機專業(yè)課程的關聯(lián)性很強,一些專業(yè)課程可以相互結合教學。比如語言類,Shell等可以結合到UNIX/Linux操作系統(tǒng)課程中,HTML/XML可結合到.NET以及網(wǎng)絡技術等課程中,PHP融入Web服務器配置等專業(yè)選修課程教學中等,避免專業(yè)內容交叉而造成的重復教學現(xiàn)象。在教學過程中,要將軟件測試的思想廣泛地滲透到所有的專業(yè)課程中。如在各類程序設計語言基礎課程中引入單元測試的思想,在軟件工程課程中強調軟件測試的重要性,增強軟件質量管理意識。當前微軟、蘋果、惠普等軟件公司都推出完整的計算機應用與開發(fā)平臺,從硬件、操作系統(tǒng)、集成開發(fā)環(huán)境到用戶應用軟件,基本上提供一條龍服務。以微軟為首的測試框架開發(fā)也日趨成熟。高校需要從專業(yè)建設角度考慮,把握學科發(fā)展方向,汲取眾家之長,將尖端技術和主流應用平臺作為專業(yè)教學內容,在有限的學時之內統(tǒng)籌安排,讓學生形成一個專業(yè)學習的整體思想,做到知識累積層次清晰、得到一個完整的專業(yè)知識體系。隨著測試技術的快速發(fā)展,課程設置需要不斷更新調整,既要考慮專業(yè)建設、學科建設,又要考慮市場需求和研發(fā)需求。合理選擇、科學地納入新知識到專業(yè)課程中,是需要不斷探索和改革的無止境的工程。

2.教材選擇。教材選擇應當寬口徑,除了主要教材之外,要為學生提供更多的輔助教材和資料,給學生自主學習的空間和時間。這方面要學習西方高等教育的模式,按照教學計劃和教學內容,指導學生分期、分階段大量閱讀與課程相關聯(lián)的專業(yè)資料,并匯總論點和典型實例展開討論,開闊學生的眼界,培養(yǎng)學生獨立思考、邏輯分析能力和探索精神。另外,教材選擇應把握專業(yè)技術的最新發(fā)展,與專業(yè)領域的最新研究成果、社會培訓資料等結合,及時更新教學內容。例如有經(jīng)驗的測試工程師撰寫的技術開發(fā)、測試報告與測試總結等書籍資料,是完善和填充教材的重要知識源。

3.實驗教學規(guī)劃。(1)實驗教學內容,應包括兩部分:測試框架應用和測試項目實踐。前者是指基于實驗室配置的測試框架,選擇針對操作系統(tǒng)或者客戶端軟件、網(wǎng)站等的服務性能測試案例,編寫一些通用的測試腳本,在測試框架上實現(xiàn)完整的測試流程。后者是指選擇實際的軟件測試項目來組織實驗教學內容。在測試項目實踐中,需要提供給學生被測試的軟件系統(tǒng)代碼以及軟件開發(fā)綜述,包括需求分析、概要設計書、詳細設計書等文檔,便于學生真實地模擬實際工作中的測試流程。項目實踐中,可將學生分成若干個項目組,分別設置測試經(jīng)理、測試負責人、測試人員等角色,依照測試用例設計、測試任務管理、測試計劃實施、測試過程監(jiān)控、測試日志與測試報告管理環(huán)節(jié),安排角色各司其職,協(xié)同完整測試項目,并對被測軟件系統(tǒng)做出質量評審,撰寫格式規(guī)范的質檢報告。通過實驗教學,使學生深入理解和掌握常用測試工具,如單元測試工具NUnit等應用,提升學生的項目管理經(jīng)驗和軟件測試技能。(2)實驗教材選擇:實驗教材選擇應參考社會培訓機構的項目實訓資料,選擇基于主流測試平臺的項目實例教程,并結合測試技術的應用發(fā)展現(xiàn)狀和高校測試環(huán)境,廣泛篩選輔助資料,設置測試項目,豐富實驗教材的內容。(3)實驗環(huán)境配置:搭建面向高校教研的通用測試環(huán)境。當前各類測試平臺及測試工具不斷推出,種類繁多,但針對性較強,應用性能受到限制,缺乏可被廣泛普及的通用型測試平臺,導致測試過程缺乏通用性和穩(wěn)定性、測試標準設定和測試價值評估無法明確等問題。建立一個通用測試環(huán)境對高校的實驗教學和專業(yè)研究十分必要。通用測試環(huán)境應囊括軟件測試管理平臺、回歸測試平臺和性能測試平臺功能。提供軟件的文檔審查、安裝測試、功能性測試、易用性測試等測試項目,并能提交形式內容規(guī)范的測試報告。通用測試環(huán)境搭建需要高校結合專業(yè)研究項目實施二次開發(fā)。

三、面向從業(yè)需求的教學改革

1.注重面向市場應用的課程體系改革。為了更好地為社會培養(yǎng)應用型人才,高校應以企業(yè)崗位能力需求為標準,不斷進行課程體系改革,構建“知識+應用+研究”的混合型課程體系結構,為學生從業(yè)后盡快適應工作崗位,擔負起科技職能,并進一步從事測試技術開發(fā)與研究奠定基礎。軟件測試課程體系改革應基于不斷發(fā)展的測試技術以及社會測試崗位的能力需求,從培養(yǎng)學生專業(yè)素養(yǎng)、測試技能、項目分析能力、探索開發(fā)能力等全面素質的高度進行必要的整合和重組,把學生應具有的知識、能力、素質結構作為課程體系改革的依據(jù),組建模塊化的課程結構。

2.注重面向從業(yè)需求的教學實踐改革。面向從業(yè)需求,加強教學實踐環(huán)節(jié)是高校實驗教學改革的重要內容。目前很多高校與自己的合作企業(yè)簽訂培訓合約,建立人才基地,共同開發(fā)軟件和培訓人才、交流人才,是教學結合實際應用的最佳模式。圍繞著以企業(yè)需求為目標進行實驗教學,使學生在真實的項目流程中對軟件測試的完整過程與實施細節(jié)、管理機制與管理措施進行全面的了解,提高測試能力和積累測試經(jīng)驗,便于學生日后盡快適應實際工作,在專業(yè)技術崗位發(fā)揮人才作用。

3.注重培養(yǎng)學生的職業(yè)素養(yǎng)。高等教育為社會輸送專業(yè)技術人才,不能忽視對人才職業(yè)素養(yǎng)的培養(yǎng)。在教學過程中要把專業(yè)素養(yǎng)、技能訓練和職業(yè)素質培養(yǎng)有機結合起來。在學生實踐與實習過程中,注重培養(yǎng)學生綜合運用所學知識發(fā)現(xiàn)問題、分析問題、解決問題的能力,進而培養(yǎng)學生的技術應用和技術創(chuàng)新能力,并培養(yǎng)學生的團隊合作精神和相互協(xié)作能力,提高將來從事測試行業(yè)的職業(yè)素養(yǎng)。應結合社會對軟件工程師的崗位需求,設立面向畢業(yè)生的專項系列講座,為學生提供面試技巧培訓、競爭意識培訓、溝通與協(xié)作技巧培訓和就業(yè)指南等,是極具實效且必要的教育內容。依照國外標準,軟件測試工程師應與架構師處于同一等級。從事測試行業(yè)必須具備扎實的專業(yè)基礎、綜合的個人能力和較高的職業(yè)素養(yǎng),才能真正實現(xiàn)高端的自動化測試。

[參考文獻]

[1]朱少民.軟件測試方法和技術[M].北京:清華大學出版社,2005.

[2]錢麗.以就業(yè)為導向的軟件測試課程體系改革探析[J].科技信息,2012(1).

[3]頓煜卿.軟件測試教學過程中的思考和實踐[J].計算機光盤軟件與應用,2012(14).

篇4

案例教學是軟件測試教學中的常用手段,對學生理解測試方法有著很重要的作用,但是目前高校教學普遍存在著教學案例陳舊過時,大部分教學都沿用了傳統(tǒng)的教學案例。這些案例大都沒有介紹軟件測試的工程方法和實現(xiàn)過程,并且沒有進行難度的區(qū)分,很難達到好的教學效果。

本專業(yè)的教師經(jīng)過多年的實踐,總結了大量的教學經(jīng)驗,按照實際工作中典型的工程師團隊所需的各種技能知識為導向,按照復雜度漸增、螺旋遞進的原則設置卓越軟件工程師課程體系與內容,把傳統(tǒng)的以學科知識的系統(tǒng)性為導向的橫向課程體系改造為以個人職業(yè)角色發(fā)現(xiàn)和能力提升為導向的、適應團隊教育培養(yǎng)的新型縱向課程體系。軟件測試課程是軟件工程卓越工程師培養(yǎng)課程體系的重要組成部分,課程總體跟隨整體培養(yǎng)課程體系的大方向,并結合自身的特點進行建設。

1復雜度漸增式開設課程

在傳統(tǒng)的以面向開發(fā)為主的培養(yǎng)模式下,測試課程設置單一,知識針對性連貫性不強。為了解決這些問題,在專業(yè)課程開設過程中將軟件測試課程課程拆分,穿插到整個培養(yǎng)過程中,緊密聯(lián)系軟件工程其他階段的課程,并且使用案例貫穿所有階段,復雜度逐漸遞增,讓學生在學習過程中循序漸進,逐步建立學習的興趣和信心。在第5學期分成兩個階段分別開設《單元測試與軟件質量》和《軟件驗證與確認》。在第一階段旨在培養(yǎng)學生小規(guī)模程序測試的能力不涉及復雜系統(tǒng),以提高個人開發(fā)測試的基本能力為目標,學生可以運用測試課程中學習的方法在開發(fā)過程中使用,針對性強。第二階段旨在培養(yǎng)學生對系統(tǒng)整體測試的能力,此時學生以完成基本開發(fā)能力的訓練,其他相關課程的培養(yǎng)中也進入了系統(tǒng)級別。在該階段以上一階段培養(yǎng)的能力為基礎,提高復雜度,跟軟件開發(fā)其他階段緊密結合。完成第5學期的測試基礎課程開設之后,在第6學期還開設了《web軟件測試》、《測試案例分析》、《數(shù)據(jù)庫測試》等專業(yè)選修課,給有興趣的學生提供更多的學習選擇。

2基礎與實踐并重,充分利用虛擬實踐平臺課程

的開設充分考慮到測試重實踐,并且與軟件開發(fā)其他階段聯(lián)系緊密等特點;同時也考慮到了此時學生正處于學習階段,直接參與實際項目對學生的學習并不能起到很好的作用,因此在課程學習階段充分利用了校內軟件實訓基地,創(chuàng)建網(wǎng)上“虛擬企業(yè)”,引入企業(yè)管理模式,在這種虛擬平臺下,針對基礎的知識點開設虛擬項目[3],模擬軟件測試的真實工程環(huán)境。學生在自己組合團隊中有各自的工程任務,針對性實用性很強,學生能夠在完成自己任務的同時感性的認識測試崗位工作,體會到軟件測試在整個軟件開發(fā)過程中的作用,將單項知識技能之間關聯(lián)在一起,系統(tǒng)的運用專業(yè)知識和技能。

3采用螺旋式的案例教學,案例與其他軟件開發(fā)階段貫穿

篇5

關鍵詞:實訓體系;Android軟件開發(fā);培訓

中圖分類號:TP31 文獻標識碼:A 文章編號:1001-828X(2013)06-0-02

移動互聯(lián)網(wǎng)是繼通信、計算機和互聯(lián)網(wǎng)之后的又一次信息產(chǎn)業(yè)的革命性發(fā)展,并成為全球信息通信行業(yè)的萬億元級新興產(chǎn)業(yè)。近年來,由于3G技術的發(fā)展,國內智能手機的普及率急升,人才市場對于Android軟件開發(fā)工程師的需求量也急升,因此,如何快速地培養(yǎng)和建設Android軟件開發(fā)工程師,成為IT企業(yè)培訓的熱點。本文旨在探討IT企業(yè)如何通過實訓培訓體系的模式快速培養(yǎng)有計算機基礎的初學者成為相當于1-2年開發(fā)經(jīng)驗的開發(fā)工程師。

實訓體系建設包括獨特的實訓形式建設、實現(xiàn)過程的開展以及課程和師資的組建。其中,最根本的把握好實訓的內涵和監(jiān)控整個實訓過程的開展是關鍵。

一、實訓形式

實訓的特點就是通過項目實際操作的方式,使得每個學生通過做項目來鍛煉時間的編程能力。具體的形式為每個班的學生組成軟件項目組數(shù)個,每個項目組均以真實項目為背景,重新演練一個經(jīng)裁剪過的項目立項、計劃、需求分析、設計、編碼、測試和交付的全過程,按照企業(yè)的正規(guī)開發(fā)流程組織實施,讓學生熟悉軟件工程在企業(yè)中的具體應用方法。項目總監(jiān)由實訓老師來擔任,控制項目的進度和質量,學生通過直接扮演項目開發(fā)組中的成員角色,來了解在軟件項目開發(fā)團隊中的角色、過程、規(guī)范和執(zhí)行方法,以及在團隊中合作溝通能力的重要性,養(yǎng)成良好的職業(yè)習慣。以下是學生扮演的角色的主要職責說明,學生可以根據(jù)自己在學校的學習情況扮演如下角色??紤]到Android軟件開發(fā)工程師培訓的實際需要,項目開發(fā)過程中某些方面的學時將相對壓縮,而把重點放在跟開發(fā)直接相關的角色上面。

二、實訓過程

整個實訓過程包括實訓預備期和實訓期兩個階段。

實訓預備期:實訓的學生對Android課程體系中必須掌握的業(yè)界實用技術知識清單和相關課件進行學習,必要時進行相關課程的考試,考試合格者才能進入實訓環(huán)節(jié)。

實訓期:以模擬公司為平臺,以仿真的商業(yè)案例項目為載體,將企業(yè)文化及職業(yè)素養(yǎng)訓練、IT技能培訓、行業(yè)知識以及業(yè)務流程實踐等實訓內容完全貫穿在模擬公司的運營過程中,使學生在實踐中體驗企業(yè)工作環(huán)境,獲得一定的實際經(jīng)驗和職業(yè)磨練。

實訓師發(fā)放《項目實訓學生指導手冊》,手冊中規(guī)定了學生在項目Android軟件開發(fā)各階段的輸入、活動說明和輸出。實訓選擇的生命周期會覆蓋軟件開發(fā)過程的基本要素。其中有的要素在實訓中存在操作困難的,只講解方法并直接發(fā)放相關資料。

實訓中由實訓老師統(tǒng)一指導各階段的詳細過程指導?;具^程如下:

1)搭建環(huán)境:主要講解搭建各種手機操作系統(tǒng)所需開發(fā)環(huán)境所要具備的軟、硬件及網(wǎng)絡知識。包括計算機中各種硬件和接口。軟件的分類、分發(fā)和授權等方式;操作系統(tǒng)的初步知識;注冊表、病毒、安全等知識;基本協(xié)議、活動目錄等知識。從而讓學員可以在實際工作環(huán)境當中搭建需要的開發(fā)環(huán)境。

2)完成的軟件開發(fā)過程:主要講解實際項目的開發(fā)所涉及到的軟件開發(fā)過程的各個環(huán)節(jié),如需求開發(fā)、設計、測試、項目管理、配置管理等,并將其運用到實訓項目開發(fā)。

3)Android手機軟件應用開發(fā):這是本培訓課程的核心部分,主要是使學員掌握軟件開發(fā)的技術,掌握編程的方法、思想,了解軟件開發(fā)過程當中常犯的錯誤。課程注重實用性、重在培養(yǎng)學員對代碼分析的能力,掌握編碼規(guī)范,掌握調試知識和分析程序錯誤的能力。同時學習內存檢查工具和軟件配置管理等知識。課程中貫穿了一個開發(fā)項目,以增加學員開發(fā)項目的經(jīng)驗。

4)測試計劃與軟件缺陷:主要介紹軟件測試的基本概念和基礎知識、如何編寫測試計劃、識別軟件缺陷、編寫缺陷報告等。通過學習,學員可以掌握軟件測試的流程、軟件測試的策略和分類,掌握缺陷的分類和優(yōu)先級等,從而對測試有一個整體的認識。介紹了缺陷跟蹤管理系統(tǒng)(測試工具)??傮w來說,本課程將使學員掌握軟件測試相關的大部分基礎知識。

5)數(shù)據(jù)庫:通過對數(shù)據(jù)庫基礎知識的講解,讓學員掌握這些技術。數(shù)據(jù)庫是以主流的Oracle和MySQL 數(shù)據(jù)庫的運用為主。

6) 職業(yè)導向訓練:進行職業(yè)引導,包括就業(yè)指導和職前引導。通過座談會等輔助訓練明確就業(yè)方向,進一步了解職業(yè)發(fā)展形式。

三、實訓課程設計和引進

A.參考國內外IT知名企業(yè)現(xiàn)有已取得各地區(qū)政府認同的移動應用軟件開發(fā)培訓課程體系,以移動應用行業(yè)應用的實際需求為導向,自主研究開發(fā)適合本地企業(yè)的Android軟件開發(fā)方面的案例及課件。

B.結合需要引進其他國內一流的成功Android軟件開發(fā)培訓課程體系。

C.培訓實例設計:根據(jù)大多數(shù)軟件開發(fā)企業(yè)的實際需求,以多個實際項目為原型開發(fā)出具有實戰(zhàn)意義的案例。

D.企業(yè)培訓定制:企業(yè)培訓必須密切結合企業(yè)戰(zhàn)略,從企業(yè)的人力資源規(guī)劃和開發(fā)戰(zhàn)略出發(fā),滿足組織及員工兩方面的要求,考慮企業(yè)資源條件與員工素質基礎,考慮人才培養(yǎng)的超前性及培訓效果的不確定性,為企業(yè)確定員工培訓的目標,選擇培訓內容及培訓方式。

四、師資隊伍建設和引進

在內部培養(yǎng)培訓講師和實訓導師的同時,我們還將根據(jù)課程需要積極引進高端的Android培訓講師,包括網(wǎng)絡通訊、Android應用開發(fā)等各領域的高端實戰(zhàn)人才,建設一支實戰(zhàn)經(jīng)驗、培訓經(jīng)驗俱佳的師資隊伍。

五、制定Android軟件開發(fā)工程師培訓大綱

Android軟件開發(fā)就業(yè)培訓大綱由多名資深移動應用軟件開發(fā)專家及有豐富Android實戰(zhàn)經(jīng)驗的工程師傾力開發(fā)而成,在本實訓項目里將得到充分的貫徹執(zhí)行。該課程總結了Google、中興、華為、HTC、摩托羅拉、IBM等頂級國內、跨國大型企業(yè)的先進的軟件開發(fā)理論和經(jīng)驗,在此基礎上形成了一套適合我國國情的Android軟件培訓課程。目的是將優(yōu)秀企業(yè)完善的Android軟件開發(fā)技術和方法等推廣到國內的軟件產(chǎn)業(yè),以提高廣州本地軟件企業(yè)的Android應用軟件開發(fā)水平,改進開發(fā)方法和方式。

Android軟件開發(fā)培訓采用教師授課和學員實際練習相結合的方式。針對每個培訓的章節(jié),在課程中都會提供豐富的項目實踐案例,使每個學員不僅能夠學到Android軟件開發(fā)的一些基本理論知識,重要的是能夠讓學員將學到的知識運用到實際的移動應用軟件開發(fā)活動過程中。

本Android軟件開發(fā)就業(yè)培訓大綱主要由三大部分組成:

基礎階段:主要闡述了一個Android軟件開發(fā)工程師需要了解和掌握的入門知識,包括Android開發(fā)編程語言基礎,主流數(shù)據(jù)庫開發(fā)技術,以及一些必要工具的使用,是邁入Android軟件工程師職業(yè)必備的一些基礎知識。

中級階段:主要闡述了一個Android軟件開發(fā)工程師需要掌握的常用的通信協(xié)議,整套主流的應用服務器和中間件編程技術,數(shù)據(jù)訪問層框架技術,并幫助深入理解軟件工程過程。

高級階段:通過一個個具體的項目案例,將上面提到的技術、方法、度量、文檔和過程相結合,掌握Android移動應用系統(tǒng)開發(fā)技術,包括Android環(huán)境下的音視頻多媒體處理、游戲技術開發(fā)、底層核心架構技術等,并進行項目開發(fā)實戰(zhàn)。了解不同設計模式與運用、軟件性能調優(yōu)、軟件過程管理等。

篇6

關鍵詞:工程實踐;軟件工程;CDIO

文章編號:1672-5913(2017)05-0030-04

中圖分類號:G642

0 引 言

工程教育的目的是將學生培養(yǎng)成為“整裝待發(fā)”的工程師,也就是在其從事職業(yè)前具備較好的工程能力和深厚的技術基礎知識。為了達到這個目標,工程教育者的任務就是不斷地改進本科工程教育的質量和內涵。CDIO教學模式改革了工程教育,教育學生理解如何在一個現(xiàn)代團隊環(huán)境下構思―設計―實施―運行復雜的、具有高附加值的工程產(chǎn)品、過程和系統(tǒng)[1]。隨著社會信息化的不嚳⒄梗各行各業(yè)對軟件的需求也越來越多,各種應用軟件的復雜性和規(guī)模不斷增加,導致軟件企業(yè)亟需大量的能夠構思、設計、實施和運行復雜軟件系統(tǒng)的人才。軟件企業(yè)對所需人才的要求與CDIO的培養(yǎng)標準是相符合的。然而,目前一些高校的軟件工程專業(yè)畢業(yè)生并不具備這種CDIO能力,因此目前軟件工程專業(yè)的培養(yǎng)標準、培養(yǎng)方案和課程體系有必要根據(jù)CDIO的培養(yǎng)標準進行調整[2]。

工程性和實踐性是軟件工程專業(yè)的主要特點。 CDIO工程教育強調學生工程實踐能力的重要性。軟件工程專業(yè)的實踐教學環(huán)節(jié)主要分為3類:第1類是理論課程內的實驗或上機;第2類是工程實踐類課程(或稱為課程設計類課程);第3類是畢業(yè)設計和實習。軟件工程專業(yè)的工程實踐類課程沒有理論授課,全部都是實驗或上機課,主要是培養(yǎng)學生的應用理論知識解決實際問題能力和工程實踐動手能力,在整個軟件工程專業(yè)的實踐教學體系中占據(jù)著非常重要的一個位置[3-4]。

1 基于CDIO的工程實踐類課程培養(yǎng)標準的制訂

根據(jù)CDIO教學大綱,CDIO培養(yǎng)標準指標共分為三級,其中一級指標4個,分別是技術知識和推理,個人能力、職業(yè)能力和態(tài)度,人際交往能力、團隊工作和交流,在企業(yè)和社會環(huán)境下構思、設計、實現(xiàn)、運行系統(tǒng)的能力。每個一級指標又分為很多二級指標,二級指標又分為若干三級指標[1-5]。結合CDIO培養(yǎng)標準和成都信息工程大學軟件工程學院軟件工程專業(yè)的培養(yǎng)目標,我們制定了軟件工程專業(yè)的培養(yǎng)標準,其中與工程實踐類課程相關的培養(yǎng)標準見表1。工程實踐類課程主要培養(yǎng)學生的以下幾方面的能力:①應用核心軟件工程基礎知識的能力;②工程推理和解決問題的能力;③進行工程實踐所需的個人能力;④團隊合作能力;⑤人際交流能力;⑥系統(tǒng)的構思與工程化能力。

2 軟件工程實踐類課程體系的構建

基于CDIO的工程實踐類課程培養(yǎng)標準對現(xiàn)有的工程實踐類課程進行改革,重新構建工程實踐課程群,總共包括4門課程:工程實踐I(編碼訓練)、工程實踐II(軟件技術)、工程實踐III(軟件測試)和工程實踐IV(綜合訓練)。這4門課程的學時、學分、執(zhí)行學期和培養(yǎng)標準見表2。這4門課分別設置在不同的學期,每門課的學時都是32學時(2學分),每門課程的培養(yǎng)標準三級指標都根據(jù)表1中的培養(yǎng)標準設定。

工程實踐類課程群的構建思想:①學生通過工程實踐類課程的學習,能夠達到表1中的能力要求,因此所有工程實踐課程的培養(yǎng)標準加起來能夠完全覆蓋表1中的培養(yǎng)標準三級指標;②按照軟件工程由底向上、循序漸進的模式,構建工程實踐課程群。

在第3學期,首先開設的是工程實踐I(編碼訓練)課程,重點培養(yǎng)學生的基本編程功能, 培養(yǎng)學生應用所學的C語言程序設計、面向對象程序設計(C#或Java)、數(shù)據(jù)結構等課程專業(yè)基礎知識解決實際問題的能力和動手編程能力。工程實踐I課程為后續(xù)的3門工程實踐課程打下實踐基礎。

在第4學期,開設的是工程實踐II(軟件技術)課程,重點培養(yǎng)學生使用高級程序設計語言(JSP、等語言)和數(shù)據(jù)庫技術(Oracle、SQL Server等)進行Web編程的能力和初步軟件設計能力,同時培養(yǎng)學生對已有軟件的需求分析能力以及對設計文檔的閱讀和理解能力。

在第5學期,開設的是工程實踐III(軟件測試)課程,重點培養(yǎng)學生制訂測試計劃、設計測試用例、實施測試方案等基本的測試技能,為學生進入企業(yè)從事軟件測試工作奠定堅實的實踐基礎。

在第6學期,開設的是工程實踐IV(綜合訓練)課程,通過一個中型軟件工程項目的完整開發(fā),學生經(jīng)歷需求分析、概要設計、詳細設計、程序編碼、程序測試及集成運行全過程,培養(yǎng)軟件項目構思、設計、實現(xiàn)和運行系統(tǒng)的基本能力,在企業(yè)和社會環(huán)境下,能夠參與或組織一個完整軟件項目的全生命周期工作,包括軟件的需求、設計、實現(xiàn)、測試、維護等工作[4]。

3 工程實踐類課程的教學主要內容和實施

所有的工程實踐課程都圍繞該課程的培養(yǎng)標準進行課程教學內容的設計和實施,課程的教學內容應該完全覆蓋該課程培養(yǎng)標準三級指標,使學生通過該課程的學習,能力能夠達到培養(yǎng)標準所要求的水平。所有的工程實踐課程都是以項目驅動型教學方法為主,教師以一套項目案例展開教學活動,學生參考案例模板,按軟件工程流程完成自己的項目。除了工程實踐課程I,其他的工程實踐課程都以小組為單位(4~6人組成一個小組)完成課程作業(yè)。每個工程實踐課程都要求項目答辯,一人一辯。通過項目答辯可以考查和評估學生所做系統(tǒng)的效果以及學生的項目設計、實現(xiàn)、測試、集成等能力,還可以鍛煉學生的口頭表達能力和交流能力。每個課程項目答辯在課程最后階段進行,一般需要8~12學時完成。

工程實踐I (編碼訓練)課程的主要教學內容:①每名學生選擇一個小型軟件項目(或者老師指定一個項目),制訂項目開發(fā)計劃;②對項目進行初步分析和設計,完成程序模塊劃分和設計,撰寫程序設計文檔;③學習程序編碼規(guī)范,編寫符合編碼規(guī)范的程序代碼;④程序調試和測試;⑤完成項目答辯;⑥編寫課程總結報告,提交項目成果。

工程實踐II(軟件技術)課程的主要教學內容:①任課教師提供多個信息管理系統(tǒng)軟件的需求分析、功能結構設計、數(shù)據(jù)庫設計等資料供學生選擇,以選擇好的項目作為后期功能實現(xiàn)及評價的依據(jù);②學生小組根據(jù)項目資料,在規(guī)定時間內完成軟件項目的原型設計,提交中間成果(功能設計文檔和系統(tǒng)原型);③根據(jù)系統(tǒng)項目文檔及前期做的原型,完成對應系統(tǒng)的編碼及具體實現(xiàn),小組成員分工合作,由小組長負責組織協(xié)調,要求每個學生至少完成一個相對完整的功能模塊設計與開發(fā);④每名學生分別講述自己完成項目的工作情況和實現(xiàn)方式,進行項目答辯。

工程實踐III(軟件測試)課程的主要教學內容:①教師給定一個待測試軟件系統(tǒng)的需求、設計文檔以及源代碼,學生分組閱讀理解該系統(tǒng)的文檔和源代碼,按規(guī)范格式編寫軟件測試計劃書;②學生根據(jù)軟件測試計劃書進行測試用例設計;③學生根據(jù)測試用例設計書,按步驟執(zhí)行測試用例,記錄測試結果;④學生分析軟件缺陷分布狀況和測試結果,按軟件測試總結報告要求編寫軟件測試總結報告,提交相關文檔;⑤每名學生進行項目答辯。

工程實踐IV(綜合訓練)課程的主要教學內容:①學生以小組為單位,自選一個中型軟件項目系統(tǒng)題目(或老師指定一個題目),進行文獻檢索、資料查詢,按規(guī)范格式編寫需求規(guī)格說明書;②根據(jù)需求規(guī)格說明書,按規(guī)范格式進行數(shù)據(jù)庫設計和模塊功能設計,小組共同完成概要設計說明書;③每名學生根據(jù)概要設計說明書,按規(guī)范格式完成所分配模塊的詳細設計說明書;④每名學生根據(jù)詳細設計說明書,按照編碼規(guī)范完成自己所分配模塊的代碼編寫;⑤每名學生按標準文檔格式記錄測試結果,提交測試文檔;⑥學生以團隊為單位,完成項目集成,提交源代碼;⑦每名學生進行項目現(xiàn)場演示及項目答辯。

4 考核方式

所有的工程實踐課程均采用過程化考核方式,除了平時表現(xiàn)(包括考勤、課堂表現(xiàn)和小組討論)之外,每門課程都設置很多中間過程考核環(huán)節(jié)。每個中間過程考核環(huán)節(jié)要求學生提交至少一個成果物(文檔或程序),每門課程最后都要進行項目答辯,一人一辯,因此一名學生的課程最終成績由平時表現(xiàn)成績+中間成果物成績+項目答辯成績構成。中間成果物要求至少有3項,不同課程的中間成果物不一樣,以工程實踐IV課程為例,其中間成果物包括需求規(guī)格說明書、概要設計說明書、詳細設計說明書、單元測試、代碼編寫和項目集成。每個課程的考核環(huán)節(jié)都要覆蓋該課程的培養(yǎng)指標,表3是工程實踐IV課程考核環(huán)節(jié)與考核指標的對應關系,所有考核環(huán)節(jié)覆蓋的三級培養(yǎng)標準加起來要能夠完全覆蓋該門課程的三級培養(yǎng)指標,項目答辯的成績不低于15%。

5 結 語

從4年的教學實踐來看,課程改革的效果良好。經(jīng)過調研,很多學生反映通過工程實踐類課程學習,他們的需求分析、設計、實現(xiàn)、測試、集成等能力增強;很多企業(yè)雇主也非常認可這種工程實踐類課程的教學模式,認為對提升學生的工程實踐能力有很大幫助。當然,這種基于CDIO的工程實踐類課程教學模式還需要根據(jù)畢業(yè)生、企業(yè)雇主、第三方教育評估機構的追蹤調查反饋信息不斷完善,這也是我們下一步的研究工作。

參考文獻:

[1] Crawley E F, Malmqvist J, ?stlund S, et al. Rethinking engineering education: The CDIO approach[M]. 北京: 高等教育出版社,2009: 5-40.

[2] 澎, 熊耀華, 周慧. 基于CDIO模式的軟件工程實踐教學課程建設的研究[J]. 軟件工程, 2016(1): 1-3.

[3] 厲小軍, 謝波. 軟件工程實踐課程教學改革探索[J]. 計算機教育, 2012(3): 106-110.

篇7

關鍵詞:CMMI;軟件人才培養(yǎng);課程改革

中圖分類號:G4 文獻標識碼:A 文章編號:1672-3198(2011)04-0233-02

1、前 言

全球經(jīng)濟一體化的浪潮給我國帶來了大量的服務外包業(yè)務,給軟件企業(yè)提供了難得的發(fā)展機遇,特別是中小規(guī)模的軟件企業(yè)。軟件企業(yè)在承接軟件外包業(yè)務時,面臨軟件的工程規(guī)范和技術規(guī)范及軟件質量管理等人才短缺的困境。我國軟件人才的現(xiàn)狀如下:

(1)層次結構。按國際的管理模式和成功經(jīng)驗公認的最合理的人才搭配比為1(高):5(中):50(低),常稱為“金字塔”。從我國統(tǒng)計數(shù)據(jù)來看,現(xiàn)在軟件人才的結構呈“橄欖型”,非常急需兩端人才,能進行項目研究和管理的領軍人物,及訓練有素的編碼和測試藍領。同時,每年各種軟件專業(yè)畢業(yè)的研究生、本科生、大專生數(shù)量很大,但就業(yè)率和對口率較低,其中,中端人才的低端化使用導致軟件行業(yè)基礎人才不穩(wěn)固,而高職類低端人才因缺乏訓練而入職難,這其中不乏培養(yǎng)失衡等多種問題。

(2)質量結構。我國當前的教育模式下,難以培養(yǎng)大量掌握符合國際標準的軟件工程規(guī)范和技術規(guī)范的編碼人才;也難以培養(yǎng)既掌握軟件開發(fā)技術、又熟悉軟件過程管理的中層項目管理人才;更難以培養(yǎng)能緊跟世界前沿技術動態(tài)和趨勢、熟悉軟件工程管理、具有行業(yè)應用知識的專業(yè)化、復合化、國際化的頂層人才。也未能給軟件從業(yè)人員提供一條明確、可望的職業(yè)成長路徑。

2008年后,各地方政府推出了實施CMMI(能力成熟度模型集成)的鼓勵政策后,激發(fā)了中小軟件企業(yè)參與CMMI評估的熱情。通過CMMI評估,可不斷吸取國外的成功經(jīng)驗,這不僅是企業(yè)發(fā)展壯大、在同行競爭中取勝的重要因素,也是提高軟件企業(yè)資質和具備國際競爭力的必由之路。

2、CMMI簡介

CMMI由卡耐基,梅隆軟件工程學院提出,源自美國政府和軍工軟件企業(yè)的一些成功實踐,融合了全面質量管理的思想,為軟件企業(yè)的過程改進提供了標準,為軟件企業(yè)的項目管理提供了方向。CMMI是對于軟件組織在定義、實現(xiàn)、度量、控制和改善其軟件過程的進程中各個發(fā)展階段的描述,它通過5個不斷進化的層次級別來評定軟件生產(chǎn)的歷史與現(xiàn)狀,幫助組織探索一個保證軟件產(chǎn)品質量、縮短開發(fā)周期、提高工作效率的軟件工程模式與標準規(guī)范。

美國、日本等國家的軟件企業(yè)先后掀起了質量熱潮,質量控制小組遍及全國,不斷積累和分享過程改進的經(jīng)驗。印度在實施CMMI方面也取得了極大的成功,其軟件業(yè)借助規(guī)范的管理進入國際市場,并逐步發(fā)展壯大。我國軟件業(yè)在不斷吸取國外的成功經(jīng)驗,參照CMMI規(guī)范,結合中國及企業(yè)現(xiàn)實,努力探索規(guī)范有效的軟件開發(fā)過程,企業(yè)通過實施CMMI取得了一定的成效,如促進了規(guī)范化管理、提高了項目控制能力和產(chǎn)品質量等。

3、CMMI在軟件綜合實訓中的實施

3.1應用思想

軟件過程是人員密集和設計密集的作業(yè)過程:若缺乏有素訓練,就難以建立起支持實現(xiàn)成功軟件過程的基礎,軟件質量的提高亦將難以取得成效。企業(yè)通過CIVIMI評估工作優(yōu)化了企業(yè)開發(fā)流程,改善現(xiàn)有的工作方法,從無序的混沌過程向訓練有素的成熟過程演進,這涉及到團隊的每一個成員。

軟件及外包企業(yè)實施項目過程管理和質量全程監(jiān)控,需要員工能快速融入相應的管理模式中。軟件專業(yè)畢業(yè)的學生若要到實施CMMI的團隊中工作,他們缺乏要在什么樣的過程管理中如何去開發(fā)一個項目的能力,不明確工程化、工業(yè)化和標準化開發(fā)的工作內容、工作方法、工作過程又是怎樣的。學生需要教師引導思考工程化、項目化管理等相關問題,按照“學習的內容是工作”、“通過工作來學習”新職業(yè)教育理念,將學習目標和和工作目標有機地結合在一下起,由教師指導學生完成“工作任務”,在“工作過程”中理解和應用CMMI的核心思想,解決工程化、工業(yè)化和標準化開發(fā)問題,在軟件開發(fā)和項目管理過程中成長。

3.2實施內容

針對高職生的認知水平,學生不具備需求分析與系統(tǒng)設計的能力,工作按CMMI3的過程要求,刪除需求開發(fā)、技術預研、系統(tǒng)設計、決策分析等過程,但強調需求變更的控制過程,由教師模擬客戶在適當時機提出不同的變更,變更后的需求、設計等的修改工作由學生完成,逐漸培養(yǎng)其分析和設計的能力。

學生用二個月的時間完成一個信息管理系統(tǒng),如OA系統(tǒng)、供應鏈系統(tǒng)、ERP系統(tǒng)等,教師提供需求定義、概要設計、數(shù)據(jù)庫設計、項目編碼規(guī)范、技術解決方案和CMMI的相關模板等文檔,并提供需求變更等軟件開發(fā)和項目管理過程真實的情景。

綜合實訓班級共30名學生,分成3組,每組10人,5名開發(fā)工程師和5名測試工程師,再在每個組中安排學生兼任配置管理員、質量保證工程師、度量分析師、需求分析師、系統(tǒng)設計師、界面設計師、數(shù)據(jù)庫管理員、項目實施工程師崗位的工作,教師擔任各組的項目經(jīng)理。

3.3重點環(huán)節(jié)

應用CMMI于綜合實訓中,強調過程監(jiān)控與管理,規(guī)范的項目管理體系和科學的課程實訓方案保障了綜合實訓的質量。

(1)項目策劃與監(jiān)控。

讓學生學會任務進度的分解、工作量的估計、項目計劃的制訂、按計劃實施項目并周期性跟蹤實施情況、保證項目順利進行。具體包括:團隊共同選擇生命周期,定義項目過程,對項目組成員進行分工,明確崗位和各自的職責;項目經(jīng)理根據(jù)項目范圍制定產(chǎn)品的任務進度分解,根據(jù)產(chǎn)品規(guī)模進行工作量估計;按分工崗位分別制訂項目支撐的軟件測試計劃書,項目經(jīng)理整合《計劃書》;各成員正確填寫《工作日志》,項目經(jīng)理填寫《工作周報》等,收集進度、工作量等數(shù)據(jù),分析項目狀況,糾正問題和控制偏差,周期性地跟蹤項目計劃的各種數(shù)據(jù)從而實施監(jiān)控。

(2)項目支撐。

讓學生學會在項目實施過程中進行配置管理、度量分析、同行評審及質量保證,規(guī)范開發(fā)過程。具體包括:配置管理員制訂配置計劃,維護項目的配置管理系統(tǒng),分配權限和標識整個產(chǎn)品生命周期的配置項和版本等,控制配置項的變更,提交《配置狀態(tài)報告》等;度量分析工程師制訂度量分析計劃,定期采集數(shù)據(jù)填寫《度量數(shù)據(jù)采集表》等,協(xié)助項目經(jīng)理進行綜合度量分析,填寫《項目總結報告》,對定量化的過程加以理解、評估;質量保證工程師制訂質量保證計劃,進行各階段的產(chǎn)品評審,執(zhí)行過程檢查評審,與項目經(jīng)理一起組織同行評審,建立并維護質量保證記錄,跟蹤不符合問題及處理情況,直至解決,提交《質量保證周報》等。

(3)系統(tǒng)實現(xiàn)與軟件測試。

讓學生按規(guī)范化的方法進行軟件產(chǎn)品開發(fā),驗證產(chǎn)品的功能是否達到了設計要求。具體包括:軟件開發(fā)工程師熟悉項目編碼規(guī)范和技術解決方案等,并搭建開發(fā)環(huán)境,根據(jù)需求與設計文檔進行編碼,編寫單元測試用例,對已實現(xiàn)

的產(chǎn)品進行單元測試,盡可能多和早地發(fā)現(xiàn)并解決問題,并編寫《用戶使用手冊》;測試工程師編寫《系統(tǒng)測試用例》,執(zhí)行測試工作,填寫《BUG票》和《測試匯總表》,修復后再進行回歸測試確認,保證產(chǎn)品的質量,最后完成《測試報告》。

(4)需求變更控制。

讓學生認識在項目開發(fā)過程中需求管理的重要性,需求變更時如何進行項目的各項管理,在保證客戶需求的前提下并保證項目的質量和進度。具體包括:教師模擬客戶代表提出需求變更,在客戶與開發(fā)方之間建立對需求的共同理解,需求分析師填寫《變更申請單》,更新需求文檔,項目經(jīng)理組織項目組進行需求變更評審;依據(jù)更新的需求文檔,團隊各成員對后續(xù)設計、開發(fā)、測試等工作產(chǎn)品進行相應的變更,并維護《需求跟蹤矩陣》,保證需求與相關工作產(chǎn)品的一致性。

3.4考核與評價

按形成性考核模式對學生的工作過程和工作成果進行考核,在考核中不僅是要求完成任務,更注重的是在每個階段學生有效的提升個人能力,教師將進行針對性輔導。每個階段活動95%學生達到合格標準后,再進入下一個階段的實施,直至項目完成。考核與評價以自評和互評為主,項目教師在各階段幫助學生進行總結,通過總結,有效地提高學生的管理能力,培養(yǎng)職業(yè)化意識。

3.5實施成效

通過結合CMMI進行軟件綜合實訓,學生掌握工作的流程和方法,能認同和融入企業(yè)文化和企業(yè)管理方式,樹立項目意識、質量意識和工期意識,增強團隊間的溝通及協(xié)作能力,能養(yǎng)成良好的工作規(guī)范、工作習慣、工作作風和工作意識,并且在工作的過程中有掌握不斷更新技術的學習能力,提高了學生的職業(yè)能力和素質,增強了就業(yè)競爭能力,縮短企業(yè)的培訓時間和成本,學生進入企業(yè)頂崗實習后就業(yè),能更快的融入到企業(yè)的團隊工作中。

4、軟件人才培養(yǎng)的思考

要將學生培養(yǎng)成為訓練有素的準員工,進入企業(yè)后能與團隊共同持續(xù)地進行軟件過程改進,以適應軟件企業(yè)所面對的動態(tài)環(huán)境。在人才培養(yǎng)機制上還應深化校企合作,注意處理兩方面問題。

(1)學校不能對“企業(yè)培訓最后一公里”過度依賴,從而增加學生學習成本、政府扶持成本、企業(yè)用人風險,也難以系統(tǒng)培養(yǎng)適用的高素質人才。學校需要改變與企業(yè)的合作模式,以“工作過程導向”改造專業(yè)和改革課程,采用多種方式,讓學生在校學習過程中實踐鍛煉,逐漸積累軟件開發(fā)、項目管理、質量控制的經(jīng)驗,提高實戰(zhàn)能力。

(2)企業(yè)應提供行業(yè)知識和項目經(jīng)驗,幫助培養(yǎng)師資、改革教學模式和教學體系、安排學生實習,真正實現(xiàn)學校、企業(yè)的互聯(lián)互動,探索產(chǎn)學研用結合的工程教育新模式,做到學校與企業(yè)的無縫鏈接、相互滲透,創(chuàng)造學校、學生和企業(yè)多贏的局面。

由此可見,在軟件專業(yè)按照“工作過程導向”模式構建專業(yè)課程體系,根據(jù)職業(yè)能力的階梯性和學習規(guī)律的漸進性,學習過程從軟件的單元設計到項目開發(fā),最后到項目管理。而第五學期的校內綜合實訓和第六學期的企業(yè)頂崗實習,學生通過CMMI的項目管理模式下的軟件開發(fā)積累經(jīng)驗,有利于實現(xiàn)學校到企業(yè)的無縫銜接。

參考文獻:

[1]2009軟件人才(成都)需求分析報告[R],成都信息化辦公室,2009,(4)

[2]史秋實,論劍中國軟件外包振興之道[EB/OL],http://chinaso-urcmg.mofcom.省略/content2,jsp?id=58860,2009

[3]張萬軍,儲善忠,基于CMMI的軟件工程教程[M],北京:北京交通大學出版社,2008:1-5

篇8

在軟件外包人才培養(yǎng)方案中,強化學生的IT基本素質,以真實項目模擬演練為主,在實踐中掌握專業(yè)技能知識。高職院校與企業(yè)緊密結合,培養(yǎng)真正企業(yè)需要的,具有較強實踐能力軟件開發(fā)人才。

關鍵詞:關鍵外包;才人培養(yǎng);設計研究

1.關于軟件外包

軟件外包就是企業(yè)為了專注核心競爭力業(yè)務和降低軟件項目成本,將軟件項目中的全部或部分工作發(fā)包給提供外包服務的企業(yè)完成的軟件需求活動。一個軟件開發(fā)項目通常要經(jīng)歷需求分析、設計、編程、測試等幾個大的階段。

其中設計又包括整體設計、系統(tǒng)設計、詳細設計幾個環(huán)節(jié)。詳細設計將軟件開發(fā)過程分割成各個不同的模塊,然后對這些模塊進行編程,到了編程階段時,大量工作需要軟件編碼人員來完成。軟件最后的測試是一個復雜過程,包括單元測試、系統(tǒng)測試、總體功能測試,期間由測試編程工程師編寫測試工具,制定測試規(guī)則,完成測試的任務。

現(xiàn)代的軟件開發(fā)工程是將整個軟件開發(fā)過程明確的劃分為幾個階段,將復雜問題具體按階段加以解決。這樣,在軟件的整個開發(fā)過程中,可以對每一階段提出若干明確的監(jiān)控點,作為各階段目標實現(xiàn)的檢驗標準,從而提高開發(fā)過程的可見度和保證開發(fā)過程的正確性。

2.軟件外包人才的崗位需求

據(jù)商務部統(tǒng)計2009年我國共簽訂服務外包合同6萬多份,信息技術外包(ITO)是服務外包的主要方式,合同協(xié)議金額超過100億美元。

軟件外包,需要方方面面的人才,其中包括:架構師、需求分析師、項目經(jīng)理、程序員、界面設計師、測試員、售前售后工程師等,高等職業(yè)教育針對企業(yè)對崗位的需求,利用自身的優(yōu)勢,在充分提高學生的外語水平的基礎上,培養(yǎng)基礎型軟件技術開發(fā)人才,基本能力要求是代碼編寫和技術文檔處理,以團隊成員和項目經(jīng)理共同完成軟件開發(fā)設計,具備較強的專業(yè)技術能力和表達溝通能力。

3.軟件外包人才培養(yǎng)目標

    軟件外包人才培養(yǎng)目標是中級和一般軟件人員,重點是培養(yǎng)動手能力和解決問題的能力。學生參加工作后,經(jīng)過很短的時期就應該能進入角色,直接擔當承接離岸、近岸和在岸外包業(yè)務企業(yè)中的軟件編碼和測試的工作。通過掌握計算機軟件外包開發(fā)和軟件工程的知識與技能,熟練使用英語或日語進行交流,熟悉歐美及日本等文化特點,從事外包的企業(yè)軟件開發(fā)、調試、運行、測試、維護及質量管理等技術工作。

從知識結構來看,應具備計算機的基礎理論知識,精通一類程序設計技術,如Java或.net,精通一門外語,如英語或日語,熟悉軟件開發(fā)流程和軟件開發(fā)規(guī)范,熟悉軟件開發(fā)各個階段涉及的文檔和資料。

從能力結構看,不僅具備程序設計和邏輯思維能力,而且還應具備包括文字輸入的基本技能和圖文圖表的信息處理能力,精通程序設計語言和數(shù)據(jù)庫知識,閱讀或編制各級各類的軟件開發(fā)文檔。

4.軟件人才培養(yǎng)方案設計

對于高職類的學生,畢業(yè)后從事的崗位注重于技術操作,軟件技術專業(yè)的學生可以在與軟件技術相關的公司從事軟件的代碼編寫與測試,培養(yǎng)具有良好的科學素養(yǎng),專業(yè)基礎理論扎實,掌握數(shù)據(jù)庫的應用技術和編程語言技術,掌握軟件自動化測試技術和技巧、能實現(xiàn)規(guī)模化軟件測試。

(1) 穩(wěn)固基礎

高職學院由于學時所限,不能安排更多的理論課時進行教學,但基礎課仍然是必不可少。作為??茖W生,首先也屬于有知識、有技能的社會有用之才,才能不僅體現(xiàn)在技術水平,也力求掌握各方面的基本能力。外語學習強調聽說讀寫全面發(fā)展,重點培養(yǎng)使用外語的能力,而不是應付考試,也有利于將來工作中的在職學習,為自己創(chuàng)造更大的發(fā)展空間。

提高學生的實踐能力,保障足夠的學生實踐操作時間,通過IT素養(yǎng)方面的教學,讓學生能熟練地使用計算機和網(wǎng)絡設備,還包括常用軟件的安裝和使用方法,局域網(wǎng)和互聯(lián)網(wǎng)的使用方法。這些基本技能訓練可以使學生在后續(xù)學習中對周圍的信息工具運用自如,以更好地學習其他課程。

(2)與企業(yè)共建實訓室

    充分利用學院的實訓設備,引進企業(yè)文化,搭建項目開發(fā)的實際工作環(huán)境,真實地再現(xiàn)企業(yè)軟件開發(fā)過程中的各個環(huán)節(jié)。遵循國際化軟件工程的開發(fā)流程的要求,總體規(guī)劃基于需求分析、軟件設計、軟件編碼、軟件測試、質量保證、軟件等環(huán)節(jié)的功能區(qū)域。

結合各種成熟的行業(yè)開發(fā)項目,在真實的特定軟件開景中,將企業(yè)級的軟件開發(fā)過程在實訓室展現(xiàn),讓學生自己通過對項目的理解進行分析,分配學生在團隊開發(fā)中的角色和地位,培養(yǎng)規(guī)范化的開發(fā)規(guī)范。

(3)項目教學法

所謂項目教學法是通過項目的形式進行教學。為了使學生在解決問題中習慣于一個完整的方式,所設置的項目包含多門課程聯(lián)合的知識,在老師的指導下,將一個相對獨立的項目交由學生自己處理,實施信息的收集和方案設計,項目實施及評價由學生自己負責,學生通過該項目的進行,了解并把握整個過程及每一個環(huán)節(jié)中的基本要求。

在項目教學中,學習過程成為一個人人參與的創(chuàng)造實踐活動,注重的不是最終的結果,而是完成項目的過程。學生在項目實踐過程中,理解和把握課程要求的知識和技能,體驗創(chuàng)新的艱辛與樂趣,培養(yǎng)分析問題和解決問題的思想和方法。在外包軟件開發(fā)的過程中,首先要了解項目的需求,讀懂系統(tǒng)設計和詳細設計的文檔,熟悉軟件開發(fā)的流程,聯(lián)系已學的聯(lián)合課程的各種知識,完成軟件編碼設計任務和軟件測試任務,學生在各個項目小組中通過實際參與,訓練其在實際工作中與不同的人進行協(xié)調、合作的能力。 改變從被動“教”到主動“學”的教學模式,創(chuàng)造了學生主動參與、自主協(xié)作、探索創(chuàng)新的新型教學模式。

在項目教學法的具體實踐中,教師的作用不再是一部百科全書或一個供學生利用的資料庫,而成為了一名向導和顧問。幫助學生在獨立研究的道路上迅速前進,引導學生如何在實踐中發(fā)現(xiàn)新知識,掌握新內容。學生作為學習的主體,通過獨立完成項目把理論與實踐有機地結合起來,不僅提高了理論水平和實操技能,而且又在教師有目的地引導下,培養(yǎng)了合作、解決問題等綜合能力。同時,教師在觀察學生、幫助學生的過程中,開闊了視野,提高了專業(yè)水平??梢哉f,項目教學法是師生共同完成 項目,共同取得進步的教學方法。在職業(yè)學校、職業(yè)教育中,項目教學法有其獨特的優(yōu)勢,應更進一步總結提高,大力試用推廣。

(4) 模擬真實

課程中的細節(jié)來自現(xiàn)實業(yè)界的個案研究作為問題設置的依據(jù),這確保了學生能夠熟悉典型的企業(yè)中各組織機構的功能,這使學員在今后的職業(yè)生涯中,能無障礙地為這些組織機構提供軟件開發(fā)問題的解決方案。這意味著學員在課程結束之后,不僅在技能知識方面,而且在將知識應用于不同的商業(yè)領域方面都將獲得更大的信心。在所有的課程中,這些概況都可以用作問題討論和實踐的背景知識。

在教學過程中模擬一個真實軟件開發(fā)環(huán)境的基礎上,以基于問題、基于榜樣的獨特教學手段進行課程設置,注重培養(yǎng)作為一個優(yōu)秀軟件從業(yè)人員所應具備的團隊合作、分析歸納、專業(yè)技術文檔制作,規(guī)范的軟件開發(fā)等專業(yè)技能。 “授人以魚,不如授人以漁?!?,IT技術日新月異,在基于榜樣的學習方法的指導下,不但使你掌握了最前沿的技術,更獲得了自我學習與實際解決問題的規(guī)范和能力。

在教學過程中,直接將軟件公司所生產(chǎn)的軟件項目的Demo版用于教學,注重學生進行軟件實踐開發(fā)的能力培養(yǎng),真正將高職教學成為企業(yè)的崗前培訓。教師在進行教學過程中,除了輔導學生進行項目開發(fā),更主要是要搭建軟件公司項目開發(fā)環(huán)境,并進行項目管理,教師就是軟件開發(fā)過程中的項目經(jīng)理或項目主管,而學生就成了“程序員”,這正是我們所希望達到的目的。委派企業(yè)的工程師進入課堂,帶著公司的現(xiàn)實項目對這些學生進行現(xiàn)場教學,學生不僅感到了壓力,更能感受到進行軟件項目開發(fā)樂趣,激發(fā)了學生的學習興趣和工作熱情。同時也對學生進行適當?shù)钠髽I(yè)文化的教育,讓學生在思想上提前就業(yè)。解決企業(yè)在招聘人才時只能接收有工作經(jīng)驗人才的瓶頸問題。

5.結語

企業(yè)需要的不是實習生,而是需要能夠給企業(yè)創(chuàng)造財富、創(chuàng)造價值的員工。高職院校只要與企業(yè)緊密結合,就能培養(yǎng)出企業(yè)所需求的具有較強實踐能力軟件開發(fā)人才。進而也可以委派教師進入合作企業(yè),成為“訪問工程師”,參與企業(yè)的生產(chǎn)管理,學習新知識、新技能,這才是真正的“雙師型”教師,他們能更好促進實踐化教學的進程,教學即為實踐,實踐也在教學,形成良性循環(huán)。

參考文獻:

[1]《蘇州市服務外包人才培養(yǎng)模式初探》 人才資源開發(fā),喻曉雪,2009,11期

篇9

關鍵詞:計算機專業(yè);程序設計;實踐教學;案例驅動

中圖分類號:G424文獻標識碼:A文章編號:1009-3044(2012)02-0421-02

編程能力是計算機專業(yè)學生的基本專業(yè)能力,是就業(yè)應聘時被用人單位重點考察的能力。程序設計以及進一步的系統(tǒng)開發(fā)要求學生有較好的邏輯思維能力、數(shù)學基礎、建模能力,能熟練掌握集成開發(fā)環(huán)境、測試工具、軟件工程規(guī)范,具有良好的吃苦耐勞、團隊合作精神。目前,高職計算機專業(yè)學生普遍編程能力不強、專業(yè)技能特征不明顯,導致學生就業(yè)質量不高。提高學生編程能力是目前高職計算機專業(yè)人才培養(yǎng)亟待解決的重要問題。

1編程實踐教學現(xiàn)狀

1)編程能力培養(yǎng)課程群

理論基礎:高等數(shù)學、離散數(shù)學;語言課程:C(或C++)語言程序設計、數(shù)據(jù)庫程序設計、面向對象程序設計等;結構和算法:數(shù)據(jù)結構、算法設計和分析;系統(tǒng)設計:軟件工程、軟件測試技術等。

2)編程實踐教學體系

編程課程群、其它理論課程的實驗教學部分、專門的課程設計、第二課堂、程序設計類的學科競賽、實習、畢業(yè)設計。

3)編程實踐教學存在的問題

①學風可能出現(xiàn)問題。由于學歷層次為???,很多學生對編程自信心不足,普遍有畏難情緒,自覺性不高,沒有專業(yè)自豪感,自備的學習電腦變成了玩游戲的工具。對就業(yè)市場缺乏準確認識,缺乏將來在IT企業(yè)就業(yè)的自信心,導致學習動力明顯不足。

②編程的前修課程學習不到位。學生對高等數(shù)學、離散數(shù)學這些理論課程的學習意義認識不足,錯誤認為這類課程與計算機專業(yè)的基本技能關聯(lián)不緊密,不考慮技術生涯的發(fā)展?jié)摿秃髣?。英語學習積極性不高,不能結合編程語言的開發(fā)環(huán)境閱讀聯(lián)機幫助中的英文內容。

③師資自身編程能力和教學方法有待提高。部分編程任課教師,沒有項目研發(fā)實踐經(jīng)歷,程序調試和系統(tǒng)測試技巧掌握不多,程序開發(fā)環(huán)境的功能掌握不全面。教學課件制作粗糙,不能充分利用多媒體教學平臺,教學過程缺乏足夠的上機演示和訓練。文件、OS系統(tǒng)功能調用、常用基本算法的實現(xiàn)等不講授或講授不到位。

④實踐教學環(huán)節(jié)質量沒有得到保證。語言類課程課后編程作業(yè)量不夠,且多數(shù)采用紙上編程的形式,很少布置課外上機編程作業(yè)和上機檢查,考核手段主要采用筆試,程序設計語言種類設置偏多,編程作業(yè)沒有結合應用和趣味性,其它相關課程(如:操作系統(tǒng))的實驗教學沒有到位,實驗室開放制度沒有落實,學生課外時間沒有得到真正有效利用,三年期間編程訓練不斷線沒有落實。

2編程實踐教學改革

1)提高學生專業(yè)自豪感,加強學風建設

強調社會信息化建設對合格計算機專業(yè)人才需求依然很大,學有所長的學生依然是IT企業(yè)競相高薪聘用的對象。隨著世界經(jīng)濟結構變化,計算機服務外包人才需求旺盛;信息技術對傳統(tǒng)產(chǎn)業(yè)的技術改造以及對社會各領域快速滲透,進一步保證了社會人才市場對計算機專業(yè)合格人才持續(xù)的高需求狀態(tài)。目前部分計算機專業(yè)學生因學風等問題使得專業(yè)基本技能沒有學到位,從而導致就業(yè)不理想。

2)優(yōu)化編程類課程群,把握課程重點

程序設計課程應當有足夠的實驗課時,最好設置相應的獨立的課程設計(如:C語言課程設計)。不能只給學生講解編程開發(fā)環(huán)境中最常用的功能,而至少要介紹開發(fā)環(huán)境中大部分功能,形成學生對開發(fā)環(huán)境的整體認識,程序調試技巧要著重講解。程序設計語言種類要少,目前很多學生學了好幾門語言,因時間和精力限制,最終都沒學會,畢業(yè)時沒有1門語言能熟練掌握。《離散數(shù)學》課程不能開設成純粹的數(shù)學理論課,而應當配以適量的實驗課(如:編程實現(xiàn)求解等價關系),著也為以后《數(shù)據(jù)結構》學習打下基礎?!盾浖こ獭窇獙浖y試方法、測試工具、測試用例構造技術做重點講解??稍诖髮W三年級設置《軟件綜合課程設計》。

3)加強校企合作,進行項目開發(fā)實訓

校企合作是培養(yǎng)符合社會需求、了解技術發(fā)展、強化專業(yè)技能、提高職業(yè)素養(yǎng)的重要途徑。目前進行計算機專業(yè)技能實訓的社會教育服務機構、IT研發(fā)企業(yè)很多。這些企業(yè)有較好的軟件開發(fā)教學案例,采用真實的軟件工程方法對學生進行編程、軟件測試、項目管理、行業(yè)規(guī)范的訓練。學生實訓地點可以是學校機房(此時機房需進行適當?shù)能浖h(huán)境改造和優(yōu)化),也可為企業(yè)的研發(fā)場地。校企合作過程同時能提高教師的軟件研發(fā)能力。

4)積極參加相關學科競賽,提升編程能力

政府或學會組織的各級計算機程序設計類學科競賽很多,如:ACM程序設計競賽。這類競賽能提高學生的編程等綜合能力和編程興趣。獲獎學生能提高就業(yè)質量。在課程建設方面,最好把競賽的題目作為《數(shù)據(jù)結構》或《算法設計和分析》的教學案例或課后作業(yè)。競賽隊伍可含有低年級學生,由專職教師進行專門訓練和管理,學校給予政策傾斜。

5)充分利用第二課堂,設立編程類大學生創(chuàng)新性試驗項目

編程能力提高只靠第一課堂是遠遠不夠的。借助學工類和學生類組織,成立多個學生編程興趣小組,由教師進行專門指導和管理。最好結合計算機技術實際應用設立編程類大學生創(chuàng)新性試驗項目,其中完成優(yōu)秀的項目可計入學分,進一步擴充后可成為學生就業(yè)應聘時進行演示,體現(xiàn)學生技術實力。

6)編程訓練不斷線,編程方向要集中

由于程序設計語言種類很多、高級語言功能類似、應用領域非常多、時間精力有限,學生最好重點掌握其中一種語言(如:JAVA語言)。若有可能,非語言類的課程的編程實現(xiàn)類實驗項目最好使用學生自己擬專攻的語言,逐步熟悉該語言程序設計開發(fā)環(huán)境中盡可能多的功能。學生也可以結合感興趣的應用領域(如:信息管理、網(wǎng)絡應用、游戲)重點學習其中一種語言,此時學生自學或學校開設講解應用領域基礎知識的課程。

7)程序設計課程考核要進行筆試和機考相結合

以往程序設計課程考試一般都是筆試,主要考核學生對基本語法的掌握情況,題型主要是填空題、選擇題、改錯題、紙上編寫小程序。此考試方法不足以考核學生編程的真實水平,而且紙上編寫的程序的正確性,難以完全把握,所以應該加上機器考試環(huán)節(jié),既能促使學生進行更多的上機編程實踐,由能準確判斷編程是否正確,還能考核學生對基本編程環(huán)境是否熟悉。

3案例項目驅動的編程實踐教學法

案例項目驅動教學法是案例驅動和項目驅動相結合的一種教學方法。課堂上通過案例的講解讓學生充分掌握相關的知識,并讓學生利用所學知識在實驗課中完成一個小項目。該教學法適宜于在《軟件工程》課程教學中使用,是以學生為主體,教師為輔助,以學生在項目實踐中發(fā)現(xiàn)知識、解決問題、提高系統(tǒng)設計和編程實現(xiàn)能力為根本目標。

1)選擇的教學案例應具備的條件

案例最好是由教師自主開發(fā)的已經(jīng)投入實際運行的軟件系統(tǒng),經(jīng)過改造而成,同時具備以下條件:①不會出現(xiàn)知識版權糾紛;②技術的綜合性比較強;③有軟件使用說明書,相關文檔齊全;④配備針對該案例的自編教材;⑤案例涉及的應用領域知識,學生能憑借直覺理解;⑥源代碼完整,使用的編程語言是學生學習過的語言;⑦軟件能在學校機房環(huán)境正常運行。

2)學生開發(fā)的小項目應具備的條件

項目應該是針對教學內容而設計的能由學生獨立完成的、可以收到良好教學效果的小任務。最終過渡到某種具有實際應用價值的產(chǎn)品。該項目應滿足下列條件:

①該項目過程可以用于學習一定的教學內容;②能將教學內容的理論與實踐結合在一起;③該項目能夠激發(fā)學生的學習興趣;④項目有一定綜合性,技術難點在案例中有所體現(xiàn);⑤項目的應用領域涉及的知識學生能理解;⑥有明確的評分標準,可以對完成的項目進行評價;⑦項目完成后,師生共同總結學習過程和方法。

3)案例項目驅動教學法的實踐

項目教學過程分為四個階段:第一階段是讓學生熟悉案例軟件的使用,進行案例的感性認識,閱讀相關案例的文檔。第二階段是讓學生了解完成一個工程項目所需要完成的模塊,直接引導學生進入項目“情景”,激發(fā)學生學習的積極性和能動性,又能讓學生在以后開展項目開發(fā)時能體會到使用者的具體需要。第三階段是在教師對案例各模塊開發(fā)過程的演示下,針對本組項目開展研究討論、分工協(xié)作,共同完成工程項目的系統(tǒng)分析、結構設計、代碼編寫、程序調試等工作。第四階段由項目組共同完成實訓項目。

參考文獻:

[1]毛玉萃.計算機科學與技術專業(yè)實踐教學體系的構建與實施[J].實驗室科學,2009,(4):97-99.

[2]朱翠苗,鄭廣程等.高職計算機專業(yè)實踐教學體系構建[J].職業(yè)技術教育,2009,(26):67-68.

[3]馬剛.淺談模擬軟件在計算機實踐教學中的應用[J].科技信息,2010(11):230,184.

[4]王永飛.高職計算機專業(yè)課程實踐教學現(xiàn)狀和對策研究[J].銅陵職業(yè)技術學院學報,2009(3):14-16.

篇10

關鍵詞:軟件工程;綜合實踐;軟件過程;迭代開發(fā)

為了提高軟件工程人才培養(yǎng)的水平,增強學生的實踐能力,文獻[1]基于建構主義認知學說提出了一種創(chuàng)新的人才培養(yǎng)模式。該培養(yǎng)模式的特點是在第6―7學期引入長周期的綜合實訓。為便于實施,該綜合實訓可按學期分成兩段。其中第6學期的實訓為期20周,如何開展全面的軟件工程過程實踐,是本文要探討的對象。此實訓將部分原在課堂講授的理論課貫穿在實訓中講解,并要求學生以小組為單位完成軟件開發(fā)項目,從而理解和掌握軟件開發(fā)過程與技術。為有效開展此實訓,本文依據(jù)現(xiàn)有軟件過程理論和經(jīng)驗,對實訓中的軟件過程進行探討。

1概念與研究的必要性

軟件開發(fā)過程是指在工業(yè)化環(huán)境(如軟件公司、大型軟件開發(fā)團隊)開發(fā)軟件的有先后順序的一系列活動。它是將各種軟件技術組織在一起的粘合劑,是合理高效開發(fā)軟件產(chǎn)品的保證[2]。對軟件過程的描述,往往包括過程模型、活動、角色、制品等方面。

軟件工程綜合實訓課程的目的是為了讓學生熟悉軟件開發(fā)過程,掌握軟件開發(fā)技術,增強實際動手能力。它與實際軟件開發(fā)有以下幾點不同:

1) 目標不同。前者以培養(yǎng)學生為目標,后者以生產(chǎn)軟件為目標。

2) 實踐主體不同。前者為學生,后者為工作者。

3) 環(huán)境不同。前者在學校的模擬環(huán)境進行,后者處于具體的軟件開發(fā)環(huán)境。

這意味著實訓教學中應該采用接近實際的軟件開發(fā)過程,但又不能完全照搬實際過程。這是我們必須探討綜合實訓軟件開發(fā)過程的原因。以下從軟件開發(fā)過程模型、過程角色、主要活動及對學生的考核等幾方面對軟件工程綜合實訓的軟件開發(fā)過程進行討論。

2綜合實訓的軟件過程模型

歷史上,出現(xiàn)過多種軟件過程模型,但大致可分為線性模型和迭代模型兩類。線性模型也稱瀑布模型,已被實踐證實不能適應需求變化的場景。迭代模型認為軟件開發(fā)是一個反復的過程,比較符合軟件復雜、易變的本質,是當今軟件開發(fā)的主流思想。

在考慮實訓教學軟件過程模型的選取時,應以簡單易行、便于軟件技術學習、便于軟件過程理解為出發(fā)點。單從簡單易行的角度,采用瀑布模型比較有吸引力。瀑布模型的步驟和章法清晰,教學組織方便。但是,如果使用瀑布模型,對迭代過程的介紹只能停留在口頭上,學生無法從實踐中領會這一重要的過程思想。瀑布模型是一次性完成需求描述,然后做全面

設計。這不利于由淺入深、循序漸進地掌握軟件架構、設計和編碼方面的技術。如果采用迭代式模型,雖會令實訓的組織和管理變得復雜,但既可以領會瀑布模型的章法,也可以克服瀑布模型的弊端。對于本文所針對的長達一個學期的綜合實訓,其教學目標是多維和綜合的,既要在過程中傳授顯性知識,也要通過過程組織和實踐指導傳遞隱性知識。如采用瀑布模型,會將開發(fā)過程理想化,而使很多隱性知識和實踐經(jīng)驗難以傳播。因此長周期的綜合實訓采用迭代式過程模型更合理。

按照有關迭代開發(fā)經(jīng)驗[3],對于小型項目,以3周為一次迭代較合適。我們決定將20周的實訓分為開始1周、結束1周、中間6次迭代18周。各次迭代的目標如表1所示。

表中,迭代1的任務是發(fā)掘和初步表述系統(tǒng)的主要需求,并設計系統(tǒng)原型;迭代2要完成系統(tǒng)的主要功能,約占全部功能的30%~40%;迭代3完成系統(tǒng)的全部功能;迭代4對系統(tǒng)架構進行優(yōu)化,增加業(yè)務邏輯層;迭代5進一步優(yōu)化系統(tǒng)架構,增加數(shù)據(jù)讀寫層;跌代6使用現(xiàn)有框架對系統(tǒng)進行重構。

在實際的軟件開發(fā)過程中,早期迭代要著重于影響架構的功能和性能需求的實現(xiàn),從而一開始就為系統(tǒng)選擇合理的架構。但在實訓教學中,按由淺入深的教學規(guī)律,在學生具備一定的開發(fā)經(jīng)驗后引入架構設計知識。因此,前幾次迭代較少涉及架構設計的細節(jié),所完成的軟件在架構方面是不成熟的。在后幾次迭代中,通過對代碼的重構逐漸完成軟件架構的優(yōu)化,從而讓學生牢牢樹立架構設計的理念。這是實訓軟件過程與實際軟件過程的區(qū)別。

上述各次迭代的目標,也是系統(tǒng)開發(fā)的里程碑。教師檢查各次迭代提交制品的同時,也考核了學生團隊的成績。

3綜合實訓過程中的角色

基于文獻[4]及文獻[5]的思想,軟件工程綜合實訓學生團隊應設置對等角色。即每個小組成員擔任一種角色,負責一個方面的工作,同時又是其他成員所負責工作的參與者。這既是實際開發(fā)團隊的做法,也最適合學生的學習。

考慮到項目規(guī)模較小,實訓時間較長,一個小組人數(shù)不宜過多。以5人一組,分別扮演組長、開發(fā)經(jīng)理、計劃經(jīng)理、測試經(jīng)理、技術支持經(jīng)理等角色,各角色職責主要為[4]:

1) 組長:負責小組建設,讓小組成員有共同的目標和項目愿景,激勵士氣,維持紀律,安排任務,主持每周小組例會、成員互評等。

2) 開發(fā)經(jīng)理:主持小組開發(fā)工作,包括需求、分析與設計、實現(xiàn)等過程。

3) 計劃經(jīng)理:負責帶領小組制訂項目計劃和迭代計劃,督促各成員按要求完成工作日志,制訂項目周計劃,整理項目周報,對計劃進行跟蹤,在例會或計劃會議上通報項目進度。

4) 測試經(jīng)理:負責測試計劃的制訂,編寫測試用例,組織測試實施及管理,組織每日集成測試。

5) 技術支持經(jīng)理:組織執(zhí)行配置管理、變更控制、數(shù)據(jù)庫管理及風險管理,培訓本組成員正確使用工具軟件,督促每日代碼簽入、簽出。

上述角色職責涉及的各種活動,詳見第4節(jié)說明。指導教師在實訓中的角色是代表客戶方提出對系統(tǒng)的要求,同時也是學生開發(fā)活動的指導者和監(jiān)督者。

在實際的軟件開發(fā)過程中,團隊成員的角色在一個項目中是固定的。但在實訓過程中,為了讓學生得到更全面的訓練,可規(guī)定每兩次迭代交換角色一次。這樣在整個實訓中,每人都可以擔任三種不同的角色。這是實訓過程不同于實際過程的地方。

4綜合實訓過程的主要活動及制品

依據(jù)文獻[4]和文獻[6],將學生在綜合實訓中的活動領域分為兩大類,一類是核心開發(fā)域,包括業(yè)務分析、需求、分析與設計、實現(xiàn)、測試、部署等;一類是核心支持域,包括團隊管理、計劃管理、配置管理、環(huán)境支撐等。各活動域的活動種類、制品及負責角色如表2所示,共有約30種活動。

上述活動涉及很多學生尚不了解的知識。對于其中適合講授的顯性知識,由專題主講老師在過程中集中講授;對于可以通過實踐過程習得的隱性知識,通過實訓指導書對有關活動的規(guī)范和引導,讓學生在活動中領悟。需要集中講授的知識可以分成以下幾個模塊:

1) 項目輔導。介紹有關小組建設、小組溝通、工作理念、計劃管理等方面的知識,對開發(fā)過程的紀

律、工作程序、會議等作具體的指導。

2) 軟件開發(fā)過程。主要介紹軟件開發(fā)統(tǒng)一過程(RUP),包括迭代開發(fā)方法,各種開發(fā)活動、角色及制品的含義,配置管理及風險管理等。

3) 數(shù)據(jù)庫管理。結合項目和實訓環(huán)境指導學生設計和管理大型關系型數(shù)據(jù)庫。

4) 軟件測試。結合項目介紹各種測試活動的要求、內容和組織實施辦法。

5) 系統(tǒng)分析與設計。介紹面向對象的可視化建模方法、軟件架構設計、模式應用等方面的知識。

6) 程序設計技術。介紹完成項目所需要的程序設計技術。包括Web應用開發(fā)、多層體系架構的實現(xiàn)、測試驅動的開發(fā)、應用程序框架設計與應用等內容。

在開展項目過程中,講授也是重要的環(huán)節(jié),這也是本實訓過程與實際過程的不同之處。

5考核方式

作為一項教學活動,必須對學生學習情況進行考核并給出成績。由于該實訓長達一學期,理論課學時較多,所對應的學分也較多。如果采用一次性考核,顯然操作難度很大,也不利于在過程中發(fā)現(xiàn)問題,激勵學生。因此,本實訓最適合分階段考核,即對每次迭代進行考核,成績由三部分組成:一是本次迭代過程有關理論知識掌握,占40%,采用筆試方式考核;二是工作成果,占30%,以測試迭代產(chǎn)生的結果為依據(jù);三是工作表現(xiàn),占30%,通過統(tǒng)計考勤、學生互評及老師評價得到。每兩次迭代完成,學生交換角色前,要求每位學生提交所擔任角色工作的總結報告,作為單獨的角色考核。由于角色是任選的,此考核學分可作為選修學分記入成績表。

6結語

由于實訓與實際軟件開發(fā)不同,實訓軟件過程不能照搬實際開發(fā)過程。為了與當代流行的軟件開發(fā)過程一致,也為了能循序漸進地教學,在實訓中選擇迭代式開發(fā)模型。項目小組的成員依次承擔多種角色,并產(chǎn)生相應的制品。實訓的考核以迭代為單位進行。按照這樣的過程開展本文所述約30項實訓活動,必將提高學生對軟件工程知識的認識和實際的動手能力。

參考文獻:

[1] 鄭大鵬,林國璋,張克軍. 一種創(chuàng)新的獨立學院軟件專業(yè)人才培養(yǎng)模式[J]. 計算機教育,2010(8):1-3.

[2] Roger S. Pressman. 軟件工程―實踐者的研究方法[M]. 4版. 北京:機械工業(yè)出版社,1999:22-49.

[3] Craig Larman. UML和模式應用[M]. 3版. 北京:機械工業(yè)出版社,2008:13-20.

[4] Watts S. Humphrey. 小組軟件開發(fā)過程[M]. 北京:人民郵電出版社,2000:163-225.

[5] 微軟公司. MSF Team Model v.3.1[EB/OL]. [2010-11-06]. /msf:17-19.

[6] Ivar Jacobson,Grady Booch,James Rumbaugh. 統(tǒng)一軟件開發(fā)過程[M]. 北京:機械工業(yè)出版社,2002:3-11.

On Software Process of Software Engineering Comprehensive Training

ZHENG Dapeng, XIAO Youqing, ZHANG Xiaoyan, ZHANG Shenyong

(Zhuhai Campus, Beijing Institute of Technology, Zhuhai 519085, China)