杜春立
摘要:職業(yè)教育應(yīng)當(dāng)與時俱進(jìn),采取有效的措施,來實現(xiàn)職業(yè)教育以服務(wù)為宗旨、以就業(yè)為導(dǎo)向、以能力為本位的培養(yǎng)目標(biāo)。探索新型的教育教學(xué)模式,深化職業(yè)教育人才培養(yǎng)模式改革與創(chuàng)新,已成為職業(yè)教育的重要工作之一。這就要求教師需要不斷地探索和研究新的教學(xué)模式,改變教學(xué)理念,大膽創(chuàng)新,把企業(yè)理念、項目管理流程模式、企業(yè)培養(yǎng)員工的方式引入教學(xué)中,提高教學(xué)質(zhì)量,人才培養(yǎng)貼近市場需求,使教學(xué)實踐與企業(yè)應(yīng)用無縫對接,培養(yǎng)高質(zhì)量、具有綜合職業(yè)能力的社會所需人才。本文中引入了企業(yè)項目管理流程的模式,對企業(yè)項目進(jìn)行了切割,并結(jié)合實際教學(xué)中的一門實踐環(huán)節(jié)課程,對將項目管理流程模式移植到教學(xué)中進(jìn)行了初步探索,在項目流程的各個環(huán)節(jié)中,逐步地培養(yǎng)學(xué)生扎實的技能和綜合職業(yè)能力。
關(guān)鍵詞:項目管理流程模式;項目開發(fā)流程;項目測試流程;BI;ETL;數(shù)據(jù)倉庫;職業(yè)教育模式
中圖分類號:G642 ? ? ? ?文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2020)24-0145-04
1 背景
筆者曾在企業(yè)工作多年,并參與企業(yè)的多個IT項目。企業(yè)標(biāo)準(zhǔn)化的項目管理流程模式,一直是筆者所贊同的工作模式,它讓筆者在企業(yè)的工作中做到游刃有余,能夠有序高效地完成項目任務(wù)。
職業(yè)教育是“以就業(yè)為導(dǎo)向”的教育,它所培養(yǎng)的學(xué)生必須能夠有效地完成工作任務(wù),為勝任未來職業(yè)崗位工作做好準(zhǔn)備。職業(yè)教育,重要的是讓學(xué)生會做什么,怎么做得更好【1】。在執(zhí)教過程中,如何把企業(yè)好的模式應(yīng)用到教學(xué)中呢?如何讓學(xué)生提前了解到企業(yè)里需要什么樣的員工?如何讓學(xué)生了解企業(yè)的工作流程,如何做以及如何做得更好,不僅可以獲得專業(yè)技能,還能培養(yǎng)學(xué)生們的職業(yè)綜合能力呢?
于是,筆者想到是否能把企業(yè)項目管理流程模式融入我們的教學(xué)中,是否能把企業(yè)的項目經(jīng)驗應(yīng)移植到教學(xué)中?;谶@個想法,筆者選取了一個較適合于目前教學(xué)工作的企業(yè)項目管理流程的分支模式,如圖1所示。基于此,進(jìn)一步探索將此項目流程模式移植到教學(xué)中。
2 將企業(yè)項目管理流程模式移植到教學(xué)中的設(shè)計
在此,引入一個與“BI數(shù)據(jù)倉庫開發(fā)與管理”課程有關(guān)的案例。以企業(yè)項目流程化模式為基礎(chǔ),設(shè)計一個方案,將企業(yè)項目流程模式引入到教學(xué)中,應(yīng)用到連續(xù)幾周的實訓(xùn)環(huán)節(jié)課中。學(xué)生們在企業(yè)項目管理流程模式中進(jìn)行刻意的鍛煉,將原有的知識轉(zhuǎn)換為扎實的技能,培養(yǎng)學(xué)生做事有規(guī)劃、有計劃、有環(huán)節(jié)、有清單,有條不紊地完成實踐項目,培養(yǎng)學(xué)生綜合職業(yè)能力。
2.1 模擬企業(yè)項目背景介紹
這是一個BI(Business intelligence)系統(tǒng)的后臺數(shù)據(jù)倉庫開發(fā)項目。一家中型公司,有很多業(yè)務(wù)系統(tǒng),每個業(yè)務(wù)系統(tǒng)后臺都有很大的數(shù)據(jù)庫在運轉(zhuǎn),提供大量的數(shù)據(jù)給前端用戶和管理者。為了使得管理者和前端用戶有更好的用戶體驗,也為了不影響原有系統(tǒng)的業(yè)務(wù)運行速度,已建立一個大型的數(shù)據(jù)倉庫Data Warehouse,將各個業(yè)務(wù)系統(tǒng)的數(shù)據(jù)抽取到數(shù)據(jù)倉庫中,基于此后臺數(shù)據(jù)基礎(chǔ),能夠高效地根據(jù)不同的維度進(jìn)行業(yè)務(wù)數(shù)據(jù)展現(xiàn)給前端用戶或管理者。在此,只以后臺數(shù)據(jù)倉庫的ETL開發(fā)為例。模擬項目管理流程模型,如圖2所示。
2.2項目前期準(zhǔn)備階段
項目啟動前是整個項目從0到1的一個過程,對于項目整體至關(guān)重要。在啟動前一定要明確項目的目的、目標(biāo),需要達(dá)成什么樣的效果,需要制訂可行性的項目開發(fā)/實施方案與標(biāo)準(zhǔn)。在這個過程中,需要帶教教師引導(dǎo)并參與,與學(xué)生們一起進(jìn)行充分的項目準(zhǔn)備工作。
1)項目小組成立
教師按照項目的相關(guān)性和學(xué)生能力的差異性進(jìn)行分組,每個項目小組選一個項目leader,負(fù)責(zé)整個項目的過程把控。
2)SVN服務(wù)器搭建
SVN是項目版本管理工具,項目開發(fā)的文檔,都存儲在SVN服務(wù)器上,各開發(fā)人員可利用SVN客戶端工具在本地獲得并更新文檔。帶教教師需要與學(xué)生們一起搭建一臺SVN服務(wù)器,并為每個小組成員分配權(quán)限。
3)開發(fā)環(huán)境準(zhǔn)備
Oracle:Data Warehouse數(shù)據(jù)倉庫。
Toad:連接數(shù)據(jù)庫的客戶端。
Informatica:數(shù)據(jù)抽取、轉(zhuǎn)換、過濾的開發(fā)工具。
4)制訂開發(fā)/實施方案與標(biāo)準(zhǔn)
帶教教師與各項目小組討論,和學(xué)生們一起頭腦風(fēng)暴,制訂開發(fā)方案與統(tǒng)一的開發(fā)標(biāo)準(zhǔn)。
5)知識培訓(xùn)KT(Knowledge Training)
這是各項目小組成員自我學(xué)習(xí)和相互學(xué)習(xí)的過程。各項目小組Leader或成員根據(jù)項目需要用到的知識技能,為組內(nèi)成員進(jìn)行知識培訓(xùn),建議根據(jù)項目情況進(jìn)行5天左右的培訓(xùn)。在此過程中,帶教教師要引導(dǎo)各個項目小組leader如何進(jìn)行有效的知識技能培訓(xùn)。
2.3項目開發(fā)/實施階段
以其中一個小組項目為例,該小組成員如下:
項目leader: Chen,Yu-Nan。
項目Members: Fu,Ming-Ming、Li,F(xiàn)en-Yang、Gu,Zi-Chen、Zhang,Yi-Hao。
2.3.1 小組leader召開項目啟動會
對項目任務(wù)進(jìn)行介紹和集中討論,小組成員共同確認(rèn)開發(fā)方案、統(tǒng)一標(biāo)準(zhǔn)、項目時間安排計劃、人員分配等。
1)統(tǒng)一開發(fā)方案與標(biāo)準(zhǔn)
為了統(tǒng)一開發(fā)標(biāo)準(zhǔn),例如,對每個開發(fā)任務(wù)的統(tǒng)一的配置、命名規(guī)則,對表的統(tǒng)一授權(quán)、Checklist等,每個項目開發(fā)者都遵循這個標(biāo)準(zhǔn)。
在這里,可以通過Excel設(shè)計一個Develop Tool工具,開發(fā)人員只要進(jìn)行基本配置Config,利用CONCATENATE函數(shù)將預(yù)設(shè)好的字符串進(jìn)行拼接,即可生成遵循統(tǒng)一標(biāo)準(zhǔn)的開發(fā)標(biāo)準(zhǔn),非常方便實用。
Develop Tool工具模板能夠?qū)崿F(xiàn):統(tǒng)一的配置、參數(shù)設(shè)置、數(shù)據(jù)表的授權(quán)、統(tǒng)一形式的workflow的開發(fā)等。
2)項目時間安排計劃Plan
小組leader協(xié)同組員,根據(jù)總的項目計劃來制定組內(nèi)項目的計劃,在時間安排上,要考慮突發(fā)狀況,要有預(yù)留的時間,充分考慮到特殊情況對項目周期的影響。對此,需要帶教教師給出指導(dǎo)性的建議。例如,如圖3所示制訂的項目開發(fā)計劃。
Development項目開發(fā):2周,主要是workflow的開發(fā)任務(wù)。
SIT(System Integration Testing)系統(tǒng)集成測試階段:1周寫Test Cases,1周進(jìn)行測試,發(fā)現(xiàn)問題并修復(fù)。這也是公司在項目交給用戶測試前的一個內(nèi)部的系統(tǒng)聯(lián)調(diào)測試。
UAT(User Acceptance Testing)用戶測試階段:1周,用戶進(jìn)行功能性的測試,發(fā)現(xiàn)問題,反饋給開發(fā)小組,修復(fù)后重新測試,直到所有功能正常,并給出Signoff,標(biāo)志著項目交付。
Support技術(shù)支持:在企業(yè)應(yīng)用中,Support是在項目交付后對用戶使用系統(tǒng)的過程中給予的技術(shù)支持。而在我們的教學(xué)模式中,暫定為貫穿在整個項目測試及交付后的正常運行維護(hù)。
3)任務(wù)分配
首先,項目leader將項目進(jìn)行切割,細(xì)分為一個個任務(wù),并事先準(zhǔn)備一個任務(wù)分配的文檔(Task_Asign_List),根據(jù)小組成員熟悉的相關(guān)部分,分配任務(wù)給開發(fā)者Developer,并且為每個任務(wù)指定一個復(fù)核人Reviewer。將該Task_Asign_List文檔放到SVN服務(wù)器上,以便Developers和Reviewers更新。
2.3.2 項目開發(fā)過程(2019/03/05—2019/03/16)
1)待做事項清單To-do list
每個小組成員可以在前一天晚上或當(dāng)天早上,抽出10分鐘時間,詳細(xì)列出需要待做的事項或預(yù)計完成的開發(fā)任務(wù),這個清單既是一個提醒又是一個目標(biāo)。它督促每個小組成員按計劃完成當(dāng)天任務(wù)??梢詫懺诒愫灱埳匣螂娮游臋n或筆記本上,建議每個小組成員準(zhǔn)備一個筆記本,工作日志記錄。
每個小組成員在當(dāng)天課程結(jié)束后,對照著to-do list,在完成的事項上打√;未完成的事項,備注下未完成的原因,放入第二天的to-do list中。
2)開發(fā)任務(wù)檢查清單Checklist
在項目開發(fā)前,項目小組的Developers已對不同層次的開發(fā)任務(wù)做一個檢查清單Checklist。在該檢查清單中,列出工作流程、注意事項等。
在開發(fā)前或開發(fā)過程中,使用checklist檢查清單幫助檢查流程、細(xì)節(jié),以確保Developers清楚地了解注意事項,并且開發(fā)過程或完成時以這個checklist作為檢查依據(jù),盡可能減少開發(fā)過程中的問題,節(jié)約開發(fā)時間,提高開發(fā)效率,保證開發(fā)質(zhì)量。
3)Developer任務(wù)開發(fā)
Developer在完成任務(wù)開發(fā)后,要自己先進(jìn)行測試,如果沒有問題的話,可以標(biāo)記該任務(wù)完成,需要及時更新SVN服務(wù)器上的Task_Asign_List文檔,及時填寫任務(wù)開始日期(Start Date)及完成日期(Finish Date);Reviewer也要及時更新完成Review的日期。
例如,如圖4所示,記錄任務(wù)分配、開發(fā)日期和完成日期,以及Review日期。
4)Work notes工作問題筆記
各小組成員,對于開發(fā)過程中遇到的問題、難點,如何分析、如何解決的方法等,都可以記錄下來,這是一個積累過程。通過筆記記錄分析問題和解決問題的過程和方法,可以為以后的工作作為資料備查,也可以大大加快將知識轉(zhuǎn)換為扎實的技能的速度。
5)Daily Meeting每日會議
各開發(fā)小組,每天實踐環(huán)節(jié)結(jié)束前都要開個例會,每個小組成員都要說說當(dāng)天的開發(fā)情況,例如任務(wù)進(jìn)展、遇到的開發(fā)問題、是否需要協(xié)助等,以及做一個總結(jié)。同時要做會議紀(jì)要,并在會后以郵件形式發(fā)給小組成員。
每日例會,還有一個好處就是:發(fā)現(xiàn)問題,及時提出,盡快解決,不積壓問題,以確保能在計劃時間內(nèi)完成項目開發(fā)工作。另外,每一天的會議紀(jì)要都基于前一天的會議紀(jì)要,以便小組成員能夠很容易翻看之前的會議內(nèi)容。
6)開發(fā)進(jìn)度跟蹤
在Task_Asign_List文檔中,還有一個匯總Summary的功能:匯總開發(fā)總體進(jìn)度情況。在每日會議中,對于開發(fā)情況也是一目了然。
2.4項目測試-SIT系統(tǒng)集成測試(2019/3/5—2019/3/23)
根據(jù)項目時間,安排項目SIT系統(tǒng)集成測試,需要項目開發(fā)小組和測試小組合作一起完成。這個過程主要是在交給用戶測試前的一個內(nèi)部聯(lián)調(diào)測試過程。在此測試過程中,盡可能地發(fā)現(xiàn)問題并修復(fù)問題,減少用戶測試時出現(xiàn)問題,以免引起不必要的麻煩,也可以節(jié)約用戶測試時間,如期交付。
1)測試人員Tester編寫Test Cases(2019/3/5—2019/3/16)
項目測試人員Tester首先要根據(jù)項目要求,編寫Test Cases,要從不同的方面來測試開發(fā)是否存在問題和需要改善。
下面是針對本項目案例編寫Test cases需要考慮的幾個方面:
①在SIT期間每天Load數(shù)據(jù),以確保數(shù)據(jù)正常插入/更新
②利用STTM設(shè)計邏輯來驗證
③測試主鍵是否不為空
④將來自數(shù)據(jù)源的結(jié)果與目標(biāo)表的結(jié)果進(jìn)行MINUS比較
⑤將目標(biāo)表的結(jié)果與來自數(shù)據(jù)源的結(jié)果進(jìn)行MINUS比較
⑥對于Dimension維度表,需要檢查PK是否包含0和-2
⑦對于Fact事實表,需要與Dimension維度表進(jìn)行比對,也要檢查索引
2)Tester測試過程(2019/3/19—2019/3/23)
Tester根據(jù)Test Case進(jìn)行測試,如果發(fā)現(xiàn)問題,將會反饋給開發(fā)人員,需要開發(fā)人員檢測,如果是開發(fā)的問題的話,要盡快修復(fù)問題,然后轉(zhuǎn)給Tester再重新進(jìn)行測試,經(jīng)歷這樣的循環(huán)過程,直到?jīng)]有問題,則Tester將關(guān)閉該Test case,標(biāo)志著與該Test Case相關(guān)的開發(fā)任務(wù)通過測試。
2.5項目測試-UAT用戶測試(2019/3/26—2019/3/30)
在SIT公司后,在預(yù)定時間內(nèi)交付給用戶進(jìn)行功能測試。這個過程需要項目開發(fā)小組和用戶共同完成,以確保產(chǎn)品上線沒有問題。各小組間可以合作,互為用戶進(jìn)行測試。
在用戶測試過程中,用戶發(fā)現(xiàn)的問題,要反饋給開發(fā)小組,開發(fā)小組應(yīng)盡快進(jìn)行解釋、解決和修復(fù)。當(dāng)用戶完成所有功能測試后,用戶需要給出sign off的確認(rèn),表明這個項目順利完成,可以交付使用了。
在這個過程中,引導(dǎo)學(xué)生們?nèi)绾芜M(jìn)行功能測試,要從哪些方面測試能發(fā)現(xiàn)潛在的問題,或是暴露開發(fā)過程中存在的問題。從另一方面看,相互測試既是一種互動過程,又是反思的過程。對于擔(dān)當(dāng)測試用戶的開發(fā)人員來說,也會對自己的開發(fā)任務(wù),有了更多反思,在后期的開發(fā)工作中也會從更多方面考慮問題。
3 將企業(yè)項目流程模式引入教學(xué)中的成效
將企業(yè)項目流程模式引入教學(xué)中,學(xué)生是學(xué)習(xí)過程的中心,教師是學(xué)習(xí)過程的組織者,體現(xiàn)了以學(xué)生為本,調(diào)動了學(xué)生自主學(xué)習(xí)的積極性,培養(yǎng)了學(xué)生的專業(yè)綜合能力【2】。明顯的教學(xué)成效體現(xiàn)在如下幾方面:
1)學(xué)會主動思考,著眼全局的能力
通過分析項目需求、制訂計劃、編寫開發(fā)/實施方案,以及測試流程,培養(yǎng)了學(xué)生對企業(yè)項目流程的整體把控,有著眼項目全局的能力。
2)有規(guī)劃、有計劃、有條理的能力
通過制訂Plan、每日的待辦事項清單To-do list、檢查清單Checklist等,培養(yǎng)學(xué)生養(yǎng)成了良好的職業(yè)習(xí)慣:做事事前規(guī)劃、做事要有計劃、做事要有條理,正確、安全、有序地將事情做好。
3)分析問題、解決問題的能力
在項目開發(fā)/實施和測試過程中,會遇到各種各樣的問題。在這個過程中,極大地鍛煉了學(xué)生如何分析問題和解決問題的能力,同時也大大提升了他們的專業(yè)技能。
4)質(zhì)量意識和責(zé)任心
在SIT測試階段和UAT用戶測試階段,學(xué)生在不斷地發(fā)現(xiàn)問題并解決問題的環(huán)節(jié)中,培養(yǎng)了他們的質(zhì)量意識和責(zé)任心。
5)參與小組合作、勇于擔(dān)責(zé)
項目小組有共同的目標(biāo),各小組成員參與合作且有自己的任務(wù),要求在時間節(jié)點內(nèi)完成項目。在這個參與合作的過程中,培養(yǎng)了學(xué)生積極的學(xué)習(xí)和工作態(tài)度、對專業(yè)和職業(yè)的認(rèn)同、相互協(xié)作的能力和勇于承擔(dān)責(zé)任的意識。
6)總結(jié)反思的能力,將知識轉(zhuǎn)化為扎實的技能
學(xué)生在該項目流程過程中,可以通過工作記錄的方式,不斷地總結(jié)反思,掌握分析問題和解決問題的方法,將原有的知識轉(zhuǎn)化為扎實的技能。
4 將企業(yè)項流程模式引入教學(xué)中的意義
在《現(xiàn)代職業(yè)教育教學(xué)模式》一書中提到,“職業(yè)教育的提倡行動導(dǎo)向教學(xué)模式,工作過程為導(dǎo)向的課程,也就是以就業(yè)為導(dǎo)向,以能力為本位,以工作領(lǐng)域的職業(yè)活動為內(nèi)容,在職業(yè)性的教學(xué)過程中培養(yǎng)學(xué)生具有綜合職業(yè)能力。綜合職業(yè)能力強調(diào)的是完成完整工作過程的能力,即在復(fù)雜的工作情境中進(jìn)行計劃、采取行動并最終對行動的結(jié)果進(jìn)行檢驗的能力。一個完整的工作過程至少包含計劃、實施和檢驗這三個階段。工作過程導(dǎo)向的課程力圖從根本上解決學(xué)校人才培養(yǎng)與行業(yè)企業(yè)用人需求相脫節(jié)的問題?!盵1]
將企業(yè)項目流程模式引入教學(xué)中,最終的目標(biāo)正好符合了行動導(dǎo)向教學(xué)模式和以工作過程為導(dǎo)向的課程,使學(xué)生了解并適應(yīng)企業(yè)項目管理流程,提升專業(yè)技能,更重要的是在這個過程中,也培養(yǎng)了學(xué)生的綜合職業(yè)能力,這也正是社會企業(yè)所需要的人才。
教學(xué)探索與研究沒有最好,只有更好;沒有終點,只有遠(yuǎn)方。希望能在更多的探索與創(chuàng)新中、在更多的實踐中不斷地砥礪前行,把學(xué)生培養(yǎng)成真正貼近企業(yè)需求、具有綜合職業(yè)能力的高質(zhì)量的人才!
參考文獻(xiàn):
[1] 柳燕君.現(xiàn)代職業(yè)教育教學(xué)模式:職業(yè)教育行動導(dǎo)向教學(xué)模式研究與實踐[M].北京:機械工業(yè)出版社,2014.
[2] 王剛.名師之路[M].上海:上海交通大學(xué)出版社,2017.
【通聯(lián)編輯:王力】