版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
軟件工程相關(guān)理論@孫景衛(wèi)2024/8/221我是誰@孫景衛(wèi)/sunjwjingweisun@百度架構(gòu)師、項(xiàng)目經(jīng)理2024/8/222大綱敏捷開發(fā)TDD結(jié)對(duì)開發(fā)持續(xù)集成、持續(xù)交付探索性測試2024/8/22360’s軟件作坊70’s軟件危機(jī)80’s軟件工程90’s重型過程20xx敏捷軟件開發(fā)模式的演進(jìn)2024/8/224為什么要敏捷?需求經(jīng)常在變化2024/8/225為什么要敏捷?需求失真2024/8/226為什么要敏捷?kickoff沒有足夠的時(shí)間發(fā)布2024/8/227為什么要敏捷?盡早測試、提高產(chǎn)品的質(zhì)量2024/8/228快魚吃慢魚Googlevs.MicrosoftApplvevs.Nokia……2024/8/229敏捷開發(fā)和傳統(tǒng)開發(fā)流程的對(duì)比敏捷開發(fā)“前”的產(chǎn)品開發(fā)過程(瀑布模型)2024/8/2210敏捷開發(fā)和傳統(tǒng)開發(fā)流程的對(duì)比敏捷開發(fā)“后”的產(chǎn)品開發(fā)過程(迭代模型)2024/8/2211敏捷開發(fā)的價(jià)值觀簡單我們要用最簡單的方式做我們的事情,無論是設(shè)計(jì)、開發(fā)實(shí)現(xiàn)還是測試溝通PD和開發(fā)、測試之間用戶和PD之間開發(fā)和開發(fā)之間PD和用戶之間勇氣勇于去創(chuàng)新,勇于去改變,勇于接受改變反饋對(duì)于我們產(chǎn)品、對(duì)于我們的開發(fā)過程的每一步開發(fā)的進(jìn)度,每一步測試的結(jié)果,對(duì)任何人而言都是透明的。不斷反饋的過程就是不斷建立信心的過程。2024/8/2212敏捷開發(fā)方法完整團(tuán)隊(duì)項(xiàng)目墻每日晨會(huì)/站會(huì)測試驅(qū)動(dòng)開發(fā)2024/8/2213敏捷開發(fā)方法結(jié)對(duì)編程(codereview等)持續(xù)集成重構(gòu)迭代總結(jié)2024/8/2214TDD:從一句大師的話開始
編寫單元測試是在進(jìn)行驗(yàn)證,更是在進(jìn)行設(shè)計(jì)。同樣,它更是在編寫文檔。2024/8/2215測試驅(qū)動(dòng)開發(fā)的精髓
將測試方案設(shè)計(jì)工作提前,在編寫代碼之前先做這一項(xiàng)工作;
從測試的角度來驗(yàn)證設(shè)計(jì),推導(dǎo)設(shè)計(jì);
將測試方案當(dāng)作行為的準(zhǔn)繩,有效地利用其檢驗(yàn)代碼編寫的每一步,實(shí)時(shí)驗(yàn)證其正確性,實(shí)現(xiàn)軟件開發(fā)過程的"小步快走"。
2024/8/2216WhatisTDD?TestDrivenDevelopment(測試驅(qū)動(dòng)開發(fā))測試先行。持續(xù)重構(gòu)。測試驅(qū)動(dòng)開發(fā)是一種在極限編程(XP)中處于核心地位的技術(shù)。2024/8/2217WhyTDD?確保每個(gè)方法都是可用的且已被測試過確保及時(shí)發(fā)現(xiàn)出現(xiàn)問題的模塊添加或修改代碼更容易頻繁地運(yùn)行測試迭代式遞增開發(fā)不斷重構(gòu)以改善設(shè)計(jì)2024/8/2218WhyTDD?TDD還能改善和驗(yàn)證設(shè)計(jì):以客戶端的視角編寫測試為客戶端提供了示例代碼更注重接口的設(shè)計(jì)為了使測試容易,需要實(shí)現(xiàn)松散耦合更少的Debug時(shí)間2024/8/2219HowtodoTDD?1、寫一個(gè)空方法。2、寫一個(gè)測試程序(單元測試用例)。3、讓程序編譯通過。4、運(yùn)行測試程序,發(fā)現(xiàn)不能運(yùn)行。(紅條)5、讓測試程序可以運(yùn)行。(綠條)6、消除重復(fù)設(shè)計(jì),優(yōu)化設(shè)計(jì)結(jié)構(gòu)。(綠條)7、重構(gòu)2024/8/2220小時(shí)候結(jié)對(duì)學(xué)習(xí)2024/8/2221小時(shí)候結(jié)對(duì)學(xué)習(xí)的關(guān)鍵詞共同學(xué)習(xí)互相幫助互相監(jiān)督2024/8/2222長大了要結(jié)對(duì)編程2024/8/2223結(jié)對(duì)編程的關(guān)鍵詞共同完成共同學(xué)習(xí)互相幫助互相監(jiān)督2024/8/2224結(jié)對(duì)中需要做的需求review設(shè)計(jì)reviewCodereview進(jìn)度review2024/8/2225結(jié)對(duì)的好處互相學(xué)習(xí),學(xué)習(xí)人家的設(shè)計(jì)思路、開發(fā)技巧互相backup提高產(chǎn)品質(zhì)量促進(jìn)溝通促進(jìn)問題及時(shí)反饋2024/8/2226結(jié)對(duì)中的取舍不是結(jié)對(duì)編程,而是結(jié)對(duì)開發(fā)無需兩兩同時(shí)進(jìn)行需要根據(jù)項(xiàng)目的大小和難易而定2024/8/2227持續(xù)集成讓機(jī)器進(jìn)行軟件研發(fā)過程中80%的例行工作,其他20%的需要智力的工作由人進(jìn)行。Build(Timely,Daily,Weekly)CI/CD/持續(xù)反饋2024/8/2228版本庫中的開發(fā)分支個(gè)人本地工作區(qū)圖例:運(yùn)行測試代碼修改代碼流向構(gòu)建成功的線上版本取令牌還令牌二級(jí)構(gòu)建階段提交構(gòu)建階段第二次本地驗(yàn)證第一次本地驗(yàn)證12344’56把代碼從版本庫中檢出到本地為新功能或修改某個(gè)缺陷而修改代碼,增加測試運(yùn)行第一次本地驗(yàn)證驗(yàn)證無問題后,再次與版本庫中的代碼合并,執(zhí)行本地驗(yàn)證二次驗(yàn)證無問題后,提交代碼到版本庫等待持續(xù)集成服務(wù)器運(yùn)行完提交構(gòu)建注:令牌為可選項(xiàng),主要解決團(tuán)隊(duì)協(xié)作問題。每個(gè)持續(xù)集成只有一個(gè)令牌。持續(xù)集成步驟2024/8/2229持續(xù)交付(ContinuousDeployment)codeBinaryConfDataCIProductcodeBinaryConfDataProductCICD部署通過手工、半手工完成,產(chǎn)品信息沒有被版本管理,增量部署產(chǎn)品信息版本管理,自動(dòng)完成部署,整體部署2024/8/2230優(yōu)勢(shì)codeBinaryConfDataProductCICD自動(dòng)化程度高,一鍵部署版本管理完整,易于回滾信息集中管理,便于溝通;角色間溝通的信息量減少(僅revision)易于完善質(zhì)量保障環(huán)節(jié)2024/8/2231分支策略主干分支part1-x.x.x版本a提交……版本b版本c提交提交提交提交提交提交提交同步A團(tuán)隊(duì):B團(tuán)隊(duì)同步同步同步同步同步同步同步……2024/8/2232It'sNOTaboutfindingbugs!Thepurposeofunittestingistofacilitatechanges單元測試2024/8/2233CI神燈2024/8/2234探索性測試(ExploratoryTesting)一邊
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 全國大學(xué)生廣告藝術(shù)大賽作品欣賞
- 《設(shè)立糧食倉庫的戰(zhàn)》課件
- 山東省濟(jì)寧市鄒城市2025屆高三第五次模擬考試語文試卷含解析
- 陜西省西安市碑林區(qū)鐵一中學(xué)2025屆高考數(shù)學(xué)三模試卷含解析
- 吉林省汪清縣六中2025屆高考數(shù)學(xué)三模試卷含解析
- 測量學(xué)基礎(chǔ)常識(shí)100個(gè)知識(shí)點(diǎn)
- 2025屆四川省會(huì)理縣第一中學(xué)高三沖刺模擬英語試卷含解析
- 甘肅省天水市甘谷縣第一中學(xué)2025屆高三第五次模擬考試英語試卷含解析
- 現(xiàn)代學(xué)徒制課題:中國特色學(xué)徒制實(shí)施現(xiàn)狀調(diào)查研究(附:研究思路模板、可修改技術(shù)路線圖)
- 《信使的信號(hào)通路》課件
- 2024河北省建筑安全員-A證考試題庫及答案
- 山東實(shí)驗(yàn)中學(xué)2025屆高三第三次診斷考試 英語試卷(含答案)
- 2023年民航華北空管局招聘考試真題
- 自動(dòng)化立體倉庫倉儲(chǔ)項(xiàng)目可行性研究報(bào)告
- 2024至2030年冬蟲夏草菌粉項(xiàng)目投資價(jià)值分析報(bào)告
- 2024版發(fā)電機(jī)安全性能檢測服務(wù)合同2篇
- 中小學(xué)校圖書館管理員業(yè)務(wù)培訓(xùn)
- C語言編程新思路知到智慧樹期末考試答案題庫2024年秋山東理工大學(xué)
- 拔罐療法在老年健康護(hù)理中的應(yīng)用與展望-2024年課件
- 2024-2030年中國球扁鋼行業(yè)發(fā)展規(guī)劃及投資需求分析報(bào)告
- 2024年社區(qū)工作者考試試題庫
評(píng)論
0/150
提交評(píng)論