項(xiàng)目流程

研發(fā)執(zhí)行過程注意事項(xiàng)

為了規(guī)范研發(fā)過程,提高研發(fā)交付物的質(zhì)量,保證需求、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試的完整鏈路可追蹤,保障生產(chǎn)部署的正確性、可靠性、實(shí)時(shí)性以及自動(dòng)化程度,對(duì)研發(fā)過程及產(chǎn)出物作以下要求:

需求階段

需求階段應(yīng)進(jìn)行充分需求溝通,給出明確的需求集合、準(zhǔn)確的需求描述并文檔化;應(yīng)關(guān)注諸多非功能性需求或達(dá)成共識(shí);應(yīng)當(dāng)給出需求優(yōu)先級(jí)及驗(yàn)收標(biāo)準(zhǔn)(包括但不限于UI風(fēng)格標(biāo)準(zhǔn)、界面交互標(biāo)準(zhǔn)、功能性標(biāo)準(zhǔn)、性能標(biāo)準(zhǔn))。

應(yīng)規(guī)范需求變更并將變更文檔化,階段性分析變更原因,持續(xù)優(yōu)化需求過程以降低變更頻率、減小變更范圍。

設(shè)計(jì)階段

應(yīng)進(jìn)行需求與設(shè)計(jì)的分離和邊界界定,以明確區(qū)分需求變更與設(shè)計(jì)變更,尤其是系統(tǒng)間接口、交互方式變更。

關(guān)鍵系統(tǒng)架構(gòu)、接口、流程、數(shù)據(jù)模型、系統(tǒng)間交互應(yīng)進(jìn)行完整描述并文檔化:

  • 系統(tǒng)架構(gòu)設(shè)計(jì)應(yīng)清晰描述系統(tǒng)整體架構(gòu)、模塊劃分、交互、與外圍系統(tǒng)的關(guān)系及交互,系統(tǒng)部署拓?fù)鋺?yīng)與架構(gòu)設(shè)計(jì)保持一致;
  • 接口變化應(yīng)拋出進(jìn)行討論、設(shè)計(jì)不合理部分也應(yīng)拋出由小組討論達(dá)成一致,接口設(shè)計(jì)應(yīng)由上下游評(píng)審并形成紀(jì)要;評(píng)審后接口變更及時(shí)與上線游溝通;
  • 數(shù)據(jù)模型定義應(yīng)有一致的風(fēng)格和行為習(xí)慣,應(yīng)保證不同表之間的一致性;邏輯模型應(yīng)與研發(fā)過程中的物理模型保持一致;數(shù)據(jù)模型變更應(yīng)告知研發(fā)小組成員;數(shù)據(jù)模型應(yīng)腳本化維護(hù)并進(jìn)行版本管理;

研發(fā)階段

研發(fā)階段與測(cè)試階段同步進(jìn)行,研發(fā)與測(cè)試人員應(yīng)同步與PO確認(rèn)需求。

  • 研發(fā)給出接口定義、數(shù)據(jù)模型定義并將關(guān)鍵部分拋出討論確認(rèn);
  • 測(cè)試給出測(cè)試方案、思維導(dǎo)圖并于PO、研發(fā)確認(rèn)溝通;
  • 若設(shè)計(jì)與開發(fā)為不同成員,則設(shè)計(jì)人員也應(yīng)參與討論;開發(fā)與設(shè)計(jì)人員需做好充分溝通以防出現(xiàn)遺漏、偏差等;
開發(fā)

開發(fā)前務(wù)必獲取最新代碼、提交前務(wù)必獲取最新代碼并解決沖突,代碼提交應(yīng)遵循敏捷管理要求。
開發(fā)過程中應(yīng)關(guān)心代碼結(jié)構(gòu)和效率:實(shí)現(xiàn)應(yīng)盡量簡(jiǎn)單;避免頻繁或大規(guī)模數(shù)據(jù)庫(kù)操作;避免冗長(zhǎng)及高耦合性代碼。
開發(fā)完整功能提交后應(yīng)關(guān)注編譯部署是否成功,及時(shí)通知測(cè)試并關(guān)閉相應(yīng)task。
配置、數(shù)據(jù)庫(kù)腳本、部署腳本應(yīng)與開發(fā)代碼同步提交,并滿足下述要求。

配置要求

配置項(xiàng)增加調(diào)整應(yīng)同步修改開發(fā)、測(cè)試、集成、生產(chǎn)等環(huán)境,具體配置值可以留空。

數(shù)據(jù)庫(kù)腳本要求

數(shù)據(jù)庫(kù)(變更)應(yīng)采用腳本維護(hù)并通過svn進(jìn)行版本管理,集成環(huán)境發(fā)布一定要使用腳本進(jìn)行。腳本應(yīng)滿足以下要求:

  • 變更前數(shù)據(jù)備份
  • 可重入
  • 變更后正確性驗(yàn)證
  • 升級(jí)失敗后的恢復(fù)機(jī)制
  • 規(guī)避腳本對(duì)執(zhí)行環(huán)境的依賴(防止目標(biāo)機(jī)上腳本執(zhí)行失?。?/li>
部署腳本要求

開發(fā)、測(cè)試環(huán)境應(yīng)通過Jenkins直接部署;集成、生產(chǎn)環(huán)境應(yīng)通過部署腳本部署,腳本應(yīng)通過svn進(jìn)行版本管理,部署腳本應(yīng)滿足如下要求:

  • 腳本可重復(fù)執(zhí)行
  • 提供標(biāo)準(zhǔn)命名腳本:deploy.sh、start.sh、restart.sh
  • 部署包在不同環(huán)境的發(fā)布不應(yīng)該對(duì)腳本內(nèi)容進(jìn)行修改,環(huán)境變量參數(shù)化
  • 完全自動(dòng)化,不應(yīng)出現(xiàn)手動(dòng)文件移動(dòng)等人為操作
  • 執(zhí)行結(jié)果自檢
測(cè)試
  • 測(cè)試應(yīng)關(guān)注需求變更,并負(fù)責(zé)需求變更的記錄;
  • 測(cè)試應(yīng)繪制思維導(dǎo)圖并于需求映射以提供完整的需求及驗(yàn)證視圖,思維導(dǎo)圖應(yīng)與需求同步修改。
  • 自動(dòng)化測(cè)試腳本應(yīng)可重入、不依賴系統(tǒng)數(shù)據(jù)、不影響系統(tǒng)數(shù)據(jù);
  • 自動(dòng)化測(cè)試腳本應(yīng)與思維導(dǎo)圖對(duì)應(yīng),并最終映射到原始需求;
  • 測(cè)試人員應(yīng)保持獨(dú)立性,完整記錄系統(tǒng)缺陷、未實(shí)現(xiàn)功能、無法測(cè)試功能等;

延伸

DevOps標(biāo)準(zhǔn)實(shí)踐
代碼提交->review->構(gòu)建->自動(dòng)化測(cè)試->自動(dòng)發(fā)布(發(fā)布策略)
集成&生產(chǎn)環(huán)境下多系統(tǒng)級(jí)聯(lián)構(gòu)建、依賴發(fā)布

前期

立項(xiàng)

需求分析&設(shè)計(jì)

資源準(zhǔn)備

人員
外圍資源及系統(tǒng)

1、前期工作
2、

工作量評(píng)估

軟件工作量評(píng)估方法:http://www.cnblogs.com/yzbt/p/5266759.html

story point 評(píng)估法

敏捷估算方法,比較主觀

功能點(diǎn)分析方法

CMMI標(biāo)準(zhǔn)采用
工具無關(guān)、項(xiàng)目無關(guān)
僅適用于功能性需求工作量評(píng)估
適用于管理系統(tǒng)、業(yè)務(wù)系統(tǒng)等傳統(tǒng)領(lǐng)域研發(fā),不適合創(chuàng)意型產(chǎn)品、非功能需求為主產(chǎn)品(如平臺(tái)、框架)、包含復(fù)雜算法和核心技術(shù)產(chǎn)品

基于功能點(diǎn)(FP)的工作量估算,是從用戶的角度來度量軟件。進(jìn)行工作量估算時(shí),先估計(jì)出軟件項(xiàng)目的功能點(diǎn)數(shù),然后將功能點(diǎn)數(shù)(FP)轉(zhuǎn)換為人天數(shù)。其中,估算功能點(diǎn)數(shù)的主要方法有3種:IFPUG法、MarkⅡ法、COSMIC FFP法。這三種方法現(xiàn)在都已經(jīng)成為國(guó)際標(biāo)準(zhǔn),并有詳細(xì)的操作手冊(cè)。
將功能點(diǎn)(FP)轉(zhuǎn)換成人天數(shù)主要有2種方法。
1)生產(chǎn)率法:要求有開發(fā)商每人天開發(fā)的功能點(diǎn)數(shù),估算出功能點(diǎn)數(shù)后,直接利用功能點(diǎn)數(shù)÷功能點(diǎn)/天,即得工作量人天數(shù)。對(duì)于開發(fā)商每人天開發(fā)的功能點(diǎn)數(shù),SPR有統(tǒng)計(jì),中國(guó)的值大約在5.5個(gè)功能點(diǎn)/人月。
2)經(jīng)驗(yàn)?zāi)P头?br> 可以依照本企業(yè)的歷史數(shù)據(jù)得到關(guān)于功能點(diǎn)和工作量的統(tǒng)計(jì)方程;也可以采用已有的經(jīng)驗(yàn)?zāi)P停纾篊OCOMOⅡ模型

分類

數(shù)據(jù)

  • ILF:Internal Logical File內(nèi)部邏輯文件
    可以理解為業(yè)務(wù)對(duì)象,對(duì)應(yīng)多個(gè)數(shù)據(jù)表
  • EIF: External Interface File外部接口文件
    其它應(yīng)用系統(tǒng)提供的接口數(shù)據(jù)
    操作/邏輯
  • EI: External Input外部輸入
    對(duì)應(yīng)表單提交等
  • EO: External Output外部輸出
    僅僅輸出,如導(dǎo)出、報(bào)表、打印等
  • EQ: External Inquiry外部查詢
    先要輸入,根據(jù)輸入計(jì)算輸出

數(shù)據(jù)和操作應(yīng)分開計(jì)算

調(diào)整因子

實(shí)際評(píng)估非功能性需求對(duì)工作量的影響,已整體調(diào)整因子的形式使用

代碼行估算

基于代碼行(SLOC)的工作量估算,是從開發(fā)者的技術(shù)角度出發(fā)來度量軟件。代碼行數(shù)是軟件開發(fā)者最早進(jìn)行規(guī)模測(cè)量的主要方法。進(jìn)行工作量估算時(shí),先采用WBS法、類比法等統(tǒng)計(jì)出軟件項(xiàng)目的代碼行數(shù),然后將代碼行數(shù)轉(zhuǎn)換為人天數(shù)。其中,將代碼行(SLOC)轉(zhuǎn)換成人天數(shù)主要有2種方法。
(1)生產(chǎn)率方法:要求有開發(fā)商每人天開發(fā)的代碼行數(shù),估算出代碼行數(shù)后,直接利用代碼行數(shù)÷SLOC/人天,即得工作量人天數(shù)。
(2)參數(shù)模型法:利用模型,將代碼行數(shù)轉(zhuǎn)換成人天數(shù)。
常見的模型有:
Putnam模型
Putnam1978 年提出的一種動(dòng)態(tài)多變量模型。估算工作量的公式是:K = L3/(Ck3*td^4)

其中:L 代表源代碼行數(shù)(以行計(jì)),K代表整個(gè)開發(fā)過程所花費(fèi)的工作量(以人年計(jì)),td 表示開發(fā)持續(xù)時(shí)間(以年計(jì)),Ck表示技術(shù)狀態(tài)常數(shù),它反映“妨礙開發(fā)進(jìn)展的限制”,取值因開發(fā)環(huán)境而異。
COCOMOⅡ模型
COCOMOⅡ模型指出,軟件開發(fā)工作量與軟件規(guī)模呈指數(shù)關(guān)系,并且工作量受16個(gè)成本驅(qū)動(dòng)因子的影響。COCOMO Ⅱ的計(jì)算步驟如下:
1)估算軟件規(guī)模Size,這里以千代碼行(KSLOC)計(jì)。
2)評(píng)估比例因子SF,求指數(shù)E。
3)求成本驅(qū)動(dòng)因子值EMi。求標(biāo)稱進(jìn)度工作量PM:

IBM模型
IBM模型是1977年IBM公司的Walston和Felix提出的。其中估算工作量的公式如下:E=5.2×L^0.91 ,L是源代碼行數(shù)(以千行計(jì)),E是工作量(以人月計(jì))

專家法估算

即組織專家對(duì)任務(wù)/拆分后的子任務(wù)進(jìn)行規(guī)模評(píng)估,最終得到多數(shù)認(rèn)可的軟件規(guī)模。

  • 每位專家提出3個(gè)規(guī)模的估計(jì)值:最小值ai、最大可能值mi、最大值bi
  • 組織者整理,計(jì)算每位專家的平均值Ei = ( ai +4 mi + bi )/6 ;計(jì)算期望值:E = (E1+……+En)/n
  • 綜合結(jié)果后,再次填寫表格,比較估算偏差,找出原因
  • 重復(fù)多次,最終獲得一個(gè)多數(shù)認(rèn)可的軟件規(guī)模

WBS估算法

WBS:work breakdown structure

適合瀑布模型,在敏捷的迭代中也可使用;更多取其思想

拆分后任務(wù)工作量可采用專家評(píng)估法進(jìn)行

1)尋找類似的歷史項(xiàng)目,進(jìn)行項(xiàng)目的類比分析,根據(jù)歷史項(xiàng)目的工作量憑經(jīng)驗(yàn)估計(jì)本項(xiàng)目的總工作量;
2)進(jìn)行WBS分解,力所能及地將整個(gè)項(xiàng)目的任務(wù)進(jìn)行分解;
3)參考類似項(xiàng)目的數(shù)據(jù),采用類比法或?qū)<曳?,估?jì)WBS中每類活動(dòng)的工作量;
4)匯總得到項(xiàng)目的總工作量;
5)與第1)步的結(jié)果進(jìn)行印證分析,根據(jù)分析結(jié)果,確定估計(jì)結(jié)果。

非功能性需求

SNAP:Software Non-functional Assessment Process
APM:Assessment Practices Manual

http://www.ifpug.org/about-ifpug/about-function-point-analysis/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 夕陽(yáng)晚霞美,豈嘆在黃昏。 心不黑暗里,紅日照乾坤。
    羽扇閑人閱讀 194評(píng)論 2 2
  • “亞,等等我!”竇源邊追邊喊著,幾步就追了上去。 陳亞依舊不理他向前走著,沉著臉不知在想什么。 ...
    水玄子閱讀 415評(píng)論 0 1
  • 距離考研也就只有82天了,有緊張有迷茫也有過充實(shí)后帶來的喜悅。加油!別讓人生留下遺憾!
    Ashley晏晏兒閱讀 145評(píng)論 0 0
  • 簡(jiǎn)書連載風(fēng)云錄《選擇》目錄上一章回顧:選擇 (十) 不期而遇第十一章:情竇初開 經(jīng)過幾周的英語(yǔ)培訓(xùn),何嘉慧對(duì)英語(yǔ)的...
    林燕娜閱讀 666評(píng)論 4 8
  • 歌劇是一種西方舞臺(tái)表演藝術(shù),它起源于古希臘悲劇,是將音樂、戲劇、文學(xué),舞蹈,舞臺(tái)美術(shù)等融為一體的綜合性藝術(shù),主要由...
    葉塞尼婭閱讀 2,600評(píng)論 0 1

友情鏈接更多精彩內(nèi)容