最近在科技圈和社群媒體上,「Vibe Coding」這個詞突然變得非常火熱。簡單來說,就是利用現在強大的 AI 模型,讓不懂程式碼的人也能透過自然語言,「憑感覺」把一個軟體或網頁做出來。這確實是一個令人興奮的時代,創作的門檻被大幅降低了,彷彿人人都能成為軟體工程師。
這種現象也引發了巨大的焦慮。很多剛入行的開發者,甚至資深工程師都在問:「我們真的要被取代了嗎?」如果 AI 能在幾秒鐘內寫出一個網站,那我們存在的價值是什麼?
其實,要回答這個問題,我們不能只看「產出程式碼」這一個動作。開發一個完整的、商業等級的系統,遠比單純的寫 Code 複雜得多。為了讓大家看清楚全貌,我決定用最經典、最直觀的 Waterfall(瀑布式)開發模式 作為框架,帶大家走一遍正規的開發流程。雖然現在業界流行 Agile(敏捷開發),但 Waterfall 結構分明,最能讓我們看清在每一個環節中,人類專業的不可替代性,以及 AI 到底能幫上什麼忙。
Waterfall(瀑布式)開發模式

Waterfall 是一種傳統且線性的軟體開發模型,開發流程像瀑布一樣自上而下推進:
- 需求分析 - 定義清楚系統要解決的問題與功能。
- 系統與架構設計 - 決定系統如何實作。
- 實作(編碼) - 把設計轉化為實際程式碼。
- 系統與整合測試 - 確認功能是否符合需求、品質是否達標。
- 部署與後續維護 - 把系統部署並推出給用戶,與後續維護以確保服務正常。
其特色是每個階段都有明確的完成標準與文件輸出,上一階段完成後才進入下一階段,中途盡量不回頭修改,因此特別適合需求相對穩定、前期能規劃得很清楚的專案,但相對也缺乏彈性,一旦需求在中後期出現變更,調整成本通常會比較高。
一、 需求分析:AI 聽得懂語言,但讀不懂人心
在 Waterfall 模式的第一階段,也是最關鍵的起步,就是需求分析。這階段的目標,是要弄清楚「我們到底要解決什麼問題」。
專業的開發團隊會在這個階段花費大量時間與持份者(Stakeholders)溝通。這不只是開個會做筆記那麼簡單,更多時候是在進行「讀心」。客戶往往不知道自己真正需要什麼,他們可能會說:「我想要一個像 Amazon 的購物車。」但他們沒說出口的可能是:「我的庫存管理很混亂,需要系統自動對接。」或者是:「我們的行銷活動常常變更規則。」
這正是商業分析師(Business Analyst)的價值所在。他們需要觀察日常運作,挖掘那些隱藏在流程中的異常處理(Exception Handling)。比如,當網路斷線時系統該怎麼辦?當使用者重複點擊付款按鈕時,資料庫會不會鎖死?
目前的 AI 雖然能幫忙整理會議記錄、把雜亂的筆記轉化成漂亮的需求文件,甚至根據你的描述生成初步的使用者故事(User Stories),但它無法「讀懂空氣」。AI 無法察覺客戶在提到某個功能時猶豫的眼神,也無法親身去體驗工廠產線的實際操作流程。真正的痛點,往往藏在這些 AI 觸及不到的實體互動與深度同理之中。所以,這一步,人是核心。
二、 系統與架構設計:地基如果不穩,蓋再快也會塌
確認了需求,接下來就是系統與架構設計。這就像是蓋房子前的藍圖繪製。系統架構師(System Architect)需要在這裡做出無數個艱難的決定。
我們要考量的不僅僅是「現在能跑」,更要考慮安全性、韌性(Resiliency)和擴展性(Scalability)。例如,這個系統如果明年用戶量暴增十倍,伺服器撐得住嗎?如果駭客攻擊,資料會外洩嗎?未來的技術更新會不會導致現在的架構完全報廢(Future-proof)?這些都需要深厚的經驗累積才能判斷。
同時,UX/UI 設計師也在規劃介面。一個好的介面不只是好看,還要符合使用者的直覺,引導他們順利完成任務。
AI 在這裡可以是一個很棒的助理。它能快速生成多種 UI 配色方案,或者提供常見的架構樣板(如 MVC、Microservices 的基礎結構)。但是,面對複雜的企業邏輯,純靠 AI 生成的架構往往太過理想化或過於簡單。它很難理解企業內部的歷史包袱(Legacy Code)該如何與新系統共存。因此,AI 在此階段主要用於「加速產出」和「提供靈感」,最終的決策權和藍圖的精細度,依然掌握在資深架構師手中。
三、 實作(編碼):AI 最強大的戰場
這大概是大眾誤解最深的一個階段。很多人以為開發者整天都在「打 Code」,實際上,在資深工程師的日程表裡,寫程式可能只佔了 30% 不到的時間(大部分時間都在開會、設計或除錯)。
不過,當真正進入編碼階段,這確實是將設計圖轉化為現實的過程。程式碼講求邏輯嚴謹、可重用性(Reusability)和可維護性。工程師需要思考如何寫出別人也能看懂、而且三個月後的自己不會想殺死自己的程式碼。
必須承認,AI 在這個範疇的進步是革命性的。現在的工程師使用 GitHub Copilot 或 ChatGPT 寫 Boilerplates(樣板程式碼)簡直是神速。以前要手打半小時的基礎 CRUD 功能,現在幾秒鐘就能生成。而且,因為 LLM 是用海量的優質程式碼訓練出來的,它寫出來的語法通常都很標準,變數命名甚至比某些新手工程師還要規範。
這大幅減少了我們在鍵盤上敲擊的時間,也降低了因為手誤或疲勞造成的低級 Bugs。在這個環節,AI 是完美的「超級實習生」,效率極高,但它生成的程式碼邏輯是否完全符合複雜的業務規則,還是需要人類工程師去審查(Code Review)。這有點像有了自動導航,駕駛還是得看路,不然開進水溝都不知道。
四、 系統與整合測試:理論與現實的碰撞
程式碼寫好了,單元測試(Unit Test)也過了,是不是就能上線了?當然不是。接著進入最痛苦也最重要的整合測試階段。
這就像是把汽車的各個零件組裝起來,看看引擎能不能帶動輪子。單個模組跑起來都很順,但合在一起時,資料流可能對不上,API 的延遲可能導致前端崩潰,或者某個第三方服務突然改了協議。
團隊需要模擬真實的運行情境。這時候經常會發生「理論上可行、實際上爆炸」的狀況。例如,當一萬個人同時搶票時,資料庫的鎖定機制是否會導致死鎖?這些極端情況(Edge Cases)往往是 AI 很難憑空想像出來的。
AI 在這裡能幫大忙的是「自動化」。它能幫忙生成大量的測試案例(Test Cases),甚至模擬惡意攻擊的輸入數據,幫測試人員把地毯式搜索做得更徹底。利用 AI 進行視覺化的回歸測試(Visual Regression Testing)也能快速抓出介面跑版的問題。它能幫我們更快發現問題,但「如何修正架構性的邏輯錯誤」,通常還得靠資深工程師的經驗來判斷。
五、 部署與後續維護:上線只是開始,穩定才是王道
系統終於通過測試,準備部署(Deployment)。這不是把檔案丟上伺服器就完事了。環境配置、版本控制、資料庫遷移(Migration)、安全性檢查,每一個環節都不能出錯。一旦上線後,真正的挑戰才剛開始。
使用者會開始回報各種奇奇怪怪的問題,系統需要監控(Monitoring)、錯誤追蹤、效能優化。隨著業務發展,需求會不斷變更,系統需要持續更新。這就是軟體生命週期中最長的一個階段——維護。
在維運(DevOps)領域,AI 正變得越來越聰明。它可以監控伺服器的異常流量,預測硬碟何時會滿,甚至在系統崩潰前自動發出警報。這種「預測性維護」極大地提升了系統的穩定性。但是,當系統真的出現未知的嚴重故障時,例如資料庫錯亂,AI 很難做出需要承擔責任的決策(比如是否要立刻停機回滾),這時候還是需要人類專家來做最終的危機處理。
AI 是副駕駛,方向盤還是在你手裡
回顧整個 Waterfall 流程,我們可以清晰地看到:AI 已經滲透進了開發的每一個環節,並且顯著提升了效率。未來的軟體開發,絕對是「人機協作」的年代。拒絕使用 AI 的工程師,就像堅持用算盤不用計算機的會計師一樣,注定會失去競爭力。
但我們也不必過度神化 Vibe Coding。目前社群上那些令人驚艷的案例,大多屬於「概念驗證」(Prototype)或是小型專案。它們在展示創意和快速驗證需求上非常有價值,但距離真正的「企業級應用」,那種需要高可用性、複雜權限管理、嚴格資安規範的系統,還有很長的一段路要走。
商業環境追求的是「用更少資源做更多事」,這確實會對初階、重複性高的工作造成衝擊。但系統開發的核心,始終是對業務的深度理解、對架構的宏觀把控,以及在複雜情境下的決策能力。
工具在進化,我們也必須進化。不要害怕 AI,把它當成你最強的武器。未來的頂尖開發者,將是那些懂得指揮 AI 大軍的人,而不是在語法細節中鑽牛角尖的人。希望你下次看到各種 Vibe Coding 的影片時,能一笑置之,然後轉身用更專業的姿態,去構建真正有價值的系統。