日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

工欲善其事必先利其器——研發(fā)團(tuán)隊(duì)開源管理工具最佳實(shí)踐

 KM360d 2014-04-22
  • 持續(xù)集成及質(zhì)量跟蹤——Jenkins + FindBugs + CheckStyle + PMD + JDepend + ... 或 Sonar
    • 適 應(yīng)互聯(lián)網(wǎng)研發(fā)特點(diǎn)的敏捷團(tuán)隊(duì)必須要通過“每天”的集成結(jié)果報(bào)告來指導(dǎo)下一日的工作,這包括幫助研發(fā)團(tuán)隊(duì)發(fā)現(xiàn)問題、跟蹤問題和解決問題,這意味著基于持續(xù)集 成平臺(tái)的質(zhì)量跟蹤工具需要在持續(xù)集成的構(gòu)建過程中產(chǎn)生各種各樣的“副產(chǎn)品”——將每日研發(fā)工作中的進(jìn)展和阻礙從各個(gè)角度暴露出來。
    • Jenkins 是著名持續(xù)集成工具Hudson的開源版本,我們一般設(shè)定在每日凌晨進(jìn)行構(gòu)建,產(chǎn)生構(gòu)建報(bào)告,如果構(gòu)建失敗的話會(huì)直接給相應(yīng)的研發(fā)人員發(fā)送電子郵件并告知 問題所在。Jenkins平臺(tái)上的FindBugs和PMD插件主要用來掃描程序中的錯(cuò)誤代碼和重復(fù)代碼,隨著這2個(gè)插件變得越來越智能,很多危險(xiǎn)的 bugs和冗余的代碼邏輯(實(shí)踐證明冗余的代碼在被改動(dòng)時(shí)很容易引起bugs)被自動(dòng)掃描出來,研發(fā)人員可以很方便的查看并立即修正,這一切都有直觀的走 勢(shì)圖表輔助管理。JDepend插件可以分析代碼的邏輯層次和復(fù)雜度,這對(duì)于追求優(yōu)雅和精益求精的架構(gòu)師非常有用。
    • Sonar平臺(tái)基于Jenkins提供了以上絕大部分的功能,目前我們?cè)谄髽I(yè)級(jí)的層次使用之,進(jìn)行全局的掃描統(tǒng)計(jì)工作。
  • 項(xiàng)目及構(gòu)建庫管理——Maven + Nexus(或 Artifactory),just for Java
    • Maven的主要作用是為協(xié)作研發(fā)統(tǒng)一管理類庫,這已經(jīng)成為了Java開發(fā)的工業(yè)標(biāo)準(zhǔn)。目前我們采用Artifactory這個(gè)Web開源項(xiàng)目作為私有倉庫的管理軟件,當(dāng)然Nexus也不錯(cuò)。
  • 需求任務(wù)管理及缺陷跟蹤——Redmine
    • Redmine是用Ruby語言開發(fā)的,是目前最流行的需求任務(wù)管理和缺陷跟蹤工具,事實(shí)上它還具有知識(shí)管理的功能。目前我們主要使用Redmine作為缺陷管理工具,這也是Redmine最擅長的領(lǐng)域。
  • 知識(shí)管理——MediaWiki
    • MediaWiki是非常流行的、簡易的知識(shí)管理工具,使用它能幫助我們方便的共享知識(shí)、管理知識(shí)并使整個(gè)組織的經(jīng)驗(yàn)沉淀下來,使用它我們可以在一定程度上避免重復(fù)的溝通和重復(fù)的錯(cuò)誤。當(dāng)然JspWiki等工具也可以替代之。
  • 自動(dòng)化單元測(cè)試——Junit系列
    • 很 多非功能性的bugs是黑盒測(cè)試同學(xué)無法發(fā)現(xiàn)的,Junit系列開源框架能幫助研發(fā)人員快速的構(gòu)建基于白盒的單元測(cè)試代碼,它不僅能進(jìn)行功能性測(cè)試,還可 以進(jìn)行非功能性測(cè)試,同時(shí)Junit單元測(cè)試還可以通過遵循Maven規(guī)范在持續(xù)集成的構(gòu)建中進(jìn)行執(zhí)行,從而有效的把關(guān)軟件的質(zhì)量。目前我們正在利用 Junit實(shí)現(xiàn)數(shù)據(jù)層/業(yè)務(wù)邏輯層/服務(wù)層/控制器層的單元測(cè)試。
  • 配置管理——SVN 或 GIT
    • 一般在企業(yè)里集中研發(fā)使用SVN比較合適。
    • GIT是高效率的離線式配置管理工具,非常適合松散合作型的團(tuán)隊(duì)。
  • 代碼量統(tǒng)計(jì)——SVNStat
    • 我 們使用SVNStat統(tǒng)計(jì)每日的總體代碼工作量和每個(gè)研發(fā)人員的代碼修改量和提交分布,我們可以從中可以發(fā)現(xiàn)一些研發(fā)管理上的問題并觀察工作量分布的情 況。我們開發(fā)了一個(gè)工具將SVNStat的代碼量統(tǒng)計(jì)報(bào)告的生成與Jenkins每日集成綁定在一起,這樣,每日更新的代碼量統(tǒng)計(jì)報(bào)告可以為研發(fā)過程的管 理提供一定程度上的參考意見。
  • 測(cè)試管理——Testlink,主要用于自動(dòng)化測(cè)試復(fù)用。
  • 代碼評(píng)審——Phabricator,進(jìn)行代碼審查的好工具。

使用以上工具,可以支撐3~1000+人的研發(fā)團(tuán)隊(duì)協(xié)同工作,經(jīng)實(shí)踐證明 Very Good

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多