需求和開發模型

文章目錄

  • 什么是需求?
    • 用戶需求
    • 軟件需求
      • 用戶需求和軟件需求的不同
  • 開發模型
    • 什么是“模型”?
    • 軟件的生命周期
    • 常見的開發模型
      • 瀑布模型(Waterfall Model)
      • 螺旋模型
      • 增量模型、迭代模型
      • 敏捷模型
    • 測試模型
      • V 模型
      • W 模型(雙 V 模型)

什么是需求?

滿足用戶期望或正式規定文檔(合同、標準、規范)所具有的條件和權能,包含用戶需求和軟件需求。

用戶需求

用戶需求:可以簡單理解為甲方提出的需求,如果沒有甲方,那么就是終端用戶使用產品時必須要完成的任務。該需求一般比較簡略,通常是一句話。

??的需求是五花??,往往只是?句話?如:實現?個聲控燈,實現?個軟件的登錄功能。

軟件需求

軟件需求:或者叫功能需求,該需求會詳細描述開發人員必須實現的軟件功能。 軟件需求是測試人員進行測試工作的基本依據。

用戶需求和軟件需求的不同

案例一:?朋友餓了的例?

  • ??需求:?朋友說:我餓了。這是?個??需求,很簡略。
  • 軟件需求:需要你和她反復溝通,了解更加詳細具體的需求來制定解決?案。
    • ?如你問她:“想吃啥?”,她說:“隨便”
    • “吃?飯炒菜?”,“不想吃”;“那你想吃啥?”,“隨便”
    • “吃油潑??”,“不想吃”;“那你想吃啥?”,“隨便”
    • 最終理解清楚??需求之后,知道?朋友想吃的是你做的紅燒?,那么再去研究?怎么買,怎么做等等的具體步驟,這是軟件需求。

在?作中我們實際?到的軟件需求?檔類似于下?的表述:

軟件需求規格說明書

?、??需求:

平臺?持郵箱注冊

?、軟件需求:

注意:??的需求不能直接作為開發和測試的依據。針對??的需求,產品經理需要對用戶需求進?需求分析(技術可?性、市場可?性、成本投?和收益占?等)后才可轉變為軟件需求。即把用戶需求轉化為軟件需求,開發人員和測試人員工作的直接依據就是軟件需求

開發模型

開發模型實際上指的是開放一款軟件或功能所需要具備的開發流程。

什么是“模型”?

隨著軟件工程學科的發展,人們對計算機軟件的認識逐漸深入。軟件工作的范圍不僅僅局限在程序編寫,而是擴展到了整個軟件生命周期,如軟件基本概念的形成、需求分析、設計、實現、測試、安裝部署、運行維護,直到軟件被更新和替換新的版本。軟件工程還包括很多技術性的管理工作,例如過程管理、產品管理、資源管理和質量管理,在這些方面也逐步地建立起了標準或規范。

軟件的生命周期

?命周期指的是從?命的開始到?命結束的?段時間。

以?為例,?類的?命周期是從?命孕育的開始,中間會經歷幼年,童年,少年,?年,?年,最終直?死亡。

軟件/產品的?命周期也是如此,需求的開始是軟件?命的起點,中間會經歷需求的計劃、設計、程序開發、程序測試等階段,直?軟件不再進?維護便到了?命的重點。

軟件生命周期是指從軟件產品的設想開始到軟件不再使用而結束的時間。

如果把軟件看成是有生命的事物,那么軟件的生命周期可以分成6個階段,即需求分析、計劃、設計、編碼、測試、運行維護。

案例:

假如想要建造?套房?(別問,問就是?個?造房?),房?的?命周期(流程)是什么樣的?

步驟總結映射軟件流程
為什么要建房??商品房還是普通住宅?建造100層技術上是否可??明確合理的建房?標需求分析
什么時候開發建房??計劃竣?時間?多久可以交房?計劃好時間計劃
建房前明確流程:先打地基,做基礎框架,砌墻、粉刷、?電?程…設計好具體的建房流程設計
按照前?的流程和時間實施建房中…施?中編碼
房屋建造完成,開發商驗收成果、買家驗收房?品質(房?是否牢固,是否漏?及其他偷?減料的地?,是否按照規定來建造的)檢查房屋建造結果測試
檢查結束開始逐步?住,使?中出現了各種情況如房屋漏?、墻?掉?、下?道堵塞等問題,?邊使??邊找物業修理使?并及時維護運?維護

因此,我們就得到了軟件(開發)的?命周期:

需求分析?計劃?設計?編碼?測試?運?維護

對于軟件的?命周期中,每個階段都在做什么呢?

階段具體內容產出
需求分析分析??需求是否合理,分別從市場需求、技術等??進?分析。該階段會輸出需求等?檔。
計劃對成?的需求執?需求執?計劃,多?時間內完成該需求,每段時間具體完成哪些功能。該階段會輸出計劃等?檔。
設計將需求細化成?個個任務,團隊成員各司其職領取任務并進?技術設計(如何進?架構設計,設計哪些接?、采?什么技術)該階段會輸出技術等?檔。
編碼開發?員參考需求?檔、設計?檔、交互圖等等?件進?代碼的編寫。代碼?件等?檔。
測試測試?員需要介?到軟件的測試中來,參考測試?例對軟件進?測試。測試?例、測試設計與計劃、測試報告等?檔
運行維護項?測試結束之后,項?需要進?上線,并對產品進?線上的維護。線上的維護主要分為三個??。分別為修復性維護、完善性維護和預防性維護。
+ **修復性維護:**對項?中未發現的問題進?修復。
+ 完善性維護:對功能進?完善。
+ **預防性維護:**居安思危,為了避免產品在線上出現?些其他不可預料的問題,進??些防護的?段。

常見的開發模型

瀑布模型(Waterfall Model)

瀑布模型在軟件?程中占有重要地位,是所有其他模型的基礎框架瀑布模型的每?個階段都只執??次,因此是線性順序進?的軟件開發模式。

瀑布模型的?個最?缺陷在于:可以運?的產品很遲才能被看到。這會給項?帶來很?的?險,尤其是集成的?險。因為如果在需求引?的?個缺陷要到測試階段甚?更后的階段才發現,通常會導致前?階段的?作??積返?,業界流?的說法是:“集成之?就是爆炸之?”。

盡管瀑布模型存在很?的缺陷,例如,在前期階段未發現的錯誤會傳遞并擴散到后?的階段,?在后?階段發現這些錯誤時,可能已經很難回頭再修正,從?導致項?的失敗。但是?前很多軟件企業還是沿?了瀑布模型的線性思想,在這個基礎上做出??的修改。例如細化了各個階段,在某些重點關注的階段之間摻?迭代的思想。在瀑布模型中,測試階段處于軟件實現后,這意味著必須在代碼完成后有?夠的時間預留給測試活動,否則將導致測試不充分,從?把缺陷直接遺留給??。

瀑布模型優缺點總結:

優點/特點缺點
+ 強調開發的階段性
+ 線性結構,每個階段只執??次
+ 是其他模型的基礎框架
+ 測試后置
- 前?各階段遺留的?險推遲到測試階段才被發現,導致項???積返?,失去了及早修復的機會
- 必須留有?夠的時間給測試活動,否則導致測試不充分,將缺陷直接暴露給??(產品質量差)
+ 周期太?,產品很遲才能被看到和使?,可能會導致需求/功能過時

瀑布模型存在很嚴重的項??險,那瀑布模型就不能夠被采?了嗎?當然不是。

瀑布模型的適?場景:需求固定的?項?

然?企業中存在許多些規模龐?、復雜度?、?險?的項?,這種情況下可以哪種模型呢?

螺旋模型

?般在軟件開發初期階段需求不是很明確時,采?漸進式的開發模式。螺旋模型是漸進式開發模型的代表之?,結合了瀑布模型的系統性和迭代模型的靈活性,同時融入了風險分析和評估機制。這對于那些規模龐?、復雜度?、?險?的項?尤其適合。

這種迭代開發的模式給軟件測試帶來了新的要求,它不允許有?段獨?的測試時間和階段,測試必須跟隨開發的迭代?迭代。因此,回歸測試的重要性就不??喻了。

以下是上圖的展開,也是瀑布模型的變形:

優點缺點
+ 強調嚴格的全過程?險管理
+ 強調各開發階段的質量
+ 增加?險分析和原型
+ 項?中可能存在的?險性與?險管理?員的技能?平有直接關系
+ 需求?員、資?、時間的增加和投?,可能會導致項?的成本太?

適?場景:規模龐?、復雜度?、?險?的項?。

增量模型、迭代模型

增量模型是一種軟件開發過程模型,它將軟件產品(大需求)分解為多個增量部分(小需求),每個部分(小需求)可以獨立開發、測試和交付

增量開發能顯著降低項??險,結合軟件持續構建機制,構成了當今流?的軟件?程最佳實踐之?。增量開發模型,?勵??反饋,在每個迭代過程中,促使開發?組以?種循環的、可預測的?式驅動產品的開發。因此,在這種開發模式下,每?次的迭代都意味著可能有需求的更改、構建出新的可執?軟件版本,意味著測試需要頻繁進?,測試?員需要與開發?員更加緊密地協作。

與此類似的有?個迭代開發,增量開發和迭代開發往往容易被?認為是一樣的,但是其實兩者是有區別的。增量是逐塊建造的概念,迭代是反復求精的概念。 迭代模型通過反復循環的方式逐步細化和完善軟件產品。

  • 增量模型是先畫?的頭部,再畫?體,再畫?腳……
  • 迭代模型是先畫整體輪廓,再勾勒出基本雛形,再細化、著?……

適?場景:?型項?,需求不明確。

敏捷模型

在早期,迭代瀑布模型?常流?來完成?個項?。但是現在開發?員在使?它開發軟件時?臨著各種各樣的問題。主要困難包括**在項?開發期間處理來?客?的變更請求以及合并這些變更所需的?成本和時間。**為了克服瀑布模型的這些缺點,在1990年代中期提出了敏捷軟件開發模型。

敏捷模型主要旨在幫助項?快速適應變更請求。因此,敏捷模型的主要?的是促進項?的快速完成。要完成這項任務,需要敏捷。敏捷性是通過使過程適應項?,刪除對特定項?可能不是必需的活動來實現的。此外,避免任何浪費時間和精?的事情。

在敏捷模型中,需求被分解成許多可以增量開發的?部分。敏捷模型采?迭代開發。每個增量部分都是在迭代中開發的。每次迭代都旨在??易于管理,并且只能在?周內完成。?次為客?計劃、開發和部署?個迭代。沒有制定?期計劃。

敏捷模型中有?個?常重要的《敏捷宣?》,宣?內容:

  • 個體與交互重于過程和?具:強調高效的溝通
  • 可?的軟件重于完備的?檔:強調輕文檔,文檔不應作為驗收的標準
  • 客?協作重于合同談判:主動及時了解當下的需求
  • 響應變化重于遵循計劃:能夠主動的迎接變化

宣?中主要運?了對?的?法,然?,在每對?對中,后者并?全?價值,但我們更看重前者。

通過敏捷宣?可以總結出敏捷模型的四個特點:輕?檔,輕流程,重?標,重產出。

敏捷開發有很多種?式,其中scrum是?較流?的?種。

Scrum 是敏捷模型中的?種,?稱為迭代式增量軟件開發模型。在scrum模型中,主要有三個??和五個重要會議。

三個??:

scrum 由 product owner (產品經理)、scrum master (項?經理)和 team (研發團隊)組成。

  • product owner 負責整理 user story (??故事),定義其商業價值,對其進?排序,制定發布計劃,對產品負責。
  • scrum master 負責召開各種會議,協調項?,為研發團隊服務。
  • 研發團隊則由不同技能的成員組成,通過緊密協同,完成每?次迭代的?標,交付產品。

迭代開發:

與瀑布不同,scrum 將產品的開發分解為若?個? sprint (迭代),其周期從1周到4周不等,但不會超過4周。參與的團隊成員?般是5到9?。每期迭代要完成的 user story 是固定的。每次迭代會產??定的交付。

scrum 的基本流程如上圖所?:

  1. 產品負責?(product owner)負責整理 user story(收集和整理用戶需求),形成左側的產品代辦列表 product backlog。
  2. 發布計劃會議:product owner 負責講解 user story,對其進?估算和排序,發布計劃會議的產出就是制定出這?期迭代要完成的 user story 列表,即 sprint backlog。
  3. 迭代計劃會議:項?團隊對每?個 user story 進?任務分解,分解的標準是完成該 user story 的所有任務,每個任務都有明確的負責?,并完成?時的初估計。
  4. 每?例會:每天 scrum master 召集站?會議,團隊成員回答昨天做了什么、今天計劃做什么、有什么問題。
  5. 演?會議:迭代結束之后,召開演?會議(sprint review),相關?員都受邀參加。團隊負責向?家展?本次迭代取得的成果。期間?家的反饋記錄下來,由 product owner 整理,形成新的 user story。
  6. 回顧會議:項?團隊對本期迭代進?總結,發現不?,制定改進計劃。下?次迭代繼續改進,以達到持續改進的效果。

敏捷中的測試

  1. 輕?檔
    1. 敏捷模型中強調輕?檔,減少冗長的文檔編寫,所以測試?員不應使?傳統的 Excel 編寫測試?例的?法,更多的是使?思維導圖、探索性測試(強調?由度,設計和執?同時進?,根據測試結果不斷調整測試計劃)、?動化測試等。
  2. 快速迭代
    1. 敏捷開發中的短周期迭代要求測試人員能夠快速響應需求變化,并在有限的時間內完成測試工作。
    2. 敏捷講求合作,在敏捷項?組中,測試?員應多主動跟開發?員了解需求、討論設計、?起研究bug出現的原因。

測試模型

測試模型中有兩個?常重要且具有標志性的測試模型: V 模型和 W 模型。

V 模型

  • 單元測試:對代碼的最小單元(人為規定)執行測試。一般由開發人員進行。
  • 集成測試:將各個模塊集成在一起進行測試,確保模塊之間的接口和交互正確。
  • 系統測試:對整個系統進行測試,確保系統功能符合需求分析階段定義的需求。
  • 驗收測試:最終由用戶或客戶進行驗收測試,確保系統滿足最終用戶的使用需求。

V 模型最早是由 Paul Rook 在 20 世紀 80 年代后期提出的,?的是改進軟件開發的效率和效果,是瀑布模型的變種。 它將傳統的瀑布模型的線性流程與測試活動進行了明確的對應。V 模型強調在每個開發階段都有相應的測試階段,確保在開發過程中盡早發現和修復缺陷。

優點:

  • 明確的標注了測試過程中存在的不同類型的測試,并且清楚的描述了這些測試階段和開發過程期間各階段的對應關系,有效提升測試的質量和效率。
  • V模型指出:
    • 單元和集成測試應檢測程序的執?是否滿?軟件設計的要求;
    • 系統測試應檢測系統功能、性能的質量特性是否達到系統要求的指標;
    • 驗收測試確定軟件的實現是否滿???需要或合同的要求

**缺點:**僅僅把測試作為在編碼之后的?個階段,未在需求階段就介?測試。缺點同瀑布模型。

W 模型(雙 V 模型)

V模型中未將測試前置的問題在W模型中得以解決。

W模型通過在需求分析和設計階段就開始制定測試計劃和設計測試用例,實現了測試活動的前置化,能夠更早發現和修復問題,特別適合需求明確且對質量要求較高的項目。

特點:

  1. 測試前置:與 V 模型相比,W 模型將測試活動提前到需求分析和設計階段,使得測試人員可以更早參與項目。
  2. 雙重驗證每個開發階段都有對應的測試階段,形成兩個“V”形狀,因此稱為“雙V模型”。
  3. 強調同步性:開發和測試活動高度同步,確保在開發過程中及時發現問題。

優點:

  1. 早期發現問題:通過在需求分析和設計階段就開始制定測試計劃和設計測試用例,能夠在開發早期發現潛在問題,降低修復成本。
  2. 提高測試覆蓋率:測試活動覆蓋了從需求到編碼的各個階段,確保全面驗證系統的功能和性能。
  3. 增強協作:測試人員在項目早期就參與進來,與開發團隊緊密協作,共同為產品質量負責。

缺點:

  1. 需求、設計、編碼等活動被視為串?的;
  2. 測試和開發活動也保持著?種線性的前后關系,上?階段完全結束,才可正式開始下?個階段?作。
  3. 重流程,?法?持敏捷開發模式。對于當前軟件開發復雜多變的情況,W模型并不能解除測試管理?臨著困惑。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/72045.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/72045.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/72045.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

21-發糖果

n 個孩子站成一排。給你一個整數數組 ratings 表示每個孩子的評分。 你需要按照以下要求,給這些孩子分發糖果: 每個孩子至少分配到 1 個糖果。 相鄰兩個孩子評分更高的孩子會獲得更多的糖果。 請你給每個孩子分發糖果,計算并返回需要準備的 最…

sql深入學習

文章目錄 前言知識學習注釋的兩種形式字符型注入萬能密碼 布爾盲注報錯注入堆疊注入時間盲注二次注入 小技巧 前言 這次學習建立在對數據庫有基本的認識,了解基礎的增刪改查語句,數字型注入和字符型注入的基礎上,進一步深入學習知識&#xf…

利用three.js在Vue項目中展示重構的stl模型文件

一、目的 為了在前端頁面展示3d打印機打印過程 二、前期準備 完整模型的stl文件和模型切割成的n個stl文件 models文件夾下的文件就是切割后的stl文件 三、代碼 <template><div ref"threeContainer" class"three-container"></div><…

【Eureka 緩存機制】

今天簡單介紹一下Eureka server 的緩存機制吧?????? 一、先來個小劇場&#xff1a;服務發現的"拖延癥" 想象你是個外賣小哥&#xff08;客戶端&#xff09;&#xff0c;每次接單都要打電話問調度中心&#xff08;Eureka Server&#xff09;&#xff1a;“現在…

Python--內置模塊和開發規范(下)

2. 開發規范 2.1 單文件應用 文件結構示例 # 文件注釋 import os import jsonDB_PATH "data.json" # 常量放頂部def load_data():"""函數注釋&#xff1a;加載數據"""if os.path.exists(DB_PATH):with open(DB_PATH, "r"…

go設計模式

劉&#xff1a;https://www.bilibili.com/video/BV1kG411g7h4 https://www.bilibili.com/video/BV1jyreYKE8z 1. 單例模式 2. 簡單工廠模式 代碼邏輯&#xff1a; 原始&#xff1a;業務邏輯層 —> 基礎類模塊工廠&#xff1a;業務邏輯層 —> 工廠模塊 —> 基礎類模塊…

搭建數字化生態平臺公司:痛點與蚓鏈解決方案

在數字技術突飛猛進的當下&#xff0c;數字化生態平臺成為眾多企業實現創新發展、拓展業務版圖的 “秘密工具”。今天&#xff0c;咱們就一起來聊聊搭建這類平臺的公司&#xff0c;看看它們有啥獨特之處&#xff0c;又面臨哪些難題。 一、面臨的痛點 &#xff08;一&#xff0…

標記符號“<”和“>”符號被稱為“尖括號”或“角括號”

你提到的“<”和“>”符號被稱為“尖括號”或“角括號”。它們常用于編程語言中表示類型參數&#xff08;如泛型&#xff09;、HTML標簽&#xff08;如<div>&#xff09;、數學中的不等式&#xff08;如< 5&#xff09;等。 好的&#xff0c;我來用通俗的方式解…

云平臺DeepSeek滿血版:引領AI推理革新,開啟智慧新時代

引言&#xff1a;人工智能的未來——云平臺的卓越突破 在當今科技飛速發展的時代&#xff0c;人工智能&#xff08;AI&#xff09;技術正深刻地改變著我們生活與工作方式的方方面面。作為AI領域的創新者與領航者&#xff0c;云平臺始終走在技術前沿&#xff0c;憑借無窮的熱情…

自然語言處理:文本規范化

介紹 大家好&#xff01;很高興又能在這兒和大家分享自然語言處理相關的知識了。在上一篇發布于自然語言處理&#xff1a;初識自然語言處理-CSDN博客為大家初步介紹了自然語言處理的基本概念。而這次&#xff0c;我將進一步深入這個領域&#xff0c;和大家聊聊自然語言處理中一…

HTTP非流式請求 vs HTTP流式請求

文章目錄 HTTP 非流式請求 vs 流式請求一、核心區別 服務端代碼示例&#xff08;Node.js/Express&#xff09;非流式請求處理流式請求處理 客戶端請求示例非流式請求&#xff08;瀏覽器fetch&#xff09;流式請求處理&#xff08;瀏覽器fetch&#xff09; Python客戶端示例&…

C語言機試編程題

編寫版本&#xff1a;vc2022 1.求最大/小值 #include<stdio.h> int main(){int a[50],n;int max, min;printf("請輸入您要輸入幾個數");scanf_s("%d", &n);printf("請輸入您要比較的%d個數\n",n);for (int i 0; i<n; i) {scanf_…

c++ 多個.cpp文件運行

目錄 方法 1&#xff1a;將其他文件中的 main 改為普通函數 方法 2&#xff1a;使用頭文件組織代碼 方法 3&#xff1a;條件編譯&#xff08;僅用于調試或特殊需求&#xff09; 方法 4&#xff1a;創建類或命名空間管理邏輯 在一個C項目中&#xff0c;多個.cpp文件不能同…

基于OFDR的層壓陸相頁巖油儲層中非對稱裂縫群傳播的分布式光纖監測

關鍵詞&#xff1a;OFDR、分布式光纖傳感、裂縫傳播 一. 概述 四川盆地涼高山組優質頁巖油儲層存在復雜的垂直重疊巖性&#xff0c;大陸頁巖油儲層存在發育層理&#xff0c;薄層和天然裂縫&#xff0c;對水平井多級壓裂技術的裂縫網絡形態控制和監測構成挑戰。本研究提出了一…

UniApp 按鈕組件 open-type 屬性詳解:功能、場景與平臺差異

文章目錄 引言一、open-type 基礎概念1.1 核心作用1.2 通用使用模板 二、主流 open-type 值詳解2.1 contact - 客服會話功能說明平臺支持代碼示例 2.2 share - 內容轉發功能說明平臺支持注意事項 2.3 getUserInfo - 獲取用戶信息功能說明平臺支持代碼示例 2.4 getPhoneNumber -…

【大模型】Ubuntu下 fastgpt 的部署和使用

前言 本次安裝的版本為 fastgpt:v4.8.8-fix2。 最新版本fastgpt:v4.8.20-fix2 問答時報錯&#xff0c;本著跑通先使用起來&#xff0c;就沒有死磕下去&#xff0c;后面bug解了再進行記錄。 ? github連接&#xff1a;https://github.com/labring/FastGPT fastgpt 安裝說明&…

【GenBI實戰】python腳本實現基于DeepSeek api的數據查詢和圖表可視化

寫在前面 生成式 BI (GenBI) 正在改變我們與數據交互的方式。它允許用戶使用自然語言提出問題&#xff0c;并自動獲得數據洞察&#xff0c;而無需編寫復雜的 SQL 查詢或手動創建圖表。本文將帶你動手實戰&#xff0c;使用 Python 和 DeepSeek API (或其他類似的大語言模型 API…

Web-to-Web和Server-to-Serve歸因方法

Web2Web 和 S2S 歸因方法 1. Web2Web 歸因方法 原理&#xff1a; Web2Web&#xff08;Web-to-Web&#xff09;歸因方法主要用于跟蹤用戶在網站之間的行為路徑。它通過瀏覽器中的Cookie或其他標識符來追蹤用戶在不同網站之間的行為&#xff0c;從而確定用戶轉化的路徑。 使用…

c++中迭代器和指針有什么區別?

在 C 中&#xff0c;迭代器和指針雖然在某些場景下有相似的行為&#xff0c;但它們在設計目的、功能和使用場景上有本質區別。以下是詳細對比和最佳實踐&#xff1a; 一、核心區別對比表 特征指針迭代器本質原生數據類型&#xff0c;直接存儲內存地址類對象&#xff0c;抽象容…

如何使用Docker搭建哪吒監控面板程序

哪吒監控(Nezha Monitoring)是一款自托管、輕量級的服務器和網站監控及運維工具,旨在為用戶提供實時性能監控、故障告警及自動化運維能力。 文檔地址:https://nezha.wiki/ 本章教程,使用Docker方式安裝哪吒監控面板,在此之前,你需要提前安裝好Docker. 我當前使用的操作系…