版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件工程相關(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ù)交付探索性測(cè)試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為什么要敏捷?盡早測(cè)試、提高產(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à)值觀簡(jiǎn)單我們要用最簡(jiǎn)單的方式做我們的事情,無論是設(shè)計(jì)、開發(fā)實(shí)現(xiàn)還是測(cè)試溝通PD和開發(fā)、測(cè)試之間用戶和PD之間開發(fā)和開發(fā)之間PD和用戶之間勇氣勇于去創(chuàng)新,勇于去改變,勇于接受改變反饋對(duì)于我們產(chǎn)品、對(duì)于我們的開發(fā)過程的每一步開發(fā)的進(jìn)度,每一步測(cè)試的結(jié)果,對(duì)任何人而言都是透明的。不斷反饋的過程就是不斷建立信心的過程。2024/8/2212敏捷開發(fā)方法完整團(tuán)隊(duì)項(xiàng)目墻每日晨會(huì)/站會(huì)測(cè)試驅(qū)動(dòng)開發(fā)2024/8/2213敏捷開發(fā)方法結(jié)對(duì)編程(codereview等)持續(xù)集成重構(gòu)迭代總結(jié)2024/8/2214TDD:從一句大師的話開始
編寫單元測(cè)試是在進(jìn)行驗(yàn)證,更是在進(jìn)行設(shè)計(jì)。同樣,它更是在編寫文檔。2024/8/2215測(cè)試驅(qū)動(dòng)開發(fā)的精髓
將測(cè)試方案設(shè)計(jì)工作提前,在編寫代碼之前先做這一項(xiàng)工作;
從測(cè)試的角度來驗(yàn)證設(shè)計(jì),推導(dǎo)設(shè)計(jì);
將測(cè)試方案當(dāng)作行為的準(zhǔn)繩,有效地利用其檢驗(yàn)代碼編寫的每一步,實(shí)時(shí)驗(yàn)證其正確性,實(shí)現(xiàn)軟件開發(fā)過程的"小步快走"。
2024/8/2216WhatisTDD?TestDrivenDevelopment(測(cè)試驅(qū)動(dòng)開發(fā))測(cè)試先行。持續(xù)重構(gòu)。測(cè)試驅(qū)動(dòng)開發(fā)是一種在極限編程(XP)中處于核心地位的技術(shù)。2024/8/2217WhyTDD?確保每個(gè)方法都是可用的且已被測(cè)試過確保及時(shí)發(fā)現(xiàn)出現(xiàn)問題的模塊添加或修改代碼更容易頻繁地運(yùn)行測(cè)試迭代式遞增開發(fā)不斷重構(gòu)以改善設(shè)計(jì)2024/8/2218WhyTDD?TDD還能改善和驗(yàn)證設(shè)計(jì):以客戶端的視角編寫測(cè)試為客戶端提供了示例代碼更注重接口的設(shè)計(jì)為了使測(cè)試容易,需要實(shí)現(xiàn)松散耦合更少的Debug時(shí)間2024/8/2219HowtodoTDD?1、寫一個(gè)空方法。2、寫一個(gè)測(cè)試程序(單元測(cè)試用例)。3、讓程序編譯通過。4、運(yùn)行測(cè)試程序,發(fā)現(xiàn)不能運(yùn)行。(紅條)5、讓測(cè)試程序可以運(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長(zhǎng)大了要結(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)行測(cè)試代碼修改代碼流向構(gòu)建成功的線上版本取令牌還令牌二級(jí)構(gòu)建階段提交構(gòu)建階段第二次本地驗(yàn)證第一次本地驗(yàn)證12344’56把代碼從版本庫中檢出到本地為新功能或修改某個(gè)缺陷而修改代碼,增加測(cè)試運(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單元測(cè)試2024/8/2233CI神燈2024/8/2234探索性測(cè)試(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度法律服務(wù)機(jī)構(gòu)兼職律師服務(wù)合同3篇
- 2025年度公司簽約帶貨主播虛擬偶像合作合同3篇
- 二零二五年度養(yǎng)殖場(chǎng)養(yǎng)殖場(chǎng)養(yǎng)殖技術(shù)交流與合作合同3篇
- 2025年度建筑工程施工現(xiàn)場(chǎng)管理三方協(xié)議3篇
- 二零二五年度全新碼頭租賃合同及港口貨物裝卸服務(wù)協(xié)議3篇
- 2025年度XX教育機(jī)構(gòu)二零二五年度教育貸款協(xié)議3篇
- 2025年度大學(xué)畢業(yè)生就業(yè)就業(yè)能力評(píng)估與培訓(xùn)合同3篇
- 2025年度高新技術(shù)產(chǎn)業(yè)競(jìng)業(yè)禁止勞動(dòng)合同范本解析3篇
- 2025年度高效農(nóng)業(yè)機(jī)械買賣合同協(xié)議書模板3篇
- 2025年度寵物店專業(yè)連鎖品牌形象設(shè)計(jì)與授權(quán)合同3篇
- 2024年社區(qū)工作者考試試題庫
- 工廠設(shè)備工程師年終總結(jié)
- 福建省廈門市2024-2025學(xué)年新人教版九年級(jí)語文上學(xué)期期末質(zhì)量檢測(cè)試題
- 辦公室行政培訓(xùn)
- (完整版)python學(xué)習(xí)課件024600
- 湖南省岳陽市2023-2024學(xué)年高一上學(xué)期1月期末質(zhì)量監(jiān)測(cè)試題+物理 含答案
- 圓柱的表面積課件
- 2024年高等教育法學(xué)類自考-00226知識(shí)產(chǎn)權(quán)法考試近5年真題附答案
- 金匱要略2022-2023-2學(xué)期學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2025屆成都市青羊區(qū)數(shù)學(xué)六上期末檢測(cè)試題含解析
- 【課件】Unit+5+Fun+Clubs-+Section+B+(1a-2b)課件人教版(2024)七年級(jí)英語上冊(cè)++
評(píng)論
0/150
提交評(píng)論