葛懷雨
摘要:《Delphi程序設(shè)計(jì)》是我院軟件技術(shù)專(zhuān)業(yè)學(xué)生的選修課程,傳統(tǒng)的教學(xué)方法不能滿足現(xiàn)在企業(yè)中的團(tuán)隊(duì)合作的需要。模擬教學(xué)法則是以學(xué)生為主,老師為輔;以企業(yè)工作中實(shí)際角色分配任務(wù),老師少講,學(xué)生多做,提高學(xué)生的綜合能力,尤其是職業(yè)行動(dòng)力,該文結(jié)合實(shí)際教學(xué)情況對(duì)模擬教學(xué)法在Delphi程序設(shè)計(jì)課程中的應(yīng)用進(jìn)行了研究與實(shí)踐。結(jié)果證明,模擬教學(xué)法對(duì)Delphi程序設(shè)計(jì)課程的教學(xué)具有積極的作用。
關(guān)鍵詞:Delphi程序設(shè)計(jì);模擬教學(xué)法;角色分配
中圖分類(lèi)號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)22-5260-05
Delphi程序設(shè)計(jì)是我院軟件技術(shù)專(zhuān)業(yè)三年級(jí)學(xué)生的選修課程,該課程采用面向?qū)ο蟪绦蛟O(shè)計(jì)方法。程序設(shè)計(jì)是一門(mén)概念復(fù)雜、抽象、知識(shí)面廣的課程。每位學(xué)生都想著有一天自己的程序能在指縫間源源不斷的敲擊出來(lái),自己設(shè)計(jì)的系統(tǒng)能完美運(yùn)行。然而在真正學(xué)習(xí)該課程后,開(kāi)始編寫(xiě)系統(tǒng)程序時(shí),往往無(wú)所下手,沒(méi)有頭緒,沒(méi)有思路,盡管當(dāng)時(shí)努力學(xué)習(xí)課程,通過(guò)考試,但并沒(méi)有體會(huì)到理論聯(lián)系實(shí)際的樂(lè)趣,便逐漸使學(xué)生失去了編程的興趣。
Delphi程序設(shè)計(jì)的前導(dǎo)課程是VB、C程序設(shè)計(jì)和數(shù)據(jù)庫(kù)系統(tǒng)、軟件工程。因此學(xué)生們已具備軟件工程開(kāi)發(fā)思想,編程能力和數(shù)據(jù)庫(kù)基礎(chǔ)。該課程進(jìn)一步提高學(xué)生的編程能力、分析解決問(wèn)題的能力及用軟件工程的思想和方法設(shè)計(jì)開(kāi)發(fā)功能較完整的實(shí)際應(yīng)用系統(tǒng),并提高學(xué)生的分工協(xié)作、團(tuán)隊(duì)合作、口頭表達(dá)及文字表述能力方面的能力。
1 模擬教學(xué)法
如何提高學(xué)生的學(xué)習(xí)積極性,從傳統(tǒng)教學(xué)法到任務(wù)驅(qū)動(dòng)法的教學(xué)過(guò)程使學(xué)生的學(xué)習(xí)積極性提升上來(lái)了,但并不符合當(dāng)前企業(yè)的崗位實(shí)際需要。如何既能保證學(xué)生的學(xué)習(xí)興趣不減,又能使學(xué)生更好地理解軟件企業(yè)的崗位需要,提高協(xié)作能力,課程教學(xué)過(guò)程中設(shè)計(jì)了一套模擬教學(xué)法,也就是模擬企業(yè)在軟件開(kāi)發(fā)過(guò)程中崗位需求的設(shè)置,結(jié)合高職院校學(xué)生的實(shí)際學(xué)習(xí)情況,將模擬教學(xué)法應(yīng)用到Delphi程序設(shè)計(jì)課程中。模擬教學(xué)法結(jié)合案例教學(xué)法、項(xiàng)目教學(xué)法、角色扮演和探索式教學(xué)法。將全體成員分成若干小組,采用小組合作,明確分工,演示匯報(bào)的方式完成課程教學(xué)。
2 實(shí)踐及過(guò)程
2.1角色扮演及職業(yè)生涯規(guī)劃
課程中最先講解的是角色扮演。軟件工程的思想,是針對(duì)不同的難度和規(guī)模的項(xiàng)目,會(huì)有不同的人員配置方案,學(xué)生應(yīng)充分理解這些角色及職責(zé),為自己的職業(yè)生涯進(jìn)行規(guī)劃,拉近自己與企業(yè)的距離,由于課程中學(xué)時(shí)有限,只選取了部分角色讓學(xué)生了解、掌握。
部分角色的職責(zé):
1) 項(xiàng)目經(jīng)理
· 組織項(xiàng)目所需的各項(xiàng)資源
· 設(shè)置項(xiàng)目組中的各種角色,并分配好各角色的責(zé)任與權(quán)限
· 定制項(xiàng)目組內(nèi)外的溝通計(jì)劃。(必要時(shí)可配置管理要求寫(xiě)項(xiàng)目策劃目錄中的《項(xiàng)目溝通計(jì)劃》
2) 需求分析員
· 在項(xiàng)目前期根據(jù)《需求調(diào)研計(jì)劃》對(duì)客戶進(jìn)行需求調(diào)研
· 收集整理客戶需求,負(fù)責(zé)編寫(xiě)《用戶需求說(shuō)明書(shū)》
· 代表項(xiàng)目組與用戶溝通與項(xiàng)目需求有關(guān)的所有事項(xiàng)。
3) 系統(tǒng)設(shè)計(jì)工程師
· 根據(jù)需求分析結(jié)果及概要設(shè)計(jì)規(guī)范設(shè)計(jì)、編制概要設(shè)計(jì)說(shuō)明。
· 保證概要設(shè)計(jì)的科學(xué)性、可行性,并與需求分析一致。
· 協(xié)助項(xiàng)目經(jīng)理制定項(xiàng)目開(kāi)發(fā)計(jì)劃。
· 依照開(kāi)發(fā)計(jì)劃的要求保證設(shè)計(jì)進(jìn)度。
· 參與需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)等過(guò)程的階段評(píng)審,從是否達(dá)到概要設(shè)計(jì)的角度提出評(píng)審意見(jiàn)。
4) 高級(jí)軟件工程師
· 根據(jù)概要設(shè)計(jì)結(jié)果及詳細(xì)設(shè)計(jì)規(guī)范設(shè)計(jì)、編制詳細(xì)設(shè)計(jì)文檔。
· 保證詳細(xì)設(shè)計(jì)滿足概要設(shè)計(jì)對(duì)功能界定、可靠性、用戶界面等各方面的要求。
· 依照開(kāi)發(fā)計(jì)劃的要求保證設(shè)計(jì)進(jìn)度。
· 參與概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、軟件實(shí)現(xiàn)等過(guò)程的階段評(píng)審,從是否達(dá)到詳細(xì)設(shè)計(jì)要求的角度提出評(píng)審意見(jiàn)。
5) 編碼人員
· 根據(jù)《系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)》編寫(xiě)《系統(tǒng)詳細(xì)說(shuō)明書(shū)》。
· 按《系統(tǒng)詳細(xì)設(shè)計(jì)說(shuō)明書(shū)》進(jìn)行代碼實(shí)現(xiàn)。
· 控制本模塊的開(kāi)發(fā)進(jìn)度。
6) 測(cè)試人員
· 獨(dú)立編寫(xiě)測(cè)試計(jì)劃。
· 獨(dú)立編寫(xiě)測(cè)試用例。
· 協(xié)調(diào)測(cè)試團(tuán)隊(duì)內(nèi)部的工作以及與開(kāi)發(fā)團(tuán)隊(duì)之間的工作。
· 完成“執(zhí)行測(cè)試”的工作。
7) 美工
· 負(fù)責(zé)完成軟件設(shè)計(jì)師安排的功能界面設(shè)計(jì)。
· 負(fù)責(zé)對(duì)項(xiàng)目整體色彩的調(diào)配。
· 向系統(tǒng)分析師提出項(xiàng)目美化的建議。
8) 客戶經(jīng)理
· 在項(xiàng)目實(shí)施階段,跟蹤、檢查實(shí)施人員的工作質(zhì)量。
· 負(fù)責(zé)協(xié)助用戶進(jìn)行“用戶確認(rèn)測(cè)試”和編寫(xiě)《確認(rèn)測(cè)試報(bào)告》。
9) 維護(hù)人員
· 制訂具體項(xiàng)目的質(zhì)量保證計(jì)劃及執(zhí)行。
· 評(píng)審的組織。
· 研發(fā)流程的執(zhí)行監(jiān)督、反饋、數(shù)據(jù)收集。
依據(jù)上述角色介紹,由學(xué)生選擇角色并制定自己的職業(yè)生涯規(guī)劃,這樣可以鍛煉學(xué)生的語(yǔ)言表達(dá)能力,為后期小組演示匯報(bào)預(yù)演。讓學(xué)生勝任角色,成功扮演角色,同時(shí)要有教師的適當(dāng)指導(dǎo)、發(fā)揮學(xué)生的各自特點(diǎn),使他們適應(yīng)角色。以下是小組內(nèi)選擇項(xiàng)目經(jīng)理角色的職業(yè)生涯規(guī)劃:
1) 項(xiàng)目經(jīng)理:完成不同階段的任務(wù)。
2) 項(xiàng)目經(jīng)理具備的素質(zhì):認(rèn)真負(fù)責(zé)的態(tài)度;有扎實(shí)的技術(shù);協(xié)調(diào)各部門(mén)的能力;項(xiàng)目總體規(guī)劃能力。
3) 選擇職業(yè)的原則:擇已所愛(ài),擇世所需,擇己所長(zhǎng)。
4) 項(xiàng)目經(jīng)理的工作職責(zé):
· 所管轄的區(qū)域客戶進(jìn)行信息跟蹤、分析及報(bào)告,并定期進(jìn)行更新。
· 所管轄的區(qū)域客戶的產(chǎn)品開(kāi)發(fā)進(jìn)行項(xiàng)目管理,滿足用戶需求。
· 經(jīng)常與客戶進(jìn)行溝通、與客戶保持親密聯(lián)系,定期走訪、了解產(chǎn)品的質(zhì)量等情況。
5) 項(xiàng)目經(jīng)理需要了解你所在企業(yè)的軟件項(xiàng)目技術(shù)特點(diǎn),了解軟件項(xiàng)目的售前過(guò)程,招標(biāo)方案;掌握需求分析——概要設(shè)計(jì)——詳細(xì)設(shè)計(jì)——開(kāi)發(fā)進(jìn)度控制——風(fēng)險(xiǎn)控制——測(cè)試流程——現(xiàn)場(chǎng)實(shí)施——驗(yàn)收——售后服務(wù)等業(yè)務(wù)。
6) 努力的方向 :項(xiàng)目經(jīng)理是一個(gè)管理者,因此要鍛煉自己的組織管理能力,增強(qiáng)自己的團(tuán)隊(duì)精神,技術(shù)才是硬道理,努力學(xué)好專(zhuān)業(yè)知識(shí),熟悉自身的IT業(yè)務(wù),做一個(gè)洞察力很強(qiáng)的人,培養(yǎng)認(rèn)真負(fù)責(zé)的態(tài)度,擁有扎實(shí)的技術(shù),并協(xié)調(diào)好各部門(mén)的能力提高項(xiàng)目總體規(guī)劃能力。
2.2需求分析階段
教學(xué)第二步,項(xiàng)目選題應(yīng)該是對(duì)知識(shí)的深入學(xué)習(xí)。使用企業(yè)真實(shí)案例讓各小組分別完成。模擬現(xiàn)實(shí)工作環(huán)境、真實(shí)事件,讓學(xué)生按照工作流程,在工作過(guò)程中扮演接近真實(shí)身份的角色,從而理解角色的作用、工作內(nèi)容等,以達(dá)到體驗(yàn)真實(shí)工作崗位的目的。學(xué)生在扮演角色的過(guò)程中充分運(yùn)用所學(xué)知識(shí),發(fā)揮自己的才能和想象空間,增強(qiáng)對(duì)實(shí)際問(wèn)題的預(yù)測(cè)和處理能力。Delphi程序設(shè)計(jì)課程中給出企業(yè)的真實(shí)開(kāi)發(fā)案例,整個(gè)開(kāi)發(fā)設(shè)計(jì)過(guò)程應(yīng)體現(xiàn)軟件工程的思想和方法、運(yùn)用數(shù)據(jù)庫(kù)技術(shù)和程序開(kāi)發(fā)技術(shù)。
需求分析是軟件開(kāi)發(fā)過(guò)程中至關(guān)重要的環(huán)節(jié),本階段的角色扮演者應(yīng)充分理解用戶的實(shí)際需要,并寫(xiě)成書(shū)面文字,以備后續(xù)環(huán)節(jié)設(shè)計(jì)及實(shí)現(xiàn)。如果本環(huán)節(jié)需求獲取不準(zhǔn)確,后期更正將會(huì)付出10倍甚至更多的代價(jià)來(lái)彌補(bǔ)。鑒于學(xué)生們無(wú)實(shí)際工作經(jīng)驗(yàn),不知道此環(huán)節(jié)的重要性,所以從這一階段開(kāi)始,就讓學(xué)生正式進(jìn)入角色,完成工作。
如何確定用戶?采用指導(dǎo)教師為指定題目中的實(shí)際用戶,題目為:生產(chǎn)許可證申報(bào)系統(tǒng)。先給每個(gè)小組一定的準(zhǔn)備時(shí)間,商量獲取需求信息的方法,可以是用戶面談,用戶調(diào)查,從行業(yè)標(biāo)準(zhǔn)和規(guī)則中提取需求信息。在與用戶溝通交流的過(guò)程中,盡量提供給學(xué)生真實(shí)的工作過(guò)程環(huán)境。以下是需求分析員的實(shí)踐結(jié)果:
根據(jù)與用戶談話、調(diào)查及從行業(yè)標(biāo)準(zhǔn)和規(guī)則中提取的信息,要求生產(chǎn)許可證申報(bào)系統(tǒng)實(shí)現(xiàn)以下幾個(gè)主要功能:
1) 申報(bào)單位申報(bào)數(shù)據(jù)要從手工完成的過(guò)程中解放出來(lái),在這里開(kāi)發(fā)完成企業(yè)基本資料錄入。
2) 由于申報(bào)單位要有自身的經(jīng)濟(jì)發(fā)展,生產(chǎn)的產(chǎn)品會(huì)隨著社會(huì)的需求而增多,申報(bào)產(chǎn)品是一個(gè)長(zhǎng)期需要,所以系統(tǒng)在完成數(shù)據(jù)的添加、修改、刪除功能。
3) 對(duì)于申報(bào)企業(yè)基本信息的變化的處理,如單位地址變更或者法人信息變更系統(tǒng),在這里要完成資料變更功能。
4) 用戶相關(guān)信息錄入后,根據(jù)實(shí)際需要遞交評(píng)審部門(mén)全國(guó)生產(chǎn)許可證申請(qǐng)書(shū)或地方生產(chǎn)許可證申請(qǐng)書(shū),在這里要完成報(bào)表打印功能。
5) 為了減輕評(píng)審部門(mén)數(shù)據(jù)錄入的工作量,在申報(bào)系統(tǒng)中申報(bào)單位將錄入的數(shù)據(jù)進(jìn)行上報(bào)的功能開(kāi)發(fā)。
它主要能夠?qū)崿F(xiàn)申報(bào)數(shù)據(jù)錄入、生產(chǎn)許可證申請(qǐng)書(shū)打印、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)上報(bào)等內(nèi)容。生產(chǎn)許可證申報(bào)系統(tǒng)在實(shí)際運(yùn)行和使用過(guò)程中,性能上應(yīng)能達(dá)到:
1) 容量要求:需要系統(tǒng)處理和存儲(chǔ)的數(shù)據(jù)主要有申報(bào)單位基本信息、申報(bào)產(chǎn)品基本信息、主要技術(shù)人員信息、與產(chǎn)品有關(guān)的生產(chǎn)設(shè)備、原材料、檢測(cè)儀器信息等,由于采用了關(guān)系型數(shù)據(jù)庫(kù)Paradox,因此在數(shù)據(jù)庫(kù)容量方面足以滿足需要。
2) 數(shù)據(jù)精確度:要按照嚴(yán)格的數(shù)據(jù)格式輸入,否則系統(tǒng)不給予響應(yīng)處理并提示警告信息。進(jìn)行查詢時(shí)要保證查全率,所有相應(yīng)域包括查詢關(guān)鍵詞的記錄都應(yīng)能查到。因?yàn)樯陥?bào)的數(shù)據(jù)的記錄量會(huì)很大。
3) 設(shè)計(jì)有效的輸入方式,方便用戶操作,有效減少重復(fù)數(shù)據(jù)輸入的工作量,以提高申報(bào)數(shù)據(jù)錄入的工作效率
4) 時(shí)間特性方面:一般操作的響應(yīng)時(shí)間控制在1~2秒內(nèi),對(duì)數(shù)據(jù)轉(zhuǎn)換和打印機(jī)的操作也應(yīng)控制在用戶可接受的時(shí)間范圍內(nèi)完成。
5) 適應(yīng)性方面:生產(chǎn)許可證申報(bào)和管理系統(tǒng)應(yīng)滿足申報(bào)單位和評(píng)審部門(mén)使用的需求。
6) 人機(jī)交互友好性:在用戶界面的使用上,應(yīng)有全新感覺(jué),操作簡(jiǎn)便,一目了然,視圖友好等特點(diǎn),并用使用習(xí)慣性的菜單界面驅(qū)動(dòng)方式,給具體操作用戶極大的便利,能單獨(dú)支持鼠標(biāo)和鍵盤(pán),便于用戶操作使用。
7) 硬件接口方面,保證申報(bào)數(shù)據(jù)與存儲(chǔ)介質(zhì)之間的數(shù)據(jù)傳輸?shù)耐暾?/p>
8) 軟件接口方面,運(yùn)行于Windows95及更高版本具有Win32 API的操作系統(tǒng)之上。
9) 系統(tǒng)健壯性,正常使用本系統(tǒng)時(shí)不應(yīng)出現(xiàn)錯(cuò)誤,若運(yùn)行時(shí)遇到不可恢復(fù)的系統(tǒng)錯(cuò)誤,也必須保證數(shù)據(jù)庫(kù)完好無(wú)損。
10) 系統(tǒng)安全性:申報(bào)數(shù)據(jù)數(shù)據(jù)中許多是涉及到企業(yè)機(jī)密的商業(yè)信息,有效防止與系統(tǒng)無(wú)關(guān)人員竊取企業(yè)的商業(yè)機(jī)密。
11) 系統(tǒng)可靠性:為了提高系統(tǒng)可靠性,減少系統(tǒng)故障,需盡可能采用模塊化、結(jié)構(gòu)化設(shè)計(jì)。
12) 系統(tǒng)通用性:通用化程度高,適用于所有申報(bào)單位使用。
2.3設(shè)計(jì)階段
該環(huán)節(jié)軟件開(kāi)發(fā)公司與用戶接觸較少,屬于內(nèi)部設(shè)計(jì)開(kāi)發(fā)階段,主要包括數(shù)據(jù)庫(kù)的結(jié)構(gòu)設(shè)計(jì),實(shí)施及應(yīng)用程序的總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和調(diào)試等。在設(shè)計(jì)過(guò)程中嚴(yán)格控制工作進(jìn)度。以下是系統(tǒng)設(shè)計(jì)工程師和高級(jí)軟件工程師的部分實(shí)踐結(jié)果:
2.4 代碼編寫(xiě)及美工過(guò)程
代碼實(shí)現(xiàn)部分,因工作量大,所以需要小組內(nèi)成員全體參與,編碼能力強(qiáng)的同學(xué)可以多寫(xiě)幾個(gè)功能,代碼學(xué)的不好的同學(xué),分配做報(bào)表或者美工。
2.5 測(cè)試階段
就測(cè)試而言,用面向?qū)ο箝_(kāi)發(fā)方法的系統(tǒng)測(cè)試與其他方法開(kāi)發(fā)的系統(tǒng)測(cè)試沒(méi)有什么不同,在所有開(kāi)發(fā)系統(tǒng)中都是根據(jù)規(guī)范說(shuō)明來(lái)驗(yàn)證系統(tǒng)設(shè)計(jì)的正確性。程序驗(yàn)證應(yīng)盡可能早地開(kāi)始。程序測(cè)試步驟是從最低層開(kāi)始,從單元測(cè)試、綜合測(cè)試、到系統(tǒng)測(cè)試。單元測(cè)試是系統(tǒng)構(gòu)件的分體測(cè)試,將測(cè)試好的系統(tǒng)構(gòu)件接起來(lái)看它們之間相互作用的正確性稱綜合測(cè)試,最后是整個(gè)系統(tǒng)的測(cè)試,包括軟件系統(tǒng)所在相關(guān)環(huán)境的測(cè)試。通常綜合測(cè)試是一種“主攻”活動(dòng),在系統(tǒng)開(kāi)發(fā)期是非常關(guān)鍵的。這一階段應(yīng)隨著連接已開(kāi)發(fā)的每一部分,再看它們的實(shí)際工作,這種“主攻”活動(dòng)在面向?qū)ο笙到y(tǒng)中是一種實(shí)質(zhì)性的、漸漸增長(zhǎng)的測(cè)試策略。測(cè)試活動(dòng)在早期的開(kāi)發(fā)過(guò)程中就應(yīng)開(kāi)始。當(dāng)開(kāi)始開(kāi)發(fā)時(shí),就可做測(cè)試計(jì)劃。測(cè)試計(jì)劃一般在分析期做,而實(shí)際的測(cè)試通常等到系統(tǒng)構(gòu)造后進(jìn)行。事先根據(jù)期望的方法和層次建立測(cè)試導(dǎo)向圖,然后確定是自動(dòng)測(cè)試還是手工測(cè)試,測(cè)試計(jì)劃需反復(fù)多次。
測(cè)試計(jì)劃如下:
雖然每位同學(xué)都有自己要扮演的角色,但在課程中的每個(gè)環(huán)節(jié)每位學(xué)生都必須參與,特別是設(shè)計(jì)及編碼階段,因?yàn)橄到y(tǒng)要實(shí)現(xiàn)的功能很多,所以每位學(xué)生都要負(fù)責(zé)一個(gè)或幾個(gè)模塊的設(shè)計(jì)及代碼實(shí)現(xiàn)。不能說(shuō)測(cè)試人員光管測(cè)試,不參與其他工作。
2.6 評(píng)價(jià)
觀察每位學(xué)生在整個(gè)學(xué)期中的表現(xiàn),包括學(xué)習(xí)態(tài)度、工作與職業(yè)操守、團(tuán)隊(duì)合作精神、交流與表達(dá)能力、組織協(xié)調(diào)能力進(jìn)行職業(yè)能力考核。根據(jù)課程設(shè)計(jì)中做出的項(xiàng)目給出項(xiàng)目考核分?jǐn)?shù)此兩項(xiàng)為平時(shí)成績(jī)占總評(píng)成績(jī)的70%,期末考試的技能操作占總評(píng)成績(jī)的30%,這樣給出學(xué)生的總體評(píng)價(jià)或總評(píng)成績(jī)。
模擬教學(xué)法應(yīng)用于Delphi程序設(shè)計(jì)課程中,是對(duì)程序設(shè)計(jì)課程的改革。該方法既達(dá)到實(shí)現(xiàn)課程目標(biāo),課程的要求,完成了課程內(nèi)容的目的,又能為學(xué)生走上軟件項(xiàng)目開(kāi)發(fā)工作的實(shí)際崗位做實(shí)戰(zhàn)準(zhǔn)備,讓學(xué)生扮演不同的角色,體驗(yàn)真實(shí)項(xiàng)目開(kāi)發(fā)的過(guò)程,場(chǎng)景,讓學(xué)生對(duì)工作崗位有相應(yīng)的認(rèn)識(shí)和了解。同時(shí)模擬教學(xué)法也為指導(dǎo)教師合理評(píng)價(jià)學(xué)生的學(xué)習(xí)過(guò)程提供了依據(jù)。