時間:2023-03-08 15:35:11
序論:在您撰寫軟件開發(fā)培訓(xùn)總結(jié)時,參考他人的優(yōu)秀作品可以開闊視野,小編為您整理的7篇范文,希望這些建議能夠激發(fā)您的創(chuàng)作熱情,引導(dǎo)您走向新的創(chuàng)作高度。
關(guān)鍵詞:高職;軟件開發(fā)課程;虛擬實訓(xùn);實踐教學(xué)
中圖分類號:G712 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9599 (2012) 11-0000-02
一、引言
為培養(yǎng)應(yīng)用型和技能型軟件開發(fā)人才,在高職軟件技術(shù)專業(yè)中實施三階段技能遞進(jìn)培養(yǎng)模式,該模式將技能培訓(xùn)分為基本技能積累、專業(yè)核心能力培養(yǎng)和綜合技能培訓(xùn)三階段?;炯寄芊e累階段包含培養(yǎng)學(xué)生基本操作技能和編程技能的課程,如程序設(shè)計基礎(chǔ)等課程;專業(yè)核心能力培養(yǎng)階段包含培養(yǎng)更高一級專業(yè)能力的課程,如桌面應(yīng)用程序開發(fā)、web應(yīng)用程序開發(fā)等課程;綜合技能培訓(xùn)階段是在前兩個階段的基礎(chǔ)上,開展以提高職業(yè)行動能力為目標(biāo)的綜合技術(shù)應(yīng)用訓(xùn)練。
學(xué)生在教學(xué)階段遞進(jìn)過程中需要通過大量實踐掌握軟件開發(fā)技能,因此每一門專業(yè)核心課程都設(shè)置相應(yīng)的實訓(xùn)課程,這些課程與綜合技術(shù)應(yīng)用訓(xùn)練都是以軟件開發(fā)項目為載體,通過實訓(xùn),使學(xué)生提高實踐能力、積累實際軟件開發(fā)經(jīng)驗。為實現(xiàn)實踐教學(xué)過程與軟件開發(fā)過程的對接,必須采用相適應(yīng)的教學(xué)模式以及提供合適的軟件開發(fā)實訓(xùn)環(huán)境。由于培養(yǎng)費用、實踐場地的限制,讓每個學(xué)生都走上實際工作崗位參加真實環(huán)境中的項目開發(fā)存在很大的困難。在軟件開發(fā)實訓(xùn)課程中采用基于虛擬實訓(xùn)的實踐教學(xué)模式可以很好的解決上述問題,虛擬實訓(xùn)作為一種打破時間、空間限制的實訓(xùn)方式在節(jié)約教學(xué)投資、優(yōu)化教學(xué)情境和實現(xiàn)資源共享等方面均起到十分重要的作用。
二、構(gòu)建基于虛擬實訓(xùn)的實踐教學(xué)模式
(一)構(gòu)建思路
根據(jù)對軟件開發(fā)人員崗位需求的調(diào)研,軟件產(chǎn)品開發(fā)工作過程包括項目立項、需求分析、設(shè)計、編碼、測試等一系列工作。工作任務(wù)對工作和技術(shù)的要求為熟悉軟件開發(fā)流程,掌握相關(guān)開發(fā)技術(shù),具備良好的代碼編碼習(xí)慣及技術(shù)文檔編寫能力,有較強(qiáng)自學(xué)能力、分析和獨立解決問題的能力、團(tuán)隊合作精神和溝通能力。
為達(dá)到學(xué)習(xí)過程與工作過程的一致性,引入虛擬公司形式,采用虛擬環(huán)境與真實項目相結(jié)合、虛擬員工與真實管理相結(jié)合的方式,構(gòu)建基于虛擬實訓(xùn)的實踐教學(xué)模式。在學(xué)校的實訓(xùn)室中,模擬公司的工作環(huán)境,以真實項目為載體,按照公司的軟件項目開發(fā)流程完成項目開發(fā),縮短學(xué)生所學(xué)知識和應(yīng)用的距離。通過教師學(xué)生員工化,模擬公司開發(fā)部的組織結(jié)構(gòu),教師擔(dān)任項目經(jīng)理的角色,完成崗位相應(yīng)的工作,包括協(xié)調(diào)人員配置、制定項目解決方案、監(jiān)控項目執(zhí)行、提供技術(shù)指導(dǎo)、組織項目評審。學(xué)生擔(dān)任開發(fā)部普通員工的角色,在軟件開發(fā)員崗位上完成項目開發(fā)各階段任務(wù),在項目實踐過程中熟悉規(guī)范的軟件開發(fā)流程,掌握高效的軟件項目開發(fā)方法和技能。
(二)內(nèi)容結(jié)構(gòu)
基于軟件開發(fā)崗位工作任務(wù)的要求,構(gòu)建具有“工學(xué)結(jié)合、校企結(jié)合、虛實結(jié)合”特點的虛擬實訓(xùn)教學(xué)模式。該模式主要由四部分組成:知識培訓(xùn)、項目實施、項目管理和項目評審。各組成部分涉及三大類角色:項目經(jīng)理(教師)、項目組長(學(xué)生)、項目成員(學(xué)生),項目經(jīng)理負(fù)責(zé)完成知識培訓(xùn)和項目管理,項目組長和項目成員負(fù)責(zé)項目實施工作,項目經(jīng)理、項目組長和項目成員共同完成項目評審。
知識培訓(xùn)部分:包括專業(yè)基礎(chǔ)知識、實訓(xùn)項目涉及的關(guān)鍵技術(shù)與知識以及項目應(yīng)用領(lǐng)域知識的培訓(xùn)。專業(yè)基礎(chǔ)知識培訓(xùn)包含軟件工程基本知識、特定語言的代碼規(guī)范、團(tuán)隊開發(fā)規(guī)范、技術(shù)文檔編寫、軟件測試用例的執(zhí)行和記錄等項目開發(fā)支撐知識。關(guān)鍵技術(shù)與知識的培訓(xùn)由項目經(jīng)理根據(jù)課程目標(biāo)和項目特點展開,包括關(guān)鍵技術(shù)和常用架構(gòu)的學(xué)習(xí)、企業(yè)最新技術(shù)和開發(fā)工具的引入。領(lǐng)域知識培訓(xùn)是指項目應(yīng)用領(lǐng)域背景知識的介紹,例如財務(wù)管理系統(tǒng)的開發(fā)背景涉及金融財會的相關(guān)知識。
項目實施部分:項目實施是虛擬實訓(xùn)教學(xué)的重要組成部分,包括實訓(xùn)任務(wù)分解和項目實現(xiàn)。項目組接受來自項目經(jīng)理的實訓(xùn)任務(wù),由項目組長進(jìn)行任務(wù)分解并分配到各項目成員。項目成員按照企業(yè)軟件開發(fā)流程執(zhí)行項目實施各階段的典型工作任務(wù)。
項目管理部分:項目管理包括進(jìn)度控制和過程檢查兩部分,由項目經(jīng)理實施以保證實訓(xùn)項目按實訓(xùn)計劃、實訓(xùn)大綱的要求如期完成。項目經(jīng)理指導(dǎo)項目組長制定項目開發(fā)計劃,根據(jù)項目計劃監(jiān)督各組的工作進(jìn)度。過程檢查部分包括設(shè)定過程檢查點以及階段通過標(biāo)準(zhǔn),項目經(jīng)理按照通過標(biāo)準(zhǔn)審查階段成果,確保項目完成質(zhì)量。
項目評審部分:項目評審部分由項目演示交流和項目考核兩部分組成。在項目演示交流環(huán)節(jié),各項目組介紹開發(fā)過程、演示項目運行結(jié)果、進(jìn)行項目答辯。在項目考核方面,采用多元化的考核體系,注重對學(xué)生實訓(xùn)過程的評價,在項目經(jīng)理考核的基礎(chǔ)之上,參照項目組長評價,得出最終評價結(jié)果。
(三)應(yīng)用過程
關(guān)鍵詞:核電工程軟件;軟件開發(fā);過程控制
中圖分類號:TP311
文獻(xiàn)標(biāo)識碼:A
文章編號:1009-2374(2012)24-0118-03
1 概述
隨著我國核電事業(yè)的蓬勃發(fā)展,在核電行業(yè)尤其是核電廠,無論是從設(shè)計、制造、運行到退役等各個階段,還是從控制、測量、檢查等各個環(huán)節(jié),無不涉及到計算機(jī)軟件的應(yīng)用。作為我國核電行業(yè)生產(chǎn)管理和安全保證的重要手段和工具之一,核電工程應(yīng)用軟件正扮演著越來越重要的角色。
本文主要以軟件工程化開發(fā)和軟件工程化管理的思想和方法為依據(jù),以我們研制的核電工程應(yīng)用軟件——核電廠系統(tǒng)化培訓(xùn)管理系統(tǒng)為例,介紹了核電工程應(yīng)用軟件的研制過程控制管理以及在此過程中要遵循的主要原則和規(guī)范,并對過程管理和研制特點做了簡要分析總結(jié)。
2 項目概況
2.1 背景
核電廠各類人員的整體、綜合素質(zhì)和業(yè)務(wù)能力對達(dá)到電廠“安全、可靠、穩(wěn)定、經(jīng)濟(jì)運行”的目標(biāo)至關(guān)重要。為了保持人員的資格和工作能力、保證人員的培訓(xùn)質(zhì)量和工作績效,核電廠將在培訓(xùn)管理活動中,采用IAEA推薦的國際上普遍應(yīng)用的SAT(Systematic Approach to Training)系統(tǒng)化培訓(xùn)方法對培訓(xùn)活動進(jìn)行管理控制。
針對系統(tǒng)化培訓(xùn)活動中控制過程復(fù)雜、數(shù)據(jù)信息量大、用戶接口繁多等特點,相關(guān)核電廠決定借助目前流行的計算機(jī)技術(shù),遵循核電廠人員系統(tǒng)化培訓(xùn)方法的控制流程,開發(fā)一套“核電廠系統(tǒng)化培訓(xùn)管理系統(tǒng)(以下簡稱TMS-SAT系統(tǒng))”來輔助核電廠的被培訓(xùn)人員、培訓(xùn)管理人員和電廠管理人員,系統(tǒng)地規(guī)范核電廠現(xiàn)有的培訓(xùn)活動,提高培訓(xùn)效果和效率,使核電廠各類人員能獲得并保持完成所承擔(dān)工作的資格和能力。
2.2 項目目標(biāo)和范圍
核電廠系統(tǒng)化培訓(xùn)管理系統(tǒng)屬于核電工程軟件類項目,目標(biāo)是在將來核電廠內(nèi)的培訓(xùn)工作中以TMS-SAT系統(tǒng)為載體推廣SAT培訓(xùn)方法,全面推行系統(tǒng)化培訓(xùn)的理念和管理,不斷完善核電廠的培訓(xùn)管理工作,該項目主要完成軟件系統(tǒng)平臺的開發(fā),主要內(nèi)容包括:崗位任務(wù)分析子系統(tǒng)開發(fā),培訓(xùn)大綱管理子系統(tǒng)開發(fā),培訓(xùn)教材管理子系統(tǒng)開發(fā),培訓(xùn)記錄管理子系統(tǒng)開發(fā),評價反饋管理子系統(tǒng)開發(fā)以及考試題庫管理子系統(tǒng)開發(fā)。
3 項目實施和過程管理實踐
TMS-SAT項目的控制管理是按需求確定范圍、按目標(biāo)制定質(zhì)量計劃和開發(fā)計劃、按計劃執(zhí)行管理的過程,對該項目軟件系統(tǒng)開發(fā)各階段加強(qiáng)控制管理的根本目的在于增強(qiáng)對軟件開發(fā)的控制能力,提升軟件開發(fā)的質(zhì)量。TMS-SAT按以下6個階段
進(jìn)行:
3.1 項目的定義與分析
該項目的立項由用戶單位根據(jù)自身業(yè)務(wù)的工作需要,對立項目的、業(yè)務(wù)需求范圍、技術(shù)經(jīng)濟(jì)指標(biāo)、開發(fā)周期要求等方面做簡要概述,進(jìn)行項目立項的可行性論證。單位在該階段協(xié)助用戶完成系統(tǒng)的定義與分析,協(xié)助用戶編制《技術(shù)規(guī)格書》并交付用戶審查,使用戶能了解我們的研發(fā)能力和對此軟件開發(fā)所需投入的人力、物力以及此項目最終達(dá)到的目標(biāo)。
3.2 需求分析階段
當(dāng)?shù)谝浑A段工作完成后,我們將制定適合本項目開發(fā)活動中的《質(zhì)量計劃》來控制軟件開發(fā)周期內(nèi)所有活動的工作條件、工作結(jié)果、評審要求等節(jié)點和各工作階段的質(zhì)量控制點要求;為了向用戶描述有關(guān)此項目文檔要求、人力資源、開發(fā)進(jìn)度、審查要求、最終交付的產(chǎn)品等內(nèi)容,編制此項目的《開發(fā)計劃》和《測試計劃》。
然后根據(jù)《技術(shù)規(guī)格書》的要求,進(jìn)一步了解此項目的數(shù)據(jù)輸入、輸出、系統(tǒng)性能、環(huán)境以及最終將達(dá)到的目標(biāo)等詳細(xì)內(nèi)容,形成本項目的《軟件需求分析說明書》和《數(shù)據(jù)要求說明書》。
3.3 系統(tǒng)設(shè)計階段
當(dāng)軟件需求分析階段的審查通過后,根據(jù)《軟件需求分析說明書》和《數(shù)據(jù)要求說明書》的要求,完成“應(yīng)該如何解決這個問題”和“具體解決此問題應(yīng)該采取的辦法”這兩項工作。根據(jù)此系統(tǒng)的總體概要設(shè)計,通過數(shù)據(jù)流圖和數(shù)據(jù)字典的形勢來表示系統(tǒng)的邏輯模型,形成《概要設(shè)計說明書》和《數(shù)據(jù)庫設(shè)計說明書》。
3.4 系統(tǒng)開發(fā)
開發(fā)人員按照《詳細(xì)設(shè)計說明書》和《軟件開發(fā)規(guī)范》的要求,編寫出正確的、容易理解和便于維護(hù)的程序模塊。在每個子模塊形成后,程序開發(fā)人員和軟件測試人員對此子模塊進(jìn)行單元測試,形成《單元測試報告或記錄》。在此階段,還將根據(jù)《測試計劃》和《詳細(xì)設(shè)計說明書》的要求,編制此軟件系統(tǒng)的《測試程序》,將所需測試的內(nèi)容、步驟、結(jié)果、案例等描述出來供測試階段使用。
3.5 系統(tǒng)測試階段
該項目軟件系統(tǒng)在開發(fā)人員完成所有軟件模塊編碼后,測試人員及用戶將根據(jù)《測試程序》進(jìn)行軟件系統(tǒng)測試。對測試中產(chǎn)生的軟件不符合項,形成“軟件問題報告單”,并最終形成《系統(tǒng)測試報告》。當(dāng)軟件交付給用戶使用時,還將同時向用戶提交《軟件系統(tǒng)現(xiàn)場安裝實施手冊》、《用戶手冊》和《維護(hù)手冊》等相關(guān)文檔。
3.6 運行和維護(hù)階段
項目正式交付給用戶使用后,關(guān)鍵任務(wù)是通過各種必要的維護(hù)活動使軟件系統(tǒng)能長久地滿足用戶的需要。為完成此任務(wù),我們從改正性、適應(yīng)性、完善性、預(yù)防性等幾方面來進(jìn)行維護(hù)活動中的工作。
4 項目控制管理的分析總結(jié)
4.1 項目開發(fā)管理質(zhì)量化
該項目組通過編制《項目質(zhì)量計劃》、《項目開發(fā)計劃》和《項目測試計劃》等質(zhì)量文件,對該項目進(jìn)行全過程監(jiān)督、控制,使各質(zhì)量相關(guān)活動在受控狀態(tài)下完成,確保項目中的各項質(zhì)量要求得到了滿足。
4.2 項目開發(fā)過程規(guī)范化
該項目的軟件系統(tǒng)在依據(jù)軟件工程化開發(fā)和軟件工程化管理的理念和方法的基礎(chǔ)上,通過嚴(yán)格執(zhí)行有關(guān)軟件開發(fā)管理和工作程序,規(guī)范軟件研發(fā)過程,同時也更好地指導(dǎo)了培訓(xùn)大綱和基礎(chǔ)理論教材的開發(fā)工作;項目所有過程文檔資料及軟件編碼均采用統(tǒng)一的編碼和編寫格式。
4.3 項目開發(fā)控制進(jìn)度化
依據(jù)軟件工程化開發(fā)和軟件工程化管理的理念和方法,科學(xué)地劃分和制定核電工程應(yīng)用軟件的研制過程,同時各階段也兼顧了培訓(xùn)大綱和基礎(chǔ)理論教材的開發(fā)工作;采用三級進(jìn)度管理體系,分級落實進(jìn)度責(zé)任制。
4.4 項目開發(fā)監(jiān)督崗位化
由于該項目軟件系統(tǒng)的《需求分析說明書》往往是采用軟件設(shè)計的術(shù)語編寫,業(yè)務(wù)需求方難以理解,也就很難發(fā)現(xiàn)需求報告中與實際需求不符之處,更難提出建設(shè)性的意見。因此在該項目軟件系統(tǒng)的研制開發(fā)過程中引入了軟件監(jiān)督崗位,由核電廠信息技術(shù)管理部門擔(dān)任,協(xié)調(diào)業(yè)務(wù)需求部門和軟件開發(fā)方的關(guān)系,監(jiān)控軟件開發(fā)任務(wù)的執(zhí)行情況,給開發(fā)人員和管理層提供反映軟件過程質(zhì)量的信息和數(shù)據(jù),提高項目透明度。
4.5 人員配備專業(yè)化
項目編制了各類人員的配置計劃,如系統(tǒng)分析人員、系統(tǒng)設(shè)計人員、軟件開發(fā)人員、測試和驗證人員等,明確了具體的工作方式、內(nèi)容和要求,并根據(jù)崗位要求進(jìn)行必要的培訓(xùn)和再培訓(xùn),以便使他們獲得并保持必要的能力。
5 結(jié)語
實踐證明由于該項目在軟件系統(tǒng)方面依照軟件工程化開發(fā)和軟件工程化管理的理念和方法,嚴(yán)格按照我們單位提出的核電工程軟件研制方法進(jìn)行研制、設(shè)計和開發(fā),加強(qiáng)軟件研發(fā)的規(guī)范化管理,同時也更好地指導(dǎo)了培訓(xùn)大綱和基礎(chǔ)理論教材的開發(fā)工作,從而保證了軟件研發(fā)乃至整個項目的進(jìn)度和質(zhì)量,使得我們開發(fā)的產(chǎn)品可維護(hù)性好,特別是在出廠驗收后大大減少了在現(xiàn)場測試和維護(hù)的人員投入,最終也得到了用戶的認(rèn)可。
參考文獻(xiàn)
[1] 國際原子能機(jī)構(gòu).核電廠人員培訓(xùn)及其評價(技術(shù)報告叢書第380號2005版)[S].
[2] 中國標(biāo)準(zhǔn)出版社.軟件工程術(shù)語(GB/T11457-2006版)[S].
關(guān)鍵詞:實訓(xùn)體系;Android軟件開發(fā);培訓(xùn)
中圖分類號:TP31 文獻(xiàn)標(biāo)識碼:A 文章編號:1001-828X(2013)06-0-02
移動互聯(lián)網(wǎng)是繼通信、計算機(jī)和互聯(lián)網(wǎng)之后的又一次信息產(chǎn)業(yè)的革命性發(fā)展,并成為全球信息通信行業(yè)的萬億元級新興產(chǎn)業(yè)。近年來,由于3G技術(shù)的發(fā)展,國內(nèi)智能手機(jī)的普及率急升,人才市場對于Android軟件開發(fā)工程師的需求量也急升,因此,如何快速地培養(yǎng)和建設(shè)Android軟件開發(fā)工程師,成為IT企業(yè)培訓(xùn)的熱點。本文旨在探討IT企業(yè)如何通過實訓(xùn)培訓(xùn)體系的模式快速培養(yǎng)有計算機(jī)基礎(chǔ)的初學(xué)者成為相當(dāng)于1-2年開發(fā)經(jīng)驗的開發(fā)工程師。
實訓(xùn)體系建設(shè)包括獨特的實訓(xùn)形式建設(shè)、實現(xiàn)過程的開展以及課程和師資的組建。其中,最根本的把握好實訓(xùn)的內(nèi)涵和監(jiān)控整個實訓(xùn)過程的開展是關(guān)鍵。
一、實訓(xùn)形式
實訓(xùn)的特點就是通過項目實際操作的方式,使得每個學(xué)生通過做項目來鍛煉時間的編程能力。具體的形式為每個班的學(xué)生組成軟件項目組數(shù)個,每個項目組均以真實項目為背景,重新演練一個經(jīng)裁剪過的項目立項、計劃、需求分析、設(shè)計、編碼、測試和交付的全過程,按照企業(yè)的正規(guī)開發(fā)流程組織實施,讓學(xué)生熟悉軟件工程在企業(yè)中的具體應(yīng)用方法。項目總監(jiān)由實訓(xùn)老師來擔(dān)任,控制項目的進(jìn)度和質(zhì)量,學(xué)生通過直接扮演項目開發(fā)組中的成員角色,來了解在軟件項目開發(fā)團(tuán)隊中的角色、過程、規(guī)范和執(zhí)行方法,以及在團(tuán)隊中合作溝通能力的重要性,養(yǎng)成良好的職業(yè)習(xí)慣。以下是學(xué)生扮演的角色的主要職責(zé)說明,學(xué)生可以根據(jù)自己在學(xué)校的學(xué)習(xí)情況扮演如下角色??紤]到Android軟件開發(fā)工程師培訓(xùn)的實際需要,項目開發(fā)過程中某些方面的學(xué)時將相對壓縮,而把重點放在跟開發(fā)直接相關(guān)的角色上面。
二、實訓(xùn)過程
整個實訓(xùn)過程包括實訓(xùn)預(yù)備期和實訓(xùn)期兩個階段。
實訓(xùn)預(yù)備期:實訓(xùn)的學(xué)生對Android課程體系中必須掌握的業(yè)界實用技術(shù)知識清單和相關(guān)課件進(jìn)行學(xué)習(xí),必要時進(jìn)行相關(guān)課程的考試,考試合格者才能進(jìn)入實訓(xùn)環(huán)節(jié)。
實訓(xùn)期:以模擬公司為平臺,以仿真的商業(yè)案例項目為載體,將企業(yè)文化及職業(yè)素養(yǎng)訓(xùn)練、IT技能培訓(xùn)、行業(yè)知識以及業(yè)務(wù)流程實踐等實訓(xùn)內(nèi)容完全貫穿在模擬公司的運營過程中,使學(xué)生在實踐中體驗企業(yè)工作環(huán)境,獲得一定的實際經(jīng)驗和職業(yè)磨練。
實訓(xùn)師發(fā)放《項目實訓(xùn)學(xué)生指導(dǎo)手冊》,手冊中規(guī)定了學(xué)生在項目Android軟件開發(fā)各階段的輸入、活動說明和輸出。實訓(xùn)選擇的生命周期會覆蓋軟件開發(fā)過程的基本要素。其中有的要素在實訓(xùn)中存在操作困難的,只講解方法并直接發(fā)放相關(guān)資料。
實訓(xùn)中由實訓(xùn)老師統(tǒng)一指導(dǎo)各階段的詳細(xì)過程指導(dǎo)?;具^程如下:
1)搭建環(huán)境:主要講解搭建各種手機(jī)操作系統(tǒng)所需開發(fā)環(huán)境所要具備的軟、硬件及網(wǎng)絡(luò)知識。包括計算機(jī)中各種硬件和接口。軟件的分類、分發(fā)和授權(quán)等方式;操作系統(tǒng)的初步知識;注冊表、病毒、安全等知識;基本協(xié)議、活動目錄等知識。從而讓學(xué)員可以在實際工作環(huán)境當(dāng)中搭建需要的開發(fā)環(huán)境。
2)完成的軟件開發(fā)過程:主要講解實際項目的開發(fā)所涉及到的軟件開發(fā)過程的各個環(huán)節(jié),如需求開發(fā)、設(shè)計、測試、項目管理、配置管理等,并將其運用到實訓(xùn)項目開發(fā)。
3)Android手機(jī)軟件應(yīng)用開發(fā):這是本培訓(xùn)課程的核心部分,主要是使學(xué)員掌握軟件開發(fā)的技術(shù),掌握編程的方法、思想,了解軟件開發(fā)過程當(dāng)中常犯的錯誤。課程注重實用性、重在培養(yǎng)學(xué)員對代碼分析的能力,掌握編碼規(guī)范,掌握調(diào)試知識和分析程序錯誤的能力。同時學(xué)習(xí)內(nèi)存檢查工具和軟件配置管理等知識。課程中貫穿了一個開發(fā)項目,以增加學(xué)員開發(fā)項目的經(jīng)驗。
4)測試計劃與軟件缺陷:主要介紹軟件測試的基本概念和基礎(chǔ)知識、如何編寫測試計劃、識別軟件缺陷、編寫缺陷報告等。通過學(xué)習(xí),學(xué)員可以掌握軟件測試的流程、軟件測試的策略和分類,掌握缺陷的分類和優(yōu)先級等,從而對測試有一個整體的認(rèn)識。介紹了缺陷跟蹤管理系統(tǒng)(測試工具)。總體來說,本課程將使學(xué)員掌握軟件測試相關(guān)的大部分基礎(chǔ)知識。
5)數(shù)據(jù)庫:通過對數(shù)據(jù)庫基礎(chǔ)知識的講解,讓學(xué)員掌握這些技術(shù)。數(shù)據(jù)庫是以主流的Oracle和MySQL 數(shù)據(jù)庫的運用為主。
6) 職業(yè)導(dǎo)向訓(xùn)練:進(jìn)行職業(yè)引導(dǎo),包括就業(yè)指導(dǎo)和職前引導(dǎo)。通過座談會等輔助訓(xùn)練明確就業(yè)方向,進(jìn)一步了解職業(yè)發(fā)展形式。
三、實訓(xùn)課程設(shè)計和引進(jìn)
A.參考國內(nèi)外IT知名企業(yè)現(xiàn)有已取得各地區(qū)政府認(rèn)同的移動應(yīng)用軟件開發(fā)培訓(xùn)課程體系,以移動應(yīng)用行業(yè)應(yīng)用的實際需求為導(dǎo)向,自主研究開發(fā)適合本地企業(yè)的Android軟件開發(fā)方面的案例及課件。
B.結(jié)合需要引進(jìn)其他國內(nèi)一流的成功Android軟件開發(fā)培訓(xùn)課程體系。
C.培訓(xùn)實例設(shè)計:根據(jù)大多數(shù)軟件開發(fā)企業(yè)的實際需求,以多個實際項目為原型開發(fā)出具有實戰(zhàn)意義的案例。
D.企業(yè)培訓(xùn)定制:企業(yè)培訓(xùn)必須密切結(jié)合企業(yè)戰(zhàn)略,從企業(yè)的人力資源規(guī)劃和開發(fā)戰(zhàn)略出發(fā),滿足組織及員工兩方面的要求,考慮企業(yè)資源條件與員工素質(zhì)基礎(chǔ),考慮人才培養(yǎng)的超前性及培訓(xùn)效果的不確定性,為企業(yè)確定員工培訓(xùn)的目標(biāo),選擇培訓(xùn)內(nèi)容及培訓(xùn)方式。
四、師資隊伍建設(shè)和引進(jìn)
在內(nèi)部培養(yǎng)培訓(xùn)講師和實訓(xùn)導(dǎo)師的同時,我們還將根據(jù)課程需要積極引進(jìn)高端的Android培訓(xùn)講師,包括網(wǎng)絡(luò)通訊、Android應(yīng)用開發(fā)等各領(lǐng)域的高端實戰(zhàn)人才,建設(shè)一支實戰(zhàn)經(jīng)驗、培訓(xùn)經(jīng)驗俱佳的師資隊伍。
五、制定Android軟件開發(fā)工程師培訓(xùn)大綱
Android軟件開發(fā)就業(yè)培訓(xùn)大綱由多名資深移動應(yīng)用軟件開發(fā)專家及有豐富Android實戰(zhàn)經(jīng)驗的工程師傾力開發(fā)而成,在本實訓(xùn)項目里將得到充分的貫徹執(zhí)行。該課程總結(jié)了Google、中興、華為、HTC、摩托羅拉、IBM等頂級國內(nèi)、跨國大型企業(yè)的先進(jìn)的軟件開發(fā)理論和經(jīng)驗,在此基礎(chǔ)上形成了一套適合我國國情的Android軟件培訓(xùn)課程。目的是將優(yōu)秀企業(yè)完善的Android軟件開發(fā)技術(shù)和方法等推廣到國內(nèi)的軟件產(chǎn)業(yè),以提高廣州本地軟件企業(yè)的Android應(yīng)用軟件開發(fā)水平,改進(jìn)開發(fā)方法和方式。
Android軟件開發(fā)培訓(xùn)采用教師授課和學(xué)員實際練習(xí)相結(jié)合的方式。針對每個培訓(xùn)的章節(jié),在課程中都會提供豐富的項目實踐案例,使每個學(xué)員不僅能夠?qū)W到Android軟件開發(fā)的一些基本理論知識,重要的是能夠讓學(xué)員將學(xué)到的知識運用到實際的移動應(yīng)用軟件開發(fā)活動過程中。
本Android軟件開發(fā)就業(yè)培訓(xùn)大綱主要由三大部分組成:
基礎(chǔ)階段:主要闡述了一個Android軟件開發(fā)工程師需要了解和掌握的入門知識,包括Android開發(fā)編程語言基礎(chǔ),主流數(shù)據(jù)庫開發(fā)技術(shù),以及一些必要工具的使用,是邁入Android軟件工程師職業(yè)必備的一些基礎(chǔ)知識。
中級階段:主要闡述了一個Android軟件開發(fā)工程師需要掌握的常用的通信協(xié)議,整套主流的應(yīng)用服務(wù)器和中間件編程技術(shù),數(shù)據(jù)訪問層框架技術(shù),并幫助深入理解軟件工程過程。
高級階段:通過一個個具體的項目案例,將上面提到的技術(shù)、方法、度量、文檔和過程相結(jié)合,掌握Android移動應(yīng)用系統(tǒng)開發(fā)技術(shù),包括Android環(huán)境下的音視頻多媒體處理、游戲技術(shù)開發(fā)、底層核心架構(gòu)技術(shù)等,并進(jìn)行項目開發(fā)實戰(zhàn)。了解不同設(shè)計模式與運用、軟件性能調(diào)優(yōu)、軟件過程管理等。
關(guān)鍵詞:軟件開發(fā);實訓(xùn);外包;測試
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2013)36-8332-02
1 背景
工信部近日印發(fā)《軟件和信息技術(shù)服務(wù)業(yè)“十二五”發(fā)展規(guī)劃》,規(guī)劃明確了“十二五”的發(fā)展思路和發(fā)展目標(biāo),確定了10項發(fā)展重點和8項重大工程。而據(jù)業(yè)界預(yù)計,到2015年,我國軟件行業(yè)收入將突破4萬億元,年均增長25%以上,出口突破600億美元。
2 項目實施的必要性和可行性分析
外包人才的缺口從結(jié)構(gòu)層次來看,不是局部的人才短缺,而是全方位的供應(yīng)不足。正規(guī)院校培養(yǎng)出來的學(xué)生能掌握基本的軟件開發(fā)技術(shù),但缺乏軟件開發(fā)工作經(jīng)驗、項目交流和團(tuán)隊合作鍛煉,需要經(jīng)過相當(dāng)?shù)捻椖恐R與技能培訓(xùn)。超過60%的高校開設(shè)了計算機(jī)專業(yè)。但是,適應(yīng)外包企業(yè)需要的大學(xué)畢業(yè)生很少,大學(xué)畢業(yè)生常常需要企業(yè)花大力氣培養(yǎng),而企業(yè)希望招來就用,不愿自己培養(yǎng)人才增加成本。本軟件開發(fā)、測試實訓(xùn)室應(yīng)此目的設(shè)置,目標(biāo)培養(yǎng)中低端軟件人才。
3 建設(shè)實訓(xùn)中心項目的可行性
職業(yè)教育與普通教育相比有四個特點:一是教育性質(zhì)和目標(biāo)不同。重在對準(zhǔn)備就業(yè)的學(xué)生傳授職業(yè)知識,培養(yǎng)職業(yè)技能,陶冶職業(yè)道德,提高職業(yè)能力和勞動素質(zhì)教育。二是教育內(nèi)容與要求不同。以提高學(xué)生的專業(yè)知識與技術(shù)能力為主,重在讓學(xué)生懂得做什么、怎么做,使學(xué)生學(xué)有專長,畢業(yè)后投身于社會經(jīng)濟(jì)建設(shè)的實踐活動。目前盡管有部分學(xué)生升學(xué),但就總體看,其教育內(nèi)容與要求未變。三是課程模式與結(jié)構(gòu)不同。其課程模式注重實踐教學(xué)環(huán)節(jié),課程結(jié)構(gòu)注重強(qiáng)化學(xué)生技能的應(yīng)用性、針對性和職業(yè)性。四是學(xué)校功能與任務(wù)不同。要求實施職業(yè)教育的學(xué)校必須具有實訓(xùn)實操的條件,否則職業(yè)教育很難獲得應(yīng)有的效果。
4 軟件開發(fā)和測試實訓(xùn)室建設(shè)目標(biāo)
軟件開發(fā)技術(shù)實訓(xùn)可以包含四類實訓(xùn)課程:
軟件開發(fā)實訓(xùn):包括完整的生命周期的軟件開發(fā)過程
軟件階段實訓(xùn):選取軟件生命周期其中某個階段獨立工作(例如編碼工作)的實訓(xùn);
軟件測試實訓(xùn):包括軟件開發(fā)過程隨行測試和獨立的軟件測試技術(shù)實訓(xùn);
軟件項目管理:這是關(guān)于軟件技術(shù)高級培訓(xùn)。
實訓(xùn)裝備:
硬件設(shè)備:5組服務(wù)器;50臺工位電腦;網(wǎng)絡(luò)和交換設(shè)備;5組光盤刻錄、掃描儀和打印機(jī)等輔助設(shè)備;1套投影和無線擴(kuò)音設(shè)備;互聯(lián)網(wǎng)接入;軟件平臺:Windows 和Linux服務(wù)器平臺,mySQl、SQL Server數(shù)據(jù)庫系統(tǒng)、J2EE和.net開發(fā)平臺和課程相關(guān)的軟件工具;LoadRunner 、WinRunner等常用測試工具;項目管理工具M(jìn)S Project;辦公系統(tǒng) Ms Office 管理軟件:實訓(xùn)管理軟件
實訓(xùn)方法:采用模擬企業(yè)運營方式將教練和學(xué)員混編成項目組方式完成軟件開發(fā)和測試實訓(xùn);打破學(xué)科界線和知識體系,以項目目標(biāo)驅(qū)動安排教學(xué)內(nèi)容,編制教材和教學(xué)課件,教學(xué)內(nèi)容來源于合作企業(yè)以往的實際項目,由企業(yè)和學(xué)校共同對原項目分解、重組、封裝形成教學(xué)課件,以實際項目文檔為基礎(chǔ)編制實訓(xùn)文檔。
實訓(xùn)課程:本實訓(xùn)室分設(shè)以下類型實訓(xùn)課程
素質(zhì)教育類課程:敬業(yè)精神、團(tuán)隊合作
企業(yè)標(biāo)準(zhǔn)類課程:ISO9000和CMM認(rèn)證,企業(yè)化管理制度
項目管理類課程:項目管理方法和項目管理系統(tǒng)使用;
軟件開發(fā)、測試類課程:包括軟件生命周期理論、文檔編制和理解、軟件工具、編碼和測試方法、系統(tǒng)部署、和版本管理等;
實訓(xùn)過程:
先期培訓(xùn):素質(zhì)類、企業(yè)標(biāo)準(zhǔn)、項目管理、背景知識等
基礎(chǔ)培訓(xùn):由教師教授課題涉及的基本方法、工具和規(guī)范;
開題培訓(xùn):由專業(yè)項目管理人員做課題報告,解釋項目要點;
5 實訓(xùn)課題:軟件開發(fā)實訓(xùn)
本實訓(xùn)室培訓(xùn)軟件開發(fā)人員和軟件測試人員,實訓(xùn)方法可以將學(xué)員分組,在同一項目中分別承擔(dān)軟件開發(fā)和軟件測試工作,也可以獨立執(zhí)行軟件開發(fā)和軟件測試實訓(xùn)課程
軟件開發(fā)實訓(xùn)包括一下實訓(xùn)模塊:
1)背景和基礎(chǔ)知識:包括軟件開發(fā)規(guī)范,軟件企業(yè)ISO9000和CMM認(rèn)證,學(xué)校軟件工具等;
2)搭建開發(fā)環(huán)境:能夠配置自己的軟件開發(fā)環(huán)境,包括安裝操作系統(tǒng)和開發(fā)工具包;能夠配置自己與別人的協(xié)同開發(fā)環(huán)境,包括網(wǎng)絡(luò)配置,文件共享,安裝遠(yuǎn)程打印機(jī)等;
編寫代碼:使學(xué)員能夠讀懂詳細(xì)設(shè)計,掌握開發(fā)工具的配置與使用,掌握開發(fā)語言的基本知識和數(shù)據(jù)結(jié)構(gòu),了解簡單的算法,會設(shè)計簡單的界面,并應(yīng)用常見控件,具有數(shù)據(jù)庫編程的初步能力;
圖1
3)測試:使學(xué)員除了掌握測試的理論知識外,還應(yīng)該學(xué)會編寫單元測試案例,編寫單元測試文檔,在執(zhí)行單元測試的時候,記錄測試結(jié)果,并分析錯誤原因,以利于下一步的調(diào)試。
學(xué)員應(yīng)掌握以下具體技術(shù)、平臺和工具,Windows系列和Linux操作系統(tǒng);Visual Studio工具;Borland 公司工具,SQLServer,Oracle ;Apache+tomcat,Web Logic 等;TCP/IP,創(chuàng)建網(wǎng)絡(luò)連接,網(wǎng)絡(luò)打?。换赨ML的詳細(xì)設(shè)計文檔,面向?qū)ο蠓治龊驮O(shè)計;單元測試,黑盒測試,白盒測試,設(shè)計測試案例等;執(zhí)行測試并調(diào)試錯誤,系統(tǒng)和配置技術(shù);
軟件測試實訓(xùn)包括以下實訓(xùn)模塊:
計算機(jī)及常見操作系統(tǒng)、軟件設(shè)計語言基礎(chǔ)、 數(shù)據(jù)庫基礎(chǔ)、軟件工程基礎(chǔ)、軟件測試基礎(chǔ)、自動化測試:包括OSI模型、TCP/IP模型及常見網(wǎng)絡(luò)協(xié)議,常用軟件平臺、工具使用LoadRunner 、WinRunner測試工具使用,各種測試規(guī)范
6 總結(jié)
在當(dāng)今社會信息化的進(jìn)程中,綜合應(yīng)用各種新技術(shù)的系統(tǒng)軟件功不可沒的,軟件開發(fā)和測試使全社會的信息管理、信息檢索、信息分析達(dá)到了新的水平,因此,學(xué)習(xí)軟件開發(fā)、測試的相關(guān)基礎(chǔ)知識,對于信息時代的每一個成員都是十分必要的。
參考文獻(xiàn):
[1] 楊文宏,李心輝.面向?qū)ο蟮能浖y試[M].北京:中信出版社,2002.
[2] Ron Patton.Software Testing [M]. 2版. 北京:機(jī)械工業(yè)出版社,2006.
關(guān)鍵詞:敏捷轉(zhuǎn)型;反模式;軟件開發(fā)
1敏捷開發(fā)方法的出現(xiàn)
軟件工程是20世紀(jì)70年代提出來的概念。傳統(tǒng)的軟件開發(fā)方法有瀑布模型、螺旋模型、噴泉模型、RUP4類,它們注重文檔的完整、程序的易讀性、結(jié)構(gòu)的完整性,屬于重型軟件開發(fā)方法。在過去的一段時間,傳統(tǒng)軟件工程的方法很好地適應(yīng)了軟件開發(fā)的需求,其不僅關(guān)注軟件構(gòu)造方式的完美型,同時也注重總體的可預(yù)測性,以文檔為驅(qū)動,按照需求分析、概要設(shè)計、詳細(xì)設(shè)計、編碼、測試、軟件交付的流程來進(jìn)行開發(fā)。在軟件產(chǎn)業(yè)不是很發(fā)達(dá)、軟件開發(fā)人員稀少的過去,這樣嚴(yán)格的開發(fā)流程無疑是很適用的[1]。隨著市場環(huán)境的變化,傳統(tǒng)軟件開發(fā)方法面臨著嚴(yán)重的挑戰(zhàn)。一方面是用戶需求的多樣性、個性化和快速變化,另一方面則是來自激烈的市場競爭對軟件的質(zhì)量和價值提出了更高的要求[2-3]。這就要求軟件開發(fā)需要以更靈活的手段來應(yīng)對不斷變化的需求,用更短的時間和更低廉的代價將產(chǎn)品推向市場滿足用戶需要,由此人們開始對軟件開發(fā)過程的本質(zhì)重新進(jìn)行思考和探索,在20世紀(jì)90年代,一系列輕量級開發(fā)方法相繼被很多軟件大師提出。2001年2月在美國猶他州的雪鳥滑雪場召開了軟件開發(fā)大會,本次會議了“敏捷宣言”,包括4個核心價值觀和12條基本原則,這標(biāo)志著敏捷開發(fā)的誕生。相對于傳統(tǒng)軟件工程,敏捷開發(fā)主要有3個重要特點:(1)敏捷開發(fā)是“適應(yīng)性”而非“預(yù)設(shè)性”的,傳統(tǒng)軟件工程試圖對一個軟件開發(fā)項目在很長的時間跨度內(nèi)做出詳細(xì)的計劃,然后依據(jù)計劃進(jìn)行開發(fā),這類方法在計劃制定完成后拒絕變化,而敏捷開發(fā)歡迎變化,甚至允許改變自身過程來適應(yīng)變化;(2)敏捷開發(fā)是“面向人”的而非“面向過程”的,它們試圖使軟件開發(fā)工作能夠利用人的特點,充分發(fā)揮人的創(chuàng)造力和主動性;(3)敏捷開發(fā)是“產(chǎn)品驅(qū)動”而非“文檔驅(qū)動”,開發(fā)過程只需要較少的過程文檔,在軟件的迭代開發(fā)過程中,一直保持軟件產(chǎn)品的可用狀態(tài),以產(chǎn)品的增量來衡量進(jìn)度的實際狀態(tài)。敏捷開發(fā)的諸多優(yōu)點吸引了越來越多的軟件企業(yè)研究敏捷開發(fā),積極實施敏捷轉(zhuǎn)型。
2敏捷轉(zhuǎn)型的反模式
盡管敏捷開發(fā)方法已經(jīng)提出多年,但實施過程中還是出現(xiàn)大量的疑問和難點,在傳統(tǒng)型軟件企業(yè)里面還大量存在敏捷轉(zhuǎn)型的失敗案例。這些失敗案例可以總結(jié)為6條失敗教訓(xùn),即敏捷轉(zhuǎn)型的反模式。
2.1缺少管理層支持
敏捷宣言告訴我們,“圍繞被激勵起來的個人來構(gòu)建項目,給他們提供所需要的環(huán)境和支持,并且信任他們能夠完成工作。”在轉(zhuǎn)型過程中,同樣要求管理層需要關(guān)注團(tuán)隊成員的狀態(tài),為轉(zhuǎn)型工作提供足夠的資源保障。
2.2轉(zhuǎn)型目的缺失或不明確
管理層必須明確希望從敏捷得到什么,如果對要解決的問題都不清楚,那么努力的效果就會大打折扣或無功而返?!皠e的公司或別的項目那樣做”并不足以成為自己采用的理由。所以敏捷轉(zhuǎn)型必須緊盯自己的問題,弄清楚為什么希望做出改變,進(jìn)而再啟動敏捷轉(zhuǎn)型。
2.3組織結(jié)構(gòu)與角色和敏捷不相容
敏捷宣言提到“最好的架構(gòu)、需求和設(shè)計出自于自組織的團(tuán)隊”。在傳統(tǒng)軟件企業(yè)中需求分析、編碼開發(fā)和測試常常分屬不同的行政部門,這樣的組織架構(gòu)容易阻礙自組織團(tuán)隊建立,讓敏捷團(tuán)隊的成員感覺僅僅能夠做局部優(yōu)化。
2.4指導(dǎo)不足
敏捷轉(zhuǎn)型過程中,需要向團(tuán)隊成員講述敏捷的思想和方法,過少的培訓(xùn)甚至沒有培訓(xùn),將讓團(tuán)隊感到迷茫。在實踐過程中,還會存在很多疑問或誤區(qū),還需要有經(jīng)驗的敏捷教練現(xiàn)場一對一指導(dǎo)。
2.5將敏捷等價為Scrum
敏捷的范疇比Scrum要大得多。Scrum本身并不涉及工程卓越、業(yè)務(wù)目標(biāo)、大型團(tuán)隊擴(kuò)展或者技術(shù)發(fā)展等。在轉(zhuǎn)型過程中,需要從改善工程實踐入手。否則,團(tuán)隊初期的Scrum的活動顯得很熱鬧,但因為代碼問題遲遲無法解決,質(zhì)量和效率沒有得到根本的改善,過程依然痛苦。
2.6對工程實踐缺乏足夠認(rèn)識
工程實踐對于解決代碼問題具有直接的幫助,但每一種工程實踐都有其門檻,需要付出學(xué)習(xí)成本才能掌握。不加選擇的實施,將會帶給團(tuán)隊難以承受的壓力,而導(dǎo)致成員的抵制。這些問題都會導(dǎo)致敏捷轉(zhuǎn)型的失敗。而失敗又會帶來連鎖反應(yīng),一方面讓轉(zhuǎn)型的軟件開發(fā)團(tuán)隊大大降低對敏捷的熱情和信心;另一方面,也會給其他周邊的團(tuán)隊帶來負(fù)面影響,使其充滿疑慮、裹足不前。
3敏捷轉(zhuǎn)型策略
針對敏捷轉(zhuǎn)型的反模式,就可以有針對性地制定轉(zhuǎn)型策略。
3.1寬松環(huán)境
敏捷轉(zhuǎn)型是在項目交付過程中實施的,團(tuán)隊成員需要付出額外的工作和努力。改進(jìn)活動需要時間、資金、辦公環(huán)境的支持,甚至改進(jìn)過程中會遇到挫折和失敗。團(tuán)隊的管理層對此有清晰的認(rèn)識,保持關(guān)注、積極支持、容忍失敗,建立一種寬松的轉(zhuǎn)型氛圍。
3.2轉(zhuǎn)型小組
敏捷教練通常對于敏捷價值觀有深刻的理解,對敏捷管理實踐或技術(shù)實踐有非常好的掌握,并且具備一定的溝通和引導(dǎo)技能。這種角色對于傳統(tǒng)團(tuán)隊的轉(zhuǎn)型是非常關(guān)鍵的,起到引導(dǎo)實踐、轉(zhuǎn)變思想的作用。在傳統(tǒng)團(tuán)隊內(nèi)部通常難以獨立培養(yǎng)敏捷教練,需要從外部引入,幫助團(tuán)隊轉(zhuǎn)型。以教練為核心加上團(tuán)隊內(nèi)部骨干建立轉(zhuǎn)型小組,可以幫助轉(zhuǎn)型工作順利開展。
3.3痛點驅(qū)動
傳統(tǒng)團(tuán)隊在研發(fā)過程中通常受制于自身的能力和外部的壓力,遇到各種問題。常見的問題包括:(1)維護(hù)代碼規(guī)模大,遺留故障多,團(tuán)隊陷于質(zhì)量的焦油坑;(2)用戶需求多、變化快,驅(qū)使團(tuán)隊過于追求進(jìn)度,卻無法充分理解用戶需求;(3)分工壁壘嚴(yán)重,開發(fā)人員和測試人員之間對抗造成大量浪費活動;(4)團(tuán)隊成員技能提升緩慢,加班過多,士氣低落。轉(zhuǎn)型小組一起分析團(tuán)隊現(xiàn)有問題,再與團(tuán)隊成員開誠布公地探討,通常會得到強(qiáng)烈的共鳴。不以引入新概念、新模式為目的,而以痛點驅(qū)動的態(tài)度面對問題,敏捷開發(fā)的起步就容易得到支持。
3.4實踐選擇
經(jīng)過多年的業(yè)界探討和嘗試,敏捷方法論層面Scrum,XP和精益看板得到了廣泛認(rèn)同。但即使這樣,從這幾個方法論里面挑選合適的敏捷實踐仍然不是件容易的事情,先做什么后做什么同樣也是難以抉擇的事情。盲目的實施實踐只會加重團(tuán)隊的負(fù)擔(dān),而難以獲得期望的效果,并將開發(fā)團(tuán)隊陷于交付和改進(jìn)的雙重壓力中。而轉(zhuǎn)型的初衷是在短期內(nèi)付出可以接受的學(xué)習(xí)成本,提升過程能力從而獲得長期的交付能力提升,因此,短期內(nèi)的改進(jìn)必須要獲得可見的成果。通過多個項目的探索和實踐,總結(jié)出敏捷轉(zhuǎn)型初期的3個關(guān)鍵實踐:Scrum、用戶故事、持續(xù)集成。從管理、價值、交付3個關(guān)鍵方面可以幫助團(tuán)隊在短期內(nèi)以較小的成本奠定敏捷開發(fā)的模式的基礎(chǔ),并可以在此基礎(chǔ)上持續(xù)自我提升。Scrum是一種輕量化的敏捷軟件開發(fā)管理框架,每隔1~4周,每個人都能看到能實際工作的軟件,并且據(jù)此決定是這個版本還是繼續(xù)開發(fā)以加強(qiáng)其功能,這樣將原先的長周期的開發(fā)過程切割成若干個小段,用戶反饋速度大大提升。有了輕量化的管理框架,團(tuán)隊的基本的工作模式、協(xié)作方式就會發(fā)生明顯變化。用戶故事(UserStory,US)是從用戶的角度來描述用戶渴望得到的功能,能把一個功能像講故事一樣敘述出來,不僅描述了產(chǎn)品需求、業(yè)務(wù)價值,同時還包含了一系列驗收標(biāo)準(zhǔn)。一個好的用戶故事包括3個要素:(1)角色,誰要使用這個功能;(2)活動,需要完成什么樣的功能;(3)商業(yè)價值,為什么需要這個功能,這個功能帶來什么樣的價值。通過使用用戶故事,可以增進(jìn)開發(fā)人員與業(yè)務(wù)人員的溝通,幫助開發(fā)人員充分理解需求含義,并確保每個迭代都能關(guān)注用戶期望的高優(yōu)先級需求。沒有用戶故事就難以有真正意義上的迭代,也無法做到敏捷開發(fā)所倡導(dǎo)的快速反饋、快速學(xué)習(xí)和快速價值交付。持續(xù)集成是極限編程里面的重要實踐。采用完全的自動化構(gòu)建過程,使得一個開發(fā)團(tuán)隊在一天中多次構(gòu)建并測試軟件。持續(xù)集成鼓勵軟件開發(fā)項目團(tuán)隊在一天內(nèi)多次提交代碼,同時保證每次簽入操作都不會損害已經(jīng)通過的構(gòu)建。這樣做的目的就是為了快速反饋,使得缺陷及早被發(fā)現(xiàn),并能以可視化手段快速反饋。有了持續(xù)集成作為質(zhì)量安全網(wǎng),團(tuán)隊的缺陷可以快速反饋和解決,作為工作產(chǎn)品的軟件版本就可以一直保持在可工作狀態(tài)。
3.5敏捷培訓(xùn)
要讓團(tuán)隊正確實施敏捷實踐,轉(zhuǎn)型小組需要實施多層次多類型的培訓(xùn)。給團(tuán)隊的敏捷培訓(xùn)可以分為3個類型:(1)敏捷價值觀的導(dǎo)入培訓(xùn),向所有團(tuán)隊成員解釋敏捷從哪里來的,它是什么、不是什么,與傳統(tǒng)軟件開發(fā)的異同點及其背后的原理,這樣可以讓團(tuán)隊成員能夠在理論層面理解敏捷;(2)敏捷實踐方法的培訓(xùn),有針對性地向各角色介紹敏捷實踐方法的要領(lǐng);(3)本地化敏捷管理要求的培訓(xùn),即為了使敏捷方法在團(tuán)隊落地而制定的各種管理要求,需要宣貫給團(tuán)隊成員,例如Scrum的活動計劃和執(zhí)行要求、用戶故事書寫規(guī)范、持續(xù)集成紀(jì)律等。通過一系列培訓(xùn)及時準(zhǔn)確地傳遞敏捷的思路與各種要求,促進(jìn)團(tuán)隊建立共識,提升實踐能力。
3.6迭代改進(jìn)
敏捷轉(zhuǎn)型不是一蹴而就的,轉(zhuǎn)型小組的改進(jìn)工作需要按照敏捷開發(fā)的模式迭代前行。每個階段制定切實可行的目標(biāo)、范圍和計劃,定期組織回顧總結(jié)。通過透明化的成果展示獲得管理層支持,及時發(fā)現(xiàn)風(fēng)險改進(jìn)工作安排,保證轉(zhuǎn)型工作始終在平穩(wěn)和可控的軌道上。
4結(jié)語
敏捷開發(fā)是一系列輕量級方法論的集合,具有共同的價值觀。敏捷轉(zhuǎn)型行為是由策劃的敏捷方法引入到傳統(tǒng)開發(fā)團(tuán)隊中,合理應(yīng)用可以顯著提升團(tuán)隊交付的效率、質(zhì)量及個人能力。敏捷多種方法論及其實踐都有其特點和學(xué)習(xí)成本,這就給敏捷轉(zhuǎn)型帶來了諸多風(fēng)險和難點。本文在大量實踐的基礎(chǔ)上,針對轉(zhuǎn)型中的反模式,提出了系統(tǒng)化的敏捷轉(zhuǎn)型策略以幫助傳統(tǒng)團(tuán)隊成功轉(zhuǎn)型。需要注意的是,短期的敏捷轉(zhuǎn)型任務(wù)完后,轉(zhuǎn)型小組中應(yīng)該能培養(yǎng)出內(nèi)部教練,以便有能力引入更多的方法實踐,幫助團(tuán)隊向更卓越的目標(biāo)前行,而團(tuán)隊需要保持敏捷的意識和習(xí)慣,形成持續(xù)改進(jìn)的良性循環(huán)。
參考文獻(xiàn)
[1]科恩.用戶故事與敏捷方法[M].李國彪,滕振宇,譯.北京:清華大學(xué)出版社,2010.
[2]保羅•杜瓦爾,史蒂夫•邁耶斯,安德魯•格洛弗.持續(xù)集成:軟件質(zhì)量改進(jìn)和風(fēng)險降低之道[M].王海鵬,譯.北京:機(jī)械工業(yè)出版社,2008.
圖1英特爾軟件網(wǎng)絡(luò)社區(qū)
為表彰英特爾® 軟件網(wǎng)絡(luò)社區(qū)中最活躍的成員對我們一如既往的支持,我們推出了英特爾® 黑帶軟件開發(fā)計劃。通過授予“英特爾® 黑帶軟件開發(fā)人員”榮譽稱號,表彰那些具有出色的英特爾® 技術(shù)專業(yè)知識,并對社區(qū)建設(shè)有突出貢獻(xiàn)的成員。他們樂于與他人分享知識和專業(yè)技能,在論壇提供幫助和支持,發(fā)帖并積極參加社區(qū)活動,極具領(lǐng)導(dǎo)地位。
為確保“英特爾®黑帶軟件開發(fā)人員”評選的嚴(yán)謹(jǐn)與可靠,英特爾® 軟件網(wǎng)絡(luò)成立了專門的評選委員會,成員包括我們的軟件開發(fā)工具專家、資深應(yīng)用工程師及社區(qū)經(jīng)理。委員會定期召開例會,提名新的成員,審核、驗證他們在過去一年中對英特爾® 軟件網(wǎng)絡(luò)社區(qū)的貢獻(xiàn)。評選標(biāo)準(zhǔn)包括成員向社區(qū)貢獻(xiàn)內(nèi)容的質(zhì)量和數(shù)量(即專業(yè)技術(shù)水平)、在社區(qū)內(nèi)的領(lǐng)導(dǎo)地位及為社區(qū)帶來的支持成員三個方面,最后評選出的英特爾®黑帶軟件開發(fā)人員會得到相關(guān)獎勵。
在最近一次的評選中,楊劍鋒博士、周偉明先生、李鐸鋒先生成為中國首批榮獲“英特爾®黑帶軟件開發(fā)人員”稱號的社區(qū)成員,如圖2所示。他們擁有精湛的專業(yè)技術(shù)知識,為社區(qū)發(fā)展作出了杰出貢獻(xiàn)。
圖2三位“英特爾® 黑帶軟件
開發(fā)人員”
在首批榮獲“英特爾®黑帶軟件開發(fā)人員”稱號的成員中,楊劍鋒老師來自武漢大學(xué)。楊老師積極參與英特爾的高校合作計劃,從師資培訓(xùn)、課程開發(fā)與教學(xué),到網(wǎng)上的英特爾學(xué)術(shù)社區(qū)建設(shè),他都投入了大量精力,開展了細(xì)致的工作,是目前英特爾學(xué)術(shù)社區(qū)乃至英特爾®軟件網(wǎng)絡(luò)上積分最高、貢獻(xiàn)最多的成員。
楊劍鋒老師
2007年,多核相關(guān)課程在國內(nèi)高校尚處于起步階段,楊劍鋒老師在武漢大學(xué)主持了“多核架構(gòu)及編程技術(shù)”課程的開發(fā)。課程組老師經(jīng)過努力,將業(yè)界的最新技術(shù)與電子通信遙感等學(xué)科相結(jié)合,引入課程教學(xué),為培養(yǎng)適應(yīng)時展的實用技術(shù)人才作出了巨大貢獻(xiàn)!同年,該課程榮獲英特爾―教育部精品課程?;凇昂献?、發(fā)展和創(chuàng)新”的主題,英特爾與武漢大學(xué)建立了多核技術(shù)聯(lián)合實驗室,將其作為推廣多核課程內(nèi)容開發(fā)與教學(xué)的種子院校之一,相繼于2008和2009年在武大舉辦了兩次多核師資培訓(xùn),協(xié)助華中、華西、西北等高校教師進(jìn)行多核課程建設(shè),受到各位專家的好評,也為多核技術(shù)的推廣貢獻(xiàn)了力量。楊老師在師資培訓(xùn)結(jié)束后總結(jié)了相關(guān)經(jīng)驗,在英特爾學(xué)術(shù)社區(qū)上發(fā)表了博客,與大家分享。
2008年秋,在包括楊劍鋒老師在內(nèi)的眾多高校教師支持下,英特爾®學(xué)術(shù)社區(qū)中文版正式,為“英特爾多核大學(xué)合作計劃”提供了網(wǎng)上支持,給老師們提供了與英特爾專家和全球高校教師交流學(xué)習(xí)的平臺。2008年底,楊老師受邀擔(dān)任了英特爾學(xué)術(shù)社區(qū)網(wǎng)絡(luò)研討會的嘉賓,與全球90
余位教師分享了武漢大學(xué)等國內(nèi)高校開展多核技術(shù)教學(xué)的情況,交流了成功經(jīng)驗和需要解決的問題。這是中國高校教師第一次在英特爾學(xué)術(shù)社區(qū)中與全球教師互動交流,讓全世界其他地區(qū)的老師們了解了中國高校在新技術(shù)領(lǐng)域內(nèi)開展的工作。自2008年以來,楊老師受邀參與包括英特爾、微軟、IBM、Nvidia、Sun、AMD、Adobe等公司技術(shù)專家及加州大學(xué)伯克利分校、喬治亞理工、北愛荷華大學(xué)等教授組成的全球并行教育工作小組,參與并行教育的討論,加強(qiáng)了中國并行教育的國際流。
2009年6月,楊老師在英特爾®學(xué)術(shù)社區(qū)上了由他主持開發(fā)的“多核架構(gòu)及編程技術(shù)”教育部―英特爾精品課程,包括所有的教學(xué)幻燈片、實驗代碼、指導(dǎo)用書及課程建設(shè)參考資料,與全球教師共享;還特別了課程組傾力開發(fā)的部分題庫及動手實驗和教學(xué)錄像。這些教學(xué)資源為學(xué)生學(xué)習(xí)多核知識提供了巨大支持,也為兄弟院校開展教學(xué)提供了極具價值的參考,實現(xiàn)了英特爾®學(xué)術(shù)社區(qū)“學(xué)習(xí)、進(jìn)步、分享、創(chuàng)新”的理念。
2009年底,作為英特爾®軟件網(wǎng)絡(luò)中積分最高、貢獻(xiàn)最多的成員,楊劍鋒老師榮獲“英特爾®黑帶軟件開發(fā)人員”稱號。
為幫助更多英特爾® 軟件網(wǎng)絡(luò)成員盡快成為黑帶軟件開發(fā)人員,英特爾® 軟件學(xué)院為軟件開發(fā)人員提供了豐富的技術(shù)培訓(xùn)課程,幫助他們掌握和應(yīng)用英特爾的最新技術(shù)及經(jīng)驗,提升產(chǎn)品開發(fā)技能。學(xué)院依托英特爾®軟件和
服務(wù)事業(yè)部的強(qiáng)大師資力量,沿襲英特爾用戶需求至上的傳統(tǒng);與國內(nèi)多家知名公司、大學(xué)建立起長期的合作關(guān)系,已成為面向軟件開發(fā)及管理的優(yōu)秀一站式培訓(xùn)服務(wù)基地。
在未來的日子里,英特爾將一如既往地致力于為中國的軟件開發(fā)提供最優(yōu)質(zhì)的培訓(xùn)服務(wù),推動我國IT產(chǎn)業(yè)的持續(xù)發(fā)展,也期待更多的軟件開發(fā)人員獲得“英特爾® 黑帶軟件開發(fā)人員”稱號!
楊劍鋒,本科、碩士、博士均就讀于武漢大學(xué)電子信息學(xué)院,現(xiàn)任武漢大學(xué)電子信息學(xué)院副教授,主要從事多核技術(shù)、嵌入式系統(tǒng)及網(wǎng)絡(luò)通信等方向的科研與教學(xué)工作,同時承擔(dān)多核和嵌入式相關(guān)課程的實驗教學(xué),2008年擔(dān)任全國大學(xué)生電子設(shè)計競賽嵌入式專題邀請賽專家組成員、評委。
關(guān)鍵詞:項目管理;軟件;開發(fā)應(yīng)用;問題;對策
現(xiàn)在,信息技術(shù)發(fā)展速度越來越快,在這種背景下,企業(yè)需要應(yīng)對信息化變化的挑戰(zhàn)就必須高度重視軟件的開發(fā)在具體項目中的應(yīng)用。但目前一些企業(yè)在軟件的開發(fā)與應(yīng)用中存在著許多不容忽視的問題,需要我們認(rèn)真研究并努力解決。
一、項目軟件管理的基本內(nèi)涵
1、什么是項目管理
項目管理是在一定的約束條件下,以高效率地實現(xiàn)項目業(yè)主的目標(biāo)為目的,以項目經(jīng)理個人負(fù)責(zé)制為基礎(chǔ)和以項目為獨立實體進(jìn)行經(jīng)濟(jì)核算,并按照項目內(nèi)在的邏輯規(guī)律進(jìn)行有效的計劃、組織、協(xié)調(diào)、控制的系統(tǒng)管理活動。
2、為什么要有項目管理
沒有項目管理,項目也有可能成功。但沒有管理的項目,很難保證項目的利潤空間,對公司來說,虧損的風(fēng)險就大。所以,我們要有項目管理,以保證公司在總體上是盈利的,注意不是每一個項目都要盈利。
二、項目軟件管理的發(fā)展現(xiàn)狀
現(xiàn)在項目管理作為一種現(xiàn)代化管理方式在國際上已獲得了廣泛的應(yīng)用,從最初的國防、航天、建設(shè)工程領(lǐng)域,迅速發(fā)展到電子、通信、計算機(jī)、軟件開發(fā)、金融等行業(yè)以及政府機(jī)關(guān)的項目管理工作。隨著計算機(jī)、網(wǎng)絡(luò)系統(tǒng)的迅速發(fā)展,項目管理技術(shù)的不斷進(jìn)步,項目管理軟件產(chǎn)品層出不窮,其功能、特點、應(yīng)用對象也各不相同。從概念上講,軟件項目管理是為了使軟件項目能夠按照預(yù)定的成本、進(jìn)度、質(zhì)量順利完成,而對成本、人員、進(jìn)度、質(zhì)量、風(fēng)險等進(jìn)行分析和管理的活動。
軟件開發(fā)是一項復(fù)雜的系統(tǒng)工程,牽涉到各方面的因素,實際工作中,經(jīng)常會出現(xiàn)各種各樣的問題,甚至面臨失敗。如何總結(jié)、分析失敗的原因,得出有益的教訓(xùn),對一個公司來說,是在今后的項目中取得成功的關(guān)鍵。目前的軟件開發(fā)正逐步趨向于復(fù)雜化、多元化,大多數(shù)開發(fā)團(tuán)隊中都會出現(xiàn)同時開發(fā)多個版本、開發(fā)維護(hù)工作并存、多地點同時開發(fā)等情況,給軟件開發(fā)管理帶來了前所未有的困難。如果管理不善,必將造成版本混亂,各個開發(fā)人員的工作相互交叉、干擾,整個開發(fā)團(tuán)隊的工作在一種無秩序的不良狀況下運行,嚴(yán)重影響軟件產(chǎn)品開發(fā)的進(jìn)度和質(zhì)量。
三、項目軟件管理常見問題及解決策略
1、缺乏項目管理系統(tǒng)培訓(xùn)
項目經(jīng)理在項目管理方面的培訓(xùn)較少或不夠系統(tǒng)。項目經(jīng)理或管理人員不了解項目管理的知識體系和一些常用工具和方法,所以在實際工作中沒有項目管理知識的指導(dǎo),完全依靠個人現(xiàn)有的知識技能,管理工作的隨意性、盲目性比較大。在軟件企業(yè)中,以前幾乎沒有專門招收項目管理專業(yè)的人員來擔(dān)任項目經(jīng)理,被任命的項目經(jīng)理主要是因為他們能夠在技術(shù)上獨當(dāng)一面,而管理方面特別是項目管理方面的知識比較缺乏。
解決策略:項目經(jīng)理接受系統(tǒng)的項目管理知識培訓(xùn)是非常必要的,有了專業(yè)領(lǐng)域的知識與實踐,再加上項目管理知識與實踐和一般管理的知識和經(jīng)驗的有機(jī)結(jié)合,必能大大提高項目經(jīng)理的項目管理水平。應(yīng)實行項目經(jīng)理知識技能資格考核制度,讓項目經(jīng)理自覺補充學(xué)習(xí)項目管理的知識和一些常用工具和方法。
2、項目計劃意識問題
項目經(jīng)理對總體計劃、階段計劃的作用認(rèn)識不足。項目經(jīng)理認(rèn)為計劃不如變化快,項目中也有很多不確定的因素,做計劃是走過場,因此制定總體計劃時比較隨意,不少事情沒有仔細(xì)考慮;階段計劃因工作忙等理由經(jīng)常拖延,造成計劃與控制管理脫節(jié),無法進(jìn)行有效的進(jìn)度控制管理。沒有計劃或者是隨意的不負(fù)責(zé)任的計劃的項目是一種無法控制的項目。
解決策略:在高技術(shù)行業(yè),日新月異是主要特點,因此計劃的制定需要在一定條件的限制和假設(shè)之下采用漸近明細(xì)的方式進(jìn)行不斷完善。提高項目經(jīng)理的計劃意識,采用項目計劃制定相關(guān)各種知識、技術(shù)、工具,加強(qiáng)對開發(fā)計劃、階段計劃的有效性進(jìn)行事前事后的評估。
3、管理意識問題
部分項目經(jīng)理沒有意識到自己項目經(jīng)理的角色,沒能從總體上去把握管理整個項目,而是埋頭于具體的技術(shù)工作,造成項目組成員之間忙的忙、閑的閑,計劃不周、任務(wù)不均、資源浪費。
解決策略:加強(qiáng)項目管理方面的培訓(xùn),并通過對考核指標(biāo)的合理設(shè)定和宣傳引導(dǎo)項目經(jīng)理更好地做好項目管理工作。技術(shù)骨干在擔(dān)任項目經(jīng)理之前,最好能經(jīng)過系統(tǒng)的項目管理知識,特別是其中的人力資源管理、溝通管理的學(xué)習(xí),并且在實際工作中不斷提高自己的管理素質(zhì),豐富項目管理經(jīng)驗,提高項目管理意識。
4、風(fēng)險管理意識問題
項目經(jīng)理沒有充分分析可能的風(fēng)險,對付風(fēng)險的策略考慮比較簡單。項目經(jīng)理在做項目規(guī)劃時常常沒有做專門的風(fēng)險管理計劃文檔,而是合并在項目計劃書中。有些項目經(jīng)理沒有充分意識到風(fēng)險管理的重要性,對計劃書中風(fēng)險管理的章節(jié)簡單應(yīng)付了事,隨便列出幾個風(fēng)險,隨便地寫一些簡單的對策,對于后面的風(fēng)險防范起不到什么指導(dǎo)作用。
解決策略:通過學(xué)習(xí)項目管理知識掌握風(fēng)險識別、量化、對策研究、反應(yīng)控制的工具和方法掌握項目風(fēng)險管理所必備的知識。通過加強(qiáng)對項目規(guī)劃中風(fēng)險管理計劃的審核提高項目組的風(fēng)險管理意識??偨Y(jié)本行業(yè)項目中常見的風(fēng)險及其對策作為風(fēng)險管理計劃中必要的風(fēng)險內(nèi)容,并切實評估相應(yīng)對策的有效性和可行性。
5、不重視項目經(jīng)驗的總結(jié)
項目經(jīng)理在項目結(jié)束時有些是因為自身對寫文檔工作的興趣或意識,或者是因為緊接著要參加下一個項目,總體對項目總結(jié)的重視程度不夠。有些是項目總結(jié)報告一再拖延,有些是交上來的報告質(zhì)量較低,敷衍了事。