軟件開發(fā)過程及崗位職責(zé)
本文主要講述如何組織開發(fā)軟件項(xiàng)目,使之更加快速、有效的完成。并分成以下幾個(gè)階段進(jìn)行詳細(xì)講述:項(xiàng)目計(jì)劃階段、需求分析階段、軟件開發(fā)階段、測(cè)試階段、管理軟件開發(fā)過程、各參與角色的具體職責(zé)描述及對(duì)人員的要求。最后提供了一些文檔標(biāo)準(zhǔn)參考。本開發(fā)過程可以作為中小型(3-7人)軟件項(xiàng)目的開發(fā)指南,而大型軟件項(xiàng)目使用RUP會(huì)更好。
總體流程如下:
計(jì)劃階段-》需求分析階段-》軟件開發(fā)階段-》測(cè)試階段-》完成
一、項(xiàng)目計(jì)劃階段
項(xiàng)目計(jì)劃草案和風(fēng)險(xiǎn)管理計(jì)劃作為第一步,當(dāng)有一個(gè)商業(yè)機(jī)會(huì)后,根據(jù)公司高層負(fù)責(zé)制定的初步商業(yè)計(jì)劃書來完成項(xiàng)目的計(jì)劃草案,確定、分析項(xiàng)目風(fēng)險(xiǎn)并確定其優(yōu)先級(jí),還要制定風(fēng)險(xiǎn)解決方案。本階段的目的是確立產(chǎn)品開發(fā)的經(jīng)濟(jì)理由。
當(dāng)確定開發(fā)之后則制定軟件開發(fā)計(jì)劃、人員組織結(jié)構(gòu)定義及配備、過程控制計(jì)劃。
(1)項(xiàng)目計(jì)劃草案
項(xiàng)目計(jì)劃草案應(yīng)包括產(chǎn)品簡(jiǎn)介、產(chǎn)品目標(biāo)及功能說明、開發(fā)所需的資源、開發(fā)時(shí)間和里程碑。
(2)風(fēng)險(xiǎn)管理計(jì)劃
也就是把有可能出錯(cuò)或現(xiàn)在還不能確定的東西列出來,并制定出相應(yīng)的解決方案。風(fēng)險(xiǎn)發(fā)現(xiàn)得越早對(duì)項(xiàng)目越有利。
(3) 軟件開發(fā)計(jì)劃
軟件開發(fā)計(jì)劃的目的是收集控制項(xiàng)目時(shí)所需的所有信息,項(xiàng)目經(jīng)理根據(jù)項(xiàng)目計(jì)劃來安排資源需求并根據(jù)時(shí)間表跟蹤項(xiàng)目進(jìn)度。項(xiàng)目團(tuán)隊(duì)成員根據(jù)項(xiàng)目計(jì)劃以了解他們的工作任務(wù)、工作時(shí)間以及他們所依賴的其他活動(dòng)。
可將計(jì)劃分成總體計(jì)劃和詳細(xì)計(jì)劃,總體計(jì)劃中每個(gè)任務(wù)為一個(gè)里程碑,詳細(xì)計(jì)劃中必須將任務(wù)落實(shí)到個(gè)人。
軟件開發(fā)計(jì)劃還應(yīng)包括產(chǎn)品的應(yīng)收標(biāo)準(zhǔn)及應(yīng)收任務(wù)(包括確定需要制訂的測(cè)試用例)。
(4)人員組織結(jié)構(gòu)定義及配備
常見的人員組織結(jié)構(gòu)有垂直方案、水平方案、混合方案。垂直方案中每個(gè)成員充當(dāng)多重角色。水平方案中每個(gè)成員充當(dāng)一到兩個(gè)角色。混合方案則包括了經(jīng)驗(yàn)豐富的人員與新手相互融合。具體選擇根據(jù)人員實(shí)際技能情況進(jìn)行選擇。
(5)過程控制計(jì)劃
過程控制計(jì)劃的目的是收集項(xiàng)目計(jì)劃正常執(zhí)行所需的所有信息,用來指導(dǎo)項(xiàng)目進(jìn)度的監(jiān)控、計(jì)劃的調(diào)整,確保項(xiàng)目按時(shí)完成。
二、需求分析階段
需求分析階段的目的是在系統(tǒng)工作方面與用戶達(dá)成一致。
(1)軟件需求規(guī)約
詳細(xì)說明系統(tǒng)將要實(shí)現(xiàn)的所有功能。
(2) 用戶界面原型
可以有三種表示方法:圖紙(在紙上)、位圖(繪圖工具)、可執(zhí)行文件(交互式)。
三、 軟件開發(fā)階段
本階段從物理上實(shí)現(xiàn)目標(biāo)系統(tǒng)。采用了面向?qū)ο蠓椒ā?/span>
(1)軟件架構(gòu)
說明軟件的組織結(jié)構(gòu)、部署結(jié)構(gòu)及運(yùn)行環(huán)境。
(2)類設(shè)計(jì)
定義類之間的關(guān)聯(lián)和類的屬性、方法。
(3)數(shù)據(jù)庫(kù)設(shè)計(jì)
定義數(shù)據(jù)庫(kù)表之間的關(guān)聯(lián)和各個(gè)表的字段。
(4)編碼和單元測(cè)試
按照設(shè)計(jì)文檔進(jìn)行編碼,每完成一個(gè)模塊應(yīng)進(jìn)行單元測(cè)試。
(5)集成系統(tǒng)
按軟件組織結(jié)構(gòu)的要求將各個(gè)子系統(tǒng)組合起來。
四、測(cè)試階段
測(cè)試的目的是在發(fā)布之前找出程序的錯(cuò)誤。包括:核實(shí)每個(gè)模塊是否正常運(yùn)行(參考設(shè)計(jì)文檔)、核實(shí)需求是否被正確實(shí)施(參考需求文檔)。
(1)測(cè)試計(jì)劃
收集和組織測(cè)試信息,為測(cè)試工作提供指導(dǎo)。
(2)測(cè)試數(shù)據(jù)
盡量使用真實(shí)數(shù)據(jù)。
(3) 測(cè)試報(bào)告
記錄測(cè)試結(jié)果,詳細(xì)描述問題,提出解決辦法。
(4)幫助文件和用戶操作手冊(cè)
五、 管理軟件開發(fā)過程
有以下幾方面地工作:
(1)組織會(huì)議
討論會(huì)議、總結(jié)會(huì)議等。
(2)評(píng)審程序
對(duì)各個(gè)階段的工作結(jié)果進(jìn)行審核。
(3)協(xié)調(diào)人員
(4) 配置管理
使用一些配置管理工具進(jìn)行開發(fā)文檔管理,如:Visual Sourcesafe,Teamsouce等
六、 各參與角色的具體職責(zé)描述及對(duì)人員的要求
(1) 項(xiàng)目經(jīng)理
職責(zé):
1、 制定產(chǎn)品的目標(biāo)。
2、 制定各個(gè)工作的詳細(xì)任務(wù)表,跟蹤這些任務(wù)的執(zhí)行情況,進(jìn)行控制。
3、 組織會(huì)議對(duì)程序進(jìn)行評(píng)審。
4、 綜合具體情況,對(duì)各種不同方案進(jìn)行取舍并做出決定。
5、 協(xié)調(diào)各項(xiàng)目參與人員之間的關(guān)系。
人員要求:
對(duì)產(chǎn)品有激情,具有領(lǐng)導(dǎo)才能。
對(duì)問題能正確而迅速地做出確定。
能充分利用各種渠道和方法來解決問題。
能跟蹤任務(wù),有很好地日程觀念。
能在壓力下工作。
(2)系統(tǒng)分析員
職責(zé):
1、 了解用戶需求,寫出《軟件需求規(guī)約》。
2、 建立用戶界面原型。
人員要求:擔(dān)任系統(tǒng)分析員的人員應(yīng)該善于協(xié)調(diào),并且具有良好的溝通技巧。擔(dān)任此角色的人員中必須要有具備業(yè)務(wù)和技術(shù)領(lǐng)域知識(shí)的人才。
(3)設(shè)計(jì)員
職責(zé):
1、 定義類的方法和屬性以及各個(gè)類之間的關(guān)聯(lián),畫出類圖。
2、 進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)。
人員要求: 掌握面向?qū)ο蠓治雠c設(shè)計(jì)技術(shù),統(tǒng)一建模語(yǔ)言(UML)。
(4)程序員
職責(zé):按項(xiàng)目的要求進(jìn)行編碼和單元測(cè)試。
人員要求:良好的編程技能和測(cè)試技術(shù)。
(5)測(cè)試員
職責(zé): 執(zhí)行測(cè)試,描述測(cè)試結(jié)果,提出問題解決方案。
人員要求:了解被測(cè)試的系統(tǒng),具備診斷和解決問題的技能,編程技能
根據(jù)每個(gè)人的特長(zhǎng)來?yè)?dān)任其中的一個(gè)或多個(gè)角色。最好是每個(gè)人都能參與設(shè)計(jì)和編碼工作,每個(gè)人都能夠建立起系統(tǒng)地全局觀
posted on 2013-09-04 10:55 ** 閱讀(388) 評(píng)論(0) 編輯 收藏